반응형
## AWS SSM으로 대량 배포
- 명령 파라미터
- dnf -y install rsyslog
- systemctl start rsyslog.service
EC2가 갑자기 재부팅 되었다….
그로인해 회사 내부 시스템이 제대로 동작하지 못했다. 물론 재부팅 후에 시스템이 자체적으로 시작되지 못한것도 문제지만, 재 부팅된 이유를 찾아보자
이유는 2가지 일 것이다
- 누군가 EC2를 재부팅 한 경우
- EC2 시스템 자체적으로 재부팅 한 경우
준비물
- EC2
- SSM (Session Manager)
- CloudWatch Agent
- CloudTrail
- 약간의 Shell 명령어
- 누군가 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 설정을 진행해보자…

- EC2에서 CloudWatch Agent를 설치하기 전, 필요한 인스턴스 프로파일을 설정하자


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. 경보를 생성하자


- SNS / AWS Chatbot 부분은 생략

8. 테스트를 해보자…
## 시스템 재부팅하기
reboot


반응형
'[OS] > Linux' 카테고리의 다른 글
[참고][AWS] Amazon Linux에서 /var/log가 꽉차는 이슈!! (56) | 2024.11.25 |
---|---|
[참고][AWS] 아마존 리눅스 2023 crontab 설치하는 방법!! (15) | 2024.10.30 |
[중요][AWS] 리눅스 top 명령어를 통한 CPU 점유율 확인 및 측정하기!! (99) | 2024.09.14 |
[중요2][nc] 방화벽 허용 확인 명령어(Linux), 임시 PORT 구성방법!! (77) | 2024.06.11 |
[참고][RHEL7] HOSTNAME (호스트명) 변경하기!! (76) | 2024.06.06 |
[중요][리눅스] Failed to start LSB: Bring up/down networking 해결방법!! (76) | 2024.06.06 |
[Linux][레드햇] Sosreport를 이용해 시스템 정보를 전달하기!! (72) | 2024.06.04 |
[중요][Linux] 환경변수 PATH 추가하기 (23) | 2024.06.02 |
댓글