본문 바로가기
SRE/Methods

[SRE] Four Golden Signals

by dev_ss 2024. 4. 23.

 

 

 

사이트 신뢰성 엔지니어링(SRE) 영역에서 시스템의 신뢰성과 성능을 보장하는 것은 중요한 부분이다.

이러한 부분에서 시스템 건강 상태를 측정하는 명확한 지표는 필수적으로 요구된다.

 

 

그리하여 Google은 Four Golden Signals라는 지표를 만들게 되었다.

 

https://sre.google/sre-book/monitoring-distributed-systems/

 

Google - Site Reliability Engineering

Monitoring Distributed Systems Written by Rob EwaschukEdited by Betsy Beyer Google’s SRE teams have some basic principles and best practices for building successful monitoring and alerting systems. This chapter offers guidelines for what issues should in

sre.google

 

 

 

Four Golden Signals는 주로 사용자(고객)가 직면하는 시스템에 관한 지표로 책정되었으며, 인프라와 관련된 지표에 국한되지 않고, 애플리케이션 서비스의 지표까지도 사용될 수 있다는 것이 특징이다.

 

 

 


 

아래는 해당 네 가지(Four)의 지표에 대하여 설명한 것이다.

 

 

[출처 : https://www.linkedin.com/pulse/monitoring-four-golden-signals-shailender-singh/]

 

 

1. Latency (지연 시간) :

 

시스템이 요청에 응답하는 데 걸리는 시간으로 사용자 경험의 핵심이라고 할 수 있다.

일반적으로 사용자는 빠른 요청에 대한 응답을 기대하고 있으며, 이는 사용자 경험에 직결되기 때문이다.

 

이러한 지연 시간은 사용자가 요청을 보내는 시점과 응답을 받는 시점 간의 차이로 측정할 수 있고, 서비스 간 요청과 응답에 대한 지연 시간으로도 측정할 수 있다.

 

지연 시간의 증가는 네트워크 혼잡, 자원 경쟁, 비효율적인 코드 실행과 같은 문제를 파악할 수 있으며, 기업은 더 나은 사용자 경험을 보장하고, 잠재적인 성능 병목 현상을 완화할 수 있다.

 

 

 

 

2. Traffic (트래픽) :

 

트래픽은 시스템에 도달하는 요청의 양을 나타낸다.

 

아래 항목들은 트래픽에 대하여 어떠한 기준을 세우고 측정할 것인가에 대한 예시이다.

 

  • 웹 서비스의 초당 HTTP 요청
  • 백엔드 서비스의 초당 API 요청
  • 데이터베이스의 초당 트랜잭션

 

트래픽에 대한 기준을 세우고 패턴을 모니터링하면, 특정 시점에 대하여 수요가 예측하게 될 것이고, 리소스를 적절하게 확장하여 일관된 서비스 수준을 유지할 수 있다.

 

반대로 트래픽의 급격한 감소는 장애 또는 서비스 중단과 같은 문제를 의미하기에 즉각적인 대응이 필요하다는 것을 유추할 수 있다.

 

 

 

3. Errors (오류) :

 

오류란, 모든 요청을 기준으로 명시적/암시적/정책적으로 실패한 요청의 처리 비율을 의미한다.

 

모든 서비스는 오류를 완전히 없앨 수 없는데, 그로 인하여 발생한 오류를 모니터링하는 것이 신뢰성을 유지하는 데 중요한 역할을 한다.

 

 

오류 아래와 같은 원인으로 발생할 수 있다.

 

  • 소프트웨어적 결함(버그)
  • 하드웨어 문제(고장)
  • 외부 종속성

 

 

오류는 문제가 발생한 영역에 따라, 추적 난이도에 차이가 존재(Ex : Server-side vs Client-side)하며, 높은 오류율은 사용자 경험을 저하시키고 서비스에 대한 신뢰도를 저해한다.

 

 

 

4. Saturation (포화도 ) :

포화도는 특 시스템 자원이 얼마나 활용되고 있는지를 나타내는 지표다.

 

 

아래는 포화도가 수집되는 시스템 자원의 목록이다.

 

  • CPU
  • 메모리
  • 디스크
  • 네트워크 대역폭

 

시스템이 포화(100% 사용)가 되면, 요청을 추가적으로 처리하기 어려워지고, 이는 성능 저하와 대기시간 및 오류율 증가를 발생시키며 심각한 경우 완전한 장애(Down)로 이어질 수 있다.

 

포화도에 대한 대책으로 최근 많이 사용되는 분산 시스템과 클라우드 컴퓨팅을 기반으로 Scale-up / Scale-out이 수월하게 구현 가능하게 되었다.

 

 


 

Four Golden Signals의 네 가지의 지표를 보았을 때, USE Method와 RED Method와 어느 정도 공통점을 가지고 있는 것을 볼 수 있다.

 

이러한 점에서 Four Golden Signals는 USE Method와 RED Method 두 가지 방법론의 가장 뛰어난 부분을 결합하려고 시도하였다는 것을 유추할 수 있다.

 

 

앞서 나온 방법론들은 현대 인프라에서 탄탄하고 신뢰성 있는 서비스를 구축하는 데 필수적인 안내서 역할과 위기 대응 능력을 증진시킬 수 있는 지표가 되었다.

 

 

그러나 어떤 방법론이 정답이라는 것이 아닌, 각 방법론과 지표가 지향하는 목적이 존재하고, 그에 따라 처한 상황에 적절한 방법들을 택하는 것이 가장 좋을 것이라 생각된다.

 

 

 

https://ssnotebook.tistory.com/entry/SRE-USE-RED-Method

 

[SRE] USE / RED Method

시스템을 구축하고 운영하는 데 있어 성능과 장애를 모니터링하는 것은 중요한 부분이지만 어떠한 기준을 가지고 성능을 측정하고 수치화할 수 있는지에 대하여는 다른 이야기이다. 그러한 부

ssnotebook.tistory.com

 

 

 

 

반응형

'SRE > Methods' 카테고리의 다른 글

[SRE] USE / RED Method  (0) 2024.03.30