Grafana 외부 서버의 데이터를 가져오기 - prometheus-node-exporter 강의이야기 | Posted on 2022. 2. 13. 18:57
이번에는 grafana 가 깔린 서버가 아닌, 외부 서버의 prometheus-node-exporter 의 데이터를 가져오는걸 해보겠습니다.
작업 환경은 Ubuntu 20.04 입니다.
Grafana 설치글과 동일하게 ufw (방화벽) 설정은 꼭 확인하시기 바랍니다.
일단 prometheus-node-exporter 를 설치합니다.
sudo apt install -y prometheus prometheus-node-exporter
설치가 완료돼었다면, 아래의 주소로 들어가봅니다.
http://{Your Prometheus Node Exporter IP}:9100/metrics
위의 주소로 들어가면 아래와 같은 텍스트들이 마구 나옵니다.
이런 데이터가 보이면 정상적으로 동작하고 있는겁니다.
그러면 Grafana 가 설치됀 서버로 접속해서, prometheus 설정 파일을 엽니다.
sudo vi /etc/prometheus/prometheus.yml
파일을 열고서, job 을 아래와 같이 수정합니다.
- job_name: node
# If prometheus-node-exporter is installed, grab stats about the local
# machine by default.
static_configs:
- targets:
- 'localhost:9100'
# test server
- '{Prometheus Node Exporter IP}:9100'
relabel_configs:
- source_labels: ['__address__']
regex: 'localhost:91[0-9]+'
target_label: instance
replacement: 'Grafana'
- source_labels: ['__address__']
regex: '{Prometheus}\.{Node}\.{Exporter}\.{IP}:91[0-9]+'
target_label: instance
replacement: 'Test'
저는 테스트 용도로 현재 글을 작성중이기 때문에, Test 라고 이름지었습니다.
prometheus 설정이 바뀌었으니, 서비스를 재시작합니다.
sudo service prometheus restart
간간히 오래걸리면서 재시작이 느릴때가 있는데, 그럴때는 그냥 오류 무시하고 다시 시도하시면 빠르게 재시작 됍니다.
(심지어는 오류떴다고하고서, 실행돼고있는 경우도 있;;)
이제 prometheus 서버로 접속해서 확인해봅니다.
http://{Your Master Prometheus IP}:9090/targets
타겟에서 확인을해보면, 설정한게 추가됀것을 알 수 있습니다.
정상적으로 데이터를 가져오고 있다고 표시돼고 있습니다.
Grafana 대시보드에서 확인을해보면, Host 에 외부서버 Test 가 추가됀것이 확인돼고, 해당 Test 를 클릭하면, Test 의 서버 모니터링이 보여지게 됍니다.