一、介绍
1、 服务器监控工具可以帮助我们从任何一个地方实时了解服务器的性能和功能。监控宝服务器监控套装,可以实时CPU使用率、内存使用率、平均负载、磁盘I/O、网络流量、磁盘使用率等,能够同时为你带来短期效益和长期效益。监控宝目前提供的服务器监控项目包括:

  CPU使用率,监控CPU的使用率比例,包括用户态(User)、内核态(System)、I/O等待(IOWait)、空闲(Idle)等

  CPU负载,监控Linux服务器的平均负载(load average),包括最近1分钟、5分钟、15分钟等

  内存使用率,监控内存使用率,对于Linux服务器,包括空闲内存、Buffer Cache、Page Cache、应用程序内存等

  磁盘I/O,监控所有磁盘分区的I/O流量,包括写入和读取

  网络流量,监控所有网络设备的流量,包括流入和流出

  磁盘空间使用率,监控所有磁盘分区的空间使用率,包括总空间和已用空间.

  系统进程数,监控系统当前的进程数。

2、监控宝使用标准的SNMP协议来为用户提供服务器监控功能,这意味着被监控的服务器上必须运行SNMP代理程序 snmpd;
3、SNMP是一构建在TCP/UDP上的远程监控应用。它能监控网络中主机的各种信息,如内存使用率,CPU占用率,磁盘占用率等。
4、它主要分为2个部分。安装在待监控主机上的SNMP服务端,用于收集主机的信息,并按树形进行组织;安装在监控端的SNMP客户端,实时发出查询命令,获得被监控主机的运行信息。使用UDP 161端口接收和发送请求,162端口接收trap。
5、Net-SNMP是一个免费、开放源码的SNMP实现。使用C语言实现。
 
参考链接:
1)Ubuntu上snmp安装、配置、启动及远程测试完整过程
2)linux snmp常用结点值
 
二、Ubuntu 下安装snmp
1、安装程序包
1)sudo apt-get install snmpd snmp snmp-mibs-downloader
2)在安装snmp-mibs-downloader的过程中,程序会帮我们自动下载mib库,并保存在/usr/share/mibs目录中;
3)如果安装好的文件没有上述目录库,手动下载安装:sudo download-mibs;
2、配置
1)系统默认运行了这个服务;
2)修改 /etc/snmp/snmpd.conf
A. 配置节点
view systemonly included .1.3.6.1.2.1.1
view systemonly included .1.3.6.1.2.1.25.1
#增加下面一行:
view systemonly included .1
上面的操作可以让我们获取更多的节点信息。注:修改完snmpd.conf
B. 配置MIB库
将snmpd.conf 中的以下行注释掉: 
mibs:
这样之后,我们获取节点信息,不必输入长串的数字
#之前获取内存信息的操作
[ubuntu]snmpwalk -v 2c -c public localhost .1.3.6.1.4.1.2021.4.3.0
UCD-SNMP-MIB::memTotalSwap.0 = INTEGER: 1950716 kB
#之后获取内存信息的操作
[ubuntu]#snmpwalk -v 2c -c public localhost memTotalSwap.0
UCD-SNMP-MIB::memTotalSwap.0 = INTEGER: 1950716 kB
C. 配置共同体
其实所谓共同体,把它理解为一个密码就行了,前面我们在使用snmpwalk命令获取主机的信息时,有一个-c public的参数,其实就是指定了这个共同体为public,这是默认的配置,当然在实际中,我们不可能使用默认的值,因此需要把它修改一下。
rocommunity public default -V systemonly
rocommunity6 public default -V systemonly
修改为:
rocommunity xplinuxidc123 default -V systemonly
rocommunity6 xplinuxidc123 default -V systemonly
修改后重启snmpd服务
ubuntu@linuxidc:/etc/snmp$ snmpwalk -v 2c -c public localhost memTotalReal.0
Timeout: No Response from localhost
ubuntu@linuxidc:/etc/snmp$ snmpwalk -v 2c -c xplinuxidc123 localhost memTotalReal.0
UCD-SNMP-MIB::memTotalReal.0 = INTEGER: 8093524 kB
可以看到第一次获取信息不成功,因为我们已经更新了共同体,旧的public将不能再使用,否则认证失败就无法获取snmp提供的主机信息。
D. 允许远程主机访问
默认情况下,snmp服务只是对本地开启,是无法通过远程获取该主机的snmp信息的
ubuntu@linuxidc:/etc/snmp$ sudo netstat -antup | grep 161
udp 0 0 127.0.0.1:161 0.0.0.0:* 11615/snmpd
可以看到,161端口只对本机开放(161端口号是snmp服务的端口号),我们需要修改一下,让snmp服务对外开放。
将下面一行注释掉:
agentAddress udp:127.0.0.1:
同时去掉下面这一行的注释:
#agentAddress udp:,udp6:[::]:
重启snmp服务,通过命令观察
ubuntu@linuxidc:/etc/snmp$ sudo netstat -antup | grep
udp 0.0.0.0: 0.0.0.0:* /snmpd
udp6 ::: :::* /snmpd
可以看到服务已经对外开放了,并且同时支持IPv4和IPv6。这样之后,我们就能在远程主机进行测试。
 
三、测试
1、常用测试命令
snmpwalk -v 2c -c public localhost /IP ##获取系统所有的信息
snmpwalk -v 2c -c public localhost /IP .1.3.6.1.2.1.25.2.2 ##取得系统总内存
snmpwalk -v 2c -c public localhost /IP.1.3.6.1.4.1.2021.4.3.0 ##取得系统内存
snmpwalk -v 2c -c public localhost /IP .1.3.6.1.2.1.4.20 ##取得IP信息
snmpwalk -v 2c -c public localhost /IP hrSystemNumUsers ##取得系统用户数
snmpwalk -v 2c -c public localhost /IP system ##查看系统信息
snmpwalk -v 2c -c public localhost /IP ifDescr ##获取网卡信息
snmpwalk -v 2c -c public localhost 1.3.6.1.2.1.1.1 ##获取本地设备、系统等等信息

  

 
2、snmp服务器获取snmp代理的设备信息
1)Ubuntu上安装snmp相关的软件,并进行配置;
2)嵌入式设备启动snmp,IP是10.13.113.205;
3)Ubuntu上执行:snmpwalk -v 2c -c public 10.13.113.205 memTotalSwap.0,即可获取嵌入式设备的信息。
嵌入式设备上有打印Ubuntu机器发过来的调试信息; 

snmp 介绍和Ubuntu安装使用的更多相关文章

  1. Ubuntu安装及ubuntu系统使用菜岛教程

    Ubuntu是一款广受欢迎的开源Linux发行版,和其他Linux操作系统相比,Ubuntu非常易用,和Windows相容性很好,非常适合Windows用户的迁移,在其八年的成长过程中已经获得了两千多 ...

  2. ubuntu安装ANSYS17.2全过程

    本次介绍在Ubuntu kylin1604下安装Ansys 17.2的全部过程. 1 安装文件准备 关于ANSYS的软件安装文件,在网络上可以找到.这里采用SSQ版本的安装文件,如图所示,包含一个名为 ...

  3. Ubuntu安装Hadoop与Spark

    更新apt 用 hadoop 用户登录后,我们先更新一下 apt,后续我们使用 apt 安装软件,如果没更新可能有一些软件安装不了.按 ctrl+alt+t 打开终端窗口,执行如下命令: sudo a ...

  4. 一个ubuntu phper的自我修养(ubuntu安装)

    ubuntu安装篇 一.ubuntu下载 到ubuntu官网下载适合自己电脑配置的系统版本,此处不做展开. 二.制作USB启动盘 在windows下制作USB启动盘,工具是universal usb ...

  5. ubuntu 安装JAVA jdk的两种方法:

    ubuntu 安装jdk 的两种方式: 1:通过ppa(源) 方式安装. 2:通过官网下载安装包安装. 这里推荐第1种,因为可以通过 apt-get upgrade 方式方便获得jdk的升级 使用pp ...

  6. ubuntu安装shadowshocks-qt5

    sudo add-apt-repository ppa:hzwhuang/ss-qt5 sudo apt-get update sudo apt-get install shadowsocks-qt5 ...

  7. ubuntu chmod 无法更改 文件夹权限 系统提示“不允许的操作 2、linux 如何修改只读文件 3、ubuntu安装

    1.ubuntu chmod 无法更改 文件夹权限 系统提示“不允许的操作 答案:需要超级用户权限 sudo 2.linux 如何修改只读文件 答案:可以使用chmod命令,为改文件提供其他的权限.u ...

  8. Ubuntu安装Burg

    友情提示:本文只介绍了如何安装Burg,没有关于卸载Burg的相关说明.事实上,我后来直接新装了12.04,我没有卸载Burg的经验.考虑到Burg事关系统引导的大事,安装的话按本文来做应该没有问题, ...

  9. Ubuntu 安装 JDK 7 / JDK8 的两种方式

    ubuntu 安装jdk 的两种方式: 1:通过ppa(源) 方式安装. 2:通过官网下载安装包安装. 这里推荐第1种,因为可以通过 apt-get upgrade 方式方便获得jdk的升级 使用pp ...

随机推荐

  1. 【2018 “百度之星”程序设计大赛 - 初赛(B)-1004】p1m2(迷之二分)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6383 题目就是让你求一个整数数组,在进行任意元素 + 1. - 2 操作后,请问在所有可能达到的稳定数 ...

  2. spring项目加载不出来静态资源

    方法1: 拦截器中增加针对静态资源不进行过滤(涉及spring-mvc.xml) <!-- 添加注解驱动 --> <mvc:annotation-driven/> <!- ...

  3. vim 插件 for gbasic

    https://github.com/tracyone/vim-gbasic 功能特点 提供正确语法显示,包括关键字,bulidin函数,注释,强调注释,TODO注释 提供正确的折叠; 准确secti ...

  4. c# 一个记录日志的通用方法

    public static string WriteFile(string strText, string path) { Encoding code = Encoding.GetEncoding(& ...

  5. 迭代器、foreach循环、泛型集合

    集合的迭代 语法:Iterator<Object> it=集合.iterator(); while(it.hasNext()){ Object obj=it.next(); } is.ha ...

  6. Inception 初探

    1,安装 下载组件 wget clone https:/github.com/mysql-inception/inception.git rz ll unzip inception-master.zi ...

  7. java入门学习(5)—面向对象注意点总结

    1.一个类里面最多有5种成份(属性,方法,构造器,还有两种还没有涉及). 2.定义方法时又返回值的保证最起码有一个有效的return语句,最起码让其在编译的时候就识别到,而不是经过判断识别,如通过if ...

  8. pytorch在CPU和GPU上加载模型

    pytorch允许把在GPU上训练的模型加载到CPU上,也允许把在CPU上训练的模型加载到GPU上.CPU->CPU,GPU->GPU torch.load('gen_500000.pkl ...

  9. 【机器学习】集成学习之sklearn中的xgboost基本用法

    原创博文,转载请注明出处!本文代码的github地址    博客索引地址 1.数据集 数据集使用sklearn自带的手写数字识别数据集mnist,通过函数datasets导入.mnist共1797个样 ...

  10. JAVA多线程------用1

    火车上车厢的卫生间,为了简单,这里只模拟一个卫生间,这个卫生间会被多个人同时使用,在实际使用时,当一个人进入卫生间时则会把卫生间锁上,等出来时 打开门,下一个人进去把门锁上,如果有一个人在卫生间内部则 ...