1.   简介

zabbix是一个企业级的开源分布式监控解决方案,由一个国外的团队持续维护更新,软件可以自由下载使用,运作团队靠提供收费的技术支持赢利。

zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。具备常见的商业监控软件所有的功能(主机的性能监控、网络设备性能监控、数据库性能监控、FTP等通用协议监控、多种告警方式、详细的报表图表绘制)

 

官方地址:

https://www.zabbix.com/

https://www.zabbix.com/documentation/3.4/manual/installation/install

软件包地址:

https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-server-mysql-3.4.10-1.el7.x86_64.rpm

https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-web-3.4.10-1.el7.noarch.rpm

https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-get-3.4.10-1.el7.x86_64.rpm

https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-agent-3.4.10-1.el7.x86_64.rpm

https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-web-mysql-3.4.10-1.el7.noarch.rpm

https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpmyum源】

1.1.  Zabbix特点

Cacti:适用于对监控时效性要求较低的SNMP监控环境,自定义监控困难

Nagios: 适合机器较少的公司。

Zabbix:适合机器较多不同地域的分布式监控。

l  Zabbix的主要特点:

          - 安装与配置简单,学习成本低

          - 支持多语言(包括中文)

          - 免费开源

          - 自动发现服务器与网络设备

          - 分布式监视以及WEB集中管理功能

          - 可以无agent监视

          - 用户安全认证和柔软的授权方式

          - 通过WEB界面设置或查看监视结果

          - email等通知功能

1.2.  Zabbix功能

l  Zabbix主要功能:

         - CPU负荷

         - 内存使用

         - 磁盘使用

         - 网络状况

         - 端口监视

         - 日志监视

1.3.  硬件要求

l  标准配置:

CPU     8核心2.0GHz

内存:    16GB

硬盘:    300GB

网卡:    1*1000Mbps

l  最低配置:

CPU     4核心2.0GHz

内存:    4GB

硬盘:    50GB

网卡:    100Mbps

1.4.  系统要求

Linux

l  CentOS 6.9

l  CentOS 7.4

1.5.  网络要求

l  准备一个块网卡支持千兆

2.   Zabbix架构


2.1.  部署拓扑

Zabbix3.0 部署_第1张图片

2.2.  基本数据流

Zabbix3.0 部署_第2张图片

2.3.  zabbix监控流程

Zabbix3.0 部署_第3张图片


2.4.  Zabbix系统架构

Zabbix3.0 部署_第4张图片

l  Zabbix两种工作模式

server   【服务端】

agent    【代理端】

 

被监控端:通过安装agent方式采集数据,网络设备通过SNMP方式采集数据。

Server端:通过收集SNMPagent发送的数据再通过web前端展示。



3.   Zabbix安装

3.1.  准备环境

l  下载

zabbix-agent-3.4.10-1.el7.x86_64.rpm    【监控主机客户端】
zabbix-get-3.4.10-1.el7.x86_64.rpm      【提供zabbix_get测试命令】
zabbix-server-mysql-3.4.10-1.el7.x86_64.rpm 【zabbix 主程序包】
zabbix-web-3.4.10-1.el7.noarch.rpm      【提供一个基于PHP开发的WEB平台】
zabbix-web-mysql-3.4.10-1.el7.noarch.rpm【zabbix 版本的mysql客户端】


l  安装LAMPLinux+Apache+Mysql+PHP

# yum -y install httpd mariadb-server php php-mysql


l  安装Zabbix YUM

# rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm


3.2.  安装Zabbix

方法1RPMyum安装

# yum -y localinstall /u01/pkg/*

zabbix-agent-3.4.10-1.el7.x86_64.rpm
zabbix-get-3.4.10-1.el7.x86_64.rpm
zabbix-server-mysql-3.4.10-1.el7.x86_64.rpm
zabbix-web-3.4.10-1.el7.noarch.rpm
zabbix-web-mysql-3.4.10-1.el7.noarch.rpm


设置zabbix 数据库,并导入数据库数据

# mysql -uroot -p
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by
'123456';
mysql> quit;
# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p123456 zabbix


编辑zabbix server 配置文件,对数据库选项进行设置

# vim /etc/zabbix/zabbix_server.conf
DBPassword=123456


设置apache,发布zabbix web

# vim /etc/httpd/conf.d/zabbix.conf 【取消注释并设置时区】
php_value date.timezone Asia/Shanghai


 

方法2:源码包安装 【推荐安装】

下载最新的Zabbix安装包(https://www.zabbix.com/download_sources)到本地,解压

# tar zxvf zabbix-3.4.14.tar.gz


l  安装编译依赖包

yum install gcc mysql-devel libxml2-devel net-snmp-devel libevent-devel curl-devel php-bcmath php-gd php-mbstring php-xml php-ldap


创建zabbix用户和用户组

# groupadd zabbix

# useradd –g zabbix zabbix

useradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix


启动MySQL数据库

# systemctl start mariadb


修改MySQL root用户密码(默认密码为空)

# mysqladmin -u root -p password 123456


测试能否正常登陆数据库

# mysql –uroot –p123456


创建Zabbix数据库

mysql> create database zabbix character set utf8;
mysql> grant all on zabbix.* TO zabbix@'localhost' identified by '123456';
mysql> flush privileges;


导入数据库sql 【注:导入请按以下顺序导入,否则会出现错误情况】

# cd zabbix-3.4.14/database/mysql/
# mysql -h localhost -uroot -p123456 zabbix  
  
# mysql -h localhost -uroot -p123456 zabbix  
  
# mysql -h localhost -uroot -p123456 zabbix  
  


l  编译安装

./configure --enable-server --enable-agent --enable-proxy --with-mysql --with-net-snmp --with-libcurl --with-libxml2 --prefix=/usr/local/zabbix
# make
# make install


l  web前端安装配置

查看服务端口

# grep zabbix /etc/services


修改Server配置文件

# vim /usr/local/zabbix/etc/zabbix_server.conf 【基本不用修改,默认即可】
DBPassword=123456


添加web前端php文件

# cd zabbix-3.4.14/frontends/
# cp -rf php /var/×××w/html/
# cd /var/×××w/html
# mv php zabbix
# chown -R apache:apache zabbix


修改php相关参数

# vi /etc/php.ini    修改下面的值,前面有;号的要删掉

max_execution_time = 300
memory_limit = 128M
post_max_size = 16M
max_input_time = 300
date.timezone = Asia/Shanghai


l  重启apache

# systemctl restart httpd


l  在浏览器中,打开Zabbix URL: http:///zabbix

http://192.168.200.16/zabbix/setup.php

Zabbix3.0 部署_第5张图片

点击【Next step

Zabbix3.0 部署_第6张图片

确保PHP所有OK,然后点击【Next step

Zabbix3.0 部署_第7张图片

配置连接mysql,请按照前面安装时的配置填写,然后点击【Next step

Zabbix3.0 部署_第8张图片

Name处可以填写网站的名称,然后点击【Next step

Zabbix3.0 部署_第9张图片

点击【Next step

Zabbix3.0 部署_第10张图片

提示图形界面的操作都写到/etc/zabbix/web/zabbix.conf.php 配置文件中,确认后点击【Finish

Zabbix3.0 部署_第11张图片

登陆zabbix前端,默认账号为 Admin,默认密码为zabbix


3.3.  服务启动

l  启动服务并设置开机启动

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


l  启动zabbix_server zabiix_agent服务

# /usr/local/zabbix/sbin/zabbix_server
# /usr/local/zabbix/sbin/zabbix_agent


l  zabbix服务启动脚本

# cp zabbix-3.4.14/misc/init.d/fedora/core/zabbix_server /etc/init.d/


修改启动脚本的路径

# vim /etc/init.d/zabbix_server
BASEDIR=/usr/local/zabbix


zabbix安装目录授权

# chown -R zabbix.zabbix /usr/local/zabbix


l  开机启动

# chkconfig --add zabbix_server
# chkconfig zabbix_server on
# systemctl enable httpd.service
# systemctl enable mariadb.service
# systemctl start httpd.service
# /etc/init.d/zabbix_server restart


4.   Zabbix添加监控主机

4.1.  监控Linux主机

l  安装zabbix-agent

zabbix-agent for linux #下载
# wget https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-agent-3.4.10-1.el7.x86_64.rpm
# yum -y localinstall zabbix-agent-3.4.10-1.el7.x86_64.rpm


l  配置zabbix-agent

# vim /etc/zabbix/zabbix_agentd.conf #修改agent配置文件
Server=192.168.200.16       #zabbix服务端内网IP,被动监控
ServerActive=192.168.200.16 #zabbix服务端内网IP,Active表示agent主动推送
# sed -i.bak '/^Server=/c\Server=192.168.200.16' /etc/zabbix/zabbix_agentd.conf sed修改


4.2.  监控windows主机

l  安装zabbix-agent

zabbix-agent for windows #下载
https://www.zabbix.com/download_agents


Zabbix3.0 部署_第12张图片

浏览器访问zabbix官网:选择windows对应的版本下载


l  安装配置zabbix-agent

解压zabbix_agents_3.4.6.win.zip

 

修改配置文件 指定server=ip

Server=192.168.2.205

安装zabbix-agent以管理员方式运行CMD,执行安装程序

D:\zabbix_agents_3.4.6.win\bin\win64\zabbix_agentd.exe -c D:\zabbix_agents_3.4.6.win\conf\zabbix_agentd.win.conf -i
#加载配置文件
D:\zabbix_agents_3.4.6.win\bin\win64\zabbix_agentd.exe -c D:\zabbix_agents_3.4.6.win\conf\zabbix_agentd.win.conf -s
#添加windows自启动服务


l  Web端添加主机

配置-主机-创建主机,按下图配置好后点击【更新】

Zabbix3.0 部署_第13张图片

Zabbix3.0 部署_第14张图片

Zabbix3.0 部署_第15张图片

选择监控主机对应的模板,设置好点击【添加】完成

Zabbix3.0 部署_第16张图片

确认图标显示绿色为正常

l  监控效果图

Zabbix3.0 部署_第17张图片

l  监控测试方法

zabbix server上创建监控项前可以先使用zabbix_get来判断脚本是否正确

# zabbix_get -s 192.168.200.8 -p 10050 -k "system.cpu.load[all,avg1]"

5.   Zabbix常见问题

问题1Zabbix web页面登录帐号密码

解决方法:

zabbix web default account password

account: Admin

pw: zabbix

问题2:解决中文字体乱码问题

解决方法:

#yum -y install wqy-microhei-fonts

#cp /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf

问题3:使用源代码安装之后, zabbix的网页上不能使用MySQL数据库。

解决方法:

zabbix需要php支持mysqli;使用源码安装php时需要加上–with-mysqli=mysqlnd参数之后在网页可以显示。

问题4

./configure时,提示configure: error: Invalid Net-SNMP directory – unable to find net-snmp-config

解决方法:

# yum install -y net-snmp-devel libxml2-devel libcurl-devel

问题5:网页安装zabbix提示要下载配置文件:Unable to create the configuration file.

Zabbix3.0 部署_第18张图片

解决方法:

安装前一定要关闭,防火墙、Selinux;设置目录具有写权限,配置文件会自动保存。

[root@localhost conf]# ll -d /var/www/html/zabbix/conf

drwxr-xr-x. 2 apache apache 104 11  2 14:36 /var/www/html/zabbix/conf

问题5Zabbix监控在发生告警时不论是恢复还是异常,报警页面始终没有声音

Zabbix3.0 部署_第19张图片

解决方法:

请使用谷歌浏览器尝试