VPC Endpoint 환경에서 CloudWatch Agent 설치 시 지표에 표시되지 않을 때 해결 방법
안녕하세요 클래스메소드 김재욱(Kim Jaewook) 입니다. 이번에는 VPC Endpoint 환경에서 CloudWatch Agent 설치 시 지표에 표시되지 않을 때 해결하는 방법에 대해 정리해 봤습니다.
CloudWatch Agent는 아래 블로그에 나와있는 CloudWatch Agent 설정 방법에 따랐습니다.
그 외, AWS 환경은 아래 4가지 Endpoint를 이용하고 있는 상황입니다.
- ssm
- ssm-message
- ec2-message
- s3-gateway
문제 발생
이전에 CloudWatch Agent를 인스톨한 경험이 있다면 다음과 같이 지표에 표시될 수는 있습니다.
하지만 현재 기동중인 Instance ID를 찾아보면 나오질 않는 것을 확인할 수 있습니다.
그 외, CloudWatch Agent 지표가 표시 되지 않는 상황도 발생합니다.
$FILE = Get-Content "C:\ProgramData\amazon\AmazonCloudWatchAgent\Logs\amazon-cloudwatch-agent.log" foreach ($LINE in $FILE) { Write-Output "The name is: $LINE" }
문제 원인을 확인하기 위해 CloudWatch Agent의 로그를 확인합니다.
로그 정보는 아래 경로에 있습니다.
- C:\ProgramData\amazon\AmazonCloudWatchAgent\Logs\amazon-cloudwatch-agent.log
The name is: caused by: Post "https://ec2.ap-northeast-1.amazonaws.com/": dial tcp 54.239.96.125:443: connectex: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.
로그를 학인해 보면 다음과 같은 에러가 발생하고 있는 것을 확인할 수 있습니다.
문제 해결
기본적으로 VPC Endpoint 환경에서 CloudWatch Agent를 사용하기 위해서는 monitoring 서비스가 필요합니다.
monitoring 서비스를 포함해 총 3가지가 필요합니다.
- monitoring
- ec2
- logs
logs는 CloudWatch Logs를 사용할 경우 필요합니다.
VPC Endpoint에서 서비스 생성이 끝났다면 CloudWatch 지표를 확인합니다.
정상적으로 Instance ID가 출력되는 것을 확인할 수 있습니다.
CloudWatch 지표에 CloudWatch Agent가 표시되지 않았던 분들은 CloudWatch Agent가 표시되는 것을 확인할 수 있습니다.
본 블로그 게시글을 읽고 궁금한 사항이 있으신 분들은 [email protected]로 보내주시면 감사하겠습니다.