一、Zabbix安装

1.1 安装Zabbix数据库和数据库驱动

1.2 安装Zabbix服务端

1.3 安装Zabbix Web GUI

1.4 安装agent端

1.5 Zabbix-Server数据库初始化

1.6 启动zabbix-server进程

1.7 配置zabbix-web



一、Zabbix安装


Zabbix的安装方式有两种:源码编译安装和选择已编译好的程序包安装(如rpm、deb)。使用rpm包安装Zabbix时,Zabbix的rpm包可由EPEL源或者Zabbix官方网站的Zabbix仓库提供。部分Zabbix依赖的程序包(fping)不是由Base源提供,而由EPEL源提供,因此安装时需要指定EPEL源。以下以安装zabbix-3.0为例,演示Zabbix的安装过程。


1.1 安装Zabbix数据库和数据库驱动

[root@server ~]# yum -y install mariadb-server php-mysql
[root@server ~]# vim /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock    # MySQL的socket文件
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd

[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid
skip_name_resolve=on        # 添加以下这两项
innodb_file_per_table=on

#
# include all files from the config directory
#
!includedir /etc/my.cnf.d

[root@server ~]# systemctl start mariadb.service
[root@server ~]# ss -tnl | grep 3306
LISTEN     0      50           *:3306                     *:*
[root@server ~]# mysql
MariaDB [(none)]> CREATE DATABASE zabbix CHARSET 'utf8';
MariaDB [(none)]> GRANT ALL ON zabbix.* TO zbxuser@'127.0.0.1' IDENTIFIED BY 'zbxpass';
MariaDB [(none)]> FLUSH PRIVILEGES;


1.2 安装Zabbix服务端

[root@server ~]# yum -y install zabbix-server-mysql zabbix-get


1.3 安装Zabbix Web GUI

[root@server ~]# yum -y install zabbix-web zabbix-web-mysql

Zabbix Web GUI是基于LAMP或LNMP的,并且需要依赖PHP程序的诸多扩展。


1.4 安装agent端

[root@server ~]# yum -y install zabbix-agent zabbix-sender

如果Zabbix-Server监控的主机包括其本机时,也应该执行这一步。


1.5 Zabbix-Server数据库初始化

对于zabbix-2.x来说,Zabbix-Server数据库初始化是通过三个sql脚本来实现;对于zabbix-3.x来说,Zabbix-Server数据库初始化是通过一个sql脚本来实现(create.sql)。此处演示zabbix-3.0版本的Zabbix服务端数据库初始化过程,如下。

[root@server ~]# rpm -ql zabbix-server-mysql    # 先查看程序包zabbix-server-mysql的所有文件
/etc/logrotate.d/zabbix-server
/etc/zabbix/zabbix_server.conf
/usr/lib/systemd/system/zabbix-server.service
/usr/lib/tmpfiles.d/zabbix-server.conf
/usr/lib/zabbix/alertscripts
/usr/lib/zabbix/externalscripts
/usr/sbin/zabbix_server_mysql
/usr/share/doc/zabbix-server-mysql-3.0.10
/usr/share/doc/zabbix-server-mysql-3.0.10/AUTHORS
/usr/share/doc/zabbix-server-mysql-3.0.10/COPYING
/usr/share/doc/zabbix-server-mysql-3.0.10/ChangeLog
/usr/share/doc/zabbix-server-mysql-3.0.10/NEWS
/usr/share/doc/zabbix-server-mysql-3.0.10/README
/usr/share/doc/zabbix-server-mysql-3.0.10/create.sql.gz    # 此即为create.sql所在压缩包
/usr/share/man/man8/zabbix_server.8.gz
/var/log/zabbix
/var/run/zabbix
[root@server ~]# 
[root@server ~]# cd /usr/share/doc/zabbix-server-mysql-3.0.10/
[root@server zabbix-server-mysql-3.0.10]# ls
AUTHORS  ChangeLog  COPYING  create.sql.gz  NEWS  README
[root@server zabbix-server-mysql-3.0.10]# gzip -d create.sql.gz    # 解压缩
[root@server zabbix-server-mysql-3.0.10]# ls
AUTHORS  ChangeLog  COPYING  create.sql  NEWS  README
[root@server zabbix-server-mysql-3.0.10]# mysql -h127.0.0.1 -uzbxuser -p zabbix < create.sql 
Enter password:     # 此处输入密码'zbxpass'


1.6 启动zabbix-server进程

要启动zabbix-server进程,首先要修改其配置文件(/etc/zabbix/zabbix_server.conf),对于该配置文件,一共有四类指令,如下。

[root@server ~]# grep '####' /etc/zabbix/zabbix_server.conf 
############ GENERAL PARAMETERS #################    #<==通用参数
############ ADVANCED PARAMETERS ################    #<==高级参数
####### LOADABLE MODULES #######                     #<==加载模块
####### TLS-RELATED PARAMETERS #######               #<==TLS相关参数


对于zabbix的使用,一般只需要修改通用指令即可。这里先介绍常用的通用参数(GENERAL PARAMETERS),如下。

ListenPort=10051                                # 服务端监听端口
SourceIP=                                       # 服务端源地址(在有多地址的情况下)
LogType=file                                    # 日志记录方式,此处日志信息记录在文件(file)中
LogFile=/var/log/zabbix/zabbix_server.log       # 日志文件路径
LogFileSize=0                                   # 日志文件最大大小,超过时自动进行滚动,0表示不滚动
PidFile=/var/run/zabbix/zabbix_server.pid       # PID文件路径

DBHost=127.0.0.1                                # 数据库所在主机
DBName=zabbix                                   # 数据库名称
DBUser=zbxuser                                  # 数据库用户
DBPassword=zbxpass                              # 数据库密码
DBSocket=/var/lib/mysql/mysql.sock              # 数据库socket文件路径


接下来修改其配置文件,主要修改的参数如下,其它的参数按照默认配置即可。

[root@server ~]# vim /etc/zabbix/zabbix_server.conf
DBHost=127.0.0.1        # 因为在前面数据库授权时只授权给127.0.0.1
DBName=zabbix
DBUser=zbxuser
DBPassword=zbxpass
DBSocket=/var/lib/mysql/mysql.sock


启动zabbix-server服务。

[root@server ~]# systemctl start zabbix-server.service
[root@server ~]# ss -tnl | grep :10051        # zabbix-server默认监听在10051端口
LISTEN     0      128          *:10051                    *:*                  
LISTEN     0      128         :::10051                   :::*

注意:CentOS 7.0和7.1需要升级trousers程序包版本,可以选择升级为trousers-0.3.11-2和trousers-0.3.13-1这两个版本之一。


1.7 配置zabbix-web

1.7.1 配置php的时区指定

使用zabbix-web之前,需要修改php时区的指定,因为php时区默认与系统时区相同,而zabbix认为这样做有风险。php时区的指定有两种方式,一种方式对所有php应用有效(全局),另一种方式只对zabbix的Web GUI有效。

方式一:编辑php配置文件php.ini --> 对所有php应用有效

[root@server ~]# vim /etc/php.ini
date.timezone = Asia/Shanghai


方式二:编辑/etc/httpd/conf.d/zabbix.conf --> 只对zabbix-web有效

[root@server ~]# vim /etc/httpd/conf.d/zabbix.conf 
Alias /zabbix /usr/share/zabbix

<Directory "/usr/share/zabbix">
    Options FollowSymLinks
    AllowOverride None
    Require all granted

    <IfModule mod_php5.c>
        php_value max_execution_time 300
        php_value memory_limit 128M
        php_value post_max_size 16M
        php_value upload_max_filesize 2M
        php_value max_input_time 300
        php_value always_populate_raw_post_data -1
        php_value date.timezone Asia/Shanghai        # 修改此处时区设置
    </IfModule>
</Directory>
...(其他省略)...


1.7.2 访问URL(http://ZABBIX_SERVER_IP/zabbix)

先安装web服务器,此处选择httpd,并启动服务。

[root@server ~]# yum -y install httpd
[root@server ~]# systemctl start httpd.service
[root@server ~]# ss -tnl | grep :80
LISTEN     0      128         :::80                      :::*


打开浏览器,输入URL:http://192.168.10.67/zabbix,如下。

Zabbix安装配置_Zabbix安装配置


显示如下。

Zabbix安装配置_Zabbix安装配置_02


确保为'OK',其中PHP option表示该项在PHP配置文件或zabbix-web配置文件中的设置(如果该项配置有效则为'OK'),其他的表示PHP的扩展程序的安装状态(如果已安装则为'OK')。

Zabbix安装配置_Zabbix安装配置_03


此处'Database port'为0表示使用数据库默认端口。

Zabbix安装配置_Zabbix安装配置_04


指定Zabbix-Server的源IP。

Zabbix安装配置_Zabbix安装配置_05


Zabbix安装配置_Zabbix安装配置_06


安装完成。

Zabbix安装配置_Zabbix安装配置_07

安装完成后会生成配置文件:/etc/zabbix/web/zabbix.conf.php


进入登录界面,默认zabbix用户名为admin,登录密码为zabbix。

Zabbix安装配置_Zabbix安装配置_08


进入Zabbix Web GUI界面,可以进入个人账号界面,如下。

Zabbix安装配置_Zabbix安装配置_09


此处可以选择修改密码(Password),也可以修改界面风格(Theme)等。

Zabbix安装配置_Zabbix安装配置_10


到此Zabbix安装配置完毕。