[Oracle集群软件全解析] 集群系统环境要求(OS,Network等)

2020-08-19 10:43:01 浏览数 (1)

上个专题我们讲了ASM的内容和管理

http://www.zhaibibei.cn/asm/

要想使用ASM我们首先了解Oracle提供给我们的集群软件

在Oracle 9i(包括)前,我们搭建集群环境都需要借助第三方的软件

之后Oracle提供了自己的软件来进行集群的搭建

Oracle版本:11.2.0.4

1.什么是集群件(Clusterware)

Oracle集群软件让服务器可以互相通信,以使他们可以以一个集合单元向外提供服务,这种形式的结合我们称之为集群(Cluster)

Oracle集群件提供运行RAC的必要的基础架构,同时也负责管理一些资源(resource)

  • 虚拟IP地址 (virtual IP)
  • 数据库
  • 监听(isteners)
  • 服务(services)

这些服务通常命名为ora.host_name.resource_name的形式

只有在Oracle 指导下我们才建议编辑这些资源

上图是一个典型的Oracle集群架构,在集群上运行了Oracle数据库RAC并同时向外提供服务

使用Oracle集群有如下好处

  • 提高应用的可扩展性
  • 降低高可用性架构的成本
  • 提供故障转移功能
  • 通过添加资源来提供性能
  • 减少软硬件故障带来的停机时间
  • 可单独管理各个资源
  • 可自动开启异常关掉的进程

最大的好处为它脱离了第三方的集群软件,提供了从磁盘管理(ASM)到数据管理(RAC)的全套解决方案

Oracle集群件包含两个重要组件

  • Voting Disk 用来保存节点成员信息
  • Oracle Cluster Registry (OCR) 用来保存集群的配置信息

他们必须保存在共享存储中,并让所有节点可访问

2. Oracle集群系统要求

2.1 Oracle集群硬件需求

2.1.1 网络需求

集群中的节点至少需要2块网卡

  • 一块用于对外服务(Public)
  • 一块用来用于节点之间的通信(Private)

私有网卡之间至少需要千兆网络支持且不支持交叉线连接

为确保网络的高可用性,我们推荐至少2块网卡做网卡绑定用于Public,2块网卡做网卡绑定用于Private

2.1.2 存储要求

集群要求可被多台设备同时访问的设备,支持如下:

  • NFS
  • iSCSI
  • Direct Attached Storage (DAS)
  • Storage Area Network (SAN) storage
  • Network Attached Storage (NAS)

同样Oracle推荐使用多路径来确保存储连接的高可用性

2.1.3安装位置需求

Oracle建议集群软件安装在各自的节点服务器中,这样一个节点损坏不会对其他节点有影响

2.2 Oracle集群操作系统要求

Oracle集群所需的操作系统环境需要经过Oracle认证

Linux平台:

http://www.oracle.com/technetwork/database/clustering/tech-generic-linux-new-086754.html

Unix平台:

http://www.oracle.com/technetwork/database/clustering/tech-generic-unix-new-166583.html

Windows平台:

http://www.oracle.com/technetwork/database/clustering/tech-generic-windows-new-166584.html

Oracle集群软件和数据库软件是独立的,我们可以在装好集群软件后安装数据库软件(RAC)

2.3 Oracle集群软件需求

Oracle集群使用Voting Disk和OCR来进行集群的管理

2.3.1 Voting Disk

Oracle集群使用Voting Disk 文件来决定哪些节点属于集群,我们可以将其放置在ASM或者一般的共享存储中

ASM中的Voting Disk 我们无需手动配置,ASM会根据磁盘组冗余度来自动管理建立其副本

如果没有将其放置在ASM中,Oracle建议我们手动在不同物理设备中建立至少3个Voting DIsk

至少需要3个Voting Disk,最多15个

2.3.2 Oracle Cluster Registry(OCR)

Oracle集群使用OCR来存储及管理集群内的资源,包括RAC数据库,监听,VIP等

OCR在一个树状结构内以key-value对的形式来存储配置信息

Oracle建议为OCR配置多个位置来确保高可用性,另外:

  • 我们最多就可以配置五个位置
  • 每个位置必须配置在共享存储中,并可以被每个节点访问
  • 我们可以在线覆盖一个失败的OCR文件,当其不是唯一一个的时候
  • 我们必须通过一些工具来维护OCR,如 CRSCTL,SRVCTL,OCRCONFIG,DBCA

3. Oracle集群网络配置

3.1 Public IP

该IP作为公共的IP需要能被所有客户端连接,如不使用GNS我们需要在集群节点中静态分配该IP

该IP需要至少一张物理网卡

3.2 Virtual IP

该IP为虚拟IP,需要被所有客户端和Public IP连接

正常情况下其分布在各个节点中,当节点无法发生故障时,上面的VIP会转移至其他节点,以保证该IP可正常服务

3.3 Private IP

该地址为集群所需的私有IP地址,它主要负责集群中各节点数据的内部传输(Cache Fusion),它不应该能被Public/Virtual IP以及客户端所连接

该IP需要至少一张物理网卡

私有网卡之间至少需要千兆网络支持且不支持交叉线连接

4. Single Client Access Name (SCAN)

SCAN为Oracle 11.2 新的功能,他主要起到一个中转作用,客户端连接到SCAN 上,其依次将该请求转发至集群中的VIP上,而不用关心集群中各节点的IP信息

我们必须为集群配置一个SCAN

它是一个域名,其解析到一个至三个IP地址上,解析的方法如下:

4.1 手动配置

这是我们最常用的一种SCAN配置方式

它配置简单,但是只能对应一个IP地址,我们需要在hosts文件中指定

  • Public IP
  • Virtual IP
  • Private IP
  • SCAN IP

Public IP 及Private IP需要在节点中静态配置

4.2 GNS配置

这种方法配置复杂,需要DNS和DHCP服务器的支持,一般很少用

他可以支持三个SCAN IP地址,同时需要一个GNS VIP用于接收客户端请求

我们只需要指定GNS VIP,以及各节点的Public 和Virtual IP

各节点的VIP以及SCAN IP通过DHCP获取

Public IP 及Private IP需要在节点中静态配置

GNS可参考如下链接:

http://72.32.201.108/rac/Oracle_RAC_with_GNS.html

以上参考自官方文档:

https://docs.oracle.com/cd/E11882_01/rac.112/e41959/intro.htm#CWADD90953

0 人点赞