[AWS] CloudWatch Agent 설치하기(자동)

2020. 4. 6. 08:45AWS/AWS_Service

반응형

안녕하세요, 달콤한달팽이입니다.🐌🫡

 

오늘은 EC2 내부에 CloudWatch Agent를 설치하는 방법 중,

Wizard 기능을 사용한 자동 설치 방식을 실습해보겠습니다!


CloudWatch Agent Wizard란?

CloudWatch Agent Wizard란, 이전글에서 생성한 방식처럼 config.json을 직접 작성하여 CloudWatch Agent를 설치하는 방식이 아닌 반드시 필요한 몇 가지 선택 사항만을 선택함으로써 간편하게 Agent를 구성하는 방식을 의미합니다.

 

이렇게 생성된 CloudWatch Agent는 간편하게 설치할 수 있지만 수동 설치와 동일한 기능을 수행할 수 있다는 장점을 가지고 있지만, 수동과 같은 커스터마이징(사용자화) 측면에서는 다소 부족한 면이 있습니다.

(커스터마이징을 하려면 할 수 있긴 합니다..!)

 

때문에 각자 원하는 사항에 따라 선택적으로 설치 방식을 고려하시는 것을 추천드립니다!


1) 사전 준비사항

이전 글(CloudWatch Agent 수동 설치)과 동일하게, 몇 가지 준비사항이 있습니다.

  1) Agent가 설치될 EC2에 CloudWatchAgentServerPolicy가 연결되어 있는 Role이 부착되어 있어야합니다.

  2) CloudWatch Agent가 설치되어 있어야합니다.

 

준비 방법이 생각나지 않는다면..!

 

2) CloudWatch Agent Wizard 실행

이제 CloudWatch Agent Wizard가 제대로 설치되어 있는지 설치 경로로 이동해서 확인해봅시다!

 

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

이전 글에서 config.json을 생성한 경로와 동일합니다.

 

./amazon-cloudwatch-agent-config-wizard

CloudWatch Agent Wizard를 실행합니다.

 

3) Wizard를 통한 config.json 파일 생성

이제 Wizard는 우리에게 CloudWatch Agent 설치에 필요한 질문을 합니다.

 

질문 사항을 하나씩 살펴보도록 합시다!

 

   [1] 어떤 OS에서 설치할 것인지?

   > 리눅스 서버이므로 1번을 선택해 주었습니다.

 

   [2] 해당 서버가 위치하는 곳은?

   > AWS EC2에서 Wizard를 실행하고 있으므로 1번을 선택해 주었습니다.

 

   [3] Agent를 실행할 User는?

   > 모든 권한을 가지고 있는 root로 실행할 것이므로 1번을 선택해 주었습니다.

 

   [4, 5] StatsD Daemon을 실행할 것인지? CollectD를 실행할 것인지?

   > Memory, Disk 정도만 기록할 것이므로 2번을 선택해 주었습니다.

  ** StatsD Daemon, CollectD: 애플리케이션에서 사용자 지정 지표를 쉽게 기록할 수 있도록 도와주는 오픈 소스

 

   [6, 7] Host 메트릭에 대한 모니터링을 진행할 것인지? CPU 메트릭에 대하여 코어당 모니터링을 진행할 것인지?

   > CPU, Memory 지표가 필요하므로 1번을, 코어별 모니터링을 진행할 것이므로 1번을 선택해 주었습니다.

   (코어별 모니터링은 수행하지 않을 걸 그랬습니다..)

 

   [8, 9] EC2 추가 디멘션을 원하는지? EC2 디멘션을 원하는지?

   > EC2에 대한 ID만 있으면 될 것 같아서 2번, 1번을 선택해 주었습니다.

   (CloudWatch 상에 상세한 표기를 원할 경우 EC2 추가 디멘션 선택을 yes로 진행하도록 합시다.)

 

   [10] 지표를 수집할 시기?

   > 짧은 주기를 선택할수록 더 상세한 모니터링이 가능하겠지만, 주기가 짧아질수록 추가 비용이 발생하므로 4번을 선택해 주었습니다.

 

   [11] 메트릭 수준?

   > 측정 항목의 수준에 대하여 선택하는 것이며, 저는 Basic이 필요하므로 1번을 선택해 주었습니다.

   ** Basic: 사용량(used_percent)만 표기

   ** Standard: Basic 지표에 CPU 대기시간(cpu_usage_iowait), 디스크IO 시간(diskio_io_time) 등이 추가로 표기

   ** Advanced: Standard 지표에 Disk 읽기, 쓰기양(diskio_write_bytes, diskio_read_bytes) 등이 추가로 표기

 

   [12] 지금까지 작성된 config 파일 만족도는?

   > 지금까지 질문사항을 토대로 작성한 config.json 항목이 마음에 듦으로 1번을 선택해 주었습니다.

 

   [13] 기존에 사용중이던 CloudWatch Log Agent가 있는지?

   > 처음 설치하는 것이므로 2번을 선택해 주었습니다.

 

   [14] 로그 파일을 남길 것인지?

   > 이번에는 로그를 남기지 않을 것이므로 2번을 선택해 주었습니다.

   (이전글과 동일하게 로그를 남길 것이라면 1번을 선택해주세요!)

 

   [15] SSM Parameter Store 설정 여부?

   > SSM 파라미터는 사용하지 않을 것이므로 2번을 선택해 주었습니다.

 

위와 같이 질문사항에만 대답해주었더니,

이전글에서 고생하면서 적어준 config.json파일이 자동으로 생성된 것을 볼 수 있습니다!

 

amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -c file:config.json -s

앞서 생성한 config.json을 참조하여 CloudWatch Agent를 수행합니다.

 

amazon-cloudwatch-agent-ctl -a status -m ec2

CloudWatch Agent가 정상적으로 수행되는지 확인합니다.

 

4) 생성 확인

이전글에서 생성한 것과 달리 CWAgent라는 새로운 지표가 생성되었고, 메모리 사용률, 디스크 사용률 등에 대한 확인이 가능합니다.


 

지금까지 CloudWatch Agent를 자동으로 설치하는 방법을 읽어주셔서 감사합니다 🙂

반응형

'AWS > AWS_Service' 카테고리의 다른 글

[AWS] CLI를 통해 S3 사용하기  (0) 2020.05.19
[AWS] EIP 사용하기  (0) 2020.04.07
[AWS] CloudWatch Agent 설치하기(수동)  (0) 2020.04.03
[AWS] ELB(Elastic Load Balancer) - ALB  (0) 2020.03.19
[AWS] AMI 등록하고 사용하기  (0) 2020.03.18