CloudWatch

기술노트
Admin (토론 | 기여)님의 2025년 8월 10일 (일) 15:14 판 (IT 용어 자동 업로드: CloudWatch)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)

CloudWatch

비유로 쉽게 이해하기

CloudWatch는 **'자동차의 계기판과 블랙박스를 합쳐 놓은 것'**과 같습니다. 계기판처럼 현재 AWS 리소스들의 상태(CPU 사용률, 네트워크 트래픽 등)를 실시간으로 보여주고(모니터링), 특정 수치를 넘으면 경고등(경보)을 켭니다. 또한, 블랙박스처럼 모든 활동 기록(로그)을 저장하고 있어, 문제가 발생했을 때 과거 기록을 돌려보며 원인을 분석할 수 있습니다.

개요

Amazon CloudWatch는 AWS 리소스와 애플리케이션을 위한 모니터링 및 관찰 기능 서비스입니다. 로그, 지표(Metric), 이벤트 형태의 운영 데이터를 수집하고, 이를 시각화, 분석, 경보 설정하는 데 사용됩니다. DevOps 엔지니어, 개발자, SRE(사이트 안정성 엔지니어)에게 필수적인 도구입니다.

상세 설명

CloudWatch는 크게 세 가지 기능으로 나뉩니다. 1. CloudWatch Metrics: EC2의 CPU 사용률, S3의 버킷 크기, DynamoDB의 읽기/쓰기 용량 등 AWS 서비스들의 성능 지표를 시간 순서대로 수집합니다. 사용자는 이 지표들을 그래프로 시각화하고, 특정 임계값을 넘었을 때 알림을 보내는 경보(Alarm)를 설정할 수 있습니다. 예를 들어, 'EC2 인스턴스의 CPU 사용률이 5분 동안 80% 이상 지속되면 이메일로 알림을 보내라'와 같이 설정할 수 있습니다. 2. CloudWatch Logs: 애플리케이션 코드, EC2 인스턴스, Lambda 함수 등에서 발생하는 로그 데이터를 중앙에서 수집, 모니터링, 저장 및 분석합니다. 특정 키워드(예: "ERROR")가 포함된 로그가 발생했을 때 경보를 울리도록 설정할 수도 있습니다. 3. CloudWatch Events (now Amazon EventBridge): AWS 리소스의 상태 변경(예: EC2 인스턴스 시작, S3에 객체 업로드)을 실시간으로 감지하고, 이에 대한 대응 조치(Lambda 함수 호출, SNS 알림 등)를 자동으로 트리거하는 이벤트 기반 서비스입니다.

왜 중요할까요?

  • 운영 가시성 확보: 시스템 전반의 성능과 상태를 한눈에 파악하여, 문제가 발생하기 전에 잠재적인 위험을 감지할 수 있습니다.
  • 신속한 장애 대응: 경보 기능을 통해 시스템 이상을 실시간으로 통보받고, 로그 분석을 통해 문제의 근본 원인을 빠르게 파악할 수 있습니다.
  • 자동화된 운영: 경보 및 이벤트와 Auto Scaling, Lambda 등의 서비스를 연동하여, 문제 발생 시 자동으로 복구 조치를 취하는 등 자동화된 운영 환경을 구축할 수 있습니다.

주요 특징

  • 통합 대시보드: 여러 지표와 로그를 하나의 대시보드에서 시각적으로 모니터링할 수 있습니다.
  • 실시간 경보: 지표가 특정 임계값을 위반할 때 Amazon SNS를 통해 이메일, SMS 등 다양한 채널로 알림을 보냅니다.
  • 중앙 집중식 로그 관리: 다양한 소스에서 발생하는 로그를 한 곳으로 모아 검색, 분석, 보관할 수 있습니다.
  • 1초 단위의 세분화된 모니터링: 상세 모니터링 옵션을 통해 EC2 인스턴스 등의 지표를 더 세밀하게 수집할 수 있습니다.
  • 이벤트 기반 아키텍처 지원: Amazon EventBridge를 통해 리소스 변경에 따른 자동화된 워크플로우를 생성합니다.

사용 사례

  • EC2 인스턴스의 CPU 사용률이 급증할 때 경보를 받고, Auto Scaling을 통해 인스턴스를 자동으로 추가
  • 애플리케이션 로그에서 'Fatal Error' 메시지가 감지되면 즉시 개발팀에 슬랙 알림 전송
  • 사용자가 S3에 이미지를 업로드하면, 이를 이벤트로 감지하여 Lambda 함수를 실행시켜 썸네일을 생성
  • 데이터베이스의 연결 수가 비정상적으로 많아지면 DBA에게 경고 이메일 발송

관련 서비스/용어

참고 자료