Windows의 AWS Elastic Beanstalk 환경에서 Amazon CloudWatch와 함께 사용하는 메모리를 모니터링하고 싶습니다.
간략한 설명
다음을 수행하여 Elastic Beanstalk 구성 파일(.ebextensions)을 프로비저닝하여 IIS를 사용하는 Windows Server에서.NET용 CloudWatch로 메모리 사용률을 모니터링할 수 있습니다.
- .ebextensions 디렉터리를 생성합니다.
- .ebextensions 디렉터리에 구성 파일을 저장합니다.
- 애플리케이션을 배포하고 지표를 봅니다.
참고: 기본적으로 통합 CloudWatch 에이전트는 플랫폼 버전 2.0.1 이상을 실행하는 모든 Elastic Beanstalk Windows 환경에 설치됩니다.
해결 방법
.ebeExtensions 디렉터리 생성
- 애플리케이션 번들의 루트에서 .ebextensions라는 숨겨진 디렉터리를 생성합니다.
예: 이 예는 프로젝트 디렉터리의 최상위 수준에 .ebextensions 디렉터리가 있는 애플리케이션 소스 번들 구조를 보여줍니다.
~/workspace/my-application/
|-- Content
|-- .ebextensions
|
|-- archive.xml
`-- systemInfo.xml
.ebextensions 디렉터리에 구성 파일을 생성 및 저장
- 01_cw-memory-metrics.config라는 파일을 애플리케이션 소스 번들의 일부로 생성한 .ebextensions 디렉터리 내에 생성합니다.
예: 이 예에서는 CloudWatch 에이전트 구성 파일 - 지표 섹션을 확장합니다.
files:
"C:\\Program Files\\Amazon\\AmazonCloudWatchAgent\\cw-memory-config.json":
content: |
{
"metrics": {
"append_dimensions": {
"AutoScalingGroupName": "${aws:AutoScalingGroupName}",
"ImageId": "${aws:ImageId}",
"InstanceId": "${aws:InstanceId}",
"InstanceType": "${aws:InstanceType}"
},
"metrics_collected": {
"Memory": {
"measurement": [
"% Committed Bytes In Use"
],
"metrics_collection_interval": 10
}
}
}
}
container_commands:
01_set_config_and_reinitialize_cw_agent:
command: powershell.exe cd 'C:\Program Files\Amazon\AmazonCloudWatchAgent'; powershell.exe -ExecutionPolicy Bypass -File ./amazon-cloudwatch-agent-ctl.ps1 -a append-config -m ec2 -c file:cw-memory-config.json -s; powershell.exe -ExecutionPolicy Bypass -File ./amazon-cloudwatch-agent-ctl.ps1 -a start; exit
01_cw-memory-config.config 구성 파일은 다음을 수행합니다.
- CloudWatch 에이전트가 수집하여 CloudWatch 콘솔 - 지표로 푸시하는 지표를 정의합니다.
- 사용된 메모리 비율에 대한 지표를 수집합니다.
- 파일 섹션에는 CloudWatch에 게시할 지표를 정의하는 CloudWatch 에이전트 구성 JSON 콘텐츠가 포함되어 있습니다.
- container_commands 섹션은 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스에서 애플리케이션 번들의 압축을 푼 후 명령을 실행합니다.
참고: Amazon EC2에 지원되는 CloudWatch 지표 목록은 CloudWatch 기본 제공 지표를 참조하십시오.
예: 이 예에서는 01_cw-memory-metrics.config를 포함하는 애플리케이션 소스 번들 구조를 보여줍니다.
~/workspace/my-application/
|-- Content
|-- .ebextensions
| |--01_cw-memory-metrics.config
|
|-- archive.xml
`-- systemInfo.xml
애플리케이션 배포 및 지표 보기
- 업데이트된 Elastic Beanstalk 애플리케이션을 배포하십시오.
- 메모리 사용률 지표 검토
- CloudWatch 콘솔 탐색 창을 열고, 탐색 창에서 지표를 선택하고 모든 지표를 선택합니다.CWAgent라는 사용자 지정 네임스페이스에서 지표를 볼 수 있습니다.