This is an excerpt from the bestselling book
Oracle Grid & Real Application Clusters. To get immediate
access to the code depot of working RAC scripts, buy it
directly from the publisher and save more than 30%.
In this chapter, the
architecture of the RAC database system is examined. RAC database is
a multi-instance single database. All the components that make up
total architecture will be reviewed and the inter-relations for
these components will be covered.
RAC is the principal component
for the Oracle Grid Architecture. Oracle?s Grid vision represents a
pool of database servers, storage, and networks in an inter-related
resource platform. Effective Management of workload within the grid
database computing arena is a key feature. RAC Database and
clustering technology helps to set up and manage the overall Oracle
Grid strategy. Database processing and capability can be easily and
dynamically added with the RAC technology.
Keep in mind that Clusters and
Grids have different vision and objectives. Clusters have static
resources for a specific application. Grids, which can consist of
multiple clusters and stand alone servers, are dynamic resource
pools and they are shareable among many different applications and
users. A grid does not assume that all servers in the grid are
running the same set of applications.
The Component Diagram in Figure
4.1 shows a collection of all the components that inter-relate to
each other and together make up the Oracle Real Application Cluster.
This diagram provides a roadmap for discussion.
At a very high level, RAC
architecture consists of these components:
* Physical Nodes or Hosts
* Physical Interconnects and
* Cluster Manager Software and
Cluster Ready Services
* Oracle Instances and Cache
* Shared Disk System
* Clustered File System, Raw
Devices, Automatic Storage Management
* Network Services
* Workload Management Services ?
Virtual IP configuration
The overall structure of an
Oracle Single-instance database is fairly complex. A complete Oracle
instance consists of disk files, shared memory structures, and
background processes. The shared memory area is further subdivided
into numerous caches and pools that are used to transfer data,
programs, and instructions from processes to and from the disks and
Figure 4.1: All the Logical and
Physical Components of RAC
Each of the instances in the
cluster configuration communicates with other instances by using the
cluster manager or clusterware. Clusterware is the middleware that
glues all the clustered instances and projects a single database
Cluster platforms depend on the
cluster management program to track the cluster node status, whether
or not nodes in the cluster are available for work. Essentially the
two types of cluster managers are vendor supplied and Oracle
HP supplies TruUnix TruCluster
and HP-UX MC/Service Guard, IBM supplies HACMP/ESCRM for AIX
platform and there are several other platforms where the vendor will
supply the cluster manager. RAC is also certified for use on Sun
Solaris using Sun Cluster version 3.0, Veritas DBE/AC version 3.5,
and Fujitsu-Siemens Prime Cluster versions 4.1 and 4.0. RAC is also
available for HP Alpha OpenVMS. VMS is cluster aware out-of-the-box
so no clusterware is needed. For Linux and Windows, Oracle provides
the cluster management software. To implement Oracle RAC on
IBM-OS/390, the XCF clusterware is needed that is compatible with
the current release of OS/390.
Clusterware, regardless of who
supplies it, provides node monitoring for the other nodes in the
system. By means of a heartbeat signal sent over the cluster
interconnect, all nodes in a RAC cluster keep track of what nodes
are available, which ones are unavailable, and whether or not a node
With 10g release, Oracle
provides portable clusterware which works on all the platforms to
implement the RAC database solution. Oracle provided clusterware can
be used independently or on top of the vendor provided cluster
software. In case of Windows and Linux, the Oracle provided
clusterware is the only choice, in other platforms such as Solaris,
HP-UX and TruUnix, one has the choice of the vendor supplied cluster
software. Oracle provided portable clusterware is named and packaged
under the title Cluster Ready Service (CRS). In fact, CRS is much
more than the cluster software. It provides a method to configure
High Availability (HA) services and Oracle Notification Services (ONS).
CRS will be examined in more detail later in this Chapter.
The shared storage provides
concurrent access by all the cluster nodes to the storage array. The
storage array is presented in the form of logical units (LUNS) to
the cluster host or node and the file system is mounted on all
nodes. Thus, when the same file system is mounted and used on all
nodes in the cluster, it is called a cluster file system. There are
many flavors of approved cluster file systems such as HP?s CFS,
Veritas CFS, PolyServe CFS, and Oracle CFS (OCFS). At the same, the
option still exists to use the raw devices for many of the RAC
With 10g release, Oracle
provides a very flexible and high performing shared storage
methodology which is known as Automatic Storage Management (ASM).
ASM can be used in lieu of the cluster file system. More details of
the shared storage and its presentation to the cluster nodes will be
presented in later parts of this chapter and also in Chapter 5,
Preparing Shared Storage.
The next section will help
define the difference between Database and Database Instance?
Understanding of the difference is very important in order to
appreciate the RAC option.