Converting Standard Cluster to Flex Cluster
Converting standard cluster to flex cluster :-
The steps for converting a standard cluster to a flex cluster. There are two phases to converting a standard cluster to flex cluster. First phase involvesconverting Oracle ASM to Flex ASMand second phase is tochange the cluster mode to flex.
1)Current setup is a two node standard cluster .
[[email protected] bin]# ./crsctl get cluster mode status
Cluster is running in "standard" mode
$ asmcmd
ASMCMD> showclustermode
ASM cluster : Flex mode disabled
2)There are few per-requisites to converting ASM to flex ASM, these include that OCR, SPFile and password file all stored in a disk group and this group have ASM compatibility (COMPATIBLE.ASM) set to 12.1 or higher. If this is not the case then make the necessary changes to move these files to disk group.
[[email protected] dbs]$ sqlplus "/ as sysasm"
SQL*Plus: Release 12.1.0.2.0 Production on Sun Dec 18 16:11:50 2016
Copyright (c) 1982, 2014, Oracle. All rights reserved.
Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Real Application Clusters and Automatic Storage Management options
SQL> alter diskgroup DATA set attribute 'compatible.asm'='12.1.0.0.0';
Diskgroup altered.
[[email protected] dbs]$ orapwd file=+DATA password=oracle entries=10 asm=y
[[email protected] dbs]$ cd ..
[[email protected] grid]$ cd bin
[[email protected] bin]$ ./srvctlconfigasm
ASM home: <CRS home>
Password file: +DATA/ASM/PASSWORD/pwdasm.273.930931931
ASM listener: LISTENER
[[email protected] bin]$
3)Another key requirement is that flex cluster requires GNS. If a GNS doesn't existssetup GNSand add the GNS VIP to cluster.
[[email protected] bin]# ./srvctl status gns
GNS is not running.
GNS is enabled.
[[email protected] ~]# cd /u01/12.2.2/grid/bin
[[email protected] bin]# ./srvctl add gns -i 172.17.1.106 -d indiagns.sairam.com
[[email protected] bin]# ./srvctl start gns
[[email protected] bin]# ./srvctl status gns
GNS is running on node india1.
GNS is enabled on node india1.
[[email protected] bin]# ./srvctl configgns -a -l
GNS is enabled.
GNS is listening for DNS server requests on port 53
GNS is using port 5353 to connect to mDNS
GNS status: OK
Domain served by GNS: indiagns.sairam.com
GNS version: 12.1.0.2.0
Globally unique identifier of the cluster where GNS is running: 30dc35e9c650df8cbfd525ea7fdafaf8
Name of the cluster where GNS is running: india-cluster
Cluster type: server.
GNS log level: 1.
GNS listening addresses: tcp://172.17.1.106:23552.
GNS is individually enabled on nodes:
GNS is individually disabled on nodes:
[[email protected] bin]#
[[email protected] bin]# ./srvctlconfiggns
GNS is enabled.
GNS VIP addresses: 172.17.1.106
Domain served by GNS: indiagns.sairam.com
Verify the GNS configuration through cluvfyutility .
[[email protected] ~]$ cd /u01/12.2.2/grid/bin
[[email protected] bin]$ ./cluvfy comp gns -postcrsinst
Verifying GNS integrity
Checking GNS integrity...
The GNS subdomain name "indiagns.sairam.com" is a valid domain name
Checking if the GNS VIP belongs to same subnet as the public network...
Public network subnets "172.17.1.0" match the GNS VIP "172.17.1.106"
GNS VIP "172.17.1.106" resolves to a valid IP address
GNS resource configuration check passed
GNS VIP resource configuration check passed.
GNS integrity check passed
Verification of GNS integrity was successful.
[[email protected] bin]$
4)To start the first phase of converting to flex ASM run asmca and click on ASM instances tab. If role separation is used then make sure grid user has write permission for directory $ORACLE_BASE/cfgtoollogs as the conversion script is generated inside it.
Click convert to Flex ASM button. This would prompt to select a network interface for ASM communication and also to specify a port. The default port is 2222.
Conversion to flex ASM will continue restarting one node at time.
Conversion to flex ASM will continue restarting one node at time.
When prompted execute the script on the same node ASMCA was run.
Output from converttoFlexASM.sh execution :
[[email protected] ~]# /u01/app/oracle/cfgtoollogs/asmca/scripts/converttoFlexASM.sh
CRS-2673: Attempting to stop 'ora.crsd' on 'india1'
CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on 'india1'
CRS-2673: Attempting to stop 'ora.gns' on 'india1'
CRS-2673: Attempting to stop 'ora.DATA.dg' on 'india1'
CRS-2673: Attempting to stop 'ora.LISTENER.lsnr' on 'india1'
CRS-2673: Attempting to stop 'ora.OCRVOTE.dg' on 'india1'
CRS-2677: Stop of 'ora.DATA.dg' on 'india1' succeeded
CRS-2677: Stop of 'ora.OCRVOTE.dg' on 'india1' succeeded
CRS-2677: Stop of 'ora.LISTENER.lsnr' on 'india1' succeeded
CRS-2673: Attempting to stop 'ora.india1.vip' on 'india1'
CRS-2677: Stop of 'ora.india1.vip' on 'india1' succeeded
CRS-2672: Attempting to start 'ora.india1.vip' on 'india2'
CRS-2677: Stop of 'ora.gns' on 'india1' succeeded
CRS-2673: Attempting to stop 'ora.gns.vip' on 'india1'
CRS-2676: Start of 'ora.india1.vip' on 'india2' succeeded
CRS-2677: Stop of 'ora.gns.vip' on 'india1' succeeded
CRS-2672: Attempting to start 'ora.gns.vip' on 'india2'
CRS-2676: Start of 'ora.gns.vip' on 'india2' succeeded
CRS-2672: Attempting to start 'ora.gns' on 'india2'
CRS-2676: Start of 'ora.gns' on 'india2' succeeded
CRS-2673: Attempting to stop 'ora.ons' on 'india1'
CRS-2677: Stop of 'ora.ons' on 'india1' succeeded
CRS-2673: Attempting to stop 'ora.net1.network' on 'india1'
CRS-2677: Stop of 'ora.net1.network' on 'india1' succeeded
CRS-2792: Shutdown of Cluster Ready Services-managed resources on 'india1' has completed
CRS-2677: Stop of 'ora.crsd' on 'india1' succeeded
CRS-2673: Attempting to stop 'ora.ctssd' on 'india1'
CRS-2673: Attempting to stop 'ora.evmd' on 'india1'
CRS-2673: Attempting to stop 'ora.storage' on 'india1'
CRS-2677: Stop of 'ora.storage' on 'india1' succeeded
CRS-2673: Attempting to stop 'ora.asm' on 'india1'
CRS-2677: Stop of 'ora.ctssd' on 'india1' succeeded
CRS-2677: Stop of 'ora.evmd' on 'india1' succeeded
CRS-2677: Stop of 'ora.asm' on 'india1' succeeded
CRS-2673: Attempting to stop 'ora.cluster_interconnect.haip' on 'india1'
CRS-2677: Stop of 'ora.cluster_interconnect.haip' on 'india1' succeeded
CRS-2673: Attempting to stop 'ora.cssd' on 'india1'
CRS-2677: Stop of 'ora.cssd' on 'india1' succeeded
CRS-2672: Attempting to start 'ora.evmd' on 'india1'
CRS-2672: Attempting to start 'ora.cssdmonitor' on 'india1'
CRS-2676: Start of 'ora.cssdmonitor' on 'india1' succeeded
CRS-2672: Attempting to start 'ora.cssd' on 'india1'
CRS-2672: Attempting to start 'ora.diskmon' on 'india1'
CRS-2676: Start of 'ora.diskmon' on 'india1' succeeded
CRS-2676: Start of 'ora.evmd' on 'india1' succeeded
CRS-2676: Start of 'ora.cssd' on 'india1' succeeded
CRS-2672: Attempting to start 'ora.ctssd' on 'india1'
CRS-2672: Attempting to start 'ora.cluster_interconnect.haip' on 'india1'
CRS-2676: Start of 'ora.ctssd' on 'india1' succeeded
CRS-2676: Start of 'ora.cluster_interconnect.haip' on 'india1' succeeded
CRS-2672: Attempting to start 'ora.asm' on 'india1'
CRS-2676: Start of 'ora.asm' on 'india1' succeeded
CRS-2672: Attempting to start 'ora.storage' on 'india1'
CRS-2676: Start of 'ora.storage' on 'india1' succeeded
CRS-2672: Attempting to start 'ora.crsd' on 'india1'
CRS-2676: Start of 'ora.crsd' on 'india1' succeeded
Oracle Grid Infrastructure restarted in node india1
PRCC-1014 : ASMNET1LSNR_ASM was already running
PRCR-1004 : Resource ora.ASMNET1LSNR_ASM.lsnr is already running
PRCR-1079 : Failed to start resource ora.ASMNET1LSNR_ASM.lsnr
CRS-5702: Resource 'ora.ASMNET1LSNR_ASM.lsnr' is already running on 'india1'
ASM listener ASMNET1LSNR_ASM running already
CRS-2673: Attempting to stop 'ora.crsd' on 'india2'
CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on 'india2'
CRS-2673: Attempting to stop 'ora.cvu' on 'india2'
CRS-2673: Attempting to stop 'ora.LISTENER.lsnr' on 'india2'
CRS-2673: Attempting to stop 'ora.LISTENER_SCAN1.lsnr' on 'india2'
CRS-2673: Attempting to stop 'ora.ASMNET1LSNR_ASM.lsnr' on 'india2'
CRS-2673: Attempting to stop 'ora.OCRVOTE.dg' on 'india2'
CRS-2673: Attempting to stop 'ora.orcl.db' on 'india2'
CRS-2673: Attempting to stop 'ora.mgmtdb' on 'india2'
CRS-2673: Attempting to stop 'ora.oc4j' on 'india2'
CRS-2677: Stop of 'ora.cvu' on 'india2' succeeded
CRS-2672: Attempting to start 'ora.cvu' on 'india1'
CRS-2677: Stop of 'ora.LISTENER.lsnr' on 'india2' succeeded
CRS-2673: Attempting to stop 'ora.india2.vip' on 'india2'
CRS-2677: Stop of 'ora.LISTENER_SCAN1.lsnr' on 'india2' succeeded
CRS-2673: Attempting to stop 'ora.scan1.vip' on 'india2'
CRS-2677: Stop of 'ora.ASMNET1LSNR_ASM.lsnr' on 'india2' succeeded
CRS-2677: Stop of 'ora.OCRVOTE.dg' on 'india2' succeeded
CRS-2677: Stop of 'ora.orcl.db' on 'india2' succeeded
CRS-2676: Start of 'ora.cvu' on 'india1' succeeded
CRS-2677: Stop of 'ora.india2.vip' on 'india2' succeeded
CRS-2672: Attempting to start 'ora.india2.vip' on 'india1'
CRS-2677: Stop of 'ora.scan1.vip' on 'india2' succeeded
CRS-2672: Attempting to start 'ora.scan1.vip' on 'india1'
CRS-2677: Stop of 'ora.mgmtdb' on 'india2' succeeded
CRS-2673: Attempting to stop 'ora.MGMTLSNR' on 'india2'
CRS-2677: Stop of 'ora.MGMTLSNR' on 'india2' succeeded
CRS-2672: Attempting to start 'ora.MGMTLSNR' on 'india1'
CRS-2676: Start of 'ora.india2.vip' on 'india1' succeeded
CRS-2673: Attempting to stop 'ora.gns' on 'india2'
CRS-2673: Attempting to stop 'ora.DATA.dg' on 'india2'
CRS-2677: Stop of 'ora.DATA.dg' on 'india2' succeeded
CRS-2676: Start of 'ora.scan1.vip' on 'india1' succeeded
CRS-2672: Attempting to start 'ora.LISTENER_SCAN1.lsnr' on 'india1'
CRS-2677: Stop of 'ora.gns' on 'india2' succeeded
CRS-2673: Attempting to stop 'ora.gns.vip' on 'india2'
CRS-2677: Stop of 'ora.oc4j' on 'india2' succeeded
CRS-2672: Attempting to start 'ora.oc4j' on 'india1'
CRS-2676: Start of 'ora.MGMTLSNR' on 'india1' succeeded
CRS-2672: Attempting to start 'ora.mgmtdb' on 'india1'
CRS-2677: Stop of 'ora.gns.vip' on 'india2' succeeded
CRS-2672: Attempting to start 'ora.gns.vip' on 'india1'
CRS-2676: Start of 'ora.LISTENER_SCAN1.lsnr' on 'india1' succeeded
CRS-2676: Start of 'ora.gns.vip' on 'india1' succeeded
CRS-2672: Attempting to start 'ora.gns' on 'india1'
CRS-2676: Start of 'ora.gns' on 'india1' succeeded
CRS-2676: Start of 'ora.oc4j' on 'india1' succeeded
CRS-2676: Start of 'ora.mgmtdb' on 'india1' succeeded
CRS-2673: Attempting to stop 'ora.ons' on 'india2'
CRS-2677: Stop of 'ora.ons' on 'india2' succeeded
CRS-2673: Attempting to stop 'ora.net1.network' on 'india2'
CRS-2677: Stop of 'ora.net1.network' on 'india2' succeeded
CRS-2792: Shutdown of Cluster Ready Services-managed resources on 'india2' has completed
CRS-2677: Stop of 'ora.crsd' on 'india2' succeeded
CRS-2673: Attempting to stop 'ora.ctssd' on 'india2'
CRS-2673: Attempting to stop 'ora.evmd' on 'india2'
CRS-2673: Attempting to stop 'ora.storage' on 'india2'
CRS-2677: Stop of 'ora.storage' on 'india2' succeeded
CRS-2673: Attempting to stop 'ora.asm' on 'india2'
CRS-2677: Stop of 'ora.ctssd' on 'india2' succeeded
CRS-2677: Stop of 'ora.evmd' on 'india2' succeeded
CRS-2677: Stop of 'ora.asm' on 'india2' succeeded
CRS-2673: Attempting to stop 'ora.cluster_interconnect.haip' on 'india2'
CRS-2677: Stop of 'ora.cluster_interconnect.haip' on 'india2' succeeded
CRS-2673: Attempting to stop 'ora.cssd' on 'india2'
CRS-2677: Stop of 'ora.cssd' on 'india2' succeeded
CRS-2672: Attempting to start 'ora.evmd' on 'india2'
CRS-2672: Attempting to start 'ora.cssdmonitor' on 'india2'
CRS-2676: Start of 'ora.cssdmonitor' on 'india2' succeeded
CRS-2672: Attempting to start 'ora.cssd' on 'india2'
CRS-2672: Attempting to start 'ora.diskmon' on 'india2'
CRS-2676: Start of 'ora.diskmon' on 'india2' succeeded
CRS-2676: Start of 'ora.evmd' on 'india2' succeeded
CRS-2676: Start of 'ora.cssd' on 'india2' succeeded
CRS-2672: Attempting to start 'ora.ctssd' on 'india2'
CRS-2672: Attempting to start 'ora.cluster_interconnect.haip' on 'india2'
CRS-2676: Start of 'ora.ctssd' on 'india2' succeeded
CRS-2676: Start of 'ora.cluster_interconnect.haip' on 'india2' succeeded
CRS-2672: Attempting to start 'ora.asm' on 'india2'
CRS-2676: Start of 'ora.asm' on 'india2' succeeded
CRS-2672: Attempting to start 'ora.storage' on 'india2'
CRS-2676: Start of 'ora.storage' on 'india2' succeeded
CRS-2672: Attempting to start 'ora.crsd' on 'india2'
CRS-2676: Start of 'ora.crsd' on 'india2' succeeded
Oracle Grid Infrastructure restarted in node india2
[[email protected] ~]#
End of the conversion the ASMCA will exit and console will have following output
[[email protected] bin]$ ./asmca
Unable to establish connection to ASM instance.
ORA-01034: ORACLE not available
ASMCA will exit now.
[[email protected] bin]$
This due to the restart of ASM and ASMCA unable to establish the connection. Rerun ASMCA and verify ASM instances are up an running. Notice the convert to flex ASM button is not there anymore.
verify the ASM flex mode with asmcmd
$ asmcmd
ASMCMD> showclustermode
ASM cluster : Flex mode enabled
The second phase is to convert the standard cluster mode to flex. This requires a cluster downtime.
To change the cluster mode to flex as root run the following .
[[email protected] bin]# ./crsctl get cluster mode status
Cluster is running in "standard" mode
[[email protected] bin]# ./crsctl set cluster mode flex
CRS-4933: Cluster mode set to "flex"; restart Oracle High Availability Services on all nodes for cluster to run in "flex" mode.
[[email protected] bin]# ./crsctl stop crs
[[email protected] bin]# ./crsctl start crs
[[email protected] bin]# ./crsctl get cluster mode status
Cluster is running in "flex" mode
[[email protected] bin]# ./crsctl get node role config
Node 'india1' configured role is 'hub'
[[email protected] bin]#