zoukankan      html  css  js  c++  java
  • Testing The 19c Grid Infrastructure By Performing A Dry-Run Upgrade

    Testing The 19c Grid Infrastructure By Performing A Dry-Run Upgrade

    Posted in: Technical Track

    In reviewing Grid Infrastructure Installation and Upgrade Guide for Linux, I discovered the dry-run upgrade mode to test upgrades. With dry-run being a new feature, I tested it first using GUI.

    [oracle@racnode-dc2-1 grid]$ /u01/app/19.3.0.0/grid/gridSetup.sh -dryRunForUpgrade
    Launching Oracle Grid Infrastructure Setup Wizard...
    The response file for this session can be found at:
    /u01/app/19.3.0.0/grid/install/response/grid_2019-08-06_00-20-31AM.rsp
    You can find the log of this install session at:
    /u01/app/oraInventory/logs/GridSetupActions2019-08-06_00-20-31AM/gridSetupActions2019-08-06_00-20-31AM.log
    [oracle@racnode-dc2-1 grid]$

    From the response file above grid_2019-08-06_00-20-31AM.rsp, create dryRunForUpgradegrid.rsp:

    [oracle@racnode-dc2-1 grid]$ grep -v "^#" /u01/app/19.3.0.0/grid/install/response/grid_2019-08-06_00-20-31AM.rsp | grep -v "=$" | awk 'NF' > /home/oracle/dryRunForUpgradegrid.rsp
    [oracle@racnode-dc2-1 ~]$ cat /home/oracle/dryRunForUpgradegrid.rsp
    oracle.install.responseFileVersion=/oracle/install/rspfmt_crsinstall_response_schema_v19.0.0
    INVENTORY_LOCATION=/u01/app/oraInventory
    oracle.install.option=UPGRADE
    ORACLE_BASE=/u01/app/oracle
    oracle.install.crs.config.scanType=LOCAL_SCAN
    oracle.install.crs.config.ClusterConfiguration=STANDALONE
    oracle.install.crs.config.configureAsExtendedCluster=false
    oracle.install.crs.config.clusterName=vbox-rac-dc2
    oracle.install.crs.config.gpnp.configureGNS=false
    oracle.install.crs.config.autoConfigureClusterNodeVIP=false
    oracle.install.crs.config.gpnp.gnsOption=CREATE_NEW_GNS
    oracle.install.crs.config.clusterNodes=racnode-dc2-1:,racnode-dc2-2:
    oracle.install.crs.configureGIMR=true
    oracle.install.asm.configureGIMRDataDG=false
    oracle.install.crs.config.storageOption=FLEX_ASM_STORAGE
    oracle.install.crs.config.sharedFileSystemStorage.ocrLocations=
    oracle.install.crs.config.useIPMI=false
    oracle.install.asm.diskGroup.name=CRS
    oracle.install.asm.diskGroup.AUSize=0
    oracle.install.asm.gimrDG.AUSize=1
    oracle.install.asm.configureAFD=false
    oracle.install.crs.configureRHPS=false
    oracle.install.crs.config.ignoreDownNodes=false
    oracle.install.config.managementOption=NONE
    oracle.install.config.omsPort=0
    oracle.install.crs.rootconfig.executeRootScript=false
    [oracle@racnode-dc2-1 ~]$

    Create directory /u01/app/19.3.0.0/grid for all nodes:

    [root@racnode-dc2-1 ~]# id oracle
    uid=54321(oracle) gid=54321(oinstall) groups=54321(oinstall),54318(asmdba),54322(dba),54323(backupdba),54324(oper),54325(dgdba),54326(kmdba)
    [root@racnode-dc2-1 ~]# mkdir -p /u01/app/19.3.0.0/grid
    [root@racnode-dc2-1 ~]# chown oracle:oinstall /u01/app/19.3.0.0/grid
    [root@racnode-dc2-1 ~]# chmod 775 /u01/app/19.3.0.0/grid
    [root@racnode-dc2-1 ~]# ll /u01/app/19.3.0.0/
    total 4
    drwxrwxr-x 2 oracle oinstall 4096 Aug 6 02:07 grid
    [root@racnode-dc2-1 ~]#

    Extract grid software for node1 ONLY:

    [oracle@racnode-dc2-1 ~]$ unzip -qo /media/swrepo/LINUX.X64_193000_grid_home.zip -d /u01/app/19.3.0.0/grid/
    [oracle@racnode-dc2-1 ~]$ ls /u01/app/19.3.0.0/grid/
    addnode clone dbjava diagnostics gpnp install jdbc lib OPatch ords perl qos rhp rootupgrade.sh sqlpatch tomcat welcome.html xdk
    assistants crs dbs dmu gridSetup.sh instantclient jdk md opmn oss plsql racg root.sh runcluvfy.sh sqlplus ucp wlm
    bin css deinstall env.ora has inventory jlib network oracore oui precomp rdbms root.sh.old sdk srvm usm wwg
    cha cv demo evm hs javavm ldap nls ord owm QOpatch relnotes root.sh.old.1 slax suptools utl xag
    [oracle@racnode-dc2-1 ~]$ du -sh /u01/app/19.3.0.0/grid/
    6.0G /u01/app/19.3.0.0/grid/
    [oracle@racnode-dc2-1 ~]$

    Run gridSetup.sh -silent -dryRunForUpgrade:

    [oracle@racnode-dc2-1 ~]$ env|grep -i ora
    USER=oracle
    MAIL=/var/spool/mail/oracle
    PATH=/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/oracle/.local/bin:/home/oracle/bin
    PWD=/home/oracle
    HOME=/home/oracle
    LOGNAME=oracle
    [oracle@racnode-dc2-1 ~]$ date
    Tue Aug 6 02:35:47 CEST 2019
    [oracle@racnode-dc2-1 ~]$ /u01/app/19.3.0.0/grid/gridSetup.sh -silent -dryRunForUpgrade -responseFile /home/oracle/dryRunForUpgradegrid.rsp
    Launching Oracle Grid Infrastructure Setup Wizard...
    [WARNING] [INS-13014] Target environment does not meet some optional requirements.
    CAUSE: Some of the optional prerequisites are not met. See logs for details. /u01/app/oraInventory/logs/GridSetupActions2019-08-06_02-35-52AM/gridSetupActions2019-08-06_02-35-52AM.log
    ACTION: Identify the list of failed prerequisite checks from the log: /u01/app/oraInventory/logs/GridSetupActions2019-08-06_02-35-52AM/gridSetupActions2019-08-06_02-35-52AM.log. Then either from the log file or from installation manual find the appropriate configuration to meet the prerequisites and fix it manually.
    The response file for this session can be found at:
    /u01/app/19.3.0.0/grid/install/response/grid_2019-08-06_02-35-52AM.rsp
    You can find the log of this install session at:
    /u01/app/oraInventory/logs/GridSetupActions2019-08-06_02-35-52AM/gridSetupActions2019-08-06_02-35-52AM.log
    As a root user, execute the following script(s):
    1. /u01/app/19.3.0.0/grid/rootupgrade.sh
    Execute /u01/app/19.3.0.0/grid/rootupgrade.sh on the following nodes:
    [racnode-dc2-1]
    Run the script on the local node.
    Successfully Setup Software with warning(s).
    [oracle@racnode-dc2-1 ~]$

    Run rootupgrade.sh for node1 ONLY and review log:

    [root@racnode-dc2-1 ~]# /u01/app/19.3.0.0/grid/rootupgrade.sh
    Check /u01/app/19.3.0.0/grid/install/root_racnode-dc2-1_2019-08-06_02-44-59-241151038.log for the output of root script
    [root@racnode-dc2-1 ~]# cat /u01/app/19.3.0.0/grid/install/root_racnode-dc2-1_2019-08-06_02-44-59-241151038.log
    Performing root user operation.
    The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME= /u01/app/19.3.0.0/grid
    Copying dbhome to /usr/local/bin ...
    Copying oraenv to /usr/local/bin ...
    Copying coraenv to /usr/local/bin ...
    Entries will be added to the /etc/oratab file as needed by
    Database Configuration Assistant when a database is created
    Finished running generic part of root script.
    Now product-specific root actions will be performed.
    Relinking oracle with rac_on option
    Performing Dry run of the Grid Infrastructure upgrade.
    Using configuration parameter file: /u01/app/19.3.0.0/grid/crs/install/crsconfig_params
    The log of current session can be found at:
    /u01/app/oracle/crsdata/racnode-dc2-1/crsconfig/rootcrs_racnode-dc2-1_2019-08-06_02-45-31AM.log
    2019/08/06 02:45:44 CLSRSC-464: Starting retrieval of the cluster configuration data
    2019/08/06 02:45:52 CLSRSC-729: Checking whether CRS entities are ready for upgrade, cluster upgrade will not be attempted now. This operation may take a few minutes.
    2019/08/06 02:47:56 CLSRSC-693: CRS entities validation completed successfully.
    [root@racnode-dc2-1 ~]#

    Check grid home for node2:

    [oracle@racnode-dc2-2 ~]$ du -sh /u01/app/19.3.0.0/grid/
    6.6G /u01/app/19.3.0.0/grid/
    [oracle@racnode-dc2-2 ~]$

    Check oraInventory for ALL nodes:

    [oracle@racnode-dc2-2 ~]$ cat /u01/app/oraInventory/ContentsXML/inventory.xml
    <?xml version="1.0" standalone="yes" ?>
    <!-- Copyright (c) 1999, 2019, Oracle and/or its affiliates.
    All rights reserved. -->
    <!-- Do not modify the contents of this file by hand. -->
    <INVENTORY>
    <VERSION_INFO>
    <SAVED_WITH>12.2.0.7.0</SAVED_WITH>
    <MINIMUM_VER>2.1.0.6.0</MINIMUM_VER>
    </VERSION_INFO>
    <HOME_LIST>
    <HOME NAME="OraGI12Home1" LOC="/u01/app/12.2.0.1/grid" TYPE="O" IDX="1" CRS="true"/>
    <HOME NAME="OraDB12Home1" LOC="/u01/app/oracle/12.2.0.1/db1" TYPE="O" IDX="2"/>
    <HOME NAME="OraGI19Home1" LOC="/u01/app/19.3.0.0/grid" TYPE="O" IDX="3"/>
    </HOME_LIST>
    <COMPOSITEHOME_LIST>
    </COMPOSITEHOME_LIST>
    </INVENTORY>
    [oracle@racnode-dc2-2 ~]$

    Check crs activeversion: 12.2.0.1.0

    [oracle@racnode-dc2-1 ~]$ . /media/patch/gi.env
    The Oracle base has been set to /u01/app/oracle
    ORACLE_SID=+ASM1
    ORACLE_BASE=/u01/app/oracle
    GRID_HOME=/u01/app/12.2.0.1/grid
    ORACLE_HOME=/u01/app/12.2.0.1/grid
    Oracle Instance alive for sid "+ASM1"
    [oracle@racnode-dc2-1 ~]$ crsctl query crs activeversion -f
    Oracle Clusterware active version on the cluster is [12.2.0.1.0]. The cluster upgrade state is [NORMAL]. The cluster active patch level is [927320293].
    [oracle@racnode-dc2-1 ~]$

    Check log location:

    [oracle@racnode-dc2-1 ~]$ cd /u01/app/oraInventory/logs/GridSetupActions2019-08-06_02-35-52AM/
    [oracle@racnode-dc2-1 GridSetupActions2019-08-06_02-35-52AM]$ ls -alrt
    total 17420
    -rw-r----- 1 oracle oinstall 129 Aug 6 02:35 installerPatchActions_2019-08-06_02-35-52AM.log
    -rw-r----- 1 oracle oinstall 0 Aug 6 02:35 gridSetupActions2019-08-06_02-35-52AM.err
    drwxrwx--- 3 oracle oinstall 4096 Aug 6 02:35 temp_ob
    -rw-r----- 1 oracle oinstall 0 Aug 6 02:39 oraInstall2019-08-06_02-35-52AM.err
    drwxrwx--- 17 oracle oinstall 4096 Aug 6 02:39 ..
    -rw-r----- 1 oracle oinstall 157 Aug 6 02:39 oraInstall2019-08-06_02-35-52AM.out
    -rw-r----- 1 oracle oinstall 0 Aug 6 02:43 oraInstall2019-08-06_02-35-52AM.err.racnode-dc2-2
    -rw-r----- 1 oracle oinstall 142 Aug 6 02:43 oraInstall2019-08-06_02-35-52AM.out.racnode-dc2-2
    -rw-r----- 1 oracle oinstall 9341920 Aug 6 02:43 gridSetupActions2019-08-06_02-35-52AM.out
    -rw-r----- 1 oracle oinstall 13419 Aug 6 02:43 time2019-08-06_02-35-52AM.log
    -rw-r----- 1 oracle oinstall 8443087 Aug 6 02:43 gridSetupActions2019-08-06_02-35-52AM.log
    drwxrwx--- 3 oracle oinstall 4096 Aug 6 02:56 .
    [oracle@racnode-dc2-1 GridSetupActions2019-08-06_02-35-52AM]$

    Since I have not performed an actual upgrade, I don’t know if 19.3.0.0 grid home in oraInventory will be problematic. It was problematic when performing a test with silent mode after initial test with GUI. To resolve the issue, detach 19.3.0.0 grid home

    export ORACLE_HOME=/u01/app/19.3.0.0/grid
    $ORACLE_HOME/oui/bin/runInstaller -detachHome -silent ORACLE_HOME=$ORACLE_HOME

    In conclusion, testing grid upgrade using dryRunForUpgrade functionality is a good method to identify any possible issues before performing an actual upgrade.

  • 相关阅读:
    广播BroadcastReceiver(2)
    hunnu11544:小明的烦恼——找字符串
    Systemd启动图形界面过程
    大数据.......
    2014百度之星第一题Energy Conversion
    基于zookeeper简单实现分布式锁
    LeetCode OJ 215. Kth Largest Element in an Array 堆排序求解
    Leetcode
    Linux文件系统(七)---系统调用之open操作(一)
    Go语言Slice操作.
  • 原文地址:https://www.cnblogs.com/yaoyangding/p/13404800.html
Copyright © 2011-2022 走看看