Zabbix介绍及安装

Zabbix简介

  Zabbix是一款能够监控各种网络参数以及服务器健康性和完整性的软件,是一个企业级的分布式开源监控方案。Zabbix使用灵活的通知机制,允许用户为几乎任何事件配置基于邮件的告警。这样可以快速反馈服务器的问题。基于已存储的数据,Zabbix提供了出色的报告和数据可视化功能。这些功能使得Zabbix成为容量规划的理想方案。
  Zabbix支持主动轮询和被动捕获。Zabbix所有的报告、统计信息和配置参数都可以通过基于Web的前端页面进行访问。基于Web的前端页面可以确保您从任何方面评估您的网络状态和服务器的健康性。适当的配置后,Zabbix可以在IT基础架构监控方面扮演重要的角色。对于只有少量服务器的小型组织和拥有大量服务器的大型公司也同样如此。
  Zabbix是免费的。这意味着它的源代码都是免费发行的,可供公众任意使用。
  Zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。

agent 端:主机通过安装agent方式采集数据。
server端:通过收集agent发送的数据,写入数据库(MySQL,ORACLE等),再通过php+apache在web前端展示

zabbix = cacti + nagios
• 优点:基于两款工具优点于一身并更强大,实现企业级分布式监控。
• 缺点:2.2版本带宽占用大但是升级到2.4版本后更节省了带宽资源,其它再无发现。

zabbix监控功能

主机的性能监控、网络设备性能监控、数据库性能监控、多种告警方式、详细的报表图表绘制
监控主机zabbix有专用的agent,可以监控Linux,Windows,FreeBSD等
监控网络设备zabbix通过SNMP,ssh(不多用)
可监控对象:
  • 设备:服务器,路由器,交换机
  • 软件:OS,网络,应用程序
  • 主机性能指标监控
  • 故障监控: down机,服务不可用,主机不可达

zabbix工作原理

  zabbix agent需要安装到被监控的主机上,它负责定期收集各项数据,并发送到zabbix server端,zabbix server将数据存储到数据库中,zabbix web根据数据在前端进行展现和绘图。

这里agent收集数据分为主动和被动两种模式:
  主动:agent请求server获取主动的监控项列表,并主动将监控项内需要检测的数据提交给server/proxy
  被动:server向agent请求获取监控项的数据,agent返回数据。

zabbix监控环境中基本概念

1、主机(host):要监控的网络设备,可由IP或DNS名称指定;
2、主机组(host group):主机的逻辑容器,可以包含主机和模板,但同一个组织内的主机和模板不能互相链接;主机组
通常在给用户或用户组指派监控权限时使用;
3、监控项(item):一个特定监控指标的相关的数据;这些数据来自于被监控对象;item是zabbix进行数据收集的核心,
相对某个监控对象,每个item都由"key"标识;
4、触发器(trigger):一个表达式,用于评估某监控对象的特定item内接收到的数据是否在合理范围内,也就是阈值;接
收的数据量大于阈值时,触发器状态将从"OK"转变为"Problem",当数据再次恢复到合理范围,又转变为"OK";
5、事件(event):触发一个值得关注的事情,比如触发器状态转变,新的agent或重新上线的agent的自动注册等;
6、动作(action):指对于特定事件事先定义的处理方法,如发送通知,何时执行操作;
7、报警升级(escalation):发送警报或者执行远程命令的自定义方案,如每隔5分钟发送一次警报,共发送5次等;
8、媒介(media):发送通知的手段或者通道,如Email、Jabber或者SMS等
9、通知(notification):通过选定的媒介向用户发送的有关某事件的信息;
10、远程命令(remote command):预定义的命令,可在被监控主机处于某特定条件下时自动执行;
11、模板(template):用于快速定义被监控主机的预设条目集合,通常包含了item、trigger、graph、screen、application以及low-level discovery rule;模板可以直接链接至某个主机;
12、应用(application):一组item的集合;
13、web场景(web scennario):用于检测web站点可用性的一个活多个HTTP请求;
14、前端(frontend):Zabbix的web接口;
15、Zabbix API: Zabbix API允许你使用JSON RPC协议来创建、更新和获取Zabbix对象(如主机、监控项、图形和其他)信息或者执行任何其他的自定义的任务
16、Zabbix server:Zabbix软件实现监控的核心程序,主要功能是与Zabbix proxies和Agents进行交互、触发器计算、发送告警通知;并将数据集中保存等
17、Zabbix agent: 一个部署在监控对象上的,能够主动监控本地资源和应用的程序
18、Zabbix proxy: 一个帮助Zabbix Server收集数据,分担Zabbix Server的负载的程序

Zabbix安装 

第一步:安装数据库yum源

rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm

第二部:安装Mysql数据库

yum install Mysql-com*-server -y

第二步:安装zabbix4.0的源

rpm -ivh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm

出现错误:
错误:软件包:zabbix-web-4.0.15-1.el7.noarch (zabbix)
需要:php-bcmath
错误:软件包:zabbix-web-4.0.15-1.el7.noarch (zabbix)
需要:php-mbstring
您可以尝试添加 --skip-broken 选项来解决该问题

wget http://mirrors.163.com/.help/CentOS7-Base-163.repo

第四步:安装zabbix所需的组件

zabbix-server: yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent
zabbix-agent : yum install zabbix-agent
zabbix-proxy : yum install zabbix-proxy


第五步:创建数据库和用户

#mysql -uroot -proot
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
mysql> quit;

第六步:导入zabbix服务器所需要的表和数据

zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -pzabbix zabbix

第七步:编辑文件/etc/zabbix/zabbix_server.conf

DBPassword=zabbix

第八步:编辑文件设置时区/etc/httpd/conf.d/zabbix.conf

php_value date.timezone Europe/Riga(打开注释)

第九步:启动服务和开机自启

systemctl restart zabbix-server zabbix-agent httpd
systemctl enable zabbix-server zabbix-agent httpd

第十步:浏览器访问

http://server_ip/zabbix 

有乱码方块的解决办法:
1.在windows下的C:\Windows\Fonts下找到宋体字文件simsun.ttc
上传到linux服务器中
cd /usr/share/zabbix/assets/fonts
2.将原来的字体备份
mv graphfont.ttf graphfont.ttf.bak
3.把windows中的字体改名为graphfont.ttf
mv simsun.ttc graphfont.ttf

添加客户端:
vim /etc/zabbix/zabbix_agentd.conf
修改以下参数:
Server=127.0.0.1(指向server端ip)
ServerActive=127.0.0.1(指向server端ip)
Hostname=Zabbix server

 

 

猜你喜欢

转载自www.cnblogs.com/twoo/p/11980909.html