嘟嘟社区

小白也看得懂的基于docker的prometheus+grafana 探针


本帖最后由 vinny 于 2021-12-25 19:58 编辑

黑五买了一堆鸡,不把探针升个级?
记得论坛放过,最近又搭了一次,就当做个笔记
面板鸡先安装好docker,被监控的不用
grafana-把数据转换为图形 prometheus-带有时间坐标的数据库 node_exporter-把机器的数据上报

1.grafana安装面板鸡执行

  1. mkdir /data/grafana/storage
  2. chmod 777 /data/grafana/storage
  3. # 启动 grafana
  4. docker run -d -p 3000:3000 –name=grafana -v /data/grafana/storage:/var/lib/grafana grafana/grafana

复制代码

访问http://ip:3000/login,默认账号密码都是admin

2.node_exporter配置(被控鸡执行)

  1. #!/bin/bash
  2. wget https://github.com/prometheus/node_exporter/releases/download/v1.3.1/node_exporter-1.3.1.linux-amd64.tar.gz
  3. tar xvf node_exporter-1.3.1.linux-amd64.tar.gz
  4. mv node_exporter-1.3.1.linux-amd64 /usr/local/bin/node_exporter
  5. groupadd prometheus
  6. useradd -g prometheus -m -d /var/lib/prometheus -s /sbin/nologin prometheus
  7. mkdir /usr/local/prometheus
  8. chown prometheus.prometheus -R /usr/local/prometheus
  9. cat > /etc/systemd/system/node_exporter.service << EOF
  10. [Unit]
  11. Description=node_exporter
  12. Documentation=https://prometheus.io/
  13. After=network.target
  14. [Service]
  15. Type=simple
  16. User=prometheus
  17. ExecStart=/usr/local/bin/node_exporter/node_exporter –collector.processes  –collector.filesystem.ignored-mount-points=^/(sys|proc|dev|host|etc)($|/)
  18. Restart=on-failure
  19. [Install]
  20. WantedBy=multi-user.target
  21. EOF
  22. systemctl daemon-reload
  23. systemctl restart node_exporter.service
  24. systemctl enable node_exporter.service
  25. systemctl start node_exporter.service
  26. systemctl status node_exporter

复制代码

执行后防火墙放行9100端口,访问 IP:9100,有输出就成功
3.prometheus安装面板鸡执行

  1. mkdir /data/prometheus
  2. vim prometheus.yml
  3. ————
  4. #配置文件
  5. global:
  6.   scrape_interval:     60s
  7.   evaluation_interval: 60s
  8. scrape_configs:
  9.   – job_name: prometheus
  10.     static_configs:
  11.       – targets: [‘localhost:9090’]
  12.         labels:
  13.           instance: prometheus
  14.   – job_name: 名称
  15.     static_configs:
  16.       – targets: [‘被监控ip1:9100’]
  17.         labels:
  18.           instance: 名称1
  19.       – targets: [‘被监控ip2:9100’]
  20.         labels:
  21.           instance: 名称2

复制代码

  1. # 启动prometheus
  2. docker run  -d -p 9090:9090 -v /data/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus

复制代码

访问http://面板鸡ip:9090,有页面即安装成功
4.数据库与监控链接
主要是修改上面配置文件的ip,prometheus 每次修改配置重启后配置才能应用。

当如图所示显示up时,表示prometheus 接收到node_exporter传输到的信息。
5.数据可视化
grafana登陆后,参考这个教程设置面板

  1. https://blog.csdn.net/shengjie87/article/details/117993751?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_title~default-5.no_search_link&spm=1001.2101.3001.4242.4

复制代码

在创建dashboard时直接导入https://grafana.com/grafana/dashboards/8919 这个面板,即可



论坛大佬多,班门弄斧了,有问题请大佬赐教

当然还要设置防火墙,只允许面板鸡访问被监控鸡端口,并做好9090端口的屏蔽

Grafana 最近挺火?
这个感觉好专业,这两天试试学一下 楼主辛苦了
好高级的样子(占用高吗
本帖最后由 vinny 于 2021-12-25 19:55 编辑

xieshang 发表于 2021-12-25 19:53
好高级的样子(占用高吗

不高 cc垃圾小鸡如图占用

mark
好高级的样子
prometheus内存占用有点高,有折腾k8s的部署更方便
好像有点屌
不戳,至少