DM8共享存储集群搭建 2 节点 DMDSC(DMASM)

  1. DMDSC 概述:
    DMDSC 集群是一个多实例、单数据库的系统。多个数据库实例可以同时访问、修改同一个数据库的数据。用户可以登录集群中的任意一个数据库实例,获得完整的数据库服务。数据文件、控制文件在集群系统中只有一份,不论有几个节点,这些节点都平等地使用这些文件。各个节点有自己独立的联机日志和归档日志。这些文件就保存在共享存储上。
    DMDSC 集群得以实现的重要基础就是共享存储。DM 支持的共享存储有两种:裸设备和DMASM。这两种存储的区别在于后者在前者的基础上,部署并使用了 DMASM 文件系统。为了方便对裸设备上的磁盘或文件进行管理,推荐用户使用后者。
    DMDSC 集群主要由数据库和数据库实例、共享存储、本地存储、通信网络、以及集群控制软件 DMCSS 组成。下面以部署了 DMASM 的 DMDSC 集群为例,展示 DMDSC 集群系统结构。如下图2.1所示:
    DM8共享存储集群搭建 2 节点 DMDSC(DMASM)_第1张图片

  2. DMDSC 的主要特点包括:
     高可用性 :只要集群中有一个活动节点,就能正常提供数据库服务。
     高吞吐量 :多个节点同时提供数据库服务,有效提升集群的整体事务处理能力。
     负载均衡 :用户的连接请求被平均分配到集群中的各个节点,确保各个节点的负载大致平衡。

  3. 基本概念
    (1)集群(Cluster)
    是由两个或多个节点(服务器)构成的一种松散耦合的计算机节点集合,这个集合在整个网络中表现为一个单一的系统,并通过单一接口进行使用和管理。大多数模式下,集群中的所有计算机都拥有一个相同的名称,集群内任意一个系统都可以被所有的网络用户使用。每个集群节点都是运行其自己进程的独立服务器,因此每个节点都有自己的运算能力。这些进程间彼此通信进行协调,协同起来向用户提供应用程序、系统资源和数据以及计算能力。涉及到的集群有三种:DMDSC 集群,DMCSS 集群和 DMASM 集群。
    (2)DMDSC 集群
    DMDSC 集群由若干数据库实例(Instance)组成,这些实例间通过网络(MAL 链路)连接,通过一个特殊的软件(DMCSS,集群同步服务)的协助,共同操作一个数据库。从外部用户视角来看,他们看到的只是一个数据库。数据文件、控制文件等文件在集群中只有一份,所有节点平等地使用这些数据文件。这份数据一般放在共享存储上,每个服务器通过光纤连接到共享存储上。
    DMDSC 支持使用裸设备或 DMASM 文件系统存放共享数据库文件。为了方便对裸设备上的磁盘或文件进行管理,DM 推荐使用 DMASM 文件系统。
    (3)裸设备(Raw Device)
    一种没有经过格式化,不被 Unix/Linux 通过文件系统来读取的特殊字符设备,允许直接访问磁盘而不经过操作系统的高速缓存和缓冲器。因为使用裸设备避免了经过操作系统这一层,数据直接从磁盘到数据库服务器进行传输,所以使用裸设备对于读写频繁的数据库应用来说,可以有效提高数据库系统的性能。但是裸设备的使用有很多限制,比如 Linux主机的每个磁盘最多能划分 16 个分区,去掉一个扩展分区后,可用的只有 15 个;每个分区只支持一个裸设备;每个裸设备只能对应一个文件、裸设备一经创建大小就固定、不能动态调整等。所以实际使用时可能会出现数据库文件空间不够或者空间浪费的情况,需要根据应用实际情况提前分配好裸设备大小。
    (4)DMASM(DM Auto Storage Manager)
    是一个专用的分布式文件系统。支持多个节点同时访问、修改数据文件,并减少直接使用裸设备存在的诸多限制。DMASM 文件系统把指定的裸设备打包管理,使用 DMASM 文件系统可以方便地创建、删除、扩展、截断文件,不用担心空间不足(空间不足可以通过增加磁盘扩展空间)或空间浪费;不用考虑文件个数限制;可以方便查看空间使用情况;可以在线通过增加裸设备的方式扩展总体使用空间。
    DMASM 不是一个通用的文件系统,只能通过 dmasmapi 接口访问。理论上通过dmasmapi 接口可以存放任何文件,但在 DMDSC 集群中,一般只建议将需要在节点间共享访问的文件存在 DMASM 文件中,如数据文件、联机 Redo 日志文件、控制文件等。归档 Redo日志文件、备份集文件也可以考虑保存到 DMASM 文件系统中,避免还原、恢复等操作时点间的文件拷贝,简化备份、还原操作。其他的一些本地配置文件比如 dm.ini 等保存在本地磁盘中。
    DMDSC 集群中若配置 DMASM,则要求 DMASM 站点数和 DMCSS 站点数一致,且只能存在一个 DMCSS 组和一个 DMASM 组。这些 DMASM 站点共同构成了一个 DMASM 集群。
    (5)DMCSS(DM Cluster Synchronization Services)
    DMCSS 是 DM 集群同步服务的简称,是 DMDSC 集群应用的基础,使用 DMDSC 集群或者DMASM 集群都必须要配置 DMCSS。DMCSS 负责集群环境中节点的启动、故障处理、节点重加入等操作。
    每个集群节点都需要有一个 DMCSS 服务。这些 DMCSS 服务又共同构成一个 DMCSS 集 群。单节点应用时,可以不配置 CSS。
    (6)DMCSSM(DM Cluster Synchronization Services Monitor)
    DMCSSM(DM Cluster Synchronization Services Monitor)是 DM 集群监视器的简称。DMCSSM 与 DMCSS 相互通信,获取并监控整个集群系统的状态信息。DMCSSM还提供了一系列的命令来管理、维护集群。同一个集群中,允许最多同时启动 10 个监视器,一般建议将监视器放在独立的第三方
    机器上。
    (7)DCR(DM Clusterware Registry)
    DCR 是 DM 集群注册表的简称,用于存储、维护集群配置的详细信息,整个集群环境共享 DCR 配置信息,包括 DMDSC、DMASM、DMCSS 资源,包括实例名、监听端口、集群中故障节点信息等。DCR 必须存储在集群中所有节点都可以访问到的共享存储中,并且只支持裸设备。在一个集群环境中只能配置一个 DCR 磁盘。
    (8)表决磁盘(Voting Disk)
    表决磁盘记录了集群成员信息,DM 集群通过 Voting Disk 进行心跳检测,确定集群中节点的状态,判断节点是否出现故障。当集群中出现网络故障时,使用 Voting Disk来确定哪些 DMDSC 节点应该被踢出集群。表决磁盘还用来传递命令,在集群的不同状态(启动、节点故障、节点重加入等)DMCSS 通过 Voting Disk 传递控制命令,通知节点执行相应命令。Voting Disk 必须存储在集群中所有节点都可以访问到的共享存储中,并且只支持裸设备。在一个集群环境中只能配置一个表决磁盘。集群中各实例启动时,通过访问 DCR 获取集群配置信息。被监控实例从 Voting Disk读取监控命令,并向 Voting Disk 写入命令响应以及自身心跳信息;DMCSS 也向 Voting Disk 写入自己的心跳信息,并从 Voting Disk 访问各被监控节点的运行情况,并将监控命令写入 Voting Disk,供被监控实例访问执行。
    (9)HeartBeat(心跳机制)
    DMCSS 的心跳机制是通过 Voting Disk 的 Disk Heartbeat。这种机制有最大时延,只有超过最大时延,才认为监测对象故障。
    (10)MAL 链路
    MAL 系统是达梦数据库基于 TCP 协议实现的一种内部通信机制,具有可靠、灵活、高效的特性。使用 DMASM 文件系统的 DMDSC 集群中存在两套 MAL 系统,DMASM 服务器之间配置一套 MAL 系统,dmserver 服务器之间配置一套 MAL 系统。一旦 MAL 链路出现异常,DMCSS 会进行裁定,并从集群中踢出一个节点,保证集群环境正常运行。
    (11)共享内存
    共享内存是一种快速、高效的进程间通信手段。所谓共享内存,就是同一块物理内存被映射到多个进程的地址空间,进程 A 可以即时看到进程 B 对共享内存的修改,反之亦然。DMASM 服务器进程和 DMASM 客户端进程之间通过共享内存方式共享 DMASM 文件到实际磁盘的映射关系。
    (12)VIP
    VIP(虚拟IP地址),是一个不与特定计算机或者计算机中的网络接口相连的IP地址。数据包被发送到这个 VIP 地址,但是所有的数据还是经过真实的网络接口。在集群环境中,应用通过 VIP 连接数据库服务器,实例故障后,把实例配置的 VIP 设置到其他活动节点(叫做 IP 漂移),这样应用可以不用修改配置,继续访问数据库服务。

  4. 使用说明
    支持定时器,但只有控制节点上配置的定时器生效。只支持脱机配置定时器,不支持联机配置。
    支持作业,但只有控制节点上支持执行作业
    不支持 HUGE 表
    不支持外部表
    不支持堆表
    不支持类型别名相关操作
    不支持 table 级别的 space limit 功能
    不支持全文索引、词库相关操作
    不支持安全版本
    不支持 DBMS_ALERT、DBMS_LOCK 包
    不支持数据复制
    不能与 MPP 集群混合使用
    不支持为表空间文件指定 mirror_path
    不支持闪回查询,不允许打开闪回功能

  5. 创建dmdba用户和dinstall用户组,安装数据库,安装目录为/dm8,配置文件存放目录为/dm8/data;注意不要初始化,只需安装软件即可。

  6. 对共享磁盘操作:
    (1)添加共享磁盘:两个节点使用一块共享磁盘。
    (2)在共享磁盘上裸设备划分(1个节点操作即可):
    输入 fdisk /dev/sdb
    依次输入 n p 1 回车 +100M 回车,完成第一块磁盘划分
    依次输入 n p 2 回车 +100M 回车,完成第二块磁盘划分
    依次输入 n p 3 回车 +4096M 回车,完成第三块磁盘划分,小于2048有可能会报错
    依次输入 n p 4 回车 回车 回车,完成第四块磁盘划分
    w保存
    (3) 编辑/etc/udev/rules.d/60-raw.rules 文件,如果没有,将其它目录下的进行拷贝,如下:(2个节点都需要)

    cp /usr/lib/udev/rules.d/60-raw.rules /etc/udev/rules.d/
    

    增加以下语句:

    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"
    

    (4)完成裸设备绑定:(2个节点都需要)

    udevadm control --reload-rules           //start_udev
    

    (5)重启服务:(2个节点都需要)

    systemctl restart systemd-udev-trigger.service
    

    (6)查看分区:(2个节点都需要)

    fdisk /dev/sdb -l
    

    (7)查看裸设备大小:如果查看不了,则重新启动服务器。(2个节点都需要)

    blockdev --getsize64 /dev/raw/raw1 
    
  7. 2个节点都需要配置 dmdcr_cfg.ini 配置文件,保存到/dm8/data/目录下面。后续 DMASMCMD工具执行 init 语句会使用到。

    DCR_N_GRP = 3	#集群环境包括多少个 group,取值范围 1~16
    DCR_VTD_PATH = /dev/raw/raw2	#Voting Disk 路径
    DCR_OGUID = 63635	#消息标识,dmcssm 登录 dmcss 消息校验用
    [GRP]
    DCR_GRP_TYPE = CSS	#组类型(CSS\ASM\DB)
    DCR_GRP_NAME = GRP_CSS	#组名,16 字节,配置文件内不可重复
    DCR_GRP_N_EP = 2	#组内节点个数 N,最大 16
    DCR_GRP_DSKCHK_CNT = 60	#磁盘心跳机制,容错时间,单位秒,缺省 60S,取值范围 5~600
    [GRP_CSS]
    DCR_EP_NAME = CSS0	#节点名,16 字节,配置文件内不可重复,DB 的节点名必须和 dm.ini 里的 INSTANCE_NAME 保持一致,ASM 的节点名必须和 dmmal.ini 里的 MAL_INST_NAME 一致同一类型节点的 EP_NAME 不能重复。
    DCR_EP_HOST = 192.168.20.120	#节点 IP(CSS/ASM 有效,表示登录 CSS/ASM 的 IP 地址) 对 DB 来说,是绑定 VIP 的网卡对应的物理 IP 地址CSS 中设置表示 DMCSSM 通过该 IP 连接 CSS;ASM 中设置表示 DB 通过该 IP 连接 ASM。
    DCR_EP_PORT = 9341	#节点 TCP 监听端口(CSS/ASM/DB 有效,对应登录 CSS/ASM/DB 的端口号),节点实例配置此参数,取值范围 1024~65534;发起连接端的端口在 1024~65535 之间随机分配特别对 DB 来说,DB 的 DCR_EP_PORT 与 dm.ini 中的 PORT_NUM 不一致时,DB 端口以 DCR_EP_PORT 为准。若要使用 VIP 功能,则不同服务器上配置的 DCR_EP_PORT 要相同。
    [GRP_CSS]
    DCR_EP_NAME = CSS1
    DCR_EP_HOST = 192.168.20.121
    DCR_EP_PORT = 9343
    [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
    DCR_EP_SHM_KEY = 93360	#共享内存标识,数值类型(ASM 有效,初始化共享内存的标识符),应为大于 04 字节整数。
    DCR_EP_SHM_SIZE = 10	#共享内存大小,单位 M,(ASM 有效,初始化共享内存大小),取值范围10~1024。
    DCR_EP_HOST = 192.168.20.120
    DCR_EP_PORT = 9349
    DCR_EP_ASM_LOAD_PATH = /dev/raw	#ASM 磁盘扫描路径,Linux 下一般为/dev/raw,文件模拟情况,必须是全路径,不能是相对路径。
    [GRP_ASM]
    DCR_EP_NAME = ASM1
    DCR_EP_SHM_KEY = 93361
    DCR_EP_SHM_SIZE = 10
    DCR_EP_HOST = 192.168.20.121
    DCR_EP_PORT = 9351
    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
    DCR_EP_SEQNO = 0	#组内序号,CSS/ASM 不能配置,自动分配DB 可以配置,0 ~ n_ep -1,组内不能重复,如不配置则自动分配。
    DCR_EP_PORT = 5236
    DCR_CHECK_PORT = 9741	#DCR 检查端口号。检查实例是否活动的时候用,各实例不能冲突。实例配 置 此 参 数 , 取 值 范 围 1024~65535 ; DCR 发 起 连 接 的 端 口 在1024~65534 之间随机分配。
    [GRP_DSC]
    DCR_EP_NAME = DSC1
    DCR_EP_SEQNO = 1
    DCR_EP_PORT = 5236
    DCR_CHECK_PORT = 9742
    
  8. 使用 DMASMCMD 工具初始化,一个节点初始化即可:
    进入数据库安装目录 /bin 目录下执行 ./dmasmcmd 依次执行

    create dcrdisk '/dev/raw/raw1' 'dcr'	#DCR 是 DM 集群注册表的简称,用于存储、维护集群配置的详细信息,整个集群环境共享 DCR 配置信息,包括 DMDSC、DMASM、DMCSS 资源,包括实例名、监听端口、集群中故障节点信息等。DCR 必须存储在集群中所有节点都可以访问到的共享存储中,并且只支持裸设备。在一个集群环境中只能配置一个 DCR 磁盘。
    create votedisk '/dev/raw/raw2' 'vote'	#表决磁盘记录了集群成员信息,DM 集群通过 Voting Disk 进行心跳检测,确定集群中节点的状态,判断节点是否出现故障。当集群中出现网络故障时,使用 Voting Disk来确定哪些 DMDSC 节点应该被踢出集群。表决磁盘还用来传递命令,在集群的不同状态(启动、节点故障、节点重加入等)DMCSS 通过 Voting Disk 传递控制命令,通知节点执行相应命令。Voting Disk 必须存储在集群中所有节点都可以访问到的共享存储中,并且只支持裸设备。在一个集群环境中只能配置一个表决磁盘。
    create asmdisk '/dev/raw/raw3' 'LOG0'	#存放日志文件
    create asmdisk '/dev/raw/raw4' 'DATA0'	#存放数据文件
    init dcrdisk '/dev/raw/raw1' from '/dm8/data/dmdcr_cfg.ini'identified by 'abcd'
    init votedisk '/dev/raw/raw2' from '/dm8/data/dmdcr_cfg.ini'
    

    可以启动 dmasmcmd 工具,依次输入以上命令,或者将命令写入 asmcmd.txt 文件,执行 dmasmcmd script_file=asmcmd.txt,只需在一台机器执行即可。用户没有指定脚本文件,则 dmasmcmd 进入交互模式运行,逐条解析、运行命令;用户指定脚本文件(比如 asmcmd.txt),则以行为单位读取文件内容,并依次执行,执行完成以后,自动退出 dmasmcmd 工具。脚本文件必须以“#asm script file”开头,否则认为是无效脚本文件;脚本中其它行以“#”表示注释;脚本文件大小不超过 1M。

  9. 准备 DMASM 的 MAL 配置文件(命名为 dmasvrmal.ini),使用 DMASM 的“ 所有 ”节点都要配置,内容完全一样,保存到/dm8/data 目录下:

    [MAL_INST1]
     MAL_INST_NAME = ASM0	#数据库实例名,与 dm.ini 的 INSTANCE_NAME 配置项保持一致,MAL 系统中数据库实例名要保持唯一。
     MAL_HOST = 192.168.20.120	#MAL IP 地址,使用 MAL_HOST + MAL_PORT 创建 MAL 链路
     MAL_PORT = 7236	#MAL 监听端口,用于数据守护、DSC、MPP 等环境中各节点实例之间MAL链路配置,监听端端口配置此参数,范围1024~65534,发起连接端的端口在 1024~65535 之间随机分配。
    [MAL_INST2]
     MAL_INST_NAME = ASM1
     MAL_HOST = 192.168.20.121
     MAL_PORT = 7237
    
  10. 2个节点需要配置 dmdcr.ini 配置文件,保存到/dm8/data 目录下面:
    DMASM 的2个节点分别配置 dmdcr.ini,dmdcr_path 相同,dmasvrmal.ini 文件内容也相同,dmdcr_seqo 分别为 0 和 1。
    节点 192.168.20.120 配置如下:

    DMASM 的两个节点分别配置 dmdcr.ini,dmdcr_path 相同,dmasvrmal.ini 文
    件内容也相同,dmdcr_seqo 分别为 01。
    节点 192.168.20.120:
    DMDCR_PATH = /dev/raw/raw1
    DMDCR_MAL_PATH =/dm8/data/dmasvrmal.ini 	#dmasmsvr 使用的 MAL 配置文件路径
    DMDCR_SEQNO = 0
    #ASM 重启参数,命令行方式启动
    DMDCR_ASM_RESTART_INTERVAL = 0
    DMDCR_ASM_STARTUP_CMD = /dm8/bin/dmasmsvr dcr_ini=/dm8/data/dmdcr.ini
    #DB 重启参数,命令行方式启动
    DMDCR_DB_RESTART_INTERVAL = 0
    DMDCR_DB_STARTUP_CMD = /dm8/bin/dmserver path=/dm8/data/dsc0_config/dm.ini dcr_ini=/dm8/data/dmdcr.ini	
    

    节点 192.168.20.121配置如下:

    DMDCR_PATH = /dev/raw/raw1
    DMDCR_MAL_PATH =/dm8/data/dmasvrmal.ini 	#dmasmsvr 使用的 MAL 配置文件路径
    DMDCR_SEQNO = 1
    #ASM 重启参数,命令行方式启动
    DMDCR_ASM_RESTART_INTERVAL = 0
    DMDCR_ASM_STARTUP_CMD = /dm8/bin/dmasmsvr dcr_ini=/dm8/data/dmdcr.ini
    #DB 重启参数,命令行方式启动
    DMDCR_DB_RESTART_INTERVAL = 0
    DMDCR_DB_STARTUP_CMD =/dm8/bin/dmserver path=/dm8/data/dsc1_config/dm.ini dcr_ini=/dm8/data/dmdcr.ini
    
  11. 启动 DMCSS、DMASM 服务程序:
    在2节点先后分别启动 dmcss、dmasmsvr 程序。

    ./dmcss DCR_INI=/dm8/data/dmdcr.ini
    
    ./dmasmsvr DCR_INI=/dm8/data/dmdcr.ini
    
  12. 使用 dmasmtool 工具创建 DMASM 磁盘组:
    节点 192.168.20.120启动 dmasmtool 工具:

    ./dmasmtool DCR_INI=/dm8/data/dmdcr.ini
    

    输入下列语句创建 DMASM 磁盘组:

    #创建日志磁盘组
    create diskgroup 'DMLOG' asmdisk '/dev/raw/raw3' 
    #创建数据磁盘组
    create diskgroup 'DMDATA' asmdisk '/dev/raw/raw4' 
    
  13. 一个节点配置 dminit.ini 配置文件,保存到/dm8/data 目录:
    节点 192.168.20.120配置并启动:

    db_name = dsc	#初始化数据库名称
    system_path = +DMDATA/data	#初始化数据库存放的路径
    system = +DMDATA/data/dsc/system.dbf	#SYSTEM 表空间路径
    system_size = 128	#SYSTEM 表空间大小
    roll = +DMDATA/data/dsc/roll.dbf	#ROLL 表空间路径
    roll_size = 128	#ROLL 表空间大小
    main = +DMDATA/data/dsc/main.dbf	#MAIN 表空间路径
    main_size = 128	#MAIN 表空间大小
    ctl_path = +DMDATA/data/dsc/dm.ctl	#DM.CTL 控制文件路径
    ctl_size = 8	#DM.CTL 控制文件大小
    log_size = 256	#日志文件大小
    dcr_path = /dev/raw/raw1 #dcr 磁盘路径,目前不支持 asm,只能是裸设备
    dcr_seqno = 0	#连接 DMASM 节点节点号
    auto_overwrite = 1	#文件存在时的处理方式
    [DSC0] #inst_name 跟 dmdcr_cfg.ini 中 DB 类型 group 中 DCR_EP_NAME 对应
    config_path = /dm8/data/dsc0_config   #路径要有创建权限
    port_num = 5236	#节点服务器监听通讯端口号,服务器配置此参数,有效值范围(1024~65534),发起连接端的端口在 1024~65535之间随机分配
    mal_host = 192.168.20.120	#节点 MAL 系统使用 IP
    mal_port = 9340	#MAL 监听端口,用于数据守护、DSC、MPP 等环境中各节 点实例之间 MAL 链路配置,监听端端口配置此参数,范围1024~65534,发起连接端的端口在 1024~65535 之间随机分配
    log_path = +DMLOG/log/dsc0_log01.log	#日志文件路径
    log_path = +DMLOG/log/dsc0_log02.log	#日志文件路径
    [DSC1] #inst_name 跟 dmdcr_cfg.ini 中 DB 类型 group 中 DCR_EP_NAME 对应
    config_path = /dm8/data/dsc1_config   #路径要有创建权限
    port_num = 5237
    mal_host = 192.168.20.121
    mal_port = 9341
    log_path = +DMLOG/log/dsc1_log01.log
    log_path = +DMLOG/log/dsc1_log02.log
    
  14. 使用 dminit 初始化 DB 环境:
    选择一个节点(192.168.20.120),启动 dminit工具初始化数据库:

    ./dminit control=/dm8/data/dminit.ini
    

    dminit执行完成后,会在 config_path目录(/dm8/data/dsc0_config和/dm8/data/dsc1_config)下生成配置文件 dm.ini和 dmmal.ini。

  15. 启动数据库服务器:
    将 (192.168.20.120) 机器/dm8/data/dsc1_config 目录拷贝到 (192.168.20.121)机器相同目录下,再分别在2个节点启动 dmserver 即可完成 DMDSC 集群搭建。
    如果 DMCSS 配置有自动拉起 dmserver 的功能,可以等待 DMCSS 自动拉起实例,不
    需要手动启动。
    如果需要手动启动,可参考下面的操作步骤:
    第一个节点:

    ./dmserver /dm8/data/dsc0_config/dm.ini dcr_ini=/dm8/data/dmdcr.ini
    

    第二个节点:

    ./dmserver /dm8/data/dsc1_config/dm.ini dcr_ini=/dm8/data/dmdcr.ini
    
  16. 配置监听器:
    配置 dmcssm.ini 文件:

    #和 dmdcr_cfg.ini 中的 DCR_OGUID 保持一致
    CSSM_OGUID = 63635
    #配置所有 CSS 的连接信息,
    #和 dmdcr_cfg.ini 中 CSS 配置项的 DCR_EP_HOST 和 DCR_EP_PORT 保持一致
    CSSM_CSS_IP = 192.168.20.120:9341
    CSSM_CSS_IP = 192.168.20.121:9343
    CSSM_LOG_PATH =/dm8/log #监视器日志文件存放路径
    CSSM_LOG_FILE_SIZE = 32 #每个日志文件最大 32M
    CSSM_LOG_SPACE_LIMIT = 0 #不限定日志文件总占用空间
    
  17. 启动 dmcssm 监视器

    ./dmcssm INI_PATH=/dm8/data/dmcssm.ini
    

    如下图成功即可:
    DM8共享存储集群搭建 2 节点 DMDSC(DMASM)_第2张图片
    或者使用SQL查看:

    select * from v$dsc_ep_info;
    

你可能感兴趣的:(DM8)