본문 바로가기
AWS(Amazon Web Service)/CloudWatch

[AWS] CloudWatch, CloudFront 모니터링

by Haengsin 2021. 11. 4.

CloudWatch 지표 및 경보로 CloudFront 모니터링

(프로세스)

1. Architecutre를 이해하고 사용된 AWS 서비스를 식별.

2. CloudFront 세부 모니터링 활성화 

3. 문제가 있는 시스템을 파악하는 데 가장 적합한 CloudWatch 지표를 선택.

4. 지표가 정상 범위 내에 있는 지 관찰할 수 있도록 CloudWatch 경보를 생성.

5. CloudWatch 경보가 임계값을 벗어난 지표를 감지하는 경우 알림을 받음.

 

 

 

 

1. Architecutre

- CloudFront : CDN(Content Delivery Network)

- S3, ELB : Data Content 

CloudWatch는 서비스들의 metric들을 수집하여 자동으로 보고해야 한다.

 

2. CloudFront 세부 모니터링 활성화

[CloudFront] > [원격 측정] > [모니터링]

대상 선택 후 배포 [배포 지표 보기]

기본적으로 아래 3개의 지표가 활성화된다. 

- Requests (sum)

- Data Transfer

- Error rate (as a percentage of total requests)

- [추가 지표 활성화]

 

- [지표 활성화]

4개의 지표가 추가로 활성화된 것을 확인할 수 있다.

- 4xx Error rate breakdown (as a percentage of total requests)

- 5xx Error rate breakdown (as a percentage of total requests)

- Origin latency

- Cache hit rate

5xx Error rate 는 CloudFront 배포의 상태를 이해하는 데 중요한 지표이다. 이는 서버 오류 응답이라고도 하는 5xx로 응답한 모든 요청의 비율이다.

 

Cache Hit Rate 도 가치 있는 모니터링 지표이다. 일반적으로 60%를 캐시하는 경우 적중률이 30%로 떨어지면 문제가 발생할 수 있다. 적중률이 낮을수록 최종 사용자 지연 시간과 백엔드의 부하가 증가하기 때문이다. 

 

OriginLatency 지표를 통하여 백엔드 퍼포먼스 이슈가 발생할 것을 의심해볼 수 있다. 이로 인해 사용자들은 긴 페이지 로드 시간으로 고통을 받을 수 있다.

 

 

 

3. CloudWatch 대시보드 및 경보 생성

- [대시보드에 추가] 를 누르면 CloudWatch에 대시보드가 추가된다.

(1) 5xx Error rate : 사용자에게 표시되는 오류 메시지로 인해 실패한 요청의 수를 보여준다. 이 메트릭이 0을 초과하면 시스템에 문제가 있는 것이다.

 

 

(2) Cache Hit Rate : 오리진에 연결하는 대신 캐시에서 응답한 요청 수를 나타낸다. 정상적인 캐시 적중률은 애플리케이션에 따라 다르다. 임계값을 과거의 합리적인 값으로 설정하는 것이 좋다. CloudWatch의 이상 감지를 사용하면 임계값을 자동으로 훈련할 수 있다.

 

(3) OriginLatency : CloudFront 에서 오리진(S3 or ELB) 까지의 지연 시간을 보고한다. 이전까지의 지연 시간을 기준으로 생성하거나 CloudWatch의 이상 감지를 사용한다.

 

각 Rule에 따라 경보 생성 후, 메일을 통해 경보를 정상적으로 받아오는 것을 확인할 수 있다.

- Test에서는 메일이 정상적으로 수신되는 지 확인하기 위해 Rule 값을 greater than or equal(>=) 로 테스트. 정상 수신 확인 후 greater than 으로 복구.