zabbix 可见名称 device name_mysqlzabbix 可见名称 device name_服务器_02zabbix 可见名称 device name_mysql_03zabbix 可见名称 device name_mysql_04zabbix 可见名称 device name_服务器_05zabbix 可见名称 device name_mysql_06zabbix 可见名称 device name_数据库_07zabbix 可见名称 device name_mysql_08一.关于zabbix的介绍

基本介绍

    zabbix(音同 za:bix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
    zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
    zabbix由2部分构成,zabbix server与可选组件zabbix agent。
    zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。

企业方面介绍

    zabbix 是一个基于WEB界面的企业级的、开源的、分布式的监控套件,被用来监控IT基础设施的可用性和性能。它能监视各种网络参数,保证服务器系统的安全运营,并提供灵活的告警机制,允许用户对事件发送基于邮件、短信、微信和钉钉等告警方式,这样可以保证用户可以快速定位/解决存在的各种问题。
    zabbix 基于存储的数据提供出色的报表和数据可视化功能。这些功能使得其成为容量规划的理想选择。
    zabbix 所有的报表、统计数据和配置参数都可以通过基于Web的前端页面进行访问。基于Web的前端页面确保您可以在任何地方访问您监控的网络状态和服务器健康状况。
    适当的配置后,zabbix可以在监控IT基础设施方面发挥重要作用。无论是对于有少量服务器的小型组织,还是拥有大量服务器的大企业而言,同样适用。zabbix 是零成本的,因为zabbix编写和发布基于GPL V2协议. 意味着源代码是免费发布的。

zabbix的优缺点

优点:

1.数据采集:可用性和性能检测,自动发现,支持agent、snmp、JMX、telnet等多种采集方式,支持主动和被动模式数据传输、支持用户自定义插件,自定义间隔收集数据
2.高可用:server对设备性能要求低,支持proxy分布式监控,分布式集中管理,有自动发现功能,可以实现自动化监控;开放式接口,扩展性强,插件编写容易
3.告警管理:支持多条件告警,支持多种告警方式,支持多组模板,模板继承。
4.告警设置:告警周期,告警级别,告警恢复通知、告警暂停,时段阈值、支持维护周期、支持单机停用
5.图形化展示:允许自定义创建多监控项视图,网络拓扑,自定义面板展示,自定义IT服务可用性
6.历史数据:历史数据查询可配置,内置housekeeping数据清理机制
7.安全审计:具备安全的用户审计日志,权限认证,用户可以限制允许维护的列表。

缺点:

1.性能瓶颈,监控系统没有低估高峰期,具有持续性和周期性,机器量越大,数据的增大会使数据库的写入成为一定的瓶颈,官网给出的单机上限5000台,届时就需要增加proxy,增加成本。
2.Zabbix采集数据有pull方式,也就是server主动模式,当目标机器量大之后,pull任务会出现积压。采集数据会延迟
3.项目二次开发,需要分析MySQL表结构,表结构比较复杂,通过API开发对开发能力有要求。
4.内置housekeeping在执行过程中会对数据库增加压力,需要对数据库进行优化

zabbix的环境

   要想搭建一个Zabbix的工作环境,需要从服务器入手。与服务器通信,管理员需要使用一个Zabbix前端界面,与Zabbix服务器和数据库进行通信。三个关键(界面、服务器和数据库)可以安装在同一台服务器上,但是如果你拥有一个更大更复杂的环境,将它们安装在不同的主机上也是一个选项。Zabbix服务器能够直接监控到同一网络中的设备,如果其他网络的设备也需要被监控,那还需要一台Zabbix代理服务器。

二.安装zabbix

下载zabbix的安装包进行安装(这里需要解决依赖性,按照提示安装相应的软件)

yum install -y zabbix-server-mysql
yum install -y zabbix-web-mysql

zabbix 可见名称 device name_服务器_09

zabbix 可见名称 device name_mysql_10

安装mariadb并开启mariadb服务

yum install mariadb-server -y
systemctl start mariadb
systemctl  enable  mariadb

 

zabbix 可见名称 device name_mysql_11

zabbix 可见名称 device name_数据库_12

zabbix 可见名称 device name_mysql_13

设置安全初始化

mysql_secure_installation

zabbix 可见名称 device name_数据库_14

zabbix 可见名称 device name_数据库_15

zabbix 可见名称 device name_服务器_16

zabbix 可见名称 device name_数据库_17

zabbix 可见名称 device name_服务器_18zabbix 可见名称 device name_服务器_19

登陆数据库,创建数据库,创建用户并授权

mysql -uroot -p
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to zabbix@localhost identified by 'westos'; westos是本地数据库用户zabbix的密码

zabbix 可见名称 device name_数据库_20

导入zabbix数据库

cd   /usr/share/doc/zabbix-server-mysql-4.0.5/
zcat create.sql.gz  | mysql  -p zabbix

zabbix 可见名称 device name_服务器_21

导入数据库后再次查看数据库,发现此时有zabbix数据库

[root@server1 4.0]# mysql -p
MariaDB [(none)]> show databases;

zabbix 可见名称 device name_数据库_22

zabbix 可见名称 device name_mysql_23zabbix 可见名称 device name_服务器_24zabbix 可见名称 device name_服务器_25zabbix 可见名称 device name_服务器_26zabbix 可见名称 device name_mysql_27查看zabbix数据库的表有144行

zabbix 可见名称 device name_数据库_28

zabbix 可见名称 device name_服务器_29编辑zabbix的配置文件(修改密码和时区)

vim /etc/zabbix/zabbix_server.conf 
vim /etc/httpd/conf.d/zabbix.conf

zabbix 可见名称 device name_mysql_30zabbix 可见名称 device name_数据库_31zabbix 可见名称 device name_服务器_32zabbix 可见名称 device name_服务器_33zabbix 可见名称 device name_数据库_34zabbix 可见名称 device name_服务器_35zabbix 可见名称 device name_数据库_36zabbix 可见名称 device name_服务器_37zabbix 可见名称 device name_mysql_38zabbix 可见名称 device name_数据库_39zabbix 可见名称 device name_数据库_40zabbix 可见名称 device name_数据库_41zabbix 可见名称 device name_服务器_42zabbix 可见名称 device name_mysql_43zabbix 可见名称 device name_数据库_44

zabbix 可见名称 device name_mysql_45

zabbix 可见名称 device name_数据库_46zabbix 可见名称 device name_mysql_47

zabbix 可见名称 device name_数据库_48

开启zabbix-server和zabbix-agent和httpd服务

zabbix 可见名称 device name_mysql_49

在浏览器中安装zabbix

    在浏览器中输入以下网址,便可以根据页面中的要求成功安装zabbix

    http://172.25.15.1/zabbix/setup.php

zabbix 可见名称 device name_mysql_50

点击Next step,之后会看到一个页面,显示检查php的结果

zabbix 可见名称 device name_mysql_51

填写以下信息(输入密码,密码是mysql中的密码),点击Next step

zabbix 可见名称 device name_服务器_52

zabbix 可见名称 device name_服务器_53

zabbix 可见名称 device name_mysql_54

输入name为zabbix server,点击Next step

zabbix 可见名称 device name_服务器_55

安装前汇总,点击Next step

zabbix 可见名称 device name_数据库_56

安装

zabbix 可见名称 device name_数据库_57

zabbix 可见名称 device name_服务器_58

登陆(默认用户是Admin,密码是zabbix)

zabbix 可见名称 device name_mysql_59

zabbix 可见名称 device name_数据库_60

登陆成功后,显示了以下的界面,点击由上角的"小人"头像

zabbix 可见名称 device name_数据库_61

zabbix 可见名称 device name_数据库_62

zabbix 可见名称 device name_数据库_63zabbix 可见名称 device name_数据库_64zabbix 可见名称 device name_mysql_65zabbix 可见名称 device name_数据库_66zabbix 可见名称 device name_数据库_67zabbix 可见名称 device name_数据库_68zabbix 可见名称 device name_mysql_69zabbix 可见名称 device name_数据库_70zabbix 可见名称 device name_服务器_71

zabbix 可见名称 device name_mysql_72zabbix 可见名称 device name_mysql_73点击后选择language为Chinese(以便我们之后更好的操作)zabbix 可见名称 device name_数据库_74

zabbix 可见名称 device name_数据库_75

三.添加agent主机:

(一)在server2上安装软件

zabbix 可见名称 device name_服务器_76

开启服务

zabbix 可见名称 device name_服务器_77zabbix 可见名称 device name_mysql_78zabbix 可见名称 device name_服务器_79zabbix 可见名称 device name_mysql_80zabbix 可见名称 device name_数据库_81

zabbix 可见名称 device name_mysql_82

zabbix 可见名称 device name_服务器_83

更改配置文件/etc/zabbix/zabbix_agentd.conf(注意此处的hostname必须是本地的主机名,而且在虚拟机上已经配置好解析了):

98 Server=172.25.66.1
139 ServerActive=172.25.66.1
150 Hostname=server2

zabbix 可见名称 device name_mysql_84zabbix 可见名称 device name_数据库_85zabbix 可见名称 device name_数据库_86zabbix 可见名称 device name_mysql_87zabbix 可见名称 device name_mysql_88zabbix 可见名称 device name_服务器_89zabbix 可见名称 device name_数据库_90zabbix 可见名称 device name_服务器_91  zabbix 可见名称 device name_服务器_92zabbix 可见名称 device name_mysql_93zabbix 可见名称 device name_服务器_94zabbix 可见名称 device name_服务器_95zabbix 可见名称 device name_服务器_96zabbix 可见名称 device name_mysql_97

zabbix 可见名称 device name_数据库_98

zabbix 可见名称 device name_mysql_99zabbix 可见名称 device name_服务器_100

zabbix 可见名称 device name_数据库_101

zabbix 可见名称 device name_数据库_102

zabbix 可见名称 device name_服务器_103zabbix 可见名称 device name_服务器_104

zabbix 可见名称 device name_服务器_105

zabbix 可见名称 device name_mysql_106

zabbix 可见名称 device name_数据库_107(二)在server3安装软件

zabbix 可见名称 device name_数据库_108

开启服务

zabbix 可见名称 device name_服务器_109

zabbix 可见名称 device name_服务器_110类似于server2的操作,更改配置文件/etc/zabbix/zabbix_agentd.conf(此处的hostname必须是本地的主机名):

zabbix 可见名称 device name_数据库_98

zabbix 可见名称 device name_数据库_112

zabbix 可见名称 device name_mysql_113

zabbix 可见名称 device name_数据库_114

四.添加zabbix监控:

在server1(zabbix web)添加监控

添加监控有三种方式

手动添加

选择配置->主机->创建主机

写入主机名称为server2,群组为linux servers,ip地址写本机的ip地址,填完信息后点击上方的模板(不要点下方的添加)

zabbix 可见名称 device name_mysql_115

zabbix 可见名称 device name_服务器_116

zabbix 可见名称 device name_数据库_117

zabbix 可见名称 device name_服务器_118

选择模板后,进行模板添加,选择Template OS Linux

zabbix 可见名称 device name_服务器_119

zabbix 可见名称 device name_mysql_120zabbix 可见名称 device name_mysql_121zabbix 可见名称 device name_数据库_122zabbix 可见名称 device name_服务器_123zabbix 可见名称 device name_数据库_124zabbix 可见名称 device name_mysql_125zabbix 可见名称 device name_服务器_126zabbix 可见名称 device name_数据库_127zabbix 可见名称 device name_mysql_128zabbix 可见名称 device name_数据库_129zabbix 可见名称 device name_mysql_130zabbix 可见名称 device name_服务器_131zabbix 可见名称 device name_数据库_132zabbix 可见名称 device name_数据库_133zabbix 可见名称 device name_mysql_134zabbix 可见名称 device name_服务器_135zabbix 可见名称 device name_数据库_136zabbix 可见名称 device name_mysql_137zabbix 可见名称 device name_数据库_138zabbix 可见名称 device name_服务器_139

zabbix 可见名称 device name_数据库_140

zabbix 可见名称 device name_mysql_141添加成功,显示以下界面,发现server2主机成功添加,不过可用性显示的还是灰色的,功能没有开启

zabbix 可见名称 device name_mysql_142

在server2的shell界面中重新启动一下zabbix-agent

zabbix 可见名称 device name_数据库_143

zabbix 可见名称 device name_数据库_144

自动发现

删除掉手动添加的server2主机

zabbix 可见名称 device name_mysql_145

删除成功

zabbix 可见名称 device name_mysql_146

zabbix 可见名称 device name_数据库_147点击配置->动作->事件源->选择自动发现->会看到有一个已经停用的Auto discovery.Linux servers(因为已经配置好了,我们只需要把它开启使用就行),开启成功会有绿色提示

zabbix 可见名称 device name_服务器_148

然后设置自动发现规则(设置名称,自动发现的IP范围,更新间隔,没有agent代理程序)

zabbix 可见名称 device name_服务器_149

zabbix 可见名称 device name_mysql_150点击监测->自动发现,查看是否发现成功,发现成功可以查看已监测的主机以及在线时间/断线时间zabbix 可见名称 device name_数据库_151

zabbix 可见名称 device name_服务器_152

此时再点击配置->主机,查看server2主机已经添加成功,如果可用性ZAB是灰色的,可以重启服务或者刷新界面,稍等一会二就变绿了

zabbix 可见名称 device name_数据库_153

自动注册
自动注册是server3去发现主机,开启自动注册,需要先关闭自动发现,不然会相互干扰

在浏览器中点击配置->自动发现,点击“已启用”将自动发现禁用(也可以将其打上对勾,选择底下的禁用)

zabbix 可见名称 device name_服务器_154

zabbix 可见名称 device name_服务器_155zabbix 可见名称 device name_服务器_156zabbix 可见名称 device name_服务器_157在浏览器中点击配置->动作,点击“已启用”将自动发现禁用(也可以将其打上对勾,选择底下的禁用)

zabbix 可见名称 device name_mysql_158

选择自动注册,并点击创建动作

zabbix 可见名称 device name_服务器_159

输入名称auto_reg,设置触发条件,主机名称,包含,server3,选择完后不要点添加,点击操作

zabbix 可见名称 device name_mysql_160

在操作中点击新的添加操作

zabbix 可见名称 device name_数据库_161

首先点击新的,选择操作类型为添加主机

zabbix 可见名称 device name_服务器_162

zabbix 可见名称 device name_mysql_163

zabbix 可见名称 device name_数据库_164zabbix 可见名称 device name_服务器_165其次,选择添加到主机群组,群组选择Linux servers

zabbix 可见名称 device name_服务器_166

最后添加操作类型与模板关联,模板Template OS Linux,点击添加,点击更新

zabbix 可见名称 device name_服务器_167

 动作更新后显示的页面

zabbix 可见名称 device name_数据库_168

 此时点击配置->主机,会发现server3已经被发现(此时是自动注册),和之前一样如果可用性是灰色,刷新或者重启服务,一会儿就会变绿

zabbix 可见名称 device name_数据库_169

关于zabbix监控的基础设置我就先介绍到这里了

其实最常用的添加监控方法应该是自动发现,因为一次可以发现多个