SLA(서비스 수준 계약)는 고객과 IT 팀 간의 공식적인 계약으로, 서비스 품질의 매개변수를 정의합니다.
아키텍처 수준에서 SLA 준수는 기술 수단, 프로세스, 모니터링 및 자동화를 통해 보장됩니다. 올바른 구현을 위해 시스템의 비즈니스 중요성, 고가용성 및 확장성에 대한 명확한 이해가 필요합니다.
# API 응답 지연에 대한 경고 설정 예시 - alert: HighResponseLatency expr: histogram_quantile(0.99, sum(rate(http_request_duration_seconds_bucket[5m])) by (le, service)) > 1 for: 5m labels: severity: critical annotations: summary: 응답 시간이 SLA를 초과함 (99% > 1초)
운영 메트릭은 무엇이며 왜 필요합니까?
운영 메트릭은 시스템 작업의 실제 매개변수를 나타내는 지표로, 예를 들어 가용성, 지연 시간, 오류 수 등을 포함합니다. 이들은 시스템이 SLA를 얼마나 잘 준수하는지를 측정하고, 이상 상황에 신속하게 대응하기 위해 필요합니다.
코드 예시:
# Prometheus 클라이언트를 통한 메트릭 내보내기 예시 from prometheus_client import start_http_server, Summary REQUEST_TIME = Summary('request_processing_seconds', '요청 처리 시간')
SLA, SLO 및 SLI: 차이점은 무엇입니까?
높은 가용성만으로 SLA가 보장됩니까?
아니요, SLA는 가용성뿐 아니라 성능(지연 시간), 안정성(오류율), 동작의 정확성도 포함합니다. 높은 가용성만으로는 SLA의 다른 요구 사항을 충족한다고 보장되지 않습니다.