반응형
안녕하세요 서후아빠입니다. ^_^
이번 세션은 Private subnet에 위치한 EC2의 로그를 수집하기 위해 Cloudwatch Agent를 설치하였는데 Cloudwatch에서 Log 수집이 되지 않는 상황에 대해서 조치하는 방법을 알아보도록 하겠습니다.
Cloudwatch Agent 연결 Error
EC2에 CloudWatch Agent 설치 후, 로그가 수집되지 않는 증상
로그를 확인해보면 통신이 안된다는 메시지 출력
sudo tail -f /opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log
2022-06-20T08:58:38Z E! cloudwatch: code: RequestError, message: send request failed, original error: Post "https://monitoring.ap-northeast-2.amazonaws.com/": dial tcp 52.95.194.135:443: i/o timeout
2022-06-20T08:58:38Z E! cloudwatch: code: RequestError, message: send request failed, original error: Post "https://ec2.ap-northeast-2.amazonaws.com/": dial tcp 52.95.194.135:443: i/o timeout
Log를 보면 2개의 URL에 대해서 접근이 실패하였다고 확인이 됩니다. - https://monitoring.ap-northeast-2.amazonaws.com - https://ec2.ap-northeast-2.amazonaws.com 기본적으로 Cloudwatch는 별도 설정이 없으면 Public으로 통신하게 설계가 되어 있습니다. 때문에 Private Subnet에서 인터넷 통신이 가능하도록 구성되어 있지 않으면 Cloudwatch Agent 동작이 안됩니다. 이를 해결하기 위해서는 Cloudwatch Endpoint를 생성해 주어야 합니다. |
조치 방법
VPC > Endpoints > Create endpoint
구분 | Endpoint settings | Service settings (리전 주의) | VPC |
monitoring | Name : cw-monitoring-ep Service category : AWSservice |
com.amazonaws.ap-northeast-2.monitoring | VPC : 엔드포인트 생성할 VPC 선택 Subnet : 엔드포인트 생성할 Subnet 선택 |
ec2 | Name : cw-ec2-ep Service category : AWSservice |
com.amazonaws.ap-northeast-2.ec2 | VPC : 엔드포인트 생성할 VPC 선택 Subnet : 엔드포인트 생성할 Subnet 선택 |
EC2에서 CloudWatch Agent 재구동 후, 로그 확인
sudo systemctl restart amazon-cloudwatch-agent.service
sudo tail -f /opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log
반응형
'Management' 카테고리의 다른 글
[실습] AWS Trusted Advisor 사용하기 (0) | 2022.09.02 |
---|---|
[이론] AWS Trusted Advisor 기본 개념 (0) | 2022.09.02 |
[실습] Amazon SNS(Simple Notification Service) 실습하기 (Lambda, Slack WebHook, CloudWatch) (0) | 2022.08.17 |
[이론] Amazon SNS (Simple Notification Service) 기본 개념 (0) | 2022.08.17 |
[Tip] AWS Backup에서 복원 (Restore) 시 권한 (PassRole) Error 해결하기 (0) | 2022.07.01 |