DB & AWS Knowledge
Prometheus (프로메테우스) 개요 본문
728x90
반응형
이 페이지에서는 현재 오픈소스 DB 에서 자주 쓰이는 모니터링 툴중 하나인 프로메테우스에 대해서 다룬다.
(출처 : https://prometheus.io/docs/introduction/overview/)
프로메테우스란?
음원 스트리밍 사이트인 SoundCloud 에서 제작한 오픈소스기반 모니터링 툴이다. 2012년 부터 타 회사 및 조직에서 해당 툴을 도입하기 시작하여 2016 년에 클라우드 기반 소프트웨어의 생태를 조성하기 위해 만들어진 클라우드 네이티브 소프트웨어 재단 - Cloud Native Computing Foundation (CNCF) 에 쿠버네티스 다음으로 공식 프로젝트로써 등록되게 되었다.
특징 (Features)
프로메테우스는 아래와 같은 특징을 가지고 있다.
- 메트릭 혹은 key/value 기반의 데이터를 일련의 시간과 조합하여 다차원적인 데이터 모델을 만든다
- DB 언어인 SQL 처럼 프로메테우스는 툴 사용, 커스터마이징을 할 때 PromSQL 이라는 언어를 제공 한다.
- 서버 자체에 할당된 스토리지에 필수적으로 의존하지 않는다.
- HTTP 로 송신되는 모델에 기반하여 일련의 시간단위의 데이터를 수집한다.
- 내부 게이트웨이 (intermediary gateway) 를 통해 데이터 수집 시간 흐름을 조절 할 수 있다.
- 서버 탐지 혹은 통계 수집 설정을 통하여 수집 대상 서버들이 모니터링 대상에 등록된다.
- 다양한 시각적, 대쉬보드 형태의 수집 형식을 지원한다.
구성요소 (Components)
프로메테우스는 사용자가 원하는 용도에 따라 구성요소들을 선별하여 사용 할 수 있다.
아래의 요소들은 프로메테우스를 사용할 때 선별할수 있는 요소들이며, 이중 다수는 부가요소로 용도에 따라 사용하지 않을 수도 있다.
- 메인 Prometheus 서버 : 시간단위 데이터를 수집하고 보관하는 공간
- 클라이언트 라이브러리 : 어플리케이션 코드를 적용하기 위해 사용하는 영역
- 푸시 게이트웨이 (push gateway) : 보존주기가 짧은 작업들을 관리하는 영역
- 다목적 exporters : 수집하려는 app, code, infra 등의 환경에 맞게 모니터링 데이터를 취합하는 영역
DB 뿐만 아니라 구성에 따라 APP 부터 인프라까지의 모든 요소들을 모니터링 할 수 있다.
각 요소들을 모니터링 하려면 각 요소에 맞는 exporter 를 설치 해야 한다.
예를 들어 MySQL 의 모니터링 데이터를 취합하기 위해서는 해당 DB 서버에 mysqld_exporter 를 사용해야 한다. - 알림 메니저 (alertmanager) : 모니터링 중 관리자들에게 이상여부를 알리기 위해 사용하는 영역
메일, 문자등의 알림 수단을 설정 할 수 있다. - 기타 다수 지원 툴들
아키텍처
프로메테우스의 공식아키첵처는 아래와 같다. 여기서 구성요소는 사용자의 커스터마이징에 따라 달라 질 수 있다.
반응형
'DB 관련 지식 > DB 연관 IT 개념' 카테고리의 다른 글
3 계층 (3 Tier) 구조 (0) | 2021.08.05 |
---|---|
고가용성 (H.A - High Availability) (0) | 2021.06.08 |
백업 (Backup) 개념 및 종류 (0) | 2021.06.02 |
PMM (Percona Monitoring and Management) (0) | 2021.05.28 |
버퍼 (Buffer) & 캐시 (Cache) (0) | 2021.03.18 |
Comments