การ Monitor Server ต้องใช้ Node Exporter เป็นตัวส่งข้อมูลมายัง Prometheus
จากนั้นให้ Grafana ไป Connect Datasource จาก Prometheus เพื่อนำข้อมูลมาแสดงผลเป็น Dashboard
* Source Folder [prometheus_grafana_node-exporter]
1. ติดตั้ง Prometheus
Copy source ไฟล์ทั้งหมดไปวางใน /opt/prometheus_grafana
แก้ไขไฟล์ prometheus.yml
global:
external_labels:
monitor: test-monitor
scrape_interval: 60s
scrape_configs:
- job_name: prometheus
static_configs:
- targets: ['<PROMETHEUS_IP>:9091']
- job_name: node-exporter
static_configs:
- targets: ['<TARGET_1>:9101']
labels:
instance: <monitoring_1>
- targets: ['<TARGET_2>:9101']
labels:
instance: <monitoring_2>
PROMETHEUS_IP: IP address ของเครื่องที่ติดตั้ง Prometheus
TARGET_1: เครื่องที่ลง Node-Exporter ที่ต้องการ monitor
monitoring_1: ชื่อที่จะแสดงใน Grafana
Run Prometheus ด้วยคำสั่ง
docker-compose up -d
สามารถเข้าไปดู status ของ prometheus ผ่าน URL
http://<IP_ADDRESS>:9091
2. ติดตั้ง Node-Exporter
Remote ไปยังเครื่องที่ต้องการ monitor
Run Node-Exporter ด้วยคำสั่ง
docker run -d --name=node_exporter --restart always -p 9101:9100 prom/node-exporter:latest
3. ติดตั้ง Grafana
Run Grafana ด้วยคำสั่ง
docker run -d --name=grafana --restart always -p 3000:3000 grafana/grafana
เข้าใช้งาน Grafana ผ่าน
http://<ip_address>:3000
username / password default คือ admin/admin
4. การใช้งาน Grafana
สร้าง Datasource
โดยไปที่เมนู Connections > Add new connection > เลือก Prometheus
ในช่อง Prometheus server URL ให้ใส่ IP address จาก config ข้างบน (<PROMETHEUS_IP>:9091)
กด Save & Test
Import Dashboard
ไปที่เมนู Dashboard > เลือก New > Import
จากนั้นไปที่เว็บ Grafana Dashboard เพื่อเลือก Template Dashboard ที่ต้องการใช้งาน
กด Copy ID to clipboard
จากนั้นนำมาวางในช่อง import dashboard และกด Load
ในหน้า Import dashboard ให้เลือก Prometheus datasource ที่ setup ไว้ จากนั้นกด Import
จะได้หน้าจอ Dashboard ดังภาพ