我尝试用Grafana在Prometheus上显示数据
普罗米修斯
- 初期設定
global:
external_labels:
monitor: 'codelab-monitor'
rule_files:
scrape_configs:
- job_name: 'prometheus'
static_configs:
- targets: ['localhost:9090']
prometheus:
image: prom/prometheus
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml
ports:
- "9090:9090"
-
- http://localhost:9090
http://localhost:9090/metrics (取れる値はここで確認できる)
如果不使用Docker的话
- 公式ページからdownload
wget "https://github.com/prometheus/prometheus/releases/download/v2.0.0-rc.2/prometheus-2.0.0-rc.2.linux-amd64.tar.gz"
tar xzf "prometheus-2.0.0-rc.2.linux-amd64.tar.gz"
cd prom*
./prometheus
添加监视对象
从以下链接获取node_exporter-0.15.0.linux-amd64.tar.gz文件中的node_exporter。
./node_exporter
可以选择使用Docker。参考:尝试使用Prometheus监视Docker主机和容器。
docker run -d \
-v "/proc:/host/proc:ro" \
-v "/sys:/host/sys:ro" \
-v "/:/rootfs:ro" \
--net="host" \
quay.io/prometheus/node-exporter
global:
external_labels:
monitor: 'codelab-monitor'
rule_files:
scrape_configs:
- job_name: 'prometheus'
static_configs:
- targets: ['localhost:9090']
+ - job_name: 'node'
+ static_configs:
+ - targets: ['localhost:9100']
./prometheus
确认节点已被添加。
- Understanding Machine CPU usage | Robust Perception
100 - (avg by (instance) (irate(node_cpu{job="node",mode="idle"}[5m])) * 100)
增加进一步监视对象的方式
+ - targets: ['192.168.100.53:9100']
# ymlを書き換えた後はHUPかければ良い (6秒位反映に時間がかかる)
killall -HUP prometheus
图表绘制示例
当访问 http://localhost:9100/metrics 时,
可以看到 node_load1 0.13 等内容,将其粘贴到 Prometheus 的输入框中,
下方的控制台将显示指定的方式。
确认将其粘贴到Grafana中并绘制图表。
Grafana 请用中文写一个启动脚本。
-
- Grafana公式ページで様々なテンプレートが用意されている
Grafana Dashboards – discover and share dashboards for Grafana. – Grafana.net
grafana:
image: grafana/grafana
ports:
- "3000:3000"
http://localhost:3000
admin : admin でログイン
要指定设定,请参考以下内容。
grafana:
image: grafana/grafana
container_name: grafana
environment:
- TZ=Asia/Tokyo
- GF_PATHS_DATA=/var/lib/grafana
- GF_PATHS_LOGS=/var/log/grafana
- GF_SECURITY_ADMIN_USER=admin
- GF_SECURITY_ADMIN_PASSWORD=admin
# iframeの埋め込みに対応
- GF_SECURITY_ALLOW_EMBEDDING=true
# iframeの埋め込みを認証なしで表示
- GF_AUTH_ANONYMOUS_ENABLED=true
# Grafanaサーバーのアドレスを指定 (share時に便利)
- GF_SERVER_ROOT_URL=http://192.168.100.65:3000
ports:
- "3000:3000"
-
- Data Source に prometheus を追加
localhost で Templating init failed が出た場合は ipアドレスを指定すれば良い。(prometheusをtar.gzから展開して実行したホストと、grafanaがdockerで起動した場合、ipアドレス指定が必要。)
仪表板 -> 导入
图表编辑
点击图表标题 -> 编辑
指标 -> 输入查询 -> (如果图表未显示) 点击右侧的眼睛图标
- Legend format : {{instance}} にすると prometheus に登録されているipaddress:port が表示される。
完成后,请点击右眼图标上方的x。
试着承担一些压力
- Linuxで手軽にCPU負荷をかける方法をまとめてみた | あいしんくいっと
yes > /dev/null