本文档主要介绍zabbix监控系统的具体配置和添加主机方法。linux
Templates,Hostgroups, Web, Triggers, Graps,screens,Actionsweb
RHEL6.2系统vim
本文适合运维组成员阅读。服务器
配置篇主要介绍添加经常使用的组、主机、项目、触发和经常使用的功能,这里配置思路是建立一个模板,而后添加主机,主机上利用模板网络
点击Configuration-----Host groups-----Create host group.oracle
这样就生成一个组。app
这里建立的模板,能够用于后面的添加主机,省去了主机的配置,点击Configuration----Templates-----create template运维
把该模板加入Linux_Manager组中。dom
Applications是一个组,用来存储Items的项,根据监控需求用来建立Applications,可分为:CPU、Memory、Network、Ping、apply、disk、Proc_pulse。ide
在这里,建立了7个Applications
Items:监控的项,能够设置经过什么样的命令监控主机或者被监控端,在添加Items的时候首先肯定你的key是否支持的操做版本,提供一个测试命令:
cd /usr/local/zabbix/bin
./zabbix_get–s 主机ip -p 端口 -k key[参数]
命令解释
Zabbix_get获取数值的命令
-s 你要查的ip(本地、远程均可以)
-p zabbix_agentd的端口,默认10050
-k key的值
用到icmppingloss、icmppingsec这两个命令,zabbix是调用系统里的fping命令,若是系统没有,可本身安装,需注意几点
Fping的默认安装路径是/usr/local/sbin/fping,须要把zabbix配置文件里的fpinglocation路径修改成/usr/local/sbin/fping
还要修改权限:chownroot:root /usr/local/sbin/fping
chmodu+s /usr/local/sbin/fping
测试显示alive表示成功
这里是在templates模板里面建立
打开模板,点击create item
监控返回值方法相似,是用icmppingsec的键值
发现网卡:
点击Item prototypes-----Create item prototype,分别建立对进出网卡流量的监控
发现磁盘:
点击Item prototypes----Create item prototype,配置以下,此配置监控磁盘剩余率
磁盘空闲率小于5%是触发报警,设置以下
点击Trigger prototypes----Create prototypte
点击Preview,可看到数据(如上图)。
可根据需求自行添加所需项目
添加完的模板以下
添加完的主机以下
勾选Recovery message 下面是故障恢复后的内容显示(若是不选故障恢复后不会报警)
选择触发的Item----Add,能够以application 、 hostgroup、items、items name 、 host分类监控,注意:要保留两个默认的conditions,不然故障恢复的信息内容和提示次数会跟故障报警的信息和次数同样(例如,故障报警3次,等到ok时也会提示3次ok,浪费短信)。
Options里面 from1 to 2 表示动做2次 step duration 是动做间隔时间(s)最小60s,添加用户,点击update ---save
可填写邮箱
权限里面给全部权限。点击save保存。
添加Media types
填写服务器名称,发件人邮箱,save保存。
Web应用可检测网站返回时间和下载速度
添加web前要先选定一个主机
点击Steps----Add 增长步骤,输入url路径和返回码、关键字,点击update,最后save保存。
可到Monitoring-----web里面查看图形
scree能够使一台主机的图形在一个界面显示,方面观察,添加方法以下:
点击configuration-----scree----create scree,输入主机名,列数和行数,save保存
点击主机名,进入配置界面,点击change,及选择要添加的图形,点击save保存!
修改sendmail使用的默认域名便可实现,默认为localhost.localdomain,若是不修改则不能正常接收邮件。具体方法入下:
#vim /etc/hosts
127.0.0.1 zabbix.tmg.com localhost.localdomain localhost
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
#vim /etc/mail/access
Connect:localhost.localdomain RELAY
Connect:localhost RELAY
Connect:127.0.0.1
Connect:zabbix.oplinux.com RELAY
#vi /etc/mail/local-host-names
zabbix.oplinux.com
#service sendmail restart
#telnet 127.0.0.1 25
Trying 127.0.0.1…
Connected to zabbix.oplinux.com(127.0.0.1).
Escape character is ‘^]’.
220 poweryingzi.comESMTP Sendmail 8.13.8/8.13.8; Sun, 10 Oct 2010 14:00:33 +0800
测试发现上面的结果就能够了
点击configuration----Media Types----email,以下图配置,最后save保存便可
yum -y install lockdev minicom perl-XML-Parser
wget http://ftp.gnome.org/pub/gnome/sources/intltool/0.40/intltool-0.40.6.tar.gz
cd intltool-0.40.6/
./configure --prefix=/usr/local/intltool && make && make install
wget http://www.gnokii.org/download/gnokii/0.6.x/gnokii-0.6.31.tar.gz
tar zxvf gnokii-0.6.31.tar.gz -C /usr/local/
cd gnokii-0.6.31
./configure
gmake && gmake install
cp /usr/local/share/doc/gnokii/sample/gnokiirc /etc/
若是报错:error: Your intltool is too old. You need intltool 0.35.0 or later.,则从新安装intltool,不指定安装路径。
若是报错:no package ‘glib-2.0’ found,则:yum install libgnomeui-devel 便可解决。
minicom -s
按A键可修改Serial Device为/dev/ttyUSB0
按E键可修改E项,调整值为9600 5N1.
回车,先保存,再退出
在虚拟机下,要添加串行端口,不然虚拟机没法识别短信猫。
测试minicom
运行输入 minicom 输入AT显示OK
退出按Ctrl+A -----Z ----X 便可
测试短信猫是否安装成功
gnokii --identify
测试短信
echo -e “test” | gnokii --sendsms 134xxxxxxx
修改权限
chown -R zabbix.zabbix /dev/ttyS0
mkdir /usr/local/zabbix/scripts
vim /usr/local/zabbix/etc/zabbix_server.conf
添加 AlertScriptsPath=/usr/local/zabbix/scripts(去掉#号便可)
编写报警脚本
默认zabbix会传给脚本3个值,分别为$1(telephone) $2(subject) $3(body)
重启zabbix服务 service zabbix_server restart
配置完毕。
添加交换机以前需开启snmp、配置public值,还要弄清两个经常使用OID值(ifOutOctets 1.3.6.1.2.1.2.2.1.16 传输接口,包括帧字符的字节总数;ifInOctets 1.3.6.1.2.1.2.2.1.10 接口上接收到的字节总数,包括帧字符),OID值含义入下:
01.ifindex 1.3.6.1.2.1.2.2.1.1 每一个接口的惟一值
02.ifDescr 1.3.6.1.2.1.2.2.1.2 一个文本字符串包含的接口信息,此字符串应该包括制造商的名称,产品名称和版本硬件接口
03.ifType 1.3.6.1.2.1.2.2.1.3 接口类型,根据物理/链路协议和下面的网络层协议栈区分。
04.ifMtu 1.3.6.1.2.1.2.2.1.4 接口能够最大发送和接收数据包的字节数
05.ifSpeed 1.3.6.1.2.1.2.2.1.5 接口当前最大每秒比特数(bit/s)速率。
06.ifPhysAddress 1.3.6.1.2.1.2.2.1.6 在协议层接口的地址,即MAC(物理)地址。
07.ifAdminStatus 1.3.6.1.2.1.2.2.1.7 目前管理接口状态
08.ifOperStatus 1.3.6.1.2.1.2.2.1.8 接口当前的运行状态
09.ifInOctets 1.3.6.1.2.1.2.2.1.10 接口上接收到的字节总数,包括帧字符
10.ifInUcastPkts 1.3.6.1.2.1.2.2.1.11 子网单播传送到更高层协议的数据包数量
11.ifInNUcastPkts 1.3.6.1.2.1.2.2.1.12 非单播的数量(子网广播或者子网多播)传送到一个更高层协议的数据包
12.ifInDiscards 1.3.6.1.2.1.2.2.1.13 一些入站数据包被选择为丢弃,以防止它们被交付到一个更高层的协议。
可能缘由为释放缓冲区空间。
13.ifInErrors 1.3.6.1.2.1.2.2.1.14 入站数据包包含的错误,防止它们被交付到一个更高的协议层
14.ifInUnknownProtos 1.3.6.1.2.1.2.2.1.15 未知或不受支持的协议被丢弃,由于经过该接口接收的数据包的数量。
15.ifOutOctets 1.3.6.1.2.1.2.2.1.16 传输接口,包括帧字符的字节总数
16.ifOutUcastPkts 1.3.6.1.2.1.2.2.1.17 在该层,包括哪些被丢弃或不发送组播或广报地址的数据包总数,
更高级别的协议要求传输,并无解决。
17.ifOutNUcastPkts 1.3.6.1.2.1.2.2.1.18 更高级别的协议请求传送数据包总数,并给该子层多播或者广播地址,
包括哪些被丢弃或不发送的。
18.ifOutDiscards 1.3.6.1.2.1.2.2.1.19 被选择的出站数据包被丢弃,即便没有错误被检测到,以防止其余传输的数量。
一个可能的缘由丢弃这样的包可能会释放缓冲空间。
19.ifOutErrors 1.3.6.1.2.1.2.2.1.20 因为错误而不能被传送的出站数据包数量
20.ifOutQLen 1.3.6.1.2.1.2.2.1.21 输出数据包长度。
snmpwalk -v 2c -c public hostip .1.3.6.1.2.1.1.1.0,该命令用来获取设备信息
例如
具体添加方法以下: