※ 공식 문서 참고 : https://aws.amazon.com/ko/premiumsupport/knowledge-center/cloudwatch-memory-metrics-ec2/
[ CloudWatch에 EC2 인스턴스 메모리/디스크 지표 전송 ]
① IAM 역할 생성 + EC2 인스턴스에 연결
● 역할 생성
》 AWS 》 IAM 》 액세스 관리 》 역할 》 AWS 서비스 》 EC2 》 정책 : CloudWatchAgentServerPolicy 》 역할 생성
● 연결
》 AWS 》 EC2 》 작업 》 보안 》 IAM 역할 수정 》 IAM 역할 : 방금 생성한 역할 》 IAM 역할 업데이트
② 에이전트 패키지 다운로드 + 패키지 설치
# 패키지 다운로드
wget https://s3.amazonaws.com/amazoncloudwatch-agent/ubuntu/amd64/latest/amazon-cloudwatch-agent.deb
# 패키지 설치
dpkg -i amazon-cloudwatch-agent.deb
③ CloudWatch 에이전트 구성 파일 생성
vi /opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.json
#파일내용
{
"metrics": {
"metrics_collected": {
"mem": {
"measurement": [
"mem_used_percent"
]
},
"disk": {
"measurement": [
"used_percent"
],
"resources": [
"*"
]
}
},
"append_dimensions": {
"InstanceId": "${aws:InstanceId}"
}
}
}
④ EC2 인스턴스에서 에이전트 시작
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -s -c file:[configuration-file-path]
# configuration-file-path : 만들었던 설정 파일 경로
# /opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.json
⑤ 서비스 실행 확인
systemctl status amazon-cloudwatch-agent
⑥ CloudWatch에서 확인
》 AWS 》 CloudWatch 》 좌측 지표 선택 》 모든 지표 》 CWAgent 확인
》 CWAgent 클릭 시 》 InstanceId, device, fstype, path : 디스크 관련 / InstanceId : 메모리 관련
⑦ Stress 로 메모리 부하주기
stress --vm 1 --vm-bytes 500m
# 하나의 프로세서에 메모리 500m 부하
[ 알람 설정 ]
● 경보 생성
》 AWS 》 CloudWatch 》 좌측 경보 선택 》 경보 상태 》 경보 생성 》 방금 전송한 메모리 지표 선택 》 통계 : 평균, 기간 : 1분 》임계값 : 50 (50%가 넘으면 알람이 오도록)
》 알림 》 새 주제 생성 》 사용자 이메일 주소 작성 》 주제 생성 》 경보 생성
● 메모리에 stress 주기
stress --vm 1 --vm-bytes 600m
● 메모리 그래프 확인
● 메일 확인
'CLOUD > Public Cloud' 카테고리의 다른 글
[AWS] SQS - 메세지 송수신 (0) | 2023.03.22 |
---|---|
[AWS] CloudFormation : 스택 생성 (0) | 2023.03.17 |
[AWS] CloudWatch : EC2 모니터링 (2) | 2023.03.17 |
[AWS] IAM : 새로운 사용자 권한 설정 (0) | 2023.03.17 |
[AWS] API Gateway : POST - 학생 이름 입력 > 나이 반환 (0) | 2023.03.17 |