一、Prometheus 简介Prometheus(普罗米修斯)是一套开源的监控报警时间序列数据库的组合,由 SoundCloud 公司开发。Prometheus 基本原理是通过 HTTP 协议周期性抓取被监控组件的状态,这样做的好处是任意组件只要提 ...
一、Prometheus 简介 Prometheus(普罗米修斯)是一套开源的监控&报警&时间序列数据库的组合,由 SoundCloud 公司开发。 Prometheus 基本原理是通过 HTTP 协议周期性抓取被监控组件的状态,这样做的好处是任意组件只要提供 HTTP 接口就可以接入监控系统,不需要任何 SDK 或者其他的集成过程。这样做非常适合虚拟化环境比如 VM 或者 Docker 。Prometheus 应该是为数不多的适合 Docker、Kubernetes 环境的监控系统之一。 1.Prometheus 优势
Prometheus Server 自带一个 UI,通过这个 UI 可以方便对数据进行查询和图形化展示;同时还可以对接 Grafana 可视化工具展示精美图形 2.Prometheus 基础架构 如下图,Prometheus 主要由以下部分组成: Prometheus:主要是负责存储、抓取、聚合、查询方面。 Alertemanager:主要是负责实现报警功能。 Pushgateway:主要是实现接收有 Client-push 过来的指标数据,在指定的时间间隔,有主程序来抓取。 *_exporter:主要是负责采集物理机、中间件的信息。 ![]() 实验环境: ![]()
部署Prometheus+钉钉报警普罗米修斯(Prometheus),通常指的是一种开源的监控和警报工具。 Prometheus是一个功能强大且灵活的系统监控工具,旨在帮助用户了解其应用程序和基础架构的健康状况。它能够收集和存储时间序列数据,例如服务器的CPU使用率、内存消耗、网络流量等。 Prometheus不仅能够提供实时的监控数据,还能够分析和查询这些数据,以便用户可以深入了解系统的性能和行为。它提供了一种强大的查询语言(PromQL),使用户能够编写灵活的查询,从而获取所需的数据。 此外,Prometheus还提供了灵活的警报功能,允许用户定义规则和条件,并在达到特定状态时发送警报通知。这使得用户能够及时采取行动以解决潜在的问题。 另外,Prometheus还支持与其他工具的集成,例如Grafana,用于创建仪表盘和图表,以更加可视化地展示监控数据。
#获取安装包mv /tmp/VMwareDnD/0eea1a03/prometheus-2.36.0.linux-amd64.tar.gz / #解压安装包到/usr/local目录下tar zxvf prometheus-2.36.0.linux-amd64.tar.gz -C /usr/local/ #对解压文件进行重命名mv prometheus-2.36.0.linux-amd64/ prometheus #添加system托管vim /usr/lib/systemd/system/prometheus.service [Unit] Description=https://prometheus.io [Service] Restart=on-failure ExecStart=/usr/local/prometheus/prometheus --config.file=/usr/local/prometheus/prometheus.yml//注意查看文件位置是否一致 [Install] WantedBy=multi-user.target #启动 prometheus服务systemctl daemon-reload //刷新重新加载 Systemd 守护程序的命令。(就是刷新托管系统) systemctl start prometheus//启动prometheus服务 systemctl status prometheus.service//查看prometheus服务的托管状态 ss -anpt |grep 9090//查看对应端口 验证:prometheus服务192.168.216.217:9090![]() 3、添加监控节点添加一个软件包可以随意添加到任意一台服务器 node_exporter:是一个用于收集和暴露主机级别指标的组件,可与 Prometheus 监控系统集成,帮助你监控和分析主机的性能和资源使用情况。 Node Exporter 主要用于主机级别的监控,而 Process Exporter 则专注于进程级别的监控。 #下载或者传输找不到了 淦 #解压文件到/etc/local目录下tar -zxf node_exporter-0.17.0.linux-amd64.tar.gz -C /usr/local/ #添加system托管文件vim /usr/lib/systemd/system/node-export.service [Unit] Description=node_exporter Documentation=https://prometheus.io/ After=network.target [Service] ExecStart=/usr/local/node_exporter/node_exporter Restart=on-failure RestartSec=20 [Install] WantedBy=multi-user.target #启动node-export服务systemctl daemon-reload //加载系统配置文件 systemctl start node-export.service //启动程序 ss -anpt | grep 9100 //验证端口是否开启,服务时候正常 #在prometheus服务器的主配置文件中添加node-exporter的信息(现在切换到prometheus服务器上,对prometheus服务器的主配置文件进行添加) vim /usr/local/prometheus/prometheus.yml ...... - job_name: "prometheus"//在最后添加 # metrics_path defaults to '/metrics'//这俩行是注释 # scheme defaults to 'http'.//同上 static_configs: - targets: ["localhost:9090"]//通过node-exporter监听本机的信息 - targets: ["localhost:9100"]//同上 - job_name: "主机节点" static_configs: - targets: ["192.168.216.108:9100"]//通过node-exporter监听192.168.216.108网段的信息 4、安装grafana,图形化界面通常安装在prometheus上 #下载grafanawget https://dl.grafana.com/oss/release/grafana-7.1.5-1.x86_64.rpm yum localinstall grafana-5.3.4-1.x86_64.rpm #直接添加系统服务/sbin/chkconfig --add grafana-server service grafana-server start//可以用这个启动 ![]() systemctl status grafana-server//查看服务的状态 ![]() #对接prometheus![]() 添加模版 9276——主机信息模版 249——监控进称 ![]() ![]() 导入数据源 5、安装进程监控Process Exporter 是一个用于收集和暴露系统进程级别指标的组件,可以与 Prometheus 监控系统配合使用,帮助你监控和分析系统中每个进程的资源使用情况。 Node Exporter 主要用于主机级别的监控,而 Process Exporter 则专注于进程级别的监控。 #解压文件到/usr/local目录下面tar -zxf process-exporter-0.7.5.linux-amd64.tar.gz -C /usr/local/ #给文件重命名mv process-exporter-0.7.5.linux-amd64 process-exporter/ #进程监控的yaml文件的创建与编写cd /usr/local/process-exporter vim process.yaml process_names: - name: "{{.Matches}}" cmdline: - '服务名' #添加system托管vim /usr/lib/systemd/system/process_exporter.service [Unit] Description=Prometheus exporter for processors metrics, written in Go |
2023-04-02
2022-06-29
2023-03-24
2022-10-29
2018-02-21
请发表评论