这篇文章将为大家详细讲解有关Prometheus如何搭建监控,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
Prometheus(普罗米修斯)实验环境:(各个主机,ip,所需服务)docker01 docker02 docker031.10 1.20 1.30NodeEXporter NodeEXporter NodeEXportercAdvisor cAdvisor cAdvisorPrometheus ServerGrafana全部关闭防火墙,禁用selinux.[root@docker01 ~]# systemctl stop firewalld[root@docker01 ~]# systemctl disable firewalld[root@docker01 ~]# setenforce 0setenforce: SELinux is disabled需要部署组件:Prometheus Server:普罗米修斯的主服务器。NodeEXporter:负责收集Host硬件信息和操作系统信息。cAdvisor:负责收集Host上运行的容器信息。Grafana:负责展示普罗米修斯监控界面。1.导入镜像docker01:
[root@docker01 ~]# docker load < mycadvisor.tar && docker load < grafana.tar && docker load < node-exporter.tar && docker load < prometheus.tar docker02:
[root@docker02 ~]# docker load < mycadvisor.tar && docker load < node-exporter.tar docker03:[root@docker03 ~]# docker load < mycadvisor.tar && docker load < node-exporter.tar镜像拉入完成!!!1)3个节点,全部部署node-EXporter和cAdvisor.PS:3台都弄,都去浏览器验证部署node-EXporter,收集硬件和系统信息[root@docker01 ~]# docker run -d -p 9100:9100 -v /proc:/host/proc -v /sys:/host/sys -v /:/rootfs --net=host prom/node-exporter --path.procfs /host/proc --path.sysfs /host/sys --collector.filesystem.ignored-mount-points "^/(sys|proc|dev|host|etc)($|/)"PS:注意,这里使用了--net=host,这样Prometheus Server可以直接与Node-Exporter通信。验证:打开浏览器验证结果:ip加9100端口://部署安装cAdvisor。收集节点容器信息。PS:3台都弄,都去浏览器验证[root@docker01 ~]# docker run -v /:/rootfs:ro -v /var/run:/var/run/:rw -v /sys:/sys:ro -v /var/lib/docker:/var/lib/docker:ro -p 8080:8080 --detach=true --name=cadvisor --net=host google/cadvisor,都去部署完成之后,浏览器访问:IP加8080端口:2)在docker01上部署Prometheus Server服务。在部署Prometheus之前,我们需要对它的配置文件进行修改,所以我们先运行一个容器,先将其配置文件拷贝出来。[root@docker01 ~]# docker run -d -p 9090:9090 --name prometheus --net=host prom/prometheus [root@docker01 ~]# docker cp prometheus:/etc/prometheus/prometheus.yml ./[root@docker01 ~]# vim prometheus.yml 28行改为:• - targets: ['localhost:9090','localhost:8080','localhost:9100','192.168.1.20:8080','192.168.1.20:9100','192.168.1.30:8080','192.168.1.30:9100']每个节点的ip,端口PS:这里制定了prometheus的监控项,包括它也回监控自己收集到的数据。[root@docker01 ~]# docker rm -f prometheus prometheus[root@docker01 ~]# docker run -d -p 9090:9090 --name prometheus --net=host -v /root/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus 互联网访问验证:docker01的ip加9090端口:
PS:这里能够哦查看到我们各个监控项。挂起docker02后:
继续运行docker02后:
3)在docker01上,部署grafana服务,用来展示prometheus收集到的数据。[root@docker01 ~]# mkdir grafana-storage[root@docker01 ~]# chmod 777 -R grafana-storage/[root@docker01 ~]# docker run -d -p 3000:3000 --name grafana -v /root/grafana-storage:/var/lib/grafana -e "GF_SECURITY_ADMIN_PASSWORD=123.com" grafana/grafana浏览器访问验证:账户:admin密码:123.com
PS:看到这个,说明prometheus和grafana服务时正常连接的。此时,虽然granfana收集到了数据,但怎么显示它,仍然是个问题,gafana支持自定义显示信息,不过要自定义起来非常麻烦,不过好在,granfana官方为我们提供了一些模板,来供我们使用。granfana官网:https://grafana.com/docs/grafana/latest/
选中一款模板,然后,我们有2中方式可以套用这个模板。第一种方式:通过JSON文件使用模板。
下载完成之后,放到桌面,来到grafana控制台第二种导入模板的方式:可以直接通过模板的ID号。模板ID:用10619再回到grafana控制台意外:
自带模板:
关于“Prometheus如何搭建监控”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。