说明

有时候为了安全,公司的内网环境是不连接外网的,然后又需要针对性的重新编译一个特殊功能的Zabbix监控系统,但是相关的依赖的安装是个比较麻烦的问题,要么制作一个本地yum源进行依赖安装,要么做一个网络映射,让内网机器可以访问外网。如果既不想搭建yum源,又不想做网络映射,那该怎么办?

为解决这个问题。本文将介绍使用centos系统来下载编译所需的相关依赖包,然后将依赖包和Zabbix源码包一起上传到内网机器,从而离线环境中编译安装Zabbix。

如何在离线环境中编译安装Zabbix_zabbix

前提条件

确定好内网机器的操作系统版本

系统要能执行yum命令

1.下载rpm依赖包和zabbix源码包

1.1确保系统一致性

首先确定好内网机器的操作系统版本。这里我的环境机器系统版本是centos7.9

如何在离线环境中编译安装Zabbix_zabbix安装_02

然后在外网找一台操作系统一致的机器(一定要确保操作系统一致)

如何在离线环境中编译安装Zabbix_zabbix安装_03

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_zabbix_04

然后打包

1.3下载zabbix源码包

​https://www.zabbix.com/download_sources​

到官网下载需要的版本

1.4上传依赖包和源码包到离线服务器

然后将打包的rpm.zip包和源码包上传到离线服务器

如何在离线环境中编译安装Zabbix_zabbix安装_05

2.安装依赖包

解压依赖包

如何在离线环境中编译安装Zabbix_zabbix_06

yum -y localinstall ./rpm/*.rpm

若是出现安安装失败,或者缺少依赖,可忽略依赖。命令: yum -y localinstall ./rpm/*.rpm --skip-broken

亦或是在下载依赖时补全缺少的依赖。

如何在离线环境中编译安装Zabbix_zabbix安装_07

安装完成

如何在离线环境中编译安装Zabbix_zabbix安装_08

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_zabbix安装_09

结果无问题,开始编译安装

make -j2 && make install

如何在离线环境中编译安装Zabbix_zabbix安装_10

3.2编译完成

如何在离线环境中编译安装Zabbix_zabbix_11

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问题也欢迎到​​乐维社区​​分享和探讨。