一、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,如下。
显示如下。
确保为'OK',其中PHP option表示该项在PHP配置文件或zabbix-web配置文件中的设置(如果该项配置有效则为'OK'),其他的表示PHP的扩展程序的安装状态(如果已安装则为'OK')。
此处'Database port'为0表示使用数据库默认端口。
指定Zabbix-Server的源IP。
安装完成。
安装完成后会生成配置文件:/etc/zabbix/web/zabbix.conf.php
进入登录界面,默认zabbix用户名为admin,登录密码为zabbix。
进入Zabbix Web GUI界面,可以进入个人账号界面,如下。
此处可以选择修改密码(Password),也可以修改界面风格(Theme)等。
到此Zabbix安装配置完毕。