Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- CKA
- 코틀린 코루틴의 정석
- 기록으로 실력을 쌓자
- mysql 튜닝
- 공부
- Pinpoint
- Spring
- kotlin querydsl
- kotlin
- 정보처리기사실기 기출문제
- AWS EKS
- APM
- Elasticsearch
- AI
- IntelliJ
- Kubernetes
- 정보처리기사 실기 기출문제
- kotlin spring
- 티스토리챌린지
- aws
- Linux
- 정보처리기사 실기
- MySQL
- minikube
- Java
- CloudWatch
- kotlin coroutine
- PETERICA
- 오블완
- CKA 기출문제
Archives
- Today
- Total
피터의 개발이야기
[AWS] EC2 파일시스템의 알람 간단하게 RocketChat 받는 방법 본문
반응형
ㅁ 개요
ㅇ EC2 파일 시스템이 꽉차면 더 이상 저장할 공간이 없게 되면서 서버 장애가 발생한다.
ㅇ 이를 예방하기 위해 정기적으로 파일시스템을 점검하거나 APM Agent를 설치하여 모니터링을 해야한다.
ㅇ 운영AWS 환경에는 Whatap을 이용해 EC2의 여러 지표를 모니터링하고 알람을 설정하였는데,
개발EC2의 경우 간단하게 crontab + shell을 이용하여 rocketChat으로 알람을 발송하는 방법을 정리하였다.
ㅁ Shell 작성
[ec2-user@DEV-BASTION]$ cat volum_chk.sh
#!/bin/sh
# Ip Address
HOST_IP=$(hostname -I);
# ex) DEV-RCS-PRI-BASTION
HOST_NAME=$(hostname -s);
# 알람 임계점
ALARM_LIMIT=30;
# 현재 사용량
disk_used=$(df / | grep ^/ | awk '{print $5}' | sed 's/[^0-9]//g')
# 메시지생성
send_msg=$(echo Disk File System warn. Name:$HOST_NAME IP:$HOST_IP DiskUsed: $disk_used%)
# 알람 발송
test $ALARM_LIMIT -lt $disk_used && curl -X POST -H 'Content-Type:application/json' --data "{\"text\":\"$send_msg\"}" http://{{rocketChat_url}}/hooks/62aaaaaaa/zS29B6yHQ
ㅇ EC2 서버의 고유한 정보를 얻기 위해 HOST_IP, HOST_NAME을 생성하였다.
ㅇ 알람 임계점을 테스트를 위해 30으로 설정하였다.
ㅇ df / : 루트경로의 파일 사용정보를 얻는다.
ㅇ grep 을 통해 사용률이 포함되어 있는 row만 필터하였다.
ㅇ awk를 통해 사용률만 추출하였다.
ㅇ sed를 통해 추출한 사용률에서 %를 제거하였다.
ㅁ RocketChat webhook API 생성
ㅇ 예전에 작성한 "[Rocket.Chat] Incoming WebHook Script"을 참조하여 API를 생성하면 된다.
ㅁ Crontab 생성
ㅁ 실행된 결과
ㅁ 함께 보면 좋은 사이트
ㅇ https://lion-king.tistory.com/entry/AWS-EC2-instance-disk-usage-alert?category=854360
ㅇ shell test 확인법 : https://jhnyang.tistory.com/146
반응형
'AWS' 카테고리의 다른 글
[AWS] NVMe EBS 볼륨의 파일 시스템을 확장하기 (0) | 2022.07.19 |
---|---|
[AWS] AWS 컨솔 사용자 비밀번호 초기화 방법 (0) | 2022.06.16 |
[AWS] Aurora와 Aurora serverless의 비용 효율성 분석 (3) | 2022.06.07 |
[CloudWatch] 지표를 통해 CloudWatch Dashboard 쉽게 생성하기 (0) | 2022.06.06 |
[AWS] 주요 참조자료 목록 (0) | 2022.06.04 |
Comments