RAC 10G资源的管理

NOTE:

 

资源管理方式

10g版本:

对于10GR2版本的集群,资源管理的工作是由CRS(Cluster Ready Service)组件来实现,就是说crsd守护进程负责管理资源,包括资源的启动,停止,监控等。所谓的资源实际上就是集群管理软件所需要管理的应用程序的实体。

[root@webdb1 ~]# ps -ef| grep crsd
root      9429 30870  0 19:14 pts/1    00:00:00 grep crsd
root     15523     1  0 Oct23 ?        00:00:00 /bin/sh /etc/init.d/init.crsd run
root     25385 15523  0 Oct23 ?        01:22:19 /oracle/product/10.2.0/crs_1/bin/crsd.bin reboot

 

首先,需要了解10GR2版本的集群有哪些资源需要被管理,可以通过crs_stat命令查看资源的列表,下面只是其中的一些。

$ crs_stat

NAME=ora.ydqxnew.db

TYPE=application

TARGET=ONLINE

STATE=ONLINE on zjxdkt06

 

NAME=ora.ydqxnew.ydqxnew1.inst

TYPE=application

TARGET=ONLINE

STATE=ONLINE on zjxdkt05

 

NAME=ora.zjxdkt05.YDQX_ZJXDKT05.lsnr

TYPE=application

TARGET=ONLINE

STATE=ONLINE on zjxdkt05

........................................................................................................

为了格式整洁使用crs_stat -t命令来查看

根据上面的输出,可以看到CRSD会管理以下资源:

VIP资源(ora.<节点名>.vip)

ONS资源(ora.<节点名>.ons)

GSD资源(ora.<节点名>.gsd)

ASM实例资源(ora.ASM<节点编号>.asm)

监听资源程序(ora.<节点名><监听程序名>.lsnr)

数据库资源(ora.<数据库名>.db)

数据库实例资源(ora.<数据库名>.<实例名>.inst)

数据库服务资源(ora.<数据库名>.<服务名>.cs)和(ora.<数据库名><服务名><实例名>.srv)

 

CRSD是如何实现资源管理的,下面是一些资源相关术语。

(1)动作(Action):动作定义了CRSD对资源进行的启动,停止,检查和清楚操作时需要的步骤,它可以是一段shell脚本,一段程序,数据库命令等。

(2)资概要文件(Profile):概要文件定义了资源的很多属性,以便CRSD能够根据概要文件定义的属性来创建资源,例如:检查间隔,动作脚本。

(3)依赖关系(dependency):资源之间并不是独立的,有些资源之间是存在相互依赖关系的。例如:数据库实例启动的前提是ASM实例要先启动,这表示数据库资源要依赖于ASM实例资源,而这种依赖关系是通过资源属性required_resource来实现的。

(4)权限:由于不同的资源执行的操作也是不同的,这意味着执行操作的用户也会不同(主要是root用户和Oracle用户),所以每个资源都会针对不同的用户制定不同的权限。这也是为什么crsd.bin守护进程需要以root用户运行原因之一。

(5)OCR(Oracle cluster register):OCR实际上是包含了以上所有信息的一个注册列表,CRSD通过访问OCR来获得集群资源列表(当然也包括其他很重要的信息)以及各个资源的属性。

Oracle集群管理软件(CRS)还定义了一些racg模块,不同的racg模块负责管理不同的资源,例如:racgvip负责管理VIP,这些模块负责定义对资源操作的动作,总结如下:

第一点:CRSD通过OCR定义资源。当crsd.bin守护进程启动时,通过读取OCR中信息来获取资源定义。而当资源属性发生改变时候crsd.bin守护进程也会修改OCR中的信息。

第二点:CRSD通过调用racg模块来实现对资源的各种动作。

 

最后通过一段CRSD的日志来看看CRSD启动的时候做了些什么,其实也就是对上面的总结

crsd日志内容

[root@webdb1 ~]# find / -name crsd.log

/oracle/product/10.2.0/crs_1/log/webdb1/crsd/crsd.log

[root@webdb1 ~]# more /oracle/product/10.2.0/crs_1/log/webdb1/crsd/crsd.log

Oracle Database 10g CRS Release 10.2.0.1.0 Production Copyright 1996, 2005 Oracle.  All rights reserved.

2013-01-18 06:31:10.052: [ default][2309855984][ENTER]0

Oracle Database 10g CRS Release 10.2.0.1.0 Production Copyright 1996, 2004, Oracle.  All rights reserved

2013-01-18 06:31:10.053: [ default][2309855984]0CRS Daemon Starting

2013-01-18 06:31:10.053: [ CRSMAIN][2309855984]0Checking the OCR device

2013-01-18 06:31:10.068: [ CRSMAIN][2309855984]0Connecting to the CSS Daemon

2013-01-18 06:31:10.088: [ COMMCRS][1097718080]clsc_connect: (0x1e4e2740) no listener at (ADDRESS=(PROTOCOL=ipc)(KEY

=OCSSD_LL_webdb1_crs))

2013-01-18 06:31:10.088: [ CSSCLNT][2309855984]clsssInitNative: connect failed, rc 9

2013-01-18 06:31:10.091: [  CRSRTI][2309855984]0CSS is not ready. Received status 3 from CSS. Waiting for good status ..

2013-01-18 06:31:11.111: [ COMMCRS][1097718080]clsc_connect: (0x1e4e29e0) no listener at (ADDRESS=(PROTOCOL=ipc)(KEY=OCSSD_LL_webdb1_crs))

2013-01-18 06:31:11.111: [ CSSCLNT][2309855984]clsssInitNative: connect failed, rc 9

2013-01-18 06:31:11.114: [  CRSRTI][2309855984]0CSS is not ready. Received status 3 from CSS. Waiting for good status ..

2013-01-18 06:31:12.134: [ COMMCRS][1097718080]clsc_connect: (0x1e4e2c50) no listener at (ADDRESS=(PROTOCOL=ipc)(KEY=OCSSD_LL_webdb1_crs))

 

CRSD守护进程启动,之后尝试联系CSSD守护进程,但是由于ocssd.bin没有完全启动,所以CRSD守护进程还不能继续向下运行。在ocssd.bin完全启动后,CRSD才可以启动。

......................................................................................................

2013-01-18 06:34:51.800: [ CSSCLNT][2309855984]clssgsGroupJoin: CSS has not reached fatal mode.Registration is not yet safe. Retrying

2013-01-18 06:34:52.802: [    CRSD][2309855984]0Registered in CSS group crs_version

2013-01-18 06:34:52.802: [ CRSMAIN][2309855984]0Initializing OCR

2013-01-18 06:34:52.802: [    CRSD][1108207936]0Monitoring the crs_version group for AV change notification

2013-01-18 06:34:52.802: [    CRSD][1108207936]0Doing grpstat on crs_version group

2013-01-18 06:34:52.802: [    CRSD][1108207936]0Returned from grpstat with event 1

2013-01-18 06:34:52.802: [    CRSD][1108207936]0Doing grpstat on crs_version group

2013-01-18 06:34:52.825: [  OCRRAW][2309855984]proprioo: for disk 0 (/dev/raw/raw1), id match (1), my id set (1669906634,10282478

21) total id sets (1), 1st set (1669906634,1028247821), 2nd set (0,0) my votes (2), total votes (2)

2013-01-18 06:34:52.918: [  OCRSRV][1244576064]th_select_handler: Failed to retrieve procctx from ht. constr = [518059696] retval

CRSD守护进程发现了OCR对应的设备/dev/raw/raw1

[root@webdb1 ~]# ls -l /dev/raw/raw1

crw-r--r-- 1 oracle oinstall 162, 1 Dec 19 18:55 /dev/raw/raw1

......................................................................................................

2013-01-18 06:34:53.673: [ CRSMAIN][2309855984]0Filename is /oracle/product/10.2.0/crs_1/crs/init/webdb1.pid

[  clsdmt][1422903616]Listening to (ADDRESS=(PROTOCOL=ipc)(KEY=webdb1DBG_CRSD))

CRSD守护进程的pid被创建之后,之后对应的套接地址被创建

......................................................................................................

2013-01-18 06:34:54.084: [ CRSMAIN][2309855984]0CRS Daemon Started.

CRSD守护进程启动完成

......................................................................................................

2013-01-18 06:43:39.749: [  CRSRES][1508006208]0Attempting to start `ora.webdb1.gsd` on member `webdb1`

2013-01-18 06:43:39.879: [  CRSRES][1076025664]0Attempting to start `ora.webdb1.ons` on member `webdb1`

2013-01-18 06:43:41.310: [  CRSRES][1508006208]0Start of `ora.webdb1.gsd` on member `webdb1` succeeded.

2013-01-18 06:43:42.549: [  CRSRES][1076025664]0Start of `ora.webdb1.ons` on member `webdb1` succeeded.

CRSD开始启动资源

 

 

 

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值