监控之snmpd 服务
监控离不开数据采集,经常使用的Mrtg ,Cacti,Zabbix,等等监控软件都是通过snmp 协议进行数据采集的!
1 什么是snmp 协议?
简单网络管理协议(SNMP,Simple Network Management Protocol)构成了互联网工程工作小组(IETF,Internet Engineering Task Force)定义的internet协议簇的一部分。该协议能够支持网络管理系统,用以监测连接到网络上的设备是否有任何引起管理上关注的情况。它由一组网络管理的标准组成,包含一个应用层协议(application layer protocol)、数据库模型(database schema),和一组资料物件。
2 linux 系统下 snmp 服务配置
2.1 snmpd 服务安装
- yum install net-snmp*
2.2 编辑snmpd.conf 配置文档
- vim /etc/snmp/snmpd.conf
- 41行 1将default 改为监控服务器ip;2 将public 改成复杂些的识别的字符串
- com2sec notConfigUser 10.0.100.70 dongnan
- 62行 1将systemview 改为all,供所有snmp 访问权限
- access notConfigGroup "" any noauth exact all none none
- 85行 将#注释符号去掉
- view all included .1 80
2.3 启动 snmpd 服务
- /etc/init.d/snmpd start
2.4 验证snmpd 服务
//snmpd 使用 tcp/udp 161 端口
- grep 'Simple Net Mgmt Proto' /etc/services
- snmp 161/tcp # Simple Net Mgmt Proto
- snmp 161/udp # Simple Net Mgmt Proto
- lsof -i :161
- COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
- snmpd 3734 root 11u IPv4 13174 UDP *:snmp
- ps -ef | grep 'snmpd'
- root 3734 1 0 09:34 ? 00:00:00 /usr/sbin/snmpd -Lsd -Lf /dev/null -p /var/run/snmpd.pid -a
2.5 修改snmpd 日志级别
//以上操作能够满足snmpd 服务正常使用,不过snmpd 默认日志级别将会在/var/log/message 写入大量snmp 信息,这样会影响我们察看系统日志,所以我们需要更改下!
- Mar 1 09:55:01 monitor snmpd[3734]: Connection from UDP: [127.0.0.1]:37535
- Mar 1 09:55:01 monitor snmpd[3734]: Received SNMP packet(s) from UDP: [127.0.0.1]:37535
- Mar 1 09:55:01 monitor snmpd[3734]: Connection from UDP: [127.0.0.1]:47836
- Mar 1 09:55:01 monitor snmpd[3734]: Received SNMP packet(s) from UDP: [127.0.0.1]:47836
//注释原有的OPTINOS,添加下面的一行,重启snmpd 服务即可。
- vim /etc/init.d/snmpd
- #OPTIONS="-Lsd -Lf /dev/null -p /var/run/snmpd.pid -a"
- OPTIONS="-LS 4 d -p /var/run/snmpd.pid -a"
- /etc/init.d/snmpd restart
- Stopping snmpd: [ OK ]
- Starting snmpd: [ OK ]
2.6 使用snmpwalk 命令验证
- snmpwalk -v 1 -c dongnan 192.168.57.82
- snmpwalk -v 2c -c dongnan 192.168.57.71
- -v是指版本,-c 是指密钥,获取到系统信息则正常!
linux服务器开启 SSHD 服务后,在/var/log/messages和终端中经常有大量snmpd 信息 如下:
snmpd[3099]: Received SNMP packet(s) from UDP: [192.168.2.251]:57919
snmpd[3099]: Connection from UDP: [192.168.2.251]:59157
snmpd[3099]: Received SNMP packet(s) from UDP: [192.168.2.251]:59157
snmpd[3099]: Connection from UDP: [192.168.2.251]:40188
snmpd[3099]: Received SNMP packet(s) from UDP: [192.168.2.251]:40188
经查:是由于 cacti 每5分钟获取信息的日志。
只要关闭 snmpd 日志即可。
修改 snmpd 启动脚本
vi /etc/init.d/snmpd
OPTIONS=”-Lsd -Lf /dev/null -p /var/run/snmpd.pid -a”
修改为:
OPTIONS=”-Ls3d -Lf /dev/null -p /var/run/snmpd.pid”
snmpd日志等级的定义:
0 或 ! —- LOG_EMERG,
1 或 a —- LOG_ALERT,
2 或 c —- LOG_CRIT,
3 或 e —- LOG_ERR,
4 或 w —- LOG_WARNING,
5 或 n —- LOG_NOTICE,
6 或 i —- LOG_INFO, and
7 或 d —- LOG_DEBUG.
重启 snmpd 即可。
以上是网上的资料,最好把上边的改为以下效果,将-Ls3d去掉
OPTIONS=”-Lf /dev/null -p /var/run/snmpd.pid”
否则,服务器过段时间之后,日志中会有如下的信息提示:
last message repeated N times
监控之snmpd 服务的更多相关文章
- snmpd 服务安装和配置(转载)
snmp rpm包安装步骤 https://blog.csdn.net/macrothunder/article/details/50394566 rpm包位置: http://rpm.pbone.n ...
- Zabbix如何监控Linux防火墙服务
今天在巡检的时候,突然想到Zabbix能否监控Linux的防火墙服务呢? 显然是可以的,但是Zabbix 5下默认的模板"Template OS Linux by Zabbix agent& ...
- 改造断路器集群监控Hystrix Turbine实现自动注册消费者、实时监控多个服务
在上一篇文章中,我们搭建了Hystrix Dashoard,对指定接口进行监控.但是只能对一个接口进行监听,功能比较局限: Turbine:汇总系统内多个服务的数据并显示到 Hystrix Dashb ...
- zabbix企业级监控dell硬件服务状态
监控dell服务的硬件状态,一般有两种方式 第一,在操作熊上安装OMSA,编写脚本调用omreport命令进行监控 第二.使用IDRAC,只需开启在IARAC上的SNMP,zabbix通过snmp进行 ...
- zabbix 3.4 直接 发现端口并作存活监控(带服务名)
客户端配置 1.脚本 [root@es1 home]# cat /home/port_service.sh #!/bin/bash#by Mr.lu#su rootportarray=(`sudo - ...
- 使用SpringBoot Admin监控SpringCloud微服务
spring-boot admin的github地址:https://github.com/codecentric/spring-boot-admin 本文基于SpringCloud的环境和配置上增加 ...
- springcloud的Turbine配置监控多个服务的一些坑!!!!InstanceMonitor$MisconfiguredHostException,No message available","path":"/actuator/hystrix.stream,页面不显示服务或者一直loading
踩了几个小时坑,使用仪表盘监控单个服务的时候很容易,但是一到多个服务,瞬间坑就来了,大概碰到下面三个: 1InstanceMonitor$MisconfiguredHostException, No ...
- 11.OpenStack 安装监控和业务流程服务
安装业务流程模块 安装和配置业务流程 创建数据库 mysql -uroot -ptoyo123 CREATE DATABASE heat; GRANT ALL PRIVILEGES ON heat.* ...
- 使用Spring开发和监控线程池服务
第1步:添加maven 项目 第2步:添加依赖库 将Spring的依赖添加到Maven的pom.xml文件中. 1 2 3 4 5 6 7 8 9 10 11 <!-- Spring 3 dep ...
随机推荐
- Jquery弹窗
<title>弹窗</title> <script src="JS/jquery-1.7.2.js"></script> <s ...
- java向MySQL插入当前时间的四种方式和java时间日期格式化的几种方法(案例说明)
转载地址:http://www.devba.com/index.php/archives/4581.html java向MySQL插入当前时间的四种方式和java时间日期格式化的几种方法(案例说明); ...
- ubuntu server执行sudo出现"no talloc stackframe at ../source3/param/loadparm.c:4864, leaking memory"
[Ubuntu] 執行 sudo 時,出現 "no talloc stackframe at ../source3/param/loadparm.c:4864, leaking memory ...
- Extjs DateField Bug 当format为年月'Y-m',在当前月(30、31号)选择其他偶数月会乱跳的问题解决方案
Ext.form.WMDateField = Ext.extend(Ext.form.DateField, { safeParse : function(value, format) { if (/[ ...
- C语言 · 素数判断
算法提高 素数判断 时间限制:1.0s 内存限制:512.0MB 编写一函数IsPrime,判断某个大于2的正整数是否为素数. 样例输入: 5样例输出:yes 样例输入: 9样例输 ...
- Spark的操作列表
Action 操作1. collect() ,返回值是一个数组,返回dataframe集合所有的行2. collectAsList() 返回值是一个java类型的数组,返回dataframe集合所有的 ...
- 如何解决redis高并发客户端频繁time out?
解决方案:https://www.zhihu.com/question/24781521
- 关于Cocos2d-x开发一个游戏的过程自述
我在2016年12月6号完成了我的第一个自己独立完成的游戏,期间遇到各种各样的问题和困难,但是幸运的是问题都一一被解决了,现在我想总结一个整个的制作游戏的过程 使用的环境是VS2013+cocos2d ...
- 使用JavaScript 和 CSS 实现图像缩放和剪裁(转)
英文原文:Scale and Crop an Image using Javascript and CSS 在页面上需要裁减和缩放一张图片是一个常见问题.缩放图片比较简单的方法是使用image的hig ...
- 【Cubian】set up
源: http://mirrors.163.com/.help/debian.html https://lug.ustc.edu.cn/wiki/mirrors/help/debian 下载地址: h ...