我们可以用top、free、iostat等等命令,去监控服务器的性能,但是这些命令,我们只针对单台服务器进行监控,通常我们线上都是一个集群的项目,Linux中提供了一个集群监控工具-prometheus
prometheus监控原理
- prometheus:虽然说是监控平台,但是实际上是一套数据库
- node_exporter:它的作用主要是收集性能测试的数据,如cpu、内存磁盘等网络等信息,然后将数据保存到prometheus,相当于将数据存入到数据库中
- prometheus只能用于做数据存储,不能做展示,因此我们需要用到Grafana组件
- Grafana主要用于数据展示,并且可以做到定时读取数据
部署前的准备
- 关闭linux机器的防火墙:systemctl stop firewalld
- 保证所有linux机器时间是准确的,执行date命令检查;如果不准,可以使用ntp命令同步网络时间
yum install -y ntp
ntpdate pool.ntp.org
部署linux操作系统监控组件
1、下载监控Linux的exporter (注意选择自己的操作系统,我的操作系统是 Linux CentOS7) 链接: https://github.com/prometheus/node_exporter/releases/download/v0.18.1/node_exporter-0.18.1.linux-amd64.tar.gz .
2、将node_exporter包上传到需要被监控的Linux服务器上任意目录下,执行解压命令
tar xvf node_exporter-0.18.1.linux-amd64.tar.gz
3、 进入到解压后的文件夹中,执行启动脚本
./node_exporter
部署prometheus普罗米修斯
由于我的jmeter部署的master在windows系统下,因此我将prometheus也放在window系统下方便查看 1、下载地址:https://prometheus.io/download/ 2、下载好之后进行解压。如下图所示: 用Notepad++打开配置文件,添加要监控的服务器信息ip,保存
双击prometheus.exe即可启动prometheus。 浏览器输入http://localhost:9090,显示如下界面即启动成功 Targets界面如下图所示
Grafana的安装
1、下载地址:https://grafana.com/grafana/download?platform=windows 解压结果如下 启动程序服务(bin目录下) Grafana-server就是我们的web端,双击启动即可。 浏览器输入http://localhost:3000即可进入grafana 初始化登陆账户和密码是:admin/admin 配置数据源用于grafana监控。
效果图如下所示: 点击Prometheus 2.0 Stats 即可查看,效果图如下所示:
导入监控模板
打开 grafana 官网,查找官网提供的 prometheus 监控模板 链接: https://grafana.com/grafana/dashboards.
点击 Linux 服务器监控的中文模板,记录该模板的 id:8919
在 grafana 系统页面中,通过 id 导入该模板,即可在 grafana 中看到 linux机器的性能监控数据 将数据更新频率设置为 15s,展示最近 5 分钟的数据,就可以看到实时的、最近 5 分钟的各项性能指标。包含了 CPU、Load、内存、网络、磁盘、IO 耗时等指标。监控数据永久保存,可以随时查看任意时间点内的历史统计数据,非常方便。
|