zabbix源碼安裝 令人窒息的操作


一.簡介

zabbix-server主要分為2部分:

  • zabbix程序 程序根據客戶端的監控項,從客戶端獲取數據並寫入到數據庫,再根據觸發器/動作等配置進行操作。
  • 展示頁面 使用php編寫,php腳本從數據庫獲得信息,用httpd或者nginx等網頁服務器展示出來。

根據上述說明,zabbix需要部署在lamp或者lnmp上面,對於php頁面來說,用apache好一些。

二.環境

[zabbix-server]
    主機名 = host-1
    系統 = centos-7.3
    地址 = 1.1.1.1
    軟件 =
        httpd-2.4 80
        mariadb-5.5 3306
        php-fpm-5.4 9000
        zabbix-server-3.4 10051

[zabbix-agent]
    主機名 = host-2
    系統 = centos-7.3
    地址 = 1.1.1.2
    軟件 =
        zabbix-agent-3.4 10050 

三.配置

配置服務端程序

操作服務器(host-1)

1.yum部署lamp

♠.安裝LAMP和依賴

yum -y install httpd php php-fpm php-mysql mariadb mariadb-server mariadb-devel

♠.啟動並加入到自啟動中

systemctl restart httpd mariadb php-fpm
systemctl enable httpd mariadb php-fpm

♠.創建一個簡單的php腳本,測試httpd是否支持php,php是否可以連接mysql,mysql是否已啟動

vim /var/www/html/linkdb.php

<?php
$db=mysql_connect("localhost","root","");
if($db){
    echo "ok";
}else{
    echo  "no";
}
?>

 返回ok則正常,返回no則檢查數據庫是否可以不用密碼就登錄,如果有默認密碼,需要修改php腳本

curl http://127.0.0.1/linkdb.php

 2.安裝依賴包

yum -y install gcc gcc-c++ libevent-devel php-bcmath php-gd php-xml php-mbstring

 3.創建賬號,為安全起見禁止登錄

groupadd zabbix
useradd -g zabbix -s /sbin/nologin zabbix

 4.下載源碼包

wget https://shell-auto-install.oss-cn-zhangjiakou.aliyuncs.com/package/zabbix-3.4.1.tar.gz
tar -xf zabbix-3.4.1.tar.gz
cd zabbix-3.4.1

 5.選擇參數,當前只開啟了服務端,其余編譯參數如下

 

./configure --prefix=/usr/local/zabbix --enable-server --with-mysql

 第一行是添加這個參數,需要安裝的yum包,第二行是參數名

net-snmap-devel
--with-net-snmp

libcurl-devel curl-devel
--with-libcurl

libxml2-devel
--with-libxml2

OpenIPMI-devel
--with-openipmi

unixODBC-devel
--with-unixodbc

 6.編譯安裝

make install

 7.將php腳本復制到html目錄下

cp -r frontends/php/* /var/www/html/

 8.添加所有權限到php腳本,當然這種方式比較危險,具體在zabbix前端頁面會說明對哪些腳本要權限,逐個改

chmod -R 777 /var/www/html

 9.登陸mariadb並創建zabbix用戶,當前mariadb無密碼

MariaDB [(none)]> create database zabbixdb character set utf8;
MariaDB [(none)]>grant all on zabbixdb.* to zabbixuser@"localhost" identified by "123456";
MariaDB [(none)]>quit

 10.按順序導入zabbix自帶的數據庫

mysql -uzabbixuser -p123456 zabbixdb < database/mysql/schema.sql
mysql -uzabbixuser -p123456 zabbixdb < database/mysql/images.sql
mysql -uzabbixuser -p123456 zabbixdb < database/mysql/data.sql

 11.修改php參數,符合zabbix要求

vim /etc/php.ini

post_max_size = 16M
max_execution_time = 300
max_input_time = 300
date.timezone = Asia/Shanghai

 12.重啟服務

systemctl restart httpd php-fpm

配置服務端網頁

操作服務器(host-1)

1.訪問http://1.1.1.1

 

2.LDAP是特殊配置,不用管

3.數據庫:zabbixdb 賬號:zabbixuser 密碼:123456 

4.地址和端口都默認,Name可以不寫或者隨便寫

5.確定信息后下一步即可

6.若遇到這一步,是因為zabbix對/var/www/html/conf/沒有權限或者沒寫寫進去。需要手動將文件下載,然后傳入到服務器的/var/www/html/conf/zabbix.conf.php中刷新即可

7.登錄,設置為中文。管理員:admin 密碼:zabbix

更改為中文后,update更新

最下面或提示zabbix-server未啟動,下面將啟動zabbix服務端

啟動zabbix-server

操作服務器(host-1)

1.復制並修改啟動腳本,將安裝目錄替換為設置目錄

cp misc/init.d/fedora/core/zabbix_server /etc/init.d/
chmod +x /etc/init.d/zabbix_server

vim /etc/init.d/zabbix_server

BASEDIR=/usr/local/zabbix

 2.修改配置文件,填寫數據庫信息,前端頁面是告訴php腳本從哪個數據庫獲得信息展示,這里告訴后端程序將收集的信息寫入哪個數據庫

vim /usr/local/zabbix/etc/zabbix_server.conf

DBName=zabbixdb #數據庫名
DBUser=zabbixuser #數據庫用戶名
DBPassword=123456 #數據庫用戶密碼

 3.啟動並檢查端口是否正常,因為很多時候顯示啟動但並沒有真正啟動

/etc/init.d/zabbix_server start
netstat -utnalp | grep :10051

 4.查看前端頁面,會發現正常了

 

配置客戶端

操作服務器(host-2)

1.zabbix客戶端可以有版本小差異,服務端3.4版本,客戶端3.2版本也可以

wget https://shell-auto-install.oss-cn-zhangjiakou.aliyuncs.com/package/zabbix-agent-3.4.1-1.el7.x86_64.rpm

 2.安裝

yum -y install zabbix-agent-3.4.1-1.el7.x86_64.rpm

 3.清空配置后,編寫配置,其它參數后面安裝文檔再加

> /etc/zabbix/zabbix_agentd.conf

 4.當前配置是被動與主動模式都開啟,方便后期調節

vim /etc/zabbix/zabbix_agentd.conf

#指定pid文件位置
PidFile=/var/run/zabbix/zabbix_agentd.pid

#指定日志文件位置
LogFile=/var/log/zabbix/zabbix_agentd.log

#設置為被動模式,將開啟端口
StartAgents=3

#當前的主機名,要寫正確,否則服務端會不識別
Hostname=host-2

#服務端的地址,用逗號(,)可以隔開寫多個
Server=1.1.1.1

#服務端的地址,用逗號(,)可以隔開寫多個
ServerActive=1.1.1.1

#自定義的腳本超時時間,
Timeout=8

#允許自定義腳本
UnsafeUserParameters=1

#加載其它配置文件
Include=/etc/zabbix/zabbix_agentd.d/*.conf

 5.啟動效驗

systemctl start zabbix-agent
systemctl enable zabbix-agent
netstat -unltp | grep 10050

四.測試

操作服務器(host-1)

1.添加

2.配置主機信息

3.添加模板,連接模板后,主機將被模板所帶的監控項監控

4.一般選擇Template OS Linux,先點擊添加,再添加,不然模板連接不上

5.等一分鍾,ZBX燈亮

五.附錄

導入其余數據庫

1.postgresql導入
psql -U username
psql> create database zabbix;
psql > \q
cd database/postgresql
psql -U username zabbix < database/postgresql/schema.sql
psql -U username zabbix < database/postgresql/images.sql
psql -U username zabbix < database/postgresql/data.sql

2.oracle導入
sqlplus zabbix/password@host/ORCL
sqlplus>@database/oracle/schema.sql
sqlplus>@database/oracle/images.sql
sqlplus>@database/oracle/data.sql

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM