서비스 수준 목표의 구성요소

Google Cloud 아키텍처 프레임워크의 이 문서에서는 서비스 수준 목표(SLO)를 이해하고 만드는 데 필요한 주요 개념을 정의합니다.

기본적으로 SLO는 사용자에게 제공되는 서비스의 안정성 목표를 반영합니다. 이러한 목표를 정의할 때는 모든 중요한 이해관계자의 의견을 포함하는 것이 중요합니다. 여러 그룹 및 관리 수준에서 이 서비스에 큰 관심을 가지고 있습니다. 여기에는 비즈니스 소유자, 제품 소유자, 경영진, 엔지니어, 지원 담당자, 운영, 영업팀, 서비스와 관련된 기타 팀이 포함됩니다.

다양한 안정성 목표를 선택할 수 있듯이 이해관계자의 의견을 얻는 방법은 다양합니다. 궁극적으로 목표를 선택하는 방법은 요구사항, 이해관계자, 기타 요소에 따라 사용자와 조직이 결정합니다. 이 프로세스는 이 가이드의 범위를 벗어나지만, 간단한 방법은 SLO와 SLO를 어떻게 개발했는지를 설명하는 공유 문서를 만드는 것입니다. 사용자의 팀은 시간이 지남에 따라 SLO를 구현하고 지속적으로 개선하면서 문서를 반복할 수 있습니다.

다음 섹션에서는 SLO의 다양한 구성요소를 정의합니다.

서비스 수준

서비스 수준은 서비스가 사용자의 예상 작업을 얼마나 잘 수행하는지에 대한 측정값입니다. 이 측정항목은 사용자 만족도의 관점에서 설명할 수 있으며 서비스의 고유한 특성, 사용자층, 사용자 기대에 따라 다양한 방법으로 측정할 수 있습니다. 이 가이드에서는 성능을 시스템의 안정성과 연관시킵니다.

서비스 수준의 예시: 사용자는 서비스가 사용 가능하며 속도가 빠를 것으로 기대합니다.

서비스 수준 지표

서비스 수준 지표(SLI)는 정량적으로 측정할 수 있는 사용자 만족도의 척도입니다. 표시기는 시간이 지남에 따라 서비스가 개선되거나 저하되는 과정에서 변하는 그래프의 선과 유사합니다. 서비스 수준을 평가하려면 사용자 만족도의 일부 측면을 나타내는 표시기를 선택합니다. 가용성은 일반적인 SLI입니다.

예시 SLI: 지난 10분 동안 성공한 요청 수를 동일한 기간의 모든 유효한 요청 수로 나눈 값입니다.

이 예시의 SLI는 구체적이고 잘 정의되었으며 숫자 값으로 표현됩니다. 이 값은 서비스 가용성을 나타냅니다. 시간 경과에 따라 이 SLI를 일관되게 추적하면 팀은 서비스의 전반적인 가용성을 확인할 수 있습니다.

SLI 선택에 대한 자세한 내용은 SLI 선택을 참조하세요.

서비스 수준 목표

서비스 수준 목표(SLO)는 SLI에서 측정한 서비스가 달성할 것으로 예상하는 목표 범위입니다. 다음 예시에서는 응답 시간 또는 서비스 속도를 SLI로 사용합니다.

SLO 예시: 서비스 응답이 14일 동안 측정된 모든 유효한 요청의 95%에 대해 400밀리초(ms)보다 빠릅니다.

예시 SLO에서 SLI는 400ms보다 빠른 요청 수를 유효한 요청 수로 나눈 값입니다. 이 비율은 14일 동안 추적됩니다. 목표는 모든 요청의 95%를 충족하는 것입니다. 즉, 최종 결과(기준을 충족하는 요청 비율)가 95%를 초과하면 서비스 SLO가 충족된 것입니다.

요약하면 SLI는 서비스의 몇 가지 측정값(예: 속도, 가용성, 성공)입니다. SLO는 이러한 측정값의 특정 양(백분율)이 미리 정의된 수준 또는 범위를 충족하거나 초과할 것이라는 예상입니다. 예상 수준보다 낮은 것은 좋지 않습니다. 특정 성능 영역에서 안정적인 서비스를 사용자에게 제공하지 못했습니다.

SLO 선택에 대한 자세한 내용은 SLO 선택을 참조하세요.

서비스수준계약

서비스수준계약(SLA)은 사용자, 서비스 제공업체, 고객 간의 계약입니다. 고객에게 약속하고 고객이 궁극적으로 기대하는 SLO를 나열합니다. SLA는 SLO가 충족되지 않을 경우 발생하는 상황도 지정합니다. SLO를 위반하면 서비스 제공업체가 금액을 환불하거나, 할인된 서비스를 제공하거나, 더 중요한 서비스의 경우 법적 조치나 징벌적 손해를 야기할 수 있습니다.

SLA는 이 가이드에서 자세히 다루지 않습니다. SLA는 SLO, SLI, 사용자에 대한 이해도를 높이기 위해 언급됩니다.

오류 예산

SLO를 논의할 때 알아야 할 최종 값은 서비스가 SLO를 위반하기 전에 견딜 수 있는 부정적인 이벤트의 비율 또는 개수입니다. 오류 예산이라고 하는 이 수치는 비즈니스에서 예상하고 허용할 수 있는 오류의 양을 정의합니다.

표현을 위해 가용성을 SLI(백분율로 표시)로 사용합니다. 백분율로 3개 이상의 '9'는 해당 SLI를 측정할 정밀도를 나타냅니다. 즉, '9'의 개수는 가용성 백분율을 나타냅니다.

SLO에서 3개의 9는 99.9%입니다. 100%에서 SLO 값을 빼면 0.1%의 오류 예산이 남습니다. 가용성을 논의할 때 0.1%의 예산은 1년에 9시간 미만이며 서비스를 사용할 수 없는 시간입니다. 9를 더 추가하면 오류 예산이 크게 줄어듭니다. 99.99%(4개의 9)의 가용성은 1년에 1시간 미만의 서비스 다운타임을 허용합니다.

이 다운타임에는 요청 실패, 오류(비정상 종료 또는 소프트웨어 버그) 또는 의도(업그레이드 또는 테스트)된 서버 다운타임, 사람의 오류, 사고 등이 포함됩니다.

다음 단계