阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Nagios监控ESXi硬件

488次阅读
没有评论

共计 10056 个字符,预计需要花费 26 分钟才能阅读完成。

普通的 Dell 服务器硬件监控我们可以通过 nagios+openmanage 来实现,但是 vsphere 环境中的 Esxi 主机的硬件监控怎么实现呢?

这里有两种方案:

1. 通过 nagios 插件 check_esx 来实现,这种方式需要安装 vmware vsphere sdk for perl 工具包

2. 通过 nagios 插件 check_esxi_hardware.py 来实现,此插件使用 python 写的。

感人感觉第二种方式比较简单些,python 在 linux 天生内置,还需要更多理由吗?

先看看官网介绍。

其中:

Requirements
– Python must be installed
– The Python extension pywbem must be installed
Windows users click here for a step-by-step guide how to install Python and PyWBEM on a Windows server.
– If there is a firewall between your monitoring and ESXi server, open ports 443 and 5989

以上是实现监控的先决条件:

1.python 必须安装

2.python 的扩展包 pywbem 必须安装

3. 你的 Esxi 主机的 443,5989 端口必须对 nagios 监控端开放

好了,下面就赶紧实施吧!

1. 安装 check_essi_hardware.py

cd /usr/local/nagios/libexec
wget http://www.claudiokuenzler.com/nagios-plugins/check_esxi_hardware.py
chown nagios.nagios check_esxi_hardware.py
chmod 755 check_esxi_hardware.py

安装完成后,我们来查看下这个插件都有什么参数:

[root@nagios libexec]# ./check_esxi_hardware.py
Traceback (most recent call last):
  File “./check_esxi_hardware.py”, line 222, in <module>
    import pywbem
ImportError: No module named pywbem
[root@nagios libexec]# ./check_esxi_hardware.py -h
Traceback (most recent call last):
  File “./check_esxi_hardware.py”, line 222, in <module>
    import pywbem
ImportError: No module named pywbem

哦,原来 pywbem 模块没有安装,那就赶紧装下吧。

2. 安装 python 的第三方模块

cd /usr/local/src
wget http://downloads.sourceforge.net/project/pywbem/pywbem/pywbem-0.7/pywbem-0.7.0.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fpywbem%2Ffiles%2Fpywbem%2F&ts=1299742557&use_mirror=voxel
tar -zxvf  pywbem-0.7.0.tar.gz
cd pywbem-0.7.0
python setup.py build
python setup.py install –record files.txt

ok,pywbem 安装完毕。

注意:(1). 不要使用 pywbem-0.8.0 版本,这个版本有 bug 导致我们的插件无法使用

    (2).python setup.py install –record files.txt 记录安装目录的目的就是为了方便卸载插件,cat files.txt | xargs rm -rf

3. 使用插件

[root@nagios libexec]# ./check_esxi_hardware.py
no parameters specified

Usage: check_esxi_hardware.py  https://hostname user password system [verbose]
example: check_esxi_hardware.py https://my-shiny-new-vmware-server root fakepassword dell

or, using new style options:

usage: check_esxi_hardware.py -H hostname -U username -P password [-V system -v -p -I XX]
example: check_esxi_hardware.py -H my-shiny-new-vmware-server -U root -P fakepassword -V auto -I uk

or, verbosely:

usage: check_esxi_hardware.py –host=hostname –user=username –pass=password [–vendor=system –verbose –perfdata –html=XX]

Options:
  –version            show program’s version number and exit
  -h, –help            show this help message and exit

  Mandatory parameters:
    -H HOST, –host=HOST
                        report on HOST
    -U USER, –user=USER
                        user to connect as
    -P PASS, –pass=PASS
                        password, if password matches file:<path>, first line
                        of given file will be used as password

  Optional parameters:
    -V VENDOR, –vendor=VENDOR
                        Vendor code: auto, dell, hp, ibm, intel, or unknown
                        (default)
    -v, –verbose      print status messages to stdout (default is to be
                        quiet)
    -p, –perfdata      collect performance data for pnp4nagios (default is
                        not to)
    -I XX, –html=XX    generate html links for country XX (default is not to)
    -t TIMEOUT, –timeout=TIMEOUT
                        timeout in seconds – no effect on Windows (default =
                        no timeout)
    -i IGNORE, –ignore=IGNORE
                        comma-separated list of elements to ignore
    –no-power          don’t collect power performance data
    –no-volts          don’t collect voltage performance data
    –no-current        don’t collect current performance data
    –no-temp          don’t collect temperature performance data
    –no-fan            don’t collect fan performance data

从上面可以看出,此插件需要用户名,密码连接 Esxi 主机才能使用。当然为保证安全,只需要在 Esxi 主机上建立只读的用户名和密码即可。

其中 -U 用户名 -P 密码 - V 服务器类型,有 dell,hp 等,根据实际情况 - v 打印状态信息 - p 结合画图工具画图

-I 输出链接到 dell 或其他官网,方面找解决方案 - t 超时时间 - i 忽略某项监控内容

–no-power 不采集电源信息,以下雷同。

————————————– 分割线 ————————————–

在 Ubuntu 下配置 Mrtg 监控 Nginx 和服务器系统资源 http://www.linuxidc.com/Linux/2013-08/88417.htm

使用 snmp+Mrtg 监控 Linux 系统 http://www.linuxidc.com/Linux/2012-11/73561.htm

Mrtg 服务器搭建(监控网络流量)http://www.linuxidc.com/Linux/2012-07/64315.htm

网络监控器 Nagios 全攻略 http://www.linuxidc.com/Linux/2013-07/87067.htm

Nagios 搭建与配置详解 http://www.linuxidc.com/Linux/2013-05/84848.htm

Nginx 环境下构建 Nagios 监控平台 http://www.linuxidc.com/Linux/2011-07/38112.htm

在 RHEL5.3 上配置基本的 Nagios 系统 (使用 Nagios-3.1.2) http://www.linuxidc.com/Linux/2011-07/38129.htm

CentOS 5.5+Nginx+Nagios 监控端和被控端安装配置指南 http://www.linuxidc.com/Linux/2011-09/44018.htm

Ubuntu 13.10 Server 安装 Nagios Core 网络监控运用 http://www.linuxidc.com/Linux/2013-11/93047.htm

————————————– 分割线 ————————————–

 

更多详情见请继续阅读下一页的精彩内容 :http://www.linuxidc.com/Linux/2015-06/118686p2.htm

4. 给 Esxi 主机设置只读用户

(1)先登录 Esxi 主机,在“本地用户和组”标签中,空白处右键“添加”,即可添加用户。

Nagios 监控 ESXi 硬件

(2)将 nagios 用户设置成“只读角色”。在“权限”标签中,空白处右键“添加权限”,然后按下图操作

Nagios 监控 ESXi 硬件

ok, 只读用户 nagios 就添加完毕。

5. 测试

[root@nagios libexec]# ./check_esxi_hardware.py -H 10.10.10.1 -U nagios -P nagios -V dell
UNKNOWN: Authentication Error

又报错了,认证失败。在网上查到原因是 Esxi 版本不同差异导致,例如我的本地测试机和生产环境都是 5.5,但是小版本不一样,也报错了。

解决方案:

ssh 登陆 Esxi 主机,编辑如下

~ # cat /etc/security/access.conf
# This file is autogenerated and must not be edited.

+:dcui:ALL
+:root:ALL
+:vpxuser:ALL
+:vslauser:ALL
-:nagios:ALL
-:ALL:ALL

将“-:nagios:ALL”去掉,在第二行加上“+:nagios:sfcb”

这种方式适合在不经常添加用户的情况下使用,只改一次即可;但是经常加用户可能会导致 access.conf 变化,需要设置计划任务添加“+:nagios:sfcb”

再测试下:

[root@nagios libexec]# ./check_esxi_hardware.py -H 10.10.10.1 -U nagios -P nagios -V dell
OK – Server: Dell Inc. PowerEdge R610 s/n: XXXXXX System BIOS: XXXXXXXXXXX

ok,监控正常。

6. 下面将将其加入到监控系统中吧。

(1)先在 commands.cfg 中添加命令

vim /usr/local/nagios/etc/objects/commands.cfg
define command {
    command_name check_esxi_hardware
    command_line $USER1$/check_esxi_hardware.py -H $HOSTADDRESS$ -U $ARG1$ -P $ARG2$ -V $ARG3$ -I isolutions -p -t 20 
}

(2)添加服务

 define service{
    use                    local-service,srv-pnp
    host_name              test
    service_description    esxi_health
    check_command          check_esxi_hardware!nagios!nagios!dell
    service_groups          hardware_health
    notifications_enabled  1 
    } 

nagioscheck

service nagios reload

(3) 监控效果图

Nagios 监控 ESXi 硬件

其中 href 中的链接就是我们在 check_esxi_hardware.py 中 - I 参数生成,方便我们直接查找解决方案。

Nagios 的详细介绍 :请点这里
Nagios 的下载地址 :请点这里

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2015-06/118686.htm

普通的 Dell 服务器硬件监控我们可以通过 nagios+openmanage 来实现,但是 vsphere 环境中的 Esxi 主机的硬件监控怎么实现呢?

这里有两种方案:

1. 通过 nagios 插件 check_esx 来实现,这种方式需要安装 vmware vsphere sdk for perl 工具包

2. 通过 nagios 插件 check_esxi_hardware.py 来实现,此插件使用 python 写的。

感人感觉第二种方式比较简单些,python 在 linux 天生内置,还需要更多理由吗?

先看看官网介绍。

其中:

Requirements
– Python must be installed
– The Python extension pywbem must be installed
Windows users click here for a step-by-step guide how to install Python and PyWBEM on a Windows server.
– If there is a firewall between your monitoring and ESXi server, open ports 443 and 5989

以上是实现监控的先决条件:

1.python 必须安装

2.python 的扩展包 pywbem 必须安装

3. 你的 Esxi 主机的 443,5989 端口必须对 nagios 监控端开放

好了,下面就赶紧实施吧!

1. 安装 check_essi_hardware.py

cd /usr/local/nagios/libexec
wget http://www.claudiokuenzler.com/nagios-plugins/check_esxi_hardware.py
chown nagios.nagios check_esxi_hardware.py
chmod 755 check_esxi_hardware.py

安装完成后,我们来查看下这个插件都有什么参数:

[root@nagios libexec]# ./check_esxi_hardware.py
Traceback (most recent call last):
  File “./check_esxi_hardware.py”, line 222, in <module>
    import pywbem
ImportError: No module named pywbem
[root@nagios libexec]# ./check_esxi_hardware.py -h
Traceback (most recent call last):
  File “./check_esxi_hardware.py”, line 222, in <module>
    import pywbem
ImportError: No module named pywbem

哦,原来 pywbem 模块没有安装,那就赶紧装下吧。

2. 安装 python 的第三方模块

cd /usr/local/src
wget http://downloads.sourceforge.net/project/pywbem/pywbem/pywbem-0.7/pywbem-0.7.0.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fpywbem%2Ffiles%2Fpywbem%2F&ts=1299742557&use_mirror=voxel
tar -zxvf  pywbem-0.7.0.tar.gz
cd pywbem-0.7.0
python setup.py build
python setup.py install –record files.txt

ok,pywbem 安装完毕。

注意:(1). 不要使用 pywbem-0.8.0 版本,这个版本有 bug 导致我们的插件无法使用

    (2).python setup.py install –record files.txt 记录安装目录的目的就是为了方便卸载插件,cat files.txt | xargs rm -rf

3. 使用插件

[root@nagios libexec]# ./check_esxi_hardware.py
no parameters specified

Usage: check_esxi_hardware.py  https://hostname user password system [verbose]
example: check_esxi_hardware.py https://my-shiny-new-vmware-server root fakepassword dell

or, using new style options:

usage: check_esxi_hardware.py -H hostname -U username -P password [-V system -v -p -I XX]
example: check_esxi_hardware.py -H my-shiny-new-vmware-server -U root -P fakepassword -V auto -I uk

or, verbosely:

usage: check_esxi_hardware.py –host=hostname –user=username –pass=password [–vendor=system –verbose –perfdata –html=XX]

Options:
  –version            show program’s version number and exit
  -h, –help            show this help message and exit

  Mandatory parameters:
    -H HOST, –host=HOST
                        report on HOST
    -U USER, –user=USER
                        user to connect as
    -P PASS, –pass=PASS
                        password, if password matches file:<path>, first line
                        of given file will be used as password

  Optional parameters:
    -V VENDOR, –vendor=VENDOR
                        Vendor code: auto, dell, hp, ibm, intel, or unknown
                        (default)
    -v, –verbose      print status messages to stdout (default is to be
                        quiet)
    -p, –perfdata      collect performance data for pnp4nagios (default is
                        not to)
    -I XX, –html=XX    generate html links for country XX (default is not to)
    -t TIMEOUT, –timeout=TIMEOUT
                        timeout in seconds – no effect on Windows (default =
                        no timeout)
    -i IGNORE, –ignore=IGNORE
                        comma-separated list of elements to ignore
    –no-power          don’t collect power performance data
    –no-volts          don’t collect voltage performance data
    –no-current        don’t collect current performance data
    –no-temp          don’t collect temperature performance data
    –no-fan            don’t collect fan performance data

从上面可以看出,此插件需要用户名,密码连接 Esxi 主机才能使用。当然为保证安全,只需要在 Esxi 主机上建立只读的用户名和密码即可。

其中 -U 用户名 -P 密码 - V 服务器类型,有 dell,hp 等,根据实际情况 - v 打印状态信息 - p 结合画图工具画图

-I 输出链接到 dell 或其他官网,方面找解决方案 - t 超时时间 - i 忽略某项监控内容

–no-power 不采集电源信息,以下雷同。

————————————– 分割线 ————————————–

在 Ubuntu 下配置 Mrtg 监控 Nginx 和服务器系统资源 http://www.linuxidc.com/Linux/2013-08/88417.htm

使用 snmp+Mrtg 监控 Linux 系统 http://www.linuxidc.com/Linux/2012-11/73561.htm

Mrtg 服务器搭建(监控网络流量)http://www.linuxidc.com/Linux/2012-07/64315.htm

网络监控器 Nagios 全攻略 http://www.linuxidc.com/Linux/2013-07/87067.htm

Nagios 搭建与配置详解 http://www.linuxidc.com/Linux/2013-05/84848.htm

Nginx 环境下构建 Nagios 监控平台 http://www.linuxidc.com/Linux/2011-07/38112.htm

在 RHEL5.3 上配置基本的 Nagios 系统 (使用 Nagios-3.1.2) http://www.linuxidc.com/Linux/2011-07/38129.htm

CentOS 5.5+Nginx+Nagios 监控端和被控端安装配置指南 http://www.linuxidc.com/Linux/2011-09/44018.htm

Ubuntu 13.10 Server 安装 Nagios Core 网络监控运用 http://www.linuxidc.com/Linux/2013-11/93047.htm

————————————– 分割线 ————————————–

 

更多详情见请继续阅读下一页的精彩内容 :http://www.linuxidc.com/Linux/2015-06/118686p2.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-20发表,共计10056字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19350
评论数
4
阅读量
7963120
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
自己手撸一个AI智能体—跟创业大佬对话

自己手撸一个AI智能体—跟创业大佬对话

自己手撸一个 AI 智能体 — 跟创业大佬对话 前言 智能体(Agent)已经成为创业者和技术人绕...
三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Android 的最优解?

三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Android 的最优解?

  三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Andr...
星哥带你玩飞牛NAS-14:解锁公网自由!Lucky功能工具安装使用保姆级教程

星哥带你玩飞牛NAS-14:解锁公网自由!Lucky功能工具安装使用保姆级教程

星哥带你玩飞牛 NAS-14:解锁公网自由!Lucky 功能工具安装使用保姆级教程 作为 NAS 玩家,咱们最...
你的云服务器到底有多强?宝塔跑分告诉你

你的云服务器到底有多强?宝塔跑分告诉你

你的云服务器到底有多强?宝塔跑分告诉你 为什么要用宝塔跑分? 宝塔跑分其实就是对 CPU、内存、磁盘、IO 做...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
告别Notion焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁”

告别Notion焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁”

  告别 Notion 焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁” 引言 在数字笔记工...
开发者福利:免费 .frii.site 子域名,一分钟申请即用

开发者福利:免费 .frii.site 子域名,一分钟申请即用

  开发者福利:免费 .frii.site 子域名,一分钟申请即用 前言 在学习 Web 开发、部署...
多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞定

多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞定

多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞...
星哥带你玩飞牛NAS硬件03:五盘位+N5105+双网口的成品NAS值得入手吗

星哥带你玩飞牛NAS硬件03:五盘位+N5105+双网口的成品NAS值得入手吗

星哥带你玩飞牛 NAS 硬件 03:五盘位 +N5105+ 双网口的成品 NAS 值得入手吗 前言 大家好,我...
星哥带你玩飞牛NAS-14:解锁公网自由!Lucky功能工具安装使用保姆级教程

星哥带你玩飞牛NAS-14:解锁公网自由!Lucky功能工具安装使用保姆级教程

星哥带你玩飞牛 NAS-14:解锁公网自由!Lucky 功能工具安装使用保姆级教程 作为 NAS 玩家,咱们最...