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%.
Setting up volumes and making
sure the cluster file system is accessible by all nodes configures
the shared storage. In sum, the volumes and the CFS depend on the
physical storage. The cluster volume manager manages all related
objects such as physical disks (LUNS), disk groups, volumes, and
file systems. Oracle uses the ODM (Oracle disk manager) interface to
communicate with Veritas volumes and CFS files.
Cluster Volume Manager (CVM)
CVM is basically an extension of
the widely used Veritas Volume Manager. CVM extends the
functionality of the VxVM to all the nodes in the cluster. Each node
sees the same state of all volume resources. It follows master/slave
architecture. One node usually acts as master and others as slaves.
There is only one master in a given cluster. The volume manager
daemon (vxconfigd) maintains the configuration of the logical
volumes. Each node has the vxconfigd daemon. Changes to a volume are
propagated first to the master daemon and then the master passes it
on to slave daemons. These changes happen at the kernel level. CVM
does not attempt to do any locking between the nodes. That is the
responsibility of the application, as in the RAC database. CVM also
follows the uniform shared storage model. This means that all
systems must be connected to the same disk sets for a given disk
group. If a node loses contact with a specific disk, it is excluded
from using the disk.
Cluster File System (CFS)
Veritas CFS has evolved from the
Veritas File System (VxFS). CFS allows the same file system to be
simultaneously mounted on multiple nodes in the cluster.
Once again, the CFS is designed
with master/slave architecture. Though any node can initiate an
operation to create, delete, or resize data, the master node carries
out the actual operation. CFS caches the metadata in memory,
typically in the memory buffer cache or the vnode cache. A
distributed locking mechanism, called GLM, is used for metadata and
cache coherency among the multiple nodes.
However, with implementation of
the ODM interface, Oracle RAC accesses data files stored on CFS,
bypassing the file system buffer and file system locking processes.
Oracle manages its own consistency mechanism. The ODM facility is
automatically invoked with RAC.
VCS Framework and Service
Veritas Cluster Server (VCS) is
the overall framework that controls the Oracle RAC database and
other required essential resources such as shared storage and
listener. VCS acts as a director of operations. All activities
within Oracle RAC and its infrastructure are managed with the VCS
VCS manages its resources in the
form of a group. A collection of resources of different types for a
given application or task is called a service group. Service groups
act as containers for all the necessary components and resources of
an application. They are defined and managed as a single unit. A
service group definition typically consists of:
* The keyword group in the
* Name of the service group.
* The service group?s attribute
values (enclosed in parentheses). VCS predefine service group
* The definition of service
group resources with attributes/values.
* The dependencies between the
service group resources.
In Veritas DBE/AC, two service
groups are defined to support and control the RAC database. One
service group deals with the volume manager resources, file system
resources, listener resources, and shared Oracle Home directory. The
other service group deals with the Oracle database and supports CVM
and CFS resources. These two groups are specified to be parallel
groups as shown in Figure 6.15. VCS does not attempt to migrate a
failed service group.
Figure 6.15: Veritas DBE/AC
DBEAC provides agents to operate
and control all resources. Agents are the VCS processes that bring
resources online and take them offline. Resources are brought online
and offline in an orderly manner based on the resource dependency.
Agents also monitor resources and report. Some of the agents are
specific to advance clusters including CVMCluster, CVMVoldg and
CFSMount. The Agents stop and start the resources as required. The
VCS implementation for Oracle Failover clusters does not include