Cluster Ready Service STACK.
Below are the Components of CRS Stack.
- Cluster Synchronization Service.
- Oracle ASM.
- Cluster Time Synchronization Service
- Event Management
- GRID NAMING Service.
- Oracle Agent.
- Oracle Notification Service.
- Oracle Root Agent.
This background process publishes events to all the members of the cluster. On Linux/Unix, the process name is evmd.bin, and on Windows, it is evmd.exe.
[root@rac1 ~]# ps -ef|grep evmd
grid 2317 1 1 06:46 ? 00:00:55 /u002/app/oracle/product/12.1.0/grid/bin/evmd.bin
grid 2426 2317 0 06:46 ? 00:00:15 /u002/app/oracle/product/12.1.0/grid/bin/evmlogger.bin -o /u002/app/oracle/product/12.1.0/grid/log/[HOSTNAME]/evmd/evmlogger.info -l /u002/app/oracle/product/12.1.0/grid/log/[HOSTNAME]/evm /evmlogger.log.
EVMD process run as Grid user.
EVMD process spawn the child process evmlogger. and generate the event when something happened in the cluster.
EVMD process scan the callout directory to invoke the callout message.
EVMD process will restart on failure & does not bring node reboot. It will start automatically.
grid 2317 1 1 07:36 ? 00:01:10 /u002/app/oracle/product/12.1.0/grid/bin/evmd.bin
root 9175 5073 0 09:04 pts/0 00:00:00 grep --color=auto evmd.bin
[root@rac1 evmd]# kill -9 2317
[root@rac1 evmd]# ps -ef|grep evmd.bin
grid 10510 1 3 09:08 ? 00:00:00 /u002/app/oracle/product/12.1.0/grid/bin/evmd.bin
root 10528 5073 0 09:08 pts/0 00:00:00 grep --color=auto evmd.bin
[root@rac1 evmd]#
Lets Consider two Node cluster RAC1,RAC2 , If rac2 leave the cluster , the OCSSD process on RAC1 post a leave FAN event and then EVMD publish and distribute this message to CRSD process on Node A.
CRS Process is always Communicate with EVMD process because its Subscribe to EVMD demon for FAN event.
GRID NAMING Service.:-
1. Allocate one static IP address on public network for the GNS VIP.
2. Setup GNS as a delegate for the cluster's sub-domain on the DNS server.
3. Validate that there is a DHCP server that is addressable by the cluster nodes.
When installing RAC , there are 2 options:
1. Configure GNS and let it handle name resolution in the cluster subdomain.
2. Do not select GNS and configure each Node and SCAN name with IP addresses defined in DNS.
Oracle ASM:-
From 11g the ASM is important part of RAC. and its provide the Disk, Volume management in Cluster ware and oracle database.
below Are the ASM process.
grid 3149 1 0 07:37 ? 00:00:00 asm_pmon_+ASM1
grid 3151 1 0 07:37 ? 00:00:02 asm_psp0_+ASM1
grid 3154 1 2 07:37 ? 00:03:32 asm_vktm_+ASM1
grid 3158 1 0 07:37 ? 00:00:06 asm_gen0_+ASM1
grid 3160 1 0 07:37 ? 00:00:00 asm_mman_+ASM1
grid 3164 1 0 07:37 ? 00:00:10 asm_diag_+ASM1
grid 3166 1 0 07:37 ? 00:00:00 asm_ping_+ASM1
grid 3168 1 0 07:37 ? 00:00:23 asm_dia0_+ASM1
grid 3170 1 0 07:37 ? 00:00:27 asm_lmon_+ASM1
grid 3172 1 0 07:37 ? 00:00:13 asm_lmd0_+ASM1
grid 3174 1 0 07:37 ? 00:00:41 asm_lms0_+ASM1
grid 3178 1 0 07:37 ? 00:00:15 asm_lmhb_+ASM1
grid 3180 1 0 07:37 ? 00:00:00 asm_lck1_+ASM1
grid 3182 1 0 07:37 ? 00:00:00 asm_dbw0_+ASM1
grid 3184 1 0 07:37 ? 00:00:00 asm_lgwr_+ASM1
grid 3186 1 0 07:37 ? 00:00:00 asm_ckpt_+ASM1
grid 3188 1 0 07:37 ? 00:00:00 asm_smon_+ASM1
grid 3190 1 0 07:37 ? 00:00:00 asm_lreg_+ASM1
grid 3192 1 0 07:37 ? 00:00:00 asm_pxmn_+ASM1
grid 3194 1 0 07:37 ? 00:00:01 asm_rbal_+ASM1
grid 3196 1 0 07:37 ? 00:00:04 asm_gmon_+ASM1
grid 3198 1 0 07:37 ? 00:00:00 asm_mmon_+ASM1
grid 3201 1 0 07:37 ? 00:00:02 asm_mmnl_+ASM1
grid 3203 1 0 07:37 ? 00:00:02 asm_lck0_+ASM1
grid 3205 1 0 07:37 ? 00:00:00 asm_gcr0_+ASM1
grid 3328 1 0 07:38 ? 00:00:00 asm_asmb_+ASM1
grid 3330 1 0 07:38 ? 00:00:00 oracle+ASM1_asmb_+asm1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
grid 3889 1 0 07:38 ? 00:00:00 mdb_asmb_-MGMTDB
grid 3893 1 0 07:38 ? 00:00:00 oracle+ASM1_asmb_-mgmtdb (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oracle 8443 1 0 09:03 ? 00:00:00 ora_asmb_TEST1
grid 8458 1 0 09:03 ? 00:00:00 oracle+ASM1_asmb_test1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
Cluster Time Synchronization Service :-
CTSS introduce in 11g. and its handle time synchronization among the node in cluster.
Either you use NTP or CTSS to synch up time among cluster Node.
If NTP service disabled then CTSS provide time synchronization Service.
[root@rac1 evmd]# ps -ef|grep ctss
root 2943 1 0 07:37 ? 00:01:23 /u002/app/oracle/product/12.1.0/grid/bin/octssd.bin reboot
Oracle Notification Service:-
ONS installed& configured during the Clustered installation.
State of resources in cluster has changed then ONS process communicate with each other on node & published the message about resource change.
CRS closely work with ONS process. HA event information triggered by CRS and shared with ONS Process & this ONS process publish this HA event with Middleware tier.
ONS process play very critical role while sharing any FAN event with client.
to use this setup then we have to build some logic so application can get HA event information quickly.
HA events are used for multiple things for eg to detect failure quickly in cluster. & publish the HA event (FAN) Failure Application notification. This FAN event are Published by ONS.
Oracle Agent:-
[root@rac1 evmd]# ps -ef|grep oraagent
grid 3424 1 1 07:38 ? 00:02:52 /u002/app/oracle/product/12.1.0/grid/bin/oraagent.bin
oracle 8299 1 0 09:03 ? 00:00:44 /u002/app/oracle/product/12.1.0/grid/bin/oraagent.bin