1.OpenTenBase源码编译:
使用系统:阿里云ECS云主机,g7,4核16GiB,Ubuntu 22.04
选择的依据:由于本机的配置不高,选择使用阿里云ECS云主机进行实践,最开始选择的是c6,2核4GiB,但是在编译中发现CPU使用将近100%,出现了OOM(out of memory)问题。尝试使用增加Swap空间的方式解决这个问题,但所选的4GiB过小,结果很不理想。因此,重新选择g7,4核16GiB,实现源码编译。
安装依赖:
sudo apt-get update
sudo apt-get install -y gcc make libreadline-dev zlib1g-dev libssl-dev libossp-uuid-dev bison flex git
创建目录、opentenbase用户和对应密码(如果要部署集群,则所有主机都需要执行):
mkdir /data
useradd -d /data/opentenbase -s /bin/bash -m opentenbase
passwd opentenbase # 例如可以设置密码为:123
切换到已经创建的opentenbase用户,通过git clone获取OpenTenBase源码:
su opentenbase
git clone https://github.com/OpenTenBase/OpenTenBase
对源码进行编译:
#首先声明一下变量SOURCECODE_PATH和INSTALL_PATH
export SOURCECODE_PATH=/data/opentenbase/OpenTenBase
export INSTALL_PATH=/data/opentenbase/install
#进入源码目录
cd ${SOURCECODE_PATH}
rm -rf ${INSTALL_PATH}/opentenbase_bin_v2.0
#赋予配置脚本执行权限
chmod +x configure*
#配置编译选项
./configure --prefix=${INSTALL_PATH}/opentenbase_bin_v2.0 --enable-user-switch --with-openssl --with-ossp-uuid CFLAGS=-g
#编译安装软件
make clean
make -sj 4
make install
#赋予执行权限
chmod +x contrib/pgxc_ctl/make_signature
编译contrib目录下的工具
cd contrib
make -sj 4
make install
到此源码编译结束。
2.OpenTenBase集群部署:
根据操作指南,可以发现两台主机可以实现有着1GTM主,1GTM备,2CN,2DN主,2DN备的集群,该集群有着最小容灾能力。在此基础上,想要实现2CN+3DN的集群,第一种方式是添加一个主机用做数据节点,第二种方式是扩充主机数量,使用5台主机,其中两台主机分别为CN,另外三台分别为DN。本次使用的是第一种方式。
集群规划:
| 节点名称 |
IP |
数据目录 |
| GTM master |
172.27.47.131 |
/data/opentenbase/data/gtm |
| GTM slave |
172.27.47.132 |
/data/opentenbase/data/gtm |
| CN1 |
172.27.47.131 |

最低0.47元/天 解锁文章
1266

被折叠的 条评论
为什么被折叠?



