使用cacti + snmp 实现对apache 、mysql 、 nginx 的监控的安装和配置
1、修改snmpd.conf只需修改以下几个地方,其它地方保持默认即可。
# vim /etc/snmp/snmpd.conf
# sec.namesource community
com2sec notConfigUserdefault test \\将这里的snmp团体名改成一个好记的名字,当然也可以不改,此处我改成了 test
####
# Second, map the security name into a group name:
# groupName securityModel securityName
group notConfigGroup v1 notConfigUser
group notConfigGroup v2c notConfigUser
####
# Third, create a view for us to let the group have rights to:
# Make at leastsnmpwalk -v 1 localhost -c public system fast again.
# name incl/excl subtree mask(optional)
view all included .1 \\增加这一行,要用all 不能用systemview 要不然取不到数据。这是增加cpu取值的。
view systemview included .1.3.6.1.2.1.1
view systemview included .1.3.6.1.2.1.2 \\增加这一行。这是增加网卡取值的。
view systemview included .1.3.6.1.2.1.25.1.1
####
# Finally, grant the group read-only access to the systemview view.
# group context sec.model sec.level prefix read writenotif
accessnotConfigGroup "" any noauth exactall none none \\将这一行中的systemview改成all 否则影响cpu等系统信息的取值
# -----------------------------------------------------------------------------
# Here is a commented out example configuration that allows less
# restrictive access.
# YOU SHOULD CHANGE THE "COMMUNITY" TOKEN BELOW TO A NEW KEYWORD ONLY
# KNOWN AT YOUR SITE.YOU *MUST* CHANGE THE NETWORK TOKEN BELOW TO
# SOMETHING REFLECTING YOUR LOCAL NETWORK ADDRESS SPACE.
## sec.namesource community
com2sec local localhost COMMUNITY
com2sec mynetwork 192.168.10.11/24 test \\将这里的snmp团体名改成和上面的一样的名字,允许访问的网络改成你的cacti主机的ip
## group.name sec.modelsec.name
#group MyRWGroupany local
#group MyROGroupany mynetwork
#
#group MyRWGroupany otherv3user
#...
## incl/excl subtree mask
#view all included.1 80 \\将这一行前面的#去掉,否则影响cpu等系统信息的取值(其实我没改,好像也没关系)
## -or just the mib2 tree-
view mib2 included.iso.org.dod.internet.mgmt.mib-2 fc \\将这一行前面的#去掉
2、开放snmp通信端口
# iptables; -A INPUT -s IP地址 -p tcp --dport 161 -j ACCEPT
# iptables -A INPUT; -s IP地址 -p udp --dport 161 -j ACCEPT
注意 一定要开udp的端口,以上两行 可以写到 /etc/sysconfig/iptables 中 这样 每次开机后会自动启用的
3、测试snmp
重启 snmp服务器
#
# services snmpd restrart
#netstart –tlnp | grep 161 查看服务端口有没有起来
如果没有snmptranslate; snmpwalk命令,请安装net-snmp-utils 包
# snmptranslate -To | head; 如果取到部分oid 说明snmp工作正常 当然这个正常并不代表 cacti就能取到数据。还要进行下面的测试
.1.3
.1.3.6
.1.3.6.1
.1.3.6.1.1
.1.3.6.1.2
.1.3.6.1.2.1
.1.3.6.1.2.1.1
.1.3.6.1.2.1.1.1
.1.3.6.1.2.1.1.2
.1.3.6.1.2.1.1.3
#
# snmpwalk -v 1 -c test localhost 后将会输出很多信息 说明snmp工作没问题
# snmpwalk -v 1 -c test localhost .1.3.6.1.4.1.2021.11 如果有输出,说明能取到cpu值
# snmpwalk -v 1 -c test localhost .1.3.6.1.4.1.2021.10.1.3 如果有输出,说明能取到cpu值
如果上面的测试输出为:End of MIB 说明不能取到cpu的值。
需要注意的是,虽然在snmpd.conf 中配置了cpu的取值,但在cacti的图表中, cpu usage 图表常常是没有曲线图的,但下面是有数值的,这是正常的,只是因为数值太小 没法绘图
页:
[1]