LightDB分布式环境扩容DN节点
1. 使用LightDB安装包(http://www.light-pg.com/downloadList.html?key=lightDB_X)在服务器上安装单机版并创建实例(根据安装包提示进行安装即可,此处不再赘述,具体可参考安装手册http://www.light-pg.com/docs/LightDB_Install_Manual/current/install.html#id9);(注:假设现有环境为1CN-2DN,新增DN3)
2. 1)修改DN3节点的LTDATA/lightdb.conf配置文件,
在shared_preload_libraries第一位新增canopy项:
shared_preload_libraries='canopy,lt_stat_statements,lt_stat_activity,lt_prewarm,lt_cron,lt_hint_plan,lt_show_plans'
2)修改wal_level值:
wal_level = logical
3) 修改DN3节点的$LTDATA/lt_hba.conf文件,增加以下几行:
host all 用户 CN_IP/32 trust
host all 用户 DN1_IP/32 trust
host all 用户 DN2_IP/32 trust
(注:配置DNtrust这里,原DN有几个,则对应添加几行)
以上全部修改完成后重启数据库:
lt_ctl –D $LTDATA restart
3. DN3节点重启后进入数据库,创建原LightDB分布式环境中所需的同名数据库与用户(例如原LightDB分布式环境中testdb库为所使用的分布式库,所属用户为testuser,则这里同样创建库testdb和testuser):
create role testuser with password ‘testuser’ login;
create database testdb owner testuser;
(注:此处创建用户仅做举例说明,以实际情况为准)
然后进入testdb库中,创建canopy extension:
create extension canopy;
4. 在CN节点上将新增的DN3节点trust添加到$LTDATA/lt_hba.conf文件中:
host all 用户 新增DN_IP/32 trust
修改完成后CN上执行reload:
lt_ctl –D $LTDATA reload
5. 在DN1、DN2节点上分别将新增的DN3节点trust添加到$LTDATA/lt_hba.conf文件中:
host all 用户 新增DN3_IP/32 trust
修改DN1、DN2节点的$LTDATA/lightdb.conf配置文件:
wal_level = logical
修改完成后分别重启DN1、DN2数据库lt_ctl –D $LTDATA restart
6. 进入CN节点的分布式库中,将新增的DN3节点加入到分布式集群中:
select canopy_add_node(‘DN3_IP’, DN3_PORT);
重新平衡分片
select rebalance_table_shards(‘table_name’);