DM共享存储集群搭建


一、相关概念

1.CSS服务

达梦集群同步服务,集群中的每个节点都需要配置一个DMCSS服务,这些DMCSS服务自身也构成一个集群。
DMCSS 主要功能包括:写入心跳信息、选举 DMCSS 控制节点、选取 DMASM/DMDSC 控
制节点、管理被监控对象的启动流程、集群状态监控、节点故障处理、节点重加入等,DMCSS还可以接收并执行 DMCSSM 指令。
配置文件:dmdcr.ini

2.ASM服务

二、配置共享磁盘

创建新磁盘
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
选择刚刚添加的磁盘,然后点击高级选项,为磁盘添加虚拟设备节点
在这里插入图片描述
在这里插入图片描述

创建共享磁盘
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
选择刚刚添加的磁盘,然后点击高级选项,为磁盘添加虚拟设备节点
在这里插入图片描述
在这里插入图片描述

二、搭建集群

1.安装前准备

修改主机名
A机器

[root@~]# hostname dmdsc01

B机器

[root@~]# hostname dmdsc02

关闭防火墙
A机器、B机器依次执行

[root@~]# systemctl stop firewalld
[root@~]# systemctl disable firewalld

创建用户目录
A机器:数据库安装在/opt/dsc/dmdbms目录下

[root@~]# groupadd dinstall -g 2001;useradd -g dinstall dmdba -u 1001;passwd dmdba
[root@~]# mkdir -p /opt/dsc/setup /opt/dsc/dmdbms /opt/dsc/config /opt/dsc/arch_0 /opt/dsc/arch_0_remote /opt/dsc/bak
[root@~]# chown dmdba.dinstall /opt/dsc -R;chmod 777 /opt/dsc -R
[root@~]# su - dmdba
[dmdba@localhost ~]$./DMInstall.bin -i

B机器:数据库安装在/opt/dsc/dmdbms目录下

[root@~]# groupadd dinstall -g 2001;useradd -g dinstall dmdba -u 1001;passwd dmdba
[root@~]# mkdir -p /opt/dsc/setup /opt/dsc/dmdbms /opt/dsc/config /opt/dsc/arch_0 /opt/dsc/arch_0_remote /opt/dsc/bak
[root@~]# chown dmdba.dinstall /opt/dsc -R;chmod 777 /opt/dsc -R
[root@~]# su - dmdba
[dmdba@localhost ~]$./DMInstall.bin -i

数据库安装步骤可参考上一篇博客

2.存储准备

在这里插入图片描述
划分存储
A机器:

[root@~]# fdisk /dev/sdb
  1) 依次输入  n  p  1  回车  +100M,完成第一块磁盘划分
  2) 依次输入  n  p  2  回车  +100M,完成第二块磁盘划分
  3) 依次输入  n  p  3  回车  +5G,完成第三块磁盘划分
  4) 依次输入  n  p  回车  回车  回车,完成第四块磁盘划分
  5) 输入w命令,将裸设备划分的设置进行保存

A、B机器依次执行:

[root@~]# partprobe /dev/sdb

挂存储:

A、B机器依次修改
[root@~]# vi /etc/udev/rules.d/70-persistent-ipoib.rules
  ACTION=="add", KERNEL=="sdb1", RUN+="/bin/raw /dev/raw/raw1 %N" 
  ACTION=="add", KERNEL=="sdb2", RUN+="/bin/raw /dev/raw/raw2 %N"
  ACTION=="add", KERNEL=="sdb3", RUN+="/bin/raw /dev/raw/raw3 %N"
  ACTION=="add", KERNEL=="sdb4", RUN+="/bin/raw /dev/raw/raw4 %N"
  ACTION=="add", KERNEL=="raw[1-4]", OWNER="dmdba", GROUP="dinstall", MODE="660"
[root@~]# partprobe /dev/sdb

3.搭建DSC

创建dmdcr_cfg.ini
A、B机器配置相同

[dmdba@localhost ~]$ vim /opt/dsc/config/dmdcr_cfg.ini
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.10.58  #心跳地址
  DCR_EP_PORT              = 5336  #CSS端口
[GRP_CSS]
  DCR_EP_NAME              = CSS1
  DCR_EP_HOST              = 192.168.10.59
  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.10.58  #心跳地址
  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.10.59
  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机器

[dmdba@localhost ~]$ /opt/dsc/dmdbms/bin/dmasmcmd
  ASM> create dcrdisk '/dev/raw/raw1' 'dcr'
  ASM> create votedisk '/dev/raw/raw2' 'vote'
  ASM> create asmdisk '/dev/raw/raw3' 'LOG0'
  ASM> create asmdisk '/dev/raw/raw4' 'DATA0'
  ASM> init dcrdisk '/dev/raw/raw1' from '/opt/dsc/config/dmdcr_cfg.ini' identified by 'admin1234'
  ASM> init votedisk '/dev/raw/raw2' from '/opt/dsc/config/dmdcr_cfg.ini'

创建dmasvrmal.ini
A、B机器配置相同

[dmdba@localhost ~]$ vim /opt/dsc/config/dmasvrmal.ini
[MAL_INST1]
  MAL_INST_NAME            = ASM0
  MAL_HOST                 = 192.168.10.58  #心跳地址
  MAL_PORT                 = 5636  #MAL监听端口
[MAL_INST2]
  MAL_INST_NAME            = ASM1
  MAL_HOST                 = 192.168.10.59
  MAL_PORT                 = 5637 

创建dmdcr.ini
A机器


[dmdba@localhost ~]$ cat /opt/dsc/config/dmdcr.ini
DMDCR_PATH                 = /dev/raw/raw1
DMDCR_MAL_PATH             = /opt/dsc/config/dmasvrmal.ini
DMDCR_SEQNO                = 0
DMDCR_AUTO_OPEN_CHECK      = 90

#DMDCR_ASM_RESTART_INTERVAL = 30  #CSS认定ASM故障重启的时间
#DMDCR_ASM_STARTUP_CMD      = /opt/dsc/dmdbms/bin/dmasmsvr dcr_ini=/opt/dsc/config/dmdcr.ini

#DMDCR_DB_RESTART_INTERVAL  = 60  #CSS认定DSC故障重启的时间
#DMDCR_DB_STARTUP_CMD       = /opt/dsc/dmdbms/bin/dmserver path=/opt/dsc/config/dsc0_config/dm.ini dcr_ini=/opt/dsc/config/dmdcr.ini

B机器

[dmdba@localhost ~]$ vim /opt/dsc/config/dmdcr.ini
DMDCR_PATH                 = /dev/raw/raw1
DMDCR_MAL_PATH             = /opt/dsc/config/dmasvrmal.ini
DMDCR_SEQNO                = 1
DMDCR_AUTO_OPEN_CHECK      = 90

#DMDCR_ASM_RESTART_INTERVAL = 30
#DMDCR_ASM_STARTUP_CMD      = /opt/dsc/dmdbms/bin/dmasmsvr dcr_ini=/opt/dsc/config/dmdcr.ini

#DMDCR_DB_RESTART_INTERVAL  = 60
#DMDCR_DB_STARTUP_CMD       = /opt/dsc/dmdbms/bin/dmserver path=/opt/dsc/config/dsc1_config/dm.ini dcr_ini=/opt/dsc/config/dmdcr.ini

注:当前配置为手动拉起ASM和DMSERVER服务。
集群配置完之后,修改为自动拉起(去除注释#)

启动CSS、ASM服务
A、B机器依次执行

[dmdba@localhost ~]$ /opt/dsc/dmdbms/bin/dmcss DCR_INI=/opt/dsc/config/dmdcr.ini
[dmdba@localhost ~]$ /opt/dsc/dmdbms/bin/dmasmsvr DCR_INI=/opt/dsc/config/dmdcr.ini

创建DMASM磁盘组
A机器

[dmdba@localhost ~]$ /opt/dsc/dmdbms/bin/dmasmtool DCR_INI=/opt/dsc/config/dmdcr.ini
  ASM> create diskgroup 'DMLOG' asmdisk '/dev/raw/raw3'
  ASM> create diskgroup 'DMDATA' asmdisk '/dev/raw/raw4'

创建dminit.ini
A、B机器配置相同

[dmdba@localhost ~]$ vim /opt/dsc/config/dminit.ini
 db_name                  = dsc
  system_path              = +DMDATA/data
  main                     = +DMDATA/data/dsc/main.dbf
  main_size                = 128
  roll                     = +DMDATA/data/dsc/roll.dbf
  roll_size                = 128
  system                   = +DMDATA/data/dsc/system.dbf
  system_size              = 128
  ctl_path                 = +DMDATA/data/dsc/dm.ctl
  ctl_size                 = 8
  log_size                 = 2048
  dcr_path                 = /dev/raw/raw1
  dcr_seqno                = 0
  auto_overwrite           = 1
  PAGE_SIZE                = 32
  CASE_SENSITIVE           = Y
  CHARSET                  = 0

[DSC0]
  config_path              = /opt/dsc/config/dsc0_config
  port_num                 = 5236
  mal_host                 = 192.168.10.58
  mal_port                 = 5736
  log_path                 = +DMLOG/log/dsc0_log01.log
  log_path                 = +DMLOG/log/dsc0_log02.log 
[DSC1]
  config_path              = /opt/dsc/config/dsc1_config
  port_num                 = 5236
  mal_host                 = 192.168.10.59
  mal_port                 = 5737
  log_path                 = +DMLOG/log/dsc1_log01.log
  log_path                 = +DMLOG/log/dsc1_log02.log

初始化实例
A机器

[dmdba@localhost ~]$ /opt/dsc/dmdbms/bin/dminit control=/opt/dsc/config/dminit.ini
[dmdba@~]# scp -r /opt/dsc/config/dsc1_config dmdba@192.168.10.59:/opt/dsc/config/

创建dmarch.ini
A机器

--修改dm.ini
[dmdba@localhost ~]$ vim /opt/dsc/config/dsc0_config/dm.ini
  ARCH_INI                 = 1

--创建dmarch.ini
[dmdba@localhost ~]$ vim /opt/dsc/config/dsc0_config/dmarch.ini
[ARCHIVE_LOCAL]
  ARCH_TYPE                = LOCAL
  ARCH_DEST                = /opt/dsc/arch_0
  ARCH_FILE_SIZE           = 1024
  ARCH_SPACE_LIMIT         = 51200
[ARCHIVE_REMOTE]
  ARCH_TYPE                = REMOTE
  ARCH_DEST                = DSC1
  ARCH_INCOMING_PATH       = /opt/dsc/arch_0_remote
  ARCH_FILE_SIZE           = 1024
  ARCH_SPACE_LIMIT         = 51200

  

B机器

--修改dm.ini
[dmdba@localhost ~]$ vi /opt/dsc/config/dsc1_config/dm.ini
  ARCH_INI                 = 1

--创建dmarch.ini
[dmdba@localhost ~]$ vim /opt/dsc/config/dsc1_config/dmarch.ini
[ARCHIVE_LOCAL]
  ARCH_TYPE                = LOCAL
  ARCH_DEST                = /opt/dsc/arch_1
  ARCH_FILE_SIZE           = 1024
  ARCH_SPACE_LIMIT         = 51200
[ARCHIVE_REMOTE]
  ARCH_TYPE                = REMOTE
  ARCH_DEST                = DSC0
  ARCH_INCOMING_PATH       = /opt/dsc/arch_1_remote
  ARCH_FILE_SIZE           = 1024
  ARCH_SPACE_LIMIT         = 51200

启动DMSERVER服务
A机器

[dmdba@localhost ~]$ /opt/dsc/dmdbms/bin/dmserver /opt/dsc/config/dsc0_config/dm.ini dcr_ini=/opt/dsc/config/dmdcr.ini

B机器

[dmdba@localhost ~]$ /opt/dsc/dmdbms/bin/dmserver /opt/dsc/config/dsc1_config/dm.ini dcr_ini=/opt/dsc/config/dmdcr.ini

注册CSS、ASM、DMSERVER后台服务
A机器

[root@~]# /opt/dsc/dmdbms/script/root/dm_service_installer.sh -t dmcss -dcr_ini /opt/dsc/config/dmdcr.ini -p CSS
[root@~]# /opt/dsc/dmdbms/script/root/dm_service_installer.sh -t dmasmsvr -dcr_ini /opt/dsc/config/dmdcr.ini -y DmCSSServiceCSS.service -p ASM
[root@~]# /opt/dsc/dmdbms/script/root/dm_service_installer.sh -t dmserver -dm_ini /opt/dsc/config/dsc0_config/dm.ini -dcr_ini /opt/dsc/config/dmdcr.ini -y DmASMSvrServiceASM.service -p DSC

B机器

[root@~]# /opt/dsc/dmdbms/script/root/dm_service_installer.sh -t dmcss -dcr_ini /opt/dsc/config/dmdcr.ini -p CSS
[root@~]# /opt/dsc/dmdbms/script/root/dm_service_installer.sh -t dmasmsvr -dcr_ini /opt/dsc/config/dmdcr.ini -y DmCSSServiceCSS.service -p ASM
[root@~]# /opt/dsc/dmdbms/script/root/dm_service_installer.sh -t dmserver -dm_ini /opt/dsc/config/dsc1_config/dm.ini -dcr_ini /opt/dsc/config/dmdcr.ini -y DmASMSvrServiceASM.service -p DSC

4.配置监视器

A机器、B机器配置相同

[dmdba@localhost ~]$ vim /opt/dsc/dmdbms/bin/dmcssm.ini
CSSM_OGUID                 = 45331
CSSM_CSS_IP                = 192.168.10.58:5336
CSSM_CSS_IP                = 192.168.10.59:5337
CSSM_LOG_PATH              = ../log
CSSM_LOG_FILE_SIZE         = 512
CSSM_LOG_SPACE_LIMIT       = 2048

注册服务

[root@~]# /opt/dsc/dmdbms/script/root/dm_service_installer.sh -t dmcssm -cssm_ini /opt/dsc/dmdbms/bin/dmcssm.ini -p Monitor

5.启停服务

启动监视器

[dmdba@localhost ~]$ /opt/dsc/dmdbms/bin/DmCSSMonitorServiceMonitor start

启动CSS

A/B机器:[dmdba@localhost ~]$ /opt/dsc/dmdbms/bin/DmCSSServiceCSS start

总结

至此,集群搭建完毕

达梦社区地址:https://eco.dameng.com

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值