Programming/클라우드
클라우드 모니터링(리소스, 비용)
Boxya
2025. 5. 16. 00:04
[KT] AIVLE SCHOOL 33일차
모니터링
- 데이터를 수집, 분석 및 사용하는 행위
- 모니터링 목적
- IT 리소스 및 시스템에 대한 여러가지 질문의 답 산출 및 의사 결정
- 매일 몇 명이나 사이트를 방문하고 있는가?
- 시간 경과에 따른 방문자 수를 추적하려면 어떻게 해야 하는가?
- 웹 사이트의 성능 또는 가용성 문제가 있었던 적이 있는가?
- Amazon Elastic Compute Cloud(EC2) 인스턴스의 용량이 부족해지는 것은 아닌가?
- 웹 사이트가 정상 작동하고 있는가?
- 리소스 과다 사용, 애플리케이션 결함, 리소스 구성 오류 또는 보안 관련 이벤트로 인한 운영 문제 감시가능
- IT 리소스 및 시스템에 대한 여러가지 질문의 답 산출 및 의사 결정
메트릭(Metric)
- 리소스가 생성하는 다양한 형태의 데이터 중 모니터링을 통해 수집된 데이터
- 메트릭 예
- 시간 경과에 따라 EC2 인스턴스에서 수집 및 분석되는 메트릭
- 평균 CPU 사용률
- 네트워크 사용률
- 디스크 성능
- 메모리 사용률
- 각종 로그(서버 또는 IT 시스템의 작업, 활동 및 사용 패턴에 대한 정보)
- 시간 경과에 따라 EC2 인스턴스에서 수집 및 분석되는 메트릭
- 메트릭의 다양성
- AWS의 리소스마다 다른 유형의 메트릭 생성
- Amazon Simple Storage Service(Amazon S3) 버킷
- 앞서 살펴본 EC2 인스턴스처럼 CPU 사용률은 없음
- 버킷에 저장된 객체와 관련된 메트릭 (버킷 전체 크기 또는 버킷 내 객체 수 등)
- 버킷에 대한 요청과 관련된 메트릭 (객체 읽기 또는 쓰기 등)
- Amazon Relational Database Service(Amazon RDS)
- 데이터베이스 연결, 인스턴스의 CPU 사용률, 디스크 공간 소비 등
- Amazon Simple Storage Service(Amazon S3) 버킷
- 리소스, 목표 및 상황에 따라 다양한 메트릭이 존재 가능
- AWS의 리소스마다 다른 유형의 메트릭 생성
모니터링의 이점 및 중요성
- 최종 사용자가 운영 문제를 인식하기 전에 사전 대응 가능
- 메트릭을 활용하여 문제 발생 징후를 확인하거나 문제 발생 시 빠른 인식 가능
- 이를 통해 자동 혹은 수동으로 필요한 작업을 수행하여 문제 해결가능
- 리소스의 성능 및 안정성을 개선
- 모니터링은 제대로 수행할 경우 병목 현상과 비효율적인 아키텍처를 확인 가능
- 보안 위협 및 이벤트를 인식
- 시간 경과에 따라 리소스, 이벤트 및 시스템을 모니터링하면 기준선(Base-line: 정상적인 활동을 정의) 생성 가능
- 이를 이용하여 비정상적인 트래픽 스파이크 또는 리소스에 액세스하는 비정상적인 IP 주소와 같은 이상 현상을 발견 가능
- 비즈니스를 위해 데이터 중심의 의사 결정을 수립
- IT 운영 상태를 주시하고 비즈니스 의사 결정 지원
- e.g. 새로운 앱 기능 사용자 수를 통한 투자 여부 판단 가능
- 보다 비용 효율적인 솔루션을 구축
- 사용량이 부족한 리소스를 확인하고 리소스를 사용량에 맞게 조정하여 비용을 최적화 가능
Troubleshooting Process
- 일반적인 문제 발생 시 트러블슈팅 프로세스
- MTTI(Mean Time To Identify) : 문제를 인식하여 원인을 파악하기까지의 시간
모니터링 솔루션
- 리소스의 운영 상태 및 사용량에 대한 데이터를 수집하고 분석하는 방법 필요
- 중앙 집중식 모니터링 필요
- 분산도니 리소스는 메트릭, 로그, 네트워크 트래픽, 이벤트 등을 통해 다양한 데이터를 각각 생성
- 이렇게 분산된 데이터를 중앙집중식으로 모니터링하지 않을 경우 관리가 어려울 수 있음
- 데이터 가시성 확보 필요
- 단순 데이터의 축적만으로는 데이터를 활용하기에 어려움이 있을 수 있음
- 모니터링 솔루션 예
- AWS CloudWatch, Azure Monitor
Billing and Cost Management
- 비용 관점의 Cloud Service 장점
- 사용한 만큼 과금
- 고정된 초기 자본 비용 감소
- 잘못 사용 시 막대한 비용 발생 가능
- e.g. 잘못된 구성, EC2 삭제 시 EBS 볼륨 미 삭제, EIP 연결 해제 후 미 반납
- 매달 PDF invoice 메일 전송 가능
- 비용 관련 경보 설정 가능
- 매일 비용 보고서(Billing reports)를 S3 Bucket에 저장 가능
Cost Explorer
- 시간에 따른 AWS 비용과 사용량을 시각화, 이해 및 관리가 손쉬운 인터페이스 제공
- 비용 및 사용량 데이터를 분석하는 사용자 지정 보고서 작성 가능
- 데이터를 높은 수준으로 분석(예: 모든 계정의 총 비용 및 사용량)하거나 추세를 식별 및 이상 탐지 가능
- 계정에 연결된 요금과 사용량 검토
비용 이상 탐지
- ‘비용 이상 탐지 (Cost Anomaly Detection)’ 활성화 시 통계 및 기계 학습 알고리즘 적용
- 사전 구축된 모니터 또는 사용자 지정 모니터 시작
- 특정 서비스, 연결된 계정, 비용 범주 또는 태그에 대한 모니터 구축 가능
- 이상 지출이 탐지되면 알림 수신
- 사용자 지정 이상 징후 임계값을 정의하고 개별적으로 또는 매일 또는 매주 알림 수신
- 비용 및 사용 급증의 근본 원인 식별
- 과거 사용형태까지 고려한 심층 분석을 바탕으로 발생 원인을 파악
- 결함이 아닌데 결함이 있다고 판정하는 거짓 긍정(False positive) 최소화
- AWS 비용 관리 제품군과 완벽한 통합
- AWS Cost Explorer와 통합되어 일일 비용 추세를 빠르게 시각화하고 가장 중요한 비용을 기준으로 자동 필터링
- 사전 구축된 모니터 또는 사용자 지정 모니터 시작
AWS Budgets
- 비용 및 사용량 모니터링
- 원하는 예산 기간을 일일, 월간, 분기별 또는 연간으로 설정하고 특정 예산 한도를 생성 가능
- 사용자 지정 예산을 설정하여 여러 차원에서 비용 및 사용량을 추적
- 예산 예측 생성 가능(약 5주간의 사용 데이터 필요)
- 예약 보고서 생성
- 실제 또는 예측된 비용과 사용량이 예산 임계값에 어떻게 도달하는지에 대한 정보를 파악 가능
- 임계값 도달 시 작업 실행
- 예산 목표를 초과할 때 자동으로 실행되거나 승인 프로세스를 통해 실행되도록 사용자 지정 작업 설정 가능
- AWS Budgets 유형
- 예산 설정 타입
- 비용에 기반한 예산 생성
- 사용량에 기반한 예산 생성
- Savings Plans 사용률 또는 적용범위에 대한 예산
- 사용률 예산: 사용되지 않거나 사용률이 낮은 지 확인 가능
- 적용범위 예산: 사용하지 않는 인스턴스 수 확인 가능
- 예약 인스턴스(Reserved Instances) 사용률 또는 적용범위 대한 예산
- 사용률 예산: 사용되지 않거나 사용률이 낮은 지 확인 가능
- 적용범위 예산: 사용하지 않는 인스턴스 수 확인 가능
- Amazon EC2, Amazon RDS, Amazon Redshift, Amazon ElastiCache 및 Amazon Elasticsearch 예약에 대해 지원
- 예산 설정 타입
AWS Cost Explorer / AWS Budgets
AWS Cost Explorer | AWS Budgets | |
사용 사례 | 비용 사용 관련 사용자 지정 보고서 | 제한 임계값 초과 비용 발생 방지 |
비용 시각화, 분석 중점 | 비용 계획, 예측, 집행 중점 | |
사용 패턴 파악 | 예산과 지출 비교 |