참고자료
커리어 성장을 위한 최고의 실무교육 아카데미 | 패스트캠퍼스
성인 교육 서비스 기업, 패스트캠퍼스는 개인과 조직의 실질적인 '업(業)'의 성장을 돕고자 모든 종류의 교육 콘텐츠 서비스를 제공하는 대한민국 No. 1 교육 서비스 회사입니다.
fastcampus.co.kr
CloudWatch 서비스를 사용해서 AWS로 서비스를 운영할 때 각각의 의미있는 지표나 설정 조건에 부합할 때 알림을 받을 수 있다.
EC2에 CloudWatch Agent 설치하기
우선, CloudWatch를 사용하려면 지표를 활용하고자 하는 EC2 인스턴스 내에서 CloudWatch Agent를 설치해야한다.
SSH로 접속 가능한 EC2의 Private IP를 가지고 와서 해당 EC2에 접속해보자.
접속한 다음 CloudWatch Agent를 설치한다.
sudo yum install -y amazon-cloudwatch-agent
설치가 완료되면 최초 경로는 다음과 같다.
/opt/aws/amazon-cloudwatch-agent
다음 경로로 들어가서 위자드 실행 파일을 통해 필요한 설정을 진행한다.
/opt/aws/amazon-cloudwatch-agent/bin
실행 파일:
amazon-cloudwatch-agent-config-wizard
실행
sudo ./amazon-cloudwatch-agent-config-wizard
실행하면 다음 화면처럼 질문이 여러개가 나온다. 그 질문에 대한 선택들을 해주면 된다.
전부 기본 설정으로 진행하는데 이 질문에는 다음과 같이 3번으로 설정한다.
metric config level에 대한 설정인데 이 각 레벨별 지원해주는 것들이 다르다.
아래 링크를 참조해서 각 레벨이 무엇을 지원하는지 알 수 있다.
Create the CloudWatch agent configuration file with the wizard - Amazon CloudWatch
Parameter Store supports parameters in Standard and Advanced tiers. These parameter tiers are not related to the Basic, Standard, and Advanced levels of metric details that are described in these tables.
docs.aws.amazon.com
그 다음 로그 파일을 수집하는 경로를 설정해줘야 한다. 이 로그 파일을 모니터링 하고 싶다는 질문에 "Yes"를 선택하면 아래처럼 Log file path를 내가 직접 적는다. 나는 "/var/log"로 설정했다.
로그 수집 기간에는 2번(하루)를 선택했다.
그 다음 추가적인 로그 파일도 모니터링 할 것이냐는 질문에 "no", CloudWatch가 X-ray 트레이스도 받길 원하냐는 질문에 "no", SSM parameter store에 config를 저장할 것이냐는 질문에 "no"를 하면 끝난다.
이렇게 끝내면 이 위자드를 실행한 경로에 'config.json' 파일이 만들어진다.
그 다음에 아까 위에서 설정하는 값중에 "collectd" 플러그인을 사용할 것이냐는 질문에 "Yes"를 했는데 이 "collectd"를 사용하려면 이녀석을 설치해야 한다. 설치해보자.
sudo yum -y install collectd
다 설치가 됐으면 이제 CloudWatch Agent를 실행해보자.
sudo amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -s file:/opt/aws/amazon-cloudwatch-agent/bin/config.json
실행하면 좀 뭐가 많이 나와서 실행됐다는건지 잘 모를 수 있다. 그래서 실행중인지 확인하기 위해 다음 명령어를 입력하자.
sudo amazon-cloudwatch-agent-ctl -m ec2 -a status
그럼 다음과 같이 status가 running 이라고 나오면 정상적으로 실행됐다는 것.
이제 EC2가 CloudWatch Agent에게 어떤 지표들을 줄 수 있도록 EC2에 IAM 역할을 부여해줘야 한다. 지금은 내 EC2에 다음처럼 아무런 역할이 없다.
IAM > Role > Create role을 클릭해서 다음과 같이 EC2를 선택한다.
"Next"로 넘어간 다음 정책을 검색하는데 "cloudwatchagent"라고 검색하면 다음 두 개가 나온다. 여기서 서버 정책을 선택한 다음 넘어간다.
Role name만 적절하게 입력해주고 생성해준다.
이렇게 IAM Role을 만들었으면 이 역할을 우리가 사용할 EC2에 적용해줘야 한다.
적용하길 원하는 EC2 내부에서 Actions > Security > Modify IAM role 클릭
이렇게 만든 Role을 가지고 적용한다.
이제 지표가 쌓이는지 확인을 하면 된다. CloudWatch > Metrics > All metrics에 들어가서 보면 다음과 같이 보여진다.
여기서 내가 CloudWatch agent를 설치한 Instance ID를 알아내서 검색창에 입력하면 다음과 같이 지표들이 수집되는 것을 확인할 수 있다.
'AWS' 카테고리의 다른 글
NACL과 Security Group (0) | 2024.02.21 |
---|---|
Key Pair 생성하고 EC2에 SSH로 접속해보기 (0) | 2024.02.21 |
Part 17. AWS 서비스를 운영하면서 필요한 것들 (백업) (0) | 2024.01.28 |
Part 16. AWS 서비스를 운영하면서 필요한 것들 (로깅) (0) | 2024.01.26 |
Part 15. Code Series를 사용해서 CI/CD 자동화 (0) | 2024.01.21 |