What is Oracle cluster
The Oracle Clusterware was introduced in 10.1 (initially called CRS ) and is the product that lies under RAC. It enables servers to operate together as if they are one server. Each server looks like any standalone server. However, 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
Oracle Clusterware provides different services to Oracle RAC including:
- Group Services
- Node Monitor
- Locking services
- HA Resource management
- Event framework, etc
Oracle clusterware Components
Several components are needed to have CRS running on a Unix machine. Here is a brief description of each:
Daemons and init.* scripts
Oracle Clusterware is formed of several daemons, each one of which has a special function inside the stack. The daemons are located inside the directory $CRS_HOME/bin. Here is a list of the daemons, for 10.2.0.3 and later, note that depending on the platform and whether or not there is a 3rd-party vendor Clusterware installed, some of the following processes may not be present:
Oracle Cluster Registry and Voting Disk
The OCR contains the configuration information for the Clusterware, like the network endpoints where the daemons (ocssd.bin, crsd.bin, etc) will be listening, cluster interconnects information for RAC, location for Voting disk, etc.
The Voting disk is a communication mechanism where every node reads and writes its heartbeat information. The Voting disk is also used to kill the node(s) when the network communication is lost between one or several nodes in the cluster to prevent a split-brain and protect the database information.
Control files (also know as SCLS_SRC files)
These files are used to control some aspects of Oracle Clusterware like:
- enable/disable processes from the CSSD family (Eg. oprocd, oslsvmon)
- stop the daemons (ocssd.bin, crsd.bin, etc).
- prevent Oracle Clusterware from being started when the machine boots.etc.