配置实例
./dminit path=/dmdata/data PORT_NUM=5236 INSTANCE_NAME=DM01
./dminit path=/dmdata/data PORT_NUM=5236 INSTANCE_NAME=DM02
在本机创建4个共享磁盘:
vmware-vdiskmanager.exe -c -s 1G -a lslogic -t 2 "F:\iso\Sharedisk\sdc.vmdk"
vmware-vdiskmanager.exe -c -s 1G -a lslogic -t 2 "F:\iso\Sharedisk\sdd.vmdk"
vmware-vdiskmanager.exe -c -s 5G -a lslogic -t 2 "F:\iso\Sharedisk\sde.vmdk"
vmware-vdiskmanager.exe -c -s 5G -a lslogic -t 2 "F:\iso\Sharedisk\sdf.vmdk"
在两台机器添加共享磁盘:
编辑此虚拟机-----添加----硬盘-----使用现有虚拟磁盘----选择本机现有磁盘文件—并设置该硬盘高级选项独立永久
修改虚拟机的.vmx文件 盘号与机器显示一致
(生成源文件已包含present、mode、filename三个参数值,这里主要需要添加如下内容:)
scsi0:1.SharedBus = "Virtual"
scsi0:2.SharedBus = "Virtual"
scsi0:3.SharedBus = "Virtual"
scsi0:4.SharedBus = "Virtual"
disk.locking = "FALSE"
disk.EnableUUID = "TRUE"
lsblk查看磁盘是否正常
lsblk
root用户下,两台机器都需要设置
149:
/usr/lib/udev/scsi_id -g -u /dev/sdb
sdb:36000c2935337af0a4e4f00f6809992e5
/usr/lib/udev/scsi_id -g -u /dev/sdc
sdc:36000c29f2f486a5039a4c34c26bad31a
/usr/lib/udev/scsi_id -g -u /dev/sdd
sdd:36000c29b23fa5410439b3783df88707b
/usr/lib/udev/scsi_id -g -u /dev/sde
sde:36000c29321fb8cf633d8a7538154f361
152:
/usr/lib/udev/scsi_id -g -u /dev/sdb
sdb:36000c2935337af0a4e4f00f6809992e5
/usr/lib/udev/scsi_id -g -u /dev/sdc
sdc:36000c29f2f486a5039a4c34c26bad31a
/usr/lib/udev/scsi_id -g -u /dev/sdd
sdd:36000c29b23fa5410439b3783df88707b
/usr/lib/udev/scsi_id -g -u /dev/sde
sde:36000c29321fb8cf633d8a7538154f361
创建磁盘链接:
root用户下 vi /etc/udev/rules.d/66-dmdevices.rules (每一个KERNEL是一行,中间不要有空行)
** DCR磁盘配置,且在软链接之前创建文件夹 /dev_DSC2
KERNEL=="sd*",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c2935337af0a4e4f00f6809992e5",SYMLINK+="DCR", OWNER="dmdba",
GROUP="dmgroup", MODE="660", RUN+="/bin/sh -c 'chown dmdba:dmgroup /dev/$name;mkdir -p /dev_DSC2; ln -s /dev/DCR /dev_DSC2/DCR'"
** VOTE 磁盘配置
KERNEL=="sd*",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c29f2f486a5039a4c34c26bad31a",SYMLINK+="VOTE", OWNER="dmdba",
GROUP="dmgroup", MODE="660", RUN+="/bin/sh -c 'chown dmdba:dmgroup /dev/$name; ln -s /dev/VOTE /dev_DSC2/VOTE'"
** DMDATA 磁盘配置
KERNEL=="sd*",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c29b23fa5410439b3783df88707b",SYMLINK+="DMDATA", OWNER="dmdba",
GROUP="dmgroup", MODE="660", RUN+="/bin/sh -c 'chown dmdba:dmgroup /dev/$name; ln -s /dev/DMDATA /dev_DSC2/DMDATA'"
** DMLOG 磁盘配置,且在搭建完成之后,将权限直接赋予 dmdba组的dmdba用户
KERNEL=="sd*",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c29321fb8cf633d8a7538154f361",SYMLINK+="DMLOG", OWNER="dmdba",
GROUP="dmgroup", MODE="660", RUN+="/bin/sh -c 'chown dmdba:dmgroup /dev/$name; ln -s /dev/DMLOG /dev_DSC2/DMLOG ; chown -R dmdba:dmgroup /dev_DSC2'"
两台机器均执行完之后,两个都重启 systemd-udev-trigger服务
systemctl restart systemd-udev-trigger
搭建前查看磁盘权限信息:root用户
ls -lth /dev_DSC2/
配置dmdcr_cfg.ini文件(两台机器都需要)
第一台机器:
*root下创建目录/home/dmdba/dmdbms/data/DSC01/ 并授予权限
mkdir -p /home/dmdba/dmdbms/data/DSC01/
chown -R dmdba:dmgroup /home/dmdba/dmdbms/data/DSC01/
chmod -R 755 /home/dmdba/dmdbms/data/DSC01/
------------------------
第二台机器:
*root下创建目录/home/dmdba/dmdbms/data/DSC02/ 并授予权限
mkdir -p /home/dmdba/dmdbms/data/DSC02/
chown -R dmdba:dmgroup /home/dmdba/dmdbms/data/DSC02/
chmod -R 755 /home/dmdba/dmdbms/data/DSC02/
------------------------
*dmdba下vi文件dmdcr_cfg.ini
vi /home/dmdba/dmdbms/data/DSC01/dmdcr_cfg.ini
vi /home/dmdba/dmdbms/data/DSC02/dmdcr_cfg.ini
DCR_N_GRP = 3 #集群环境有多少个GROUP
DCR_VTD_PATH = /dev_DSC2/VOTE #规划为vote磁盘
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 #CSS节点名
DCR_EP_HOST = 192.168.109.149 #心跳地址
DCR_EP_PORT = 9341 #CSS端口
[GRP_CSS]
DCR_EP_NAME = CSS1 #CSS节点名
DCR_EP_HOST = 192.168.109.152 #心跳地址
DCR_EP_PORT = 9343 #CSS端口
[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 = 20 #共享内存大小
DCR_EP_HOST = 192.168.109.149 #心跳地址
DCR_EP_PORT = 9349 #ASM 端口
DCR_EP_ASM_LOAD_PATH = /dev_DSC2
[GRP_ASM]
DCR_EP_NAME = ASM1 #ASM节点名,和 dmasvrmal 的 MAL_INST_NAME 一致
DCR_EP_SHM_KEY = 93361 #共享内存标识
DCR_EP_SHM_SIZE = 20 #共享内存大小
DCR_EP_HOST = 192.168.109.152 #心跳地址
DCR_EP_PORT = 9351 #ASM 端口
DCR_EP_ASM_LOAD_PATH = /dev_DSC2
[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 = DSC01 #实例名
DCR_EP_SEQNO = 0 #组内序号,不能重复
DCR_EP_PORT = 5236 #实例端口,和 dm.ini 的 PORT_NUM 一致
##DCR_CHECK_PORT = 9741 #DCR 检查端口
[GRP_DSC]
DCR_EP_NAME = DSC02 #实例名
DCR_EP_SEQNO = 1 #组内序号,不能重复
DCR_EP_PORT = 5236 #实例端口,和 dm.ini 的 PORT_NUM 一致
##DCR_CHECK_PORT = 9742 #DCR 检查端口
在149节点(第一个节点)上创建asmcmd.txt脚本文件(创建ASM磁盘) dmdba用户
vi /home/dmdba/dmdbms/bin/asmcmd.txt
------------------脚本内容-------------------
#asm script file
##创建一个分布式集群资源磁盘(Distributed Cluster Resource disk),挂载点为/dev/dm/asm-dmdcr,别名为dcr
create dcrdisk '/dev_DSC2/DCR' 'DCR'
create votedisk '/dev_DSC2/VOTE' 'VOTE'
create asmdisk '/dev_DSC2/DMDATA' 'DMDATA'
create asmdisk '/dev_DSC2/DMLOG' 'DMLOG'
#初始化/dev_DSC2/DCR分布式集群资源磁盘,使用配置文件dmdcr_cfg.ini进行设置
init dcrdisk '/dev_DSC2/DCR' from '/home/dmdba/dmdbms/data/DSC01/dmdcr_cfg.ini'identified by 'SYSDBA'
init votedisk '/dev_DSC2/VOTE' from '/home/dmdba/dmdbms/data/DSC01/dmdcr_cfg.ini'
-------------------end----------------------
执行该脚本: 在bin目录下
./dmasmcmd script_file=asmcmd.txt
-------------------end----------------------
*两节点(149、152)文件内容一样
vi /home/dmdba/dmdbms/data/DSC01/dmasvrmal.ini
vi /home/dmdba/dmdbms/data/DSC02/dmasvrmal.ini
-----------文件内容---------------------------
[MAL_INST1]
MAL_INST_NAME = ASM0
MAL_HOST = 192.168.109.149
MAL_PORT = 7236
[MAL_INST2]
MAL_INST_NAME = ASM1
MAL_HOST = 192.168.109.152
MAL_PORT = 7237
----------------end---------------------------
1:149节点
vi /home/dmdba/dmdbms/data/DSC01/dmdcr.ini
------------文件内容-------------------------
DMDCR_PATH = /dev_DSC2/DCR
DMDCR_MAL_PATH =/home/dmdba/dmdbms/data/DSC01/dmasvrmal.ini #dmasmsvr 使用的 MAL 配置文件路径
DMDCR_SEQNO = 0
#CSS 认定 ASM 故障重启的时间, 采用命令行方式启动
DMDCR_ASM_RESTART_INTERVAL = 10
DMDCR_ASM_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmasmsvr dcr_ini=/home/dmdba/dmdbms/data/DSC01/dmdcr.ini
#CSS 认定 DSC 故障重启的时间, 采用命令行方式启动
DMDCR_DB_RESTART_INTERVAL = 0 #先配置不自动拉起
DMDCR_DB_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmserver path=/home/dmdba/dmdbms/data/DSC01/DSC01_conf/dm.ini dcr_ini=/home/dmdba/dmdbms/data/DSC01/dmdcr.ini
--------------end----------------------------
2:152节点
vi /home/dmdba/dmdbms/data/DSC02/dmdcr.ini
------------文件内容-------------------------
DMDCR_PATH = /dev_DSC2/DCR
DMDCR_MAL_PATH =/home/dmdba/dmdbms/data/DSC02/dmasvrmal.ini #dmasmsvr 使用的 MAL 配置文件路径
DMDCR_SEQNO = 1
#CSS 认定 ASM 故障重启的时间, 采用命令行方式启动
DMDCR_ASM_RESTART_INTERVAL = 10
DMDCR_ASM_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmasmsvr dcr_ini=/home/dmdba/dmdbms/data/DSC02/dmdcr.ini
#CSS 认定 DSC 故障重启的时间, 采用命令行方式启动
DMDCR_DB_RESTART_INTERVAL = 0 #先配置不自动拉起
DMDCR_DB_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmserver path=/home/dmdba/dmdbms/data/DSC02/DSC02_conf/dm.ini dcr_ini=/home/dmdba/dmdbms/data/DSC02/dmdcr.ini
--------------end----------------------------
主节点149启动DMCSS
./dmcss dcr_ini=/home/dmdba/dmdbms/data/DSC01/dmdcr.ini
第二个节点152启动DMCSS
./dmcss dcr_ini=/home/dmdba/dmdbms/data/DSC02/dmdcr.ini
dmdba用户 bin目录下 使用dmasmtool工具创建ASM磁盘组 在第一台机器上创建
#在第一个主节点上使用dmdba用户启动dmasmtool工具
./dmasmtool dcr_ini=/home/dmdba/dmdbms/data/DSC01/dmdcr.ini
#创建DATA磁盘组
CREATE DISKGROUP DMDATA asmdisk '/dev_DSC2/DMDATA'
#创建LOG磁盘组
CREATE DISKGROUP DMLOG asmdisk '/dev_DSC2/DMLOG'
在第一个主节点上编写配置文件dminit.ini文件
*第一个节点:
vi /home/dmdba/dmdbms/data/DSC01/dminit.ini
-------------文件内容--------------------
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_DSC2/DCR
dcr_seqno = 0
auto_overwrite = 1
page_size = 16
[DSC01] #inst_name 跟 dmdcr_cfg.ini 中 db 类型 group 中 DCR_EP_NAME 对应
config_path = /home/dmdba/dmdbms/data/DSC01/DSC01_conf
port_num = 5236
mal_host = 192.168.109.149
mal_port = 9340
log_path = +DMLOG/log/dsc01_log1.log
log_path = +DMLOG/log/dsc01_log2.log
[DSC02] #inst_name 跟 dmdcr_cfg.ini 中 db 类型 group 中 DCR_EP_NAME 对应
config_path = /home/dmdba/dmdbms/data/DSC02/DSC02_conf
port_num = 5236
mal_host = 192.168.109.152
mal_port = 9341
log_path = +DMLOG/log/dsc02_log1.log
log_path = +DMLOG/log/dsc02_log2.log
------------------end------------------------------------
#初始化实例,在第一个节点上使用dmdba用户执行
./dminit control=/home/dmdba/dmdbms/data/DSC01/dminit.ini
#(dmdba用户执行)将在第一个节点中初始化生成的DSC02目录下的整个文件拷贝给第二个节点
scp -r /home/dmdba/dmdbms/data/DSC02/* dmdba@192.168.109.152:/home/dmdba/dmdbms/data/DSC02/
./dmserver /home/dmdba/dmdbms/data/DSC01/DSC01_conf/dm.ini dcr_ini=/home/dmdba/dmdbms/data/DSC01/dmdcr.ini
./dmserver /home/dmdba/dmdbms/data/DSC02/DSC02_conf/dm.ini dcr_ini=/home/dmdba/dmdbms/data/DSC02/dmdcr.ini
配置并启动DMCSSM的监视器:
vi /home/dmdba/dmdbms/bin/dmcssm.ini
###创建下面需要的日志目录:/home/dmdba/dmdbms/data/cssm_log
mkdir -p /home/dmdba/dmdbms/data/cssm_log
chown -R dmdba:dmgroup /home/dmdba/dmdbms/data/cssm_log
chmod -R 755 /home/dmdba/dmdbms/data/cssm_log
#和DMDCR_CFG.INI中的DCR_OGUID保持一致
CSSM_OGUID = 63635
#配置所有CSS的连接信息,
#与DMDCR_CFG.INI中CSS配置项的DCR_EP_HOST和DCR_EP_PORT保持一致
CSSM_CSS_IP = 192.168.109.149:9341
CSSM_CSS_IP = 192.168.109.152:9343
CSSM_LOG_PATH = /home/dmdba/dmdbms/data/cssm_log
#监视器日志文件存放路径
CSSM_LOG_FILE_SIZE = 32
#每个日志文件最大32M
CSSM_LOG_SPACE_LIMIT = 0
#不限定日志文件总占用空间
启动集群监视器:
./dmcssm ini_path=/home/dmdba/dmdbms/bin/dmcssm.ini
show
文章
阅读量
获赞