Amazon CloudWatch Database Insights로 데이터베이스 모니터링
소개
Amazon CloudWatch Database Insights는 Amazon RDS 및 Aurora 데이터베이스를 위한 통합 모니터링 솔루션입니다. 데이터베이스 메트릭, 쿼리 분석, 로그, 이벤트, 애플리케이션 텔레메트리를 CloudWatch 콘솔 내 단일 경험으로 통합하여 데이터베이스 계층에서 무슨 일이 일어나고 있는지 이해하기 위해 여러 도구를 전환할 필요를 없앱니다.
이 문서에서는 Database Insights가 제공하는 기능, 두 가지 운영 모드 중에서 선택하는 방법, 데이터베이스를 효과적으로 모니터링하기 위한 실용적인 가이드, 도입 전에 알아야 할 제한 사항을 다룹니다.
Database Insights란?
Database Insights는 Amazon RDS Performance Insights를 기반으로 하며, 플릿 전체 모니터링, 로그 상관관계 분석, 잠금 분석, 실행 계획 캡처, 애플리케이션 수준 통합 기능을 추가로 제공합니다. 곧 수명이 종료되는 독립형 Performance Insights 콘솔 경험의 후속 서비스입니다.
핵심 개념은 DB Load입니다. 이는 특정 시점에 데이터베이스에서 활성 상태인 세션의 평균 수를 의미합니다. DB Load가 인스턴스의 vCPU 수를 초과하면 데이터베이스에 과부하가 걸린 상태입니다. Database Insights는 이 메트릭을 시각화하고, 여러 차원(SQL, 대기 이벤트, 사용자, 호스트, 애플리케이션)으로 분할하여 성능 문제의 근본 원인을 빠르게 식별할 수 있도록 합니다.
Standard 모드 vs. Advanced 모드
Database Insights는 두 가지 티어로 운영됩니다. Standard 모드는 추가 비용 없이 기본적으로 활성화됩니다. Advanced 모드는 15개월 보존 기간으로 Performance Insights를 활성화해야 하며, vCPU 시간(프로비저닝) 또는 ACU 시간(서버리스/리미트리스) 기준으로 요금이 부과됩니다.
| 기능 | Standard | Advanced |
|---|---|---|
| 차원별 상위 DB Load 기여 요인 분석 | ✔ | ✔ |
| 메트릭 쿼리, 그래프, 알람 (7일 보존) | ✔ | ✔ |
| 민감한 차원에 대한 세분화된 IAM 접근 제어 | ✔ | ✔ |
| 플릿 전체 모니터링 뷰 | ✘ | ✔ |
| OS 프로세스 분석 (Enhanced Monitoring) | ✘ | ✔ |
| SQL 잠금 분석 (15개월 보존) | ✘ | ✔ (Aurora PG) |
| SQL 실행 계획 분석 (15개월 보존) | ✘ | ✔ (Aurora PG, Oracle, SQL Server) |
| 쿼리별 통계 시각화 | ✘ | ✔ |
| 느린 SQL 쿼리 분석 | ✘ | ✔ |
| Application Signals 통합 (호출 서비스) | ✘ | ✔ |
| 통합 텔레메트리 대시보드 (메트릭, 로그, 이벤트) | ✘ | ✔ |
| Performance Insights 카운터 메트릭 자동 가져오기 | ✘ | ✔ |
| CloudWatch 내 RDS 이벤트 | ✘ | ✔ |
| 온디맨드 성능 분석 보고서 | ✘ | ✔ |
| 교차 계정 교차 리전 모니터링 | ✘ | ✔ |
데이터 보존:
- Standard: Performance Insights 데이터 7일 보존.
- Advanced: Database Insights가 수집하는 모든 메트릭 15개월 보존.
주요 기능 설명
Fleet Health 대시보드
Fleet Health Dashboard는 모든 RDS 및 Aurora 인스턴스를 교차 계정, 교차 리전으로 하나의 화면에서 조감도처럼 보여줍니다. 허니콤(벌집) 시각화가 vCPU 용량 대비 DB Load를 기준으로 인스턴스를 상태별(High, Warning, Ok, Idle)로 분류합니다. 태그(환경, 서비스, 팀)로 필터링하고 사용자 정의 플릿 뷰를 저장할 수 있습니다. 상위 10개 차트에서 가장 부하가 높은 인스턴스, 해당 상위 쿼리, 상위 대기 이벤트를 한눈에 확인할 수 있습니다.
수백 개의 데이터베이스를 담당하면서 어떤 데이터베이스에 주의가 필요한지 빠르게 식별해야 할 때, 바로 여기서 시작하면 됩니다.