본문 바로가기

prometheus

(3)
percona rds-exporter AWS API throttling issue 1. 배경 현재 재직 중인 회사에서는 오픈소스인 percona 사의 rds-exporter (https://github.com/percona/rds_exporter) 를 이용하여 RDS 의 enhanced monitoring 지표 (OS 지표) 를 수집하고 있다. 하지만 하나의 account + region 에 종속된 instance 가 많아질수록 API throttling 에러가 발생하며 지표 수집에 실패하는 빈도가 잦아졌다. 그래서 해당 이슈에 대한 원인 파악과 함께 대응 방안을 수립하기 시작했다. 2. 기존 방식의 문제점 1) API throttling 이 발생한 원인 rds-exporter 는 CloudWatch Logs 에 속한 Log stream 중 하나인 "RDSOSMetric" 을 Filt..
rds_exporter API Call 비용 이슈(+ Customizing) 1. 배경 Amazon RDS 를 사용하게 되면 mysqld_exporter 를 통해 mysql 에 대한 정보를 가져올 수는 있으나, OS 정보 수집을 위해서는 rds_exporter 를 통해서 가져와야한다. RDS 의 Monitoring Enhanced 를 enable 시켰을 경우 rds_exporter 에서는 대략 인스턴스 당 400~500개의 메트릭을 수집하게 된다. 아주 deep 하게 보면 필요한 지표들도 있겠지만, 대부분은 비용을 소모하면서까지 수집할 필요가 없는 지표들이다. 2. 문제점 1) 쓸모 없는 metric RDS Exporter 가 scrap 하는 지표들은 CloudWatch 에 쌓인 정보들을 scrap 하는 형태이고, amazon manual 을 살펴보면 scrap 할 경우 지표 당..
Grafana 지표 값이 뭉개지는 문제 (+ Customizing) 1. 배경 grafana 는 Source DB (ex. prometheus, influx, etc.. ) 들에 쌓인 데이터를 파싱하여 Visualizaion 해주는 tool 이다. 모니터링 시에 Time Range 에 따라 원하는 Range 의 지표 값들을 볼 수 있다. data 를 가져오는 것은 grafana 를 통해 각 Source DB 에 요청을 하지만, 가져온 data 지표들을 grafana page 에 visualization 을 해주는 것은 웹 브라우저가 하게 된다. 따라서 step 을 짧게 가져가서, time slot 이 너무 많게 되면 웹 브라우저 Client Side 에 과부하를 유발할 수 있다. 그래서 grafana 는 prometheus 등에 data 지표들을 요청할 때 Time Ra..