LNMP環境下安裝zabbix3.2.11
安裝環境:centos6.5
zabbix_server:192.168.100.3
zabbix_agent:192.168.100.4php
一、安裝前準備工做
1.確保服務器能夠鏈接外網或者能下載相應的軟件包便可。
nginx安裝官網下載地址: http://nginx.org
php安裝官網下載地址: http://php.net
mysql安裝官網下載地址:https://dev.mysql.com/downloads/mysql/
zabbix安裝官網下載地址:https://www.zabbix.com/download
mysql也可使用mariaDB替代,功能和mysql幾乎一致,只是mariaDB是徹底開源的。
mariaDB下載地址:https://mariadb.org/download/html
我這裏的版本組合以下:
MySQL5.1.40
php-5.6.33
nginx/1.12.2
zabbix-3.2.11mysql
二、MYSQL安裝
mysql官網下載地址:http://downloads.mysql.com/archives/community/
選擇x64源碼安裝包進行下載:linux
將安裝文件放在/usr/local/src/下nginx
卸載和刪除mysql原有的相關內容:sql
userdel -r mysql groudel mysql find / -name "mysql" -exec rm -rf {} \;
新建mysql用戶、用戶組:數據庫
groupadd mysql useradd -s /sbin/nologin -g mysql mysql
解壓文件,並賦予文件夾相關權限:vim
cd /usr/local/src tar -zxvf mysql-5.1.40-linux-x86_64-glibc23.tar.gz mv mysql-5.1.40-linux-x86_64-glibc23 /usr/local/mysql chmod -R 755 /usr/local/mysql chown -R mysql.mysql /usr/local/mysql
建立單獨的數據安裝文件:windows
mkdir -p /data/mysql chmod -R 755 /data/ chown -R mysql.mysql /data/mysql
開始安裝數據庫:centos
cd /usr/local/mysql ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql
echo $?
返回0表示安裝成功。
拷貝啓動配置文件
cp support-files/mysql.server /etc/init.d/mysqld chmod 755 /etc/init.d/mysqld
修改啓動腳本vi /etc/mysql.dmysqld
查找到datadir變量的值,修改這個變量的值,這樣後續的文件就存儲在本身指定的目錄。datadir=/data/mysql
把啓動腳本加入系統服務項,並設定開啓自啓動,啓動mysql
chkconfig --add mysqld chkconfig mysqld on service mysqld start;
添加環境變量:
echo "export MYSQL_PATH=/usr/local/mysql" >> ~/.bash_profile echo "export PATH=$PATH:$MYSQL_PATH/bin" >> ~/.bash_profile source .bash_profile
修改root密碼:mysqladmin -uroot password 123456
登陸mysql服務器:mysql -uroot -p123456
三、編譯安裝PHP
將php-5.6.33.tar.gz安裝包解壓至usr/local/src目錄
tar -xf php-5.6.33.tar.gz -C /usr/local/src cd /usr/local/src/php-5.6.33/
開始編譯安裝,安裝參數參考下面說明:
PHP配置參數
zabbix對PHP參數、PHP模塊有特殊要求,以下模塊要特別留意加上
bcmath --enable-bcmath
mbstring --enable-mbstring
sockets --enable-sockets
gd --with-gd
libxml --with-libxml-dir=/usr/local
xmlwriter 同上
xmlreader 同上
ctype 默認支持
session 默認支持
gettext 默認支持
如下是我PHP的配置參數./configure --prefix=/usr/local/php-5.6.33 --with-config-file-path=/usr/local/php-5.6.33/etc --with-bz2 --with-curl --enable-ftp --enable-sockets --disable-ipv6 --with-gd --with-jpeg-dir=/usr/local --with-png-dir=/usr/local --with-freetype-dir=/usr/local --enable-gd-native-ttf --with-iconv-dir=/usr/local --enable-mbstring --enable-calendar --with-gettext --with-libxml-dir=/usr/local --with-zlib --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-mysql=mysqlnd --enable-dom --enable-xml --enable-fpm --with-libdir=lib64 --enable-bcmath
編譯完成後執行 echo $? 返回若是是0表示編譯成功,繼續後面的安裝操做:make && make install
此時php-5.6.33已經安裝在 /usr/local/php-5.6.33目錄下。
複製php運行配置文件
cp -rf /usr/local/src/php-5.6.33/php.ini-production /usr/local/php-5.6.33/etc/php.ini cp -rf /usr/local/php-5.6.33/etc/php-fpm.conf.default /usr/local/php-5.6.33/etc/php-fpm.conf
繼續修改/usr/local/php-5.6.33/etc/php.ini文件中以下幾個參數,不然後面zabbix不能經過。
max_execution_time = 300 memory_limit = 128M post_max_size = 16M upload_max_filesize = 2M max_input_time = 300 always_populate_raw_post_data = -1 date.timezone = Asia/Shanghai
啓動php-fpm:
/usr/local/php-5.6.33/sbin/php-fpm
檢查php-fpm是否正常工做,經過下面的命令查看9000端口是否已經監聽。netstat -ano|grep :9000
四、安裝zabbix
安裝依賴包:
yum install net-snmp-devel libxml2-devel libcurl-devel
將下載好的 zabbix-3.2.11.tar.gz 解壓至 /usr/local/src/目錄
tar -xf zabbix-3.2.11.tar.gz -C /usr/local/src/ cd /usr/local/src/zabbix-3.2.11 ./configure --prefix=/usr/local/zabbix-3.2.11/ --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2 make && make install
此時zabbix-server上面上已經同時安裝了zabbix_server和zabbix_agent
mysql> grant all privileges on *.* to zabbix@'localhost' identified by 'zabbix'; mysql> create database zabbix default charset utf8;
按照順序導入3個sql:
mysql -uzabbix -pzabbix zabbix < schema.sql mysql -uzabbix -pzabbix zabbix < images.sql mysql -uzabbix -pzabbix zabbix < data.sql
cd /usr/local/zabbix-3.2.11/etc/
修改zabbix_server.conf配置文件,修改以下幾個參數:
DBName=zabbix DBUser=zabbix DBPassword=zabbix DBPort=3306
這裏zabbix_agent.conf其實能夠不用修改,用默認的啓動就好,其餘的主機須要修改這個文件。
建立zabbix用戶:
groupadd zabbix useradd -g zabbix zabbix
啓動zabbix_server/zabbix_agent:
/usr/local/zabbix-3.2.11/sbin/zabbix_server /usr/local/zabbix-3.2.11/sbin/zabbix_agent
6.安裝nginx1.12.2
安裝pcre,用來支持rewriteyum -y install pcre*
安裝 openssl
yum -y install openssl*
將nginx-1.12.2-tar.gz解壓至/usr/local/src目錄
tar -xf nginx-1.12.2-tar.gz -C /usr/local/src/ cd /usr/local/src/nginx-1.12.2 ./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_spdy_module --with-http_stub_status_module --with-pcre make && make install
若是沒有報錯,表示nginx已經安裝至 /usr/local/nginx目錄
編譯參數說明:
--with-http_stub_status_module:支持nginx狀態查詢
--with-http_ssl_module:支持https
--with-http_spdy_module:支持google的spdy,想了解請百度spdy,這個必須有ssl的支持
--with-pcre:爲了支持rewrite重寫功能,必須制定pcre
7.修改nginx配置,拷貝前段文件至nginx的根目錄
mkdir /data/logs/nginx mkdir /data/site/zabbix cp -rf /usr/local/src/zabbix-3.2.11/frontends/php/* /data/site/zabbix
修改nginx配置文件 vim /usr/local/nginx/conf/nginx.conf
server { listen 80; server_name localhost; index index.html index.php index.html ; root /data/site; #charset koi8-r; #access_log logs/host.access.log main; location / { try_files $uri $uri/ /index.php?$args; } location ~ .*\.(php)?$ { expires -1s; try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; include fastcgi_params; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_pass 127.0.0.1:9000; }
測試nginx配置文件: /usr/local/nginx/sbin/nginx -t
啓動nginx :/usr/local/nginx/sbin/nginx
平滑重啓nginx:/usr/local/nginx/sbin/nginx -s reload
8.界面配置zabbix
確保上面的服務都啓動之後,瀏覽器訪問開始設置zabbix
http://192.168.100.3/zabbix
遇到相應的問題再進行調試。
9.zabbix監控中文亂碼問題
將windows下的字體複製一份到zabbix的fonts目錄,而後修改相應的php腳本便可。
C:\Windows\Fonts\simkai.ttf(楷體)上傳到服務器zabbix網站目錄fonts目錄下
cd /data/site/zabbix/ sed -i 's/DejaVuSas/simkai/g' ./include/defines.inc.php
修改完畢後不用重啓服務便可查看生效狀況。
參考文獻:
Linux安裝:http://www.osyunwei.com/archives/1024.html
NGINX安裝:http://www.ttlsa.com/nginx/nginx-install-on-linux/
PHP安裝+NGINX配置:http://www.ttlsa.com/nginx/nginx-php-5_5/ (安裝前必定要看1.1 PHP安裝參數)
MYSQL安裝:http://www.ttlsa.com/mysql/install-mysql5_6/