IT STUDY LOG

[서비스 모니터링] 04. 서비스 수준 목표 본문

devops bootcamp 4/DevOps 인프라 관리

[서비스 모니터링] 04. 서비스 수준 목표

roheerumi 2023. 6. 5. 14:18

# 학습 목표

  • 서비스 수준 척도(SLI), 서비스 수준 목표(SLO), 서비스 수준 협약(SLA)의 의미를 이해할 수 있다.
  • 메트릭을 이용한 주요 SLO를 이해하고, 어떻게 목표를 세우는지 알 수 있다.

# 학습 내용

1.  서비스 수준 관련 용어

- 서비스를 운영하는 데 있어서, 사용자에게 필요한 적정 수준을 정의하고 제공하기 위해, 서비스 제공자와 사용자는 서로 서비스 수준 협약(Service Level Agreements, SLA) 체결

- but, 고객과의 약속은 "어느 정도의 서비스를 제공해야 제대로 제공했다고 말할 수 있는 것인지"를 정확하게 명시해야 함

∴ SRE 엔지니어는 척도를 통한 목표를 이해하고, 실제로 목표를 세우는 방법을 알아야 함

 

SLI (서비스 수준 척도, Service Level Indicator)

- 서비스 수준을 판단할 수 있는 몇 가지를 정량적으로 측정한 값

주요 SLI

  • 응답 속도: 요청에 대한 응답이 리턴되기까지의 시간
  • 에러율: 전체 요청 수 대비
  • 처리량(throughput): 초당 처리할 수 있는 요청 수
  • 가용성: 서비스가 사용 가능한 상태로 존재하는 시간의 비율
  • 내구성: 데이터 저장이 중요한 목적인 서비스의 경우 특히 중요

 

SLO (서비스 수준 목표, Service Level Objectives)

- SLI에 의해 측정된 서비스 수준의 목푯 값, 또는 일정 범위의 값을 의미

SLI ≤ 목표치
최소값 ≤ SLI ≤ 최댓값

 

SLA (서비스 수준 협약, Service Level Agreements)

- "SLO를 달성하지 못하면 어떻게 되는지"를 적어놓은 약속으로 SRE가 직접 관여하지는 않음

 

2.  지표 설정과 주요 목표 설정

지표 설정

- 서비스나 시스템에 있어 중요한 지표를 판단하는 근거가 있어야 하며, 적절한 SLI의 선정은 시스템의 분류에 따라 달라질 수 있음

사용자가 직접 대면하는 시스템 저장소 시스템 빅데이터 시스템
보통 프론트엔드에 해당하며, 이 경우 가용성, 응답 시간, 처리량이 중요 응답 시간, 가용성, 내구성이 중요합 데이터 파이프라인이 이에 해당하며, 처리량, 그리고 엔드포인트 간 응답 시간이 중요

 

척도 수집

- 측정 원본을 합산하거나, 평균을 내거나 하는 방법이 있겠지만, 대부분의 경우 분포가 중요

- 일부 요청이 빠르게 처리되어도, 나머지 요청이 균일하게 느리다면 실제로 서비스는 느린 것으로 간주됨

- 평균은 이러한 흐름의 변화를 감지하기 어려움

 

척도의 표준화

- SLO를 설정할 때, 주요 SLI의 정의를 표준화시키면 편리함

- SLI 정의 표준화의 예시

  • 집계 간격: 1분
  • 집계 범위: 하나의 클러스터에서 수행되는 모든 태스크
  • 측정 빈도: 매 10분
  • 집계에 포함할 요청: 전체 HTTP GET 요청

 

목표 설정하기

- 성능에 중점을 둔 SLO의 예시

  • GET 호출의 90%는 1ms 이내에 수행되어야 함
  • GET 호출의 99%는 10ms 이내에 수행되어야 함
  • GET 호출의 99.9%는 100ms 이내에 수행되어야 함
Comments