OPS04-BP02 애플리케이션 원격 측정 구현 - AWS Well-Architected Framework

OPS04-BP02 애플리케이션 원격 측정 구현

애플리케이션 원격 측정은 워크로드를 관찰하기 위한 기반입니다. 애플리케이션 상태와 기술 및 비즈니스 성과 달성에 대한 실행 가능한 인사이트를 제공하는 원격 분석을 내보내는 것이 중요합니다. 문제 해결부터 새로운 기능의 영향 측정 또는 비즈니스 핵심 성과 지표(KPI)와의 조정에 이르기까지 애플리케이션 원격 측정은 워크로드를 구축, 운영 및 발전시키는 방법을 알려줍니다.

지표, 로그, 추적은 관찰성의 세 가지 기본 축을 형성합니다. 이들은 애플리케이션의 상태를 설명하는 진단 도구 역할을 합니다. 시간이 지남에 따라 기준을 만들고 이상 징후를 식별하는 데 도움을 줍니다. 그러나 모니터링 활동과 비즈니스 목표를 일치시키기 위해서는 KPI를 정의하고 모니터링하는 것이 중요합니다. 비즈니스 KPI는 기술 지표만 사용하는 것보다 문제를 더 쉽게 식별할 수 있게 해주는 경우가 많습니다.

실제 사용자 모니터링(RUM) 및 가상 트랜잭션과 같은 다른 원격 측정 유형은 이러한 기본 데이터 소스를 보완합니다. RUM은 실시간 사용자 상호 작용에 대한 인사이트를 제공하는 반면 가상 트랜잭션은 잠재적 사용자 행동을 시뮬레이션하여 실제 사용자가 병목 현상을 경험하기 전에 병목 현상을 탐지하는 데 도움이 됩니다.

원하는 결과: 워크로드 성능에 대한 실행 가능한 인사이트를 도출합니다. 이러한 인사이트를 통해 성능 최적화에 대한 사전 결정을 내리고, 워크로드 안정성을 높이고, CI/CD 프로세스를 간소화하고, 리소스를 효과적으로 활용할 수 있습니다.

일반적인 안티 패턴:

  • 불완전한 관찰성: 워크로드의 모든 레이어에 대해 관찰성을 확보하지 않으면 사각 지대가 발생하여 중요한 시스템 성능 및 동작 인사이트를 모호하게 만들 수 있습니다.

  • 단편화된 데이터 보기: 데이터가 여러 도구 및 시스템에 분산되어 있는 경우 워크로드의 상태와 성능을 전체적으로 파악하기가 어려워집니다.

  • 사용자가 보고한 문제: 원격 측정 및 비즈니스 KPI 모니터링을 통한 사전 예방적 문제 탐지가 부족하다는 신호입니다.

이 모범 사례 확립의 이점:

  • 정보에 입각한 의사 결정: 원격 측정 및 비즈니스 KPI의 인사이트를 바탕으로 데이터에 기반한 결정을 내릴 수 있습니다.

  • 운영 효율성 향상: 데이터 기반 리소스 활용은 비용 효과성으로 이어집니다.

  • 워크로드 안정성 향상: 문제를 더 빠르게 탐지하고 해결하여 가동 시간을 개선합니다.

  • 간소화된 CI/CD 프로세스: 원격 측정 데이터에서 얻은 인사이트를 통해 프로세스를 개선하고 안정적인 코드를 전달할 수 있습니다.

이 모범 사례를 따르지 않을 경우 노출 위험도: 높음

구현 가이드

워크로드에 애플리케이션 원격 측정을 구현하기 위해 Amazon CloudWatchAWS X-Ray와 같은 AWS 서비스를 사용하세요. Amazon CloudWatch는 AWS 및 온프레미스 환경에서 리소스와 애플리케이션을 관찰할 수 있는 포괄적인 모니터링 도구 모음을 제공합니다. 지표를 수집, 추적 및 분석하고, 로그 데이터를 통합 및 모니터링하고, 리소스 변화에 대응하여 워크로드 운영 방식에 대한 이해를 높입니다. 동시에 AWS X-Ray를 통해 애플리케이션을 추적, 분석 및 디버깅하여 워크로드 동작을 심층적으로 이해할 수 있습니다. 서비스 맵, 지연 시간 분포, 추적 타임라인과 같은 기능을 통해 AWS X-Ray는 워크로드의 성능과 이에 영향을 미치는 병목 현상에 대한 인사이트를 제공합니다.

구현 단계

  1. 수집할 데이터 파악: 워크로드의 상태, 성능 및 행동에 대한 실질적인 인사이트를 제공하는 필수 지표, 로그 및 추적을 확인합니다.

  2. CloudWatch 에이전트 배포: CloudWatch 에이전트는 워크로드와 기본 인프라에서 시스템 및 애플리케이션 지표와 로그를 확보하는 데 중요한 역할을 합니다. CloudWatch 에이전트를 사용하여 OpenTelemetry 또는 X-Ray 추적 데이터를 수집하여 X-Ray에 전송할 수도 있습니다.

  3. 로그 및 지표에 대한 이상 탐지 구현: CloudWatch Logs 이상 탐지CloudWatch 지표 이상 탐지를 사용하여 애플리케이션 운영의 비정상적인 활동을 자동으로 식별합니다. 이러한 도구는 기계 학습 알고리즘을 사용하여 이상 징후를 탐지하고 알림을 제공하므로 모니터링 역량이 향상되고 잠재적 장애 또는 보안 위협에 대한 대응 시간이 단축됩니다. 이러한 기능을 설정하여 애플리케이션 상태 및 보안을 사전에 관리하세요.

  4. 민감한 로그 데이터 보호: Amazon CloudWatch Logs 데이터 보호를 사용하여 로그 내의 민감한 정보를 마스킹합니다. 이 기능은 액세스하기 전에 민감한 데이터를 자동으로 탐지하고 마스킹하여 프라이버시 및 규정 준수를 유지하는 데 도움이 됩니다. 데이터 마스킹을 구현하여 개인 식별 정보(PII)와 같은 민감한 세부 정보를 안전하게 처리하고 보호합니다.

  5. 비즈니스 KPI 정의 및 모니터링: 비즈니스 성과에 맞는 맞춤형 지표를 설정합니다.

  6. AWS X-Ray로 애플리케이션 계측: CloudWatch 에이전트를 배포하는 것 외에도 추적 데이터를 내보내도록 애플리케이션을 계측하는 것이 중요합니다. 이 프로세스는 워크로드의 동작과 성능에 대한 추가 인사이트를 제공할 수 있습니다.

  7. 애플리케이션 전반의 데이터 수집 표준화: 전체 애플리케이션에서 데이터 수집 관행을 표준화합니다. 일관성은 데이터를 상호 연관시키고 분석하는 데 도움이 되며, 이를 통해 애플리케이션 동작을 포괄적으로 파악할 수 있습니다.

  8. 교차 계정 관찰성 구현: Amazon CloudWatch 교차 계정 관찰성을 통해 여러 AWS 계정의 모니터링 효율성을 개선합니다. 이 기능을 사용하면 여러 계정의 지표, 로그 및 경보를 단일 보기로 통합하여 관리를 간소화하고 조직의 AWS 환경 전반에서 식별된 문제에 대한 대응 시간을 개선할 수 있습니다.

  9. 데이터 분석 및 활용: 데이터 수집 및 정규화가 완료되면 지표 및 로그 분석에는 Amazon CloudWatch를 사용하고 추적 분석에는 AWS X-Ray를 사용합니다. 이러한 분석을 통해 워크로드의 상태, 성능 및 행동에 대한 중요한 인사이트를 얻어 의사 결정 프로세스에 반영할 수 있습니다.

구현 계획의 작업 수준: 높음

리소스

관련 모범 사례:

관련 문서:

관련 동영상:

관련 예시: