CloudWatch를 통해 AWS에서 이용하는 각종 서비스들을 모니터링 할 수 있다.
EC2 인스턴스 클릭 > 모니터링 클릭하면 아래와 같이 볼 수 있다.
이것 또한 CloudWatch 통해 보여지는 것
CloudWatch 대시보드 생성 > 행 > 지표 > EC2 > 인스턴스별 지표 > 메모리, 디스크, CPU 중요? > CPUUtilization 추가, 메모리에 대한 기본 제공 지표가 없음(왜인지는 모름) 대신, 수동으로 생성가능..
실습) 암튼.. CPU 지표로 대시보드 생성하고, 해당 인스턴스에 접속하여 Stress를 주면, CPU 대시보드가 어떻게 출력되는지 확인해보자!
putty로 EC2 인스턴스 퍼블릭 IP 입력, 키 입력 후 접속 > 'apt update' > 'apt install stress' > 'stress -c 1'로 cpu에 스트레스 주기 > 대시보드 확인
스트레스 주는 중...
CloudWatch에서 대시보드 확인
추가적으로 매트릭을 설치하고 싶다!
메모리 지표를 추가할 것이다.
웹 브라우저에 'aws cloudwatch memory metric' 검색 > aws 공식 홈 접속 후 따라하기
(1번) IAM 역할 생성 > AWS 서비스, EC2 > 정책: CloudWatchAgentServer Policy
EC2 인스턴스 > 작업 > 보안 > IAM 역할 수정 > 위에서 추가한 역할로 수정 후 > 역할 업데이트
(2번) 링크 접속하고, wget으로 ubuntu 운영체제인 것 설치 > dpkg -i [다운로드 받은 파일이름]
(3번)
수동 선택
vi /opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.json로 새로운 파일 생성하고,
안에 json형식 내용(홈페이지에 3번 밑에 나와있는 내용) 입력하고 저장
{ "metrics": { "metrics_collected": { "mem": { "measurement": [ "mem_used_percent" ] }, "disk": { "measurement": [ "used_percent" ], "resources": [ "*" ] } }, "append_dimensions": { "InstanceId": "${aws:InstanceId}" } } }
/opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -s -c file:[설정파일 경로 = /opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.json] 입력
아래의 명령어로 상태확인
systemctl status amazon-cloudwatch-agent
CloudWatch에 메모리 지표 추가 > 'stress --vm 1 --vm-bytes 900m'로 스트레스 주기 > 대시보드 확인
알림 생성은 CloudWatch > 경보에서 설정한다.
'클라우드 > AWS' 카테고리의 다른 글
리눅스, kafka 클러스터 구성하기 (0) | 2023.03.21 |
---|---|
리눅스, zookeeper 클러스터 구성하기 (0) | 2023.03.21 |
비교) EC2 웹 서버 방식 vs S3 웹 서버 방식(서버리스) 어느 것이 더 좋을까? (0) | 2023.03.15 |
AWS) S3를 통한 react build 배포 (0) | 2023.03.15 |
AWS) 장고에서 S3에 이미지 업로드하고 읽기 (0) | 2023.03.15 |