서버에 변화가 생기면, Slack으로 받아보자.
Slack수신은 AWS Chatbot서비스를 이용하자.
lambda를 이용하는것 보다 쉽다~
<1> Slack에서 받을 채널은 만든다
<2> SNS 설정하기
<3> Chatbot
<4> Chatbot에서 Slack의 새 채널 구성
<5> Slack에서 테스트
<6> Cloudwatch 설정하기
<7> Cloudwatch에 규칙 > 규칙 생성으로 서버 상태 변경 테스트
<8> 참고 사이트
<1> Slack에서 받을 채널은 만든다
serverchk
<2> SNS 설정하기
알람을 메일로 받아보기 위해 SNS 설정을 하자
1
주제 생성 > 표준
topasvga-email-sns
topasvga-email-sns1
2
구독생성은 나중에 하자
<3> Chatbot
1
새클라이언트 구성
slack > 구성
2
allow
<4> Chatbot에서 Slack의 새 채널 구성
1
Slack 채널 구성
구성이름
seo-chat
로깅 - Amazon CloudWatch Logs에 로그 게시 체크 > 모든 이벤트
3
퍼블릭채널 > 미리 만든 채널 serverchk 를 선택한다.
4
IAM역할 > 템플릿을 사용하여 IAM 역할 생성
seo-chat-role
권한 4개 모두 입력
6
알림 - 선택사항
SNS 주제
리전 > 서울 리전
주제 topasvga-email-sns
구성
<5> Slack에서 테스트
1
slack의 해당 채널에 가서 aws를 초대한다.
#serverchk 에서 실행
/invite @aws
2
@aws help
3
리전의 az 확인
@aws ec2 describe-availability-zones --region ap-northeast-2
<6> Cloudwatch 설정하기
서버 상태 변경이 되면 알람을 받자
ec2를 생성하고, CPU 부하를 주어 CloudWach 알람을 설정하자
1
ec2 생성
seo-web01
public에 1대 생성
모니터링 > 세부 모니터링 관리 > 활성화 체크
2
cloudwatch 설정
알람 생성 > EC2 > 인스턴스별 지표 > CPUUtilization > 평균 > 1분 > 이상 탐지 > 대역보다 큼 > 10
3
기존 SNS 주제 선택
앞에서 만든 topasvga-email-sns 선택한다.
다음
seo-web01-cpu-10over
경보 생성
<7> Cloudwatch에 규칙 > 규칙 생성으로 서버 상태 변경 테스트
1
Cloudwatch에 규칙 > 규칙 생성으로 서버 상태 변경 테스트
잘된다.
서비스 이름 : EC2
이벤트 유형: EC2 인스턴스 상태 변화
대상 :추가에 SNS
주제 :앞에서 만든 topasvga-email-sns 선택한다.
또는
EC2에 부하주기
EC2 연결로 2개 로그인
1개는 부하주기
1개는 htop 으로 부하 확인
1
부하주는 프로그램 설치
$
sudo amazon-linux-extras install epel -y
sudo yum install stress-ng -y
sudo stress-ng --cpu 1 --cpu-load 70% --timeout 10m --metrics --times --verify
yum install htop –y
2
Slack 에 가서 알람온거 확인하기
3
SNS에서 메일 수신도 하나 생성해 크로스 체크 해본다.
5
알람이 안오면 Cloudwatch에서 제대로 OK에서 알람으로 변경되는지 확인하자!
<8> 참고 사이트
1
CloudWatch ----- SNS ---- Lambda --------Slack 구성이다.
https://brunch.co.kr/@topasvga/1176
2
챗봇에서 명령 주기
https://docs.aws.amazon.com/chatbot/latest/adminguide/chatbot-cli-commands.html
https://brunch.co.kr/@topasvga/1581
감사합니다.