Prometheus
: SoundCloud사에서 만든 오픈소스 시스템 모니터링 및 경고 툴킷
: 현재는 독립형 오픈소스 프로젝트로 쿠버네티스 등에서 대시보드 기능을 위해서 많이 활용
: kubernetes에 이어 두 번째로 CNCF(Cloud Native Computing Foundation) 산하 프로젝트로 편입됨
: 메트릭 수집, 시각화, 알림, 서비스 디스커버리 기능을 모두 제공
- 기능
: 풀 방식의 메트릭 수집, 시계열 데이터 저장
: PromQL을 활용하여 저장된 시계열을 쿼리 및 집계
: 서비스 디스커버리
: 데이터 시각화
※ 메트릭
: 키 값 쌍으로 캡쳐된 단순한 숫자 측정
: 대시보드를 볼 때 특정 수치들을 그래프로 보여주는 일종의 시각화
=> 데이터들을 시각화 하여 보여주는 툴
※ 대시보드
: 여러 종류의 데이터를 통합하여 모든 사람이 이해할 수 있는 방식으로 핵심 메트릭과 인사이트를 표시하고
백엔드 데이터에 엑세스할 권한 여부를 표시하는 화면
- 활용
: 프로메테우스가 제공하는 웹 뷰를 통해 테이블 및 그래프 형태로 확인
: 데이터 시각화 도구인 Grafana와 연동하여 시각화
프로메테우스의 아키텍처
- Jobs/exporters
: 실제 메트릭을 수집하는 프로세스
- /metrics
: HTTP 통신을 통해 메트릭 데이터를 가져갈 수 있도록하는 엔드포인트
- Prometheus server
: exporter의 엔드포인트로 HTTP GET 요청을 하여 매트릭 정보를 수집(pull)하는 서버
프로메테우스를 사용하기 적합한 일
: 메트릭 기반의 시계열 데이터 저장
: 동적 혹은 마이크로 서비스의 인스턴스에 대한 메트릭 수집
프로메테우스를 사용하기 적합하지 않은 일
: 이벤트 로그나 개별 이벤트를 저장 하는 일
: 이메일 주소 / 사용자 이름과 같이 카디널리티가 높은 데이터를 저장하는 일
: 100%의 정확성이 요구되는 일
※ 카디널리티
- 높으면
: 중복도가 낮은 데이터
- 낮으면
: 중복도가 높은 데이터
Refference
'InfraStructure > Prometheus' 카테고리의 다른 글
[프로메테우스] 그래픽카드 메트릭 수집 (엔비디아 / AMD) (0) | 2023.06.07 |
---|---|
[프로메테우스] exporter의 개념과 종류 (0) | 2023.06.06 |