admin 管理员组

文章数量: 887006


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/p/3bdc4cfa08da

2. 安装部署

我使用的是Windows,首先在Prometheus官方下载安装包

官网高速入口:“点我!点我!点我!”

下载完毕后安装软件其目录结构如下:

解压后的目录内容

  1. data为Prometheus 是自带时序数据库持久化的目录

  2. pometheus.yml 为整个Prometheus的配置文件

  3. 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,首先从官方下载安装包:

官网高速入口:“点我!点我!点我!”

  1. 下载安装程序如下:

安装后的目录内容

  1. 直接双击 nssm.exe 启动

3.访问地址 http://127.0.0.1:3000(默认端口为3000,默认用户名和密码均为admin)

四、Prometheus/Process-Exporter/Grafana三件套组合使用

  1. 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://img2020blogs/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://img2020blogs/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)]

本文标签: 普罗米修斯 Grafana Windows Linux