通过SNMP协议监控Linux主机
实验环境:
OS:Ubuntu18.04
Zabbix-server(NMS):10.0.0.200
SNMP-Agent:10.0.0.203
实验目的:
Zabbix-server与SNMP-Agent通过SNMP协议相连,获取到SNMP-Agent允许授权监控的"OID"范围(即:允许zabbix-server监控的"设备指标范围")数据。一般情况下Zabbix-server通过SNMP协议时与网络设备相连并进行管理的。但因资源所限而Linux恰好支持SNMP协议,因此实验中SNMP-Agent由Linux主机模拟网络设备。
1.10.0.0.203需安装snmpd以此来支持该协议并修改其配置文件。
apt -y install snmpd
vim /etc/snmp/snmpd.conf
agentAddress udp:127.0.0.1:161 #将其注释,否则只允许本机使用SNMP协议客户端工具查看监控“OID”数据。
#agentAddress udp:161,udp6:[::1]:161 #取消注释,运行所有机器使用SNMP协议客户端工具连接161端口查看监控“OID”数据。
view systemonly included .1.3.6.1.2.1.1 #注释掉,此两项为默认授权给NMS能够监控到的"OID"范围,OID越长意味监控的范围越小,越"精确"
view systemonly included .1.3.6.1.2.1.25.1 #注释掉
view systemonly included .1. #手动增加一条"OID"范围, .1.后的分支"OID"都能被监控到。
rocommunity public default -V systemonly #public是默认"社区"(类似于密码),zabbix-server将网络设备添加到监控主机列表就需要输入"社区"
2.zabbix-server安装snmp客户端工具来查看10.0.0.203某个允许被监控的"OID"数据(仅测试环境安装snmp客户端工具)
snmpwalk -v 2c -c public 10.0.0.203 .1.3.6.1.2.1.25.1
解读
snmpwalk:客户端命令
-v 2c :指定的snmp版本协议为2c,2c为目前主流的snmp版本协议
public:就是之前所说的网络设备默认的社区"密码"
10.0.0.203:SNMP-agent
.1.3.6.1.2.1.25.1 :指定的‘OID’进行查看
<成功监控>
3.将SNMP-agent添加进zabbix-server的主机监控列表中<如图所示>
PS:{$SNMP_COMMUNITY}这个宏(为密码),默认值为public,如果网络设备的community不是public那么添加完主机后需修改这个宏的值为相对应的community值。
<亮绿灯,监控成功>
注意事项:
在真实环境中将网络设备添加进zabbix-server主机监控列表时{$SNMP_COMMUNITY}这个宏的值需要参考该设备官方文档给出的默认值来设定。
posted on 2021-08-14 14:11 1251618589 阅读(1) 评论(0) 编辑 收藏 举报