1 安裝前準備:php
1.1 安裝JDKhtml
卸載openjdk前端
# rpm -qa | grep java # yum remove java-1.8.0-openjdk # yum remove java-1.8.0-openjdk-headless
安裝JDK包java
# rpm -ivh jdk-8u191-linux-x64.rpm
1.2 安裝依賴包mysql
# 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 安裝MySQLlinux
詳見MySQL安裝文檔nginx
1.4 安裝nginxweb
# tar -zxvf nginx-1.14.0.tar.gz -C /home # cd /home/nginx-1.14.0/ # ./configure # make & make install
1.5 安裝PHPsql
# 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