Cluster Interconnect in Oracle RAC

Cluster Interconnect in Oracle RAC (文档 ID 787420.1)​编辑转到底部

In this Document

Purpose
Scope
Details
Physical Layout of the Private Interconnect
Why Do We Need a Private Interconnect ?
Interconnect Failure
Interconnect High Availability
Private Interconnect for Oracle Clusterware
Private Interconnect for RAC
Identification of the Private Interconnect for RAC
Private Interconnect for ASM
Different Interconnects for Clusterware and RAC
CLUSTER_INTERCONNECTS Parameter
Changing the Private Interconnect
References

Applies to:

Oracle Database - Enterprise Edition - Version 10.1.0.2 and later
Oracle Database Cloud Schema Service - Version N/A and later
Gen 1 Exadata Cloud at Customer (Oracle Exadata Database Cloud Machine) - Version N/A and later
Oracle Cloud Infrastructure - Database Service - Version N/A and later
Oracle Database Backup Service - Version N/A and later
Information in this document applies to any platform.
Oracle Server Enterprise Edition - Version: 10.1.0.2 to 11.1.0.7
Last Updated: 20-Feb-2012
 

Purpose

The purpose of this note is to make DBAs and System Administrators familiar with the concept of the cluster or private interconnect and its usage in Oracle Clusterware and Oracle Real Application Clusters

Scope

The main audience is DBAs and System Administrators. This note applies to Oracle Clusterware and Oracle Real Application Clusters releases 10.1, 10.2 and 11.1.

Details

The term 'Private Interconnect' or 'Cluster Interconnect' is the private communication link between cluster nodes.
 For Oracle Real Application Clusters and Oracle Clusterware we can differentiate between
1. Physical interface (including NIC, cables and switches)
2. Private Interconnect used by Oracle Clusterware
3. Private Interconnect used by Oracle Real Application Clusters (RAC)

Physical Layout of the Private Interconnect

The basic requirements are described in the Installation Guide for each platform. Additional information about certification can be found on Metalink Certify.
The interconnect as identified by both subnet number and interface name must be configured on all clustered nodes.
A switch between the clustered nodes is an absolute requirement.

Why Do We Need a Private Interconnect ?

Clusterware uses the interconnect for cluster synchronization (network heartbeat) and daemon communication between the the clustered nodes. This communication is based on the TCP protocol.
RAC uses the interconnect for cache fusion (UDP) and inter-process communication (TCP). Cache Fusion is the remote memory mapping of Oracle buffers, shared between the caches of participating nodes in the cluster. The volume and traffic patterns of this type of data, shared between nodes can vary greatly depending on the applications.
There are some vendor specific protocol exceptions in Oracle 10g.

Interconnect Failure

The private interconnect is the critical communication link between nodes and instances. Network errors will negatively impact Oracle Clusterware communication as well as RAC communication and performance.
Private interconnect failures are recognized by Oracle Clusterware and result in what is known as a 'split-brain' or subdivided cluster.
A subdivided cluster can result in data corruption, consequently immediate action is taken to resolve this condition. Interconnect failures, therefore, result in a node or subset of nodes in the cluster shutting down. In the case of two equally sized sub clusters, it is basically random which sub cluster will survive, and a customer's architecture and design should be based on this. At this time the Oracle Clusterware happens to use the node numbers to resolve this, but this could change in the future.

RAC instances will wait for the end of cluster reconfiguration to start their own reconfiguration.

Interconnect High Availability

It is an Oracle Best Practice to make the private interconnect highly available. Depending on the operating system and vendor you can use OS network drivers such as bonding, teaming, IPMP, Etherchannel, APA, MultiPrivNIC. For that purpose the interconnect should be configured across two NICs as well as two switches for complete redundancy so that the cluster can survive a single point of failure.

The setup of the highly available interconnect is transparent to Oracle Clusterware and RAC. This means that an underlying failure is handled by the OS or networking drivers that manage the interfaces. Oracle software does not recognize the change underneath, because the failover is handled by the operating system transparently to Oracle.

Private Interconnect for Oracle Clusterware

The private node name determines the interface being used for Oracle Clusterware and is defined during installation of the Clusterware.
With 3rd party Vendor Clusterware in place Oracle Clusterware should be configured to use the same interconnect (often referred to as the heartbeat) as the underlying vendor cluster software.

There exist three ways to identify the private node name after installation:

  • olsnodes -n -p can be used to identify the private node name.

    [oracle@racnode1 ~]$ olsnodes -n -p
    racnode1 1 racnode1-priv
    racnode2 2 racnode2-priv
    [oracle@racnode1 ~]$

  • You may also check the private node name in the ocrdump output.

    [SYSTEM.css.node_numbers.node1.privatename]
    ORATEXT : racnode1-priv

  • ocssd.log has a line with clssnmClusterListener

    [ CSSD]2009-02-23 03:09:06.945 [3086] >TRACE: clssnmClusterListener: Listening on (ADDRESS=(PROTOCOL=tcp)(HOST=racnode1-priv)(PORT=49895))

Although the Oracle Universal Installer allows IP addresses when prompted for the private node name you should always use the host names defined in the hosts file or DNS. This enables you to change the IP addresses when you need to move the server to a different IP range.  You would have to reinstall Oracle Clusterware when you used IP-addresses instead of host names and you are changing the server's IP adresses.

Private Interconnect for RAC

The database uses the private interconnect for communication and cache fusion. The private interconnect is also referred to as "The Cluster Interconnect". Oracle highly recommends that the database and Oracle Clusterware share the same interconnect.
The instances get the private interconnect definition from

  • spfile or init.ora when the parameter CLUSTER_INTERCONNECTS was set
  • Oracle Cluster Regsitry (OCR) defined during the installation (default)
  • automatically from platform defaults if not defined in the spfile/init.ora and OCR.

A value in the spfile or init.ora overrides a definition in the OCR.

Identification of the Private Interconnect for RAC

The value of the private interconnect for an instance can be identified using

  1. The views V$CLUSTER_INTERCONNECTS and V$CONFIGURED_INTERCONNECTS

    V$CLUSTER_INTERCONNECTS displays one or more interconnects that are being used for cluster communication.

    V$CONFIGURED_INTERCONNECTS displays all the interconnects that Oracle is aware of. This view aims to answer the question on where Oracle found the information about a specific interconnect.

    These views are not available in Oracle 10g 10.1.
  2. The alert.log
    • CLUSTER_INTERCONNECTS parameter is set
    • Value read from Cluster Registry

      Interface type 1 Database Team 10.x.x.0 configured from OCR for use as a cluster interconnect

    • Interconnect finally used

      Cluster communication is configured to use the following interface(s) for this instance
      10.x.x.1


      Note that there might be a difference to the interconnect defined in the OCR because the value was overridden by setting the CLUSTER_INTERCONNECTS parameter or when Oracle selected another interconnect because the one in the OCR was not available.
    • Protocol
      Unix and Linux

      cluster interconnect IPC version:Oracle UDP/IP (generic)


      Windows:

      cluster interconnect IPC version:Oracle 9i Winsock2 TCP/IP IPC

Private Interconnect for ASM

Oracle ASM must use the same interconnect as Oracle Clusterware.

Different Interconnects for Clusterware and RAC

Oracle Clusterware does not monitor interfaces other than the one specified via the private host name during installation. If RAC instances run with an interconnect that is different from the Oracle Clusterware interconnect any failure will remain undetected by Oracle Clusterware. The instances will detect this failure themselves and clear the situation by a mechanism called Instance Membership Recovery (IMR). Instance evictions due to IMR happen after 10 minutes.
This configuration should be avoided.

CLUSTER_INTERCONNECTS Parameter

This parameter overrides the value configured in the OCR. You may specify multiple IP addresses in CLUSTER_INTERCONNECTS which will cause all defined interfaces to be used. Keep in mind that a failure of one of those interfaces will cause the instance to fail. The failed instance can only be restarted when all the interfaces are fixed or you start all the instances without the faulty interface.

 

Changing the Private Interconnect

  • Clusterware
    • Change of the IP Address: change the IP address in the hosts file and/or DNS and make sure that ASM and the database also use the same interconnect
    • Change of the private node name used by Oracle Clusterware: requires a reinstall of Oracle Clusterware
  • Real Application Clusters
    • OCR: Use Note 283684.1 How to Change Interconnect/Public Interface IP or Subnet in Oracle Clusterware
    • CLUSTER_INTERCONNECTS: shutdown all instances, change the IP address and restart the instances

Database - RAC/Scalability Community
To discuss this topic further with Oracle experts and industry peers, we encourage you to review, join or start a discussion in the My Oracle Support Database - RAC/Scalability Community

References


NOTE:283684.1 - How to Modify Private Network Information in Oracle Clusterware
NOTE:341788.1 - Recommendation for the Real Application Cluster Interconnect and Jumbo Frames

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/82505.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

.Net HttpClient 使用准则

HttpClient 使用准则 System.Net.Http.HttpClient 类用于发送 HTTP 请求以及从 URI 所标识的资源接收 HTTP 响应。 HttpClient 实例是应用于该实例执行的所有请求的设置集合,每个实例使用自身的连接池,该池将其请求与其他请求隔离开来。 从 .NET Core …

【PostgreSQL】数据库主从库备份与高可用部署

文章目录 一、架构设计原理二、部署清单示例2.1 StatefulSet配置片段2.2 Service配置三、配置详解3.1 主节点postgresql.conf3.2 从节点配置四、初始化流程4.1 创建复制用户4.2 配置pg_hba.conf五、故障转移示例5.1 自动切换脚本5.2 手动提升从节点六、监控与维护6.1 关键监控指…

JavaScript 数组去重:11 种方法对比与实战指南

文章目录 前言一、使用 Set 数据结构二、使用 filter indexOf三、使用 reduce 累加器四、双重 for 循环五、利用对象属性唯一性六、先排序后去重七、使用 Map 数据结构八、使用 includes 方法九、优化处理 NaN 的 filter 方法十、利用 findIndex十一.利用Set和展开运算符处理多…

ai agent(智能体)开发 python3基础14:在python 中 总能看到方法里面套方法,那什么时候用这种方式合适呢?

让人头疼的方法嵌套还是要去了解的 在 Python 中,方法内部嵌套方法(即在类的方法中定义另一个函数)是一种常见的代码组织技巧,它可以在特定场景下带来以下好处: 1. 代码复用与逻辑封装 如果某个方法内部有重复的逻辑…

Yocto项目实战经验总结:从入门到高级的全面概览

本文面向开发者和实际项目经验者,分享经过大量实战积累的 Yocto 项目工程经验和基础技巧。本文简明但精彩,应用和观察相结合,充分适合做为全面进阶 Yocto 项目开发的实用指南。 一、入门理解:Yocto 是什么?规划如何开始…

添加物体.

在cesium中我们可以添加物体进入地图.我们以广州塔为例 //生成广州塔的位置var position2 Cesium.Cartesian3.fromDegrees(113.3191,23.109,100)viewer.camera.setView({//指定相机位置destination: position2, 运行后如图 我们使用cesium官网提供的代码为广州塔在地图上标点…

正则表达式非捕获分组?:

一个使用 Java 正则表达式的具体例子,展示了 (ab) 和 (?:ab) 的不同: 示例 1:使用 (ab)(捕获分组) import java.util.regex.*; public class RegexExample { public static void main(String[] args) { …

ragflow报错:KeyError: ‘\n “序号“‘

环境: ragflowv 0.17.2 问题描述: ragflow报错:KeyError: ‘\n “序号”’ **1. 推荐表(输出json格式)** [{"},{},{"},{} ]raceback (most recent call last): May 08 20:06:09 VM-0-2-ubuntu ragflow-s…

Spring Boot-8启动涉及的监听器(扩展点)

从出现时间上看: org.springframework.context.ApplicationListener,Spring 1.0开始出现 org.springframework.context.ApplicationContextInitializer,Spring 3.1开始出现 org.springframework.boot.SpringApplicationRunListener&#x…

如何启动vue项目及vue语法组件化不同标签应对的作用说明

如何启动vue项目及vue语法组件化不同标签应对的作用说明 提示:帮帮志会陆续更新非常多的IT技术知识,希望分享的内容对您有用。本章分享的是node.js和vue的使用。前后每一小节的内容是存在的有:学习and理解的关联性。【帮帮志系列文章】&…

思考:(linux) tmux 超级终端快速入门的宏观思维

tmux 工具集合 GitHub - rothgar/awesome-tmux: A list of awesome resources for tmux 要点: 习惯性思维的变换与宿主机之间的双向复制、粘贴手动备份全部窗口,以及还原自定义窗格提示信息TPM 插件的安装思想别名 在有些场景里,可能无法…

Python实例题:Python协程详解公开课

目录 Python实例题 题目 课程目标 课程内容规划 1. 课程开场(5 分钟) 2. 基础概念讲解(15 分钟) 并发与并行: 线程与进程: 3. Python 协程的实现方式(20 分钟) 生成器实现…

AI时代的数据可视化:未来已来

你有没有想过,数据可视化在未来会变成什么样?随着人工智能(AI)的飞速发展,数据可视化已经不再是简单的图表和图形,而是一个充满无限可能的智能领域。AI时代的可视化不仅能自动解读数据,还能预测…

强化学习PPO算法学习记录

1. 四个模型: Policy Model:我们想要训练的目标语言模型。我们一般用SFT阶段产出的SFT模型来对它做初始化。Reference Model:一般也用SFT阶段得到的SFT模型做初始化,在训练过程中,它的参数是冻结的。Ref模型的主要作用…

边缘计算从专家到小白

“云-边-端”架构 “云” :传统云计算的中心节点,是边缘计算的管控端。汇集所有边缘的感知数据、业务数据以及互联网数据,完成对行业以及跨行业的态势感知和分析。 “边” :云计算的边缘侧,分为基础设施边缘和设备边缘…

Windows:Powershell的使用

文章目录 零、格式化输出命令1、Format-List(别名:fl) 一、服务管理SC命令二、软件管理命令三、权限管理命令1、Get-Acl2、Set-Acl 总结 零、格式化输出命令 1、Format-List(别名:fl) 可通过管道符传递对象…

实现在h5中添加日历提醒:safari唤起系统日历,其它浏览器跳转google日历

需求:点击按钮后,将设定的一些信息插入到系统日历的日程安排中。 调研过程 先google了一段时间,了解该需求大概的实现方式。可以创建日历文件,在点击的时候下载该日历文件,看起来还比较复杂,并且由于不具…

【Bluedroid】蓝牙 HID 设备服务注册流程源码解析:从初始化到 SDP 记录构建

本文围绕蓝牙 HID(人机接口设备)服务注册流程,详细解析从 HID 服务启用、设备初始化、L2CAP 通道注册到 SDP(服务发现协议)记录构建的全流程。通过分析关键函数如btif_hd_service_registration、BTA_HdEnable、HID_Dev…

Win10无法上网:Windows 无法访问指定设备、路径或文件。你可能没有适当的权限访问该项目找不到域 TEST 的域控制器DNS 解析存在问题

目录 一.先看问题 二.解决问题 三.补充备用 一.先看问题 Win08有网且已经加入域 Win10无网并且找不到域(说明:Win10我之前已经加入过域的,并且能够上网,但每次在宿舍和教室切换校园网,就会导致只有Win10无网&#…

M0基础篇之ADC

本节课使用到的例程 一、Single模式例程基本配置的解释 在例程中我们只使用到了PA25这一个通道,因此我们使用的是Single这个模式,也就是我们在配置模式的时候使用的是单一转换。 进行多个通道的测量我们可以使用Sequence这个模式。 二、Single模式例程基…