본문 바로가기

AWS(Amazon Web Service)12

Prometheus Architecture Prometheus 와 Grafana 란? Prometheus : 오픈 소스 기반의 모니터링 시스템으로 Alerting을 지원. Grafana : 오픈소스 매트릭 데이터 시각화 도구로 메트릭(Metric) 분석 플랫폼 보통, Prometheus 와 Grafana 가 같이 언급되는데 Prometheus 가 대상 시스템(Target System) 들에서 필요한 모니터링 지표를 수집하여 저장하고 Grafana 에서 이를 시각화(Visualization)한다. Prometheus 오픈 소스 기반의 모니터링 시스템으로 각종 모니터링 지표를 수집하여 저장하고 검색할 수 있는 시스템이다. 현재 Kubernetes 상에서 가장 많이 사용하는 오픈 소스 기반 모니터링 시스템이며, 간단한 텍스트 형식으로 메트릭(Metri.. 2022. 10. 30.
[Prometheus/Shell script] node exporter 와 mysqld exporter 설치 Docker 에서 node exporter 를 실행하는 것은 권장하지 않는다는 글을 본 적이 있다. Docker의 경우, 머신의 내부동작과 컨테이너를 격리시키려고 하기 때문에 노드 익스포터에서 내부 동작 결과가 작동하지 않을 수 있다는 이유 였다. 그래서 직접 node exporter 와 mysqld exporter 를 설치하는 과정을 Shell script로 작성해보았다. [ 사전 준비 ] - mysql 설치 node exporter #!/bin/bash wget https://github.com/prometheus/node_exporter/releases/download/v0.18.1/node_exporter-0.18.1.linux-amd64.tar.gz tar -xvf node_exporter-0... 2022. 6. 23.
[AWS] CLI 설치 1. CMD창을 열고 아래 명령어를 입력한다. msiexec.exe /i https://awscli.amazonaws.com/AWSCLIV2.msi 2. 환경 변수 등록 - [Windows] + [Pauese] 키 입력 후 - 고급 시스템 설정 - 환경 변수 3. 재부팅 4. 설치 확인 aws --version 5. aws configure 생성해 둔 보안 액세스 키와 비밀 액세스 키, Region 을 입력한다. aws configure AWS 액세스 키 ID, AWS Access Key ID 액세스 키의 ID 값을 지정합니다. AWS 시크릿 액세스 키, AWS Secret Access Key 액세스 키의 ID 값애 대응하는 시크릿 키를 지정합니다. 시크릿 키는 오직 발급하는 시점에만 확인할 수 있습니다.. 2021. 12. 2.
[AWS] Prometheus+Grafana+cAdvisor 설치 Prometheus+Grafana+cAdvisor Container 들을 Monitoring 하기 위해 각 인스턴스에 cAdvisor 를 추가 설치하여 Prometheus에서 Metric을 수집할 수 있도록 한다. node_exporter의 metric 수집용 prometheus와 cAdvisor의 metric 수집용 prometheus 두 개를 띄운다. 먼저 Grafana+Prometheus server에 디렉토리 생성 후, prometheus 설정 파일 2개를 만든다. 만든 설정 파일을 바탕으로 node_exporter와 cAdvisor 용으로 prometheus 컨테이너 2개를 각각 띄우고 Grafana를 올린다. /Prometheus/prometheus.yml mkdir /Prometheus cd.. 2021. 11. 19.
[AWS] Prometheus+Grafana 설치 (2) 앞에서 AWS EC2 인스턴스 2개에 대하여 각각 Prometheus, node-exporter 설치하였다. [AWS] Prometheus+Grafana 설치 (1) https://haengsin.tistory.com/34 [AWS] Prometheus+Grafana 설치 (2) 앞 장에서 AWS EC2 인스턴스 2개에 대하여 각각 Prometheus, node-exporter 설치 https://haengsin.tistory.com/category/AWS%28Amazon%20Web%20Service%29/Prometheus%2BGrafana 'AWS(Amazon Web Service)/Promet.. haengsin.tistory.com Grafana 설치 $ docker run -d --name=gr.. 2021. 11. 17.
[AWS] Prometheus+Grafana 설치 (1) Prometheus Server는 Expoter가 열어놓은 HTTP 엔드포인트에 접속해서 Metric을 수집한다. (Pull) Prometheus Server에 Grafana를 연동해서 대시보드 등의 시각화를 한다. 알림을 받을 규칙을 만들어서 Alert Manager로 보내면 Alert Manager가 규칙에 따라 알림을 보낸다. Prometheus란? . SoundCloud 사에서 만든 오픈소스 시스템 모니터링 및 경고 툴킷이다. Kubernetes 에서도 Prometheus를 사용하여 매트릭 수집 및 대시보드 구축하는 방식을 장려하고 있다. (Prometheus Architecture) Prometheus targets : Jobs/exporters 는 실제로 매트릭을 수집하는 프로세스이다. 이 e.. 2021. 11. 16.
[AWS] CloudWatch, Web Application Monitoring CloudWatch, Web Application Monitoring (요약) ALB: 로드 밸런서에서 생성된 5XX 오류 ALB: EC2 인스턴스에서 실행 중인 애플리케이션에서 발생하는 5XX 오류 ALB: 로드 밸런서에서 EC2 인스턴스에서 실행되는 애플리케이션까지의 지연 시간 ALB: 로드 밸런서의 과부하로 인해 거부된 연결 RDS: 여유 저장 공간 SQS: 작업 대기열에서 가장 오래된 메시지의 수명 SQS: 배달 못한 편지 대기열의 메시지 수 1. ALB(Application LoadBalancer) Monitoring (1) 서버 오류(5xx) 5xx 응답 상태 코드는 서버가 들어오는 요청에 응답할 수 없음을 의미한다. 일반적으로 5xx 오류는 고객에게 오류 메시지를 표시한다. 5xx 서버 오류.. 2021. 11. 8.
[AWS] CloudWatch, EBS Monitoring 지표 CloudWatch, EBS Monitoring ※ Metirc의 임계값은 약 1주일의 데이터를 살펴본 후 평균 최고치와 최저치를 결정. 모니터링 시 유용한 지표 (1) VolumeReadOps 및 VolumeWriteOps (Sum 집계) 볼륨의 읽기 및 쓰기 작업 수를 측정한다. 대부분의 경우 디스크 읽기가 약간 급증할 수 있다. IOPS 한도에 경고 (VolumeReadOps + VolumeWriteOps) > 한도의 90% (2) VolumeTotalReadTime 및 VolumeTotalWriteTime (Sum 집계) 각 VolumeTotalReadTime 와 VolumeTotalWriteTime 의 지표 자체는 중요하지 않지만 볼륨의 디스크 대기 시간을 계산하는 데 사용할 수 있다. ( Vo.. 2021. 11. 8.
[AWS] CloudWatch, EC2 Network Monitoring CloudWatch EC2 Network Monitoring 네트워크 사용률을 모니터링하여 EC2 또는 RDS의 병목 현상을 방지한다. 아래 인스턴스 EC2 네트워크 성능 치트 시트를 참고하여 모니터링을 위한 임계 값을 설정할 수 있다. https://cloudonaut.io/ec2-network-performance-cheat-sheet/ 각 EC2 인스턴스는 CloudWatch에 다양한 지표를 보고한다. 이중에 인스턴스가 모든 네트워크 인터페이스에서 수신한 바이트 수를 측정하기 위해 Metric 2개 NetworkIn 과 NetworkOut 을 수집하여 계산해야 한다. 1. CloudWatch 지표 - [CloudWatch] > [경보] > [모든 경보] > [경보 생성] - EC2 지표 중 Netw.. 2021. 11. 8.
[AWS] CloudWatch, CloudFront 모니터링 CloudWatch 지표 및 경보로 CloudFront 모니터링 (프로세스) 1. Architecutre를 이해하고 사용된 AWS 서비스를 식별. 2. CloudFront 세부 모니터링 활성화 3. 문제가 있는 시스템을 파악하는 데 가장 적합한 CloudWatch 지표를 선택. 4. 지표가 정상 범위 내에 있는 지 관찰할 수 있도록 CloudWatch 경보를 생성. 5. CloudWatch 경보가 임계값을 벗어난 지표를 감지하는 경우 알림을 받음. 1. Architecutre - CloudFront : CDN(Content Delivery Network) - S3, ELB : Data Content CloudWatch는 서비스들의 metric들을 수집하여 자동으로 보고해야 한다. 2. CloudFront.. 2021. 11. 4.
[AWS] EC2에 CoudWatch Agent 설치 CloudWatch Agent CloudWatch는 AWS 사용자들을 위해서 애플리케이션이나 시스템 성능에 대하여 전반적으로 확인하여 변경 사항에 대응할 수 있는 모니터링 시스템이다. AWS 뿐만 아니라 온-프레미스 서버에서 관리되는 애플리케이션이나 시스템 성능 또한 수집이 가능하다. 문제나 장애 발생 시 경보(Alert)를 설정하여 알림을 받을 수 있고 지표를 시각화하여 한 눈에 파악할 수 있으며 자동화된 작업 수행이 가능하다. CloudWatch는 기본적으로 모니터링 가능한 다양한 지표가 제공된다. 그러나, CloudWatch에서 인스턴스의 기본적인 메모리, 디스크 사용률에 대한 지표를 제공하지 않기 때문에 서버에 CloudWatch Agent를 설치하여 더 안정적으로 모니터링하는 것이 필요하다. I.. 2021. 11. 1.
[AWS] Cloud Watch, Cloud Trail [Cloud Watch] : 모니터링 및 관찰 기능 서비스 > Porformance Check 애플리케이션을 모니터링하고, 시스템 전반의 성능 변경 사항에 대응하며, 리소스 사용률을 최적화하고, 운영 상태에 대한 통합된 보기를 확보하는 데 필요한 데이터와 실행 가능한 통찰력을 제공. (1) Log - AWS 내외의 로그를 모아 보관하고 사용자에게 전달 - 주요 서비스들에 대한 모니터링(로그, 메트릭 등) 제공 EC2, Autoscaling Groups, ELB, Route 53 CloudFront, EBS, Storage Gateway 등등 - 주요 서비스의 출력 결과 기록 (Lamba 등) - 사용자가 직접 로그 그룹을 만들어 외부로부터 로그를 적재 가능 주로 온프레미스의 로그를 저장 및 사용 - 로그.. 2021. 10. 8.