node exporter
ใน แต่ละ servernode exporter เอาไว้ดึงค่าจากตัว hardware ต่างๆภายในเครื่อง เช่น CPU, Memory และอีกหลายๆ อย่างครับ
$ docker run -d --name=node-exporter \
-p 9100:9100 prom/node-exporter:latest
Prometheus
Prometheus เป็น open-source ที่เอาไว้ ใช้ query เพื่อนำมาแสดงค่าต่างๆ ที่เราต้องการแสดง
# section 1
global:
scrape_interval: 5s
external_labels:
monitor: 'node-monitor'
# section 2
scrape_configs:
- job_name: prometheus
static_configs:
- targets: ["127.0.0.1:9090"]
- job_name: node-exporter
static_configs:
- targets: ["<ip server 1>:9100","<ip server 2>:9100","<ip server 3>:9100"]
sh
$ docker run -d --name=prometheus-server \
-v $(pwd)/prometheus.yml:/etc/prometheus/prometheus.yml \
-p 9090:9090 prom/prometheus:latest
หรือ ในที่นี้ใช้ เป็น docker
$ docker run -d \
--name=grafana \
-p 3000:3000 \
-e "GF_SECURITY_ADMIN_PASSWORD=xxx" grafana/grafana
user : admin password : <ที่เราตั้งใน
GF_SECURITY_ADMIN_PASSWORD=xxx
>
data source
prometheus
Dashboard
> แต่ในที่นี้ ผมขอเลือกเป็น template ที่มีใน เว็บ GrafanaGrafana Dashboards - discover and share dashboards for Grafana
เราสามารถ สลับ
datasource
,job
,host
ไปยัง resource อื่นๆ ได้