暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

He3DB安装-(3)部署He3DB集群备节点

原创 有木名凌霄 2023-09-27
138

前一步:He3DB安装-(2)部署He3DB集群主节点

一、部署He3DB备节点1

1、在node1复制pgdata_sp下的文件到pgdata_s1

cp -a /home/postgres/data/pgdata_sp/* /home/postgres/data/pgdata_s1/
cd /home/postgres/data/pgdata_s1/
rm -rf base global postmaster.pid
ln -sf /home/postgres/data/pgdata_sp/base base
ln -sf /home/postgres/data/pgdata_sp/global global

2、在node1输入以下命令,配置conf文件

#standby1
echo "host    replication     all             0.0.0.0/0               trust" >> /home/postgres/data/pgdata_s1/pg_hba.conf
echo "host    all             all             0.0.0.0/0               trust" >> /home/postgres/data/pgdata_s1/pg_hba.conf
echo "primary_conninfo = 'application_name=privstandby  dbname=postgres  user=repl password=He3@2023 host="192.168.0.51" port="1668" sslmode=disable sslcompression=0 gssencmode=disable target_session_attrs=any'" >> /home/postgres/data/pgdata_s1/postgresql.conf
echo "hot_standby = on" >> /home/postgres/data/pgdata_s1/postgresql.conf
echo "push_standby = off" >> /home/postgres/data/pgdata_s1/postgresql.conf
echo "wal_recycle=off" >> /home/postgres/data/pgdata_s1/postgresql.conf
echo "fsync = off" >> /home/postgres/data/pgdata_s1/postgresql.conf
echo "wal_keep_size=10000" >> /home/postgres/data/pgdata_s1/postgresql.conf
echo "full_page_writes = off" >> /home/postgres/data/pgdata_s1/postgresql.conf
echo "port="1670 >> /home/postgres/data/pgdata_s1/postgresql.conf
echo "lmdb_page_directory = '"/home/postgres/data"/pgdata_s1/lmdb/page'" >> /home/postgres/data/pgdata_s1/postgresql.conf
echo "lmdb_wal_directory = '"/home/postgres/data"/pgdata_s1/lmdb/wal'" >> /home/postgres/data/pgdata_s1/postgresql.conf
echo "he3share = off" >> /home/postgres/data/pgdata_s1/postgresql.conf
echo "listen_addresses = '*'" >> /home/postgres/data/pgdata_s1/postgresql.conf
echo "second_buffers=10GB" >> /home/postgres/data/pgdata_s1/postgresql.conf
touch /home/postgres/data/pgdata_s1/standby.signal
#standby1 push
echo "host    replication     all             0.0.0.0/0               trust" >> /home/postgres/data/pgdata_sp/pg_hba.conf
echo "host    all             all             0.0.0.0/0               trust" >> /home/postgres/data/pgdata_sp/pg_hba.conf
echo "primary_conninfo = 'application_name=push  dbname=postgres  user=repl password=He3@2023 host="192.168.0.103" port="1670" sslmode=disable sslcompression=0 gssencmode=disable target_session_attrs=any'" >> /home/postgres/data/pgdata_sp/postgresql.conf
echo "hot_standby = on" >> /home/postgres/data/pgdata_sp/postgresql.conf
echo "push_standby = on" >> /home/postgres/data/pgdata_sp/postgresql.conf
echo "wal_recycle=off" >> /home/postgres/data/pgdata_sp/postgresql.conf
echo "fsync = off" >> /home/postgres/data/pgdata_sp/postgresql.conf
echo "wal_keep_size=10000" >> /home/postgres/data/pgdata_sp/postgresql.conf
echo "full_page_writes = off" >> /home/postgres/data/pgdata_sp/postgresql.conf
echo "port="1671 >> /home/postgres/data/pgdata_sp/postgresql.conf
echo "lmdb_page_directory = '"/home/postgres/data"/pgdata_sp/lmdb/page'" >> /home/postgres/data/pgdata_sp/postgresql.conf
echo "lmdb_wal_directory = '"/home/postgres/data"/pgdata_sp/lmdb/wal'" >> /home/postgres/data/pgdata_sp/postgresql.conf
echo "listen_addresses = '*'" >> /home/postgres/data/pgdata_sp/postgresql.conf
touch /home/postgres/data/pgdata_sp/standby.signal

3、修改node1文件夹权限

chmod -R 700 /home/postgres/data/pgdata_sp/
chmod -R 700 /home/postgres/data/pgdata_s1/

4、启动node1备库和备1推进节点

cd /home/postgres/app
./bin/pg_ctl -D /home/postgres/data/pgdata_s1 -l /home/postgres/data/logfile_s1 start
./bin/pg_ctl -D /home/postgres/data/pgdata_sp/ -l /home/postgres/data/logfile_sp start

连接数据库测试是否成功:
image.png
如果出现the database system is in recovery mode错误:
image.png
请等待一会,备节点数据库正在同步数据,稍后再连接数据库即可。

至此node1节点部署完成。

二、部署He3DB备节点2

1、在node2复制pgdata_sp下的文件到pgdata_s2

cp -a /home/postgres/data/pgdata_s2p/* /home/postgres/data/pgdata_s2/
cd /home/postgres/data/pgdata_s2/
rm -rf base global postmaster.pid
ln -sf /home/postgres/data/pgdata_s2p/base base
ln -sf /home/postgres/data/pgdata_s2p/global global

2、在node2输入以下命令,配置conf文件

#standby2
echo "host    replication     all             0.0.0.0/0               trust" >> /home/postgres/data/pgdata_s2/pg_hba.conf
echo "host    all             all             0.0.0.0/0               trust" >> /home/postgres/data/pgdata_s2/pg_hba.conf
echo "primary_conninfo = 'application_name=privstandby  dbname=postgres  user=repl password=He3@2023 host="192.168.0.51" port="1668" sslmode=disable sslcompression=0 gssencmode=disable target_session_attrs=any'" >> /home/postgres/data/pgdata_s2/postgresql.conf
echo "hot_standby = on" >> /home/postgres/data/pgdata_s2/postgresql.conf
echo "push_standby = off" >> /home/postgres/data/pgdata_s2/postgresql.conf
echo "wal_recycle=off" >> /home/postgres/data/pgdata_s2/postgresql.conf
echo "fsync = off" >> /home/postgres/data/pgdata_s2/postgresql.conf
echo "wal_keep_size=10000" >> /home/postgres/data/pgdata_s2/postgresql.conf
echo "full_page_writes = off" >> /home/postgres/data/pgdata_s2/postgresql.conf
echo "port="1672 >> /home/postgres/data/pgdata_s2/postgresql.conf
echo "lmdb_page_directory = '"/home/postgres/data"/pgdata_s2/lmdb/page'" >> /home/postgres/data/pgdata_s2/postgresql.conf
echo "lmdb_wal_directory = '"/home/postgres/data"/pgdata_s2/lmdb/wal'" >> /home/postgres/data/pgdata_s2/postgresql.conf
echo "he3share = off" >> /home/postgres/data/pgdata_s2/postgresql.conf
echo "listen_addresses = '*'" >> /home/postgres/data/pgdata_s2/postgresql.conf
echo "second_buffers=10GB" >> /home/postgres/data/pgdata_s2/postgresql.conf
touch /home/postgres/data/pgdata_s2/standby.signal
#standby2 push
echo "host    replication     all             0.0.0.0/0               trust" >> /home/postgres/data/pgdata_s2p/pg_hba.conf
echo "host    all             all             0.0.0.0/0               trust" >> /home/postgres/data/pgdata_s2p/pg_hba.conf
echo "primary_conninfo = 'application_name=push  dbname=postgres  user=repl password=He3@2023 host="192.168.0.225" port="1672" sslmode=disable sslcompression=0 gssencmode=disable target_session_attrs=any'" >> /home/postgres/data/pgdata_s2p/postgresql.conf
echo "hot_standby = on" >> /home/postgres/data/pgdata_s2p/postgresql.conf
echo "push_standby = on" >> /home/postgres/data/pgdata_s2p/postgresql.conf
echo "wal_recycle=off" >> /home/postgres/data/pgdata_s2p/postgresql.conf
echo "fsync = off" >> /home/postgres/data/pgdata_s2p/postgresql.conf
echo "wal_keep_size=10000" >> /home/postgres/data/pgdata_s2p/postgresql.conf
echo "full_page_writes = off" >> /home/postgres/data/pgdata_s2p/postgresql.conf
echo "port="1673 >> /home/postgres/data/pgdata_s2p/postgresql.conf
echo "lmdb_page_directory = '"/home/postgres/data"/pgdata_s2p/lmdb/page'" >> /home/postgres/data/pgdata_s2p/postgresql.conf
echo "lmdb_wal_directory = '"/home/postgres/data"/pgdata_s2p/lmdb/wal'" >> /home/postgres/data/pgdata_s2p/postgresql.conf
echo "listen_addresses = '*'" >> /home/postgres/data/pgdata_s2p/postgresql.conf
touch /home/postgres/data/pgdata_s2p/standby.signal

3、修改node2文件夹权限

chmod -R 700 /home/postgres/data/pgdata_s2p/
chmod -R 700 /home/postgres/data/pgdata_s2/

4、启动node2备库和备2推进节点

cd /home/postgres/app
./bin/pg_ctl -D /home/postgres/data/pgdata_s2 -l /home/postgres/data/logfile_s2 start
./bin/pg_ctl -D /home/postgres/data/pgdata_s2p/ -l /home/postgres/data/logfile_s2p start

连接数据库测试是否成功:
image.png
至此node2节点部署完成。

注:如要部署多个备节点,操作同上。

最后修改时间:2023-09-28 15:51:46
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论