使用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

最终效果:

相关推荐
川石课堂软件测试4 天前
requests接口自动化测试
数据库·python·功能测试·测试工具·单元测试·grafana·prometheus
自不量力的A同学4 天前
Grafana 13.0.1 发布
grafana
没有口袋啦4 天前
基于 Prometheus + Grafana 的云原生立体化监控体系构建
grafana·prometheus
数据雕塑家6 天前
数据库 + Grafana 可视化配置指南:从数据源连接到第一个仪表盘
数据库·grafana
凉云生烟8 天前
我在旅途中看监控:用 Grafana + 内网穿透把数据看板装进手机里
grafana
梵得儿SHI8 天前
SpringCloud 实战落地:可观测性建设(SkyWalking + Prometheus + Grafana)从 0 到 1 生产级部署
grafana·prometheus·springcloud·skywalking·微服务可观测性·线上问题排查
程序员老邢9 天前
【技术底稿 12】内网统一日志系统 Loki + Promtail 全流程部署(对接 Grafana,监控日志一体化)
java·运维·程序人生·grafana·devops
zhanghongbin0110 天前
Grafana 可视化:开箱即用的监控面板
grafana
国产化创客10 天前
ESP32 (ESPectre)+Grafana构建专业级CSI监控面板
物联网·grafana·信息与通信·智能硬件
鬼先生_sir11 天前
Spring Cloud 微服务监控实战:SkyWalking + Prometheus+Grafana 全栈解决方案
运维·spring cloud·grafana·prometheus·skywalking