RAC 手动创建cluster resource

同样方法添加别的高可用resource

​​​​​​​​​​​​​利用RAC 创建OGG高可用_jnrjian的博客-CSDN博客

Oracle 11gR2 CRS资源配置手册

目 录
1 文档简介 3
1.1 编写目的 3
1.2 适用范围 3
1.3 名词解释 3
1.4 格式约定 3
2 安装Oracle软件及创建数据库 4
2.1 安装前环境配置 4
2.2 配置ASM存储 4
2.3 安装Oracle软件 4
2.4 创建数据库 4
3 配置数据库应用的资源 4
3.1 资源说明 4
3.1.1 由CRS自动创建的资源 4
3.1.2 需用户自行创建的资源 5
3.2 资源依赖关系图 6
3.3 禁用资源ora.testdb11.db 6
3.4 部署testdb11的启动脚本 7
3.5 创建资源池testdb11_sp 7
3.6 创建资源testdb11 7
3.7 创建资源testdb11.vip 8
3.8 创建资源testdb11.lsnr 8
3.9 创建资源testdb11.db 9
3.10 创建资源testdb11.head 10
3.11 资源组切换测试 10
4 参考文档 10
4.1 Oracle Clusterware Administration and Deployment Guide 11g Release 2 10
4.2 Oracle 11gR2 Clusterware资源切换流程 11
4.3 Clusterware_Resource_Definition 11

1 文档简介
1.1 编写目的
为Linux数据库平台集群软件Oracle 11gR2 CRS中(数据库应用)资源的标准化配置提供参考。

1.2 适用范围
该文档的阅读对象为基础架构管理部系统组、存储组、项目组等相关人员。

1.3 名词解释
序号 术语/缩略语 全称和说明
1 GI Grid Infrastructure的简称,Oracle公司的集群和存储管理软件的统称,包含集群软件Clusterware和存储管理软件ASM。
2 CRS Clusterware的简称,Oracle公司的集群管理软件。
3 ASM Automatic Storage Management的简称,Oracle公司的存储管理软件。
4 资源 由Clusterware管理的资源的应用程序或进程,需要向Clusterware注册。 CRS OCR
5 Local资源 资源同时运行在集群中的所有节点上,某节点上的资源失效后不进行切换。 nodeapps
6 Cluster资源 资源同时只运行在集群中的某一节点上,当资源失效后切换到其它节点上运行。是不是有点反了,cluster 是共享资源,但是可以切换。 local也是某一节点,但不切换。

1.4 格式约定
以“#”开头代表root用户;
以“$”开头代表普通用户;  grip
以“>”开头代表DB用户;
以“SQL>”开头代表sqlplus命令;
以“灰色底纹”标注的为命令或输入字符;
以“斜体”标注的为配置文件内容;

“所有节点”表示集群中的所有机器;
“主节点”表示“节点一”,集群中的第一台机器(下面的cnsh230244)。 一定第一台?

2 安装Oracle软件及创建数据库
2.1 安装前环境配置
该部分由系统组进行实施。
按数据库的需求配置好用户、环境变量、系统参数等,这些需求由DBA提供。

2.2 配置ASM存储
该部分由存储组进行实施。
按数据库的需求配置好ACFS_DG、DATA_DG、FRA_DG和ACFS文件系统。
详细方法参看《Oracle 11gR2 ASM日常管理维护手册.docx》。

2.3 安装Oracle软件
该部分由DBA进行实施。
注意数据库安装类型是“Oracle Real Application Clusters database installation”。

2.4 创建数据库
该部分由DBA进行实施。
注意数据库创建类型是“Oracle Single instance database”,数据文件创建在“DATA_DG”上,Fast Recovery Area创建在“FRA_DG”上。
数据库创建完成后,CRS中应该会自动注册一个Cluster资源,名称为ora.xxx.db。

3 配置数据库应用的资源
3.1 资源说明
3.1.1 由CRS自动创建的资源
资源类型 资源 描述
Local Resources ora..dg ASM磁盘组资源,每个磁盘组都有自己的资源,如ora.ACFS_DG.dg、ora.DATA_DG.dg、ora.FRA_DG.dg、ora.OCRVD_DG.dg。

 
  1. ora.LISTENER.lsnr 节点Listener资源。

  2. ora.acfs_dg.<LV_NAME>.acfs Oracle Home专用ACFS文件系统资源,每个数据库都有自己的ACFS资源。

  3. ora.asm ASM资源,为CRS提供磁盘管理功能。

  4. ora.gsd Global Service Daemon资源,默认所有节点都为OFFLINE状态,只有在安装9i RAC数据库时才需要启用。

  5. ora.net1.network 主网网络资源,对应到网口bond0。

  6. ora.ons ONS资源,A publish and subscribe service for communicating Fast Application Notification (FAN) events.

  7. ora.registry.acfs 普通ACFS文件系统资源。

Cluster Resources ora.LISTENER_SCAN1.lsnr SCAN Listener资源。 可以切换的

 
  1. ora.<NODE_NAME>.vip 节点VIP资源,每个节点都有自己的VIP资源。

  2. ora.cvu Cluster Verification Utility资源。

  3. ora.oc4j OC4J资源。

  4. ora.scan1.vip SCAN VIP资源。

  5. ora.<ORA_SID>.db Oracle Restart资源,数据库创建完成后,CRS中应该会自动注册这个资源。

3.1.2 需用户自行创建的资源
资源类型 资源 描述
Cluster Resources 数据库资源组的基础,资源组中的所有其他资源都依赖于这个资源。这个资源的停止,重置,切换会影响到其他所有资源。

 
  1. <ORA_SID>.vip VIP资源,由Oracle内部来管理。此资源依赖于testdb11资源。

  2. <ORA_SID>.lsnr 数据库监听器资源。此资源依赖于VIP资源,由于平安采用的是共享HOME,因此此资源也依赖于HOME所在的ACFS资源。  小写的lsnr

  3. <ORA_SID>.db 数据库资源。此资源依赖于testdb11资源,并且由于使用共享HOME,此资源也依赖所在的ACFS资源。除此之外,数据库本身还依赖于DATA_DG和FRA_DG资源。

  4. <ORA_SID>.head 此资源和testdb11资源首尾呼应,将整个资源组封装起来。启动整个资源组时,只需启动这个资源便可。此资源依赖于testdb11.lsnr和testdb11.db资源。

3.2 资源依赖关系图

3.3 禁用资源ora.testdb11.db
注:这个资源是安装DB时自动创建的,在HA的环境中,需要先将其禁用!
1)关闭并禁用该资源,使用grid用户登陆任一节点操作:
$ crsctl stop res ora.testdb11.db
$ crsctl modify res ora.testdb11.db -attr "ENABLED=0"

2)测试该资源是否已被禁用:
$ crsctl start res ora.testdb11.db
CRS-2501: Resource 'ora.testdb11.db' is disabled
CRS-4000: Command Start failed, or completed with errors.

3.4 部署testdb11的启动脚本
1)创建目录,用于存放该数据库应用的启动脚本,在节点一上操作:

mkdir /oracle_grid/11.2.0/grid/crs/public/testdb11

mkdir /oracle_grid/11.2.0/grid/crs/public/testdb11/.run

2)将DBA提供的四个启动脚本放在节点一上的“$ORACLE_HOME/crs/public/”目录下,脚本名称:
act_db.ksh
act_lsnr.ksh
act_rgb.ksh
act_rgh.ksh

3)将节点一上的整个脚本目录复制到其它所有节点上的同一目录下:

scp -r /oracle_grid/11.2.0/grid/crs/public/testdb11 \

cnsh230245:/oracle_grid/11.2.0/grid/crs/public/

4)修改脚本的权限,在所有节点上操作:

chown -R ostestdb11:oinstall /oracle_grid/11.2.0/grid/crs/public/testdb11

chmod -R 755 /oracle_grid/11.2.0/grid/crs/public/testdb11

3.5 创建资源池testdb11_sp
1)使用ostestdb11登陆节点一(或任一节点),创建testdb11的serverpool:

crsctl add serverpool testdb11_sp -attr \
"PARENT_POOLS=Generic, \

SERVER_NAMES=cnsh230244 cnsh230245"

3.6 创建资源testdb11
1)使用ostestdb11登陆节点一(或任一节点),创建资源:

crsctl add resource testdb11 -type cluster_resource -attr \

"ACTION_SCRIPT=/oracle_grid/11.2.0/grid/crs/public/testdb11/act_rgb.ksh, \
RESTART_ATTEMPTS=5, \
UPTIME_THRESHOLD=1h, \
FAILURE_THRESHOLD=1, \
FAILURE_INTERVAL=86400, \
CHECK_INTERVAL=10, \
SCRIPT_TIMEOUT=60, \
PLACEMENT=restricted, \
SERVER_POOLS=testdb11_sp, \
HOSTING_MEMBERS=''"

2)启动资源:

crsctl start res testdb11

3.7 创建资源testdb11.vip
1)使用root用户登陆节点一(或任一节点),创建VIP资源:
创建VIP资源:

appvipcfg create \      创建VIP命令, 可以创建多个给应用程序

-network=1 \
-ip=10.31.31.11 \
-vipname=testdb11.vip \
-user=ostestdb11 \
-group=oinstall                                         cluster resource 都是oracle用户?

修改资源属性:

crsctl modify res testdb11.vip -attr \

"DEFAULT_TEMPLATE='', \
RESTART_ATTEMPTS=1, \
UPTIME_THRESHOLD=1h, \
FAILURE_THRESHOLD=2, \
FAILURE_INTERVAL=86400, \
CHECK_INTERVAL=10, \
CHECK_TIMEOUT=30, \
START_TIMEOUT=0, \
STOP_TIMEOUT=0, \
SCRIPT_TIMEOUT=60, \
START_DEPENDENCIES='hard(ora.net1.network,testdb11) \
pullup(ora.net1.network,testdb11)', \
STOP_DEPENDENCIES='hard(ora.net1.network,intermediate:testdb11)', \
PLACEMENT=restricted, \
SERVER_POOLS=testdb11_sp, \
HOSTING_MEMBERS=''"

修改资源权限:

crsctl setperm resource testdb11.vip -o root

crsctl setperm resource testdb11.vip -u user:ostestdb11:r-x

2)使用ostestdb11用户登陆节点一(或任一节点),启动VIP资源:

crsctl start resource testdb11.vip

3.8 创建资源testdb11.lsnr
1)使用ostestdb11用户登陆节点一(或任一节点),验证启动脚本都能够正常启动和关闭Listener:

cd /oracle_grid/11.2.0/grid/crs/public/testdb11
./act_lsnr.ksh start
./act_lsnr.ksh stop

注:如不能正常启动Listener,需查找原因并修复。

2)使用ostestdb11用户登陆节点一(或任一节点),创建资源:

crsctl add resource testdb11.lsnr -type cluster_resource -attr \

下面基本都差不多,就是把一个可以启停的脚步注册上来

"ACTION_SCRIPT=/oracle_grid/11.2.0/grid/crs/public/testdb11/act_lsnr.ksh, \
RESTART_ATTEMPTS=0, \
UPTIME_THRESHOLD=1h, \
FAILURE_THRESHOLD=1, \
FAILURE_INTERVAL=86400, \
CHECK_INTERVAL=60, \
START_TIMEOUT=180, \
STOP_TIMEOUT=0, \
SCRIPT_TIMEOUT=60, \
START_DEPENDENCIES='hard(testdb11.vip,ora.acfs_dg.testdb11_lv.acfs) \
pullup(testdb11.vip,ora.acfs_dg.testdb11_lv.acfs)', \
STOP_DEPENDENCIES='hard(intermediate:testdb11.vip,ora.acfs_dg.testdb11_lv.acfs)', \
PLACEMENT=restricted, \
SERVER_POOLS=testdb11_sp, \
HOSTING_MEMBERS=''"

3)使用ostestdb11用户登陆节点一(或任一节点),启动Listener:

crsctl start res testdb11.lsnr

3.9 创建资源testdb11.db
1)使用ostestdb11用户登陆节点一(或任一节点),测试启动脚本能否启动和关闭数据库:

cd /oracle_grid/11.2.0/grid/crs/public/testdb11/
./act_db.ksh start
./act_db.ksh stop

注:如不能正常启动DB,需查找原因并修复。

2)使用ostestdb11用户登陆节点一(或任一节点),创建资源:

crsctl add resource testdb11.db -type cluster_resource -attr \

"ACTION_SCRIPT=/oracle_grid/11.2.0/grid/crs/public/testdb11/act_db.ksh, \
RESTART_ATTEMPTS=0, \
UPTIME_THRESHOLD=1h, \
FAILURE_THRESHOLD=1, \
FAILURE_INTERVAL=86400, \
CHECK_INTERVAL=60, \
START_TIMEOUT=600, \
STOP_TIMEOUT=600, \
SCRIPT_TIMEOUT=60, \
START_DEPENDENCIES='hard(testdb11,ora.acfs_dg.testdb11_lv.acfs,ora.DATA_DG.dg,ora.FRA_DG.dg) \
pullup(testdb11,ora.acfs_dg.testdb11_lv.acfs,ora.DATA_DG.dg,ora.FRA_DG.dg)', \
STOP_DEPENDENCIES='hard(testdb11,ora.acfs_dg.testdb11_lv.acfs,ora.DATA_DG.dg,ora.FRA_DG.dg)', \
PLACEMENT=restricted, \
SERVER_POOLS=testdb11_sp, \
HOSTING_MEMBERS=''"

3)使用ostestdb11用户登陆节点一(或任一节点),启动DB资源:

crsctl start res testdb11.db

3.10 创建资源testdb11.head
1)使用ostestdb11用户登陆节点一(或任一节点),添加资源:

crsctl add resource testdb11.head -type cluster_resource -attr \

"ACTION_SCRIPT=/oracle_grid/11.2.0/grid/crs/public/testdb11/act_rgh.ksh, \
RESTART_ATTEMPTS=0, \
UPTIME_THRESHOLD=1h, \
FAILURE_THRESHOLD=1, \
FAILURE_INTERVAL=86400, \
CHECK_INTERVAL=10, \
SCRIPT_TIMEOUT=60, \
START_DEPENDENCIES='hard(testdb11.lsnr,testdb11.db) pullup(testdb11.lsnr,testdb11.db)', \
STOP_DEPENDENCIES='hard(intermediate:testdb11.lsnr,testdb11.db)', \
PLACEMENT=restricted, \
SERVER_POOLS=testdb11_sp, \
HOSTING_MEMBERS=''"

3)使用ostestdb11用户登陆节点一(或任一节点),启动Head资源:

crsctl start res testdb11.head

3.11 资源组切换测试
1)使用ostestdb11用户登陆节点一(或任一节点),测试停启资源组:

crsctl stop res testdb11 -f                         -----testdb11.head 注册的那个
crsctl start res testdb11.head

2)使用ostestdb11用户登陆节点一(或任一节点),分别测试将资源组切换到各个节点上运行:

crsctl relocate res testdb11 -n -f                  reload指定node

注:需要保证资源组能够正常切换到各个节点上运行!

4 参考文档
4.1 Oracle Clusterware Administration and Deployment Guide 11g Release 2

4.2 Oracle 11gR2 Clusterware资源切换流程

4.3 Clusterware_Resource_Definition

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值