• 『EC2』CloudWatch Agent
    AWS/EC2 2022. 6. 20. 23:26

    Cloudwatch Agent란?

    Cloudwatch Agent는 EC2인스턴스의 내부 시스템에 대한 지표나 로그를 수집하여 Cloudwatch로 내보낼 수 있다.

    Cloudwatch Agent는 MIT라이선스에 따른 오픈소스이다.

    https://github.com/aws/amazon-cloudwatch-agent/

     

    GitHub - aws/amazon-cloudwatch-agent: CloudWatch Agent enables you to collect and export host-level metrics and logs on instance

    CloudWatch Agent enables you to collect and export host-level metrics and logs on instances running Linux or Windows server. - GitHub - aws/amazon-cloudwatch-agent: CloudWatch Agent enables you to ...

    github.com

    Agent를 통해서 EC2에서 커스터마이징한 상태를 로그나 지표를 통해서 빼올 수 있다.

    Cloudwatch Agent 동작방식

    Agent설치 후 설정값에 따라 데이터를 전송을 하게 되면

    AWS상에서는 metric이 수집된다. 해당 metric은 Namespace 내부의 Dimension안에 저장이 되어있다.

    데이터를 가공하기 위해서 다양한 math expression이 제공되고 가공처리를 완료하면 대시보드로 제공한다.

    Cloudwatch Agent 사용법

    Cloudwatch Agent 패키지설치

        sudo yum install amazon-cloudwatch-agent

    IAM 권한 설정

    https://docs.aws.amazon.com/ko_kr/AmazonCloudWatch/latest/monitoring/create-iam-roles-for-cloudwatch-agent-commandline.html

    위 공식문서를 따라서 IAM을 생성한다.

    Agent 구성 파일 생성

    sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-config-wizard

    파일 편집

    cd /opt/aws/amazon-cloudwatch-agent/

    Namspace를 새로 지정하려면 위 디렉토리로 이동해 config.json을 열어 namespace 구문 한줄을 추가하고 저장한다.

    "metrics": {
    "namespace": "winserver1",
    		"metrics_collected": {

    Agent 실행

    sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -s -c file://opt/aws/amazon-cloudwatch-agent/bin/config.json

    해당 명령어를 통해서 agent를 실행이 가능하다.

    공식 홈페이지에는 file뒤에 /(슬래시)가 없지만 file뒤에 슬래쉬 두개를 추가해야지만 작동한다.

    댓글