DMDSC集群搭建实验及动态扩展

一、两节点DMDSC(DMASM)

  1. 环境准备

  本地创建两台虚拟机如下

机器

初始状态

操作系统

双网卡配置(内网网卡)

192.168.43.133

装有DM软件无实例

Centos 7

10.0.2.101

192.168.43.134

装有DM软件无实例

Centos 7

10.0.2.102

    2.挂载共享存储

VM虚拟机上添加创建磁盘DMASM.vmdk,选择192.168.43.133在开机之前添加磁盘

 

高级设置勾选独立和永久模式选项

192.168.43.134机器上添加已创建出来的虚拟磁盘即可.

在两台虚拟机实际目录中找到对应的XXXX.vmx文件添加disk.locking=”FALSE“参数以避免后启动的虚拟机启动失败。

  3.在共享磁盘上裸设备划分

    I.运行fdisk  /dev/sdb 命令进行磁盘分区(单节点上执行)

   II.编辑UDEV规则 /etc/udev/rules.d/60-raw.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="root", GROUP="root", MODE="660"

      III.重新加载udev规则

Centos 7运行以下命令加载UDEV规则

/sbin/udevadm trigger --type=devices --action=change

/sbin/udevadm control --reload-rules

blockdev --getsize64 /dev/raw/raw1 #命令可查裸设备大小

  4.配置dmdcr_cfg.ini(单节点)

创建目录/home/dmdba/dmdbms/DSC用于存放DSC集群配置文件

mkdir -p /home/dmdba/dmdbms/DSC

      I.配置dmdcr_cfg.ini并使用DMASMCMD工具初始化创建磁盘组(节点一执行即可)

DCR_N_GRP           = 3

DCR_VTD_PATH        = /dev/raw/raw2

DCR_OGUID       = 63635

[GRP]

DCR_GRP_TYPE        = CSS

DCR_GRP_NAME        = GRP_CSS

DCR_GRP_N_EP        = 2

DCR_GRP_DSKCHK_CNT  = 60

[GRP_CSS]

DCR_EP_NAME         = CSS0

DCR_EP_HOST         = 10.0.2.101

DCR_EP_PORT         = 9341

[GRP_CSS]

DCR_EP_NAME         = CSS1

DCR_EP_HOST         = 10.0.2.102

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

DCR_EP_SHM_SIZE     = 20

DCR_EP_HOST         = 10.0.2.101

DCR_EP_PORT         = 9349

DCR_EP_ASM_LOAD_PATH = /dev/raw

[GRP_ASM]

DCR_EP_NAME         = ASM1

DCR_EP_SHM_KEY      = 93361

DCR_EP_SHM_SIZE     = 20

DCR_EP_HOST         = 10.0.2.102

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

DCR_EP_PORT        = 5236

DCR_CHECK_PORT     = 9741

[GRP_DSC]

DCR_EP_NAME        = DSC1

DCR_EP_SEQNO       = 1

DCR_EP_PORT        = 5237

DCR_CHECK_PORT     = 9742

/home/dmdba/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 '/home/dmdba/dmdbms/DSC/dmdcr_cfg.ini' identified by 'abcd'

ASM>init votedisk '/dev/raw/raw2' from '/home/dmdba/dmdbms/DSC/dmdcr_cfg.ini'

  5.配置dmasvrmal.ini (所有节点配置)

[MAL_INST1]

MAL_INST_NAME              = ASM0

MAL_HOST                    = 10.0.2.101

MAL_PORT                    = 7236

[MAL_INST2]

MAL_INST_NAME              = ASM1

MAL_HOST                    = 10.0.2.102

MAL_PORT                    = 7237

   6.配置dmdcr.ini(所有节点配置)

DMDCR_PATH     = /dev/raw/raw1

DMDCR_MAL_PATH =/home/dmdba/dmdbms/DSC/dmasvrmal.ini  #dmasmsvr使用的MAL配置文件路径

DMDCR_SEQNO   = 0  #0表示序号

#ASM重启参数,命令行方式启动

DMDCR_ASM_RESTART_INTERVAL = 0

DMDCR_ASM_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmasmsvr dcr_ini=/home/dmdba/dmdbms/DSC/dmdcr.ini

#DB重启参数,命令行方式启动

DMDCR_DB_RESTART_INTERVAL = 0

DMDCR_DB_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmserver  path=/home/dmdba/dmdbms/DSC0/dm.ini dcr_ini=/home/dmdba/dmdbms/DSC/dmdcr.ini

注意红色的地方根据节点具体实际情况修改调整

  7.启动DMCSS、DMASM服务程序(所有节点执行)

 ./dmcss DCR_INI=/home/dmdba/dmdbms/DSC/dmdcr.ini

./dmasmsvr DCR_INI=/home/dmdba/dmdbms/DSC/dmdcr.ini

  8.使用dmasmtool工具创建DMASM磁盘组(单节点)

./dmasmtool DCR_INI=/home/dmdba/dmdbms/DSC/dmdcr.ini

#创建日志磁盘组

create diskgroup 'DMLOG' asmdisk'/dev/raw/raw3'

#创建数据磁盘组

create diskgroup 'DMDATA' asmdisk '/dev/raw/raw4'

  9.配置dminit.ini并使用dminit初始化DB环境(单节点执行)

db_name = dsc

system_path = +DMDATA/data

system= +DMDATA/data/dsc/system.dbf

system_size = 128

roll= +DMDATA/data/dsc/roll.dbf

roll_size = 128

main= +DMDATA/data/dsc/main.dbf

main_size = 128

ctl_path = +DMDATA/data/dsc/dm.ctl

ctl_size = 8

log_size = 256

dcr_path = /dev/raw/raw1#dcr磁盘路径,目前不支持asm,只能是裸设备

dcr_seqno = 0

auto_overwrite=1

[DSC0]#inst_name跟dmdcr_cfg.ini中DB类型group中DCR_EP_NAME对应

config_path = /home/dmdba/dmdbms/DSC/DSC0

port_num = 5236

mal_host = 10.0.2.101

mal_port = 9340

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 = /home/dmdba/dmdbms/DSC/DSC1

port_num = 5237

mal_host = 10.0.2.102

mal_port = 9341

log_path = +DMLOG/log/dsc1_log01.log

log_path = +DMLOG/log/dsc1_log02.log

./dminit control=/home/dmdba/dmdbms/DSC/dminit.ini

 10.启动数据库服务器

将10.0.2.101机器/home/dmdba/dmdbms/DSC/dsc1目录拷贝到10.0.2.102机器相同目录下,再分别启动dmserver即可完成DMDSC集群搭建

两个节点手动启dmserver

./dmserver /home/dmdba/dmdbms/DSC/DSC0/dm.ini dcr_ini=/home/dmdba/dmdbms/DSC/dmdcr.ini

./dmserver /home/dmdba/dmdbms/DSC/DSC1/dm.ini dcr_ini=/home/dmdba/dmdbms/DSC/dmdcr.ini

至此,DMDSC两节点集群搭建完毕,状态显示如下:

二、配置服务名(dm_svc.conf)

       连接服务名配置dm_svc.conf由于是在客户端起作用的,因此新建一台虚拟机(192.168.43.135)作为客户端进行配置

vi  /etc/dm_svc.conf

dmdsc_svc=(192.168.43.133:5236,192.168.43.134:5237)

SWITCH_TIME=(10000)

SWITCH_INTERVAL=(1000)

配置后重启机器生效,连接情况如下

三、验证所有节点数据可查

   I.连接DSC0节点并做如下操作

./disql SYSDBA/SYSDBA@192.168.43.133:5236

SQL>create tablespace TS_DMOA datafile '+DMDATA/TS_DMOA.dbf' size 64;

SQL>create user DMOA identified by dameng_oa default tablespace TS_DMOA;

create table DMOA.users

(

  userid INT not null, //非空 主键

  username VARCHAR(18) not null, //非空 用户名

  phone INT not null, //非空 电话

  address VARCHAR(256) not null, //非空 地址

  primary key(userid)

 );

SQL> insert into DMOA.users values (1,'xiaoshu',18999999,'sashdadshakjdsdas');

SQL> select * from DMOA.users;

  II .连接DSC1节点进行测试是否能查到上面插入的数据

./disql DMOA/dameng_oa@192.168.43.134:5237

SQL> select * from users;

结果如下:

四、体验故障自动重连

按照如下步骤进行试验

  1. 通过服务名连接./disql SYSDBA/SYSDBA@dmdsc_svc
  2. 确认连接哪个DB实例SQL> select name from v$instance;
  3. 关闭DSC0实例,或者将节点0所在的这台主机关机
  4. 等待几秒后,再次执行SQL> select name from v$instance; 提示所在实例为DSC1可以看到会话已经切换到DSC1

试验结果如下图:

五、动态添加第三节点DSC2

  1.  环境准备

机器

初始状态

操作系统

双网卡配置(内网网卡)

192.168.43.133

装有DM软件无实例

Centos 7

10.0.2.101

192.168.43.134

装有DM软件无实例

Centos 7

10.0.2.102

192.168.43.135

装有DM软件无实例

Centos 7

10.0.2.103

   2. 导出dmdcr_cfg_bak.ini

在10.0.2.101机器上使用DMASMCMD工具export出备份dmdcr_cfg_bak.in

./dmasmcmd

ASM> export dcrdisk '/dev/raw/raw1' to '/home/dmdba/dmdbms/DSC/dmdcr_cfg_bak.ini'

  3. 为新增节点准备日志文件

使用DIsql登录任意一个节点执行添加日志文件操作:至少两个日志文件,路径必须是ASM文件格式,大小可以参考其他两个活动节点

./disql SYSDBA/SYSDBA@192.168.43.133:5236

SQL>alter  database add  node  logfile  '+DMLOG/log/DSC2_log01.log'  size  256, '+DMLOG/log/DSC2_log02.log' size 256;

使用dmctlcvt工具将dm.ctl转换为文本文件dmctl.txt,查看dmctl.txt,新增节点的日志文件信息已经添加进dm.ctl

./dmctlcvt   TYPE=1   SRC=+DMDATA/data/dsc/dm.ctl DEST=/home/dmdba/dmdbms/DSC/dmctl.txt DCR_INI=/home/dmdba/dmdbms/DSC/dmdcr.ini

使用dmasmtool工具登录ASM文件系统,也可以看到新增的节点日志文件

./dmasmtool DCR_INI=/home/dmdba/dmdbms/DSC/dmdcr.ini

ASM>ls +DMLOG/log

   4. 为新增节点准备config_path

将10.0.2.101机器/home/dmdba/dmdbms/DSC/DSC0 目录拷贝到10.0.2.103机器相同目录下,修改名字为/home/dmdba/dmdbms/DSC/DSC2。修改DSC2文件夹下的配置文件:

1)修改dm.ini

CONFIG_PATH= /home/dmdba/dmdbms/DSC/DSC2

instance_name= DSC2

2)如果打开了归档参数,修改dmarch.ini

  5.新增节点配置dmdcr.ini

DMDCR_PATH     = /dev/raw/raw1

DMDCR_MAL_PATH =/home/dmdba/dmdbms/DSC/dmasvrmal.ini  #dmasmsvr使用的MAL配置文件路径

DMDCR_SEQNO   = 2

#ASM重启参数,命令行方式启动

DMDCR_ASM_RESTART_INTERVAL = 0

DMDCR_ASM_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmasmsvr dcr_ini=/home/dmdba/dmdbms/DSC/dmdcr.ini

#DB重启参数,命令行方式启动

DMDCR_DB_RESTART_INTERVAL = 0

DMDCR_DB_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmserver  path=/home/dmdba/dmdbms/DSC/DSC2/dm.ini dcr_ini=/home/dmdba/dmdbms/DSC/dmdcr.ini

   6.修改所有节点dmasvrmal.ini

新增如下参数

[MAL_INST3]

MAL_INST_NAME= ASM2

MAL_HOST= 10.0.2.103

MAL_PORT= 7238

   7.修改所有节点dmmal.ini

新增如下参数

[mal_inst2]

mal_inst_name= DSC2

mal_host= 10.0.2.103

mal_port= 9342

  8.修改dmdcr_cfg_bak.ini

DCR_EP_PORT        = 9343

[GRP_CSS]

DCR_EP_NAME        = CSS2

DCR_EP_HOST        = 10.0.2.103

DCR_EP_PORT        = 9344

[GRP_ASM]

DCR_EP_NAME        = ASM0

DCR_EP_SHM_KEY     = 93360

DCR_EP_SHM_SIZE    = 20

DCR_EP_HOST        = 10.0.2.101

DCR_EP_PORT        = 9349

DCR_EP_ASM_LOAD_PATH  = /dev/raw

[GRP_ASM]

DCR_EP_NAME        = ASM1

DCR_EP_SHM_KEY     = 93361

DCR_EP_SHM_SIZE    = 20

DCR_EP_HOST        = 10.0.2.102

DCR_EP_PORT        = 9351

DCR_EP_ASM_LOAD_PATH  = /dev/raw

[GRP_ASM]

DCR_EP_NAME        = ASM2

DCR_EP_SHM_KEY     = 93362

DCR_EP_SHM_SIZE    = 20

DCR_EP_HOST        = 10.0.2.103

DCR_EP_PORT        = 9352

DCR_EP_ASM_LOAD_PATH  = /dev/raw

[GRP_DSC]

DCR_EP_NAME        = DSC0

DCR_EP_SEQNO       = 0

DCR_EP_PORT        = 5236

DCR_CHECK_PORT     = 9741

[GRP_DSC]

DCR_EP_NAME        = DSC1

DCR_EP_SEQNO       = 1

DCR_EP_PORT        = 5237

DCR_CHECK_PORT     = 9742

[GRP_DSC]

DCR_EP_NAME        = DSC2

DCR_EP_SEQNO       = 2

DCR_EP_PORT        = 5238

DCR_CHECK_PORT     = 9743

  9.使用DMASMCMD工具将新增节点信息

./dmasmcmd

extend dcrdisk '/dev/raw/raw1' from '/home/dmdba/dmdbms/DSC/dmdcr_cfg_bak.ini'

屏幕输出如下

  10. 在dmcssm控制台执行扩展节点命令

     extend node

11.启动第三节点dmcss、dmasmsvr、dmserver服务

./dmcss DCR_INI=/home/dmdba/dmdbms/DSC/dmdcr.ini

./dmasmsvr DCR_INI=/home/dmdba/dmdbms/DSC/dmdcr.ini

./dmserver /home/dmdba/dmdbms/DSC/DSC2/dm.ini dcr_ini=/home/dmdba/dmdbms/DSC/dmdcr.ini

在dmcssm控制台可以查看集群状态信息如下

更多资讯请上达梦技术社区了解: https://eco.dameng.com

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在本地自己的操作系统上,完全模拟生产环境,让学员跟着视频一步一步搭建一套在RHEL7操作系统上面的oracle19c的rac环境。同时学员还会学会DNS服务器,DNS客户端,NTP服务器,NTP客户端等操作系统知识。让学员在短时间内,oracle和操作系统知识,有一定的提升。让学员可以独自轻松安装一套oracle rac环境。一课程主题 模拟生产环境,用多路径共享存储,用虚拟软件安装一套RHEL7.5+oracle19c+rac+打补丁二课程特色 完成模拟生产环境,用openfiler软件模拟生产惠普的3par存储,用2个虚拟网卡模拟数据库服务器的2个HBA卡。课程以实践为主,从头到尾一步一步教学员怎样操作,实践性强模拟生产需求,完全可以把这套环境拿到生产环境安装三课程内容 1.课程结束成果演示    1.1 用workstation,安装一套rhel7+oracle19c+rac+multipath+共享存储+DNS服务器+DNS客户端+NTP服务器+NTP客户端的生产环境    1.2 怎样打oracle19c的rac补丁(包括GI补丁,oracle补丁,数据库补丁,OJVM补丁,bug补丁)2.安装openfiler软件,模拟共享存储+配置多路径访问    2.1安装openfiler软件   2.2配置openfiler软件(配置2个虚拟网卡,模拟服务器的2个HBA卡)   2.3创建ocr磁盘   2.4创建mgmt磁盘   2.5创建数据文件磁盘   2.6创建归档日志磁盘3.安装2台数据库服务器    3.1安装2台数据库服务器RHEL7.5   3.2配置服务器双网卡绑定+配置服务器心跳线4.安装多路径软件识别共享存储中的磁盘     4.1安装服务器本地yum源    4.2安装iscsi软件,配置多路径配置文件,识别共享存储中的磁盘    4.3识别ocr磁盘    4.4识别mgmt磁盘    4.5识别数据文件磁盘    4.6识别归档日志磁盘5.oracle19c的rac环境系统参数官方说明     5.1如何配置oracle19c的rac的系统参数(我们参考官方说明)    5.2oracle19c+rac环境Best Practices 官方说明文档6.安装oracle19c+rac之前的准备工作     6.1修改/etc/hosts文件    6.2配置DNS服务器+DNS客户端+NTP服务器+NTP客户端    6.3创建用户和组    6.4创建目录    6.5修改用户环境变量    6.6安装相关软件包    6.7配置ssh互信    6.9禁用服务器透明大页7.安装oracle+19c+rac软件    7.1安装GI软件   7.2创建ASM磁盘,主要是数据文件磁盘和归档日志磁盘   7.3安装数据库软件   7.4创建数据库实例   7.5日常常用维护集群命令(启停数据库,启停集群,查看监听,教同学们怎样不死记命令,而且命令还正确)8.打补丁   8.1打GI和ORACLE的操作系统补丁  8.2打OJVM补丁  8.3打ORA600的bug补丁9.课程总结和成果演示  9.1课程总结和成果演示 四学习必要工具 安装workstation软件  官网下载openfiler,rhel7.5软件下载oracle软件(包括19.3的rac安装包,19.4的补丁)以上软件我都已经在视频里面做了下载地址说明五课程纠错1)rac的私有ip应该是不同的网段,我在视频中设置错误。Ensure all private Ethernet interfaces are set to different subnets on each node. If different subnets are not used and connectivity is lost, this can cause a node reboot within the cluster2)配置好multipath,以及多路径的别名后,还要增加如下配置文件。[root@hellorac1 rules.d]# cat /etc/udev/rules.d/99-persistent.rulesENV==data, OWNER:=grid, GROUP:=asmadmin, MODE:=660上面的配置文件增加成功后,运行如下命令:#udevadm control --reload-rules#/sbin/udevadm trigger --type=devices --action=change执行完成之后,会发现/dev/dm*相应的磁盘权限变成grid.asmadmin. 视频中只运行了udevadm control --reload-rules。3)安装GI部分1和部分2,先看部分2,再看部分1.特此纠正上面的3个错误。谢谢大家的支持和厚爱。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值