EBS 용량이 차면 하이웍스 메신저로 알림주기

salgu·2022년 9월 5일
0

AWS

목록 보기
6/10
post-thumbnail

하이웍스


https://customer.gabia.com/manual/hiworks/3403/4280

하이웍스 홈페이지로 들어가 Office token을 발급받아줍니다.


https://documenter.getpostman.com/view/6863253/S1TVWcri?version=latest#51399382-24d6-4377-bb92-7c9fe01df9cd
하이웍스 API 포스트맨이고 알림 -> 알림발송를 참고하여 API로 요청을 해주시면 알림이 오게됩니다.

인스턴스


1. 알림이 오길 원하는 해당 인스턴스로 접속합니다.

2. 스크립트 파일을 home에 만들어줍니다.

  • sudo vi ~/disk_volume.sh
SERVER_NAME=${1}
SERVER_URL=${2}

IP=$(hostname -I);
LIMIT=80;

root_disk_used=$(df| grep /dev/nvme0n1p1 | awk '{print $5}');
root_disk_used=${root_disk_used::-1};

if [ $LIMIT -lt $root_disk_used ];then
        curl --location -g --request POST 'https://api.hiworks.com/office/v2/notify' \
--header 'Authorization: Bearer abab2c7af64c42484fb1d6c7d58435f5' \
--header 'Content-Type: application/json' \
--data '{
   "user_list":[
      "salgu1998", "haerong22", "gyojin.shin", "kjy0124kr", "ytw9699", "wizfinder"
   ],
   "message":"['"${SERVER_NAME}"'] '"${IP}"'에서 '"${root_disk_used}"'% 사용중 입니다.",
   "link":"'"${SERVER_URL}"'",
   "mlink":"https://m.hiworks.com",
   "solution_name":"EC2 EBS 용량 초과 임박",
   "solution_image_url":"https://www.hiworks.com/static/images/logo.png",
   "solution_default_url":"https://www.hiworks.com"
}'
fi

SERVER_NAME과 SERVER_URL은 스크립트를 실행할 때 파라미터로 받아줍니다.

3. home 디렉토리에서 실행하면 permission denied나 다른 오류가 생길 수 있습니다.

  • sudo mkdir /usr/script

4. 생성했던 스크립트 파일을 옮겨줍니다.

  • sudo mv disk_volume.sh /usr/script

5. 파일 실행 권한을 줍니다.

  • sudo chmod +x /usr/script/disk_volume.sh

6. 스크립트가 잘 돌아가는지 테스트 해줍니다.

  • sh /usr/script/disk_volume.sh

7. crontab에 등록할 cron을 생성해줍니다.

- 30 10 * * 1-5 sh /usr/script/disk_volume.sh SERVER_NAME_Parameter SERVER_URL_Parameter

8. 크론을 크론탭에 등록해줍니다.

  • crontab crontab_new

9. 마지막으로 크론탭에 등록 됐는지 확인합니다.

  • crontab -l
profile
https://github.com/leeeesanggyu, leeeesanggyu@gmail.com

0개의 댓글