모니터링 시스템은 크게 Pull/Push 방식이 있다.Push: 데이터를 가진 곳에서, 필요한 곳으로 보내준다.Pull: 데이터가 필요한 곳에서, 가진 곳에 접속하여 데이터를 긁어간다.메트릭은 중앙에서 정의되고 할당된 에이전트에 푸시된다.수집된 데이터는 에이전트가 중앙
개발 중인 서비스의 모니터링을 위해, 모니터링 기능을 구현하게 됐다.모니터링 기능을 제공하기 위한 데이터 수집 오픈소스를 찾다보니 아래 3가지 방안 중 선택을 하게 됐다.시각화는 따로 구현할 예정이라, 시각화 도구는 고려 대상에서 제외됐다.수집: Telegraf저장:
수집하려는 대상 서버에 Exporter를 설치하여, Prometheus 중앙 서버에서 메트릭을 수집한다. 수집하려는 데이터에 따라 여러 Exporter가 서드파티앱으로 존재한다. MySQL exporter \- https://github.com/prome
Local filesystem: 일반적인 chunk 블록 파일로 저장In-Memory: WAL(write ahead logging) 파일 & In-memory Buffer프로메테우스는 레코드 수집시, 해당 데이터를 In-Memory로 저장하고 있다가 주기적으로 데이터를
PromQL은 prometheus query이다. 본 포스트에서는 PromQL을 사용하기 위한 기본 개념들을 정리하고자 한다. Time Series Time series란 시간에 따른 값 변화를 말한다. prometheus의 데이터는 [시간, 값], [시간, 값] 으
조대협 님의 Thanos 관련 블로그https://bcho.tistory.com/1375
1. 다운로드 https://prometheus.io/download/ 2. OS 설정 1) 압축해제 tar -xvf prometheus-2.35.0-rc0.linux-amd64 ####)
초기 설치시 기본적으로 global, rule_files, scrape_configs 항목이 있다.global: 전역에 적용되는 룰scrapte_interval: 타겟으로부터의 수집 주기evaluation_interval: rule evaluation 주기prometh
Prometheus에서 발생하는 알람을 실제 사용자에게 전달하기 위해서는 alertmanager라는 Third-Party App을 사용해야 한다.https://github.com/prometheus/alertmanageruseradd 옵션\-m: 홈디렉토리 생
https://prometheus.io/download/https://github.com/prometheus/mysqld_exporter
Prometheus에는 Service Discovery라는 기능이 있다.해당 기능은 scrape할 타겟의 리스트들을 변경하는 기능이다.SD 기반 방식은 아래와 같이 있다.DNS 기반 SDDNS에 query 결과를 기반으로 타겟들을 정의하여 scrapeFile 기반 SD
bcrypt를 통해 해싱된 패스워드를 yaml 형식의 웹 컨피그 파일에 지정하여 동작시킨다.config yaml파일은 --web.config.file 플래그를 통해 서비스 시작시 적용시킬 수 있다.web.yml작성된 config validation서비스 실행
Prometheus를 사용하면, 사용자 요구에 따라 다양한 통계 데이터들을 수집해 제공해야한다. 그리고 가끔씩은, 수집할 데이터가 명확하지 않은 상황에서 요구사항만 존재하는 경우가 있다. 또는 수집할 데이터가 명시되었어도, 데이터를 가공하여 제공하는 경우가 생긴다.