共计 4058 个字符,预计需要花费 11 分钟才能阅读完成。
1 安装前准备:
1.1 安装 JDK
卸载 openjdk
# rpm -qa | grep Java
# yum remove java-1.8.0-openjdk
# yum remove java-1.8.0-openjdk-headless
安装 JDK 包
# rpm -ivh jdk-8u191-linux-x64.rpm
1.2 安装依赖包
# yum install -y net-snmp net-snmp-devel OpenIPMI-devel libssh2-devel openldap-devel openldap-clients libxml2-devel libcurl-devel gcc msyql-devel libevent-devel php-MySQL php-gd php-mbstring php-bcmath libjpeg-devel freetype-devel libpng-devel php-xml keyutils-libs-devel krb5-devel libcom_err-devel libkadm5 libselinux-devel libsepol-devel openssl-devel pcre-devel zlib-devel
以下 3 个包在 DVD1 中没有包含,如果配置的是本地 yum 源,需要单独安装
# yum install -y libevent-devel-2.0.21-4.el7.x86_64.rpm
# yum install -y libssh2-devel-1.4.3-12.el7.x86_64.rpm
# yum install -y OpenIPMI-devel-2.0.23-2.el7.x86_64.rpm
安装完依赖包以后可以使用以下命令检查是否都安装成功
# rpm -qa net-snmp net-snmp-devel OpenIPMI-devel libssh2-devel openldap-devel openldap-clients libxml2-devel libcurl-devel gcc msyql-devel libevent-devel php-mysql php-gd php-mbstring php-bcmath libjpeg-devel freetype-devel libpng-devel php-xml keyutils-libs-devel krb5-devel libcom_err-devel libkadm5 libselinux-devel libsepol-devel openssl-devel pcre-devel zlib-devel
1.3 安装 MySQL
详见 MySQL 安装文档
1.4 安装 nginx
# tar -zxvf nginx-1.14.0.tar.gz -C /home
# cd /home/nginx-1.14.0/
# ./configure
# make & make install
1.5 安装 PHP
# yum install -y php
# yum install -y php-fpm-5.4.16-46.el7.x86_64.rpm
2 安装服务:
2.1 编译安装 zabbix
# groupadd –system zabbix
# useradd –system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin zabbix
# tar -zxvf zabbix-4.0.4.tar.gz -C /home
# cd /home/zabbix-4.0.4/
# ./configure –prefix=/usr/local/zabbix/ –enable-server –enable-agent –with-mysql –with-net-snmp –with-libcurl –with-libxml2 –with-ldap –with-ssh2 –with-openipmi –enable-java –with-openssl
# make install
2.2 创建数据库
# mysql -uroot -p<password>
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@”serverip” identified by ‘<password>’;
mysql> quit
# cd /home/zabbix-4.0.4/database/mysql
# mysql -uzabbix -p<password> zabbix < schema.sql
# mysql -uzabbix -p<password> zabbix < images.sql
# mysql -uzabbix -p<password> zabbix < data.sql
2.3 修改配置
# vim /usr/local/zabbix/etc/zabbix_server.conf
DBPassword=<password>
2.4 启动服务
# /usr/local/zabbix/sbin/zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf
# /usr/local/zabbix/sbin/zabbix_agentd -c /usr/local/zabbix/etc/zabbix_agentd.conf
# /usr/local/zabbix/sbin/zabbix_java/startup.sh
注:/usr/local/zabbix/sbin/zabbix_server: error while loading shared libraries: libmysqlclient.so.20: cannot open shared object file: No such file or directory
报以上错误的处理方案:
# find / -name libmysqlclient.so.20
/home/mysql/lib/libmysqlclient.so.20
# echo “/home/mysql/lib” >> /etc/ld.so.conf
# ldconfig
然后重新启动服务
3 安装前端:
3.1 配置 nginx
# vim /usr/local/nginx/conf/nginx.conf
server {
listen 80;
server_name localhost;
proxy_buffer_size 128k;
proxy_buffers 32 32k;
client_header_buffer_size 64k;
large_client_header_buffers 8 128k;
access_log /usr/local/nginx/logs/zabbix.access.log main;
error_log /usr/local/nginx/logs/zabbix.error.log error;
location / {
root html;
index index.php index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
location ~ \.php$ {
fastcgi_buffer_size 128k;
fastcgi_buffers 32 32k;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
include fastcgi_params;
include fastcgi.conf;
}
}
注:去掉上面 log_format 的注释
3.2 配置 PHP
# vim /etc/php.ini
max_execution_time = 300
memory_limit = 128M
post_max_size = 16M
upload_max_filesize = 2M
max_input_time = 300
date.timezone = Asia/Shanghai
# vim /etc/php-fpm.d/www.conf
[www]
listen = 127.0.0.1:9000
listen = /var/run/php-fpm/php-fpm.sock
listen.mode = 0666
user = nobody
group = nobody
pm = dynamic
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 35
3.3 复制静态文件
# rm -rf /usr/local/nginx/html/*
# cp -rf /home/zabbix-4.0.4/frontends/php/* /usr/local/nginx/html/
# chown -R nobody.nobody /usr/local/nginx/html
注:监控的图形界面出现乱码问题的解决方案:将 windows 中的 C:\Windows\Fonts 下的中文字体替换到 /usr/local/nginx/html/fonts 下的 DejaVuSans.ttf
3.4 配置前端
访问所部署服务的 web 地址
检测依赖,缺少的模块请安装。DVD2 中找到相应的 rpm 包进行安装,重启 php-fpm(kill -USR2 php-fpm:master 的 pid)
配置数据库
配置服务器
完成安装。
默认的用户名:Admin,密码:zabbix
: