AWS CLF — AWS Well-Architected Framework


Well-Architected Framework란

  • AWS가 수많은 고객과 일하며 얻은 경험과 데이터를 바탕으로, “어떻게 하면 클라우드 아키텍처를 가장 이상적으로 만들 수 있는가?”에 대한 모범 사례(Best Practices)와 설계 원칙을 모아놓은 가이드라인
  • 이 프레임워크를 따르면, 여러분의 클라우드 시스템을 더 안전하고, 안정적이며, 빠르고, 저렴하게 만들 수 있음
  • 프로덕션 규모의 테스트 시스템
  • 워크로드 동작 및 요구 사항에 대해 수집된 데이터를 기반으로 아키텍처 설계를 구동함

핵심 구조 - 6가지

1. 운영 우수성 (Operational Excellence)

  • 시스템을 효과적으로 실행 및 모니터링하고, 지속적으로 개선하는 능력
  • 주요 개념 및 설계 원칙
  • 코드로 작업 수행: 모든 운영 절차를 코드로 만들어 자동화합니다. (예: 인프라 변경, 배포)
  • 작은 단위로 자주 변경: 변경 사항을 작게 나누어 자주 배포함으로써 리스크를 줄입니다.
  • 운영 절차 개선: 장애 발생 시 원인을 분석하고, 같은 실수가 반복되지 않도록 절차를 개선합니다.
  • 관련 AWS 서비스: CloudFormation, Systems Manager, CloudWatch, CloudTrail

2. 보안 (Security)

  • 정보, 시스템, 자산을 보호하고 비즈니스 가치를 높이는 능력
  • 주요 개념 및 설계 원칙
  • 강력한 자격 증명 기반 구현: 최소 권한 원칙에 따라 IAM을 사용하여 접근을 엄격하게 제어합니다.
  • 추적 기능 활성화: 모든 활동을 기록하고 모니터링하여 의심스러운 활동을 감지합니다. (예: 누가 로그인했나?)
  • 모든 계층에 보안 적용: 네트워크, 서버, 데이터베이스 등 모든 계층에 보안을 적용합니다.
  • 전송 중 및 저장된 데이터 보호: 모든 데이터를 암호화하여 보호합니다.
  • 관련 AWS 서비스: IAM, KMS, WAF, GuardDuty, CloudTrail

3. 안정성, 신뢰성 (Reliability)

  • 장애로부터 인프라 또는 서비스를 복구하고, 수요 변화에 맞춰 컴퓨팅 리소스를 동적으로 확보하는 능력
  • 주요 개념 및 설계 원칙
  • 복구 절차 테스트: 정기적으로 장애 복구 훈련(Game Day)을 하여 실제 장애 상황에 대비합니다.
  • 장애로부터 자동 복구: 장애 발생 시 사람의 개입 없이 시스템이 스스로 복구되도록 자동화합니다.
  • 수평 확장으로 시스템 가용성 증대: 하나의 큰 서버 대신 여러 개의 작은 서버를 사용하여 단일 장애 지점을 없앱니다.
  • 관련 AWS 서비스: Auto Scaling, Elastic Load Balancing(ELB), Route 53, Multi-AZ

4. 성능 효율성 (Performance Efficiency)

  • 컴퓨팅 리소스를 효율적으로 사용하고 수요 변화에 맞춰 성능을 유지하는 능력
  • 주요 개념 및 설계 원칙
  • 서버리스 아키텍처 사용: 서버 관리가 필요 없는 서버리스 서비스를 적극 활용합니다. (예: Lambda)
  • 적합한 리소스 선택: 워크로드의 특성에 맞는 최적의 인스턴스 유형, 스토리지 종류를 선택합니다.
  • 글로벌 서비스 고려: 전 세계 사용자를 위해 콘텐츠를 사용자와 가까운 곳에 배치하여 지연 시간을 줄입니다.
  • 관련 AWS 서비스: Lambda, EC2 Auto Scaling, EBS, S3, CloudFront

5. 비용 최적화 (Cost Optimization)

  • 불필요한 비용을 제거하여 가장 낮은 가격으로 비즈니스 가치를 실현하는 능력
  • 주요 개념 및 설계 원칙
  • 사용한 만큼만 지불: 필요할 때만 리소스를 사용하고, 필요 없으면 즉시 종료하여 비용을 절감합니다.
  • 비용-효과적인 리소스 선택: 가장 저렴한 가격 옵션을 선택합니다. (예: 스팟 인스턴스, Savings Plans)
  • 지출 분석 및 귀속: 어떤 서비스, 어떤 팀이 비용을 얼마나 쓰는지 지속적으로 측정하고 분석합니다.
  • 관련 AWS 서비스: Cost Explorer, AWS Budgets, Savings Plans, Spot Instances

6. 지속 가능성 (Sustainability)

  • 클라우드 워크로드를 실행하는 데 필요한 에너지 및 리소스를 최소화하여 환경에 미치는 영향을 줄이는 능력
  • 주요 개념 및 설계 원칙
  • 영향 이해: 현재 클라우드 사용량이 환경에 미치는 영향을 측정하고 모델링합니다.
  • 관리형 서비스 활용: AWS가 직접 운영하는 관리형 서비스(예: RDS, Lambda)는 높은 하드웨어 활용률로 운영되므로 더 지속 가능합니다.
  • 사용률 극대화 및 효율적인 리소스 선택: 필요한 만큼만 리소스를 사용하고, 최신 세대의 효율적인 인스턴스를 사용합니다.
  • 관련 AWS 서비스: EC2 Auto Scaling, Graviton 인스턴스, Lambda, Cost and Usage Report (CUR)

관련 도구: AWS Well-Architected Tool

  • AWS 관리 콘솔에 있는 무료 도구
  • 이 프레임워크의 6개 기둥에 기반한 질문들을 통해, 현재 여러분의 아키텍처가 얼마나 모범 사례를 잘 따르고 있는지 스스로 진단하고 개선점을 찾을 수 있도록 도와줌