前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【软件工具】服务器硬件资源监控

【软件工具】服务器硬件资源监控

作者头像
全栈程序员站长
发布2022-09-27 11:04:04
3.6K0
发布2022-09-27 11:04:04
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

服务器资源使用情况及硬件监控,是服务器管理员或运维人员必备的技能和工作内容。对于服务器硬件的时时监控,除了需要掌握定的方法外,还常会用到些相应的相关软件程序。

当然,运维同仁般都具备定的编程能力,根据服务器情况,编写个便捷、好用和适合自己的服务器硬件监控软件也是很有必要的。

服务器硬件监控
服务器硬件监控

  服务器硬件监控常用方法及相关软件:

  raid卡监控:raid卡常有raid卡megaraid、megaraidsas、lsimpt、smartarray及3ware等几种类型。其相应的监控工具软件有:megarc.bin、MegaCli、mpt-status、hpacucli及tw_cli等工具软件。

一般品牌服务器例如戴尔、惠普、IBM、华为等 都自带了硬件控制管理系统 。

服务器故障,能够第一时间发现并处理,是每一个网管都希望能够做到的事情。相对于软件故障,服务器硬件故障更让我们担心。服务器运行超过3年以上,硬盘、内存、电脑每一个组件都会让我们心惊肉跳。尤其是硬盘,故障率高,虽然有RAID保护,但如果一块硬盘损坏未及时发现,再坏一块硬盘将会付出惨重的代价。以RAID5为例,坏一块硬盘后,剩余硬盘压力会很大,如果没有热备盘或及时更换,很容易造成下一块硬盘的损坏。笔者曾亲历过2次1块硬盘损坏未及时发现,另一块硬盘再度损坏的场景。(还好有备机和数据备份,及时还原,仍是一身冷汗)。出了这种问题,数据是否可及时还原,还原后与原系统是否完全一致?不想承担这样的风险,就最好能及时监控、预警、处理,把大代价减成小代价。

因此硬件故障后及时预警处理,就成为运维&网管最希望达到的效果。目前市面上已经有很多商用的监控软件平台,但单从硬件的角度来说,笔者认为主流服务器厂商自带的监控管理平台更好用、简洁、廉价。如DELL的IDRAC和HP的ILO平台等

以DELL为例,为大家介绍一下IDRAC的功能和使用,注意:不论是DELL还是HP,远程管理模块都是可选件,在新购服务器时建议都选上,毕竟价格不贵(几百元搞定)。否则等需要时再去购买,安装配置都会比较麻烦,作为生产环境你一定不希望你的服务器关机或重起。

DELL的远程管理卡在服务器的后面,写着IDRAC字样的网口就是,默认IP:192.168.0.120,账户:root 初始密码:calvin。用笔记本连上网线,将本的IP设成同一段,在IE中输入https://192.168.0.120即可看到登录界面。 管理地址可更改,建议新构网络时直接规划一个管理网段。

那么问题来了?请看以下文字↓↓↓↓↓

通过哪些方式可以实现服务器硬件监控

通过哪些方式可以实现服务器硬件监控?是很多网友们最关心的问题,针对这些以下业内相关专家就来给大家介绍。

业内相关专家介绍,目前通过2种方式就能实现服务器硬件监控,即:1、使用服务器端check_nrpe调用被监控端的check_openmanage就能来进行实现,大家的话只需要在被监控端安装omsa和check_openmanage就好了;2、也能通过nagios服务器端直接通过check_openmanage来实现服务器硬件监控,使用这种方式的话就是需要在nagios服务端进行安装perl-net-snmp,并在被监控端安装omsa,snmp服务;不过需要提醒大家的是,一定要先能安装snmp服务再来安装omsa,也只有这样的话omsa才能自动进行更改snmp的相关配置文件以达到实现服务器硬件监控目的。

还有为实现服务器硬件监控配置nagios服务器端的方法步骤为:

方法步骤一:大家直接需要在nagios服务器上进行安装check_openmanage,详细的情况如下图。

方法步骤二:然后大家就需要能在nagios服务器上进行安装perl-net-snmp了,详细的情况如下图:

当然了为实现服务器硬件监控,配置被监控端的方法步骤为:

方法步骤一:需要进行安装snmp服务,也就是yum -y install net-snmp net-snmp-devel net-snmp-utils。

方法步骤二:接着就需要能够进行安装omsa,也就是wget -q -O – http://linux.dell.com/repo/hardware/latest/bootstrap.cgi | bashyum install srvadmin-all。

方法步骤三:以上方法步骤全部完成后就能再进行查看相关端口了。当有该端口后也就说明了大家已经将srvadmin安装成功,还有当大家进行安装完成后在首次启动的使用也需要动用/opt/dell/srvadmin/sbin/srvadmin-services.sh start,不然的话往往可能会引起出现一些问题的。

另外为了能够好的实现服务器硬件监控配置,大家就需要对防火墙再进行配置;当大家使用snmp来进行监控的时候,就需要能够对被监控端对nagios服务器开启snmp端口udp161,这样的话整个实现服务器硬件监控配置就全部进行完成了。站长推荐——别不相信微信语音也能被黑客监控到。

服务器硬件监控之OMSA (戴尔服务器专有其他服务器类似)

在对服务器的硬件监控上,目前业界主要基于如下两种:

1、服务器自带的工具,比如HP的hpacucli,DELL的OMSA等

2、智能平台管理接口 (IPMI,全称Intelligent Platform Management Interface)

3、通过nagios服务器端直接通过check_openmanage来实现服务器硬件监控,使用这种方式的话就是需要在nagios服务端进行安装perl-net-snmp,并在被监控端安装omsa,snmp服务

基于以上两种,通过nagios、zabbix或自研运维平台等包裹,进行预警操作。

由于博主公司使用的服务器全部为DELL PowerEdge系列的,因此博主这里将以如何对DELL PowerEdge系列服务器硬件进行监控这一实际案例为主。

一、OMSA 介绍

DELL OMSA的全称为Dell Openmanage Server Administrator,它是戴尔公司基于自主研发力量开发的IT系统管理解决方案,通过与业内领先的系统管理解决方案供应商密切配合,在深入了解用户对系统管理需求的基础上,OMSA系统管理方案可以全面解决系统管理人员最关心的系统部署、系统监控和系统变更三大系统管理问题。它通过提供以下两种方式来对本地和远程的服务器进行管理和监控。

1、基于Web浏览器的集成图形用户界面(GUI)

2、操作系统的命令行界面(CLI)工具

大家可能对DELL的IDRAC更熟悉一点,OMSA其实就是 IDRAC企业版的开源社区版。这里列出IDRAC和OMSA的web界面,两者看着非常相似,功能上也是非常相似。

IDRAC:

wKioL1WJG7aT9U-wAANhaTogQ1Q904.jpg
wKioL1WJG7aT9U-wAANhaTogQ1Q904.jpg

OMSA:

wKioL1WJG82ByjVfAANhourPBYI801.jpg
wKioL1WJG82ByjVfAANhourPBYI801.jpg

二、OMSA 部署

下面介绍如何安装使用OMSA。由于我们公司主要使用的是红帽系列的产品,因此这里列举RHEL6和CentOS6部署方式。

RHEL 6.X 平台安装 OMSA:

在RHEL6上部署OMSA,由于DELL售后那边发给我过资料,这里我就不在重复写了,贴上DELL售后的资料,非常的详尽。

最新版本的OMSA 8.1下载链接:http://downloads.dell.com/FOLDER02876154M/1/OM-SrvAdmin-Dell-Web-LX-8.1.0-1518.RHEL6.x86_64_A00.tar.gz

安装链接:http://zh.community.dell.com/techcenter/systems-management/w/wiki/561.omsalinux

CentOS 6.X 平台安装 OMSA:

CentOS 6.x系列的,其实也可以使用和RHEL6一样的方式安装,只不过需要修改脚本里面的一些东西。我们可以使用dell官方提供的yum源,直接使用yum来在CentOS上安装OMSA。

下面附上安装步骤:

1、安装dell的yum源

1

[root@kvm-phy04-jz ~] # wget -q -O - http://linux.dell.com/repo/hardware/latest/bootstrap.cgi | bash

2、安装必要的2个包

1

[root@kvm-phy04-jz ~] # yum -y install OpenIPMI srvadmin-all

3、启动服务

1

[root@kvm-phy04-jz ~] # /opt/dell/srvadmin/sbin/srvadmin-services.sh start

4、设置开机自启动

1 2 3 4 5 6

[root@kvm-phy04-jz ~] # /opt/dell/srvadmin/sbin/srvadmin-services.sh enable racsvc 0:off 1:off 2:on 3:on 4:on 5:on 6:off dataeng 0:off 1:off 2:on 3:on 4:on 5:on 6:off dsm_om_shrsvc 0:off 1:off 2:on 3:on 4:on 5:on 6:off dsm_om_connsvc 0:off 1:off 2:off 3:on 4:off 5:on 6:off ipmi 0:off 1:off 2:on 3:on 4:on 5:on 6:off

5、通过web访问OMSA界面

使用浏览器访问https://ip_address:1311打开OMSA的web页面。这里注意,一定要使用https去访问,否则页面会打不开。

wKiom1WJGlmgelNUAAFt5LJcIes144.jpg
wKiom1WJGlmgelNUAAFt5LJcIes144.jpg

注意 : 这里的用户名和密码使用的是系统的用户名密码,这地方和IDRAC是不一样的。

这样子,OMSA就安装好了,web管理页面也可以使用了。

精简OMSA组件:

虽然 OMSA 的web端功能很强大,但是在工作当中,我们的主要目的并非是使用它的web端,更多时间只是想使用它提供的一些命令行工具来获取服务器主要组件的相关信息,比如CPU、内存、硬盘、陈列和主板温度之类的健康状况。因此,我们没有必要安装OMSA的web端。

下面就是卸载OMSA的web端相关的包:

1

[root@kvm-phy04-jz ~] # yum remove -y srvadmin-tomcat srvadmin-jre srvadmin-smweb

删除相关的无用内容:

1

[root@kvm-phy04-jz ~] # rm -rf /opt/dell/srvadmin/lib64/openmanage/apache-tomcat

上述操作执行完毕之后,OMSA的web端也就基本清理干净了,这里列出系统中安装的和OMSA相关的包:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45

[root@kvm-phy04-jz ~] # rpm -qa|grep srvadmin srvadmin-omcommon-8.1.0-4.92.1.el6.x86_64 srvadmin-xmlsup-8.1.0-4.91.1.el6.x86_64 srvadmin-storelib-8.1.0-4.139.1.el6.x86_64 srvadmin-storage-cli-8.1.0-4.138.2.el6.x86_64 srvadmin-racdrsc-8.1.0-4.4.7.el6.x86_64 srvadmin-storage-snmp-8.1.0-4.138.2.el6.x86_64 srvadmin-storageservices-cli-8.1.0-4.3.1.el6.x86_64 srvadmin-oslog-8.1.0-4.85.1.el6.x86_64 srvadmin-isvc-snmp-8.1.0-4.38.1.el6.x86_64 srvadmin-rac4-8.1.0-4.1.127.el6.x86_64 srvadmin-server-cli-8.1.0-4.3.1.el6.x86_64 srvadmin-omilcore-8.1.0-4.85.1.el6.x86_64 srvadmin-racadm4-8.1.0-4.1.127.el6.x86_64 srvadmin-deng-8.1.0-4.8.1.el6.x86_64 srvadmin-hapi-8.1.0-4.10.2.el6.x86_64 srvadmin-ominst-8.1.0-4.94.3.el6.x86_64 srvadmin-omacore-8.1.0-4.94.3.el6.x86_64 srvadmin-storelib-sysfs-8.1.0-4.1.1.el6.x86_64 srvadmin-nvme-8.1.0-4.139.1.el6.x86_64 srvadmin-storage-8.1.0-4.138.2.el6.x86_64 srvadmin-sysfsutils-8.1.0-4.1.1.el6.x86_64 srvadmin-deng-snmp-8.1.0-4.8.1.el6.x86_64 srvadmin-racadm5-8.1.0-4.1.128.el6.x86_64 srvadmin-idracadm-8.1.0-4.4.7.el6.x86_64 srvadmin-racsvc-8.1.0-4.1.127.el6.x86_64 srvadmin-idrac-ivmcli-8.1.0-4.6.3.el6.x86_64 srvadmin-idrac-8.1.0-4.4.7.el6.x86_64 srvadmin-storageservices-snmp-8.1.0-4.3.1.el6.x86_64 srvadmin-rac4-populator-8.1.0-4.1.127.el6.x86_64 srvadmin-cm-8.1.0-4.1.249.el6.x86_64 srvadmin-server-snmp-8.1.0-4.3.1.el6.x86_64 srvadmin-itunnelprovider-8.1.0-4.27.1.el6.x86_64 srvadmin-omacs-8.1.0-4.92.1.el6.x86_64 srvadmin-isvc-8.1.0-4.38.1.el6.x86_64 srvadmin-smcommon-8.1.0-4.138.2.el6.x86_64 srvadmin-realssd-8.1.0-4.139.1.el6.x86_64 srvadmin-rac-components-8.1.0-4.4.7.el6.x86_64 srvadmin-argtable2-8.1.0-4.5.1.el6.x86_64 srvadmin-rac5-8.1.0-4.1.128.el6.x86_64 srvadmin-idrac-snmp-8.1.0-4.4.7.el6.x86_64 srvadmin-idrac-vmcli-8.1.0-4.5.1.el6.x86_64 srvadmin-storageservices-8.1.0-4.3.1.el6.x86_64 srvadmin-base-8.1.0-4.3.1.el6.x86_64 srvadmin-standardAgent-8.1.0-4.3.1.el6.x86_64

三、OMSA 使用指南

由于 OMSA 的 web 端已经被我们卸载掉了。因此我们目前想要看到服务器的相关硬件信息就需要使用命令行的方式获取了。那么,这里就介绍如何使用命令获取服务器硬件信息。

OMSA自带了一些工具来提供给我们命令行的查询和设置接口,这里主要介绍两个,一个是omreport,另一个是omconfig。omreport是用来查询服务器各种硬件状态,omconfig是用来设置硬件的一些属性的。

我在这里仅列出这两个命令的常用几个命令,更多的命令详情大家可以去如下两个网站查询:

1 2

1、http: //www .sxszjzx.com/~t096 /manual/sc/Dosa/CLI/report .htm 2、http: //topics-cdn .dell.com /pdf/dell-opnmang-srvr-admin-v8 .1_User's%20Guide_en-us.pdf

命令指南:

1 2 3 4 5 6 7 8 9 10 11 12 13

/opt/dell/srvadmin/bin/omreport chassis # 显示所有主要组件的常规状态 /opt/dell/srvadmin/bin/omreport chassis memory # 显示内存信息 /opt/dell/srvadmin/sbin/omreport chassis temps # 显示系统主要组件的温度 /opt/dell/srvadmin/bin/omreport storage adisk controller=0 # 查看磁盘陈列中的硬盘状态 /opt/dell/srvadmin/bin/omreport storage pdisk controller=0 # 查看物理磁盘信息 /opt/dell/srvadmin/bin/omreport storage vdisk controller=0 # 查看虚拟硬盘的状态 /opt/dell/srvadmin/bin/omreport storage controller # 查看控制器(即RAID卡)的属性 /opt/dell/srvadmin/bin/omreport storage channel controller=0 # 查看通道的属性 /opt/dell/srvadmin/bin/omreport storage enclosure controller=0 # 查看enclosure的属性 /opt/dell/srvadmin/bin/omreport storage battery # 查看电池属性 /opt/dell/srvadmin/bin/omconfig storage controller action=setrebuildrate controller=0 rate=100 # 调整rebuild的速度 /opt/dell/srvadmin/bin/omconfig storage vdisk action=changepolicy controller=0 vdisk=0 readpolicy=ara # 修改raid的读策略 /opt/dell/srvadmin/bin/omconfig storage vdisk action=changepolicy controller=0 vdisk=0 writepolicy=fwb # 修改raid的写策略

命令范例:

1、查看系统主要组件的温度

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42

[root@kvm-phy04-jz ~] # /opt/dell/srvadmin/bin/omreport chassis temps Temperature Probes Information ------------------------------------ Main System Chassis Temperatures: Ok ------------------------------------ Index : 0 Status : Ok Probe Name : System Board Inlet Temp Reading : 26.0 C Minimum Warning Threshold : 3.0 C Maximum Warning Threshold : 42.0 C Minimum Failure Threshold : -7.0 C Maximum Failure Threshold : 47.0 C Index : 1 Status : Ok Probe Name : System Board Exhaust Temp Reading : 31.0 C Minimum Warning Threshold : 8.0 C Maximum Warning Threshold : 70.0 C Minimum Failure Threshold : 3.0 C Maximum Failure Threshold : 75.0 C Index : 2 Status : Ok Probe Name : CPU1 Temp Reading : 36.0 C Minimum Warning Threshold : 8.0 C Maximum Warning Threshold : 79.0 C Minimum Failure Threshold : 3.0 C Maximum Failure Threshold : 84.0 C Index : 3 Status : Ok Probe Name : CPU2 Temp Reading : 30.0 C Minimum Warning Threshold : 8.0 C Maximum Warning Threshold : 79.0 C Minimum Failure Threshold : 3.0 C Maximum Failure Threshold : 84.0 C

2、查看虚拟硬盘的状态

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22

[root@kvm-phy04-jz ~] # /opt/dell/srvadmin/bin/omreport storage vdisk controller=0 List of Virtual Disks on Controller PERC H310 Mini (Embedded) Controller PERC H310 Mini (Embedded) ID : 0 Status : Ok Name : cislunar_space State : Ready Hot Spare Policy violated : Not Assigned Encrypted : Not Applicable Layout : RAID-10 Size : 836.63 GB (898319253504 bytes) T10 Protection Information Status : No Associated Fluid Cache State : Not Applicable Device Name : /dev/sda Bus Protocol : SAS Media : HDD Read Policy : No Read Ahead Write Policy : Write Through Cache Policy : Not Applicable Stripe Element Size : 64 KB Disk Cache Policy : Disabled

3、查看控制器(即RAID卡)的属性

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44

[root@kvm-phy04-jz ~] # /opt/dell/srvadmin/bin/omreport storage controller Controller PERC H310 Mini(Embedded) Controller ID : 0 Status : Non-Critical Name : PERC H310 Mini Slot ID : Embedded State : Degraded Firmware Version : 20.12.1-0002 Minimum Required Firmware Version : 20.13.1-0001 Driver Version : 06.700.06.00-rh1 Minimum Required Driver Version : Not Applicable Storport Driver Version : Not Applicable Minimum Required Storport Driver Version : Not Applicable Number of Connectors : 2 Rebuild Rate : 30% BGI Rate : 30% Check Consistency Rate : 30% Reconstruct Rate : 30% Alarm State : Not Applicable Cluster Mode : Not Applicable SCSI Initiator ID : Not Applicable Cache Memory Size : 0 MB Patrol Read Mode : Auto Patrol Read State : Stopped Patrol Read Rate : 30% Patrol Read Iterations : 0 Abort Check Consistency on Error : Disabled Allow Revertible Hot Spare and Replace Member : Enabled Load Balance : Not Applicable Auto Replace Member on Predictive Failure : Disabled Redundant Path view : Not Applicable CacheCade Capable : Not Applicable Persistent Hot Spare : Disabled Encryption Capable : Not Applicable Encryption Key Present : Not Applicable Encryption Mode : Not Applicable Preserved Cache : Not Applicable Spin Down Unconfigured Drives : Disabled Spin Down Hot Spares : Disabled Spin Down Configured Drives : Not Applicable Automatic Disk Power Saving (Idle C) : Not Applicable T10 Protection Information Capable : No

OK,本篇博文就到此,希望能对大家有所帮助!

剧透:

除了OMSA自带的工具,还有一个便捷查询的第三方工具 check_openmanage。不过由于check_openmanage内容蛮多的,我就又拆出来一篇博文,避免本篇文章太长,使读者没有看下去的兴致了。

nagios监控ESXi硬件

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

这里有两种方案:

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

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

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

先看看官网介绍:

https://www.claudiokuenzler.com/nagios-plugins/check_esxi_hardware.php#.VWV5_JCUfTA

其中:

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

?

1 2 3 4

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

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

?

1 2 3 4 5 6 7 8 9 10

[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</module></module>

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

2.安装python的第三方模块

?

1 2 3 4 5 6

cd /usr/local/src wget https: //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.使用插件

?

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48

[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</path>

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

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

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

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

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

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

\
\

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

\
\

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

5.测试

?

1 2

[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主机,编辑如下

?

1 2 3 4 5 6 7 8 9

~ # 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”

再测试下:

?

1 2

[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中添加命令。

?

1 2 3 4 5

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)添加服务

?

1 2 3 4 5 6 7 8

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)监控效果图

\
\

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

【总结】

对于服务器硬件监控是怎么做的?硬件的运行状态,比如硬件的温度,电源模块状态等?

zabbix有个ipmi接口功能, 是通过ipmi接口去访问服务器的管理口(在操作系统通过ipmitool访问硬件状态信息进行监控)

不过如果有软件或者脚本工具能读取到相应的信息,可以通过zabbix自定义item,然后把相应的信息传给zabbix就可以了

直接上方案:OMSA、IPMI+zabbix 可以采用这两个方案 监控服务器硬件

nagios 可以也可以(通过nagios插件check_相应模块) 相对复杂点 ——要么就写脚本采集然后提交到数据库吧 商业硬件/嵌入式设备监控价格很贵

前提:

无论采用OMSA还是nagios 都需要提前安装snmp服务(OMSA则要安装对应的卡服务)

IPMI+zabbix 则不需要 直接通过api调用硬件参数

一般品牌服务器例如戴尔、惠普、IBM、华为等 都自带了硬件控制管理系统【需要安装即可对服务器的硬件资源进行查看】

简单点的就可以用OMSA,建议软件服务和硬件监控系统分离,不然你的数据库存储要爆炸。

版权声明:原创作品,如需转载,请注明出处。否则将追究法律责任

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/179196.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 通过哪些方式可以实现服务器硬件监控
  • 服务器硬件监控之OMSA (戴尔服务器专有其他服务器类似)
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档