| name | aws-wa-operational-excellence |
| description | AWS Well-Architected Operational Excellence Pillar review. Checks monitoring, logging, deployment automation, and continuous improvement practices in IaC code. |
Operational Excellence Pillar
운영 효율성, 모니터링, 지속적 개선 관점에서 IaC 코드를 검토합니다.
핵심 원칙
- 운영을 코드로 수행: IaC, 자동화된 배포
- 작고 가역적인 변경: 점진적 배포, 롤백 가능
- 운영 절차 개선: 런북, 플레이북
- 장애 예측: 모니터링, 알람
- 모든 장애로부터 학습: 로깅, 분석
검토 항목
OPS-01: CloudWatch 로그 그룹
검토 내용: 모든 리소스에 CloudWatch 로그 그룹이 설정되어 있는지 확인
Terraform 패턴:
# 취약 - 로그 그룹 없음
resource "aws_lambda_function" "example" {
function_name = "my-function"
# CloudWatch 로그 설정 없음
}
# 안전 - 로그 그룹 설정
resource "aws_cloudwatch_log_group" "lambda" {
name = "/aws/lambda/my-function"
retention_in_days = 14
}
OPS-02: CloudWatch 알람
검토 내용: 주요 메트릭에 대한 알람이 설정되어 있는지 확인
Terraform 패턴:
# 안전 - 알람 설정
resource "aws_cloudwatch_metric_alarm" "high_cpu" {
alarm_name = "high-cpu-utilization"
comparison_operator = "GreaterThanThreshold"
evaluation_periods = "2"
metric_name = "CPUUtilization"
namespace = "AWS/EC2"
period = "300"
statistic = "Average"
threshold = "80"
alarm_actions = [aws_sns_topic.alerts.arn]
}
OPS-03: X-Ray 트레이싱
검토 내용: 분산 트레이싱이 활성화되어 있는지 확인
Terraform 패턴:
# 취약 - 트레이싱 비활성화
resource "aws_lambda_function" "example" {
tracing_config {
mode = "PassThrough"
}
}
# 안전 - 트레이싱 활성화
resource "aws_lambda_function" "example" {
tracing_config {
mode = "Active"
}
}
OPS-04: 태그 지정
검토 내용: 리소스에 적절한 태그가 지정되어 있는지 확인
필수 태그:
Environment: dev/staging/prod
Project: 프로젝트 이름
Owner: 담당자/팀
CostCenter: 비용 센터
OPS-05: 런북/플레이북
검토 내용: 운영 문서가 존재하는지 확인
수동 확인 항목:
IaC 플랫폼별 패턴
상세 패턴은 다음 참조:
점수 산정
| 항목 | 가중치 |
|---|
| CloudWatch 로그 | 25% |
| CloudWatch 알람 | 25% |
| X-Ray 트레이싱 | 20% |
| 태그 지정 | 15% |
| 런북/플레이북 | 15% |