CSS (Cluster synchronizationservice)
This service completes the configuration of the entire cluster by managing node memberships in the cluster, and whenever a new node is added to the cluster or a node leaves, theCSS Service is responsible for notifying all nodes of the cluster to change the cluster configuration information. if the entire process on a node fails, the node is restarted and the process runs as root .
CRS(Clusterready Service)
This component is responsible for high availability of the cluster. The objects managed by CRS are called cluster resources . These resources include databases, instances, listeners,VIP addresses, and application processes. CRS manages 4 applications by default:Oracle Listener,VIP address,GSD (globalservice daemon), ONS(oraclenotification service) The configuration information for these resources is saved in OCR . The state of each resource has changed, andCRS generates an event .
CRS monitors the status of these resources, and if a resource fails, CRS restarts the components. If you try to fail a few times, you will give up the attempt, by default CRS will try 5 This reboot and then give up. CRS is also run as root . If the CRS itself fails, the instance is restarted.
EVM(EventManager)
This component is responsible for releasing CRS generated events, and we can define our own callback scripts so that when an event occurs,EVM can invoke our own script, which is done through the racgevt process. This component is also running as root .
In addition to this component,Oracle Clusterware also communicates with ONS (Oracle Notificationservice) , which supports client subscriptions and publishing FAN Event.
The root script will add three rows to the /etc/inittab :
[Email protected] ~]$ Cat/etc/inittab
#
# Inittab This file describes how the INIT process should set up
# The system in a certain run-level.
#
# Author:miquel van Smoorenburg, <[email protected]>
# Modified for RHS Linux by Marc Ewing and Donnie Barnes
#
# Default RunLevel. The runlevels used by RHS is:
# 0-halt (do not set Initdefault to this)
# 1-single User mode
# 2-multiuser, without NFS (the same as 3, if you don't have networking)
# 3-fullmultiuser Mode
# 4-unused
# 5-x11
# 6-reboot (do not set Initdefault to this)
#
Id:5:initdefault:
# System initialization.
Si::sysinit:/etc/rc.d/rc.sysinit
L0:0:WAIT:/ETC/RC.D/RC 0
L1:1:WAIT:/ETC/RC.D/RC 1
L2:2:WAIT:/ETC/RC.D/RC 2
L3:3:WAIT:/ETC/RC.D/RC 3
L4:4:WAIT:/ETC/RC.D/RC 4
L5:5:WAIT:/ETC/RC.D/RC 5
L6:6:WAIT:/ETC/RC.D/RC 6
# Trap Ctrl-alt-delete
Ca::ctrlaltdel:/sbin/shutdown-t3-r now
# when our UPS tells us power had failed, Assumewe have a few minutes
# of Power left. Schedule a shutdown for 2 minutes.
# This does, the course, assume you have powerdinstalled and your
# UPS connected and working correctly.
PF::p owerfail:/sbin/shutdown-f-H +2 "powerfailure; System shutting down "
# If Power was restored before the shutdown Kickedin, cancel it.
Pr:12345:powerokwait:/sbin/shutdown-c "powerrestored; Shutdown Cancelled "
# Run Gettys in standard runlevels
1:2345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty Tty2
3:2345:respawn:/sbin/mingetty Tty3
4:2345:respawn:/sbin/mingetty Tty4
5:2345:respawn:/sbin/mingetty Tty5
6:2345:respawn:/sbin/mingetty Tty6
# Run XDm in RunLevel 5
X:5:respawn:/etc/x11/prefdm-nodaemon
H1:35:respawn:/etc/init.d/init.evmdrun >/dev/null 2>&1 </dev/null
H2:35:respawn:/etc/init.d/init.cssdfatal >/dev/null 2>&1 </dev/null
H3:35:respawn:/etc/init.d/init.crsdrun >/dev/null 2>&1 </dev/null
[Email protected] ~]$
This will automatically start every time the system starts cluster , if the evmd and crsd two processes If an exception occurs, the system will automatically restart the two processes, if the CSSD The process is abnormal and the system restarts automatically .
OCSSD
This process is the most critical process for Clusterware , which causes the system to restart if there is an exception to the process. This process provides CSS services, theCSS Service is responsible for the entire cluster configuration, to determine which nodes are members of the cluster, each time a node joins or leaves the cluster,CSS is responsible for other nodes and the new group configuration. CSS service through a variety of heartbeat mechanism, the implementation of monitoring cluster health status , once an exception occurs, restart the problem node to avoid data corruption and provide basic cluster services such as brain crack protection functions.
The CSS Service has two heartbeat mechanisms: one is through the net of the private network I recognize heartbeat, the other is through voting disk Heartbeat the two heartbeats have a maximum delay, and for disk heartbeat, this delay is called IOT (I/O Timeout); For network Heartbeat, this delay is called MC (miscount);
[[email protected] ~]$ crsctl get CSS Disktimeout
Unrecognized parameter disktimeout specified.
[[email protected] ~]$ crsctl get CSS Misscount
60
[Email protected] ~]$
[Email protected] ~]$ Ps-ef | grep CSS
Oracle 7171 5395 0 01:00 pts/2 00:00:00 grep css
Root 28575 1 0 00:09? 00:00:01/bin/sh/etc/init.d/init.cssdfatal
Root 29007 28575 0 00:11? 00:00:00/BIN/SH/ETC/INIT.D/INIT.CSSD Daemon
Root 29148 29007 0 00:11? 00:00:00/bin/su-l oracle-c/bin/sh-c ' Ulimit-c Unlimited; CD/U01/ORACLE/10.2.0/CRS_1/LOG/FELIX2/CSSD; /U01/ORACLE/10.2.0/CRS_1/BIN/OCSSD | | Exit $? '
Oracle 29149 29148 0 00:11? 00:00:00/bin/sh-c ulimit-cunlimited; CD/U01/ORACLE/10.2.0/CRS_1/LOG/FELIX2/CSSD; /U01/ORACLE/10.2.0/CRS_1/BIN/OCSSD | | Exit $?
Oracle 29181 29149 0 00:11? 00:00:03/u01/oracle/10.2.0/crs_1/bin/ocssd.bin
[Email protected] ~]$
Oprocd
This process is also known as the processes Monitor daemon. This process is used to detect the node's Processhang(CPU hangs). This process is locked in memory and is used for iofencing functions . The oproc process wakes up periodically, checking the time that has passed since the last wakeup, and if the time exceeds an expected value (1.5 seconds), theoprocd process restarts the node.