AWS EC2에 CloudWatch Agent 설정
CloudXper에서 AWS CloudWatch Agent 설정을 위한 가이드 내용을 기술합니다.
해당 설정을 통해 CloudXper에서 Memory Utilization에 대해 확인이 가능합니다.
AWS CloudWatch Agent 구성 가이드
AWS 공식 문서 참고 : CloudWatch 에이전트를 사용하여 지표, 로그, 추적 수집 - Amazon CloudWatch
CloudXper가 Memory 지표를 수집하는 방식
AWS는 기본 지표로 Memory 관련 지표를 제공하지 않습니다
CloudWatch를 EC2에 설치하여야 Memory 지표를 확인할 수 있습니다.
CloudXper가 Memory 지표를 받아올 때는 InstanceId 기준(Dimension = InstanceId)으로만 받아올 수 있습니다.
수집하는 지표
Linux : “mem_used_percent”
Window : “Memory % Committed Bytes In Use”
설정 가이드
CloudWatch Agent Config 설정 필요
Config Default 파일 수정 (경로는 OS마다 다르므로 확인 필요)
/opt/aws/amazon-cloudwatch-agent/amazon-cloudwatch-agent.d/default 파일 수정(sudo 권한 필요)Linux
InstanceId, ImageId, InstanceType, AutoscalingGroupName의 조합으로 데이터를 볼 필요가 있는 경우 아래와 같이 수정
{ "agent": { "run_as_user": "cwagent" }, "metrics": { "metrics_collected": { "mem": { "measurement": [ "mem_used_percent" ] }, "disk": { "measurement": [ "used_percent" ], "resources": [ "*" ] } }, "append_dimensions": { "ImageId": "${aws:ImageId}", "InstanceId": "${aws:InstanceId}", "InstanceType": "${aws:InstanceType}", "AutoScalingGroupName": "${aws:AutoScalingGroupName}" }, "aggregation_dimensions": [ [ "InstanceId" ], [ "InstanceId", "ImageId", "InstanceType", "AutoScalingGroupName" ] ] } }CloudXper에서만 데이터를 보면 되는 경우 아래와 같이 수정
{ "agent": { "run_as_user": "cwagent" }, "metrics": { "metrics_collected": { "mem": { "measurement": [ "mem_used_percent" ] }, "disk": { "measurement": [ "used_percent" ], "resources": [ "*" ] } }, "append_dimensions": { "InstanceId": "${aws:InstanceId}" } } }
Window
To-BE Write
CloudWatch agent 중지
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -m ec2 -a stop
CloudWatch agent 시작
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -m ec2 -a start
CloudWatch agent 상태 조회
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -m ec2 -a status
아래와같이 뜨면 정상
{ "status": "running", "starttime": "시작시간", "configstatus": "configured", "cwoc_status": "stopped", "cwoc_starttime": "", "cwoc_configstatus": "not configured", "version": "1.247347.3b250378" }실제 수집 확인
CWAgent Namespace에 존재하면 정상
InstanceId로만 조회되는 부분이 보이면 정상
Memory Data가 보이면 정상