Recommanded Free YOUTUBE Lecture: <% selectedImage[1] %>

Service-Level agreement

SLA(Service-Level agrement)는 서비스 제공자와 고객사이에 이루어지는 계약을 담고 있는 문서로, 제공자가 충족해야 하는 서비스 수준을 정의하고 있다.

SLA를 정의하는 이유

서비스 제공자는 고객에게 적절한 수준의 서비스 품질을 제공해야 할 책임이 있다. 서비스 품질이라는 것은 100%라는 것이 불가능 하므로 서비스 특징, 서비스 가격 등을 고려해서 어느 수준의 품질을 제공하며, 해당 수준의 품질을 만족하지 못했을 때 어떤 책임을 질 것인지를 명확히 해야 한다. 예를 들어 클라우드 제공자가 로드밸런서에 대해서 월 99.995%의 가용율을 보장한다고 SLA에 정의 했다면, 129 초 이내의 실패에 대해서는 제공자가 책임을 지지 않는다. 129초를 넘어서는 실패가 발생할 경우, 크레딧등의 보상을 제공한다. 서비스 제공 업체의 경우 SLA는 기본 계약 중의 하나다.

명확한 SLA는 제공자에게도 도움이 되는데, SLA가 명확하다는 것은 품질 측정을 위한 시스템이 갖춰야 한다는 것을 의미하기 때문이다. 위의 로드밸런서의 예를 들어보자면, SLA를 측정하기 위해서 전체 로드밸런서에 대한 모니터링 시스템을 갖춰야 한다. SLA는 비용과 연관된 내용이기 때문에, 서비스 실패가 로드밸런서의 실패인지, 다른 영역에서의 실패인지를 명확히 구분해야 하기 때문에(ex. 로드밸런서 실패가 아닌 다른 이슈 일 수 있기 때문이다. 제공자 실패가 아닌데, 책임을 지게 되면 비용 증가로 이어진다.) 기술투자가 필요하다.

SLA에 들어가는 것들

  • 목표에 대한 설명
  • 목표가 설정될 서비스의 범위
  • 서비스 제공자의 책임
  • 서비스 사용자의 책임
  • 성능 측정 메트릭 (응답시간, 응답율)
  • 계약위반이 발생 할 경우 책임

메트릭들

SLA는 다양한 방법으로 성능과 품질에 대한 목표치를 설정한다. 아래와 같은 메트릭을 설정 할 수 있을 것이다.
  • 가용성 : 고객이 서비스를 실행하고 사용할 수 있는 시간이다. 보통 월단위로 추적한다. 전체 서비스 가능 시간과 실패시간의 함수다.
  • 성능 : 서비스 응답시간
  • 요청에 대한 응답 시간 : 고객이 제공자에게 요청을 했을 때, 응답까지 걸리는 시간.
  • 해결 시간 : 요청이 접수된 뒤 문제해결까지 걸리는 시간

서비스 책임

제공자가 SLA를 만족하지 못할 경우 보상조치(벌칙이라고 할 수 있겠다)를 정의해야 한다. 돈과 관련된 것 이므로 명확하게 기술해야 한다. 아래는 AWS CloudFront SLA의 예제다.

책임
  • 99.9%의 월별 가동시간 비율을 목표로 한다.
정의
  • "오류율"은 (i) Amazon CloudFront에 회수된 내부 서버 오류의 총 개수를 (ii) 해당 5분간 발생한 총 요청 건수로 나눈 비율을 의미한다. AWS는 각 Amazon CloudFront 계정에 대한 오류율을 월 대금청구주기의 매 5분에 대한 비율로 산정한다. 내부 서버 오류의 개수 산정과정에는 Amazon CloudFront SLA 배제(하기 정의됨)로 인해 직∙간접적으로 발생하는 오류는 포함되지 않는다.
  • "월별 가동시간 비율"은 100%에서 월 대금청구주기의 매 5분동안 발생한 오류율의 평균을 차감하는 방식으로 산정된다.
  • "서비스 크레딧"은 AWS가 서비스 크레딧 지급대상이 되는 계정에 환급할 수 있는 달러 크레딧을 의미하며, 하기 명시된 방식으로 산정된다.
크레딧 산정 방법
월별 가동시간 비율 서비스 크레딧 비율
99%이상 99.9% 미만 10%
99%미만 25%
크레딧 요청및 지급 절차 크레딧을 어떻게 요청하고 어떻게 지급하는지를 정의 한다.

Amazon CloudFront SLA배제 불가항력의 문제, Amazon CloudFront의 경계점을 넘어선 문제, 고객이나 제 3자의 작업으로 발생한 실수 등 책임을 지지 않는 경우를 정의 한다.

SLA가 필요한 자

SLA는 네트워크 서비스 제공자로 부터 시작한 것으로 알려져 있지만 지금은 IT 관련 영역에서 광범위하게 사용하고 있다. IT 서비스 제공자, 클라우드 서비스 제공자, 관리 서비스 제공자등이 SLA를 사용하고 있다.