网易首页 > 网易号 > 正文 申请入驻

为nagios添加性能图表展示-influxDB+Nagflux+Grafana+Histou

0
分享至

组件介绍

InfluxDB:时序数据库保存性能数据

Nagflux:将性能数据从nagios导入到InfluxDB的程序

Grafana:基于web的分析平台,可以将性能数据库从InfluxDB展示到web,实现数据可视化

Histou:为Grafana添加上Nagios性能数据创建的图表

influxDB安装

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

yum localinstall influxdb-1.5.4.x86_64.rpm

设置开机启动并启动服务:

systemctl enable influxdb.service

systemctl start influxdb.service

创建数据库

influx

>create database nagflux

#验证数据库是否创建成功

curl -G "http://localhost:8086/query?pretty=true" --data-urlencode "q=show databases"

nagflux(需要go环境)

安装go环境:

yum install -y golang git

通过github下载安装:

export GOPATH=$HOME/gorepo

mkdir $GOPATH

go get -v -u github.com/griesbacher/nagflux

go build github.com/griesbacher/nagflux

mkdir -p /opt/nagflux

cp $GOPATH/bin/nagflux /opt/nagflux/

mkdir -p /usr/local/nagios/var/spool/nagfluxperfdata

chown nagios:nagios /usr/local/nagios/var/spool/nagfluxperfdata

安装启动脚本并设置开机启动:

cp $GOPATH/src/github.com/griesbacher/nagflux/nagflux.service /usr/lib/systemd/system/

chmod +x /usr/lib/systemd/system/nagflux.service

systemctl daemon-reload

systemctl enable nagflux.service

配置nagflux:

vim /opt/nagflux/config.gcfg

[main]

NagiosSpoolfileFolder = "/usr/local/nagios/var/spool/nagfluxperfdata"

NagiosSpoolfileWorker = 1

InfluxWorker = 2

MaxInfluxWorker = 5

DumpFile = "nagflux.dump"

NagfluxSpoolfileFolder = "/usr/local/nagios/var/nagflux"

FieldSeparator = "&"

BufferSize = 10000

FileBufferSize = 65536

DefaultTarget = "all"

[Log]

LogFile = ""

MinSeverity = "INFO"

[InfluxDBGlobal]

CreateDatabaseIfNotExists = true

NastyString = ""

NastyStringToReplace = ""

HostcheckAlias = "hostcheck"

[InfluxDB "nagflux"]

Enabled = true

Version = 1.0

Address = "http://127.0.0.1:8086"

Arguments = "precision=ms&u=root&p=root&db=nagflux"

StopPullingDataIfDown = true

[InfluxDB "fast"]

Enabled = false

Version = 1.0

Address = "http://127.0.0.1:8086"

Arguments = "precision=ms&u=root&p=root&db=fast"

StopPullingDataIfDown = false

Grafana

yum install https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-5.1.4-1.x86_64.rpm

设置开机启动并启动服务:

systemctl enable grafana-server.service

systemctl start grafana-server.service

默认的用户名密码:admin/admin

histou

cd /tmp

wget -O histou.tar.gz https://github.com/Griesbacher/histou/archive/v0.4.3.tar.gz

mkdir -p /var/www/html/histou

cd /var/www/html/histou

tar xzf /tmp/histou.tar.gz --strip-components 1

cp histou.ini.example histou.ini

cp histou.js /usr/share/grafana/public/dashboards/

Nagios 配置

vim /usr/local/nagios/etc/nagios.conf

#添加下面内容

process_performance_data=1

host_perfdata_file=/usr/local/nagios/var/host-perfdata

host_perfdata_file_template=DATATYPE::HOSTPERFDATA\tTIMET::$TIMET$\tHOSTNAME::$HOSTNAME$\tHOSTPERFDATA::$HOSTPERFDATA$\tHOSTCHECKCOMMAND::$HOSTCHECKCOMMAND$

host_perfdata_file_mode=a

host_perfdata_file_processing_interval=15

host_perfdata_file_processing_command=process-host-perfdata-file-nagflux

service_perfdata_file=/usr/local/nagios/var/service-perfdata

service_perfdata_file_template=DATATYPE::SERVICEPERFDATA\tTIMET::$TIMET$\tHOSTNAME::$HOSTNAME$\tSERVICEDESC::$SERVICEDESC$\tSERVICEPERFDATA::$SERVICEPERFDATA$\tSERVICECHECKCOMMAND::$SERVICECHECKCOMMAND$

service_perfdata_file_mode=a

service_perfdata_file_processing_interval=15

service_perfdata_file_processing_command=process-service-perfdata-file-nagflux

vim /usr/local/nagios/etc/objects/commands.cfg

#添加下面内容

define command {

command_name process-host-perfdata-file-nagflux

command_line /bin/mv /usr/local/nagios/var/host-perfdata /usr/local/nagios/var/spool/nagfluxperfdata/$TIMET$.perfdata.host

}

define command {

command_name process-service-perfdata-file-nagflux

command_line /bin/mv /usr/local/nagios/var/service-perfdata /usr/local/nagios/var/spool/nagfluxperfdata/$TIMET$.perfdata.service

}

重启nagios服务

mkdir -p /usr/local/nagios/var /usr/local/nagios/var/nagflux /usr/local/nagios/var/spool/nagfluxperfdata

systemctl reload nagios

验证nagflux是否导入数据成功

curl -G "http://localhost:8086/query?db=nagflux&pretty=true" --data-urlencode "q=show series"

设置grafana数据源

1、add data source

2、设置数据源信息

Name: nagflux

Type: InfluxDB

HTTP

URL: http://localhost:8086

Access: proxy

Auth: Leave settings as default

InfluxDB Details

Database: nagflux

User & Password: 为空

3、Save & Test

Histou 配置

grafana调用的js文件/usr/share/grafana/public/dashboards/histou.js找到

var url = 'http://localhost/histou/';

将localhost换成浏览器能访问到histou的地址

sed -i 's/localhost/192.168.4.22/g' /usr/share/grafana/public/dashboards/histou.js

验证histou是否可以获取到数据

curl -G "http://localhost/histou/?host=localhost&service=PING"

验证grafana是否可以取到数据

http://nagios_server:3000/dashboard/script/histou.js?host=host_object&service=service_object

nagios_server = grafana的地址

3000 = grafana的端口

host_object = 主机对象

service_object = 服务名称

修改nagios的模板,加入图形链接

define host {

name host-grafana

action_url http://nagios_server:3000/dashboard/script/histou.js?host=$HOSTNAME$

register 0

}

define service {

name service-grafana

action_url http://nagios_server:3000/dashboard/script/histou.js?host=$HOSTNAME$&service=$SERVICEDESC$

register 0

}

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
笑死人!客服笑了两个小时才舍得发出,评论区已沦陷

笑死人!客服笑了两个小时才舍得发出,评论区已沦陷

另子维爱读史
2026-06-20 22:40:00
梅西建功阿根廷3连胜出线!赛后获3好消息+2坏消息,争冠形势出炉

梅西建功阿根廷3连胜出线!赛后获3好消息+2坏消息,争冠形势出炉

小火箭爱体育
2026-06-28 12:46:08
比不生娃更可怕的事情已发生!幼儿园清一色小男孩,性别比崩塌?

比不生娃更可怕的事情已发生!幼儿园清一色小男孩,性别比崩塌?

混沌录
2026-06-27 17:15:22
2026美加墨世界杯1/16决赛赛程时间表及对阵图一览!高清完整版

2026美加墨世界杯1/16决赛赛程时间表及对阵图一览!高清完整版

生活新鲜市
2026-06-28 19:59:40
俄外长:西方要求谈判的真实目的是拯救泽连斯基政权

俄外长:西方要求谈判的真实目的是拯救泽连斯基政权

俄罗斯卫星通讯社
2026-06-27 16:08:31
因妈妈姓氏太过特殊,全家一致同意“随母姓”,网友:换做是我,也随母姓

因妈妈姓氏太过特殊,全家一致同意“随母姓”,网友:换做是我,也随母姓

品读时刻
2026-05-24 09:01:06
整容失败不可怕,一股姨味才尴尬!52岁苏有朋给所有男星提了个醒

整容失败不可怕,一股姨味才尴尬!52岁苏有朋给所有男星提了个醒

胡一舸南游y
2026-06-28 22:43:38
以色列密谋暗杀巴基斯坦元帅,巴方放出灭国警告,以色列紧急收手

以色列密谋暗杀巴基斯坦元帅,巴方放出灭国警告,以色列紧急收手

安珈使者啊
2026-06-28 10:18:34
《四渡》刚拿单日票房冠军,2天破4000万,差评理由一致

《四渡》刚拿单日票房冠军,2天破4000万,差评理由一致

TVB的四小花
2026-06-28 18:11:33
确认重伤,乌加特:我遭遇了球员所能面对的最严重的伤病

确认重伤,乌加特:我遭遇了球员所能面对的最严重的伤病

懂球帝
2026-06-29 01:30:11
韩国瑜与蓝营对立,13名蓝委行动,傅崐萁表态明确

韩国瑜与蓝营对立,13名蓝委行动,傅崐萁表态明确

恋人视角
2026-06-28 19:19:50
割牛草女孩,代表北大回母校招生!

割牛草女孩,代表北大回母校招生!

环球网资讯
2026-06-28 09:34:17
简中繁中全都有!《GTA6》共支持13种语言 预购已开

简中繁中全都有!《GTA6》共支持13种语言 预购已开

游民星空
2026-06-28 12:32:36
还差1球,库尼亚有望成为曼联队史世界杯单届进球最多的球员

还差1球,库尼亚有望成为曼联队史世界杯单届进球最多的球员

懂球帝
2026-06-28 18:58:14
电车开了3000公里后,我终于敢说:开电车跑高速,记住这几点就够

电车开了3000公里后,我终于敢说:开电车跑高速,记住这几点就够

三农老历
2026-06-28 12:22:10
世界杯32强正式出炉!梅罗相遇只能是决赛 法国夺冠概率25.3%登顶

世界杯32强正式出炉!梅罗相遇只能是决赛 法国夺冠概率25.3%登顶

颜小白的篮球梦
2026-06-28 12:34:46
【2026.6.28】爆姐的饭后爆料:生命不止,爆料不息!

【2026.6.28】爆姐的饭后爆料:生命不止,爆料不息!

娱乐真爆姐
2026-06-28 23:25:58
中国44年来首次试射洲际导弹,全球反应堪比好莱坞大片

中国44年来首次试射洲际导弹,全球反应堪比好莱坞大片

烽火三月佳人三千
2026-06-25 14:21:42
为什么宁可一年掏一万交居民社保,也不碰灵活就业?暗藏4大优势

为什么宁可一年掏一万交居民社保,也不碰灵活就业?暗藏4大优势

王二哥老搞笑
2026-06-27 21:02:13
特斯拉汽车“主动悬架系统”新专利公开

特斯拉汽车“主动悬架系统”新专利公开

IT之家
2026-06-28 09:34:22
2026-06-29 02:56:49
linux运维菜
linux运维菜
喜欢使用Linux!
412文章数 4572关注度
往期回顾 全部

科技要闻

DeepSeek最新论文:如何让大模型跑得更快

头条要闻

四川宜宾市高县发生5.5级地震 震中距宜宾28公里

头条要闻

四川宜宾市高县发生5.5级地震 震中距宜宾28公里

体育要闻

两周飞5万公里!因凡蒂诺遭环保人士猛批

娱乐要闻

曾沛慈拿下《乘风2026》年度总冠军

财经要闻

省钱,我只服梁文锋

汽车要闻

搭载华为乾崑六件套 东风奕派M8预售19.98万起

态度原创

本地
旅游
数码
家居
公开课

本地新闻

世界杯球迷节:比球赛更好玩的派对

旅游要闻

不用出昆明,滇池边这片水上森林,藏着昆明最治愈的四季风光!

数码要闻

古尔曼:预计苹果今年发布搭载M5 Ultra芯片的Mac Studio

家居要闻

绿意盎然 自然之境

公开课

李玫瑾:为什么性格比能力更重要?

无障碍浏览 进入关怀版