본문 바로가기

카테고리 없음

[Monitoring] Prometheus 개념 -에티버스러닝

마지막 프로젝트를 진행하면서 모니터링 툴에 대해 공부한 걸 작성한 글이다. 

(K-Digital Training의 하이브리드 클라우드 엔지니어 교육을 애티버스러닝에서 수강 중이다.)

 

아직 정리가 덜 되었다. 프로젝트를 진행하면서 내용을 계속 추가할 예정이다. 


 

Prometheus 개념

metric을 저장하고 관리하는 오픈 소스 모니터링 툴이다.

데이터와 metric 을 저장하고 애플리케이션의 성능 및 상태 모니터링을 제공한다.

쿠버네티스의 메인 모니터링 시스템으로 많이 활용된다.

 

Pull 방식을 사용한다. 

Pull VS Push
Pull: 서버가 필요할 때 클라이언트에 접근해서 데이터를 수집하는 방식
Push: 클라이언트가 데이터를 수집해서 서버로 보내면 서버가 모니터링 상태를 보여주는 방식 

 

 

 

 

구성

 

 

1. Jobs/exporters

- Job

모니터링할 instance들을 묶어놓은 것이 Job이다.

Group은 일부만 모니터링해서 상태를 보기 위해 구분짓는 것이다. 

Prometheus.yml 파일을 아래의 코드로 수정하여 설정할 수 있다. 

- exporter

모니터링 대상(instances)으로부터 metric을 수집해준다. 

http 통신을 통해 metric 데이터를 가져 수 있게 /metric 이라는 http endpoint를 노출시킨다. 

 

 

2. Prometheus Server

 

Retrieval 

데이터 수집을 총괄한다 

 

 

 

설치

1. 다운로드

https://prometheus.io/download/

공식 홈페이지에서 prometheus를 다운 받는다. 

 

2. 설정 파일 수정 

 

3. 설정 파일 지정