RousselTMLEARNING

Article · Cloud Computing: From Discovery to Expertise

Cloud best practices

1. The pillars #

A framework shared by all providers.

Overview #

Pillars of a well-architected Cloud design
AWS, Azure and GCP each offer a very similar « Well-Architected Framework ».

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
PracticeBenefit
Mandatory tagging + budgets and alertsCost allocation and quick detection of drifts
Monthly rightsizingFewer oversized resources
Savings Plans / reservations for steady workloadsSignificant savings on steady compute
Shutting down non-production environmentsSavings 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 #

Multi-AZ architecture
Regularly test the loss of a zone.
aws elbv2 describe-target-health --target-group-arn <ARN> --query 'TargetHealthDescriptions[].[Target.Id,TargetHealth.State]' --output table

📄 Cloud best practices: security, resilience, costs and operations →

My progress

  • ⏱ Estimated time : ≈ 7 min

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.

Ask a question about this lesson →

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.

Support us

♥ SUPPORT US

Support RousselTM Learning

Courses, articles, labs and certificates stay free with no intrusive ads. A voluntary contribution, of any amount you choose, pays for hosting, lab environments and new content.

Contribute with PayPal Any amount · card or PayPal accountLearn more
QR code PayPal
Or scan this QR code with your phone

Thank you, every contribution counts!