설계 원칙 - AWS Well-Architected Framework

설계 원칙

클라우드에서 운영 우수성을 달성하기 위한 설계 원칙은 다음과 같습니다.

  • 코드를 통한 운영: 애플리케이션 코드에 사용되었던 동일한 엔지니어링 원칙을 클라우드의 전체 환경에 적용할 수 있습니다. 그러면 전체 워크로드(애플리케이션, 인프라 등)를 코드로 정의하고 코드로 업데이트할 수 있습니다. 운영 절차를 스크립팅하고 이벤트에 대한 대응으로 이 운영 절차를 실행하여 프로세스를 자동화할 수 있습니다. 코드로 운영을 수행하면 인적 오류가 제한되고 이벤트에 일관된 대응이 가능합니다.

  • 되돌릴 수 있도록 변경 사항을 조금씩 자주 적용: 구성 요소를 정기적으로 업데이트할 수 있도록 확장 가능하고 느슨하게 결합된 워크로드를 설계합니다. 자동화된 배포 기법과 소규모의 점진적인 변경을 함께 사용하면 영향 반경을 줄이고 장애 발생 시 더 빠르게 되돌릴 수 있습니다. 이를 통해 품질을 유지하고 시장 상황의 변화에 신속하게 적응하면서 워크로드에 유익한 변화를 가져올 수 있다는 자신감이 높아집니다.

  • 운영 절차를 자주 개선: 워크로드가 변경됨에 따라 운영도 적절하게 변화시킵니다. 운영 절차를 사용할 때 개선할 여지가 있는지 확인합니다. 정기적으로 검토하여 모든 절차가 효과적이며 팀이 이러한 절차에 익숙한지 확인하고 검증합니다. 격차가 확인되면 그에 따라 절차를 업데이트합니다. 절차 업데이트를 모든 이해관계자와 팀에 전달합니다. 운영을 게임화하여 모범 사례를 공유하고 팀을 교육합니다.

  • 실패 예측: '사전 분석(pre-mortem)' 연습을 수행하여 잠재적인 실패의 원인을 찾아내 이를 없애거나 완화할 수 있도록 합니다. 실패 시나리오를 테스트하고 그에 따른 영향을 이해했는지 확인합니다. 대응 절차를 테스트하여 효과가 있는지, 팀이 이 프로세스에 친숙한지 확인합니다. 정기 게임 데이를 준비하여 시뮬레이션된 이벤트에 대한 팀의 응답 및 워크로드를 테스트합니다.

  • 각종 운영 실패에서 학습: 모든 운영 이벤트 및 실패로부터 파악한 내용을 바탕으로 개선합니다. 팀 전반과 조직 전체에 파악한 내용을 공유합니다.

  • 관리형 서비스 사용: 가능한 경우 AWS 관리형 서비스를 사용하여 운영 부담을 줄입니다. 해당 서비스와의 상호 작용을 중심으로 운영 절차를 구축합니다.

  • 실행 가능한 인사이트를 위한 관찰성 구현: 워크로드 동작, 성능, 신뢰성, 비용 및 상태를 포괄적으로 이해합니다. 핵심 성과 지표(KPI)를 설정하고 관찰성 텔레메트리를 활용하여 정보에 입각한 결정을 내리고 비즈니스 성과가 위험에 처했을 때 즉각적인 조치를 취합니다. 실행 가능한 관찰성 데이터를 기반으로 성능, 신뢰성, 비용을 사전에 개선합니다.