[AWS] EC2에 CloudWatch Agent 설정하기

2025. 8. 22. 17:39·AWS

1. Ubuntu/Debian CloudWatch Agent 설치

# Amazon 공식 DEB 패키지 다운로드
wget https://s3.amazonaws.com/amazoncloudwatch-agent/ubuntu/amd64/latest/amazon-cloudwatch-agent.deb

# 패키지 설치
sudo dpkg -i amazon-cloudwatch-agent.deb

# 설치 확인
/opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a status

 

설치가 완료되고 나면, 이런식으로 cloudwatch agent가 중지된 상태라고 뜬다.

root@ip-10-0-131-127:~# /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a status
{
  "status": "stopped",
  "starttime": "",
  "configstatus": "not configured",
  "version": "1.300057.1b1167"
}

 

2. 설정 파일 작성

sudo vi /opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.json

 

나는 애플리케이션 로그와 CPU, Memory, Disk 등 메트릭을 수집하는 설정파일을 작성했다.

 

  • metrics → CPU, Memory, Disk 메트릭 수집
  • logs → 애플리케이션 로그 전송

 

{
  "agent": {
    "metrics_collection_interval": 60,
    "logfile": "/opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log"
  },
  "metrics": {
    "append_dimensions": {
      "InstanceId": "${aws:InstanceId}"
    },
    "metrics_collected": {
      "cpu": {
        "measurement": [
          "cpu_usage_idle",
          "cpu_usage_iowait",
          "cpu_usage_user",
          "cpu_usage_system"
        ],
        "metrics_collection_interval": 60,
        "resources": [
          "*"
        ]
      },
      "mem": {
        "measurement": [
          "mem_used_percent"
        ],
        "metrics_collection_interval": 60
      },
      "disk": {
        "measurement": [
          "disk_used_percent"
        ],
        "metrics_collection_interval": 60,
        "resources": [
          "/"
        ]
      }
    }
  },
  "logs": {
    "logs_collected": {
      "files": {
        "collect_list": [
          {
            "file_path": "/var/log/myapp/app.log",
            "log_group_name": "/aws/ec2/myapp",
            "log_stream_name": "{instance_id}-app-log",
            "timezone": "UTC"
          }
        ]
      }
    }
  }
}

 

3. IAM Role 권한 추가

 

현재 EC2 인스턴스에 붙어있는 IAM Role에 다음과 같은 권한을 부여해야,

 

EC2 인스턴스가 로그 그룹을 생성하고 로그를 전송할 수 있는 권한이 생긴다.

 

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "cloudwatch:PutMetricData",
        "logs:CreateLogGroup",
        "logs:CreateLogStream",
        "logs:PutLogEvents"
      ],
      "Resource": "*"
    }
  ]
}

 

4. Agent 실행

# Agent 실행

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

# Agent 중지
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl \
  -a stop
  
# Agent 상태 확인
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a status

 

정상적으로 로그 그룹이 생성되었다면, CloudWatch 콘솔에서 다음 로그그룹을 확인할 수 있다.

 

'AWS' 카테고리의 다른 글

[AWS][트러블슈팅] 도커파일 USER 미지정 문제 해결  (3) 2025.08.12
[AWS] CloudFront HTTP 보안 헤더 적용  (4) 2025.08.12
[AWS][트러블슈팅] CodeDeploy 오류 해결 (ResourceInitializationError, Only target group in ECS deployment group)  (1) 2025.08.06
[AWS][트러블슈팅] 프론트 -> 백엔드 API 요청 막힘 문제 해결  (2) 2025.08.06
[AWS] EC2 to ECS 마이그레이션 (Spring 프로젝트, https)  (3) 2025.08.04
'AWS' 카테고리의 다른 글
  • [AWS][트러블슈팅] 도커파일 USER 미지정 문제 해결
  • [AWS] CloudFront HTTP 보안 헤더 적용
  • [AWS][트러블슈팅] CodeDeploy 오류 해결 (ResourceInitializationError, Only target group in ECS deployment group)
  • [AWS][트러블슈팅] 프론트 -> 백엔드 API 요청 막힘 문제 해결
공부하는 나무꾼
공부하는 나무꾼
  • 공부하는 나무꾼
    헤맨 만큼 내 땅이다
    공부하는 나무꾼
  • 전체
    오늘
    어제
  • 글쓰기/관리
    • 분류 전체보기 N
      • AWS N
      • SAA-C03
      • 네트워크 보안
      • 최신정보보안이론
      • 컴퓨터네트워크
      • OpenFaaS
      • C++
      • Java
      • HTML, CSS
      • 자료구조
      • 알고리즘
      • 정보보안인재양성
      • [MAC]트러블슈팅&Tip
      • 공부
      • Web(Django)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    aws-c03
    WAS
    등록번호
    Web Server
    web application server
    웹애플리케이션서버
    자격증
    java #자바 #객체지향프로그래밍 #복습
    웹클라이언트
    SAA-C03
    클라우드
    AWS
    웹서버
    cloud
  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.3
공부하는 나무꾼
[AWS] EC2에 CloudWatch Agent 설정하기
상단으로

티스토리툴바