원문: AWS Cloud Practitioner Essentials — Module 7: Monitoring and Analytics
출처: AWS E-Learning / Compiled by Kenneth Leung (2020)

한 줄 요약: CloudWatch로 리소스 상태를 실시간 감시하고, CloudTrail로 누가 무엇을 했는지 감사하며, Trusted Advisor로 비용·성능·보안을 한눈에 점검한다.


왜 모니터링이 필요한가

클라우드의 핵심은 탄력성이다. EC2 인스턴스가 자동으로 늘어나고 줄어들고, 서비스가 동적으로 변화한다. 이런 환경에서 시스템 상태를 지속적으로 관찰하지 않으면, 과부하가 걸렸는지, 에러가 쏟아지고 있는지, 불필요한 리소스가 돌아가고 있는지 알 수 없다.

모니터링은 시스템을 관찰하고, 지표를 수집하고, 그 지표를 기반으로 의사결정이나 자동 대응을 하는 것이다. AWS는 이를 위해 세 가지 핵심 서비스를 제공한다.


지금 내 시스템은 괜찮은가? — Amazon CloudWatch

Amazon CloudWatch는 AWS 리소스의 지표(metrics)를 모니터링하고, 그 지표에 기반하여 경보(alarm)를 설정하고 자동 조치를 실행할 수 있는 서비스다. AWS 서비스들이 자동으로 CloudWatch에 지표를 전송하고, CloudWatch는 시간에 따른 성능 변화를 그래프로 보여준다.

CloudWatch 경보 — 임계값을 넘으면 자동 대응

CloudWatch 경보(alarm)는 특정 지표가 사전에 정의한 임계값을 넘거나 밑돌 때 자동으로 조치를 수행한다. 예를 들어, 개발용 EC2 인스턴스의 CPU 사용률이 일정 기간 동안 특정 수치 이하로 유지되면 자동으로 인스턴스를 중지시켜 불필요한 비용을 막을 수 있다. 경보는 SNS(Simple Notification Service)와 연동하여 알림을 보낼 수도 있다.

CloudWatch 대시보드 — 한 화면에 모든 지표를

CloudWatch 대시보드는 여러 리소스의 지표를 한 곳에서 확인할 수 있는 단일 화면이다. EC2의 CPU 사용률, S3 버킷의 요청 수, RDS의 I/O 등을 한눈에 볼 수 있다. 업무 목적이나 애플리케이션별로 별도의 대시보드를 만들 수도 있다.

대시보드의 실질적 효과는 두 가지다.

효과 설명
MTTR 단축 평균 복구 시간(Mean Time to Resolution)을 줄여 장애에 빠르게 대응
TCO 절감 총 소유 비용(Total Cost of Ownership)을 줄여 운영 효율 향상

누가 뭘 했는지 다 기록된다 — AWS CloudTrail

AWS CloudTrail은 계정에서 발생하는 모든 API 호출을 기록하는 감사(audit) 도구다. 누가, 언제, 어디서(IP 주소), 어떤 방법으로 API를 호출했는지를 빠짐없이 남긴다. 누군가 남긴 “발자국(trail)”이라고 생각하면 된다.

기록 항목 예시
What (무엇이 일어났나) 새 IAM 사용자 Mary가 생성됨
Who (누가 요청했나) IAM 사용자 John
When (언제) 2020년 1월 1일 오전 9:00
How (어떤 방법으로) AWS Management Console

이벤트는 API 호출 후 보통 15분 이내에 CloudTrail에 기록된다. 로그는 S3 버킷에 무기한 보관할 수 있으며, Vault Lock 같은 변조 방지 기능으로 보안 감사 로그의 무결성을 보장할 수 있다.

CloudTrail Insights — 이상 징후 자동 탐지

CloudTrail Insights는 선택적(optional) 기능으로, 활성화하면 계정 내의 비정상적인 API 활동을 자동으로 감지한다. 예를 들어, 평소보다 훨씬 많은 EC2 인스턴스가 갑자기 생성되면 이를 알려준다.


전문가의 조언을 자동으로 — AWS Trusted Advisor

AWS Trusted Advisor는 AWS 환경을 자동으로 점검하고, AWS 모범 사례에 따라 실시간 권장 사항을 제공하는 서비스다. 마치 AWS를 잘 아는 컨설턴트가 옆에서 계속 점검해주는 것과 같다.

Trusted Advisor는 다섯 가지 범주로 점검한다.

범주 점검 예시
비용 최적화 (Cost Optimization) 사용률이 낮은 EC2 인스턴스, 백업되지 않은 EBS 볼륨
성능 (Performance) 리소스의 과부하 여부
보안 (Security) 루트 사용자 MFA 미활성화, S3 버킷 공개 접근 여부
내결함성 (Fault Tolerance) 단일 AZ 배포 등 장애 취약점
서비스 한도 (Service Limits) 서비스별 사용량이 한도에 근접했는지

대시보드 신호등

Trusted Advisor 대시보드에서 각 범주의 점검 결과는 세 가지 색으로 표시된다.

색상 의미
녹색 체크 문제 없음
주황색 삼각형 조사 권장
빨간색 원 조치 필요

일부 점검은 모든 AWS 계정에 무료로 제공되고, 전체 점검은 Business 이상의 Support 플랜에서 사용할 수 있다. 이메일 알림을 설정하면 결제, 운영, 보안 담당자에게 점검 결과를 자동으로 발송할 수 있다.


마무리

세 가지 서비스의 역할을 한 문장으로 정리하면 이렇다. CloudWatch는 “지금 어떤 상태인가”를 알려주고, CloudTrail은 “누가 무엇을 했는가”를 기록하며, Trusted Advisor는 “더 잘할 수 있는 부분은 없는가”를 알려준다. 문제를 빨리 발견하는 것이 곧 비용을 줄이고 보안을 높이는 가장 확실한 방법이다.