본문 바로가기
MISC

Grafana로 모니터링 시스템 구축하기

by hygoni 2021. 11. 18.

저번에 구축한 오드로이드 홈서버에 Grafana로 모니터링 시스템을 구축해보려고 한다. 배포판은 Armbian (데비안)이다.

구성

Grafana: 모니터링 시스템

Prometheus: Grafana의 데이터 소스로 사용할 시스템으로 node_exporter로부터 모니터링 데이터를 수집

node_exporter: 각종 모니터링 데이터를 보여준다.

node_exporter 설치

# node_exporter 다운로드
# 여기선 오드로이드에 설치할거라 ARM이지만 아니라면 따로 받아야함
# 링크 : https://prometheus.io/download/#node_exporter
$ wget https://github.com/prometheus/node_exporter/releases/download/v1.2.2/node_exporter-1.2.2.linux-arm64.tar.gz
$ tar -xvf node_exporter-1.2.2.linux-arm64.tar.gz 
sudo cp node_exporter-1.2.2.linux-arm64/node_exporter /usr/local/bin
# node_exporter 서비스 생성 
$ sudo vi /etc/systemd/system/node_exporter.service
[Unit]
Description=Node Exporter
Wants=network-online.target
After=network-online.target

[Service]
User=root
Group=root
Type=simple
ExecStart=/usr/local/bin/node_exporter

[Install]
WantedBy=multi-user.target
# 서비스 활성화
$ sudo systemctl daemon-reload
$ sudo systemctl enable node_exporter
$ sudo systemctl start node_exporter

여기까지 하면 http://localhost:9100/metrics에 각종 모니터링 데이터들이 보여야한다.

Prometheus 설치

$ sudo apt install -y prometheus

이건 설치가 훨씬 간단하다. 이제 http://localhost:9090에서 각종 지표로 그래프를 그릴 수 있다.

Grafana 설치

$ sudo apt-get install -y apt-transport-https
$ sudo apt-get install -y software-properties-common wget
$ wget -q -O - https://packages.grafana.com/gpg.key | sudo apt-key add -
$ echo "deb https://packages.grafana.com/oss/deb stable main" | sudo tee -a /etc/apt/sources.list.d/grafana.list
$ sudo apt-get update
$ sudo apt-get install -y grafana

이제 https://localhost:3000로 Grafana에 접속할 수 있다.

초기 아이디 / 비밀번호는 admin / admin이다.

Prometheus를 Data Source로 추가

Dashboard 생성

대시보드를 처음부터 만들긴 어려우므로 + 버튼에서 Import를 해보자.

여기선 Node Exporter Full (1860)이라는 대시보드를 불러와본다.

 

Node Exporter Full dashboard for Grafana

Data visualization & monitoring with support for Graphite, InfluxDB, Prometheus, Elasticsearch and many more databases

grafana.com

1860입력 후 Load 클릭
Prometheus는 위에서 만든 것으로 골라준다.

이제 기본적인 CPU / Memory / Network / Disk Space 등등 다양한 지표를 모니터링할 수 있다.

 

반응형

댓글0