[Oracle 11g r2(11.2.0.4.0)]集群守护进程CSS介绍

CSS介绍:

CSS ( Cluster Synchronization Service)这个组件负责构建集群, 并且维护集群的一致性。
会对css 的启动过程、NM ( Node Management)和GM ( Group Management) 介绍。

这里写图片描述
ocssd启动顺序:

1 . 10g

操作系统被启动, 并调用/etc/inittab文件中与CRS相关的脚本。

hl:35:respawn:/etc/init.d/init.evmd run >/dev/null 2 >& 1 </dev/null 
h2:35:respawn:/etc/init.d/init. cssd fatal >/dev/null 2 >& 1 </dev/null 
h3:35:respawn:/etc/init.d/init. crsd run >/dev/null 2>&1 </dev/null 

从这些脚本的名称不难看出cssd、crsd和evmd 实际上是同时启动的。但是,它们之间是存在依赖关系的,css 需要首先完成启动,构建集群,之后crsd启动,并将所有管理的资源上线( Online) ,最后evmd启动。这也是为什么在crsd.log和evmd.log 中经常出现这两个进程。
在集群最初启动时总是会抱怨css 没有准备就绪(Ready)的原因。
2)守护进程ocssd.bin 被启动。守护进程ocssd.bin 的优先级为RT (实时)。
3 ) ocssd.bin 访问OCR ,获得构建集群的基本信息, 例如:集群名称、节点列表、访问远程节点的套接字( TCP协议)、表决盘( Voting File)位置、集群参数配置( miscount ,集群私阿信息、diagwait 等)。
4) occsd.bin向远程节点发送连接信息、和远程节点通过私网建立连接、向表决盘中写入本地节点的信息。
5)该节点加入集群。

2 . 11g r2

1 . 对于 linux 6版本,不再是/etc/inittab启动了,而是/etc/init/oracle-ohas.conf 来启动。

[grid@node1.localdomain$]more /etc/init/oracle-ohasd.conf 
# Copyright (c) 2001, 2011, Oracle and/or its affiliates. All rights reserved. 
#
# Oracle OHASD startup

start on runlevel [35]
stop  on runlevel [!35]
respawn
exec /etc/init.d/init.ohasd run >/dev/null 2>&1 </dev/null

注意:
从11gR2版本开始,init.ohasd成为了集群启动的源头,10g 版本中的3个脚本已经不存在了。
2 . ohasd.bin守护进程被启动。该进程负责启动所有的代理进程,包括oracssdagent_root代理进程。
3 . oracssdagent_root 代理进程启动ocssd.bin守护进程。
4 . ocssd.bin守护进程访问gpnpd.bin , 以获得构建集群的基本信息,例如:集群名称、集群GID、集群私网信息、VF位置等。同时,从gipcd.bin 获得联系远程节点的连接信息。
5 . 在获得了步骤4)中提到的信息后,ocssd.bin和远程节点通信,并通过访问VF的租借块(Lease Block)获得本地节点的节点编号。
6 . 该节点加入集群。

cssd启动日志分析:

接下来, 通过ocssd. bin守护进程的日志来了解一下基本的过程。首先,说明一下ocssd.bin
的日志结构, 以方便读者更好地理解日志内容。
1 . 10g版本:[组件名]<时间>[<线程编号或者id>]><消息类型〉:〈线程名称〉:〈
消息内容>。
2 . 11g版本:<时间>: [组件][<线程编号或者id>]<线程名称>: <消息内容>。
下面看一下ocssd.bin 是如何启动的。
1.10g 版本

能看到集群的版本为10.2.0.3

[CSSD]2014-08-18 09:43:46.907 >USER: Or acle Database 10g CSS Release
10.2.0.3.0 Production Copyright 1996, 2004 Oracle. All rights reserved.

这个套接字(Socket File )主要是在其他进程和ocssd.bin通信时使用

[CSSD]2014-08-18 09:43:46.907 >USER: CSS daemon log for node <* * * *>, number
<* * * *>, in cluster 〈 *  * * *〉
[CSSD]2014-08-18 09:43:46 931 [1] >TRACE: clssscmain: local-only set to false
[clsdmt] Listening to (ADDRESS= (PROTOCOL=ipc) (KEY=* * * ** * CSSD))

集群中存在两个节点

[CSSD]2014-08-18 09:43:46.947 [1] >TRACE: clssnmReadNodeinfo: added node 1
(** * * * *) to cluster
[CSSD]2014-08-18 09:43:46.958 [1] >TRACE: clssnmReadNodeinfo: added node 2
(** *  * * *) to cluster

第三方集群管理软件( HP ServiceGuard )正在运行。

[CSSD]2014-08-18 09:43:46.972 [SJ >TRACE: clssnm_skgxninit: initialized skgxn
version (2/0/Hewlett-Packard SKGXN 2.0

开始读取VF上的信息。由于节点2刚刚被启动, 所以VF上节点2的状态仍然是旧的状态
(也就是关闭状态)。

[CSSD]2014-08-18 09:43:52.101 (1] >TRACE: clssnmNMinitial工ze: misscount set to
(600), impending reconfig threshold set to (596000)

miscount 值被设置为600 s。

[CSSD] 2014-08-18 09: 43: 52. 104 [ 1 J >TRACE: clssnmNMini tialize: diskShortTimeout
set to (597000)ms

short 1/0 超时被设置为597 s。

[CSSD]2014-08-18 09:43:52.106 [1] >TRACE: clssnmNMinitialize: diskLongTimeout
set to (597000)ms

long 1/0 超时被设置为597 s。

[CSSD]2014-08-18 09:43:52.116 [1] >TRACE: clssnmDiskStateChange: state from 1
to 2 disk (0 //dev/ **********)

VF被发现。

[CSSD]2014-08-18 09:43:52.116 [6] >TRACE: clssnmvDPT: spawned for disk O (/dev/******* )
[CSSD]2014-08-18 09:43:54.134 [6] >TRACE: clssnmDiskStateChange: state from 2
to 4 disk (0//dev /*********)
[CSSD]2014-08-18 09:43:54.160 [
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值