其实从标题来看,这样的文章已相当多,但是由于这次使用了最新版的系统和软件,在配置方面比原来的版本有了一些改进,明显更加方便,所以值得记录一下和大家分享。
这次实现监控的目标是系统网络流量、TCP连接数、CPU负载、system和user的CPU负载、内存消耗、swap使用,另外还能够在此基础上实现磁盘监控、Mailscanner的垃圾邮件等监控。
首先通过cvsup更新系统源码和ports数到当前的FreeBSD 6.1Release版本,保持系统和软件包的最新版本,然后使用极为方便的ports进行软件安装。
1、安装net-snmp-5.2.2
#cd /usr/ports/net-mgmt/net-snmp
#make install clean
然后就等着系统自动为您下载net-snmp-5.2.2.tar.gz软件包连同关联软件包,ports会自动完成后续的安装。
2、配置snmp
等安装完成后会看到成功的提示连同后续配置的说明。接下来我们进行简单的几个配置即可完成snmp的安装配置。
#mkdir /usr/local/etc/snmp
#cp /usr/local/share/snmp/snmpd.conf /usr/local/etc/snmp/
#vim /usr/local/etc/snmp/snmpd.conf
下面是我的配置文档内容
com2sec mynet 192.168.0.0/24 public
com2sec public default public
group mygroup v1 mynet
group mygroup v2c mynet
group mygroup usm mynet
group local v1 local
group local v2c local
group local usm local
group public v1 public
group public v2c public
group public usm public
view all included .1 80
access mygroup "" any noauth exact mib2 none none
access public "" any noauth exact all none none
access local "" any noauth exact all all all
syslocation Right here, right now.
syscontact Me
proc mountd
proc ntalkd 4
proc sendmail 10 1
exec echotest /bin/echo hello world
disk / 10000
load 12 14 14
其实里面只有很少的部分是自己修改的,大部分是默认值,具体的您能够对比一下您的snmpd.conf文档,建议把您的配置文档使用 grep -v # snmpd.conf > snmpd.conf.new 去掉任何的注释行再进行配置,这样看起来更清楚一些。
完成上面的配置,snmp的安装和配置已完成,此时我们能够使用 snmpwalk -v 1 -c public localhost system 来测试看看返回结果,正常应该返回类似下面的内容。
SNMPv2-MIB::sysObjectID.0 = OID: SNMPv2-SMI::dod.0.0.0.0.0.0.0
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (8548737) 23:44:47.37
SNMPv2-MIB::sysContact.0 = STRING: Me
SNMPv2-MIB::sysName.0 = STRING: www.toplee.com
SNMPv2-MIB::sysLocation.0 = STRING: Right here, right now.
SNMPv2-MIB::sysServices.0 = INTEGER: 72
SNMPv2-MIB::sysORLastChange.0 = Timeticks: (11) 0:00:00.11
SNMPv2-MIB::sysORID.1 = OID: IF-MIB::ifMIB
SNMPv2-MIB::sysORID.2 = OID: SNMPv2-MIB::snmpMIB
SNMPv2-MIB::sysORID.3 = OID: TCP-MIB::tcpMIB
SNMPv2-MIB::sysORID.4 = OID: IP-MIB::ip
SNMPv2-MIB::sysORID.5 = OID: UDP-MIB::udpMIB
SNMPv2-MIB::sysORID.6 = OID: SNMP-VIEW-BASED-ACM-MIB::vacmBasicGroup
SNMPv2-MIB::sysORID.7 = OID: SNMP-FRAMEWORK-MIB::snmpFrameworkMIBCompliance
SNMPv2-MIB::sysORID.8 = OID: SNMP-MPD-MIB::snmpMPDCompliance
SNMPv2-MIB::sysORID.9 = OID: SNMP-USER-BASED-SM-MIB::usmMIBCompliance
SNMPv2-MIB::sysORDescr.1 = STRING: The MIB module to describe generic objects for network interface sub-layers
SNMPv2-MIB::sysORDescr.2 = STRING: The MIB module for SNMPv2 entities
SNMPv2-MIB::sysORDescr.3 = STRING: The MIB module for managing TCP implementations
SNMPv2-MIB::sysORDescr.4 = STRING: The MIB module for managing IP and ICMP implementations
SNMPv2-MIB::sysORDescr.5 = STRING: The MIB module for managing UDP implementations
SNMPv2-MIB::sysORDescr.6 = STRING: View-based Access Control Model for SNMP.
SNMPv2-MIB::sysORDescr.7 = STRING: The SNMP Management Architecture MIB.
SNMPv2-MIB::sysORDescr.8 = STRING: The MIB for Message Processing and Dispatching.
SNMPv2-MIB::sysORDescr.9 = STRING: The management information definitions for the SNMP User-based Security Model.
SNMPv2-MIB::sysORUpTime.1 = Timeticks: (9) 0:00:00.09
SNMPv2-MIB::sysORUpTime.2 = Timeticks: (11) 0:00:00.11
SNMPv2-MIB::sysORUpTime.3 = Timeticks: (11) 0:00:00.11
SNMPv2-MIB::sysORUpTime.4 = Timeticks: (11) 0:00:00.11
SNMPv2-MIB::sysORUpTime.5 = Timeticks: (11) 0:00:00.11
SNMPv2-MIB::sysORUpTime.6 = Timeticks: (11) 0:00:00.11
SNMPv2-MIB::sysORUpTime.7 = Timeticks: (11) 0:00:00.11
SNMPv2-MIB::sysORUpTime.8 = Timeticks: (11) 0:00:00.11
SNMPv2-MIB::sysORUpTime.9 = Timeticks: (11) 0:00:00.11
您能够去掉后面的system参数得到任何的snmp返回数据,通过分析这些数据就能够实现对系统的各种监控,这是mrtg通过snmp实现监控的途径。
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!



