안정성에 관한 현실적인 타겟 설정

Google Cloud 잘 설계된 프레임워크의 안정성 원칙에 있는 이 원칙은 Google Cloud의 워크로드에 기술적으로 실현 가능한 안정성 목표를 정의하는 데 도움이 됩니다.

이 원칙은 신뢰성의 범위 지정 중점 영역과 관련이 있습니다.

원칙 개요

시스템이 사용자 만족도를 높일 만큼 안정적이 되도록 설계합니다. 이는 직관적이지 않아 보일 수 있지만 100% 안정성 목표는 가장 효과적인 전략이 아닙니다. 안정성이 높을수록 재정적 투자와 혁신에 대한 잠재적 한계 측면에서 비용이 크게 증가할 수 있습니다. 사용자가 현재 서비스 수준에 이미 만족하고 있다면 만족도를 더욱 높이려고 하면 투자수익이 낮아질 수 있습니다. 대신 다른 곳에 리소스를 더 잘 사용할 수 있습니다.

사용자가 만족하는 안정성 수준을 판단하고 점진적 개선 비용이 이점보다 큰 부분을 판단해야 합니다. 이 충분한 안정성 수준을 결정하면 리소스를 전략적으로 할당하고 사용자에게 더 큰 가치를 제공하는 기능과 개선사항에 집중할 수 있습니다.

권장사항

현실적인 안정성 목표를 설정하려면 다음 하위 섹션의 권장사항을 고려하세요.

일부 실패를 수용하고 구성요소의 우선순위 지정

99.99% 업타임과 같은 고가용성을 목표로 하되 업타임 목표를 100%로 설정하지 마세요. 불가피한 장애가 있다는 점을 인정합니다.

100% 업타임과 99.99% 목표 사이의 차이는 장애를 허용합니다. 이 간격을 오류 예산이라고 합니다. 오류 예산은 위험을 감수하고 혁신하는 데 도움이 될 수 있으며, 이는 모든 비즈니스의 경쟁력 유지에 필수적인 요소입니다.

시스템에서 가장 중요한 구성요소의 신뢰성을 우선시합니다. 덜 중요한 구성요소가 장애에 더 용인할 수 있다는 점을 인정하세요.

안정성과 비용 간의 균형 유지

시스템에 대한 최적의 안정성 수준을 결정하려면 철저한 비용-편익 분석을 수행하세요.

시스템 요구사항, 장애의 결과, 특정 애플리케이션에 대한 조직의 위험 허용 범위와 같은 요소를 고려하세요. 복구 시간 목표 (RTO) 및 복구 지점 목표 (RPO)와 같은 재해 복구 측정항목을 고려해야 합니다. 예산 및 기타 제약 조건 내에서 허용 가능한 안정성 수준을 결정합니다.

필수적인 안정성 기능을 손상시키지 않으면서 효율성을 개선하고 비용을 절감하는 방법을 찾아보세요.