天天看點

如何在離線環境中編譯安裝Zabbix

作者:樂維社群

說明

有時候為了安全,公司的内網環境是不連接配接外網的,然後又需要針對性的重新編譯一個特殊功能的Zabbix監控系統,但是相關的依賴的安裝是個比較麻煩的問題,要麼制作一個本地yum源進行依賴安裝,要麼做一個網絡映射,讓内網機器可以通路外網。如果既不想搭建yum源,又不想做網絡映射,那該怎麼辦?

為解決這個問題。本文将介紹使用centos系統來下載下傳編譯所需的相關依賴包,然後将依賴包和Zabbix源碼包一起上傳到内網機器,進而離線環境中編譯安裝Zabbix。

前提條件

确定好内網機器的作業系統版本

系統要能執行yum指令

1.下載下傳rpm依賴包和zabbix源碼包

1.1確定系統一緻性

首先确定好内網機器的作業系統版本。這裡我的環境機器系統版本是centos7.9

如何在離線環境中編譯安裝Zabbix

然後在外網找一台作業系統一緻的機器(一定要確定作業系統一緻)

如何在離線環境中編譯安裝Zabbix

1.2下載下傳全量依賴包

安裝下載下傳指令

yum -y install yum-utils

下載下傳全量依賴包

文章編譯zabbix所需的依賴有gcc gcc-c++ net-snmp-devel libevent-devel OpenIPMI OpenIPMI-devel openssl-libs mariadb-devel device-mapper rpm libaio*

執行下載下傳指令:

repotrack gcc gcc-c++ net-snmp-devel libevent-devel OpenIPMI OpenIPMI-devel openssl-libs mariadb-devel device-mapper rpm libaio*

等待下載下傳完成

如何在離線環境中編譯安裝Zabbix

然後打包

1.3下載下傳zabbix源碼包

https://www.zabbix.com/download_sources

到官網下載下傳需要的版本

1.4上傳依賴包和源碼包到離線伺服器

然後将打包的rpm.zip包和源碼包上傳到離線伺服器

如何在離線環境中編譯安裝Zabbix

2.安裝依賴包

解壓依賴包

如何在離線環境中編譯安裝Zabbix

yum -y localinstall ./rpm/*.rpm

若是出現安安裝失敗,或者缺少依賴,可忽略依賴。指令: yum -y localinstall ./rpm/*.rpm --skip-broken

亦或是在下載下傳依賴時補全缺少的依賴

如何在離線環境中編譯安裝Zabbix

安裝完成

3.開始編譯zabbix

3.1編譯檢查

解壓zabbix源碼包,并開始編譯檢查

./configure --prefix=/data/zabbix --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2 --with-openipmi --enable-ipv6

如何在離線環境中編譯安裝Zabbix

結果無問題,開始編譯安裝

make -j2 && make install

如何在離線環境中編譯安裝Zabbix

3.2編譯完成

如何在離線環境中編譯安裝Zabbix

3.3添加系統指令

複制啟動腳本:

cp –ra ./misc/init.d/fedora/core/* /etc/init.d/

修改腳本路徑:

vim /etc/init.d/zabbix_server

vim /etc/init.d/zabbix_agentd

将裡面的:

BASEDIR=/usr/local

修改為:

BASEDIR=/data/zabbix

完成後便可使用系統指令來啟動或停止zabbix

service zabbix-server start/stop/status/restart

service zabbix-agentd start/stop/status/restrat

systemctl start/stop/status/restart zabbix_server

systemctl start/stop/status/restart zabbix_agentd

以上就是這一期的Zabbix技術分享内容。

大家好,我是樂樂,專注Zabbix技術研究與分享,關注我了解更多Zabbix技術知識,Zabbix問題也歡迎到樂維社群分享和探讨。

繼續閱讀