[AWS] CloudWatch + Simple Notification Service

hugingstar·2026년 3월 31일

AWS

목록 보기
12/18
post-thumbnail
  • AWS에서 제공하는 Monitoring 도구
    • AWS Resource, Application 상태 - CPU, Memory, Network, Traffic 등
  • 경보(Alarm) 설정 > 자동 대응(ex. Auto Scaling이 동작하면 관리자 메일로 메시지 전달)
  • 목표 : CloudWatch를 사용해서 EC2 Instance의 CPU 사용량이 50%이상일 때 Instance 재부팅 및 이메일로 메시지 전달

  • EC2 Instance 생성

    • 시작 템플릿으로 생성

  • 템플릿으로 인스턴스 시작 가장 최근에 만든 4번을 선택

  • 최신 버전 템플릿이 반영된 것을 확인

Simple Notification Service

  • Simple Notification Service를 사용할 것이다.

  • 주제를 생성해야 한다. 표준을 선택하고 이름 작성하고 생성한다.

  • 엔드포인트, 프로토콜은 이메일로 선택한다.
  • 메일이 온 후 어떤 창이 뜨면 그 주소를 복사해서 넣어야 한다.

CloudWatch

  • Cloudwatch로 가서 설정한다.

  • 경보 > 경보 생성을 누른다.

  • 지표 선택에서 상세 설정을 진행한다.

  • EC2 인스턴스별 지표 선택하고 현재 사용하고 있는 것 조회해서 선택한다.

  • 지표가 선정되었으면 이제 조건을 넣을 수 있다.

  • 정적으로 cpu가 50 넘어가면 이상으로 감지하도록 한다.

  • 누락된 데이터를 불량으로 처리로 선택한다.

  • 다음으로 넘어가면 경보 상태를 설정할 수 있다.
  • 다음으로 알림 전송에 내가 정의해 둔 것을 선택한다.

  • EC2 작업에서 "이 인스턴스 재부팅"을 선택한다.
  • 이 옵션을 사용하면 문제가 생겼을 때 재부팅이 저절로 된다.

  • 3번째 단계에서는 경보 세부 정보 추가한다.

  • 마지막으로 확인한 후, 경보를 생성한다.

  • 경보가 생성되었다.

  • 테스트를 위해 현재 떠 있는 인스턴스에 접속해본다.

  • 스트레스 테스트를 한다.
sudo stress --cpu 1 --timeout 300

  • 경보가 뜨도록 설정되어 있다.

  • 사용량이 너무 많아져 과부하가 왔을 때 정책 설정한대로 재부팅을 실행한다.

  • 그리고 설정한 이메일로 알람을 보내줬다.

  • 다시 시작 되어있다.

0개의 댓글