Cloud Computing Tutorial · Integration and Operations · Lesson 23 of 24
Well-Architected Design
The well-architected frameworks from AWS, Azure and Google Cloud, and how to use their pillars to review a design.
The pillars
The AWS Well-Architected Framework has six pillars; Azure and Google Cloud publish frameworks built on the same ideas.
| Pillar | Ask |
|---|---|
| Operational excellence | Can we deploy, observe and improve safely? |
| Security | Least privilege, encryption, detection, response? |
| Reliability | Multi-AZ, recovery, quotas, tested failover? |
| Performance efficiency | Right services and sizes, measured? |
| Cost optimisation | Do we know and control what we spend? |
| Sustainability | Are we using resources efficiently? |
Using it
Review each important workload against the pillars before launch and yearly after (the AWS Well-Architected Tool, Azure Well-Architected Review, and Google Cloud's Architecture Framework checklists help). Record the risks you accept and the ones you'll fix.
review = {
"operational excellence": ["IaC for all resources", "deploys are automated", "runbooks exist"],
"security": ["no long-lived keys", "buckets private", "CloudTrail + GuardDuty on"],
"reliability": ["multi-AZ", "backups restored in a test this quarter", "quotas monitored"],
"cost optimisation": ["resources tagged", "budgets with alerts"],
}
answers = {"IaC for all resources": True, "deploys are automated": True, "runbooks exist": False,
"no long-lived keys": False, "buckets private": True, "CloudTrail + GuardDuty on": True,
"multi-AZ": True, "backups restored in a test this quarter": False, "quotas monitored": False,
"resources tagged": True, "budgets with alerts": True}
for pillar, checks in review.items():
risks = [c for c in checks if not answers[c]]
print(f"{pillar:23} {len(checks) - len(risks)}/{len(checks)}" + (f" risks: {', '.join(risks)}" if risks else ""))
Output
operational excellence 2/3 risks: runbooks exist security 2/3 risks: no long-lived keys reliability 1/3 risks: backups restored in a test this quarter, quotas monitored cost optimisation 2/2
Test yourself
Which pillar covers tested backups and multi-AZ deployment?
SecurityReliabilityCost optimisationSustainability
Show answer
Answer: Reliability
Reliability is about recovering from failures and meeting demand.