- Amazon CloudWatch는 AWS 리소스와 AWS에서 실시간으로 실행 중인 애플리케이션을 모니터링 하는 서비스
- 애플리케이션의 안정적 운영과 신속한 문제 해결을 위한 필수 모니터링 도구
- 스케일 업(Scale Up)
- 스케일 아웃(Scale Out)
사용사례
- 서버 모니터링: EC2 인스턴스의 CPU 사용률, 메모리, 디스크 I/O를 모니터링하여 성능 저하를 사전에 감지하고 대응
- 애플리케이션 성능 모니터링: 웹 애플리케이션의 응답 시간, 오류율 등을 모니터링하여 사용자 경험을 개선
- 로그 분석: CloudWatch Logs를 사용하여 애플리케이션 로그를 수집하고 분석하여 문제를 진단하고 성능 최적화
- 자동 확장: CloudWatch의 경고를 기반으로 Auto Scaling을 설정하여 트래픽 변화에 따라 인스턴스를 자동으로 추가하거나 제거
- 보안 모니터링: 비정상적인 활동이나 오류를 감지하기 위해 로그 데이터를 분석하고, 경고를 설정하여 보안 사고를 예방
관리 구조
- 네임스페이스(Namespace)
- 서로 다른 애플리케이션에 대한 지표 저장을 위한 컨테이너
- 각 애플리케이션의 측정 지표를 서로 격리
- 사용자 지정 지표 생성 시 고유 네임스페이스 생성 필요
- 지표(Metrics)
- 애플리케이션 또는 서비스에 의해 생성된 데이터 요소의 세트
- 기본적인 지표 데이터의 저장 간격은 5분이며 고급 옵션은 1분
- 사용자 정의 지표 데이터 및 저장 간격을 설정하여 생성 가능
- 차원(Dimensions)
- 지표를 고유하게 식별할 수 있게 하는 Name/Value로 구분된 정보
- 지표 검색 시 필터링을 통해 원하는 데이터 검색 가능
- Instanceld 차원을 지정하여 특정 인스턴스 통계 확보 가능
- 통계(Statistics)
- 지정한 기간에 대한 지표 데이터의 집계에 대한 결과
- 사용자 지정 데이터 또는 서비스 지표 데이터 요소 기반 통계 제공
- 백분위수(Percentile)
- 데이터 세트에서 값의 상대적 위치를 나타내는 수치
- 지표 데이터의 분포 및 상대적 위치를 정확하게 이해하게 해줌
- 통계값 표기 시 백분위 선택 값에 따라 통계 표시
- 경보(Alarms)
- 경보를 사용하여 자동으로 시작
- 지정한 기간에 지표를 감시하고 임계값 기준으로 작업 수행
- 경보를 통해 Amazon SNS 주제, Auto Scaling에 대한 작업 수행
AWS Alarm
AWS DashBoard
cloud watch logs