1、准備環境
環境:確保已安裝LNMP環境(可參考前幾條博客文章)
zabbix5.0:https://cdn.zabbix.com/zabbix/sources/stable/5.0/zabbix-5.0.2.tar.gz
2、開始安裝
添加zabbix用戶用於運行zabbix服務
[root@swarm-node1 local]# useradd -s /sbin/nologin zabbix
安裝依賴包
yum install unixODBC-devel net-snmp-devel libevent-devel libxml2-devel libcurl-devel -y
解壓源碼包
[root@swarm-node1 local]# tar -zxf zabbix-5.0.2.tar.gz
編譯安裝
編譯安裝參數參考
./configure --prefix=/usr/local/zabbix-server --enable-server --enable-agent --with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurl --with-libxml2 --with-unixodbc
--prefix=/usr/local/zabbix-server # 編譯安裝路徑
--enable-server # 啟動server端
--enable-agent #啟動agent端
--with-mysql=/usr/local/mysql/bin/mysql_config #編譯連接mysql相關依賴包,並指定mysql_config的路徑
--with-net-snmp #啟動snmp相關,用於snmp監控設備
--with-libcurl #啟動curl相關
--with-libxml2 #啟動xml相關
--with-unixodbc #啟動odbc相關用於監控數據庫
--enable-java #啟動java-agent 用於監控java類用於(這里沒有監控java類需求,就沒有編譯進去)
[root@swarm-node1 zabbix-5.0.2]# make && make install
初始化數據庫信息
數據庫文件在zabbix-5.0.2/database/mysql,分別按順序導入
schema.sql--images.sql---data.sql
登錄數據庫創建zabbix-server庫
mysql> create database server character set UTF8 collate utf8_bin; Query OK, 1 row affected (0.01 sec) mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | server | | sys | +--------------------+ 5 rows in set (0.00 sec)
導入數據
mysql> use server; Database changed mysql> source /usr/local/zabbix-5.0.2/database/mysql/schema.sql;
mysql> source /usr/local/zabbix-5.0.2/database/mysql/images.sql;
mysql> source /usr/local/zabbix-5.0.2/database/mysql/data.sql;
配置zabbix_server.conf配置文件
修改以下信息
DBHost=localhost DBName=server DBUser=root DBPassword=123.com DBSocket=/usr/local/mysql/mysql.sock DBPort=3306
啟動zabbix-server
[root@swarm-node1 zabbix-server]# /usr/local/zabbix-server/sbin/zabbix_server -c /usr/local/zabbix-server/etc/zabbix_server.conf
啟動報錯提示找不到mysql相關lib文件
將mysql lib目錄添加到lib環境變量中
[root@swarm-node1 zabbix-server]# echo '/usr/local/mysql/lib/' > /etc/ld.so.conf.d/mysql.conf
[root@swarm-node1 zabbix-server]#ldconfig -v
再次啟動zabbix-server
啟動成功
配置zabbix-server前端界面
前端界面在zabbix源碼包下面的ui文件件中,復制前端文件到nginx的html中
[root@swarm-node1 zabbix-5.0.2]# cd ui/ [root@swarm-node1 ui]# pwd /usr/local/zabbix-5.0.2/ui [root@swarm-node1 ui]# [root@swarm-node1 ui]# [root@swarm-node1 ui]# cp -r * /usr/local/nginx/html/ [root@swarm-node1 ui]#
配置nginx
在nginx server段配置兩個location段
上面配置已省略:
location / { root html; index index.php index.htm; } location ~ \.php$ { root html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; include fastcgi.conf; }
啟動ngixn
[root@swarm-node1 nginx]# /usr/local/nginx/sbin/nginx
配置php-fpm
編輯php.ini 文件
[root@swarm-node1 php]# pwd /usr/local/php [root@swarm-node1 php]# [root@swarm-node1 php]# vim etc/php.ini
修改以下參數:
post_max_size = 16M max_execution_time = 300 max_input_time = 300 date.timezone =Asia/Shanghai
mysqli.default_socket = /usr/local/mysql/mysql.sock #此sock文件按mysql實際運行生成的sock文件為准
pdo_mysql.default_socket= /usr/local/mysql/mysql.sock #此sock文件按mysql實際運行生成的sock文件為准
啟動php-fpm
[root@swarm-node1 php]# ls bin etc include init.d.php-fpm lib php sbin var [root@swarm-node1 php]# [root@swarm-node1 php]# bash init.d.php-fpm start Starting php-fpm done
打開瀏覽器,訪問zabbix
直接下一步即可
填寫數據庫相關信息
下載配置文件,放到下面指定目錄,這里無法生產配置文件,大部分會是權限的問題