利用SNMP监控服务器状态需完成配置SNMP代理→选择管理工具→采集监控数据→设置告警通知四大步骤,覆盖从服务器准备到实时监控的全链路。
SNMP代理是被管理服务器上的软件模块,负责收集本地状态数据并响应管理站的请求。不同系统的配置方法如下:
yum install -y net-snmp net-snmp-utils安装核心工具(net-snmp为代理服务,net-snmp-utils提供命令行工具如snmpwalk)。systemctl start snmpd启动服务,systemctl enable snmpd确保重启后自动运行。/etc/snmp/snmpd.conf,关键修改包括:
com2sec notConfigUser default public中的public改为自定义字符串(如MySecretCommunity);view systemview included .1.3.6.1.2.1.1和.1.3.6.1.2.1.25.1.1合并为view systemview included .1(允许访问所有MIB节点);access notConfigGroup "" any noauth exact systemview none none改为access notConfigGroup "" any noauth exact mib2 none none(允许读取所有MIB-2节点)。firewall-cmd --add-port=161/udp --permanent添加UDP 161端口(SNMP默认端口),并通过firewall-cmd --reload生效。SNMP Service。MySecretCommunity),并设置允许访问的IP地址(如管理站的IP)。管理工具用于向SNMP代理发送请求、采集数据并可视化展示,常见选项包括:
check_snmp)扩展SNMP监控能力,侧重告警与状态检查。snmpwalk -v 2c -c MySecretCommunity 192.168.1.100 .1.3.6.1.4.1.2021.11.11.0:获取CPU空闲率(需替换为目标服务器IP和对应OID);snmpget -v 2c -c MySecretCommunity 192.168.1.100 .1.3.6.1.4.1.2021.4.5.0:获取内存使用量。通过SNMP可采集的服务器状态指标涵盖硬件资源、网络连接、服务进程三大类,常用OID如下:
.1.3.6.1.4.1.2021.11.11.0(空闲率)、.1.3.6.1.4.1.2021.11.10.0(用户态使用率)、.1.3.6.1.4.1.2021.11.9.0(内核态使用率)。.1.3.6.1.4.1.2021.4.5.0(总内存)、.1.3.6.1.4.1.2021.4.6.0(可用内存)、.1.3.6.1.4.1.2021.4.11.0(已用内存百分比)。.1.3.6.1.4.1.2021.9.1.0(根分区总大小)、.1.3.6.1.4.1.2021.9.2.0(根分区已用大小)、.1.3.6.1.4.1.2021.9.3.0(根分区剩余大小)。.1.3.6.1.2.1.2.2.1.10.x(接口x的接收字节数)、.1.3.6.1.2.1.2.2.1.16.x(接口x的发送字节数)(x为接口索引,可通过snmpwalk获取)。.1.3.6.1.2.1.6.5.3.1.1.x(TCP连接数,x为状态码,如1代表ESTABLISHED)。snmpd的extend指令)监控特定服务(如Apache、MySQL)的状态,返回1表示运行、0表示停止。通过管理工具配置阈值告警,当服务器状态异常(如CPU利用率超过80%、内存剩余不足10%)时,自动触发通知(邮件、短信、钉钉等)。以Zabbix为例,操作步骤如下:
{servername:system.cpu.util[,user].last()}>80);public),建议使用强密码;SNMPv3支持加密(AES)和认证(MD5/SHA),适合高安全需求场景。免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。