使用influxdb+Grafana+nmon2influxdb+nmon实时监控vps性能

Grafana可以用来实时查看linux系统的各种性能数据。

1、安装环境:

centos 7+influxdb1.7.6+grafana-4.6.3-1+nmon2influxdb-2.1.7+nmon-16m

2、安装influxdb:

下载rpm包:

influxdb官网:https://docs.influxdata.com/influxdb/v2.0/get-started/?t=Linux

wget https://dl.influxdata.com/influxdb/releases/influxdb-1.7.6.x86_64.rpm

安装并启动influxdb服务:

复制代码
rpm -ivh influxdb2-2.0.4.x86_64.rpm
systemctl start influxdb.service  //开启服务
systemctl status influxdb.service  //查看服务状态,显示active (running)表示服务状态正常
/etc/influxdb/influxdb.conf  //配置文件路径

3、安装grafana

下载Grafana安装包:

复制代码
Grafana官网下载地址:https://grafana.com/grafana/download/4.6.3
wget https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-4.6.3-1.x86_64.rpm

安装Grafana rpm包:
rpm -ivh grafana-4.6.3-1.x86_64.rpm
启动服务:

/etc/grafana/grafana.ini //配置文件路径
systemctl start grafana-server.service  //开启服务
systemctl status grafana-server.service //查看服务状态

在浏览器地址栏输入:http://vpsip:3000,即可进入Grafana首页,默认用户名和密码:admin/admin

4、安装nmon2influxdb

下载nmon2influxdb安装包:

nmon2influxdb官网:https://www.nmon2influxdb.org/getting-started/linux/

nmon2influxdb组件GitHub地址:Releases · adejoux/nmon2influxdb · GitHub

复制代码
安装nmon2influxdb:
tar -zxvf nmon2influxdb_2.1.8_linux_64-bit.tar.gz
cp nmon2influxdb /usr/local/bin/
cd /usr/local/bin/
chmod +x nmon2influxdb
nmon2influxdb -v

5、安装nmon

nmon是linux上的一个性能查看工具,优点是可以一次性查看系统的多项性能指标,且资源占用较少,它是一个二进制文件,下载后直接上传到vps上即可使用。

下载链接: https://pan.baidu.com/s/1znAhcEZ2dd8tZpI4bpE2-g 提取码:r8s4

复制代码
tar -zxvf nmon16m_helpsystems.tar.gz
cp ./nmon_x86_64_oel7 ~/nmon

6、配置nmon2influxdb和Grafana

配置nmon2influxdb:

复制代码
nmon2influxdb配置文件存放在当前登录的用户的家目录下面,打开这个文件修改以下几行:
vim /root/.nmon2influxdb.cfg
复制代码
使用nmon命令行工具生成一个nmon数据文件:

./nmon -fT -s 10 -c 6    //-fT是生成一个指定格式的.nmon数据文件,-s 10 -c 6是每隔10秒采集一次,一共采集6次
ps -ef |grep nmon  //查看nmon进程
待nmon进程执行完成后,将生成的文件导入数据库:
nmon2influxdb import ecs-s6-medium-2-linux-20200214130415_210401_1803.nmon

进入influxdb数据库,会看到新生成了两个数据库表:nmon_reports和nmon2influxdb_log,这个nmon_reports就是刚才导入的nmon文件的数据库表。

复制代码
配置Grafana,在首页Grafana中添加一个data source:
复制代码
在后台使用nmon2influxdb生成一个Grafana模板:

nmon2influxdb dashboard  ecs-s6-medium-2-linux-20200214130415_210401_1825.nmon

7、设置crontab定时任务自动上传vps性能数据到Grafana

复制代码
创建nmon.sh文件:

#nmon.sh
#! /bin/bash
#进入到自己的nmon文件所在目录
cd ~
#每隔一分钟推送nmon数据到influxdb,Grafana呈现:
nmon2influxdb import ~/*.nmon
#控制每个nmon监控文件在1分钟:
~/nmon -fT -s 10 -c 6
#按照时间排序nmon文件,删除一个距离当前时间较远的文件,始终只保留一个nmon文件:
ls -t ~/*.nmon |awk '/\.nmon/ {if (NR >1){system ("rm " $1)}}'

添加crontab任务:

crontab -e
*/1 * * * * sh ~/nmon.sh

最终效果:

相关推荐
qq_452396237 天前
第十二篇:《数据采集:Grafana Alloy、Fluent Bit、Vector 的选型与配置》
java·贪心算法·grafana
2601_962097367 天前
可观测性实战:Prometheus+Grafana+OTel构建监控
grafana·prometheus·微服务架构·可观测性·opentelemetry
Joker-Full-stack7 天前
higress Grafana生产事故复盘:Loki 2.9 WAL 竞态 Bug 导致 5 天审计日志消失
bug·grafana·higress
IT界的老黄牛7 天前
Jenkins 监控一条龙:接入、看板 9964、11 条告警规则直接抄走
jenkins·grafana·prometheus·监控·ci-cd·告警规则
heimeiyingwang8 天前
【Prometheus·可视化篇】Grafana 集成:数据源配置与 Dashboard 设计原则
grafana·prometheus
2601_962097369 天前
GraphQL,Grafana和Dash
python·grafana·数据可视化·graphql·dash
happymade11 天前
7000 台网络设备批量纳管 & 自动拓扑生成实战——MSRM3 完整操作流程与关键要点复盘
运维·服务器·网络·zabbix·grafana·msrm3
AAA@峥11 天前
从零搭建 Prometheus 完整监控告警体系|Linux 部署 + node_exporter+Grafana 可视化
云原生·grafana·prometheus
liuyicenysabel13 天前
Grafana + Prometheus 分级告警配置设计(P0/P1/P2)
javascript·grafana·prometheus
随遇而安zx13 天前
SpringCloud---可观测性与监控:Actuator / Micrometer / Prometheus / Grafana 深度解析
spring cloud·grafana·prometheus