CentOS7 源码安装Zabbix 6.4.19(最完整——全源码安装)

注:CentOS7 源码安装Zabbix7时由于OpenSSL兼容性问题无法安装,本人已尝试过多个OpenSSL版本去编译Zabbix7,但始终不成功,要用OpenSSL是因为要用到共享密钥。

下载地址:https://www.zabbix.com/download

开源地址:https://github.com/zabbix/zabbix

官方文档:https://www.zabbix.com/documentation/current/en

Go 下载地址:https://go.dev/dl/

Zabbix使用手册(推荐):https://www.bookstack.cn/read/zabbix-6.0-zh/f6322a7bda5cdadc.md

一、查看CentOS7系统版本

[root@localhost /root]# uname -a
Linux localhost.localdomain 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
[root@localhost /root]# cat /etc/os-release
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"

二、准备工作

  • 操作系统:CentOS 7.9
  • MySQL: >= 8.0.30
  • GCC:>= 11
  • GO:>= 1.21
  • PHP:>= 7.4.0
  • Web服务:Nginx 或者 Apache

三、安装依赖

1.安装OpenSSL

使用系统自带的 OpenSSL 1.0.2k-fips 版本即可。

2.安装JDK

这里安装的版本为 1.8.0_421,可参考我博客中相关文档。

3.安装MySQL

这里安装的版本为 8.0.34,,可参考我博客中相关文档。

3.1 修改my.cnf配置文件

Zabbix仅支持 utf8_bin、utf8mb3_bin、utf8mb4_bin排序规则。

修改MySQL的主配置文件my.cnf

# my.cnf配置
vim /etc/my.cnf
# 修改或添加部分信息
[mysqld]
character-set-server  = utf8mb4
collation-server      = utf8mb4_bin
3.2 重启MySQL服务

修改完配置文件后,需重启服务后生效:

systemctl restart mysqld
3.3 配置动态链接库路径

配置和更新系统的 MySQL 库路径,以确保系统可以正确找到并使用特定版本的 MySQL 库:

echo "/data/mysql/mysql/lib" | sudo tee -a /etc/ld.so.conf.d/mysql.conf
ldconfig

4.安装GCC

4.1 添加仓库源

在安装 devtoolset-11 之前,需要先启用 CentOS Software Collections (SCL) 仓库。

编辑仓库配置文件CentOS-SCLo-scl.repo,添加以下内容:

cat > /etc/yum.repos.d/CentOS-SCLo-scl.repo <<'EOF'
[centos-sclo-sclo]
name=CentOS-7 - SCLo sclo
baseurl=http://mirrors.aliyun.com/centos/7/sclo/x86_64/rh/
gpgcheck=0
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo
EOF
4.2 使用yum安装

执行yum命令安装Devtoolset-11版本:

yum install -y devtoolset-11-gcc*
4.3 设置环境变量
mv /usr/bin/gcc /usr/bin/gcc-4.8.5
ln -s /opt/rh/devtoolset-11/root/bin/gcc /usr/bin/gcc
mv /usr/bin/g++ /usr/bin/g++-4.8.5
ln -s /opt/rh/devtoolset-11/root/bin/g++ /usr/bin/g++
4.6 验证GCC版本
gcc --version
# 显示版本
gcc (GCC) 11.2.1 20220127 (Red Hat 11.2.1-9)

g++ --version
# 显示版本
g++ (GCC) 11.2.1 20220127 (Red Hat 11.2.1-9)

5.安装Go

zabbix安装使用 --enable-agent2,需要GO环境,如果不使用可以不配置GO环境。

这里安装的版本为 1.22.5

5.1 下载并解压go源代码

下载go源码包并解压到指定路径/usr/local 下:

cd /usr/local/src
wget https://dl.google.com/go/go1.22.5.linux-amd64.tar.gz
tar -xzf go1.22.5.linux-amd64.tar.gz -C /usr/local
5.2 配置环境变量

配置/etc/profile环境变量文件,添加 Go 语言的环境变量:

cat >> /etc/profile <<'EOF'
# go
export PATH=$PATH:/usr/local/go/bin
EOF

执行环境变量生效:

source /etc/profile
5.3 验证go版本

安装成功并配置好环境变量后,直接通过执行go命令检查 Go 版本来验证:

go version
# 显示版本
go version go1.22.5 linux/amd64
5.4 查看go环境变量

查看所有 Go 环境变量,可以执行以下命令:

go env

6.安装Zabbix依赖包

除了前面这些,还需要安装一些Zabbix的构建工具和依赖项:

yum install -y openssl-devel libevent-devel libcurl-devel libxml2-devel net-snmp-devel unixODBC-devel libssh-devel OpenIPMI-devel openldap-devel fping

四、安装并配置Zabbix Server

这里源码安装的版本为 6.4.19

1.下载并解压Zabbix源代码

下载 Zabbix 源码包并解压:

cd /usr/local/src
wget https://cdn.zabbix.com/zabbix/sources/stable/6.4/zabbix-6.4.19.tar.gz
tar -xzf zabbix-6.4.19.tar.gz
cd zabbix-6.4.19

2.编译并安装Zabbix

在编译Zabbix时,指定安装路径,这里安装到 /data/zabbix

./configure --prefix=/data/zabbix \
--enable-server \
--enable-agent \
--enable-agent2 \
--with-mysql \
--with-net-snmp \
--with-libcurl \
--with-libxml2 \
--with-unixodbc \
--enable-java \
--enable-ipv6 \
--with-openssl \
--with-openipmi \
--with-libpcre \
--with-libevent \
--with-iconv

开始编译并安装 Zabbix 源码:

make -j $(nproc)
make install

3.验证Zabbix Server版本

安装成功后,可以通过检查 Zabbix Server 版本来验证:

/data/zabbix/sbin/zabbix_server --version

# 显示版本
zabbix_server (Zabbix) 6.4.19
Revision 6cb22301f83 23 September 2024, compilation time: Nov  8 2024 21:22:18

Copyright (C) 2024 Zabbix SIA
License GPLv2+: GNU GPL version 2 or later <https://www.gnu.org/licenses/>.
This is free software: you are free to change and redistribute it according to
the license. There is NO WARRANTY, to the extent permitted by law.

This product includes software developed by the OpenSSL Project
for use in the OpenSSL Toolkit (http://www.openssl.org/).

Compiled with OpenSSL 1.0.2k-fips  26 Jan 2017
Running with OpenSSL 1.0.2k-fips  26 Jan 2017

4.创建日志和告警目录

安装完成后,所有数据存放在/data/zabbix目录下,在该目录下新建logsalertscripts目录,用来存放 Zabbix 的日志文件和自定义的告警脚本:

mkdir -p /data/zabbix/{
   logs,alertscripts}

5.添加用户并修改目录权限

创建一个名为 zabbix 的用户,不创建用户的主目录,并将其登录 shell 设置为 /sbin/nologin,即无法登录系统,主要用于运行 zabbix 服务:

useradd zabbix -s /sbin/nologin -M
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值