DMDPC 分布计算集群搭建

DMDPC 分布计算集群搭建

一个最小的 DMDPC 集群包含一个 BP、一个 SP 和一个 MP。可以在部署完毕后随时增添新的 BP、SP 节点。至少需要两台 BP 才方便看出子任务的各种计划形态和调度,本试验将在一部 Linux 虚拟机上通过创建四个实例的方式进行集群搭建

环境

DMDPC 集群规划部署 1 个 SP,2 个 BP 和 1 个 MP,其中,BP 采用单机模式,未配置为多副本系统,配置如下所示,路径前缀 ~ 代表 /home/dmdba/dmdbms/data

RAFT 组名实例名称IPPORT_NUMAP_PORT_NUM路径
RAFT_SP1SP1192.168.244.15052366000~/sp1
RAFT_1BP1192.168.244.15052376001~/bp1
RAFT_2BP2192.168.244.15052386002~/bp2
缺省为 NULL 或者MP_RAFTMP192.168.244.15052396003~/mp

DPC 配置

初始化数据库实例

在虚拟机上完成 DM8 的安装后创建以下四个实例

./dminit path=/home/dmdba/dmdbms/data/sp1 instance_name=SP1 port_num=5236 ap_port_num=6000 dpc_mode=SP 
./dminit path=/home/dmdba/dmdbms/data/bp1 instance_name=BP1 port_num=5237 ap_port_num=6001 dpc_mode=BP 
./dminit path=/home/dmdba/dmdbms/data/bp2 instance_name=BP2 port_num=5238 ap_port_num=6002 dpc_mode=BP
./dminit path=/home/dmdba/dmdbms/data/mp  instance_name=MP  port_num=5239 ap_port_num=6003 dpc_mode=MP
为 SP、BP 和 MP 配置 MP.INI 文件

在四个实例的 DAMENG 目录下配置 mp.ini 文件

vi mp.ini

~~~
mp_host = 192.168.244.150
mp_port = 9000 #与MP、BP和SP上的ap_port_num不冲突的端口号
~~~
启动 MP

DMDPC 运行过程中,MP 需要始终处于开启状态

./dmserver /home/dmdba/dmdbms/data/mp/DAMENG/dm.ini dpc_mode=MP

在这里插入图片描述

在这里插入图片描述

将 MP、SP 和 BP 加入集群

增加 1 个 MP、1 个 SP 和 2 个 BP 节点,只有在注册当前登录 MP 节点后,才可以注册其余节点。后续增加 MP、SP 节点和 BP 节点无先后之分

//搭建DMDPC过程中加入MP、SP和BP,必须登录MP进行操作
DIsql SYSDBA/SYSDBA@192.168.244.150:5239

//增加MP节点
//注册当前MP实例,MP的RAFT组名可以指定为NULL或者'MP_RAFT'
SP_CREATE_DPC_INSTANCE(NULL,'MP','MP',6003,5239, '192.168.244.150', '192.168.244.150','NORMAL',1,'MP instance');

//增加两个BP节点:BP1和BP2
//注册RAFT组,名为RAFT_1
SP_CREATE_DPC_RAFT('BP','RAFT_1');
//在RAFT_1组内注册BP实例BP1
SP_CREATE_DPC_INSTANCE('RAFT_1','BP1','BP',6001,5237, '192.168.244.150', '192.168.244.150','NORMAL',1,'BP instance');

//注册RAFT_2
SP_CREATE_DPC_RAFT('BP', 'RAFT_2');
//在RAFT_2内注册BP实例BP2
SP_CREATE_DPC_INSTANCE('RAFT_2','BP2','BP',6002,5238, '192.168.244.150', '192.168.244.150', 'NORMAL', 1, 'BP instance');

//注册一个BP组,名为BG_1
SP_CREATE_DPC_BP_GROUP('BG_1', 'bp group1');
//往BP组中添加RAFT组
SP_BP_GROUP_ADD_RAFT('BG_1', 'RAFT_1');
SP_BP_GROUP_ADD_RAFT('BG_1', 'RAFT_2');

//增加SP节点:SP1
//增加SP,也要注册RAFT组
SP_CREATE_DPC_RAFT('SP', 'RAFT_SP1');
//在RAFT_SP1内注册SP实例SP1
SP_CREATE_DPC_INSTANCE('RAFT_SP1','SP1','SP',6000,5236, '192.168.244.150', '192.168.244.150','NORMAL', 2, 'SP instance');

//注册一个容错域:FDOM_1 (可选,本试验中不进行该操作)
SP_CREATE_FAULT_DOMAIN ('FDOM_1','shanghai');
//往容错域中添加实例
SP_FAULT_DOMAIN_MV_INST('FDOM_1','MP');
SP_FAULT_DOMAIN_MV_INST('FDOM_1','BP1');
SP_FAULT_DOMAIN_MV_INST('FDOM_1','BP2');

注意:将SP和BP节点加入DMDPC集群中的步骤必须在SP、BP第一次启动前完成

检查注册是否成功

查询系统表,检查上一步骤的注册是否成功,能查到相关信息表示注册成功

select * from DPC_BP_GROUP;

在这里插入图片描述

select * from DPC_BP_RAFT;

在这里插入图片描述

select * from DPC_INSTANCE;

在这里插入图片描述

启动 SP 和 BP

启动 SP 和 BP 没有先后之分

启动 SP

./dmserver /home/dmdba/dmdbms/data/sp1/DAMENG/dm.ini dpc_mode=SP

在这里插入图片描述

启动 BP

./dmserver /home/dmdba/dmdbms/data/bp1/DAMENG/dm.ini dpc_mode=BP
./dmserver /home/dmdba/dmdbms/data/bp2/DAMENG/dm.ini dpc_mode=BP

在这里插入图片描述

在这里插入图片描述

至此 DMDPC 集群搭建完毕,用户只需要连接对外提供服务的 SP,即可获得完整的数据库服务

注意

  • 将 SP 和 BP 节点加入 DMDPC 集群中的步骤必须在 SP、BP 第一次启动前完成
  • 当BP处于下述情况时,表示无可用BP,系统异常,报错“无效的系统状态”,无可用BP的情况为:
    1.BP处于非OPEN状态;
    2.BP尚未成功启动;
    3.BP宕机
  • 只有出于监控目的进行 V$ 视图的查询,或出于维护需要时,才允许直连 MP 和 BP,否则搭建完成后,不允许再连接 MP 和 BP
  • 切勿在 MP 和 BP 上执行大量 SQL 语句,否则可能会导致系统崩溃
退出 DMDPC

使用 exit 命令退出 DMDPC 需要按照正确的顺序有序进行,按照如下顺序:退出 SP -> 退出 BP -> 退出 MP

如果没有按正常顺序退出,可能会导致剩下的机器直接宕机,此时只能对其他的机器采用强杀,这种服务器异常退出的情况,当再次重启的时候,服务器需要做大量的REDO日志,因此重启的时间会稍长一些,其它没有影响

达梦在线服务平台:https://eco.dameng.com

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值