You are on page 1of 23


Real Application Clusters(RAC)

By Emmanuel Adarkwah

What is RAC
RAC stands for Real Application Clusters. It allows multiple nodes in a clustered system to mount and open a single database that resides on shared disk storage.

Should a single system (node) fail, the database service will still be available on the remaining nodes.

ORADB2) o Shared Storage(DATA_DG.Oracle RAC An Oracle RAC database requires three components: o Cluster Nodes (ORADB1.FRA_DG) o Oracle Clusterware .

.  Oracle RAC uses Cache Fusion to synchronize the data stored in the buffer cache of each cluster database instance.Cluster Nodes  Each cluster database instance in an Oracle RAC cluster uses its own memory structures and background processes.  Cache Fusion moves current data blocks (which reside in memory) between database instances. enabling the Oracle RAC database to access and modify data as if the data resided in a single buffer cache. rather than having one database instance write the data blocks to disk and requiring another database instance to reread the data blocks from disk.  When a data block located in the buffer cache of one instance is required by another instance. Cache Fusion transfers the data block directly between the instances using the interconnect.

each server looks like any standalone server. Each server has additional processes that communicate with each other so the separate servers appear as if they are one server to applications and end users. However.What is Oracle Clusterware? Oracle Clusterware is a software that enables servers to operate together as a single server. .

run by Cluster Ready Services (CRS) includes two important components: the voting disk and the OCR.Oracle Clusterware Oracle Clusterware. The voting disk is a file that manages information about node membership. . A node must be able to access more than half of the voting disks at any time. OCR is a file that manages cluster and Oracle RAC database configuration information.

Oracle Clusterware For redundancy. These disk partitions should be spread across different physical disks. one should have at lease two OCR disks and three voting disks (raw disk partitions). .

. Event Volume Manager Daemon (evmd) and Oracle Process Monitor Daemon(oprocd).Cluster Ready Services (CRS) CRS service has four components namely CRS Daemon (crsd). Oracle Cluster Synchronization Service Daemon (ocssd).

.CRS Daemon(crsd) crsd manages the resources like starting and stopping the services and failing-over the application resources. It spawns separate processes to manage application resources. Manages the Oracle Cluster Registry and stores the current known state in the Oracle Cluster Registry. Runs as ‘root’ on UNIX.

with CSS.  Upon startup. This allows CSS across all RAC nodes to keep diskgroup metadata in-sync.Cluster Synchronization Services Daemon (ocssd)  ocssd maintains synchronization between the ASM and database instances. ASM will register itself and all diskgroups it has mounted.  Since CSS provides cluster management and node monitor management.  Cluster Synchronization Services(CSS) is automatically installed on every node that runs Oracle Database 10g ASM and starts up automatically on server boot-up. . it inherently monitors ASM and its shared storage components (disks and diskgroups).

ASM internodes messages are initiated by structural changes that require synchronization.g. ASM uses the same integrated lock management infrastructure that is used by the database for efficient synchronization.  CSS is used to heartbeat the health of the ASM instances.Cluster Synchronization Services Daemon (ocssd)  Any new diskgroups that is created is also dynamically registered and broadcasted to other nodes in the cluster. internodes communication is used to synchronize activities in ASM instances. Thus. The CSS daemon must be up before the ASM instance can be started . adding a disk. .  As with the database. e.

ocssd runs as ‘oracle’ user.Cluster Synchronization Services Daemon (ocssd) If a node cannot access the minimum required number of voting disks it is evicted or removed from the cluster. .

evmd runs as ‘oracle’ user. It will restart automatically on failures and death of the evmd process does not halt the instance.Event Volume Manager Daemon(evmd) evmd spawns a permanent child process called ‘evmlogger’ and generates events when things happen. . evmd child process ‘evmlogger’ spawns new children processes on demand and scans the callout directory to invoke callouts.

It is the process monitor for the oracle clusterware and it uses the hang check timer or watchdog timer (depending on the implementation) for the cluster integrity. Oprocd is locked in the memory and runs as a real time process.Process Monitor Daemon(Oprocd) Oprocd provides the I/O Fencing solution for the Oracle Clusterware. This sleeps for a fixed time and runs as ‘root’ user. Failure of the Oprocd process causes the node to restart. .

. o Device/File Name: /dev/raw/raw1 o Device/File Name: /dev/raw/raw2 The daemon OCSSd manages the configuration info in OCR and maintains the changes to cluster in the registry. typically located in a shared raw volume that must be accessible to all nodes in the cluster. It is a shared disk component. On NHIA system.Oracle Cluster Registry (OCR) OCR is used to store the cluster configuration information. OCR files are located on these raw devices.

On NHIA system. the voting disk also is a shared disk component that is accessed by the nodes during the cluster operation. the following are Voting Disk raw devices.  Like OCR. o Device/File Name: /dev/raw/raw3 o Device/File Name: /dev/raw/raw4 o Device/File Name: /dev/raw/raw5  If a node is unable to ping the voting disk. the cluster immediately detects a communication failure and the node is evicted from the cluster to keep the cluster healthy. .Voting Disk  The voting disk is used to store the heartbeat information between nodes.

 Since the Oracle RDBMS/ASM instances are dependant on the VIP.What is VIP?  The Oracle 10g VIP is an IP address managed by CRS. which is to be used for client connections to the RAC instances. as there will be a smaller chance of clients waiting for TCP/IP timeouts due to unreachable servers. the node / network failure will be made transparent from clients attempting to connect to the failed node (through the VIP). a VIP failover would mean that the instance running on the failed node would be automatically shut down.  By maintaining the IP address of a failed node on a healthy node.  Upon a node / network failure of a cluster node.  Therefore. but also to achieve higher instance availability. it is important to consider multipathing the public LAN. not only to achieve a robust client network. . CRS will relocate the VIP address on the failed node to a surviving cluster node.

What is VIP?  When a VIP fails over to a surviving node due to a node/interconnect failure. the VIP would not fail back to the original node when the network failure is resolved. either one of the following three steps need to be taken: A) Reboot the failed node after the failure is resolved B) Start the instance on the failed node srvtcl start instance -d <dbase> -i <instance> C) Re-start the node applications on the failed node srvctl stop nodeapps -n <nodename> srvctl start nodeapps -n <nodename> . it will automatically fail back to the original node whenever the failed node comes back in a healthy state. when a VIP fails over to a surviving node due to a public network failure.  However.  In order to fail back the VIP to its original hosting node.

. system requirements. as well as operating system groups and users.  Cluster Verification Utility (CVU)–The CVU is a command-line tool used to verify a range of cluster and Oracle RAC components such as shared storage devices. networking configurations. Configuring and Managing Oracle RAC  Oracle Universal Installer (OUI)–OUI installs the Oracle Clusterware and the Oracle Database software with Oracle RAC on the specified nodes using a network connection.Tools for Installing. and Oracle Clusterware.

 Server Control (SRVCTL)–SRVCTL is a command-line interface that is used to manage an Oracle RAC database from a single point. node-level applications.Tools for Installing. . Listeners. o to add services and manage configuration information. Configuring and Managing Oracle RAC  Oracle Enterprise Manager –Oracle Enterprise Manager has both the Database Control and Grid Control graphical user interfaces (GUIs) for managing single instance and Oracle RAC environments. and Oracle Enterprise Manager agents (for maintenance purposes). Oracle Notification Services. It can be used: o to start and stop the database and instances o to delete or move instances and services. o to start and stop a group of applications that includes virtual IP addresses.

. It can be used: o to start and stop Oracle Clusterware o to determine the current status of your Oracle Clusterware installation.Tools for Installing. Configuring and Managing Oracle RAC Cluster Ready Services Control (CRSCTL)– CRSCTL is a command-line tool that can be used to manage Oracle Clusterware.

Conclusion Oracle Real Application Clusters (RAC) provides. ofault tolerance operformance oscalability with no application changes necessary. .

Thank you .