In my previous post i’ve wrote about (difference) between RAC and Single installation component on the example ora.asm resource. Now i know why i can’t change some parameter through srvctl.
From the documentation
Cluster Ready Services (CRS): The primary program for managing high availability operations in a cluster.
The CRS daemon (crsd) manages cluster resources based on the configuration information that is stored in OCR for each resource. This includes start, stop, monitor, and failover operations. The crsd process generates events when the status of a resource changes. When you have Oracle RAC installed, the crsd process monitors the Oracle database instance, listener, and so on, and automatically restarts these components when a failure occurs.
Oracle Restart Configuration
Oracle Restart maintains a list of all the Oracle components that it manages, and maintains configuration information for each component. All of this information is collectively known as the Oracle Restart configuration. When Oracle Restart starts a component, it starts the component according to the configuration information for that component. For example, the Oracle Restart configuration includes the location of the server parameter file (SPFILE) for databases, and the TCP port to listen on for listeners.
Let’s look dependences.
NAME=ora.DATA.dg TYPE=ora.diskgroup.type START_DEPENDENCIES=hard(ora.asm) pullup(ora.asm) NAME=ora.asm TYPE=ora.asm.type START_DEPENDENCIES=hard(ora.cssd) weak(ora.LISTENER.lsnr)
NAME=ora.DATA.dg TYPE=ora.diskgroup.type START_DEPENDENCIES=hard(ora.asm) pullup(ora.asm) NAME=ora.asm TYPE=ora.asm.type START_DEPENDENCIES=weak(ora.LISTENER.lsnr)
As you can see in RAC installation we haven’t hard dependency in ora.asm resource though we have that in Single installation.
Let’s look at a part of the log in the time of start.
2014-01-31 13:48:38.315: [ohasd(3967)]CRS-2112:The OLR service started on node. 2014-01-31 13:48:46.864: [gpnpd(4103)]CRS-2328:GPNPD started on node. 2014-01-31 13:48:49.209: [cssd(4183)]CRS-1713:CSSD daemon is started in clustered mode
2014-01-31 13:48:55.029: [ GPNP]clsgpnp_profileCallUrlInt: [at clsgpnp.c:2234] Result: (0) CLSGPNP_OK. Successful get-profile CALL to remote "ipc://GPNPD_node" disco "" ... ... ... 2014-01-31 13:48:55.042: [ CSSD]clssnmReadDiscoveryProfile: voting file discovery string(ORCL:*) 2014-01-31 13:48:55.063: [ SKGFD]Discovery with str:ORCL:*: ... ... ... 2014-01-31 13:48:55.063: [ SKGFD]Discovery with asmlib :ASM:/opt/oracle/extapi/64/asm/orcl/1/libasm.so: str :ORCL:*: 2014-01-31 13:48:55.064: [ SKGFD]Fetching asmlib disk :ORCL:DISK_01: 2014-01-31 13:48:55.064: [ SKGFD]Fetching asmlib disk :ORCL:DISK_02: 2014-01-31 13:48:55.064: [ SKGFD]Fetching asmlib disk :ORCL:DISK_03:
As you can see ohasd had started GPNPD and CSSD. GPNPD successfully had got profile ($GRID_HOME/gpnp//profile/peer/profile.xml) and then CSSD found discovery string for voting files and SKGFD had fetched disks through asmlib. By the way Single installation doesn’t have profile.xml
Anyway in a nutshell, for Single installation you should configure all components individually but shouldn’t/can’t in a RAC installation, all has in a OCR.