njmon+influxdb实现服务器实时监控 无需njmon_tools

之前做性能测试一直在用nmon, 最近看到网上说出了njmon可实现可视化实时监控,就去研究了一番。发现网上清一色的都是复制粘贴同一篇文章;但是由于软件版本更新,一路遇到了不少问题。

本文章先讲njmon监控数据插入influxdb;  后续讲解grafana从influxdb取数据源进行展示

1. influxdb安装

官方教程:https://docs.influxdata.com/influxdb/v1.7/introduction/installation/

配置 InfluxDB 的 yum 源

$ cat <<EOF | sudo tee /etc/yum.repos.d/influxdb.repo

[influxdb]

name = InfluxDB Repository - RHEL \$releasever

baseurl = https://repos.influxdata.com/rhel/\$releasever/\$basearch/stable

enabled = 1     

gpgcheck = 1

gpgkey = https://repos.influxdata.com/influxdb.key EOF

注:如果找不到源 可试着将enabled = 0

yum 安装

# CentOS 7-, RHEL 7-

$ sudo yum install -y influxdb

$ sudo service influxdb start

# CentOS 7+, RHEL 7+

$ sudo yum install -y influxdb

$ sudo systemctl start influxdb

创建njmon库

$ influx > create database njmon

> show databases

name: databases

name ----

_internal njmon

> exit

启用用户认证:

添加用户,设置权限。

# 查看所有用户 > show users

user admin ---- -----

# 创建 admin 用户,设置密码为 admin

> create user "admin" with password 'admin' with all privileges

# 再次查看用户信息,发现 admin 为 true

> show users

user admin

---- -----

admin true

influxDB默认是禁用认证策略的

# 编辑配置文件,把 [http] 下的 auth-enabled 选项设置为 true

$ vi /etc/influxdb/influxdb.conf

[http]

...

auth-enabled = true

...

# 重启服务,配置生效

$ systemctl restart influxdb.service

 

2. njmon

安装njmon  此处下载的最新版本

官方下载总目录:https://sourceforge.net/projects/nmon/files/

 

# 下载

$ wget http://sourceforge.net/projects/nmon/files/njmon_linux_binaries_v71.zip

# 解压

$ unzip njmon_linux_binaries_v71.zip

# 选择相应版本,放到 local 的 bin 下, 加到bin下需用root给与执行权限

$ mv nimon_RHEL7_x86_64_v71 /usr/local/bin/njmon

# 验证

$ njmon -?

采集数据到influxdb

njmon -s 30 -c 2880-i localhost -p 8086 -x njmon -y admin -z admin

-s 采集时间间隔 -c 采集次数 -i influxdb服务器的域名或ip地址,因为我influxdb部署在被监控的服务器上,所以用的localhost

-p influxDB的端口号 默认为8086   -x influxDB数据库名  -y influxDB 用户名  -z influxDB密码 

查看是否有数据插入influxdb

# 使用 njmon > use njmon

Using database njmon

# 查看 measurements,有数据表示已经采集到

> show measurements

name: measurements

name ----

cpu_total

cpuinfo

cpus

disks

filesystems

identity

lscpu

networks

os_release

proc_meminfo proc_version

proc_vmstat

stat_counters

timestamp

uptime

 

posted @ 2021-06-09 17:08  wclcz  阅读(763)  评论(0编辑  收藏  举报