02. 현재의 문제부터 다가올 미래의 문제까지, DevOpsGuru 활용
<1> DEVOPS 란?
<2> AWS 모니터링 도구?
<3> AWS 관찰 가능성 도구?
<4> Amazon DevOps Guru는 장애 복구 시간을 줄여주는 완전 관리형 기계 학습 기반 서비스
<5> Amazon DevOps Guru 작동원리
<6> Amazon DevOps Guru for RDS로 데이터 베이스에 대한 분석도 가능하다.
<1> DEVOPS 란?
기업은 고품질 소프트웨어를 빠르고 안정적으로 제공을 목적으로 한다.
1
데브옵스 자동화를 통해 신속한 소프트웨어 제공
2
데브옵스의 범위?
CI/CD
식별 가능성 (Observability)
인프라의 코드화
소스 관리
복원력과 보안
3
식별 가능성(Observability)?
모니터링은 시스템의 상태 측정
식별 가능성은 내부 상태 추론
시스템이 왜 작동하지 않는지에 대해서 이해할 수 있다.
4
이슈 타임라인?
탐지 - 식별 - 수정 - 검증 4단계
탐지 시간 - MTTD
식별 시간 - MTTI , 이슈 세부 정보 인지
탐지, 식별 + 수정시간 , 검증 시간 = MTTR (resolve)
5
MTTD, MMTI 시간을 줄이자
6
데이터 기반의 의사 결정?
로그
메트릭
트레이스
<2> AWS 모니터링 도구?
1
로그?
Amazon CloudWatch 에이전트로 클라우드 온프라미스 수집한다.
로그 인 사인트로 분석한다.
CloudWatch logs 사용
2
메트릭?
Amazon CloudWatch 에이전트로 수집
메트릭 수식으로 분석.
Cloudwatch Metrics 사용
3
트레이스?
AWS X-Ray 에이전트
X-Ray 에널리틱스로 분석한다.
X-Ray Traces 사용한다. 근본 원인 확인한다.
<3> AWS 관찰 가능성 도구?
1
도구
Container Insights - 컨테이너 모니 터링
X-Ray Insights - 비정상적인 디텍트 사용하여 문제를 자동으로 식별하고 사용자에게 알림
Lambda Insight - 람다 성능 및 상태 메트릭에 대한 인사이트
Contributor Insights: CloudWatch 로그에서 시계열 데이터 생성 , 가장 부하가 큰 트래픽 패턴을 찾는다.
Metrics Explorer - 리소스 태그를 기반으로 하는 동적 대시보드
ServiceLens : 로그 , 메트릭 및 추적의 상관관계를 쉽게 연결하여 서비스 병목 현상을 신속하게 식별, 각 애플리케이션과 데이터들의 상관관계를 시작화 한다.
Synthetics : 웹 사이트 및 엔드포인트에서 실제 사용자 모니터링 수행, 주기적인 인공 신호를 보내 사용자 인지 전에 모니터링.
2
탐지- 식별 - 수정 - 검증 4단계
3
탐지에서 해결?
Synthetics 경고
X-Ray Insights 알림
4
식별에서 해결?
ServiceLens를 사용하여 로그, 메트릭, 트레이스 데이터의 상관관계를 지정할 수 있다.
로그
메트릭
트레이스
Correlation (상관관계)
5
서비스가 늘어나면?
모니터링과 관찰 가능성 도구의 많은 부분을 자동화해야 한다.
올바른 방법을 찾아야 하며 계속 확인해야 한다.
이 부분 해결을 위해 Amazon DevOps Guru 가 개발되었다.
<4> Amazon DevOps Guru는 장애 복구 시간을 줄여주는 완전 관리형 기계 학습 기반 서비스
1
애플리케이션을 모니터링하여, 가용성을 자동으로 개선하고, MTTR을 줄이는 완전 관리형 기계 학습 기반 서비스이다.
2
Amazon CloudWatch , AWS x-ray , CloudTrail 등으로 수집한 데이터를 기반으로
기계 학습을 기반으로 이슈 발생에 따른 데이터들을 연관하고 누락되거나 잘못 구성된 경보 , 리소스 고갈에 대한 조기 경보,
서비스 중단으로 이어질 수 있는 코드 및 구성 변경과 같은 운영 문제를 자동으로 감지할 수 있다.
3
Amazon DevOps Guru 기계 학습 모델
운영 문제를 확인하고 디버깅하는 시간을 줄인다.
애플리케이션을 효과적으로 모니터링한다.
4
Amazon DevOps Guru 특징?
사용이 쉽다 - 콘솔에서 스택 또는 계정 감지 체크만 해놓으면 별다른 구성 없이 바로 기계학습을 활용한 데이터 분석을 시작할 수 있다.
운영 문제 자동으로 감지 - 서로 다른 데이터 및 메트릭의 스트림을 지속적으로 분석하여 애플리케이션의 동작을 결정한다.
5
인사이트 및 권장사항을 제공하여 문제를 신속하게 해결하는데 도움을 준다.
6
새로운 워크로드가 추가되더라도 별다른 설정 없이 쉽게 확장하고 유지한다.
7
경보 피로를 감소시킬 수 있다.
경보가 그룹화되어 불필요한 경보를 줄여준다.
<5> Amazon DevOps Guru 작동원리
CloudWatch 메트릭 모니터링
기계 학습을 통한 이상 징후 감지
이벤트와 연계
추천 구성
인사이트 생성
1
Amazon DevOps Guru 활성화 , 추가 세팅 없음
2
CloudWatch 메트릭이나 로그에서 분석을 위한 운영 데이터를 수집
3
기계 학습 디텍터로 이상을 탐지한다.
정상적인 범위를 먼저 설정한다.
4
사전 훈련된 기계 학습 모델을 사용하여 설정된 기준과의 편차를 식별한다.
5
이상이 감지되면 CloudTrail 로그를 조회하고, 해당 이상과 관련한 이벤트를 수집하여 상호 연관시킨다.
6
규정된 지침에 따라 권장 사항을 구성한다.
7
모든 정보를 패키 징하여 인사이트를 제공한다.
웹 애플리케이션 지연시간 급증 , 디스크 공간 부족 , 잘못된 코드 배포 , 메모리 부족 등 애플리케이션 및 인프라 메트릭에 대한 문제도 연관 지어 찾아낸다.
8
시작법?
콘솔에서 DevOps Grue > 구성에서 시작하기 > 오거나이제이션을 사용하면 전체를 분석할 수 있고 현재 계정만도 가능하다.
SNS로 알람을 받을 수 있다. 이메일 , 챗봇을 이용해 슬랙이나 차임으로 알람을 받을 수 있다.
계정 전체가 아닌 필요한 리소스만 분석하고 싶다면 설정 > Analyzed resources에서 분석 범위를 편집해 클라우드 포메이션 스택을 선택해 사용 가능하다.
경고는 대시보드를 확인하라.
이상 상황에 대해 권장사항도 제공한다.
<6> Amazon DevOps Guru for RDS로 데이터 베이스에 대한 분석도 가능하다.
1
RDS를 사용하면 확장 모니터링을 사용하여 성능 개선 도우미를 사용할 수 있다.
오로라 사용하면 확장 모니터링의 데이터를 분석하여 성능 문제를 빠르게 탐지, 진단 및 해결을 할 수 있다.
2
호스트의 과도한 사용률, 데이터베이스 병목 현상 , SQL 쿼리의 잘못된 동작과 같은 광범위한 성능 관련 데이터 베이스 문제를 자동으로 식별하고 분석한다.
문제에 대한 설루션도 같이 제공한다.
이상 탐지 기능을 사용하여 문제를 찾아낸다.
대기 이벤트 Locks , 이상 현상 상위 SQL 도 찾아낸다.
인덱스 문제도 찾아낸다.
3
DevOps Guru for RDS에서 확인한다.
4
다양한 도구들은 타사의 설루션과도 연결 가능하다.
그라파나, 프로메테우스, OPENTelemetry용 AWS Distor를 사용하여 CLoudwatch , DATADOG, Splunk로 데이터 전송하도록 되어 있다.
<10> 개인 정리
AWS 모니터링 도구?
AWS 관찰 가능성 도구?
Amazon DevOps Guru는 장애 복구 시간을 줄여주는 완전 관리형 기계 학습 기반 서비스
Amazon DevOps Guru for RDS로 데이터 베이스에 대한 분석도 가능하다.
https://brunch.co.kr/@topasvga/2439
감사합니다.