使用Oracle真正应用集群(RAC),Oracle数据库可跨一组集群服务器运行任何打包的或自定义的应用程序,不需对这些应用程序做任何改动。这就提供了最高的可用性和最灵活的可伸缩性。如果集群中的一个服务器故障,Oracle可继续在其余的服务器上运行。当我们需要更多的处理能力时,只需添加服务器即可,无需用户下线。为保证低成本,我们可使用标准化的普通硬件组建出最高端的系统。
Oracle真正应用集群为Oracle的企业网格计算体系结构提供了基础。Oracle
RAC技术可为这一低成本硬件平台提供支持,使其提供优质的服务,并达到或超出昂贵的大型SMP计算机所能提供的可用性和可伸缩性等级。通过显着降低管理成本和提供出色的管理灵活性,Oracle为企业网格环境提供了强有力的支持。本白皮书从技术层面对Oracle真正应用集群10g进行了概述,着重介绍了涉及为企业应用程序提供高可用性和高可伸缩性方面的功能和特性。
什么是ORACLE数据库10G真正应用集群?
Oracle真正应用集群是Oracle数据库的一个组件选项,在Oracle
9i中首次推出。Oracle真正应用集群现已发展成一项成熟的技术,其用户过千,遍及各个行业,涉及各类应用程序。Oracle RAC为伸缩应用程序以超越单个服务器的能力限制提供了一个选择。这使得用户可以利用低成本的普通硬件来降低他们的总拥有成本,并提供一个可伸缩的计算环境来支持其应用程序负载。Project
Mega Grid1是一个展示项目,用于说明实际的应用负载可运行于一台SAIP服务器上,也可以运行于一个服务器集群中,且达到相同的性能要求。此外,集群环境还包括高可用性.Oracle 真正应用集群是 Oracle 高可用性体系结构2的重要组件,它指导着应用程序高可用性的设计。Oracle
RAC提供了在任何应用数据库应用环境中移除单点故障服务器的能力。
真正应用集群体系结构
RAC数据库是一个集群数据库。集群是一组独立的服务器,协同合作如同一个系统。集群提供了比单对称多处理器(SMP)系统更好的容错和模块增量系统。发生系统故障时,集群可确保向客户提供高可用性。对关键任务数据的访问不会丢失。冗余的硬件组件(如额外的节点、互联和磁盘)使得集群能够提供高可用性。此类冗余硬件体系结构避免了单点故障并提供了异常故障恢复。
图1真正应用集群体系结构
在真正应用集群中,我们将Oracle实例(运行在一个服务器中的流程和内存结构,以充许数据访问)与Oracle数据库(驻留在存储器上的实际用于保存数据的物理结构,通常称为数据文件) 进行了分离。集群数据库是一个可由多个实例访问的数据库。每个实例运行于集群中的一个独立服务器上。当需要更多的资源时,可以在不停机的情况下轻松地向集群中添加节点和实例。当启动新实例后,应用程序可立即使用这一新实例,无需对应用程序或应用服务器进行任何改动。
真正应用集群是Oracle数据库的一个扩展,所以它利用了Oracle数据库10g的可管理性、可靠性和安全性特性。
Oracle集群件
Oracle数据库10g开始提供有Oracle集群件,Oracle集群件是一个专门针对Oracle数据库而集成和设计的可移植集群件解决方案。您不必再为构建一个RAC数据库而去购买第三方的集群件。Oracle集群件与Oracle DBA熟悉的Oracle Universal Installer进行了集成。支持也比以往更为简便,因为现在有一个专门的组织处理涉及集群件和集群数据库的支持问题。您可以选择使用第三方集群件来运行Oracle
RAC,Oracle产品可与经认证的第三方集群件共同使用,但Oracle集群件必须管理所有的RAC数据库。
Oracle集群件用于监管真正应用集群数据库。当集群中的一个节点启动时,所有实例、监听程序和服务都将自动启动。如果一个实例出现故障,集群件将自动重启该实例,这样通常可在管理员发现前恢复该服务。
在Oracle数据库l0g第2版中,Oracle提供了高可用性API,这样可使用Oracle集群件内高可用性框架来控制非Oracle的流程。当向Oracle集群件注册流程时,需要提供如何启动、终止和监控这些流程的信息。您还可以指定当执行流程的节点出现故障时,是否将该流程转移到另一个节点。
硬件体系结构
Oracle真正应用集群是一个全共享的体系结构。集群中的所有服务器必须共享用于RAC数据库的所有存储器。存储用的磁盘类型可以是网络连接存储(NAS)、存储区域网络(SAN)、或是SCSI磁盘。存储器的选择受限于所选用的服务器硬件及硬件供应商所支持的存储器类型。选择存储器的关键之处在于选择一个可向您的应用程序提供可伸缩I/O的存储系统,一个在向集群中添加服务器时可进行伸缩的I/O系统。
对于数据库服务器所连入的局域网(LAN),集群还需要另外一个网络连入该局域网,用于应用程序连接。集群还需要一个专用的网络,即通常所说的互联。Oracle建议您对这一网络使用两个网络接口,以实现高用性。我们需要使用不属于Oracle的网络接口来提供故障切换和负载均衡。集群使用这一互联来进行节点间消息传递。RAC则使用这一互联来实施缓存融合技术。对于集群互联,Oracle建议使用UDP,不建议使用GigE。在实际应用环境中,RAC数据库不支持将交叉线缆用作互联。
集群由1到多个服务器组成,每个服务器有一个LAN连接、一个互联连接,必须连接到共享存储器。在Oracle数据库10g第2版中,Oracle集群件和真正应用集群可支持多达100个集群节点。集群中的每个服务器不需要完全相同,但是必须使用同样的操作系统和同一版本的Oracle产品。所有服务器必须支持同一体系结构,如全部为32位或全部为64位。
要了解关于Oracle真正应用集群的认证和技术限制信息,请访问Oracle Metalink (http:/ /metalinkoracle.com)。
文件系统和卷管理
因为RAC是一个全共享式的体系架构,卷管理和文件系统必须能够识别集群。Oracle建议使用自动存储器管理(ASM),它是Oracle数据库10g包含的一个特性,能够自动管理用于数据库的存储器。使用ASM可以方便地管理文件系统,提供异步I/O的性能。ASM通过跨所有可用资源分配I/O负载来优化性能,且免除了手动调整I/O的需要。
Oracle也支持原始设备和某些集群文件系统,如Oracle集群文件系统 (OCFS),这一文件系统可用于Windows、Linux和Solaris(用于Solaris的OCFS将于Oracle数据库10g第2版之后推出)。
虚拟互联网协议地址(VIP)
Oracle真正应用集群10g要求集群中的每个服务器都使用一个虚拟IP地址。虚拟IP地址即是与局域网所属子网相同的子网中的一个未使用的IP地址。应用程序使用这一地址连接RAC数据库。如果一个节点出现故障,该虚拟IP将自动切换到集群中的另一个节点,这样就可以快速响应针对故障节点的连接请求。这提升了应用程序的可用性,因为他们的连接请求可自动切换到集群中的另一个实例,此前不再需要等待网络超时。
集群验证实用程序
Oracle数据库10g第2版引入了一个新的集群配置验证工具。该集群验证工具通过对前后安装步骤和/或配置变化进行验证,避免发生错误。它还可用于现有的集群验证。该工具可以通过命令行接口调用,也可由其它程序通过API进行调用,如Oracle Universal Installer (OUI)程序。
远距离集群RAC
在远距离集群RAC这一体系结构中,集群中的各节点位于不同的地理位置。远距离集群RAC提供了非常快速的站点故障恢复,允许所有站点中的所有节点作为单个数据库集群的一部分主动进行事务处理。当该体系结构受到世人瞩目并成功实施后,关键是要了解这一体系结构最适用的情形—距离、延迟时间,及其提供的保护程度。
延迟时间会产生巨大的影响,所以距离便对这一体系结构的适用情形有一些实际限制。这一体系结构适用于2个数据中心间的距离相对较小(小于等于100公里),且有资金在两个站点间建立带专用通道的直连线缆的情况。
远距离集群RAC提供了比本地RAC更高的可用性,但并不能达到企业所需的完全灾难恢复要求。合理分区可以很好地防御某些灾难事件(局部断电、飞机失事、机房被淹),但并不是所有灾难事件。如地震、飓风、区域性洪灾会影响更大的区域。客户应通过分析确定一个灾难事件是否会同时影响两个站点。要实现全面的灾难防御(包括防御数据出错和区域性灾难),Oracle建议用户结合Data Guard使用RAC,如Oracle高可用性体系结构文档中所述。Data
Guard还提供了其它的一些功能,如支持跨Oracle版本进行滚动升级。
远距离集群的配置也较本地集群复杂。需要精心考虑节点的布局、表决磁盘和数据磁盘的布置.妥善实施这一体系结构后,它将提供比本地RAC数据库更高的可用性。Oracle集群件、Oracle真正应用集群和自动存储器管理可用于构建远距离集群。
ORACLE真正应用集群的优势
高可用性
Oracle真正应用集群10g提供了实现数据中心高可用性的基础架构。它还是Oracle高可用性体系结构不可或缺的一部分,提供了构建高可用性数据管理解决方案的最佳实践。Oracle真正应用集群针对高可用性解决方案的主要特性提供了保护功能。
可靠性—Oracle数据库以其稳定性著称。真正应用集群将这一优点发扬光大,能够以单点故障方式移除服务器。如果一个实例故障,集群中的其它实例将仍然保持运行和活动状态。
恢复能力—Oracle数据库包含许多有助于从各类故障中轻松恢复的功能。如果RAC数据库中的一个实例出现故障,集群中的另外一个实例将察觉到这一故障,随后自动进行故障恢复。利用快速应用程序通知,快速连接故障转移和透明应用程序故障切换这三个功能,应用程序可以很方便地掩藏组件故障,使用户无法察觉。
错误检测—Oracle集群件自动监控RAC数据库并可对环境中的错误进行快速检测。在用户不知不觉中自动完成故障恢复。使用快速应用程序通知功能,应用程序能够在集群组件出现故障出现时立即得到通知,然后将事务切换至无故障节点,从而掩藏这一故障,让用户无法察觉。
持续运行—使用真正应用集群,在计划和意外停机期间仍可持续提供服务。如果一个节点(或实例)出现故障,数据库将仍然保持运行状态,应用程序仍可访问数据。大多数的数据库维护操作可在不中断运行的情况下完成,并且对用户透明。其它维护任务可以通过滚动方式完成,所以可将应用程序中断时间降至最少,或完全消除。快速应用程序通知和快速连接故障切换可帮助应用程序达到服务水平和掩藏组件故障。
可伸缩性
Oracle真正应用集群提供了独一无二的应用程序伸缩技术。传统上,当服务器容量不足时,我们会使用更大的新服务器来替换它。但服务器容量越大,其价格也愈加昂贵。而对于使用了RAC的数据库,我们可选择其它方法进行增容。原先运行于大型SMP服务器上的应用程序可移植到小型服务器集群中运行。或者,您也可以选择保留现有硬件的投资,在集群中加入新服务器(或创建一个集群)来增加容量。通过Oracle集群件和RAC向集群中添加服务器时并不需要停机,且在启动新实例后,应用程序就可立即利用这些增加的容量。集群中的所有服务器必须使用同一操作系统和相同版本的Oralce软件,但其容量不需要一样。现在,客户可以根据自己的需要来选择集群,可以是由每台服务器含2个cpu的普通服务器组成的集群,也可以是每台服务器含32或64个cpu的服务器组成的集群。
Oracle真正应用集群可以自动适应快速变化的业务要求和由此带来的负载变化。应用程序用户,或中层应用程序服务器客户端可使用服务名连接到数据库。Oracle可在集群中的多个节点中自动进行负载均衡。在不同节点上的真正应用集群数据库实例订阅了所有或部分数据库服务。这样DBA就可以灵活地选择某个连接到特定数据库服务是否可以连接到某个或所有数据库节点。当应用需求上升时,管理员可以很方便地增添处理能力。RAC的缓存融合体系结构可立刻使用新节点的CPU和内存资源。DBA不需要手动对数据进行重新分区。
在Oracle数据库中分配负载的另一个方法通过Oracle数据库的并行执行特性。并行执行(如并行查询或并行DIIL)在多个进程间划分SQL语句执行工作。在Oracle真正应用集群环境中,可在多个实例间均衡分配这些进程。Oracle提供了基于成本的优化程序,它以并行执行作为其基础元素来制定最佳的执行方案。在真正应用集群环境中,明智的决策都要考虑到节点内和节点间的并行性。例如,完成某个查询需要6个查询进程,本地节点中(用户
连接到的节点)有6个闲置的CPU,则只需使用本地资源来处理该查询即可。这演示了高效的结点间并行性,且消除了在多个节点间协调查询的开销。但是,如果该本地结点中只有两个CPU,那么就由这两个CPU再加上其它节点中的4个CPU来处理这一查询。这样就利用了节点内和节点间并行性来加快查询的处理。
管理ORACLE真正应用集群数据库为便于配置和管理,Oracle真正应用集群提供了一个系统镜像。用户可在一个位置完成RAC数据库的安装、配置和管理。用于管理数据库的工具和实用程序都可识别集群,从Oracle Universal Installer (OUI)到Enterprise Manager,包括数据库配置助理(DBCA)、数据库升级助理(DBUA)、网络配置助理(NETCA)和命令行,如srvctl。
Enterprise Manager10g
Enterprise Manager10gDatabase Control是Oracle提供的一个用于管理Oracle数据库的GUI管理工具。在创建数据库时,DBCA会自动配置Database Control。Enterprise Manager10gGrid Control是Oracle提供的一个用于管理企业的GUI管理工具。用户可通过Oracle数据库CD包内的一张CD来安装该Grid
Control。这些工具都可识别集群且提供了一个中央控制台来管理您的集群数据库。
在Cluster Database Page中,您可以:
查看整体系统状态,例如,集群数据库内节点的数量及其当前的状态。
查看所有实例的警报,同时详细观察每一警报的根源和其它信息。
在集群数据库基础上设置警报阈值。监视所有实例的性能标准或逐个显示,以便逐个进行比较,或在需要时了解更详细的信息。监视集群缓存一致性情况(例如:全局缓存获取等)。执行集群数据库操作,包括启动备份与恢复,以及开始/停止实例等。
分享到:
相关推荐
在Linux环境下搭建Oracle集群是一项复杂而关键的任务,它涉及到多个层面的技术知识,包括操作系统管理、数据库架构、网络配置以及高可用性解决方案。Oracle集群(Oracle Real Application Clusters,简称RAC)是...
Oracle集群在Linux环境下的安装是一项复杂而关键的任务,涉及到多个步骤和技术细节。以下是对这个主题的详细解释: 首先,Oracle集群的基础是操作系统,这里提到了Tru64 UNIX V5.1A,这是一个由Compaq(后被HP收购...
Oracle集群搭建是一个复杂而精细的过程,特别是在Oracle 11g RAC(Real Application Clusters)环境下。Oracle RAC是一种高可用性解决方案,允许多个数据库实例同时访问同一个物理数据库,从而提高了系统的性能和...
Oracle集群配置手册文档主要涵盖了构建和管理Oracle Real Application Clusters (RAC)的全面知识。Oracle RAC是一种高可用性和可扩展性的数据库解决方案,它允许多个服务器节点共享同一个数据库实例,以提供故障切换...
### Oracle集群搭建步骤详解 #### 一、版本说明与环境准备 在进行Oracle集群搭建之前,首先需要确保使用的版本和操作系统兼容性。本教程中,将详细介绍如何搭建Oracle 11g R2 11.2.0.4 的RAC (Real Application ...
【Linux下Oracle集群常见问题及解决策略】 Oracle集群技术是一种将多台服务器组合成集群,以提高整体性能和可用性的技术。在Linux环境下,Oracle集群是实现高可用性和负载均衡的重要解决方案。Oracle从Oracle 9i...
Oracle集群配置是构建高可用性、高性能数据库环境的关键步骤,特别是在大型企业和关键业务系统中。Oracle集群能够确保数据的安全性和服务的连续性,通过在多个物理节点之间共享资源来实现故障转移和负载均衡。 在...
在深入探讨Oracle RAC(Real Application Clusters)集群管理状态为"unknown"的问题之前,我们首先需要理解Oracle RAC的基本概念及其运作原理。Oracle RAC是Oracle数据库的一种高可用性解决方案,它允许多个数据库...
【标题】:“WebSphere Application Server (WAS)与Oracle集群的整合” 【正文】: WebSphere Application Server(WAS)是IBM提供的一款企业级Java应用服务器,它支持各种应用程序和服务的部署,包括Web应用程序...
Oracle 集群学习笔记 Oracle 集群是一种高可用性和高性能的解决方案,通过将多个服务器组合成一个集群,可以实现数据库的高可用性和负载均衡。下面是 Oracle 集群的详细知识点: 1. Oracle 集群的总体结构 ...
在IT领域,Oracle集群是一种高可用性和高性能的解决方案,它允许多台服务器共享同一数据库,以提供冗余和负载均衡。在本主题中,我们将深入探讨如何在Windows Server 2003操作系统环境下搭建和管理Oracle集群。 ...
从给定的文件信息来看,主要涉及的是尚观教育提供的"D-UOA-Oracle集群架构师-V8.3版"课程的详细信息。该课程聚焦于Oracle集群架构的高级技术和实践,旨在培养具备Oracle高端解决方案能力的专业人才。以下是对标题、...
Oracle真正应用集群(Real Application Clusters, 简称RAC)是Oracle数据库的一个关键特性,它提供了高可用性和可扩展性,使得多个数据库实例可以在同一个数据库上共享数据,从而在多台服务器之间实现负载均衡和故障...
Oracle集群是一种高可用性和负载均衡解决方案,它允许多台服务器共同访问同一个Oracle数据库,从而确保在单个服务器故障时数据库仍能正常运行。本篇学习笔记主要探讨Oracle集群的原理、Oracle Clusterware的体系结构...
### Oracle 集群与 RAC 技术详解(Linux 版) #### 一、Oracle 集群与 RAC 概述 Oracle 集群与 RAC(Real Application Clusters)是 Oracle 数据库系统的一项关键技术,它主要用于提高系统的可用性、性能以及可...
### Oracle 11g 集群安装与配置详解 #### 一、Oracle RAC 11g 集群概述 Oracle Real Application Clusters (RAC) 是一种集群技术,能够在一个或多个服务器上运行单个 Oracle 数据库实例。这种架构提供了高可用性和...
标题中的“websphere 连接ORACLE集群的方法”是指在IBM Websphere应用程序服务器中配置数据源以连接到Oracle数据库集群的过程。Oracle集群通常使用Real Application Clusters (RAC)技术,这是一种高可用性和可扩展性...
Oracle集群维护是数据库管理员在管理高可用性Oracle环境时的一项关键任务。Oracle集群提供了一种在多台物理服务器上运行数据库实例的方式,以确保服务的连续性和数据的可靠性。以下是对Oracle集群维护主要方面的深入...
Oracle数据库集群是一种高级数据库架构,它通过将多个服务器硬件节点联合起来,形成一...在设计和管理Oracle集群时,还需要考虑其他因素,如集群的大小、并发用户数以及数据的分布特性,以确保实现最佳的性能和可用性。