AWS CloudWatch는 애플리케이션을 모니터링할 수 있도록 해주는 서비스 입니다.
하지만 기본적으로 CPU 사용률, 디스크 I/O, 네트워크 부하 등 기본 지표는 제공을 하나
인스턴스 메모리 및 운영체제 디스크 사용률과 같은 운영체제의 지표는 가져오지 못합니다.
이를 위해서 CloudWatch Agent를 설치하여 메모리와 디스크 사용률을 가져올 수 있는 방법을 정리해보려고 합니다.
Windows 운영체제에서 진행해보겠습니다.
1. Aws IAM 역할 만들기
1) IAM 접속 > 역할 > 역할 생성 > AWS 서비스 > EC2 > CloudWatchAgentServerPolicy
2) 원하는 EC2 인스턴스에 IAM 역할을 수정해줍니다.
2. Windows CloudWatchAgent 설치
1) Windows PowerShell 관리자 권한 실행을 해줍니다.
2) CloudWatchAgent 설치 파일을 다운해주세요.
Invoke-WebRequest https://s3.amazonaws.com/amazoncloudwatch-agent/windows/amd64/latest/amazon-cloudwatch-agent.msi -OutFile C:amazon-cloudwatch-agent.msi
3) 해당 설치 파일을 실행해주세요.
msiexec /i amazon-cloudwatch-agent.msi
4) Agent를 실행시켜주세요.
상태 확인
& $Env:ProgramFiles\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1 -m ec2 -a status
실행
& $Env:ProgramFiles\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1 -m ec2 -a start
5) 해당 위치로 접근하여 cw-config.json파일을 만들어주세요.
{
"agent": {
"metrics_collection_interval": 60,
"region": "ap-northeast-2",
"logfile": "/opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log",
"debug": false
},
"metrics": {
"namespace": "Windows/CloudWatchAgent",
"metrics_collected": {
"LogicalDisk": {
"measurement": [
{
"name":"% Free Space",
"rename":"DiskFreeSpaceUtilization",
"unit":"Percent"
}
],
"metrics_collection_interval": 60,
"resources": [
"C:"
]
},
"Memory": {
"measurement": [
{
"name":"% Committed Bytes In Use",
"unit":"Percent"
}
],
"metrics_collection_interval": 60
}
},
"append_dimensions": {
"InstanceId": "${aws:InstanceId}"
}
}
}
6) 해당 json 파일을 실행해주세요.
& "C:\Program Files\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1" -a fetch-config -m ec2 -s -c file:"C:\Program Files\Amazon\AmazonCloudWatchAgent\cw-config.json"
7) CloudWatch > 모든 지표 정상동작 확인
감사합니다.😊
'Server > AWS' 카테고리의 다른 글
[linux] MongoDB AWS S3 백업하기 (0) | 2023.08.07 |
---|---|
[CentOS] Aws CloudWatch Memory 및 용량 확인 (0) | 2023.04.13 |
AWS Global Accelerator란? (0) | 2023.03.24 |