typora-root-url: img
typora-copy-images-to: img
grafana-普罗米修斯-监控linux-windows版
Prometheus/Process-Exporter/Grafana三件套,用于监控脚本/应用是否一直在运行,长时间运行时的性能使用情况并用可视化的图标显示出来。
一、Prometheus
Prometheus(普罗米修斯)是一套比较完备的监控报警系统,其主要架构设计如图:
设计架构图
**1.**主要是由以下组件构成:
1.1. Prometheus server:服务中心,主要负责拉取和存储时序书库(Prometheus有自带的时序数据库)
1.2. Client Libraries:客户端库,主要用于和具体的服务进行集成,采集监控数据,例如Micrometer
1.3. Push gateway:另外一种数据push的采集方式(Prometheus默认使用pull的方式主动采集应用数据),用于适配一些没有长期稳定的进程 的服务
1.4. Exporter:用于针对某些特定服务的数据采集工具,例如:mysql/kafka/HA等…
1.5. Alert Manager:Prometheus的监控告警工具,主要通过webhook和其他告警系统进行集成告警,能够进行告警规则的配置
1.6. 其他工具
同时,Prometheus也有一套自己的查询语法,用于已经采集的数据的结果查询,具体可以参考:
https://prometheus.io/docs/prometheus/latest/querying/basics/
或者中文翻译: https://www.jianshu.com/p/3bdc4cfa08da
2. 安装部署
我使用的是Windows,首先在Prometheus官方下载安装包
官网高速入口:“点我!点我!点我!”
下载完毕后安装软件其目录结构如下:
解压后的目录内容
- data为Prometheus 是自带时序数据库持久化的目录
- pometheus.yml 为整个Prometheus的配置文件
- pometheus.exe 为服务启动应用,双击直接启动
这个时候Prometheus会使用最基本的默认配置,运行在本地9090端口,采集自身的运行的数据并持久化到时序数据
prometheus.yml的配置规则参考文档:
https://prometheus.io/docs/prometheus/latest/configuration/configuration/
4.当Prometheus启动完毕后,本地浏览器访问:http://localhost:9090 能够访问,说明安装并启动成功。
普罗米修斯监控Linux主机
二、node组件概述
在远程linux主机(被监控端agent)上安装node_exorter组件,这样普罗米修斯就可以接收到其收集系统
https://prometheus.io/download/下载地址
1.6.2安装node_exporter组件
安装、解压node_exporter组件
[root@agent ~]# cd /opt
[root@agent opt]# rz -E //上传node_exporter组件到/opt目录下,anget被监控端
[root@agent opt]# tar zxvf node_exporter-0.16.0.linux-amd64.tar.gz -C /usr/local/
[root@agent opt]# mv /usr/local/node_exporter-0.16.0.linux-amd64 /usr/local/node_exporter
[root@agent local]# ls /usr/local/node_exporter
启动node_exporter服务
收集Linux主机信息
[root@agent local]# nohup /usr/local/node_exporter/node_exporter &
1
查看端口(端口9100占用情况)
[root@agent local]# ss -naltp | grep 9100
1
nohup命令:如果把启动node_exporter的终端给关闭,那么进程也会随之关闭,nohup命令可以解决这个问题
三、Grafana
Grafana是一个开源的度量分析与可视化套件。经常被用作基础设施的时间序列数据和应用程序分析的可视化,它在其他领域也被广泛的使用包括工业传感器、家庭自动化、天气和过程控制等。
Grafana支持许多不同的数据源。每个数据源都有一个特定的查询编辑器,该编辑器定制的特性和功能是公开的特定数据来源。
其工作模式主要分为三步:
设置数据源:可视化的基础数据来源,例如从数据库/Prometheus/ElasticSearch
配置数据抽取方式:例如通过数据库的SQL/Prometheus的ProQuery等进行数据查询
数据面板配置:Grafana支持多样的数据呈现方式,例如折线图/直方图/热力图等等,通过简单的配置,即可通过多样化的数据呈现方式去展示监控数据
安装部署
Grafana的部署和Prometheus的部署差不多,我使用的是Windows,首先从官方下载安装包:
官网高速入口:“点我!点我!点我!”
- 下载安装程序如下:
安装后的目录内容
- 直接双击 nssm.exe 启动
3.访问地址 http://127.0.0.1:3000(默认端口为3000,默认用户名和密码均为admin)
四、Prometheus/Process-Exporter/Grafana三件套组合使用
- Prometheus配置prometheus.yml
我用到的配置文件修改内容
2.访问:http://localhost:9090 查看连接状态,以下为正常状态
连接状态
\3. grafana配置Prometheus数据库,添加数据源。
添加数据源
填写数据源 Prometheus地址
四、添加普罗米修斯的数据源
- 添加数据源
- 设置 数据源、数据源名称、类型、IP地址、端口号
- 点击齿轮图标,查看已添加的数据源
- 为添加好的数据源做图形显示
- 增加图形
- 选择需要呈现图形的数据
- 保存
4.搭建展示Prometheus数据的仪表盘
添加仪表盘
官网有很多模板,根据你自己的需要和喜欢去选择即可
ashboards模版id
10467 监控物理机/虚拟机(windows)
12856 spring boot
9614 nginx
2949 nginx
物理机/虚拟机(Linux)监控
- 8919
- 1860
黑盒监控
- 7587
- 9965
123456监控协议http/icmp/tcp/dns/
http监控某个网站
icmp监控某台机器
tcp监控某个端口
dns监控dns
Rds或MySQL监控
- 7362
容器监控
- 193 Docker monitoring
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NRXLXtPl-1657165349921)(https://img2020.cnblogs.com/blog/1043450/202112/1043450-20211224171609107-1773143663.png)]
- 315 Kubernetes cluster monitoring (via Prometheus)
- 3146 Kubernetes Pods
- 8685 K8s Cluster Summary
- 8588 Kubernetes Deployment Statefulset Daemonset metrics
- 10000 Cluster Monitoring for Kubernetes
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gH7884ZN-1657165349922)(https://img2020.cnblogs.com/blog/1043450/202112/1043450-20211224171408633-327752446.png)]
域名证书监控
13230
[外链图片转存中…(img-UpjeZVLx-1657165349922)]
- 10000 Cluster Monitoring for Kubernetes
[外链图片转存中…(img-gH7884ZN-1657165349922)]
域名证书监控
13230
[外链图片转存中…(img-n5vJOXLt-1657165349923)]
[外链图片转存中…(img-ifEC6ltD-1657165349923)]
版权归原作者 茫仔 所有, 如有侵权,请联系我们删除。