本文主要是介绍基于CentOS6.6的Zabbix3.0监控配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Zabbix 是一个高度集成的网络监控套件,通过一个软件包即可提供如下特性:
1)数据收集
a) 可用性及性能检测
b) 支持 SNMP(trapping 及 polling)、IPMI、JMX 监控
c) 自定义检测
d) 自定义间隔收集收据
e) server/proxy/agents 吸能
2)灵活的阀值定义
a) 允许灵活地自定义问题阀值,Zabbix 中称为触发器(trigger), 存储在后端数据库中
3)高级告警配置
a) 可以自定义告警升级(escalation)、接收者及告警方式
b) 告警信息可以配置并允许使用宏(macro)变量
c) 通过远程命令实行自动化动作(action)
4)实时绘图
a) 通过内置的绘图方法实现监控数据实时绘图
5)扩展的图形化显示
b) 允许自定义创建多监控项视图
c) 网络拓扑(network maps)
d) 自定义的面板(screen)和 slide shows,并允许在 dashboard 页面显示
e) 报告
f) 高等级(商业)监控资源
6)历史数据存储
a) 数据存储在数据库中
b) 历史数据可配置
c) 内置数据清理机制
7)配置简单
a) 主机通过添加监控设备方式添加
b) 一次配置,终生监控(译者注:除非调整或删除)
c) 监控设备允许使用模板
8)模板使用
a) 模板中可以添加组监控
b) 模板允许继承
9)网络自动发现
a) 自动发现网络设备
b) agent 自动注册
c) 自动发现文件系统、网卡设备、SNMP OID 等
10)Zabbix API
a) Zabbix API 提供程序级别的访问接口,第三方程序可以很快接入
--------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------
二、Zabbix进程构造
我觉得我们很有必要了解一下 zabbix 进程组成结构,默认情况下 zabbix 包含 5 个程序:zabbix_agentd、zabbix_get、zabbix_proxy、zabbix_sender、zabbix_server,另外 zabbix_java_gateway 是可选,需要另外安装。下面来分别介绍下他们各自的作用。
zabbix_agentd
客户端守护进程,收集客户端数据,例如 cpu 负载、内存、硬盘使用情况等
zabbix_get
zabbix 工具,单独使用的命令,通常在 server 或者 proxy 端执行,用户获取被监控端数据,通常用于排错。例
如在 server 端获取不到客户端的内存数据,我们可以使用 zabbix_get 获取客户端的内容的方式来做故障排查。
zabbix_sender
zabbix 工具,用于发送数据给 server 或者 proxy,通常用于耗时比较长的 check,并且与 trapper 配合使用。生
存环境中,个别非常耗时间 check 经常导致 zabbix 超时。于是我们在脚本执行完毕之后,使用 sender 主动提交数
据。
zabbix_server
zabbix 服务端守护进程。zabbix_agentd、zabbix_get、zabbix_sender、zabbix_proxy、zabbix_java_gateway 的数
据最终都是提交到 server
备注:当然不是数据都是主动提交给 zabbix_server,大多数情况下都是 server 主动去取数据。
zabbix_proxy
zabbix 代理守护进程。功能类似 server,唯一不同的是它只是一个中转站,它需要把收集到的数据提交/被提交
到 server 里。一般跨机房、地区的环境需要用到 proxy。
zabbix_java_gateway
zabbix2.0 之后引入的一个功能。顾名思义:Java 网关,类似 agentd,但是只用于 Java 方面。需要特别注意的
是,它只能主动去获取数据,而不能被动获取数据。它的数据最终会给到 server 或者 proxy。
--------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------
三、zabbix客户端安装
服务端安装的文章参考 http://blog.csdn.net/sj349781478/article/details/79030634
1)创建用户
#groupadd zabbix
#useradd -g zabbix zabbix -s /sbin/nologin
2)zabbix软件包下载、安装
#cd /usr/local/src
#wget http://pkgs.fedoraproject.org/repo/pkgs/zabbix/zabbix-3.0.1.tar.gz/890d9eec69304ad552959fabe0a5d122/zabbix-3.0.1.tar.gz
#tar zxvf zabbix-3.0.1.tar.gz #解压
#cd /usr/local/src/zabbix-3.0.1 #进入安装目录
#./configure --prefix=/usr/local/zabbix-agent --enable-agent
#make && make install
3)添加服务端口
#vi /etc/services #编辑,在最后添加以下代码
# Zabbix-agent
zabbix-agent 10050/tcp # Zabbix Agent
zabbix-agent 10050/udp # Zabbix Agent
zabbix-trapper 10051/tcp # Zabbix Trapper
zabbix-trapper 10051/udp # Zabbix Trapper
4)修改启动脚本
#cp /usr/local/src/zabbix-3.0.1/misc/init.d/fedora/core/zabbix_agentd /etc/rc.d/init.d/zabbix_agentd
#chmod +x /etc/rc.d/init.d/zabbix_agentd #添加脚本执行权限
#vi /etc/rc.d/init.d/zabbix_agentd #编辑客户端配置文件
BASEDIR=/usr/local/zabbix-agent/ #修改zabbix安装目录
#vi /etc/rc.d/rc.local
service zabbix_agentd start #添加开机启动
5)修改zabbix_agent配置文件
#vim /usr/local/zabbix-agent/etc/zabbix_agentd.conf
Server=192.168.66.153 #服务器端的IP
ServerActive=192.168.66.153
Hostname=backup #agent主机名
Include=/usr/local/zabbix-agent/etc/zabbix_agentd.conf.d/ #扩展配置目录
#service zabbix_agentd restart #重启zabbix-agent
6)测试
下面的命令需要在server端执行,其中192.168.66.121是agent的ip
#/usr/local/zabbix/bin/zabbix_get -s192.168.66.121 -p10050 -k"system.uptime"
1373310
有值说明成功啦。
--------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------
四、zabbix 监控第一台服务器
1)zabbix 监控服务器
创建主机,选择模板以及录入基本信息,过一分钟左右,就可以看到 cpu、内存、硬盘等等使用情况。本节以图文
为主。by the way, zabbix 中文翻译很烂,configuration 翻译成组态,screen 翻译成筛选。因此本节以英文图文为主。
1.1)创建主机
configuration(配置)–>Hosts(主机)–>Create host(创建主机)
1.2)链接监控模板 Template OS Linux
1.3)查看主机列表
绿色的 Z 表示成功的监控了这台客户端,如果是红色 Z 表示失败,此时将鼠标移动到红色 Z 上,会有具体的提示。
2)查看监控数据
2.1)最新数据
第一台主机添加完成之后,我们便可以查到最新的数据,例如 cpu、内存、硬盘等情况。
2.2)图表数据
解决 zabbix 乱码方法
上传文件到 zabbix 中
找到本地 C:\Windows\Fonts\simsunb 上传到服务器 zabbix 网站目录 fonts 目录下。
修改 zabbix php 配置文件
# cd /var/www/html/zabbix/ # 我 zabbix 安装目录
# sed -i 's/DejaVuSans/simkai/g' ./include/defines.inc.php
3)用户信息
3.1)创建用户
管理->用户->选择用户->创建用户,如下图
--------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------
五、zabbix配置
zabbix 配置内容比较多,我们要分为 9 大块来讲解。分别如下:
主机与组
不用多数,顾名思义,他是添加主机配置与组配置。
监控项
需要监控的项目,例如服务器负载可以使一个监控项。系统自带大部分监控项,一些特定的监控项我们可以自
定义,自定义监控项的方法也会在《zabbix 监控项》这节谈到。
触发器
什么情况下出发什么事情,称之为触发器。例如:定义如果系统负载大于 10 那么报警,这个东西可以称之为
触发器。
事件
触发器状态变更、Discovery 事件等
可视化配置
图表配置,讲监控的数据绘制成曲线图。或者在一个屏幕中可以看到某台主机所有监控图表。
模板配置
自定义监控模板。例如 Template OS Linux
报警配置
配置报警介质:邮箱、sms 以及什么情况下发送报警通知。
宏变量
用户自定义变量,很有用的一个功能。
用户与组管理
这不是讲过了么?之前简单一笔带过,这次来个详细点的。
--------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------
1)zabbix 主机与组配置
什么是主机(Host)?这边有必要介绍一下,主机不单单指类 Linux、window 等服务器,他还包括路由器,交换机
等设备
1.1)新建主机
configuration(配置)->Hosts(主机)->Create host(创建主机)
1.2)克隆/完全克隆主机
前面的文章我们有创建名为“test”的主机,configuration(配置)->Hosts(主机)->列表中点击“test”->正下方 save 旁边的 Clone(克隆)或者 Full clone(完全克隆)。然后修改相应资料,最后 save 即可。
1.3)主机参数
主机标签相应信息录入,如下图:
1.4)主机模板
切换到模板选项卡,在文本框里面搜索你要的模板,例如 Linux,会出现 Template OS Linux,Add 即可。如果你想
删除模板,选择 unlink 或者 unlink and clear,如下图
1.5)主机组
configuration(配置)—>Host Groups(组)—>Create Host Group(创建主机组),录入如下图:
--------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------
未完待续
这篇关于基于CentOS6.6的Zabbix3.0监控配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!