본문 바로가기
[OS]/Linux

[중요][AWS] EC2 SystemLog 확인하고 알람설정하기!!

by METAVERSE STORY 2024. 11. 26.
반응형
728x170

 

 

## AWS SSM으로 대량 배포
- 명령 파라미터 
- dnf -y install rsyslog
- systemctl start rsyslog.service

 

 

 

EC2가 갑자기 재부팅 되었다….

그로인해 회사 내부 시스템이 제대로 동작하지 못했다. 물론 재부팅 후에 시스템이 자체적으로 시작되지 못한것도 문제지만, 재 부팅된 이유를 찾아보자

이유는 2가지 일 것이다

  1. 누군가 EC2를 재부팅 한 경우
  2. EC2 시스템 자체적으로 재부팅 한 경우
 

준비물

  • EC2
  • SSM (Session Manager)
  • CloudWatch Agent
  • CloudTrail
  • 약간의 Shell 명령어
 
  1. 누군가 EC2를 재부팅 한 경우
  • 누군가 재부팅을 했다면, 로그가 남을것이다
  • CloudTrail을 확인해보자 (RebootInstances)

 

 

 

2. EC2 시스템 자체적으로 재부팅 한 경우

  • EC2 인스턴스의 재시작은 드물지만, 몇가지 이유로 발생할 수 있다.
  • 상태검사 중 하나 또는 둘 모두에 실패할 경우
  • 기본 하드웨어의 결함이 있어 자체적으로 정상 상태인 하드웨어로 교체할 경우
  • 커널 버그 일경우
## Linux
last reboot                                       ## 최근 재부팅 확인
head -2000 /var/log/messages                      ## 로그 확인 
head -2000 /var/log/messages | grep "Shutting"    ## 로그 확인 "Shutting" 

 

 

## AmazonLinux
last reboot
journalctl## AmazonLinux 에서 log 파일로 확인하는 법
dnf install rsyslog
systemctl enable rsyslog --now
systemctl status rsyslog             ## 구성후엔, /var/log/messages에 쌓임

 

 

 

  • 이럴경우를 대비하여, EC2의 시스템로그를 CloudWatch Alarm 설정을 진행해보자…

 

 
Architecture
 
  1. EC2에서 CloudWatch Agent를 설치하기 전, 필요한 인스턴스 프로파일을 설정하자
기존 IAM 역할에 정책 추가
EC2 인스턴스 프로파일 추가

2. CloudWatch Agent를 설치하자

sudo yum install amazon-cloudwatch-agent
## 설치된 위치 찾기 ( 보통 /opt/aws 에 설치됨 )
find / -name amazon-cloudwatch-agent-config-wizard ## CloudWatch Agent 실행
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-config-wizard

3. agent 구성

  • root로 설정하자, 다른걸로 설정하면 Permission 이슈가 발생함
  • Log 파일을 기재해주자 (/var/log/messages)
  • Log 타입은 Standard를 설정해주자
  • IA로 설정하면 지표필터를 지정해주지 못함
  • config.json 확인
cat /opt/aws/amazon-cloudwatch-agent/bin/config.json

4. CloudWatch Agent를 실행 (로그확인)

## amazon-cloudwatch-agent 실행
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config \
-m ec2 -c file:/opt/aws/amazon-cloudwatch-agent/bin/config.json -s
## amazon-cloudwatch-agent log 확인
cat /opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log

5. CloudWatch 로그 확인

6. 경보생성을 위해 지표필터 생성

7. 경보를 생성하자

경보 생성 클릭
경보 생성 ( x ≥ 1)
  • SNS / AWS Chatbot 부분은 생략

8. 테스트를 해보자…

## 시스템 재부팅하기
reboot

 

 

 

 

출처 : https://medium.com/@zkfmapf999/aws-ec2-systemlog-%ED%99%95%EC%9D%B8%ED%95%98%EA%B3%A0-%EC%95%8C%EB%9E%8C%EC%84%A4%EC%A0%95%ED%95%98%EA%B8%B0-3f3b9894d680

반응형
그리드형

댓글