欢迎来到天天文库
浏览记录
ID:10442131
大小:80.50 KB
页数:10页
时间:2018-07-06
《系统管理员工具包- 使用 snmp 数据》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、系统管理员工具包:使用SNMP数据 关于本系列 典型的UNIX®管理员拥有一套经常用于辅助管理过程的关键实用工具、诀窍和系统。有一些重要的实用程序、命令行以及脚本可用来简化各种处理过程。其中一些工具来自于操作系统,而大部分的诀窍则于长期的经验积累和减轻系统管理员工作压力的要求。本系列文章主要专注于最大限度地利用各种UNIX环境中可用的工具,包括简化异构环境中的管理任务的方法。 SNMP基础 存在许多可以监视UNIX服务器的方法。有关一些可用的监视类型的示例,请参见参考资料。监视简单的服务器并不是个问题,但是跨许多
2、服务器监视相同信息可能带来问题。如果您负责的其中一个服务器的磁盘空间耗尽,您希望在该情况影响用户和客户端之前了解该情况。 以这种方式监视多个服务器,尤其是在那些服务器使用各种不同操作系统的情况下,可能是个问题。命令行工具、输出格式、值和其他信息之间的差异全都会使原本应该简单的过程变得复杂化。在这种情况下,所需要的是一个提供通用接口的解决方案,并且无论您在使用什么UNIX变体,该解决方案都应该有效。 简单网络管理协议(SNMP)提供了一种管理不同系统的信息的方法。代理运行在每个系统上,并使用SNMP向不同的管理系统报告信息。
3、 SNMP通常是诸如路由器和交换机等网络设备的内置组件,并且是可用于远程检索统计信息和状态信息的唯一方法。在大多数主机上,您需要显式运行SNMP软件,以通过SNMP协议公开有关该主机的信息。 可以通过使用GET请求来请求信息,从而显式地从代理检索信息,或者代理可以使用TRAP或INFORM消息将信息广播到管理系统。此外,管理系统可以设置代理上的信息和参数,但是这通常仅用于更改网络配置。 可共享的信息类型可能千差万别。这些信息可以是从网络接口的网络设置、统计信息和度量数据到监视CPU负载和磁盘空间的所有内容。 SNMP标准没
4、有定义代理返回什么信息;相反,可用的信息由管理信息库(ManagementInformationBase,MIB)定义。MIB定义了返回信息的结构,并使用对象标识符(objectidentifier,OID)组织为层次结构。可以通过使用MIB结构中的特定位置来请求数据,从而访问代理中的信息。 例如,清单1显示了一些较常见的ID。 清单1.SNMP对象IDsysDescr.0 1.3.6.1.2.1.1.1.0sysObjectId.0 1.3.6.1.2.1.1.2.0sysUpTime.0 1.3.6.1.2.1.1
5、.3.0sysContact.0 1.3.6.1.2.1.1.4.0sysName.0 1.3.6.1.2.1.1.5.0sysLocation.0 1.3.6.1.2.1.1.6.0sysServices.0 1.3.6.1.2.1.1.7.0ifNumber.0 1.3.6.1.2.1.2.1.0 从此列表中可以看到,MIB是用数字表示的,并且实际上是顺次排列的。在获得信息时,您可以使用GET请求来获得某个特定值,或者使用GETNEXT来获得上次读取的属性的下一个属性。还可以使用名称。上面显示的名称全都是系统树的
6、一部分,因此可以使用OIDsystem.sysUpTime.0来通过GET请求读取值。 所读取的值还具有特定的类型。您可以读取被定义为标量的整型、浮点型和字符串值。这些对象中的内容是使用特定有效位来标识的类型。例如,时间间隔值以时间单位数(或百分之一秒数)的形式来报告。在显示这些值之前,需要将其转换为更便于阅读的形式。还存在返回表型数据的MIB对象。这是通过返回附加的OID实例来处理的,可以将这些实例分组在一起以形成SNMP表格。 从安全的角度看,可以将SNMP代理与特定社区相关联,并且管理系统使用社区作为验证其代理访问权限
7、的方法来访问信息。在SNMP标准的版本1中,社区字符串是保护或限制访问的唯一方法。对于SNMP标准的版本2,安全性得到了改进,但是处理起来可能非常复杂。对于版本3(自从2004年以来的最新版本),该标准已通过显式身份验证和访问控制系统进行了改进。 获取SNMP统计数据 存在着许多从SNMP系统获得信息的方法,包括使用专业的管理工具、编程接口和命令行工具。 对于其中的最后一种方法,也许最著名和最容易的是使用snmp树中的所有信息时的输出。 清单2.遍历SNMP树$snmpsysDescr.0=STRING:Linuxt2.
8、6.23-gentoo-r8 #1SMPTueFeb1216:32:14GMT2008x86_64sysObjectID.0=OID:SnmpAgentOIDs.10sysUpTimeInstance=Timeticks:(34145553)3days
此文档下载收益归作者所有