OpenTenBase 5.0部署V3
数据库管理-第388期 (20251111)
作者:胖头鱼的鱼缸(尹海文)
Oracle ACE Pro: Database
PostgreSQL ACE
OpenTenBase ACE10年数据库行业经验
拥有OCM 11g/12c/19c、MySQL 8.0 OCP、Exadata、CDP等认证
墨天轮MVP,ITPUB认证专家
圈内拥有“总监”称号,非著名社恐(社交恐怖分子)公众号:胖头鱼的鱼缸
CSDN:胖头鱼的鱼缸(尹海文)
墨天轮:胖头鱼的鱼缸
ITPUB:yhw1809
IFClub:胖头鱼的鱼缸
除授权转载并标明出处外,均为“非法”抄袭
在上周,我在OpenTenbase上经历过:
OpenTenBase 5.0部署:编译安装部署,费时费力,很难成功 OpenTenBase 5.0部署V2+ OpenTenBase ACE优雅填坑N种姿势:RPM+按组件部署,虽有小坑,但整体顺畅
在上一篇OpenTenbase的文章中,提到过,在OpenTenbase 5.0中增加了opentenbase_ctl工具来快速部署,本期使用这种方法来看看部署到底简化了多少。
1 准备软件
本节操作大部分仅需在otb01节点执行。
1.1 创建安装目录
su - opentenbase
mkdir /data/opentenbase/install
1.2 复制软件包
cp ~/opentenbase-5.21.8-i.x86_64.tar.gz /data/opentenbase/install/
#这里的压缩包是官方获取的针对CentOS/RHEL 8系统的,也可通过编译方式生成安装目录,生成同名的压缩文件
1.3 下载opentenbase_ctl
cd /data/opentenbase
wget https://opentenbase-1302252972.cos.ap-nanjing.myqcloud.com/opentenbase_ctl
chmod +x opentenbase_ctl
1.4 配置参数文件:
cat > /data/opentenbase/postgres.conf <<EOF
listen_addresses = '0.0.0.0'
max_connections = 2000
max_pool_size = 65535
shared_buffers = 2GB
max_prepared_transactions = 2000
maintenance_work_mem = 512MB
wal_level = logical
max_wal_senders = 64
max_wal_size = 1GB
min_wal_size = 256MB
log_destination = 'csvlog'
logging_collector = on
log_directory = 'log'
log_filename = 'postgresql-%A-%H.log'
synchronous_commit = local
synchronous_standby_names = ''
EOF
附加
所有节点配置sudo:
cat >> /etc/sudoers <<EOF
opentenbase ALL=(ALL) NOPASSWD: ALL
EOF
所有节点安装sshpass:
dnf -y install sshpass
2 部署数据库
2.1 (该部分修改后未删除,请忽略)
cat >> ~/.bash_profile <<EOF
export INSTALL_PATH=/data/opentenbase/install/
export PG_HOME=\$INSTALL_PATH/opentenbase_bin_v5.0
export PATH=\$PATH:\$PG_HOME/bin
export LD_LIBRARY_PATH=/lib:/var/lib:/usr/lib:/usr/lib64:\$PG_HOME/lib
EOF
2.1 编辑配置文件
cd /data/opentenbase
cat > opentenbase_config.ini <<EOF
# 实例配置
[instance]
name=opentenbase01
type=distributed
package=/data/opentenbase/install/opentenbase-5.21.8-i.x86_64.tar.gz# GTM 节点
[gtm]
master=10.10.10.101
slave=10.10.10.102# 协调器节点
[coordinators]
master=10.10.10.101
slave=10.10.10.102
nodes-per-server=1
conf=/data/opentenbase/postgres.conf# 数据节点
[datanodes]
master=10.10.10.103,10.10.10.104,10.10.10.105
slave=10.10.10.104,10.10.10.105,10.10.10.103
nodes-per-server=1
conf=/data/opentenbase/postgres.conf# 登录和部署账户
[server]
ssh-user=opentenbase
ssh-password=opentenbase
ssh-port=22# 日志配置
[log]
level=DEBUG
EOF
附:配置文件说明
2.2 部署数据库
./opentenbase_ctl install -c opentenbase_config.ini
这个部署速度是非常快的。
3 访问数据库
3.1 检查集群
./opentenbase_ctl status
3.2 访问
根据检查数据库的输出内容,访问数据库:
export LD_LIBRARY_PATH=/data/opentenbase/install/opentenbase/5.21.8/lib && export PATH=/data/opentenbase/install/opentenbase/5.21.8/bin:${PATH}
psql -h 10.10.10.101 -p 11003 -U opentenbase postgres
总结
使用opentenbase_ctl部署OpenTenbase 5.0集群的速度是超乎想象的快!
老规矩,知道写了些啥。