通过SnmpWalk获取服务器状态信息
简单网络管理协议SNMP(Simple Network Management Protocol)是网络监控和网络设备管理的统一 协议,并被所有主流的操作系统和大量网络应用程序所支持。SNMP广泛用于管理和监控网络上的设备,大 多数专业的设备都有SNMP agent代理,这些代理被激活和配置后用于和SNMP管理 NMS(network manage ment system)网络管理系统通信。使用SnmpWalk通过检测一组变量可用于在单个设备上读取数据,可以获 得完整的列表信息或部分列表信息。通过分析用SnmpWalk获得的网络设备扫描结果,您可以开发一个受支 持的MIBs列表,并通过这种方式获得变量和可能值的完整描述。除此之外,MIB文档包含关于SNMP变量的信 息,这些信息仅可用于编写。在分析通过SnmpWalk从硬件或软件SNMP源检索到的信息之后,您可以使用Snmp Set和SnmpGet工具来更改和获取值。本篇我们以Lenovo ThinkSystem服务器为例,来演示一下如何用SnmpWalk来获取服务器状态或配置信息。 这里我们使用SR650服务器,使用SnmpWalk之前,确保已经在XCC上正确配置了SNMP,有关如何 在XCC上配 置SNMP可以参考本站之前的文章: Lenovo ThinkSystem XClarity Controller (XCC) SNMP 配置方法
获取MIB库文件 通过如下链接,根据提示选择相应的机型后,在LXCC固件下载项里面,可以看到包含有4个MIB库文件。 将这4个MIB库文件下载下来。 Home - Data Center Support - Lenovo Support US
安装并配置SnmpWalk 1、以Linux系统为例, 这里使用的操作系统为RHEL7.4,使用以下命令安装所有SNMP相关的包 yum install -y *snmp*
2、运行snmpconf,根据提示创建snmp.conf 文件
3、将新生成的snmp.conf文件复制到/etc/snmp/目录并修改该文件。加入一行: mibdirs /usr/share/snmp/mibs/
4、将前面下载的4个MIB库文件拷贝到/usr/share/snmp/mibs/目录。
解析MIB库 1、要通过SNMP获取到服务器特定的状态,需要知道每个OID所代表的含义,这就需要先对MIB库进行解析, 在Linux系统下使用以下命令进行解析。首先查看MIB库的DEFINITION。 grep DEFINITION *.mib可以看到4个MIB库的DEFINITIONS,例如LENOVO-XCC-MIB
2、使用snmptranslate命令解析出OID的含义,例如使用以下命令解析出LENOVO-XCC-MIB这个库中所定义 的OID,并将其保存为一个TXT文件。 snmptranslate -Tz -m LENOVO-XCC-MIB > xcc-oid.txt
3、用记事本等工具打开TXT文件,就可以查看每个OID所代表的含义。
4、另外也可以通过OID Entry查看同一项中所有类型的OID是多少,例如: snmptranslate -Tz -m LENOVO-XCC-MIB |grep 19046.11.1.1.13.1.3.1
查询OID 1、使用SnmpWalk通过OID查询服务器状态信息。例如查看服务器上硬盘的状态信息。 snmpwalk -v 3 -u jacky -A password 172.16.80.66 -On 1.3.6.1.4......-v 3 代表使用SNMP 版本3-u SNMP账号,注意与XCC中创建的SNMP账号匹配-A SNMP密码,注意与XCC中创建的SNMP账号匹配-On 要查询的OID,通过前面导出的OID翻译文本找到想要查询的项。IP地址为Agent端的IP地址,在我们的演示环境中,就是XCC的IP地址。
3、下图是通SnmpWalk显示的RAID卡信息。我们可以看到RAID卡的型号,固件版本,及其安装的Slot槽位 等信息。
4、如果没有Linux系统,需要使用Windows,也可以使用SnmpWalk。 SnmpWalk.exe -r:172.16.80.66 -v:3 -sn:jacky -aw:password -os:1.3.6.1.4.....-r: agent端的IP地址-v:3 SNMP版本3-sn: SNMP账号-aw: SNMP密码-os: OID
5、通过SnmpWalk.exe将OID导出到CSV文件。 SnmpWalk.exe -r:172.16.80.66 -v:3 -sn:jacky -aw:password -csv > oid.csv
6、另外,在Windows系统上,也可以使用图形界面的MIB Browser,通过MIB Browser可以快速查询到每个 OID所代表的含义,同时也可以直接通过MIB Browser查询服务器的状态.
转载至https://www.kclouder.cn/snmpwalk/
通过SnmpWalk获取服务器状态信息相关推荐
- PHP获取CentOS服务状态,简单linux下php获取服务器状态代码
简单的linux下的php获取服务器状态的代码,不多说-直接上函数: function get_used_status(){ $fp = popen('top -b -n 2 | grep -E &q ...
- python request post 数组_[pve][python]用python3获取pve状态信息
手头的Proxmox VE集群和节点越来越多,需要考虑统一管理了,先定一个小目标--集中状态监控. 以前写过检测ceph并用钉钉报警的bash脚本,这次换上洋气的方式,用python来通过pve的ap ...
- mysql服务器查绑定的域名查_MySQL使用show status查看MySQL服务器状态信息
MySQL使用show status查看MySQL服务器状态信息 这篇文章主要介绍了MySQL使用show status查看MySQL服务器状态信息,需要的朋友可以参考下 在LAMP架构的网站开发过程 ...
- PHP 获取服务器详细信息
PHP 获取系统信息,PHP 获取服务器详细信息 获取系统类型及版本号: php_uname() (例:Windows NT ...
- easy connect 获取服务端配置信息失败_如何统计 Mysql 服务器状态信息?
最近在看<高性能的 Mysql>一书,下面是关于如何学习统计 Mysql 服务器状态的学习总结,主要是学习使用 SHOW STATUS,SHOW ENGINE INNODB STATUS, ...
- java使用sigar获取服务器的信息
如果我们想要获取服务器的一些基本信息,我们需要如何操作呢? 在java中,我们可以使用sigar来进行实现,sigar能够实现获取服务器运行时的各项状态信息,如:cpu占用率.内存使用情况等 话不多说 ...
- php获取服务器相关信息
2019独角兽企业重金招聘Python工程师标准>>> php可以通过相关函数获取服务器和php环境的相关信息 ,如下代码: <html><head>< ...
- java获取服务器状态_获取远程服务器上 Java 进程的运行状态
为了安全考虑, 有些服务器会被限制登录. 本文介绍如何获取远程服务器上 Java 进程的运行状态. 启动 jstatd 服务 在服务器端启动 jstatd 服务后, 远程的机器可以通过 rmi 协议获 ...
- php获取服务器数据库信息,PHP获取服务器信息
# 获取服务器信息 ## [PHP交流群:494826865(点击群号立即加群)](https://jq.qq.com/?_wv=1027&k=50Qy5h6) >[success]在做 ...
最新文章
- VB.NET 从main函数里启动窗口
- spring源码分析之@Conditional
- Android日期分组,按查询分组在列表视图android中显示一些意...
- 大一c语言学生信息管理系统课程设计
- Loadrunner中socket协议中的三个关联函数
- 数据与计算机通信复习重点
- 如何使用SQL Server数据工具中的“可见性”选项降低报告的复杂性
- MemcacheQ 安装与使用
- cas 单点登录_松哥手把手教你入门 Spring Boot + CAS 单点登录
- .NET Enterprise 4.1.5的工作流引擎
- 玩转华为ENSP模拟器系列 | 合集
- Linux之VM12+ CentOS7安装以及网络配置
- Spring——自动装配
- erlang中的ets和dets
- 亚瑟王(arthur)
- showdown ( markdown解析)
- 天上的街市Unity游戏场景制作案例(一)
- Item 6: Use the explicitly typed initializer idiom when auto deduces undesired types.
- ATmega16开发板教程(2)——KEY点灯
- 实验一.Python安装与开发环境搭建