Prometheus - Grafana 설치했던 링크
2024.11.15 - [Monitoring] - Prometheus - Grafana 설치 (Helm 차트)
Prometheus - Grafana 설치 (Helm 차트)
이번에는 Helm 을 사용하여 Prometheus와 Grafana를 설치해보도록 하겠습니다. https://artifacthub.io/먼저 helm 차트 홈페이지에 들어가서 kube-prometheus-stack 검색 해줍니다. Helm repo 추가를 해줍니다.# helm re
ksh-cloud.tistory.com
앞선 링크의 글에선, Prometheus와 Grafana를 설치해보았습니다.
이제 어떻게 활용이 되는지 알아보도록 하겠습니다.
구성은 아래의 이미지와 같이 할 예정 입니다.
telegraf 설치
telegraf란?
데이터베이스, 시스템 등 메트릭 및 이벤트를 수집하고 전송하기 위한
플러그인 중심 서버 에이전트 입니다.
우선 CPU, Memory 등의 자원의 사용량을 알아보기 위해
모니터링 하고 싶은 서버에 telegraf를 설치 해줍니다.
저는 Docker를 사용하여 telegraf를 설치하였습니다.
telegraf.conf 파일에 prometheus 설정을 안해주고,
실행을 하면 컨테이너가 바로 종료 됩니다.
그래서 telegraf.conf 파일이 있는 디렉터리을 volume 설정 해주고,
설정 값을 변경 해준 후에 다시 telegraf 컨테이너를 재시작 해줍니다.
과정은 아래와 같습니다.
# docker run -itd --name telegraf -p 9273:9273 -v telegraf:/etc/telegraf telegraf
# cd /var/lib/docker/volumes/telegraf/_data
# vi telegraf.conf
----------------------------------
[[outputs.prometheus_client]]
listen = ":9273"
----------------------------------
# docker restart telegraf
telegraf.conf에 설정을 추가하고 다시 컨테이너를 실행해주면 정상적으로 실행이 됩니다.
telegraf <-> Prometheus 연결
앞서 저는 helm 차트를 사용해서 Prometheus와 Grafana를 구성하였습니다.
따라서 Prometheus에서 바뀌는 설정이 있으면,
vaules.yaml 파일에 내용을 수정해서 적용을 하였습니다.
일반적으로는, prometheus.yml 파일의 내용을 수정해주면 됩니다.
vi values.yaml
------------------------------------
additionalScrapeConfigs:
- job_name: "<원하는 이름으로 설정>"
static_configs:
- targets: ["<telegraf를 설치한 서버의 IP>:9273"]
------------------------------------
ex)
------------------------------------
additionalScrapeConfigs:
- job_name: "NTP-telegraf"
static_configs:
- targets: ["10.10.91.201:9273"]
------------------------------------
해당 설정을 추가해주고 helm upgrade 명령을 입력해주면 적용 됩니다.
# helm upgrade monitor prometheus-community/kube-prometheus-stack -f values.yaml
이제 Prometheus 대시보드에서 확인해보겠습니다.
상단 메뉴에서 Status -> Targets 클릭
보면 telegraf를 설치한 서버로부터 정상적으로 메트릭을 받아오는 것을 확인 할 수 있습니다.
Prometheus <-> Grafana 연결 후 대시보드 생성
먼저 Grafana 대시보드에 접속 로그인해서
왼쪽 메뉴 -> Connections -> Add new connection -> 검색 창에 prometheus 검색 -> Prometheus 아이콘 클릭
중간의 Connection 항목에 Prometheus의 IP or DNS 명:Port 정보를 입력해줍니다.
http://<설치한 Prometheus의 IP>:<Port>
이제 대시보드를 생성해주겠습니다.
왼쪽 메뉴 -> Dashboards -> New -> New dashboard 클릭
Label filiters에서 왼쪽 상자에는 job으로 설정
오른쪽 상자는 앞서 설정한 job_name을 클릭해주면 됩니다.
그리고 Metric에서 원하는 메트릭 값을 설정 후 Run queries 클릭 해주면,
메트릭 값이 그래프로 나옵니다.
저는 cpu_usage_idle 메트릭 값을 보이도록 설정하였습니다.
그리고 Run queries 클릭
그러면 아래 이미지와 같이 그래프가 나옵니다.
그리고 상단의 Save dashboard를 클릭하여 대시보드를 생성해주면 됩니다.
이렇게 telegraf에서 Prometheus로 메트릭을 전달하고,
전달 받은 메트릭 값을 Grafana에서 대시보드로 생성하여 모니터링 해줍니다.
이상 입니다.
'Monitoring' 카테고리의 다른 글
Prometheus - Grafana 설치 (Helm 차트) (0) | 2024.11.15 |
---|---|
ELK 연결 구성 (filebeat 포함) (4) | 2024.09.24 |
filebeat 설치 해보기 (0) | 2024.09.13 |
Docker 사용하여 ELK 설치 (Elasticsearch, Logstash, Kibana) (2) | 2024.09.11 |