중요: AWS의 DevOps 모니터링 대시보드는 2024년 12월 3일에 사용 중지됩니다. AWS CodePipeline의 모니터링 대시보드를 제공하는 Datadog의 CI 가시성 등 AWS 파트너가 제공하는 다른 대안을 살펴볼 수 있습니다.
개요
이 솔루션은 지속적 통합/지속적 전달(CI/CD) 지표의 수집, 분석 및 시각화 프로세스를 자동화합니다. 이러한 지표는 Amazon QuickSight 대시보드에 표시되어 DevOps 리더가 DevOps 이니셔티브의 영향을 측정하고 데이터 기반의 결정을 내림으로써 개발 팀의 지속적 개선을 주도하는 데 도움을 줍니다.
이점
CI/CD 파이프라인에서 성능 및 운영 지표가 포함된 스트리밍 데이터의 수집 및 분석을 거의 실시간으로 자동화합니다. 주요 DevOps 지표를 계산하여 개발 팀의 활동을 추적 및 측정합니다.
사전 구축된 Amazon QuickSight 대시보드를 자동으로 시작하여 솔루션의 분석을 시각화합니다. CI/CD 활동에 대한 인사이트를 식별하여 DevOps 이니셔티브의 이해를 높이고 데이터 기반의 결정을 내림으로써 소프트웨어 제공 프로세스의 지속적 개선을 주도합니다.
서드 파티 비즈니스 인텔리전스(BI) 도구를 사용하도록 이 솔루션을 사용자 지정하여 Amazon Athena 데이터베이스에서 사용자 지정 시각화를 구축할 수 있습니다.
여러 AWS 계정과 AWS 리전의 데이터를 중앙의 Amazon Simple Storage Service(S3) 버킷으로 스트리밍하고 여기에서 단일 대시보드를 사용하여 데이터를 분석 및 모니터링할 수 있습니다.
기술 세부 정보
구현 가이드를 사용하여 이 아키텍처를 자동으로 배포할 수 있습니다.
1단계
개발자가 AWS CI/CD 파이프라인에서 AWS CodeCommit으로 코드 변경 푸시 또는 AWS CodeDeploy를 사용한 애플리케이션 배포와 같은 활동을 시작합니다. 이러한 활동을 수행하면 이벤트가 생성됩니다. 다중 계정 다중 리전 기능이 활성화된 경우 여러 AWS 계정과 여러 AWS 리전에서 이벤트를 생성할 수 있습니다. GitHub 리포지토리를 사용한 개발의 경우 git 푸시 이벤트가 생성됩니다.
2단계
Amazon EventBridge 이벤트 규칙이 사전 정의된 이벤트 패턴을 기반으로 이벤트를 탐지한 다음, 이벤트 데이터를 Amazon Kinesis Data Firehose 전송 스트림으로 전송합니다. 이벤트 소스당 하나의 이벤트 규칙이 생성됩니다.
AWS CodeBuild의 활동에 대해 CloudWatch 지표를 캡처하고 Kinesis Data Firehose 전송 스트림으로 전송하도록 Amazon CloudWatch 지표 스트림이 설정됩니다. GitHub 푸시 이벤트의 경우 이러한 이벤트를 게시하고 Kinesis Data Firehose 전송 스트림으로 전송하는 Amazon API Gateway 엔드포인트가 생성됩니다.
3단계
계정에 Canary 또는 파이프라인에 대한 경보를 설정한 경우 각각 CloudWatch Synthetics Canary 또는 Amazon CodePipeline의 상태를 모니터링하는 CloudWatch 경보에서 이벤트를 캡처하는 EventBridge 이벤트 규칙도 생성됩니다. 이 경보는 평균 복구 시간(MTTR) 지표를 계산하기 위한 데이터를 수집하는 데 필요합니다.
4단계
Kinesis Data Firehose에서 데이터 변환을 위해 AWS Lambda 함수를 사용합니다. Lambda 함수는 각 지표에 대한 관련 데이터를 추출하고 다운스트림 처리를 위해 해당 데이터를 모니터링 계정의 Amazon Simple Storage Service(S3) 버킷으로 전송합니다.
5단계
Amazon Simple Storage Service(S3)의 데이터는 이 데이터에 대해 쿼리를 실행하고 쿼리 결과를 Amazon QuickSight에 반환하는 Amazon Athena 데이터베이스에 연결됩니다.
6단계
QuickSight가 쿼리 결과를 수신하고 관리 팀을 위한 대시보드 시각화를 구축합니다.
“Mphasis는 기업이 디지털 트랜스포메이션 여정을 가속화할 수 있도록 지원하는 선도적인 응용 기술 서비스 회사입니다. DevOps Monitoring Dashboard를 다른 AWS 솔루션과 함께 사용함으로써 아이디어 단계부터 구축 단계까지 진행하는 시간을 30% 단축할 수 있었습니다. DevOps 운영 지표를 수집하고 시각화하는 설정 프로세스를 자동화할 수 있어, 보다 현명한 의사 결정을 손쉽게 내리고 구축 팀 전반에서 개선의 여지가 있는 부분을 정확히 파악할 수 있었습니다."
관련 콘텐츠
이 블로그 게시물에서는 AWS DevOps Monitoring Dashboard 솔루션을 사용하여 DevOps 지표 수집 및 시각화 설정 프로세스를 자동화함으로써 시간과 노력을 줄이는 방법을 보여드립니다. 이 솔루션은 모든 규모의 조직에서 사용하여 소프트웨어 전송 프로세스의 주요 운영 지표를 수집, 분석 및 시각화를 용이하게 할 수 있는 참조 구현입니다.