1. The pillars #
A framework shared by all providers.
Overview #
These pillars are trade-offs to weigh, not boxes to tick: more resilience costs more, more security can slow down delivery. What matters is deciding consciously and documenting it.
2. Security and identity #
The shared responsibility model.
Least privilege and traceability #
aws sts get-caller-identity
aws iam generate-credential-report && aws iam get-credential-report --query Content --output text | base64 -d | head -3
# Politique minimale (exemple : lecture d'un seul bucket)
cat > policy.json <<'EOF'
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": ["s3:GetObject"], "Resource": "arn:aws:s3:::rapports-prod/*" } ] }
EOF
aws iam create-policy --policy-name lecture-rapports --policy-document file://policy.json
aws cloudtrail lookup-events --max-results 5 # qui a fait quoi- Mandatory MFA for humans, temporary roles for machines and CI.
- Encryption at rest (KMS) and in transit (TLS) by default; centralized, immutable audit logs.
- Private networks, restrictive security groups, no public object storage by default.
Common mistake: An access key published in a public repository is exploited within minutes. Enable secret scanning (gitleaks) and automatic rotation.
3. Resilience and Infrastructure as Code #
Everything is reproducible and backed up.
Infrastructure as Code #
terraform fmt -check && terraform validate
terraform plan -out=plan.tfplan && terraform apply plan.tfplan
tflint && checkov -d . # qualité et sécurité de l'IaC
# État distant verrouillé
terraform {
backend "s3" { bucket = "tfstate-prod" key = "reseau/terraform.tfstate" dynamodb_table = "tf-lock" encrypt = true }
}Resilience #
- Deploy across at least two availability zones; test the loss of a zone.
- Define the RTO (acceptable downtime) and RPO (acceptable data loss) and size backups and replication accordingly.
- Automate backups and test restores.
aws backup list-backup-plans
aws rds describe-db-instances --query 'DBInstances[].[DBInstanceIdentifier,MultiAZ,BackupRetentionPeriod]' --output table
aws ec2 describe-availability-zones --query 'AvailabilityZones[].ZoneName'4. Costs and governance #
Staying in control over time.
Tagging and FinOps #
aws resourcegroupstaggingapi get-resources --tag-filters Key=env --query 'ResourceTagMappingList | length(@)'
aws budgets describe-budgets --account-id 123456789012
aws ce get-anomalies --date-interval StartDate=2026-10-01,EndDate=2026-10-18| Practice | Benefit |
|---|---|
| Mandatory tagging + budgets and alerts | Cost allocation and quick detection of drifts |
| Monthly rightsizing | Fewer oversized resources |
| Savings Plans / reservations for steady workloads | Significant savings on steady compute |
| Shutting down non-production environments | Savings at night and on weekends |
Good practice: Set up automatic guardrails (policies, SCP, Azure Policy): forbid unauthorized regions, enforce encryption, block public resources.
Reference diagram and quick check #
Visualize the principle and check it from the command line.
Reference diagram #
aws elbv2 describe-target-health --target-group-arn <ARN> --query 'TargetHealthDescriptions[].[Target.Id,TargetHealth.State]' --output tableMy progress
Sign in to track your progress and take notes. Sign in
💬 Questions about this lesson
No questions yet: be the first to ask for help or share your configuration.
Recommended Articles
AWS best practices: security, reliability, costs and operations
The essential best practices for running AWS in production: multi-account organization, identitie...
Infrastructure as Code on Azure: Bicep, Terraform, Cost Management and Well-Architected
Describe and deploy Azure as code with Bicep (modules, parameters, what-if, pipeline deployments)...
Infrastructure as Code on AWS: CloudFormation, CDK, Terraform and Well-Architected
Describe and deploy your AWS infrastructure as code with CloudFormation, the CDK or Terraform, au...
Azure best practices: landing zone, security, reliability and costs
Best practices for running Azure in production: landing zone and management groups, identities an...
Introduction to FinOps: controlling your cloud bill
How to move from CapEx to OpEx while keeping financial control.
Operating Google Cloud: observability, security, infrastructure as code and costs
Operate Google Cloud: Cloud Monitoring, Cloud Logging and Cloud Trace (Google Cloud Observability...
OVHcloud best practices: organization, security, networking, backup and costs
Best practices for running OVHcloud Public Cloud in production: projects per environment, identit...
The shared responsibility model in security
Learn who is responsible for what in terms of security in the cloud.
The 6 Rs: cloud migration strategies
Discover the different approaches for moving your on-premises infrastructure to the cloud.