技术开发 频道

各种性能监测在企业中部署和实现方法

  【IT168 文档】a.snmp协议的配置以及在Linux下和Windows上的测试方法:

  刚才我们已经用了不少的篇幅介绍了SNMP简单网络管理协议的基本原理。现在我们即将以Red Hat最新的企业版本Red Hat Enterprise Linux 5 Update 2(简称RHEL5u2)为基础来演示如何配置SNMP服务。

  在RHEL5u2中提供了一个叫做net-snmp的rpm包,net-snmp是在IPv4和IPv6上执行SNMP的v1,v2和v3版本协议的一组程序。需要特意说明一下的是,由于在大多数环境下针对企业应用都会使用稳定版本的Red Hat Enterprise Linux操作系统,所以后面所有操作所使用的Linux平台也都是RHEL,但是那些对技术体验感兴趣的用户也可以使用Fedora 8或者9来实现上述所有的操作。

  在该例子中,假设服务器192.168.1.10是被监测的系统,我们将在其上分别配置和启用基于v1和v3版本的snmp服务,而另外一台主机192.168.1.100充当管理工作站,并且用snmp命令来获得被监测系统的详细信息。

  在服务器192.168.1.10上,首先配置v1版本的SNMP协议:

  挂载DVD安装光盘,并从光盘中安装snmp相关的软件包:lm_sensor,net-snmp,snmp-utils。关于net-snmp包的作用刚才已介绍,而至于net-snmp-utils主要提供了使用snmp协议管理网络的一系列工具。

  装完所需要的软件包之后,我们可以直接修改snmp的主配置文件/etc/snmp/snmpd.conf并重启服务来直接启用SNMPv1。采用SNMPv1版本的重要标志之一就是使网络管理设备访问代理时需要使用基于Community的团体的验证方式。这里的Community使用默认的public,当然也可以根据自己的需求去修改为任意一个字符串。完成之后保存该档并运行命令重启服务:

  # service snmpd start

  # chkconfig snmpd on

  为了监测是否能够正确获得整个系统中每个MIB的OID值,可以运行snmpwalk命令以获得响应的结果,snmpwalk命令可通过snmp的GETNEXT动作获得MIB树上的管理信息。

  # snmpwalk –v1 –cpublic 192.168.1.10

  至此为止,被监测对象上的snmp就算配置完成。为了说明结果,我找了一个运行于Windows的操作系统上的利用snmp协议的监测软件来看看效果。在Windows平台上能够实现该功能的软件有很多,例如Whatsup,Solawins等等。这里以Whatsup为例,我的监测主机上操作系统选用的是Windows Server 2003 Enterprise Edition。IP地址是192.168.1.100。按照图示的步骤安装Whatsup软件,其实秉承Windows软件的安装风格——一路回车即可搞定。由于我安装的是一个30天的免费试用版本,所以需要在启动产品的时候选择“Activate Later”,并且在“Device Discovery Method”中选择“IP Range Scan”。之后起始地址都填入被监测设备的地址192.168.1.10,按照在/etc/snmp/snmpd.conf档中的内容输入团体名称“public”按照下图确定扫描内容并开始扫描,扫描时间需要根据设备的数量决定。在“Action Policy Selection”中选择“Do Not Apply an Action Policy”并结束扫描。最后通过“Report View”标签选择“Device Reports”并最终获得所有设备的Health状况。

  在众多的性能监测软件中Whatsup的功能相对比较强大,而且设置方便,接口友好。在很多企业的服务监测中是一个不错的选择,而且Whatsup的其它视图模式和功能也比较多。至于其它的例如Solawins等类似的软件,在配置方面的步骤基本大同小异,所以这里就不花时间详述了。

  然后配置v3版本的SNMP协议:

  与v1版本的SNMP协议不一样,v3版本最重要的特征是更强的安全性,因为团体信息在网络上是以明文形式传送。因此v3版本不再使用团体信息来实现认证,而是采用对称或者非对称加密方式加密用户名和密码实现认证。所以安全方面自然要比v1版本的高很多,不过在配置方面也显然会比v1版本的更加麻烦。所幸的是net-snmp-utils工具包为我们准备了另外一个强有力的SNMP配置工具——net-snmp-config,因此一般用户仍然可以通过他非常方便地实现v3版本的SNMP配置。

  我们先切换到光盘,由于net-snmp-config工具由net-snmp-devel包提供,所以在安装一系列依赖包包括beecrypt,elfutils-devel,elfutils-devel-static后,最后还是要安装net-snmp-devel包。之后将snmpd服务停止并备份其主配置文件,然后运行命令:

  # net-snmp-config --create-snmpv3-user -A 12345678 -X 12345678 -a MD5 -x DES admin

  关于这条命令的说明:

  --create-snmpv3-user [-A authpass] [-X privpass] [-a MD5|SHA] [-x DES|AES] [username]

  命令执行之后将自动建立新的配置文件snmpd.conf,而内容也十分简单。只有用户名和权限,而关于认证方式的信息则会存储在/var/net-snmp/snmpd.conf文件中。

  最后重启snmpd服务,并再次用snmpwalk指明通过v3的认证方式获取MIB上的OID信息。

  命令是:

  # snmpwalk -v3 -u admin -l auth -a MD5 -x DES -A 12345678 -X 12345678 192.168.1.10

  如果要验证配置的信息是否OK,还是可以通过Windows下的Whatsup来监测信息,步骤基本上和上例一样,只不过更改一下SNMP版本并填入相应的认证信息即可。

0
相关文章