依赖:
1. PHP(强依赖,自行安装)
2. Nginx或者Apache(二选一,本文选择Nginx)
1.下载:
zabbix: https://www.zabbix.com/download_sources (Zabbix Sources for deep customization)
2.安装:
- 解压
tar -zxvf zabbix-3.4.7.tar.gz
- 创建并导入zabbix数据库
# 进入mysql数据库创建脚本目录
cd /usr/local/src/zabbix-2.2.6/database/mysql
# 输入密码,进入MySQL控制台
mysql -u root -p
# 创建数据库zabbix,并且数据库编码使用utf8
mysql> create database zabbix character set utf8;
通过Navicat创建用户:zabbix/123456 localhost
# 刷新系统授权表
mysql> flush privileges;
# 允许账户zabbix能从本机连接到数据库zabbix
mysql> grant all on zabbix.* to 'zabbix'@'127.0.0.1' identified by '123456' with grant option;
# 再次刷新系统授权表
mysql> flush privileges;
# 进入数据库
mysql> use zabbix
# 导入脚本文件到zabbix数据库
mysql> source /usr/local/src/zabbix-2.2.6/database/mysql/schema.sql
# 导入脚本文件到zabbix数据库
mysql> source /usr/local/src/zabbix-2.2.6/database/mysql/images.sql
# 导入脚本文件到zabbix数据库
mysql> source /usr/local/src/zabbix-2.2.6/database/mysql/data.sql
- 安装zabbix
添加用户:
# 创建用户组zabbix
groupadd zabbix
# 创建用户zabbix,并且把用户zabbix加入到用户组zabbix中
useradd zabbix -g zabbix -s /bin/false
安装依赖包:
yum install net-snmp-devel curl curl-devel mysql-devel
安装Zabbix:
# 添加软连接
ln -s /usr/local/lib/libiconv.so.2 /usr/lib/libiconv.so.2
# 使配置立即生效
/sbin/ldconfig
# 进入安装目录
cd /u02/monitor/zabbix
# 配置(若依然缺少相关依赖,请自行百度安装)
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-net-snmp --with-libcurl --enable-proxy --with-mysql=/usr/bin/mysql_config
# 编译安装
make && make install
# 添加系统软连接
ln -s /usr/local/zabbix/sbin/* /usr/local/sbin/
# 添加系统软连接
ln -s /usr/local/zabbix/bin/* /usr/local/bin/
# 说明:
find / -name mysql_config
# 查找位置,如果没有mysql_config,需要安装mysql-devel
yum install mysql-devel
添加zabbix服务对应的端口:
$ vi /etc/services #编辑,在最后添加以下代码
# Zabbix
# Zabbix Agent
zabbix-agent 10050/tcp
# Zabbix Agent
zabbix-agent 10050/udp
# Zabbix Trapper
zabbix-trapper 10051/tcp
# Zabbix Trapper
zabbix-trapper 10051/udp
修改zabbix配置文件
cd /usr/local/zabbix/etc
$ vi zabbix_server.conf
# 数据库名称
DBName=zabbix
# 数据库用户名
DBUser=zabbix
# 数据库密码
DBPassword=123456
# 数据库ip地址
ListenIP=127.0.0.1
DBSocket=/u02/mysqldld/data/mysql.sock
# zabbix运行脚本存放目录
AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts
$ vi /usr/local/zabbix/etc/zabbix_agentd.conf
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/
# 启用自定义key
UnsafeUserParameters=1
添加开机启动脚本:
# 服务端
cp /u02/monitor/zabbix/misc/init.d/fedora/core/zabbix_server /etc/rc.d/init.d/zabbix_server
# 客户端
cp /u02/monitor/zabbix/misc/init.d/fedora/core/zabbix_server /etc/rc.d/init.d/zabbix_server
# 添加脚本执行权限
chmod +x /etc/rc.d/init.d/zabbix_server
# 添加脚本执行权限
chmod +x /etc/rc.d/init.d/zabbix_agentd
# 添加开机启动
chkconfig zabbix_server on
# 添加开机启动
chkconfig zabbix_agentd on
修改zabbix开机启动脚本中的zabbix安装目录:
$ vi /etc/rc.d/init.d/zabbix_server #编辑服务端配置文件
# zabbix安装目录
BASEDIR=/usr/local/zabbix/
$ vi /etc/rc.d/init.d/zabbix_agentd #编辑客户端配置文件
# zabbix安装目录
BASEDIR=/usr/local/zabbix/
3.配置web站点
cd /usr/local/src/zabbix
cp -r /u02/monitor/zabbix/frontends/php/ /u02/databridge/nginx/html/zabbix
chown root.root -R /usr/local/nginx/html/zabbix
启动zabbix服务端
启动zabbix客户端
4. 修改PHP配置文件参数
- $ vi /etc/php.ini #编辑修改
post_max_size =16M
max_execution_time =300
max_input_time =300
- $ vi /usr/local/php/etc/php-fpm.conf #编辑修改
request_terminate_timeout = 300
重启php-fpm
service php-fpm reload
5.安装WEB
http://192.168.10.199:8099/zabbix/setup.php
zabbix默认用户名面:Admin/zabbix
6. 常见错误:
- sbin/zabbix_agentd: /lib64/libc.so.6: version `GLIBC_2.17' not found (required by sbin/zabbix_agentd)
sbin/zabbix_agentd: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by sbin/zabbix_agentd)
解决方法:缺少glibc库的2.14和2.17版本,需手动安装(yum install glibc只能更新到2.12)
# 下载gclib 2.17
wget https://ftp.gnu.org/gnu/glibc/glibc-2.17.tar.gz
# 解压后编译安装
tar -zxvf glibc-2.17.tar.gz
cd glibc-2.17
# 如果不创建build文件夹直接编译安装会报错
mkdir build
cd build
../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin
make && make install
# 注意:编译安装过程可能会很久,请耐心等待!!(目测10分钟以上)
- sbin/zabbix_agentd: error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory
解决方法:libpcre.so已存在的情况需要添加软链接(没有则安装)
# 添加软链接
ln -s /lib64/libpcre.so.0.0.1 /lib64/libpcre.so.1
- zabbix_agentd [52374]: user zabbix does not exist
zabbix_agentd [52374]: cannot run as root!
# 创建zabbix用户
useradd zabbix
# 授权
chown -R zabbix.zabbix zabbix/