浅谈RAC -- CSS组件

本文深入探讨了CSSD(Cluster Synchronization Services Daemon)在Oracle RAC中的作用,包括网络心跳、磁盘心跳机制、节点排除条件、投票盘管理和脑裂情况的处理。了解CSSD的工作原理对于解决集群中的问题至关重要。
摘要由CSDN通过智能技术生成

浅谈RAC – CSS组件

积极的眼睛,还是败给了懒惰的双手。停更了一段时间,今天继续浅谈RAC的博文。

我们在前面的博客说集群是一组相互独立的、通过高速网络互联的节点(计算机),它们构成了一个组回,并以单一系统的模式加以管理。所以集群管理软件注定了要有网络互联的管理机制和共享磁盘的守护机制。在GI软件中,这个机制则是由组件CSSD来实现的。

集群中的每个节点都有CSSD守护进程,这些进程间会通过私网进行通信,并且定期向其它节点发送网络心跳,以此来确认不同节点间的通信状态。同时各个节点的CSSD还会定期向共享磁盘发送磁盘心跳,以保证所有成员节点都可以IO读写共同的磁盘。

1.Interconnect

我们在配置GI时需要在host文件中配置私网通信用(Interconnect)的IP地址。

[root@node1 ~]# cat /etc/hosts | grep private
192.168.3.11    node1-i private1
192.168.3.12    node2-i private2

这个私网通信地址就是CSSD进行网络心跳时所要用到的IP地址。这些IP地址的信息在安装GI时被root脚本写到了OCR中。所以我们通过oifcfg命令可以获得OCR中保存的网络配置信息。

[root@node1 ~]# oifcfg getif
enp0s8  10.10.3.0  global  public
enp0s9  192.168.3.0  global  cluster_interconnect,asm

2.集群心跳机制

ocssd.bin是个多线程的进程。其中clssnmSendingThread线程会每秒钟向集群中的所有节点通过TCP协议发送网络心跳信息(Network HeartBeat,简称NHB)。clssnmPollingThread线程则会接收这些网络心跳,并确认节点之间的连接状态。如果集群中的某一个或者一些节点持续的丢失网络心跳一段时间,则会发生Reconfiguration,其结果则往往是发生节点排除。

这里面需要强调的一个点是,发生节点排除时的条件必须是连续的丢失NHB。有些网络状态是时断时续的不稳定状态时,节点并不一定会被排除。那么这里面所谓的持续的丢失网络心跳一段时间则是由misscount参数决定的。

misscount是保存在OCR中的参数值。我们可以通过下面的命令获得该参数值。

[root@node1 ~]# crsctl get css misscount
CRS-4678: Successful get misscount 30 for Cluster Synchroni
  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值