Google Cloud Well-Architected Framework skill for the Reliability pillar
Overview
The Reliability pillar of the Google Cloud Well-Architected Framework provides
principles and recommendations to help you design, deploy, and manage reliable,
resilient, and highly available workloads in Google Cloud. A reliable system
consistently performs its intended functions under defined conditions, is
resilient to failures, and recovers gracefully from disruptions, thereby
minimizing downtime, enhancing user experience, and ensuring data integrity.
Core principles
The recommendations in the reliability pillar of the Well-Architected Framework
are aligned with the following core principles:
Define reliability based on user-experience goals: Measurement of
reliability should reflect the actual experience of the system's users rather
than merely relying on infrastructure metrics. Focus on outcomes that matter
most to users. Grounding document:
https://docs.cloud.google.com/architecture/framework/reliability/define-reliability-based-on-user-experience-goals.md.txt
Set realistic targets for reliability: Determine appropriate Service
Level Objectives (SLOs) that balance the cost and complexity of maximizing
availability against business requirements. Provide guidance on defining
Service Level Objectives (SLOs) based on monitoring signals, error budgets,
and user experience goals. Grounding document:
https://docs.cloud.google.com/architecture/framework/reliability/set-targets.md.txt
Build highly available systems through resource redundancy: Eliminate
single points of failure by duplicating critical components across zones and
regions to maintain operations during localized outages. Grounding document:
https://docs.cloud.google.com/architecture/framework/reliability/build-highly-available-systems.md.txt
Take advantage of horizontal scalability: Design system architectures to
scale horizontally (adding more instances) to seamlessly accommodate load
fluctuations and improve overall fault tolerance. Incorporate proactive
capacity planning to monitor and adjust project quotas and resource
availability anticipating sudden load spikes. Grounding document:
https://docs.cloud.google.com/architecture/framework/reliability/horizontal-scalability.md.txt
Detect potential failures by using observability: Implement thorough
monitoring, logging, and alerting systems to proactively detect, diagnose,
and address anomalies before they cause user-facing issues. Monitor the
golden signals (latency, traffic, errors, and saturation) and set up alerts
for when the signals cross specified thresholds. Use Cloud Monitoring to
build comprehensive dashboards for the golden signals. Grounding document:
https://docs.cloud.google.com/architecture/framework/reliability/observability.md.txt
Design for graceful degradation: Architect systems to maintain critical
functionality, even if at reduced performance or with limited features, when
dependencies fail or the system experiences extreme stress. To avoid
cascading failures, recommend setting up alerts to detect failures early,
using the circuit-breaker pattern, handling timeouts effectively to release
blocked resources, utilizing retries with exponential backoff and jitter to
avoid overwhelming recovering backend systems, and returning custom error
responses or static fallback pages. Grounding document:
https://docs.cloud.google.com/architecture/framework/reliability/graceful-degradation.md.txt
Perform testing for recovery from failures: Build confidence in system
resilience by continuously simulating failures and verifying the
effectiveness of automated and manual recovery procedures. Grounding
document:
https://docs.cloud.google.com/architecture/framework/reliability/perform-testing-for-recovery-from-failures.md.txt
Perform testing for recovery from data loss: Regularly test backup and
restore protocols to ensure rapid recovery from data corruption or loss,
remaining within the defined Recovery Time Objective (RTO) and Recovery Point
Objective (RPO). Grounding document:
https://docs.cloud.google.com/architecture/framework/reliability/perform-testing-for-recovery-from-data-loss.md.txt
Conduct thorough postmortems: Foster a blameless culture by investigating
outages comprehensively to understand root causes, followed by implementing
measures that prevent recurrence. Grounding document:
https://docs.cloud.google.com/architecture/framework/reliability/conduct-postmortems.md.txt
Relevant Google Cloud products
The following are examples of Google Cloud products and features that are
relevant to reliability:
- Compute: Compute Engine Managed Instance Groups (MIGs), Google Kubernetes
Engine (GKE), Cloud Run
- Networking: Cloud Load Balancing, Cloud CDN, Cloud DNS
- Storage and databases: Cloud Storage (multi-region), Cloud SQL High
Availability, Spanner, Filestore, Firestore
- Operations: Cloud Monitoring, Cloud Logging, Google Cloud Managed Service
for Prometheus
- Disaster recovery: Backup and DR Service, Filestore backups
Workload assessment questions
Ask appropriate questions to understand the reliability-related requirements and
constraints of the workload and the user's organization. Choose questions from
the following list:
- How does your organization define and measure the reliability of your systems
in relation to user experience?
- How does your organization approach setting reliability targets for your
services?
- What is your organization's strategy for ensuring high availability through
resource redundancy?
- How does your organization leverage horizontal scalability to maintain
performance and reliability?
- How does your organization utilize observability (metrics, logs, traces) to
gain insights and detect potential failures?
- How does your organization manage alerting based on observability data to
ensure timely responses to significant issues without causing alert fatigue?
- What measures does your organization take to ensure systems can gracefully
degrade during high load or partial failures?
- How frequently and comprehensively does your organization test for recovery
from system failures (e.g., regional failovers, release rollbacks)?
- What is your organization's approach to testing for recovery from data loss?
- How does your organization conduct and utilize postmortems after incidents?
Validation checklist
Use the following checklist to evaluate the architecture's alignment with
reliability recommendations:
- User-focused SLIs and SLOs are explicitly defined and actively monitored.
- The architecture avoids single points of failure through cross-zone or
cross-region redundancy.
- Autoscaling is enabled to handle variable demand without manual intervention.
- Application and infrastructure health checks are configured to trigger
automated failovers.
- Regular backup schedules are in place, and restoration processes are routinely
tested.
- The system architecture incorporates patterns like circuit breakers, retries
with exponential backoff, and rate limiting to support graceful degradation.
- Game days or chaos engineering practices are regularly held to validate
failure recovery.
- A formalized, blameless postmortem process exists to ensure organizational
learning from operational incidents.
1---2name: google-cloud-waf-reliability3description: Generates guidance for reliability, resilience, availability, redundancy, fault-tolerance, and disaster recovery (DR) for Google Cloud workloads based on the design principles and recommendations in the Google Cloud Well-Architected Framework. Use when the user asks to evaluate, design, or improve the reliability, resilience, availability, or disaster recovery capabilities of Google Cloud workloads.4---5# Google Cloud Well-Architected Framework skill for the Reliability pillar67## Overview89The Reliability pillar of the Google Cloud Well-Architected Framework provides10principles and recommendations to help you design, deploy, and manage reliable,11resilient, and highly available workloads in Google Cloud. A reliable system12consistently performs its intended functions under defined conditions, is13resilient to failures, and recovers gracefully from disruptions, thereby14minimizing downtime, enhancing user experience, and ensuring data integrity.1516## Core principles1718The recommendations in the reliability pillar of the Well-Architected Framework19are aligned with the following core principles:2021- **Define reliability based on user-experience goals**: Measurement of22 reliability should reflect the actual experience of the system's users rather23 than merely relying on infrastructure metrics. Focus on outcomes that matter24 most to users. Grounding document:25 https://docs.cloud.google.com/architecture/framework/reliability/define-reliability-based-on-user-experience-goals.md.txt2627- **Set realistic targets for reliability**: Determine appropriate Service28 Level Objectives (SLOs) that balance the cost and complexity of maximizing29 availability against business requirements. Provide guidance on defining30 Service Level Objectives (SLOs) based on monitoring signals, error budgets,31 and user experience goals. Grounding document:32 https://docs.cloud.google.com/architecture/framework/reliability/set-targets.md.txt3334- **Build highly available systems through resource redundancy**: Eliminate35 single points of failure by duplicating critical components across zones and36 regions to maintain operations during localized outages. Grounding document:37 https://docs.cloud.google.com/architecture/framework/reliability/build-highly-available-systems.md.txt3839- **Take advantage of horizontal scalability**: Design system architectures to40 scale horizontally (adding more instances) to seamlessly accommodate load41 fluctuations and improve overall fault tolerance. Incorporate proactive42 capacity planning to monitor and adjust project quotas and resource43 availability anticipating sudden load spikes. Grounding document:44 https://docs.cloud.google.com/architecture/framework/reliability/horizontal-scalability.md.txt4546- **Detect potential failures by using observability**: Implement thorough47 monitoring, logging, and alerting systems to proactively detect, diagnose,48 and address anomalies before they cause user-facing issues. Monitor the49 golden signals (latency, traffic, errors, and saturation) and set up alerts50 for when the signals cross specified thresholds. Use Cloud Monitoring to51 build comprehensive dashboards for the golden signals. Grounding document:52 https://docs.cloud.google.com/architecture/framework/reliability/observability.md.txt5354- **Design for graceful degradation**: Architect systems to maintain critical55 functionality, even if at reduced performance or with limited features, when56 dependencies fail or the system experiences extreme stress. To avoid57 cascading failures, recommend setting up alerts to detect failures early,58 using the circuit-breaker pattern, handling timeouts effectively to release59 blocked resources, utilizing retries with exponential backoff and jitter to60 avoid overwhelming recovering backend systems, and returning custom error61 responses or static fallback pages. Grounding document:62 https://docs.cloud.google.com/architecture/framework/reliability/graceful-degradation.md.txt6364- **Perform testing for recovery from failures**: Build confidence in system65 resilience by continuously simulating failures and verifying the66 effectiveness of automated and manual recovery procedures. Grounding67 document:68 https://docs.cloud.google.com/architecture/framework/reliability/perform-testing-for-recovery-from-failures.md.txt6970- **Perform testing for recovery from data loss**: Regularly test backup and71 restore protocols to ensure rapid recovery from data corruption or loss,72 remaining within the defined Recovery Time Objective (RTO) and Recovery Point73 Objective (RPO). Grounding document:74 https://docs.cloud.google.com/architecture/framework/reliability/perform-testing-for-recovery-from-data-loss.md.txt7576- **Conduct thorough postmortems**: Foster a blameless culture by investigating77 outages comprehensively to understand root causes, followed by implementing78 measures that prevent recurrence. Grounding document:79 https://docs.cloud.google.com/architecture/framework/reliability/conduct-postmortems.md.txt8081## Relevant Google Cloud products8283The following are _examples_ of Google Cloud products and features that are84relevant to reliability:8586- **Compute**: Compute Engine Managed Instance Groups (MIGs), Google Kubernetes87 Engine (GKE), Cloud Run88- **Networking**: Cloud Load Balancing, Cloud CDN, Cloud DNS89- **Storage and databases**: Cloud Storage (multi-region), Cloud SQL High90 Availability, Spanner, Filestore, Firestore91- **Operations**: Cloud Monitoring, Cloud Logging, Google Cloud Managed Service92 for Prometheus93- **Disaster recovery**: Backup and DR Service, Filestore backups9495## Workload assessment questions9697Ask appropriate questions to understand the reliability-related requirements and98constraints of the workload and the user's organization. Choose questions from99the following list:100101- How does your organization define and measure the reliability of your systems102 in relation to user experience?103- How does your organization approach setting reliability targets for your104 services?105- What is your organization's strategy for ensuring high availability through106 resource redundancy?107- How does your organization leverage horizontal scalability to maintain108 performance and reliability?109- How does your organization utilize observability (metrics, logs, traces) to110 gain insights and detect potential failures?111- How does your organization manage alerting based on observability data to112 ensure timely responses to significant issues without causing alert fatigue?113- What measures does your organization take to ensure systems can gracefully114 degrade during high load or partial failures?115- How frequently and comprehensively does your organization test for recovery116 from system failures (e.g., regional failovers, release rollbacks)?117- What is your organization's approach to testing for recovery from data loss?118- How does your organization conduct and utilize postmortems after incidents?119120## Validation checklist121122Use the following checklist to evaluate the architecture's alignment with123reliability recommendations:124125- User-focused SLIs and SLOs are explicitly defined and actively monitored.126- The architecture avoids single points of failure through cross-zone or127 cross-region redundancy.128- Autoscaling is enabled to handle variable demand without manual intervention.129- Application and infrastructure health checks are configured to trigger130 automated failovers.131- Regular backup schedules are in place, and restoration processes are routinely132 tested.133- The system architecture incorporates patterns like circuit breakers, retries134 with exponential backoff, and rate limiting to support graceful degradation.135- Game days or chaos engineering practices are regularly held to validate136 failure recovery.137- A formalized, blameless postmortem process exists to ensure organizational138 learning from operational incidents.