The Problem
This a RAC cluster configuration composed of 2 nodes. Clusterware was upgrade from 11.2.0.4 to 12.1.0.2 release. And ASM was converted to “Flex ASM” with “Cardinality = ALL”. Validating the “ora.proxy_advm” resource state reports the below error:
$ srvctl status asm -proxy -n asmcloud2 -verbose PRCR-1001 : Resource ora.proxy_advm does not exist
The Solution
1. ASM instances are running and available on both nodes:
ora.asm 1 ONLINE ONLINE asmcloud1 Started,STABLE 2 ONLINE ONLINE asmcloud2 Started,STABLE
[grid]/home/oracle> asmcmd showclustermode ASM cluster : Flex mode enabled
[grid]/home/oracle> srvctl config asm -detail ASM home:Password file: +OCR/ASM/PASSWORD/orapwasm ASM listener: LISTENER ASM is enabled. ASM is individually enabled on nodes: ASM is individually disabled on nodes: ASM instance count: ALL Cluster ASM listener: ASMNET1LSNR_ASM
2. In this scenario, Flex ASM was configured using ‘Cardinality = ALL‘.
3. This means all the ASM instances must be running on all the nodes.
4. Also, Cardinality = ALL can be interpreted as Flex ASM is disabled (early 11.2 or below ASM release behavior).
Therefore, in this scenario (when Flex ASM is configured using Cardinality = ALL) ADVM proxy (“ora.proxy_advm”) is not required since the ASM instances are up and running on all the nodes to handle ADVM volumes and ACFS filesystems.
Conclusion
To use Oracle ASM with Oracle Database releases earlier than Oracle Database 12c, you must use Local ASM or set the cardinality for Flex ASM to ALL, instead of the default of 3. After you install Oracle Grid Infrastructure 12c, if you want to use Oracle ASM to provide storage service for Oracle Database releases that are earlier than Oracle Database 12c, then you must use the following command to modify the Oracle ASM resource (ora.asm):
$> srvctl modify asm -count ALL
This setting changes the cardinality of the Oracle ASM resource so that Flex ASM instances run on all cluster nodes. You must change the setting even if you have a cluster with three or less than three nodes to ensure database releases earlier than 11g Release 2 can find the ora.node.sid.inst resource alias.