您的位置:首页 > 其它

翻译mos文章rac脑裂导致节点的驱逐

2016-05-05 13:24 435 查看
理解rac脑裂节点的驱逐

应用于11.2.0.1和之后的版本

适用任何平台

这时11.2rac的一个管理方面的专业知识,只使用11.2.0

丢失网络心跳的驱逐是发生在正在幸存节点的ocssd进程丢失被驱逐节点通过私有网络的连接之后。

节点间必须能够通过私有网络进行通信,这是避免脑裂的解决方案。在脑裂导致驱逐的情况下,一个节点

自行脱离来避免由私有网络问题导致的脑裂。

脑裂的意思

脑裂的意思是存在2个或者多个不同设置相互间没有通信的节点或者群组。(rac被拆了)

例如 rac有4个节点A B C D

AB之间可以通信,CD之间可以通信,但A B 不能和C D 通信。

为什么这是一个问题

一个脑裂的情形大约是在一个共享存储上有两个或者多个集群。这是潜在的数据问题,必须要解决。

oracle集群处理脑裂是通过终止小的、弱的群组来实现,如果两个配置一样的群组,那么节点号低的那个存活

集群区分大的群组,驱逐不属于它的其他群组

在一个脑裂驱逐的节点的ocssd log里会有下面的记录

clssnmCheckDskInfo: Aborting local node to avoid splitbrain.

在这个ocssd.log产生上面记录的前大约10分钟会有下面的丢失心跳的记录

clssnmPollingThread: node %s (%n) at <X>% heartbeat fatal, removal in...

寻找群组

在ocssd.log里还会显示群组的信息。例如

2012-12-28 20:26:25.803: [ CSSD][1111296320]clssnmCheckDskInfo: My cohort: 1

2012-12-28 20:26:25.803: [ CSSD][1111296320]clssnmCheckDskInfo: Surviving cohort: 2,3,4

2012-12-28 20:26:25.803: [ CSSD][1111296320](:CSSNM00008:)clssnmCheckDskInfo: Aborting local node to avoid splitbrain.

Cohort of 1 nodes with leader 1, sprora01, is smaller than cohort of 3 nodes led by node 2, sprora02, based on map type 2

上面的信息是说,我能够与群组1通信,但是通过votedisk知道2、3、4三个节点可以通信,比较我所在群组1有一个节点小于另一个群组 2有

2、3、4三个节点,oracle通过终止节点数少的群主来处理这个问题。

使用群组信息来诊断私有网络问题

群组信息描述了哪些节点可以互相通信,上面的例子说明234可以 通信,不能够跟1通信

后续检查

检查私有网络中1节点和其他3节点间的连接
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: