Cloud

AWS

Cheatsheet AWS — services essentiels, CLI et architecture cloud

awscloudec2s3iamvpcrdslambda

AWS CLI — configuration

$aws configure
AWS Access Key ID: ********
AWS Secret Access Key: ********
Default region name: eu-west-3
Default output format: json
$aws sts get-caller-identity
Vérifier l'identité IAM active

IAM

$aws iam list-users
$aws iam create-user --user-name deploy-bot
$aws iam attach-user-policy --user-name deploy-bot --policy-arn arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess

Principe du moindre privilège

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:GetObject",
        "s3:PutObject"
      ],
      "Resource": "arn:aws:s3:::mon-bucket/*"
    }
  ]
}

EC2

$aws ec2 describe-instances --filters 'Name=tag:Environment,Values=production'
$aws ec2 run-instances --image-id ami-0c55b159cbfafe1f0 --instance-type t3.micro --key-name ma-cle --count 1
$aws ec2 stop-instances --instance-ids i-1234567890abcdef0
$aws ec2 terminate-instances --instance-ids i-1234567890abcdef0

Types d'instances courants

TypevCPURAMUsage
t3.micro21 GBDev, tests
t3.medium24 GBApps légères
m6i.large28 GBGeneral purpose
c6i.large24 GBCPU-intensive
r6i.large216 GBMemory-intensive

S3

$aws s3 ls
Lister tous les buckets
$aws s3 mb s3://mon-bucket-unique
Créer un bucket
$aws s3 cp fichier.txt s3://mon-bucket/
$aws s3 sync ./dist s3://mon-bucket/ --delete
Synchroniser un dossier local avec S3
$aws s3 presign s3://mon-bucket/fichier.pdf --expires-in 3600
Générer un lien temporaire (1h)

VPC

Architecture typique

VPC (10.0.0.0/16)
├── Public Subnet A  (10.0.1.0/24)  → NAT Gateway, ALB
├── Public Subnet B  (10.0.2.0/24)  → NAT Gateway, ALB
├── Private Subnet A (10.0.10.0/24) → EC2, ECS, EKS
├── Private Subnet B (10.0.11.0/24) → EC2, ECS, EKS
├── Data Subnet A    (10.0.20.0/24) → RDS, ElastiCache
└── Data Subnet B    (10.0.21.0/24) → RDS, ElastiCache

Security Groups vs NACLs

Security GroupNACL
NiveauInstanceSubnet
ÉtatStatefulStateless
RèglesAllow onlyAllow + Deny
ÉvaluationToutes les règlesOrdre numérique

RDS

$aws rds describe-db-instances
$aws rds create-db-snapshot --db-instance-identifier ma-db --db-snapshot-identifier backup-2024-01

Bonnes pratiques RDS

  • Multi-AZ pour la haute disponibilité
  • Read replicas pour les lectures intensives
  • Sauvegardes automatiques activées
  • Chiffrement au repos et en transit
  • Pas d'accès public (subnet privé)

Lambda

$aws lambda list-functions
$

Services essentiels

ServiceDescription
EC2Serveurs virtuels
S3Stockage objets
RDSBases de données relationnelles
EKSKubernetes managé
ECSConteneurs managés (Fargate)
LambdaServerless functions
CloudFrontCDN
Route 53DNS
IAMGestion des identités
VPCRéseau virtuel privé
CloudWatchMonitoring et logs
SNS/SQSMessaging et queues