본문 바로가기
IT KNOWLEDGE

Prometheus(1)

by BTC_오사원 2022. 6. 17.

안녕하세요:) 임오군란과 민씨의 오입니다.

이번 주제는 오픈 소스 기반의 모니터링 시스템인 Prometheus 용어,소개, 특징에 대해 알아보도록 하겠습니다.

 

 

Prometheus의 용어

  • Metric : 시간상 특정 지점에서 시스템의 일부측면을 설명하는 숫자 값. Log와는 달리 주기적으로 보내게 됌. Log는 보통 무언가가 발생했을 때 로그 파일에 추가함. 정기적으로 수집해서 시스템의 추이를 살펴볼 수 있는 정보.
  • PromQL : Prometheus는 사용자가 실시간으로 시계열 데이터를 선택하고 집계할 수 있는 PromQL이라는 기능적 쿼리 언어를 제공
  • TSDB : Time Series DBMS는 time series data를 처리하기 위해 최적화된 데이터베이스 관리 시스템
  • Alertmanager : Alertmanager는 프로메테우스 서버와 같은 클라이언트 응용 프로그램에서 보낸 경고를 처리
  • Expoter : 필요한 매트릭을 수집하고 이를 HTTP 엔트포인트로 프로메테우스에 노출하는 역할

 

 

Prometheus 소개

Prometheus는 원래 SoundCloud에서 구축된 오픈소스 시스템 모니터링 및 경고 툴킷입니다. 2012년 시작된 이래 많은 회사와 조직이 Prometheus를 채택했으며 이 프로젝트에는 매우 활발한 개발자 및 사용자 커뮤니티가 있습니다. 이제 독립 실행형 오픈 소스 프로젝트이며, 어떤 회사와도 독립적으로 유지관리됩니다. 이를 강조하고 프로젝트의 거버너스 구조를 명확히 하기 위해 Prometheus는 Kubernetes에 이어 두 번째 호스팅 프로젝트로 2016년 Cloud Native Computing Foundation에 합류했습니다. Prometheus는 메트릭을 시계열 데이터로 수집하고 저장합니다. 메트릭 정보는 레이블이라는 선택적 키-값 쌍과 함께 기록된 타임스탬프와 함께 저장됩니다.

 

 

Prometheus 아키텍처

Prometheus는 단기 작업에 대해 직접 또는 중간 푸시 게이트웨이를 통해 계측 작업에서 메트릭을 긁습니다. 스크랩한 모든 샘플을 로컬에 저장하고, 이 데이터에 대한 규칙을 실행하여 기존 데이터에서 새 시계열을 집계 및 기록하거나 경고를 생성합니다. Grafana 또는 기타 API소비자를 사용하여 수집된 데이터를 시각화할 수 있습니다.

 

 

Prometheus 특징

  1. 메트릭 이름 및 키/값 쌍으로 식별되는 시계열 데이터가 있는 다차원 데이터 모델
  2. 이 차원을 활용하는 유연한 쿼리 언어인 PromQL사용
  3. 분산 스토리지에 의존하지 않음, 단일 서버 노드는 자율적
  4. 시계열 수집은 HTTP를 통한 풀 모델을 통해 발생
  5. 푸시 시계열은 중계 게이트웨이를 통해 지원
  6. 대상은 서비스 검색 또는 정적 구성을 통해 검색
  7. 여러 모드의 그래프 및 대시보드 지원

 

다음 시간에는 Prometheus의 활용 예제와 주요기능에 대해 알아보도록 하겠습니다.

댓글