Used Software
- GRID: 11.2.0.3.4
- OEL 6.3
- VirtualBox 4.2.14
Steps
- Install Grid Infrastructure Clusterware + any required patches on our Source CRS
- Prepare the new cluster nodes
- Run the clone.pl on the Destination Node
- Launch the Configuration Wizard
Stop source CRS on grac1 ( Source ) # $GRID_HOME/bin/crsctl stop crs Create a stage directory # mkdir -p /local_tmp/cloneGRID # cp -prf $GRID_HOME /local_tmp/cloneGRID Cleanup staging area cd /local_tmp/cloneGRID/grid rm -rf log/grac1 rm -rf gpnp/grac1 find gpnp -type f -exec rm -f {} \; rm -rf root.sh* rm -rf gpnp/* rm -rf crs/init/* rm -rf cdata/* rm -rf crf/* rm -rf network/admin/*.ora find . -name ’*.ouibak’ -exec rm {} \; find . -name ‘*.ouibak.1′ -exec rm {} \; find cfgtoollogs -type f -exec rm -f {} \; Create an archive of the cleaned staging area # cd /local_tmp/cloneGRID/grid # tar -zcvpf /RAC/cloneGRID/grid112034.tgz . Restart CRS on source node On our cloned system grace1cl create the need directories: # mkdir –p /u01/app/11203/grid # mkdir –p /u01/app/grid # mkdir –p /u01/app/oracle # chown grid:oinstall /u01/app/11203/grid # chown grid:oinstall /u01/app/grid # chown oracle:oinstall /u01/app/oracle # chown –R grid:oinstall /u01 # mkdir –p /u01/app/oracle # chmod –R 775 /u01/ # mkdir -p /u01/app/oraInventory # chown -R grid:oinstall /u01/app/oraInventory # chmod -R 775 /u01/app/oraInventory # ls -ld /u01/app/oraInventory drwxr-xr-x 3 grid oinstall 4096 Jul 17 15:12 /u01/app/oraInventory As root user execute on the new node grac1cl # cd $GRID_HOME # tar -zxvf /tmp/grid112034.tgz . # chown -R grid:oinstall /u01/app/11203/grid Change setuid: # chmod u+s $GRID_HOME/bin/oracle # chmod g+s $GRID_HOME/bin/oracle # chmod u+s $GRID_HOME/bin/extjob # chmod u+s $GRID_HOME/bin/jssu # chmod u+s $GRID_HOME/bin/oradism Prepare script to run clone.sh #!/bin/sh export PATH=/u01/11.2.0/grid/bin:$PATH export THIS_NODE=`/bin/hostname -s` echo $THIS_NODE ORACLE_BASE=/u01/app/grid GRID_HOME=/u01/app/11203/grid E01=ORACLE_BASE=${ORACLE_BASE} E02=ORACLE_HOME=${GRID_HOME} E03=ORACLE_HOME_NAME=GridHome1_112034 E04=INVENTORY_LOCATION=/u01/app/oraInventory C00=-O'"-debug"' C01=-O"\"CLUSTER_NODES={grac1cl}\"" C02="-O\"LOCAL_NODE=$THIS_NODE\"" Run cloning script clone.pl : $ perl ${GRID_HOME}/clone/bin/clone.pl -silent $E01 $E02 $E03 $E04 $C00 $C01 $C02 + perl /u01/app/11203/grid/clone/bin/clone.pl -silent ORACLE_BASE=/u01/app/grid ORACLE_HOME=/u01/app/11203/grid ORACLE_HOME_NAME=GridHome1_112034 INVENTORY_LOCATION=/u01/app/oraInventory '-O"-debug"' '-O"CLUSTER_NODES={grac1cl}"' '-O"LOCAL_NODE=grac1cl"' ./runInstaller -clone -waitForCompletion "ORACLE_BASE=/u01/app/grid" "ORACLE_HOME=/u01/app/11203/grid" "ORACLE_HOME_NAME=GridHome1_112034" "INVENTORY_LOCATION=/u01/app/oraInventory" "-debug" "CLUSTER_NODES={grac1cl}" "LOCAL_NODE=grac1cl" -silent -noConfig -nowait Starting Oracle Universal Installer... Checking swap space: must be greater than 500 MB. Actual 6219 MB Passed Preparing to launch Oracle Universal Installer from /tmp/OraInstall2013-08-09_07-59-43PM. Please wait ... LD_LIBRARY_PATH environment variable : ------------------------------------------------------- Total args: 32 Command line argument array elements ... Arg:0:/tmp/OraInstall2013-08-09_07-59-43PM/jre/bin/java: Arg:1:-Doracle.installer.library_loc=/tmp/OraInstall2013-08-09_07-59-43PM/oui/lib/linux64: Arg:2:-Doracle.installer.oui_loc=/tmp/OraInstall2013-08-09_07-59-43PM/oui: ... Arg:13:oracle.sysman.oii.oiic.OiicInstaller: Arg:14:-scratchPath: Arg:15:/tmp/OraInstall2013-08-09_07-59-43PM: Arg:16:-sourceType: Arg:17:network: Arg:18:-timestamp: Arg:19:2013-08-09_07-59-43PM: Arg:20:-clone: Arg:21:-waitForCompletion: Arg:22:ORACLE_BASE=/u01/app/grid: Arg:23:ORACLE_HOME=/u01/app/11203/grid: Arg:24:ORACLE_HOME_NAME=GridHome1_112034: Arg:25:INVENTORY_LOCATION=/u01/app/oraInventory: Arg:26:-debug: Arg:27:CLUSTER_NODES={grac1cl}: Arg:28:LOCAL_NODE=grac1cl: Arg:29:-silent: Arg:30:-noConfig: Arg:31:-nowait: ------------------------------------------------------- Initializing Java Virtual Machine from /tmp/OraInstall2013-08-09_07-59-43PM/jre/bin/java. Please wait... Oracle Universal Installer, Version 11.2.0.3.0 Production Copyright (C) 1999, 2011, Oracle. All rights reserved. You can find the log of this install session at: /u01/app/oraInventory/logs/cloneActions2013-08-09_07-59-43PM.log .[main] [ 2013-08-09 19:59:51.314 CEST ] [Version.isPre:528] version to be checked 11.2.0.3.0 major version to check against10 [main] [ 2013-08-09 19:59:51.315 CEST ] [Version.isPre:539] isPre.java: Returning FALSE [main] [ 2013-08-09 19:59:51.315 CEST ] [UnixSystem.getCSSConfigType:2418] configFile=/etc/oracle/ocr.loc [main] [ 2013-08-09 19:59:51.453 CEST ] [UnixSystem.getCSSConfigType:2462] configType=null [main] [ 2013-08-09 19:59:51.454 CEST ] [Version.isPre:528] version to be checked 11.2.0.3.0 major version to check against10 [main] [ 2013-08-09 19:59:51.456 CEST ] [Version.isPre:539] isPre.java: Returning FALSE [main] [ 2013-08-09 19:59:51.456 CEST ] [ClusterInfo.<init>:241] m_olsnodesPath=/u01/app/11203/grid/bin/olsnodes [main] [ 2013-08-09 19:59:51.457 CEST ] [RuntimeExec.runCommand:75] Calling Runtime.exec() with the command [main] [ 2013-08-09 19:59:51.458 CEST ] [RuntimeExec.runCommand:77] /u01/app/11203/grid/bin/olsnodes [Thread-4] [ 2013-08-09 19:59:51.485 CEST ] [StreamReader.run:61] In StreamReader.run [main] [ 2013-08-09 19:59:51.486 CEST ] [RuntimeExec.runCommand:142] runCommand: Waiting for the process [Thread-3] [ 2013-08-09 19:59:51.486 CEST ] [StreamReader.run:61] In StreamReader.run [Thread-3] [ 2013-08-09 19:59:52.152 CEST ] [StreamReader.run:65] OUTPUT>PRCO-19: Failure retrieving list of nodes in the cluster [Thread-3] [ 2013-08-09 19:59:52.153 CEST ] [StreamReader.run:65] OUTPUT>PRCO-2: Unable to communicate with the clusterware [main] [ 2013-08-09 19:59:52.154 CEST ] [RuntimeExec.runCommand:144] runCommand: process returns 1 [main] [ 2013-08-09 19:59:52.154 CEST ] [RuntimeExec.runCommand:161] RunTimeExec: output> [main] [ 2013-08-09 19:59:52.154 CEST ] [RuntimeExec.runCommand:164] PRCO-19: Failure retrieving list of nodes in the cluster [main] [ 2013-08-09 19:59:52.154 CEST ] [RuntimeExec.runCommand:164] PRCO-2: Unable to communicate with the clusterware [main] [ 2013-08-09 19:59:52.155 CEST ] [RuntimeExec.runCommand:170] RunTimeExec: error> [main] [ 2013-08-09 19:59:52.155 CEST ] [RuntimeExec.runCommand:192] Returning from RunTimeExec.runCommand Performing tests to see whether nodes are available ............................................................... 100% Done. [main] [ 2013-08-09 19:59:52.580 CEST ] [QueryCluster.<init>:56] No Cluster detected [main] [ 2013-08-09 19:59:52.581 CEST ] [QueryCluster.isCluster:65] Cluster existence check = false Installation in progress (Friday, August 9, 2013 7:59:53 PM CEST) ........................................................................ 72% Done. Install successful Linking in progress (Friday, August 9, 2013 7:59:57 PM CEST) Link successful Setup in progress (Friday, August 9, 2013 8:00:29 PM CEST) ................. 100% Done. Setup successful End of install phases.(Friday, August 9, 2013 8:00:51 PM CEST) WARNING: The following configuration scripts need to be executed as the "root" user in each new cluster node. Each script in the list below is followed by a list of nodes. /u01/app/11203/grid/root.sh #On nodes grac1cl To execute the configuration scripts: 1. Open a terminal window 2. Log in as "root" 3. Run the scripts in each cluster node Run the script on the local node. The cloning of GridHome1_112034 was successful. Please check '/u01/app/oraInventory/logs/cloneActions2013-08-09_07-59-43PM.log' for more details. copying /u01/app/oraInventory/logs/cloneActions2013-08-09_07-59-43PM.log to /u01/app/11203/grid/cfgtoollogs/ouicloneActions2013-08-09_07-59-43PM.log copying /u01/app/oraInventory/logs/silentInstall2013-08-09_07-59-43PM.log to /u01/app/11203/grid/cfgtoollogs/oui/silentInstall2013-08-09_07-59-43PM.log copying /u01/app/oraInventory/logs/oraInstall2013-08-09_07-59-43PM.err to /u01/app/11203/grid/cfgtoollogs/oui/oraInstall2013-08-09_07-59-43PM.err copying /u01/app/oraInventory/logs/oraInstall2013-08-09_07-59-43PM.out to /u01/app/11203/grid/cfgtoollogs/oui/oraInstall2013-08-09_07-59-43PM.out Now Create your ASM disks using Virtualbox Manager and check that these disks are available # /etc/init.d/oracleasm listdisks DATA1 DATA2 Run as user grid configure CRS script $GRID_HOME/crs/config/config.sh using following paramters: Cluster name grace2cl Scan name: grace2cl-scan.grid.example.com Scan port: 1521 Configure GNS GNS sub domain: grid2.example.com GNS VIP address: 192.168.1.57 Run # /u01/app/11203/grid/root.sh and monitor logfile the related logfile # tail -f /u01/app/11203/grid/install/root_grac1cl.example.com_2013-08-09_20-51-57.log Operation successful. CRS-4256: Updating the profile Successful addition of voting disk 79ace18753134f99bf4b2b846f8df8cd. Successfully replaced voting disk group with +DATA. CRS-4256: Updating the profile CRS-4266: Voting file(s) successfully replaced ## STATE File Universal Id File Name Disk group -- ----- ----------------- --------- --------- 1. ONLINE 79ace18753134f99bf4b2b846f8df8cd (/dev/oracleasm/disks/DATA1) [DATA] Located 1 voting disk(s). CRS-2672: Attempting to start 'ora.asm' on 'grac1cl' CRS-2676: Start of 'ora.asm' on 'grac1cl' succeeded CRS-2672: Attempting to start 'ora.DATA.dg' on 'grac1cl' CRS-2676: Start of 'ora.DATA.dg' on 'grac1cl' succeeded CRS-2672: Attempting to start 'ora.registry.acfs' on 'grac1cl' CRS-2676: Start of 'ora.registry.acfs' on 'grac1cl' succeeded Configure Oracle Grid Infrastructure for a Cluster ... succeeded Reference: How to Clone an 11.2.0.3 Grid Infrastructure Home and Clusterware (Doc ID 1413846.1)