OpenTenBase 5.0部署
数据库管理-第383期 OpenTenBase 5.0部署(20251103)
作者:胖头鱼的鱼缸(尹海文)
Oracle ACE Pro: Database
PostgreSQL ACE10年数据库行业经验
拥有OCM 11g/12c/19c、MySQL 8.0 OCP、Exadata、CDP等认证
墨天轮MVP,ITPUB认证专家
圈内拥有“总监”称号,非著名社恐(社交恐怖分子)公众号:胖头鱼的鱼缸
CSDN:胖头鱼的鱼缸(尹海文)
墨天轮:胖头鱼的鱼缸
ITPUB:yhw1809
IFClub:胖头鱼的鱼缸
除授权转载并标明出处外,均为“非法”抄袭
在去年的文章《数据库管理-第232期 初探OpenTenBase(20240819)》,初次探索了OpenTenBase,那时的版本还是2.6.0,安装有一些不合理的地方,使用中也发现有许多功能不完善的。今年OpenTenBase发布了5.0版本,带来了很多新功能,本期使用RHEL8.10对新版本进行安装尝试。
1 集群规划
除了主机名和操作系统变化以外,基本与前文一致:
2 操作系统配置
操作系统相关配置也基本和前文一致,这里仅展示将变化的内容。
2.1 配置yum源
mkdir /iso
mount -r /dev/sr0 /iso
rm -rf /etc/yum.repo.d/*cat > /etc/yum.repos.d/iso.repo <<EOF
[AppStream]
name=AppStream
baseurl=file:///iso/AppStream
gpgcheck=0
enabled=1[BaseOS]
name=BaseOS
baseurl=file:///iso/BaseOS
gpgcheck=0
enabled=1
EOF
2.2 安装依赖包
dnf -y install git sudo gcc make readline-devel zlib-devel openssl-devel uuid-devel bison flex cmake postgresql-devel libssh2-devel sshpass libcurl-devel libxml2-devel
这里uuid-devel(和去年版本一样)和libssh2-devel(epel中有)未包含在ISO的软件包中,需要单独处理。
2.3 增加EPEL源
dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
2.4 下载uuid-devel
下载地址为:
https://repo.almalinux.org/almalinux/8/PowerTools/x86_64/os/Packages/uuid-devel-1.6.2-43.el8.x86_64.rpm
2.5 再次安装依赖包
dnf -y install git sudo gcc make readline-devel zlib-devel openssl-devel bison flex cmake postgresql-devel libssh2-devel sshpass libcurl-devel libxml2-devel
dnf -y install ./uuid-devel-1.6.2-43.el8.x86_64.rpm
3 安装数据库软件
开始安装
su - opentenbase
cd /data/opentenbase/
git clone https://github.com/OpenTenBase/OpenTenBaseexport SOURCECODE_PATH=/data/opentenbase/OpenTenBase
export INSTALL_PATH=/data/opentenbase/install/cd${SOURCECODE_PATH}
rm -rf ${INSTALL_PATH}/opentenbase_bin_v5.0
chmod +x configure*
./configure --prefix=${INSTALL_PATH}/opentenbase_bin_v5.0 --enable-user-switch --with-libxml --disable-license --with-openssl --with-ossp-uuid CFLAGS="-g"
报错:
需要安装zstd、lz4相关包(dnf安装无法解决):
# https://github.com/OpenTenBase/OpenTenBase/issues/166
git clone https://github.com/facebook/zstd.git
cd zstd
make -j$(nproc)
make installgit clone https://github.com/lz4/lz4.git
cd lz4
make -j$(nproc)
sudo make install
其他包
在实际后续操作过程中还有一些包需要安装:
dnf -y install libxslt-devel openldap-devel perl-IPC-Cmd perl-Test-Simple python36-devel tcl-devel crypto-develwget https://github.com/jtv/libpqxx/archive/refs/tags/6.4.8.zip
unzip 6.4.8.zip && cd libpqxx-6.4.8
dnf -y install gcc-c++
mkdir build && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local
make -j$(nproc)
make install
继续安装
安装上述软件后重新执行conifigure可继续执行。
make clean
make -sj
make install
chmod +x contrib/pgxc_ctl/make_signature
cd contrib
make -sj
make install
因为时间原因本期就不部署数据库了(还有就是得重新学习官方文档)。
总结
OpenTenBase 5.0带来了很多新功能,但是部署比2.6还麻烦,需要吐槽一下,希望以后RPM包安装能方便些。
老规矩知道写了些啥。