本文记录一下本人部署DSC集群的过程。
安装前准备
两台虚拟机A和B
192.168.28.51
192.168.28.52
设置主机名
dmdsc01
dmdsc02
两台机器禁用防火墙
systemctl disable firewalld
设置网卡自启,配置IP使两台机器能相互Ping通及ping到外网
在AB机器分别安装数据库,安装在/opt/dsc/dmdbms
![]() |
关闭两台虚拟机,添加一块虚拟磁盘
在AB各自虚拟机vmx文件添加如下两行
disk.locking = "FALSE"
scsi0:1.SharedBus = "Virtual"
挂存储
AB机器依次修改
[root@dmdcs01 ~]# vi /etc/udev/rules.d/70-persistent-ipoib.rules
[root@dmdcs01 ~]# partprobe /dev/sdb
[root@dmdcs01 ~]# /sbin/udevadm control --reload-rules
[root@dmdcs01 ~]# /sbin/udevadm trigger --type=devices --action=change
[root@dmdcs01 ~]# reboot
可通过blockdev --getsize64 /dev/raw/raw*命令查看设备大小。
搭建DSC
创建dmdcr_cfg.ini
A、B机器配置相同
A、B机器配置相同
DCR_N_GRP = 3 #集群环境有多少个GROUP,范围:1~16
DCR_VTD_PATH = /dev/raw/raw2
DCR_OGUID = 45331
[GRP] #新建一个GROUP
DCR_GRP_TYPE = CSS #组类型(CSS/ASM/DB)
DCR_GRP_NAME = GRP_CSS #组名
DCR_GRP_N_EP = 2 #组内节点个数
DCR_GRP_DSKCHK_CNT = 60 #磁盘心跳容错时间,单位:秒
[GRP_CSS]
DCR_EP_NAME = CSS0 #CSS节点名
DCR_EP_HOST = 192.168.255.101 #心跳地址
DCR_EP_PORT = 5336 #CSS端口
[GRP_CSS]
DCR_EP_NAME = CSS1
DCR_EP_HOST = 192.168.255.102
DCR_EP_PORT = 5337
[GRP]
DCR_GRP_TYPE = ASM
DCR_GRP_NAME = GRP_ASM
DCR_GRP_N_EP = 2
DCR_GRP_DSKCHK_CNT = 60
[GRP_ASM]
DCR_EP_NAME = ASM0 #ASM节点名,和dmasvrmal的MAL_INST_NAME一致
DCR_EP_SHM_KEY = 93360 #共享内存标识
DCR_EP_SHM_SIZE = 10 #共享内存大小
DCR_EP_HOST = 192.168.255.101 #心跳地址
DCR_EP_PORT = 5436 #ASM端口
DCR_EP_ASM_LOAD_PATH = /dev/raw
[GRP_ASM]
DCR_EP_NAME = ASM1
DCR_EP_SHM_KEY = 93361
DCR_EP_SHM_SIZE = 10
DCR_EP_HOST = 192.168.255.102
DCR_EP_PORT = 5437
DCR_EP_ASM_LOAD_PATH = /dev/raw
[GRP]
DCR_GRP_TYPE = DB
DCR_GRP_NAME = GRP_DSC
DCR_GRP_N_EP = 2
DCR_GRP_DSKCHK_CNT = 60
[GRP_DSC]
DCR_EP_NAME = DSC0 #实例名,和dm.ini的INSTANCE_NAME一致
DCR_EP_SEQNO = 0 #组内序号,不能重复
DCR_EP_PORT = 5236 #实例端口,和dm.ini的PORT_NUM一致
DCR_CHECK_PORT = 5536 #DCR检查端口
[GRP_DSC]
DCR_EP_NAME = DSC1
DCR_EP_SEQNO = 1
DCR_EP_PORT = 5236
DCR_CHECK_PORT = 5537
在A机器上初始化磁盘组
创建dmasvrmal.ini
A、B机器配置相同
创建dmdcr.ini
A机器
B机器
启动CSS、ASM服务
A、B机器依次执行
四个窗口的截图如下:
![]() |
创建ASM磁盘组(A机器执行)
创建dminit.ini(A、B机器配置相同)
初始化实例,A机器执行
拷贝文件
![]() |
创建dmarch.ini
A机器修改dm.ini
创建dmarch.ini
B机器修改dm.ini
创建dmarch.ini
启动DMSERVER服务
A机器
B机器
注册CSS、ASM、DMSERVER后台服务
A机器
![]() |
B机器
配置监视器
创建dmcssm.ini
A、B机器配置相同
注册服务
![]() |
前台启动监视器
查看监控到的信息
![]() |
monitor current time:2021-08-09 17:37:01, n_group:3
=================== group[name = GRP_CSS, seq = 0, type = CSS, Control Node = 0] ========================================
[CSS0] global info:
[ASM0] auto restart = FALSE
[DSC0] auto restart = FALSE
[CSS1] global info:
[ASM1] auto restart = FALSE
[DSC1] auto restart = FALSE
ep: css_time inst_name seqno port mode inst_status vtd_status is_ok active guid ts
2021-08-09 17:37:01 CSS0 0 5336 Control Node OPEN WORKING OK TRUE 194820402 194822623
2021-08-09 17:37:01 CSS1 1 5337 Normal Node OPEN WORKING OK TRUE 194835301 194837468
=================== group[name = GRP_ASM, seq = 1, type = ASM, Control Node = 0] ========================================
n_ok_ep = 2
ok_ep_arr(index, seqno):
(0, 0)
(1, 1)
sta = OPEN, sub_sta = STARTUP
break ep = NULL
recover ep = NULL
crash process over flag is TRUE
ep: css_time inst_name seqno port mode inst_status vtd_status is_ok active guid ts
2021-08-09 17:37:01 ASM0 0 5436 Control Node OPEN WORKING OK TRUE 194841346 194843491
2021-08-09 17:37:01 ASM1 1 5437 Normal Node OPEN WORKING OK TRUE 194845360 194847491
=================== group[name = GRP_DSC, seq = 2, type = DB, Control Node = 0] ========================================
n_ok_ep = 2
ok_ep_arr(index, seqno):
(0, 0)
(1, 1)
sta = OPEN, sub_sta = STARTUP
break ep = NULL
recover ep = NULL
crash process over flag is TRUE
ep: css_time inst_name seqno port mode inst_status vtd_status is_ok active guid ts
2021-08-09 17:37:01 DSC0 0 5236 Control Node OPEN WORKING OK TRUE 486117923 486119995
2021-08-09 17:37:01 DSC1 1 5236 Normal Node OPEN WORKING OK TRUE 486134519 486136567
==================================================================================================================
可以看到两个节点运行正常,搭建完成。
更多资讯请上达梦技术社区了解:https://eco.dameng.com