

# PERF 5. 조직의 관행과 문화가 워크로드의 성과 효율성에 어떻게 기여하나요?


 워크로드를 설계할 때는 효율적인 고성능 클라우드 워크로드를 더 잘 실행하는 데 도움이 되도록 채택할 수 있는 원칙과 관행이 있습니다. 클라우드 워크로드의 성능 효율성을 촉진하는 문화를 채택하려면 다음과 같은 주요 원칙과 관행을 고려합니다.

**Topics**
+ [

# PERF05-BP01 워크로드 상태 및 성능을 측정하기 위한 핵심 성과 지표(KPI) 수립
](perf_process_culture_establish_key_performance_indicators.md)
+ [

# PERF05-BP02 모니터링 솔루션을 사용하여 성능이 가장 중요한 영역 파악
](perf_process_culture_use_monitoring_solutions.md)
+ [

# PERF05-BP03 워크로드 성능 개선을 위한 프로세스 정의
](perf_process_culture_workload_performance.md)
+ [

# PERF05-BP04 워크로드 로드 테스트
](perf_process_culture_load_test.md)
+ [

# PERF05-BP05 자동화를 사용하여 성능 관련 문제 사전 해결
](perf_process_culture_automation_remediate_issues.md)
+ [

# PERF05-BP06 워크로드 및 서비스 최신 상태 유지
](perf_process_culture_keep_workload_and_services_up_to_date.md)
+ [

# PERF05-BP07 정기적으로 지표 검토
](perf_process_culture_review_metrics.md)

# PERF05-BP01 워크로드 상태 및 성능을 측정하기 위한 핵심 성과 지표(KPI) 수립
PERF05-BP01 워크로드 상태 및 성능을 측정하기 위한 핵심 성과 지표(KPI) 수립

 워크로드 성능을 양적 및 질적으로 측정하는 KPI를 식별합니다. KPI는 비즈니스 목표와 관련된 워크로드의 상태와 성과를 측정하는 데 도움이 됩니다.

 **일반적인 안티 패턴**: 
+  시스템 수준 지표만 모니터링하여 워크로드에 대한 인사이트를 얻고, 해당 지표에 대한 비즈니스 영향을 이해하지 못합니다.
+  KPI가 이미 표준 지표 데이터로 게시 및 공유되고 있다고 가정합니다.
+  정량적이고 측정 가능한 KPI를 정의하지 않습니다.
+  KPI를 비즈니스 목표나 전략에 맞추지 않습니다.

 **이 모범 사례 확립의 이점:** 워크로드 상태 및 성능을 나타내는 특정 KPI를 식별하면 팀의 우선순위를 조정하고 성공적인 비즈니스 결과를 정의하는 데 도움이 됩니다. 이러한 지표를 모든 부서와 공유하면 임곗값, 기대치 및 비즈니스에 미치는 영향을 파악하고, 이에 따른 조정이 가능해집니다.

 **이 모범 사례가 확립되지 않을 경우 노출되는 위험 수준:** 높음 

## 구현 지침
구현 지침

 KPI를 통해 비즈니스 및 엔지니어링 팀은 목표 측정과 전략 그리고 이러한 요인을 조합하여 비즈니스 성과를 도출하는 방법에 대해 협의할 수 있습니다. 예를 들어, 웹 사이트 워크로드에는 전체 성능을 나타내는 지표로 페이지 로드 시간을 사용할 수 있습니다. 이 지표는 사용자 경험을 측정하는 여러 데이터 포인트 중 하나입니다. 페이지 로드 시간 임곗값을 파악하는 것 말고도 이상적인 성능이 충족되지 않을 경우 예상되는 결과나 비즈니스 위험도 문서화해야 합니다. 페이지 로드 시간이 길면 최종 사용자에게 직접적인 영향을 주고, 사용자 경험 수준이 떨어져 고객이 이탈하는 결과가 발생할 수 있습니다. KPI 임곗값을 정의할 때는 업계 벤치마크와 최종 사용자 기대치를 모두 고려해야 합니다. 가령 현재 업계 벤치마크에 따르면 웹 페이지를 2초 안에 로드하면 되지만 최종 사용자는 웹 페이지가 1초 안에 로드될 것으로 기대한다면, 이러한 데이터 포인트를 모두 고려해서 KPI를 설정해야 합니다.

 팀은 참조용으로 실시간 세분화된 데이터와 기록 데이터를 사용하여 워크로드 KPI를 평가하고, KPI 데이터에 대한 지표 산술을 수행하여 운영 및 사용률 인사이트를 도출하는 대시보드를 만들어야 합니다. KPI는 문서화되어야 하며 비즈니스 목표와 전략을 지원하는 임곗값을 포함해야 하고 모니터링 중인 지표에 매핑되어야 합니다. 비즈니스 목표, 전략 또는 최종 사용자 요구 사항이 변경되면 KPI를 다시 검토해야 합니다.   

## 구현 단계
구현 단계
+ **이해관계자 식별:** 개발 및 운영 팀을 비롯한 주요 비즈니스 이해관계자를 식별하고 문서화합니다.
+ **목표 정의**: 이러한 이해관계자들과 협력하여 워크로드의 목표를 정의하고 문서화합니다. 처리량, 응답 시간, 비용 등 워크로드 성능의 중요한 측면과 사용자 만족도와 같은 비즈니스 목표를 고려합니다.
+ **업계 모범 사례 검토:** 업계 모범 사례를 검토하여 워크로드 목표에 부합하는 관련 KPI를 파악합니다.
+  **지표 식별:** 워크로드 목표에 부합하며 성능 및 비즈니스 목표를 측정하는 데 도움이 될 수 있는 지표를 식별합니다. 이러한 지표를 기반으로 KPI를 설정합니다. 지표의 예로는 평균 응답 시간이나 동시 사용자 수와 같은 측정값이 있습니다.
+ **KPI 정의 및 문서화:** 업계 모범 사례와 워크로드 목표를 사용하여 워크로드 KPI의 목표를 설정합니다. 이 정보를 사용하여 심각도 또는 경보 수준에 대한 KPI 임곗값을 설정합니다. KPI가 충족되지 않을 경우의 위험과 영향을 식별하고 문서화합니다.
+ **모니터링 구현:** [Amazon CloudWatch](https://aws.amazon.com/cloudwatch/) 또는 [AWS Config](https://aws.amazon.com/config/)와 같은 모니터링 도구를 사용하여 지표를 수집하고 KPI를 측정합니다.
+ **KPI 시각적 전달:** KPI를 시각화하고 이해관계자에게 전달하기 위한 [Amazon Quick](https://aws.amazon.com/pm/quicksight/)과 같은 대시보드 도구를 사용합니다.
+ **분석 및 최적화:** 정기적으로 KPI를 검토하고 분석하여 개선이 필요한 워크로드 영역을 파악합니다. 이해관계자와 협력하여 이러한 개선 사항을 구현합니다.
+ **보관 및 개선:** 지표와 KPI를 정기적으로 검토하여 효과를 평가합니다. 이는 특히 비즈니스 목표나 워크로드 성능이 변경되는 경우에는 더욱 중요합니다.

## 리소스
리소스

 **관련 문서:** 
+  [CloudWatch 설명서](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) 
+  [모니터링, 로깅 및 성능 AWS Partner](https://aws.amazon.com/devops/partner-solutions/#_Monitoring.2C_Logging.2C_and_Performance) 
+ [AWS observability tools ](https://docs.aws.amazon.com/wellarchitected/latest/management-and-governance-guide/aws-observability-tools.html)
+ [ The Importance of Key Performance Indicators (KPIs) for Large-Scale Cloud Migrations ](https://aws.amazon.com/blogs/mt/the-importance-of-key-performance-indicators-kpis-for-large-scale-cloud-migrations/)
+ [ How to track your cost optimization KPIs with the KPI Dashboard ](https://aws.amazon.com/blogs/aws-cloud-financial-management/how-to-track-your-cost-optimization-kpis-with-the-kpi-dashboard/)
+  [X-Ray 설명서](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) 
+  [Amazon CloudWatch 대시보드 사용](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html?ref=wellarchitected) 
+  [Quick KPI](https://docs.aws.amazon.com/quicksight/latest/user/kpi.html) 

 **관련 비디오:** 
+ [AWS re:Invent 2023 - Optimize cost and performance and track progress toward mitigation ](https://www.youtube.com/watch?v=keAfy8f84E0)
+ [AWS re:Invent 2023 - Manage resource lifecycle events at scale with AWS Health](https://www.youtube.com/watch?v=VoLLNL5j9NA)
+ [AWS re:Invent 2023 - Performance & efficiency at Pinterest: Optimizing the latest instances ](https://www.youtube.com/watch?v=QSudpowE_Hs)
+ [AWS re:Invent 2022 - AWS optimization: Actionable steps for immediate results ](https://www.youtube.com/watch?v=0ifvNf2Tx3w)
+ [AWS re:Invent 2023 - Building an effective observability strategy ](https://www.youtube.com/watch?v=7PQv9eYCJW8)
+ [AWS Summit SF 2022 - Full-stack observability and application monitoring with AWS](https://www.youtube.com/watch?v=or7uFFyHIX0)
+ [AWS re:Invent 2023 - Scaling on AWS for the first 10 million users ](https://www.youtube.com/watch?v=JzuNJ8OUht0)
+ [AWS re:Invent 2022 - How Amazon uses better metrics for improved website performance ](https://www.youtube.com/watch?v=_uaaCiyJCFA)
+ [ Creating an Effective Metrics Strategy for Your Business \$1 AWS Events ](https://www.youtube.com/watch?v=zBO-K4RvbtM)

 **관련 예제:** 
+  [Quick으로 대시보드 생성](https://github.com/aws-samples/amazon-quicksight-sdk-proserve) 

# PERF05-BP02 모니터링 솔루션을 사용하여 성능이 가장 중요한 영역 파악
PERF05-BP02 모니터링 솔루션을 사용하여 성능이 가장 중요한 영역 파악

 워크로드 성능을 개선하여 효율성을 높이고 고객 환경을 개선할 수 있는 영역을 파악합니다. 예를 들어, 많은 양의 고객 상호 작용이 수행되는 웹 사이트에서는 엣지 서비스를 사용하여 콘텐츠 전송 위치를 고객과 더 가까운 곳으로 이동하는 방법으로 성능을 개선할 수 있습니다.

 **일반적인 안티 패턴**: 
+  CPU 사용률 또는 메모리 압력과 같은 표준 컴퓨팅 지표로 성능 문제를 파악하기에 충분하다고 가정합니다.
+  선택한 모니터링 소프트웨어에서 기록한 기본 지표만 사용합니다.
+  문제가 발생한 경우에만 지표를 검토합니다.

 **이 모범 사례 확립의 이점:** 성능의 중요 영역을 이해함으로써 워크로드 소유자가 KPI를 모니터링하고 큰 영향을 미치는 개선에 우선순위를 지정할 수 있습니다.

 **이 모범 사례가 확립되지 않을 경우 노출되는 위험 수준:** 높음 

## 구현 지침
구현 지침

 트래픽 패턴, 지연 시간 및 중요한 성능 영역을 파악할 수 있는 엔드 투 엔드 추적을 설정합니다. 데이터 액세스 패턴을 모니터링하여 쿼리 속도가 느리거나 데이터 조각이 잘못되거나 잘못 분할된 데이터를 찾습니다. 로드 테스트 또는 모니터링을 사용하여 워크로드의 제한된 영역을 파악합니다.

 아키텍처, 트래픽 패턴 및 데이터 액세스 패턴을 이해하여 성능 효율성이 향상되고 지연 시간 및 처리 시간을 파악합니다. 워크로드가 증가하면서 고객 환경에 영향을 미칠 수 있는 잠재적 병목 현상을 파악합니다. 이러한 영역을 조사한 후에는 이러한 성능 문제를 해결하기 위해 어떤 솔루션을 배포할 수 있는지 살펴보세요.

### 구현 단계
구현 단계
+  엔드 투 엔드 모니터링을 설정하여 모든 워크로드 구성 요소 및 지표를 캡처합니다. 다음은 AWS에 대한 모니터링 솔루션의 예입니다.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/wellarchitected/latest/framework/perf_process_culture_use_monitoring_solutions.html)
+  지표를 생성하고 트래픽 패턴, 병목 현상 및 중요한 성능 영역을 파악하기 위한 테스트를 수행합니다. 다음은 테스트를 수행하는 방법에 대한 몇 가지 예입니다.
  +  시간이 지남에 따라 일관된 지표를 생성하기 위해 Linux 크론 작업 또는 rate 표현식을 사용하여 프로그래밍 방식으로 브라우저 기반 사용자 활동을 모방하도록 [CloudWatch Synthetic Canary](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html)를 설정합니다.
  +  [AWS 분산 로드 테스트](https://aws.amazon.com/solutions/implementations/distributed-load-testing-on-aws/) 솔루션을 사용하여 피크 트래픽을 생성하거나 예상되는 증가율로 워크로드를 테스트합니다.
+  지표 및 원격 측정을 평가하여 중요한 성능 영역을 파악합니다. 팀과 함께 이러한 영역을 검토하여 병목 현상을 방지할 수 있는 모니터링 및 솔루션을 논의합니다.
+  성능 개선을 실험하고 데이터로 이러한 변경 사항을 측정합니다. 예를 들어 워크로드에 대한 새로운 개선 사항과 성능 영향을 테스트하기 위해 [CloudWatch Evidently](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Evidently.html)를 사용할 수 있습니다.

## 리소스
리소스

 **관련 문서**: 
+ [ What's new in AWS Observability at re:Invent 2023 ](https://aws.amazon.com/blogs/mt/whats-new-in-aws-observability-at-reinvent-2023/)
+  [Amazon Builders’ Library](https://aws.amazon.com/builders-library) 
+  [X-Ray 설명서](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) 
+  [ Amazon CloudWatch RUM](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) 
+  [Amazon DevOps Guru](https://aws.amazon.com/devops-guru/) 

 **관련 비디오:** 
+ [AWS re:Invent 2023 - [LAUNCH] Application monitoring for modern workloads ](https://www.youtube.com/watch?v=T2TovTLje8w)
+ [AWS re:Invent 2023 - Implementing application observability ](https://www.youtube.com/watch?v=IcTcwUSwIs4)
+ [AWS re:Invent 2023 - Building an effective observability strategy ](https://www.youtube.com/watch?v=7PQv9eYCJW8)
+ [AWS Summit SF 2022 - Full-stack observability and application monitoring with AWS](https://www.youtube.com/watch?v=or7uFFyHIX0)
+ [AWS re:Invent 2022 - AWS optimization: Actionable steps for immediate results ](https://www.youtube.com/watch?v=0ifvNf2Tx3w)
+  [AWS re:Invent 2022 - The Amazon Builders’ Library: 25 years of Amazon operational excellence](https://www.youtube.com/watch?v=DSRhgBd_gtw) 
+ [AWS re:Invent 2022 - How Amazon uses better metrics for improved website performance ](https://www.youtube.com/watch?v=_uaaCiyJCFA)
+  [Visual Monitoring of Applications with Amazon CloudWatch Synthetics](https://www.youtube.com/watch?v=_PCs-ucZz7E) 

 **관련 예제:** 
+  [Measure page load time with Amazon CloudWatch Synthetics](https://github.com/aws-samples/amazon-cloudwatch-synthetics-page-performance) 
+  [Amazon CloudWatch RUM Web Client](https://github.com/aws-observability/aws-rum-web) 
+  [X-Ray SDK for Python](https://github.com/aws/aws-xray-sdk-python) 
+  [Distributed Load Testing on AWS](https://aws.amazon.com/solutions/implementations/distributed-load-testing-on-aws/) 

# PERF05-BP03 워크로드 성능 개선을 위한 프로세스 정의
PERF05-BP03 워크로드 성능 개선을 위한 프로세스 정의

 새 서비스, 설계 패턴, 리소스 유형 및 구성을 사용할 수 있게 되면 평가를 위한 프로세스를 정의해야 합니다. 예를 들어 새로운 인스턴스 오퍼링에서 기존 성능 테스트를 실행하여 워크로드 개선 가능성을 결정합니다.

 **일반적인 안티 패턴**: 
+  시간이 지나면 현재 아키텍처가 정적 아키텍처가 되고 업데이트되지 않는다고 가정합니다.
+  시간이 지나면 타당한 지표 없이 아키텍처 변경을 도입합니다.

 **이 모범 사례 확립의 이점:** 아키텍처 변경을 위한 프로세스를 정의하면 수집된 데이터를 사용하여 워크로드 설계에 지속적으로 영향을 줄 수 있습니다.

 **이 모범 사례가 확립되지 않을 경우 노출되는 위험 수준:** 중간 

## 구현 지침
구현 지침

 워크로드의 성능에는 몇 가지 주요 제약 사항이 있습니다. 워크로드의 성능을 향상시킬 수 있는 혁신이 어떤 것인지 파악할 수 있도록 이러한 내용을 문서화합니다. 새 서비스나 기술을 사용할 수 있게 되면 해당 서비스나 기술을 습득할 때 이 정보를 사용하여 제약 조건이나 병목 현상을 완화하는 방법을 파악합니다.

 워크로드에 대한 주요 성능 제약을 파악합니다. 워크로드의 성능 제약을 문서화하면 어떤 종류의 혁신이 워크로드의 성능을 개선할 수 있는지 알 수 있습니다.

### 구현 단계
구현 단계
+ **KPI 식별:** [PERF05-BP01 워크로드 상태 및 성능을 측정하기 위한 핵심 성과 지표(KPI) 수립](perf_process_culture_establish_key_performance_indicators.md)에 설명된 대로 워크로드 성능 KPI를 식별하여 워크로드의 기준을 설정합니다.
+ **모니터링 구현:** [AWS 관찰성 도구](https://docs.aws.amazon.com/wellarchitected/latest/management-and-governance-guide/aws-observability-tools.html)를 사용하여 성과 지표를 수집하고 KPI를 측정합니다.
+ **분석 수행:** 심층 분석을 수행하여 [PERF05-BP02 모니터링 솔루션을 사용하여 성능이 가장 중요한 영역 파악](perf_process_culture_use_monitoring_solutions.md)에 설명된 대로 워크로드에서 성능이 저조한 영역(예: 구성 및 애플리케이션 코드)을 식별합니다. 분석 및 성능 도구를 사용하여 성능 개선 전략을 식별합니다.
+ **개선 사항 검증:** 샌드박스 또는 사전 프로덕션 환경을 사용하여 개선 전략의 유효성을 검증합니다.
+ **변경 사항 구현:** 프로덕션 환경에서 변경 사항을 구현하고 워크로드의 성능을 지속적으로 모니터링합니다. 개선 사항을 문서화하고 변경 사항을 이해관계자에게 전달합니다.
+ **보관 및 개선:** 성과 개선 프로세스를 정기적으로 검토하여 개선이 필요한 영역을 식별합니다.

## 리소스
리소스

 **관련 문서:** 
+  [AWS 블로그](https://aws.amazon.com/blogs/) 
+  [AWS의 새로운 소식](https://aws.amazon.com/new/?ref=wellarchitected) 
+  [AWS Skill Builder](https://explore.skillbuilder.aws/learn) 

 **관련 비디오:** 
+ [AWS re:Invent 2022 - Delivering sustainable, high-performing architectures ](https://www.youtube.com/watch?v=FBc9hXQfat0)
+ [AWS re:Invent 2023 - Optimize cost and performance and track progress toward mitigation ](https://www.youtube.com/watch?v=keAfy8f84E0)
+ [AWS re:Invent 2022 - AWS optimization: Actionable steps for immediate results ](https://www.youtube.com/watch?v=0ifvNf2Tx3w)
+ [AWS re:Invent 2022 - Optimize your AWS workloads with best-practice guidance ](https://www.youtube.com/watch?v=t8yl1TrnuIk)

 **관련 예제:** 
+  [AWS Github](https://github.com/aws) 

# PERF05-BP04 워크로드 로드 테스트
PERF05-BP04 워크로드 로드 테스트

 워크로드 로드 테스트를 통해 프로덕션 로드를 처리할 수 있는지 확인하고 성능 병목 현상을 파악할 수 있습니다.

 **일반적인 안티 패턴:** 
+  전체 워크로드가 아니라 워크로드의 개별 부분을 로드 테스트를 수행합니다.
+  프로덕션 환경과 동일하지 않은 인프라에서 로드 테스트를 수행합니다.
+  향후 문제가 발생할 수 있는 위치를 예측할 때 예상 로드에 대해서만 로드 테스트를 수행합니다.
+  [Amazon EC2 테스트 정책](https://aws.amazon.com/ec2/testing/)을 참조하거나 시뮬레이션된 이벤트 제출 양식을 제출하지 않고도 로드 테스트를 수행할 수 있습니다. 이는 서비스 거부 이벤트처럼 보이기 때문에 테스트 실행이 실패하게 됩니다.

 **이 모범 사례 확립의 이점:** 로드 테스트에서 성능을 측정하면 로드 증가의 영향을 받게 될 위치를 알 수 있습니다. 이렇게 하면 워크로드에 영향을 미치기 전에 필요한 변경 사항을 예상할 수 있습니다.

 **이 모범 사례가 확립되지 않을 경우 노출되는 위험 수준:** 낮음 

## 구현 가이드
구현 지침

 클라우드에서의 로드 테스트는 예상되는 사용자 부하가 있는 실제 조건에서 클라우드 워크로드의 성능을 측정하는 프로세스입니다. 이 프로세스에는 프로덕션과 유사한 클라우드 환경을 프로비저닝하고, 로드 테스트 도구를 사용하여 로드를 생성하며, 지표를 분석하여 실제 워크로드 처리 능력을 평가하는 작업이 포함됩니다. 로드 테스트는 프로덕션 데이터의 통합 또는 제거 버전(민감한 정보 또는 식별 정보 제거)을 사용하여 실행되어야 합니다. 전송 파이프라인의 일부로 로드 테스트를 자동으로 수행하고 결과를 미리 정의된 KPI 및 임곗값과 비교합니다. 이 프로세스를 통해 필요한 성능을 계속해서 달성할 수 있습니다.

### 구현 단계
구현 단계
+ **테스트 목표 정의:** 평가하려는 워크로드의 성능 측면(예: 처리량 및 응답 시간)을 식별합니다.
+ **테스트 도구 선택:** 워크로드에 적합한 로드 테스트 도구를 선택하고 구성합니다.
+ **환경 설정:** 프로덕션 환경에 따라 테스트 환경을 설정합니다. AWS 서비스를 사용하면 프로덕션 규모의 환경을 실행하여 아키텍처를 테스트할 수 있습니다.
+ **모니터링 구현:** [Amazon CloudWatch](https://aws.amazon.com/cloudwatch/)와 같은 모니터링 도구를 사용하여 아키텍처의 리소스 전반에서 지표를 수집합니다. 사용자 지정 지표를 수집하고 게시할 수도 있습니다.
+ **시나리오 정의:** 로드 테스트 시나리오 및 파라미터(테스트 기간 및 사용자 수 등)를 정의합니다.
+ **로드 테스트 수행:** 대규모로 테스트 시나리오를 수행합니다. AWS 클라우드를 활용하여 워크로드를 테스트하여 확장에 실패하거나 비선형적인 방식으로 확장되는 부분을 발견하세요. 예를 들어, 스팟 인스턴스를 사용하여 저렴한 비용으로 로드를 생성하고 프로덕션 환경에서 발생하기 전에 병목 현상을 발견할 수 있습니다.
+ **테스트 결과 분석:** 결과를 분석하여 성능 병목 현상과 개선이 필요한 영역을 파악합니다.
+ **조사 결과 문서화 및 공유:** 조사 결과 및 권장 사항을 문서화하고 보고합니다. 이해관계자와 이 정보를 공유하면 이해관계자가 성능 최적화 전략과 관련하여 정보에 입각한 결정을 내리는 데 도움이 됩니다.
+ **지속적인 반복**: 로드 테스트는 정기적으로, 특히 시스템 변경 또는 업데이트 후에 수행해야 합니다.

## 리소스
리소스

 **관련 문서:** 
+  [Amazon CloudWatch RUM](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) 
+  [Amazon CloudWatch Synthetics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) 
+  [Distributed Load Testing on AWS](https://docs.aws.amazon.com/solutions/latest/distributed-load-testing-on-aws/welcome.html) 

 **관련 비디오:** 
+ [AWS Summit ANZ 2023: Accelerate with confidence through AWS Distributed Load Testing ](https://www.youtube.com/watch?v=4J6lVqa6Yh8)
+ [AWS re:Invent 2022 - Scaling on AWS for your first 10 million users ](https://www.youtube.com/watch?v=yrP3M4_13QM)
+  [Solving with AWS Solutions: Distributed Load Testing](https://www.youtube.com/watch?v=Y-2rk0sSyOM) 
+ [AWS re:Invent 2021 - Optimize applications through end user insights with Amazon CloudWatch RUM ](https://www.youtube.com/watch?v=NMaeujY9A9Y)
+  [Demo of Amazon CloudWatch Synthetics](https://www.youtube.com/watch?v=hF3NM9j-u7I) 

 **관련 예제:** 
+  [Distributed Load Testing on AWS](https://aws.amazon.com/solutions/implementations/distributed-load-testing-on-aws/) 

# PERF05-BP05 자동화를 사용하여 성능 관련 문제 사전 해결
PERF05-BP05 자동화를 사용하여 성능 관련 문제 사전 해결

 핵심 성과 지표(KPI)를 모니터링 및 경보 시스템과 함께 사용하여 성능 관련 문제를 선제적으로 해결합니다.

 **일반적인 안티 패턴**: 
+  워크로드에 대한 운영 변경을 수행할 수 있는 기능을 운영 직원에게만 허용합니다.
+  사전 조치 없이 모든 경보를 운영 팀으로 필터링합니다.

 **이 모범 사례 확립의 이점:** 경보 작업을 사전에 해결하면 지원 직원이 자동으로 실행할 수 없는 항목에 집중할 수 있습니다. 이를 통해 운영 담당자는 모든 알람을 처리하는 데 부담을 느끼지 않고 중요한 경보에만 집중할 수 있습니다.

 **이 모범 사례가 확립되지 않을 경우 노출되는 위험 수준:** 낮음 

## 구현 지침
구현 지침

 경보를 사용하여 가능한 경우 문제를 해결하는 자동화 작업을 트리거합니다. 자동 대응이 불가능한 경우 대응을 수행할 수 있는 담당자에게 경보를 에스컬레이션합니다. 예를 들어 필요한 핵심 성과 지표(KPI) 값을 예측하고 해당 값이 특정 임곗값을 초과하는 경우 경보를 생성할 수 있는 시스템이나, KPI가 필요한 값의 범위를 벗어나는 경우 배포를 자동으로 중지하거나 롤백할 수 있는 도구가 있습니다.

 워크로드가 실행 중일 때 성능을 확인할 수 있는 프로세스를 구현합니다. 워크로드가 최적의 상태로 작동하고 있는지를 확인할 수 있도록 성능 기대치 관련 기준을 설정하고 모니터링 대시보드를 구축합니다.

### 구현 단계
구현 단계
+ **수정 워크플로 식별:** 자동으로 해결할 수 있는 성능 문제를 식별하고 이해합니다. [Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) 또는 AWS X-Ray와 같은 AWS 모니터링 솔루션을 사용하여 문제의 근본 원인을 더 잘 파악할 수 있습니다.
+ **자동화 프로세스 정의:** 문제를 자동으로 해결하는 데 사용할 수 있는 단계별 수정 프로세스를 만듭니다.
+ **시작 이벤트 구성:** 수정 프로세스를 자동으로 시작하도록 이벤트를 구성합니다. 예를 들어 CPU 사용률이 특정 임곗값에 도달하면 인스턴스를 자동으로 다시 시작하도록 트리거를 정의할 수 있습니다.
+ **수정 자동화:** AWS 서비스 및 기술을 사용하여 수정 프로세스를 자동화합니다. 예를 들어, [AWS Systems Manager Automation](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html)에서는 수정 프로세스를 자동화할 수 있는 안전하고 확장 가능한 방법을 제공합니다. 문제를 성공적으로 해결하지 못한 경우 자체 복구 논리를 사용하여 변경 내용을 되돌립니다.
+ **워크플로 테스트:** 사전 프로덕션 환경에서 자동화된 수정 프로세스를 테스트합니다.
+ **워크플로우 구현:** 프로덕션 환경에서 자동화된 문제 해결을 구현합니다.
+ **플레이북 개발:** 시작 이벤트, 수정 논리 및 실행된 조치를 포함하여 수정 계획의 단계를 설명하는 플레이북을 개발하고 문서화합니다. 이해관계자가 자동화된 수정 이벤트에 효과적으로 대응할 수 있도록 교육해야 합니다.
+ **검토 및 개선:** 자동화된 수정 워크플로의 효과를 정기적으로 평가합니다. 필요한 경우 시작 이벤트 및 수정 논리를 조정합니다.

## 리소스
리소스

 **관련 문서:** 
+  [CloudWatch 설명서](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) 
+  [모니터링, 로깅 및 성능 AWS Partner Network 파트너](https://aws.amazon.com/devops/partner-solutions/#_Monitoring.2C_Logging.2C_and_Performance) 
+  [X-Ray 설명서](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) 
+  [Using Alarms and Alarm Actions in CloudWatch](https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/cw-example-using-alarm-actions.html) 
+ [ Build a Cloud Automation Practice for Operational Excellence: Best Practices from AWS Managed Services](https://aws.amazon.com/blogs/mt/build-a-cloud-automation-practice-for-operational-excellence-best-practices-from-aws-managed-services/)
+ [ Automate your Amazon Redshift performance tuning with automatic table optimization ](https://aws.amazon.com/blogs/big-data/automate-your-amazon-redshift-performance-tuning-with-automatic-table-optimization/)

 **관련 비디오:** 
+ [AWS re:Invent 2023 - Strategies for automated scaling, remediation, and smart self-healing ](https://www.youtube.com/watch?v=nlGyIa3UQYU)
+ [AWS re:Invent 2023 - [LAUNCH] Application monitoring for modern workloads ](https://www.youtube.com/watch?v=T2TovTLje8w)
+ [AWS re:Invent 2023 - Implementing application observability ](https://www.youtube.com/watch?v=IcTcwUSwIs4)
+  [AWS re:Invent 2021 - Intelligently automating cloud operations](https://www.youtube.com/watch?v=m0S8eAF0l54) 
+  [AWS re:Invent 2022 - Setting up controls at scale in your AWS environment](https://www.youtube.com/watch?v=NkE9_okfPG8) 
+  [AWS re:Invent 2022 - Automating patch management and compliance using AWS](https://www.youtube.com/watch?v=gL3baXQJvc0) 
+  [AWS re:Invent 2022 - How Amazon uses better metrics for improved website performance](https://www.youtube.com/watch?v=_uaaCiyJCFA&ab_channel=AWSEvents) 
+ [AWS re:Invent 2023 - Take a load off: Diagnose & resolve performance issues with Amazon RDS ](https://www.youtube.com/watch?v=Ulj88e5Aqzg)
+ [AWS re:Invent 2021 -\$1New Launch\$1 Automatically detect and resolve issues with Amazon DevOps Guru ](https://www.youtube.com/watch?v=iwQNQHwoXfk)
+ [AWS re:Invent 2023 - Centralize your operations ](https://www.youtube.com/watch?v=9-RBjmhDdaM)

 **관련 예제:** 
+  [CloudWatch Logs Customize Alarms](https://github.com/awslabs/cloudwatch-logs-customize-alarms) 

# PERF05-BP06 워크로드 및 서비스 최신 상태 유지
PERF05-BP06 워크로드 및 서비스 최신 상태 유지

 새로운 클라우드 서비스 및 기능에 대한 최신 정보를 파악하여 효율적인 기능을 채택하고 문제를 제거하며 워크로드의 전반적인 성능 효율성을 개선할 수 있습니다.

 **일반적인 안티 패턴:** 
+  시간이 지나면 현재 아키텍처가 정적 아키텍처가 되고 업데이트되지 않는다고 가정합니다.
+  업데이트된 소프트웨어 및 패키지가 워크로드와 호환되는지 평가하는 시스템 또는 정기적인 주기가 없습니다.

 **이 모범 사례 확립의 이점:** 새로운 서비스 및 제품에 대한 최신 정보를 파악하는 프로세스를 구축하면 새로운 기능을 채택하고 문제를 해결하며 워크로드 성능을 개선할 수 있습니다.

 **이 모범 사례가 확립되지 않을 경우 노출되는 위험 수준:** 낮음 

## 구현 가이드
구현 지침

 새로운 서비스, 설계 패턴 및 제품 기능이 제공되면 성능을 개선할 방법을 평가합니다. 평가, 내부 논의 또는 외부 분석을 통해 워크로드의 효율성을 높이고 성능을 개선할 수 있는 방법을 결정합니다. 워크로드 관련 업데이트, 새 기능 및 서비스를 평가하는 프로세스를 정의합니다. 새 기술을 사용하는 개념 증명 작성, 내부 그룹과의 상담 등을 그 예로 들 수 있습니다. 새 아이디어나 서비스를 시도할 때는 성능 테스트를 실행하여 해당 아이디어나 서비스가 워크로드의 성능에 주는 영향을 측정합니다.

## 구현 단계
구현 단계
+ **인벤토리 작업 수행:** 워크로드 소프트웨어 및 아키텍처를 조사하여 업데이트하는 데 필요한 구성 요소를 식별합니다.
+ **업데이트 소스 식별:** 워크로드 구성 요소 관련 뉴스 및 업데이트 소스를 파악합니다. 예를 들어, [AWS의 새로운 소식 블로그](https://aws.amazon.com/new/) 구독하여 워크로드 구성 요소와 일치하는 제품을 구입할 수 있습니다. RSS 피드를 구독하거나 [이메일 구독](https://pages.awscloud.com/communication-preferences.html)을 관리할 수 있습니다.
+ **업데이트 일정 정의:** 워크로드에 대한 새로운 서비스 및 기능을 평가할 일정을 정의할 수 있습니다.
  +  [AWS Systems Manager Inventory](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-inventory.html)를 사용하여 Amazon EC2 인스턴스에서 운영 체제(OS), 애플리케이션, 인스턴스 메타데이터를 수집하고 소프트웨어를 실행 중인 인스턴스, 소프트웨어 정책에 필요한 구성, 업데이트해야 할 인스턴스를 신속하게 파악합니다.
+ **새 업데이트 평가:** 워크로드 구성 요소의 업데이트 방법을 파악합니다. 클라우드의 민첩성을 활용하여 새로운 기능이 워크로드를 어떻게 개선하여 성능 효율성을 높일 수 있는지 빠르게 테스트합니다.
+ **자동화 사용:** 업데이트 프로세스에 자동화를 사용하여 새 기능 배포에 필요한 작업 수준을 줄이고 수동 프로세스로 인한 오류를 제한합니다.
  +  [CI/CD](https://aws.amazon.com/blogs/devops/complete-ci-cd-with-aws-codecommit-aws-codebuild-aws-codedeploy-and-aws-codepipeline/)를 사용하면 클라우드 애플리케이션과 관련된 AMI, 컨테이너 이미지 및 기타 아티팩트를 자동으로 업데이트할 수 있습니다.
  +  [AWS Systems Manager Patch Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-patch.html)와 같은 도구를 사용하여 시스템 업데이트 프로세스를 자동화하고 [AWS Systems Manager Maintenance Windows](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-maintenance.html)를 사용하여 활동을 예약할 수 있습니다.
+ **프로세스 문서화:** 업데이트 및 새로운 서비스를 평가하기 위한 프로세스를 문서화합니다. 업데이트 및 새로운 서비스를 연구, 테스트, 실험 및 검증하는 데 필요한 시간과 공간을 담당자에게 제공합니다. 문서화된 비즈니스 요구 사항 및 KPI를 다시 참조하여 비즈니스에 긍정적인 영향을 줄 업데이트에 대한 우선순위를 지정할 수 있습니다.

## 리소스
리소스

 **관련 문서:** 
+  [AWS 블로그](https://aws.amazon.com/blogs/) 
+  [AWS의 새로운 소식](https://aws.amazon.com/new/?ref=wellarchitected) 
+ [ Implementing up-to-date images with automated EC2 Image Builder pipelines ](https://aws.amazon.com/blogs/compute/implementing-up-to-date-images-with-automated-ec2-image-builder-pipelines/)

 **관련 비디오:** 
+ [AWS re:Inforce 2022 - Automating patch management and compliance using AWS](https://www.youtube.com/watch?v=gL3baXQJvc0)
+ [ All Things Patch: AWS Systems Manager \$1 AWS Events ](https://www.youtube.com/watch?v=PhIiVsCEBu8)

 **관련 예제:** 
+ [ Inventory and Patch Management ](https://mng.workshop.aws/ssm/use-case-labs/inventory_patch_management.html)
+ [ One Observability 워크숍 ](https://catalog.workshops.aws/observability/en-US)

# PERF05-BP07 정기적으로 지표 검토
PERF05-BP07 정기적으로 지표 검토

 정기적인 유지 관리의 일환으로 또는 이벤트나 인시던트 대응 과정에서 수집된 지표를 검토합니다. 이러한 검토를 수행하면 문제를 해결하는 데 반드시 필요했던 지표와 문제를 식별, 해결 또는 방지하는 데 도움이 되었던 지표(추적한 경우)를 추가로 파악할 수 있습니다.

 **일반적인 안티 패턴**: 
+  지표가 장기간 경보 상태로 유지되는 것을 허용합니다.
+  자동화 시스템으로 수행할 수 없는 경보를 생성합니다.

 **이 모범 사례 확립의 이점:** 수집 중인 지표를 지속적으로 검토하여 문제가 올바르게 식별, 해결 또는 방지되는지 확인합니다. 지표를 장기간 경보 상태로 유지할 경우에도 지표가 부실해질 수 있습니다.

 **이 모범 사례가 확립되지 않을 경우 노출되는 위험 수준:** 중간 

## 구현 지침
구현 지침

 지표 수집 및 모니터링을 지속적으로 개선합니다. 인시던트나 이벤트 대응의 일환으로 문제를 해결하는 데 도움이 되었던 지표와 현재는 추적 중이지 않지만 도움이 되었을 수 있는 지표를 평가합니다. 이 방법을 사용하여 수집한 지표의 품질을 개선하면 사후 인시던트를 예방하거나 더 빨리 해결할 수 있습니다.

 인시던트나 이벤트 대응의 일환으로 문제를 해결하는 데 도움이 되었던 지표와 현재는 추적 중이지 않지만 도움이 되었을 수 있는 지표를 평가합니다. 이 평가 결과를 토대로 하여 수집한 지표의 품질을 개선하면 이후 인시던트를 예방하거나 더 빨리 해결할 수 있습니다.

### 구현 단계
구현 단계
+ **지표 정의:** 응답 시간 및 리소스 사용률과 같은 지표 등 워크로드 목표에 맞춰 모니터링할 중요한 성과 지표를 정의합니다.
+ **기준선 설정:** 각 지표에 대한 기준과 원하는 값을 설정합니다. 기준은 편차 또는 이상을 식별하기 위한 기준을 제공해야 합니다.
+ **주기 설정:** 주기(예: 주별 또는 월별)를 설정하여 중요 지표를 검토합니다.
+ **성능 문제 식별:** 각 검토 과정에서 추세와 기준값과의 편차를 평가합니다. 성능 병목 현상 또는 이상 징후가 있는지 찾아봅니다. 식별된 문제의 경우 심층적인 근본 원인 분석을 수행하여 문제의 주요 원인을 파악합니다.
+ **수정 조치 식별:** 분석을 사용하여 수정 조치를 식별합니다. 여기에는 파라미터 조정, 버그 수정, 리소스 규모 조정이 포함될 수 있습니다.
+ **조사 결과 문서화:** 식별된 문제, 근본 원인 및 시정 조치를 포함하여 조사 결과를 문서화합니다.
+ **반복 및 개선:** 지표 검토 프로세스를 지속적으로 평가하고 개선합니다. 이전 검토에서 배운 내용을 활용하여 시간이 지남에 따라 프로세스를 개선합니다.

## 리소스
리소스

 **관련 문서**: 
+  [CloudWatch 설명서](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) 
+  [CloudWatch 에이전트를 사용하여 Amazon EC2 인스턴스 및 온프레미스 서버에서 지표 및 로그 수집](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Install-CloudWatch-Agent.html?ref=wellarchitected) 
+ [ CloudWatch Metrics Insights를 사용하는 지표 쿼리 ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/query_with_cloudwatch-metrics-insights.html)
+  [모니터링, 로깅 및 성능 AWS Partner Network 파트너](https://aws.amazon.com/devops/partner-solutions/#_Monitoring.2C_Logging.2C_and_Performance) 
+  [X-Ray 설명서](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) 

 **관련 비디오:** 
+  [AWS re:Invent 2022 - Setting up controls at scale in your AWS environment](https://www.youtube.com/watch?v=NkE9_okfPG8) 
+  [AWS re:Invent 2022 - How Amazon uses better metrics for improved website performance](https://www.youtube.com/watch?v=_uaaCiyJCFA&ab_channel=AWSEvents) 
+ [AWS re:Invent 2023 - Building an effective observability strategy ](https://www.youtube.com/watch?v=7PQv9eYCJW8)
+ [AWS Summit SF 2022 - Full-stack observability and application monitoring with AWS](https://www.youtube.com/watch?v=or7uFFyHIX0)
+ [AWS re:Invent 2023 - Take a load off: Diagnose & resolve performance issues with Amazon RDS ](https://www.youtube.com/watch?v=Ulj88e5Aqzg)

 **관련 예제:** 
+  [Quick으로 대시보드 생성](https://github.com/aws-samples/amazon-quicksight-sdk-proserve) 
+ [ CloudWatch Dashboards ](https://catalog.us-east-1.prod.workshops.aws/workshops/a8e9c6a6-0ba9-48a7-a90d-378a440ab8ba/en-US/300-cloudwatch/340-cloudwatch-dashboards)