{"id":943,"date":"2022-05-02T17:38:43","date_gmt":"2022-05-02T20:38:43","guid":{"rendered":"https:\/\/www.fernandosimon.com\/blog\/?p=943"},"modified":"2022-05-03T08:10:48","modified_gmt":"2022-05-03T11:10:48","slug":"21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode","status":"publish","type":"post","link":"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/","title":{"rendered":"21c, Zero-Downtime Oracle Grid Infrastructure Patching \u2013 Silent Mode"},"content":{"rendered":"<p style=\"text-align: justify;\">Recently I made two posts about the process for patch\/upgrading your 21 Grid Infrastructure (GI) while the databases continue to be running. <a href=\"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching\/\" target=\"_blank\" rel=\"noopener\">The first post<\/a> shows how to do this using the GUI interface, and <a href=\"https:\/\/www.fernandosimon.com\/blog\/21c-updateosfiles-after-grid-infrastructure-patch\/\" target=\"_blank\" rel=\"noopener\">the second<\/a> one show more details about the process for AFD\/ACFS Kernel Driver Update. But here in this post, I will show how to do the Zero-Downtime Patch (zeroDowntimeGIPatching &#8211; ZDGIP) in silent mode.<\/p>\n<p style=\"text-align: justify;\">This way to do the patch is important because allows you to automatize it. You can create your own script and call it (using Ansible, Puppet, Chief, etc.) to upgrade your servers (or farms) remotely.<\/p>\n<h2 style=\"text-align: justify;\">Current Environment<\/h2>\n<p style=\"text-align: justify;\">The current environment is the same of the first post:<\/p>\n<ul style=\"text-align: justify;\">\n<li>OEL 8.4 Kernel 5.4.17-2102.201.3.el8uek.x86_64.<\/li>\n<li>Oracle GI 21c, version 21.3 with no one-off or patches installed.<\/li>\n<li>Oracle Database 21c, RU 21.5 (with OCW 21.5).<\/li>\n<li>TFA version is 21.4 (last available in March 2022).<\/li>\n<li>Nodes are not using Transparent HugePages.<\/li>\n<li>Is a RAC installation, with two nodes.<\/li>\n<\/ul>\n<p style=\"text-align: justify;\">You can see the output for the info above in <a href=\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2022\/05\/Current-Environment-GI-21c-OOP-ZDP-SILENT.txt\" target=\"_blank\" rel=\"noopener\">this txt file<\/a>.<\/p>\n<p style=\"text-align: justify;\">And I will apply the same RU 21.5 (21.5.0.0.220118) for GI which is patch <a href=\"https:\/\/support.oracle.com\/epmos\/faces\/PatchDetail?patchId=33531909&amp;requestId=24484590\" target=\"_blank\" rel=\"noopener\">33531909<\/a>.<\/p>\n<h2 style=\"text-align: justify;\">Patch Process<\/h2>\n<p style=\"text-align: justify;\">The patch process is almost the same as the first post, the main change is the response file and the way to call the gridSetup.sh. So, for this reason, I recommend for you read the first (and second) post. Below you will see a quick review of previous steps and a focus on the new&nbsp;<\/p>\n<p style=\"text-align: justify;\"><!--more Click here to read more...--><\/p>\n<h3 style=\"text-align: justify;\">Preparation<\/h3>\n<p style=\"text-align: justify;\">The preparation part is basically, the folder created for the new GI home, and unzip of the versions\/files. You can see here the output from these steps:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">##################################################################################\r\n#\r\n#Creating the new directories for GI at node01\r\n#  \r\n##################################################################################\r\n[root@oel8n1-21c ~]# mkdir -p \/u01\/app\/21.5.0.0\/grid\r\n[root@oel8n1-21c ~]# chown grid \/u01\/app\/21.5.0.0\/grid\r\n[root@oel8n1-21c ~]# chgrp -R oinstall \/u01\/app\/21.5.0.0\/grid\r\n[root@oel8n1-21c ~]#\r\n\r\n##################################################################################\r\n#\r\n#Creating the new directories for GI at node02\r\n#  \r\n##################################################################################\r\n[root@oel8n2-21c ~]# mkdir -p \/u01\/app\/21.5.0.0\/grid\r\n[root@oel8n2-21c ~]# chown grid \/u01\/app\/21.5.0.0\/grid\r\n[root@oel8n2-21c ~]# chgrp -R oinstall \/u01\/app\/21.5.0.0\/grid\r\n[root@oel8n2-21c ~]#\r\n\r\n##################################################################################\r\n#\r\n#Unzip the binaries as GRID user at node01\r\n#  \r\n##################################################################################\r\n[root@oel8n1-21c ~]# su - grid\r\n[grid@oel8n1-21c ~]$\r\n[grid@oel8n1-21c ~]$\r\n[grid@oel8n1-21c ~]$ cd \/u01\/install\/21.5\r\n[grid@oel8n1-21c 21.5]$\r\n[grid@oel8n1-21c 21.5]$ unzip -q V1011504-01.zip -d \/u01\/app\/21.5.0.0\/grid\r\n[grid@oel8n1-21c 21.5]$\r\n\r\n##################################################################################\r\n#\r\n#Updating opatch with the last version for 21c - node01\r\n#  \r\n##################################################################################\r\n[grid@oel8n1-21c 21.5]$ cp -R \/u01\/app\/21.5.0.0\/grid\/OPatch .\/OPatch-ORG\r\n[grid@oel8n1-21c 21.5]$\r\n[grid@oel8n1-21c 21.5]$\r\n[grid@oel8n1-21c 21.5]$ unzip -q p6880880_210000_Linux-x86-64.zip -d \/u01\/app\/21.5.0.0\/grid\r\nreplace \/u01\/app\/21.5.0.0\/grid\/OPatch\/README.txt? [y]es, [n]o, [A]ll, [N]one, [r]ename: A\r\n[grid@oel8n1-21c 21.5]$\r\n[grid@oel8n1-21c 21.5]$\r\n[grid@oel8n1-21c 21.5]$ \/u01\/app\/21.5.0.0\/grid\/OPatch\/opatch version\r\nOPatch Version: 12.2.0.1.28\r\nOPatch succeeded.\r\n[grid@oel8n1-21c 21.5]$\r\n\r\n##################################################################################\r\n#\r\n#Continuing to unzip the files (now the patch 21.5) - node01\r\n#  \r\n##################################################################################\r\n[grid@oel8n1-21c 21.5]$ pwd\r\n\/u01\/install\/21.5\r\n[grid@oel8n1-21c 21.5]$\r\n[grid@oel8n1-21c 21.5]$ unzip -q p33531909_210000_Linux-x86-64.zip\r\n[grid@oel8n1-21c 21.5]$<\/pre>\n<p style=\"text-align: justify;\">So, you will need:<\/p>\n<ul style=\"text-align: justify;\">\n<li>The base version of GI 21.3.<\/li>\n<li>GI RU 21.5.<\/li>\n<li>The latest version of OPatch for 21c.<\/li>\n<\/ul>\n<p style=\"text-align: justify;\">And you will have:<\/p>\n<ul style=\"text-align: justify;\">\n<li>21.3 GI installed and running at \/u01\/app\/21.0.0.0<\/li>\n<li>21.3 GI unzipped at \/u01\/app\/21.5.0.0<\/li>\n<li>OPatch 12.2.0.1.28 unzipped at \/u01\/app\/21.5.0.0<\/li>\n<li>21.5 RU unzipped at \/u01\/install\/21.5\/33531909<\/li>\n<\/ul>\n<h3 style=\"text-align: justify;\">Response File<\/h3>\n<p style=\"text-align: justify;\">The most important part is creating the correct response file. I recommend you to read carefully the response file and the comments inside of it to comprehend each definition, and the values that you can specify. The template for the response file can be found in folder <strong>&lt;Your GI HOME&gt;\/install\/response\/gridsetup.rsp<\/strong>. So, you copy this file to one temporary folder and edit it.<\/p>\n<p style=\"text-align: justify;\">For the Zero-Downtime I think that two definitions are the most critical: <strong>oracle.install.option<\/strong> and <strong>oracle.install.crs.config.storageOption<\/strong>. I will explain why below.<\/p>\n<h4 style=\"text-align: justify;\">oracle.install.option<\/h4>\n<p style=\"text-align: justify;\">It defines how the installation process will occur, it has some options:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">#-------------------------------------------------------------------------------\r\n# Specify the installation option.\r\n# Allowed values: CRS_CONFIG or HA_CONFIG or UPGRADE or CRS_SWONLY or HA_SWONLY\r\n#   - CRS_CONFIG  : To register home and configure Grid Infrastructure for cluster\r\n#   - HA_CONFIG   : To register home and configure Grid Infrastructure for stand alone server\r\n#   - UPGRADE     : To register home and upgrade clusterware software of earlier release\r\n#   - CRS_SWONLY  : To register Grid Infrastructure Software home (can be configured for cluster\r\n#                   or stand alone server later)\r\n#   - HA_SWONLY   : To register Grid Infrastructure Software home (can be configured for stand\r\n#                   alone server later. This is only supported on Windows.)\r\n#   - CRS_ADDNODE : To add more nodes to the cluster\r\n#   - CRS_DELETE_NODE : To delete nodes to the cluster\r\n#-------------------------------------------------------------------------------<\/pre>\n<p style=\"text-align: justify;\">And for the Zero-Downtime patch I use\/used the <em>oracle.install.option<\/em> as UPGRADE because this will install+upgrade the GI in just one step. Another possibility (<strong>that does not work<\/strong> \u2013 I explain below) is to use it as CRS_SWONLY (that will install only the new version), and later (after the root.sh) call gridSetup.sh using the option <em>switchGridHome<\/em>. They are the steps described in the MOS note <em>Steps for Minimal Downtime Grid Infrastructure Out of Place ( OOP ) Patching using gridSetup.sh (<\/em><a href=\"https:\/\/support.oracle.com\/epmos\/faces\/DocContentDisplay?id=2662762.1\" target=\"_blank\" rel=\"noopener\">Doc ID 2662762.1<\/a><em>)<\/em>.<\/p>\n<p style=\"text-align: justify;\">This will not work (I tested) because between the installation\/root.sh\/gridSetup.sh(with switchGridHome) the root.sh\/rootupgrade.sh is not updated correctly at the second node and will fails. This occurs due to the <em>Bug 33601195 &#8211; gridSetup -switchgridhome oop &#8211; root.sh Cenerated Incorrectly (<\/em><a href=\"https:\/\/support.oracle.com\/epmos\/faces\/DocContentDisplay?id=33601195.8\" target=\"_blank\" rel=\"noopener\">Doc ID 33601195.8<\/a><em>)<\/em>. The first discussion that I saw about the same error was <a href=\"https:\/\/unknowndba.blogspot.com\/2021\/08\/grid-infrastructure-out-of-place-patching.html\" target=\"_blank\" rel=\"noopener\">here at UnknownDba post comments<\/a>.<\/p>\n<p style=\"text-align: justify;\"><strong>So, the only option that will work in this case is oracle.install.option=UPGRADE<\/strong>.&nbsp;<\/p>\n<h4 style=\"text-align: justify;\">oracle.install.crs.config.storageOption<\/h4>\n<p style=\"text-align: justify;\">This option is simple and defines how the ASM works (In one additional post I will explain why and how the Zero-Downtime patch works). But with this parameter, you can have one idea. So, the main values are:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">#-------------------------------------------------------------------------------\r\n# Specify the type of storage to use for Oracle Cluster Registry(OCR) and Voting\r\n# Disks files. Only applicable for Standalone cluster.\r\n#   - FLEX_ASM_STORAGE\r\n#   - CLIENT_ASM_STORAGE\r\n#   - FILE_SYSTEM_STORAGE\r\n#   - EXASCALE_STORAGE\r\n#\r\n# Option FILE_SYSTEM_STORAGE is only for STANDALONE cluster configuration.\r\n#-------------------------------------------------------------------------------<\/pre>\n<p style=\"text-align: left;\"><strong>And to work, you will choose the oracle.install.crs.config.storageOption=FLEX_ASM_STORAGE<\/strong>.<\/p>\n<h4 style=\"text-align: justify;\">Used Response File<\/h4>\n<p style=\"text-align: justify;\">So, with these two parameters explained, I have my response file defined. The options that I used are:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[grid@oel8n1-21c ~]$ cat grid-OOP-ZDP.rsp\r\noracle.install.responseFileVersion=\/oracle\/install\/rspfmt_crsinstall_response_schema_v21.0.0\r\nINVENTORY_LOCATION=\/u01\/app\/oraInventory\r\noracle.install.option=UPGRADE\r\nORACLE_BASE=\/u01\/app\/grid\r\nORACLE_HOME=\/u01\/app\/21.5.0.0\/grid\r\noracle.install.asm.OSDBA=asmdba\r\noracle.install.asm.OSOPER=oper\r\noracle.install.asm.OSASM=asmadmin\r\noracle.install.crs.config.scanType=LOCAL_SCAN\r\noracle.install.crs.config.ClusterConfiguration=STANDALONE\r\noracle.install.crs.config.configureAsExtendedCluster=false\r\noracle.install.crs.config.clusterName=oel8-21c\r\noracle.install.crs.config.gpnp.configureGNS=false\r\noracle.install.crs.config.autoConfigureClusterNodeVIP=false\r\noracle.install.crs.config.clusterNodes=oel8n1-21c,oel8n2-21c\r\noracle.install.crs.config.storageOption=FLEX_ASM_STORAGE\r\noracle.install.crs.config.useIPMI=false\r\noracle.install.asm.diskGroup.name=SYSTEMDG\r\noracle.install.asm.diskGroup.AUSize=1\r\noracle.install.asm.configureAFD=false\r\noracle.install.crs.configureRHPS=false\r\noracle.install.crs.config.ignoreDownNodes=false\r\noracle.install.crs.configureGIMR=false\r\noracle.install.crs.configureRemoteGIMR=false\r\noracle.install.crs.RemoteGIMRCredFile=\r\noracle.install.config.managementOption=NONE\r\noracle.install.crs.rootconfig.executeRootScript=false\r\n[grid@oel8n1-21c ~]$<\/pre>\n<p style=\"text-align: justify;\">Above you can see what I selected and what is needed to do Zero-Downtime patch using silent mode with a response file. In your case, you need to adapt it for your needs like <em>clusterNodes, clusterName<\/em>, <em>asm.DiskGroup.name<\/em> (where the OCR\/Vote disk are), <em>AUSize<\/em>, Oracle Base and Oracle Home, <em>scanType<\/em>, and <em>configureGNS<\/em>. <strong>They need to reflect your environment<\/strong>.<\/p>\n<h3 style=\"text-align: justify;\">Patching<\/h3>\n<p style=\"text-align: justify;\">With the response file created we can call the gridSetup.sh with the following parameters:<\/p>\n<ul style=\"text-align: justify;\">\n<li><strong>-silent -responseFile<\/strong>: Defines that will not use GUI and the response file to be used.<\/li>\n<li><strong>-applyRU<\/strong>: This will apply the RU patch over the current home before starting the installation of the GI itself.<\/li>\n<li><strong>-switchGridHome<\/strong>: This informs the install process that the GI will move from the older home to the new one. This is important because the oracle.install.option was defined as UPGRADE.<\/li>\n<li><strong>-zeroDowntimeGIPatching<\/strong>: This is the new feature and informs the patch process that databases will continue to be run.<\/li>\n<li><strong>-skipDriverUpdate<\/strong>: This set to not install the kernel modules directly. Again, my hint is: always assume that the GI patch will update the kernel drivers. So, always call using this option to avoid unexpected problems.<\/li>\n<\/ul>\n<p><a href=\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2022\/05\/Silent-Mode.jpg\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-946 size-medium\" src=\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2022\/05\/Silent-Mode-300x252.jpg\" alt=\"\" width=\"300\" height=\"252\" srcset=\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2022\/05\/Silent-Mode-300x252.jpg 300w, https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2022\/05\/Silent-Mode-768x646.jpg 768w, https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2022\/05\/Silent-Mode-624x525.jpg 624w, https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2022\/05\/Silent-Mode.jpg 925w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>To call the patch we do (as GI owner):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[grid@oel8n1-21c grid]$ .\/gridSetup.sh -waitforcompletion -silent -responseFile \/home\/grid\/grid-OOP-ZDP.rsp -applyRU \/u01\/install\/21.5\/33531909 -switchGridHome -zeroDowntimeGIPatching -skipDriverUpdate\r\nPreparing the home to patch...\r\nApplying the patch \/u01\/install\/21.5\/33531909...\r\nSuccessfully applied the patch.\r\nThe log can be found at: \/u01\/app\/oraInventory\/logs\/GridSetupActions2022-03-27_05-06-26PM\/installerPatchActions_2022-03-27_05-06-26PM.log\r\nLaunching Oracle Grid Infrastructure Setup Wizard...\r\n\r\nYou can find the log of this install session at:\r\n \/u01\/app\/oraInventory\/logs\/GridSetupActions2022-03-27_05-06-26PM\/gridSetupActions2022-03-27_05-06-26PM.log\r\n\r\nAs a root user, execute the following script(s):\r\n        1. \/u01\/app\/21.5.0.0\/grid\/root.sh\r\n\r\nExecute \/u01\/app\/21.5.0.0\/grid\/root.sh on the following nodes:\r\n[oel8n1-21c, oel8n2-21c]\r\n\r\nRun the scripts on the local node first. After successful completion, run the scripts in sequence on all other nodes.\r\n\r\nSuccessfully Setup Software.\r\n[grid@oel8n1-21c grid]$<\/pre>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify;\">Since it is in silent mode, no GUI, and at the end, we need to call root.sh in both nodes to complete. So, at the first node I called it:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[root@oel8n1-21c ~]# \/u01\/app\/21.5.0.0\/grid\/root.sh\r\nCheck \/u01\/app\/21.5.0.0\/grid\/install\/root_oel8n1-21c.oralocal_2022-03-27_17-26-00-572396484.log for the output of root script\r\n[root@oel8n1-21c ~]#<\/pre>\n<p>And (again) no output (since it is silent). And the log is:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[root@oel8n1-21c ~]# cat \/u01\/app\/21.5.0.0\/grid\/install\/root_oel8n1-21c.oralocal_2022-03-27_17-26-00-572396484.log\r\nPerforming root user operation.\r\n\r\nThe following environment variables are set as:\r\n    ORACLE_OWNER= grid\r\n    ORACLE_HOME=  \/u01\/app\/21.5.0.0\/grid\r\n   Copying dbhome to \/usr\/local\/bin ...\r\n   Copying oraenv to \/usr\/local\/bin ...\r\n   Copying coraenv to \/usr\/local\/bin ...\r\n\r\nEntries will be added to the \/etc\/oratab file as needed by\r\nDatabase Configuration Assistant when a database is created\r\nFinished running generic part of root script.\r\nNow product-specific root actions will be performed.\r\nRelinking oracle with rac_on option\r\nLD_LIBRARY_PATH='\/u01\/app\/21.0.0.0\/grid\/lib:\/u01\/app\/21.5.0.0\/grid\/lib:'\r\nUsing configuration parameter file: \/u01\/app\/21.5.0.0\/grid\/crs\/install\/crsconfig_params\r\nThe log of current session can be found at:\r\n  \/u01\/app\/grid\/crsdata\/oel8n1-21c\/crsconfig\/rootcrs_oel8n1-21c_2022-03-27_05-26-42PM.log\r\nUsing configuration parameter file: \/u01\/app\/21.5.0.0\/grid\/crs\/install\/crsconfig_params\r\nThe log of current session can be found at:\r\n  \/u01\/app\/grid\/crsdata\/oel8n1-21c\/crsconfig\/crs_prepatch_apply_oop_oel8n1-21c_2022-03-27_05-26-42PM.log\r\nThis software is \"262\" days old. It is a best practice to update the CRS home by downloading and applying the latest release update. Refer to MOS note 2731675.1 for more details.\r\n\r\n Performing following verification checks ...\r\n\r\n   cluster upgrade state ...PASSED\r\n   OLR Integrity ...PASSED\r\n   Hosts File ...PASSED\r\n   Free Space: oel8n1-21c:\/ ...PASSED\r\n   Free Space: oel8n2-21c:\/ ...PASSED\r\n\r\n Pre-check for Patch Application was successful.\r\n\r\n CVU operation performed:      stage -pre patch\r\n Date:                         Mar 27, 2022 5:26:45 PM\r\n Clusterware version:          21.0.0.0.0\r\n CVU home:                     \/u01\/app\/21.0.0.0\/grid\r\n Grid home:                    \/u01\/app\/21.0.0.0\/grid\r\n User:                         grid\r\n Operating system:             Linux5.4.17-2102.201.3.el8uek.x86_64\r\n\r\n2022\/03\/27 17:27:17 CLSRSC-347: Successfully unlock \/u01\/app\/21.5.0.0\/grid\r\n2022\/03\/27 17:27:17 CLSRSC-671: Pre-patch steps for patching GI home successfully completed.\r\nUsing configuration parameter file: \/u01\/app\/21.5.0.0\/grid\/crs\/install\/crsconfig_params\r\nThe log of current session can be found at:\r\n  \/u01\/app\/grid\/crsdata\/oel8n1-21c\/crsconfig\/crs_postpatch_apply_oop_oel8n1-21c_2022-03-27_05-27-18PM.log\r\nOracle Clusterware active version on the cluster is [21.0.0.0.0]. The cluster upgrade state is [NORMAL]. The cluster active patch level is [0].\r\nCRS-1151: The cluster was successfully set to rolling patch mode.\r\n2022\/03\/27 17:27:39 CLSRSC-329: Replacing Clusterware entries in file 'oracle-ohasd_dummy.service'\r\n2022\/03\/27 17:28:16 CLSRSC-329: Replacing Clusterware entries in file 'oracle-ohasd.service'\r\n2022\/03\/27 17:29:32 CLSRSC-4015: Performing install or upgrade action for Oracle Autonomous Health Framework (AHF).\r\n2022\/03\/27 17:29:32 CLSRSC-4012: Shutting down Oracle Autonomous Health Framework (AHF).\r\n2022\/03\/27 17:30:25 CLSRSC-4013: Successfully shut down Oracle Autonomous Health Framework (AHF).\r\nOracle Clusterware active version on the cluster is [21.0.0.0.0]. The cluster upgrade state is [ROLLING PATCH]. The cluster active patch level is [0].\r\n2022\/03\/27 17:30:29 CLSRSC-672: Post-patch steps for patching GI home successfully completed.\r\n2022\/03\/27 17:30:45 CLSRSC-4003: Successfully patched Oracle Autonomous Health Framework (AHF).\r\n[root@oel8n1-21c ~]#<\/pre>\n<p style=\"text-align: justify;\">As you can see above, everything is installed correctly and we can call the root.sh at node 02:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[root@oel8n2-21c ~]# \/u01\/app\/21.5.0.0\/grid\/root.sh\r\nCheck \/u01\/app\/21.5.0.0\/grid\/install\/root_oel8n2-21c.oralocal_2022-03-27_17-33-17-771942165.log for the output of root script\r\n[root@oel8n2-21c ~]#\r\n[root@oel8n2-21c ~]# cat \/u01\/app\/21.5.0.0\/grid\/install\/root_oel8n2-21c.oralocal_2022-03-27_17-33-17-771942165.log\r\nPerforming root user operation.\r\n\r\nThe following environment variables are set as:\r\n    ORACLE_OWNER= grid\r\n    ORACLE_HOME=  \/u01\/app\/21.5.0.0\/grid\r\n   Copying dbhome to \/usr\/local\/bin ...\r\n   Copying oraenv to \/usr\/local\/bin ...\r\n   Copying coraenv to \/usr\/local\/bin ...\r\n\r\nEntries will be added to the \/etc\/oratab file as needed by\r\nDatabase Configuration Assistant when a database is created\r\nFinished running generic part of root script.\r\nNow product-specific root actions will be performed.\r\nRelinking oracle with rac_on option\r\nLD_LIBRARY_PATH='\/u01\/app\/21.0.0.0\/grid\/lib:\/u01\/app\/21.5.0.0\/grid\/lib:'\r\nUsing configuration parameter file: \/u01\/app\/21.5.0.0\/grid\/crs\/install\/crsconfig_params\r\nThe log of current session can be found at:\r\n  \/u01\/app\/grid\/crsdata\/oel8n2-21c\/crsconfig\/rootcrs_oel8n2-21c_2022-03-27_05-34-24PM.log\r\nUsing configuration parameter file: \/u01\/app\/21.5.0.0\/grid\/crs\/install\/crsconfig_params\r\nThe log of current session can be found at:\r\n  \/u01\/app\/grid\/crsdata\/oel8n2-21c\/crsconfig\/crs_prepatch_apply_oop_oel8n2-21c_2022-03-27_05-34-25PM.log\r\nThis software is \"262\" days old. It is a best practice to update the CRS home by downloading and applying the latest release update. Refer to MOS note 2731675.1 for more details.\r\n\r\n Performing following verification checks ...\r\n\r\n   cluster upgrade state ...PASSED\r\n   OLR Integrity ...PASSED\r\n   Hosts File ...PASSED\r\n   Free Space: oel8n1-21c:\/ ...PASSED\r\n   Free Space: oel8n2-21c:\/ ...PASSED\r\n\r\n Pre-check for Patch Application was successful.\r\n\r\n CVU operation performed:      stage -pre patch\r\n Date:                         Mar 27, 2022 5:34:27 PM\r\n Clusterware version:          21.0.0.0.0\r\n CVU home:                     \/u01\/app\/21.0.0.0\/grid\r\n Grid home:                    \/u01\/app\/21.0.0.0\/grid\r\n User:                         grid\r\n Operating system:             Linux5.4.17-2102.201.3.el8uek.x86_64\r\n\r\n2022\/03\/27 17:34:50 CLSRSC-347: Successfully unlock \/u01\/app\/21.5.0.0\/grid\r\n2022\/03\/27 17:34:54 CLSRSC-671: Pre-patch steps for patching GI home successfully completed.\r\nUsing configuration parameter file: \/u01\/app\/21.5.0.0\/grid\/crs\/install\/crsconfig_params\r\nThe log of current session can be found at:\r\n  \/u01\/app\/grid\/crsdata\/oel8n2-21c\/crsconfig\/crs_postpatch_apply_oop_oel8n2-21c_2022-03-27_05-34-54PM.log\r\nOracle Clusterware active version on the cluster is [21.0.0.0.0]. The cluster upgrade state is [ROLLING PATCH]. The cluster active patch level is [0].\r\nCRS-1152: The cluster is in rolling patch mode.\r\nCRS-4000: Command Start failed, or completed with errors.\r\n2022\/03\/27 17:35:12 CLSRSC-329: Replacing Clusterware entries in file 'oracle-ohasd_dummy.service'\r\n2022\/03\/27 17:36:02 CLSRSC-329: Replacing Clusterware entries in file 'oracle-ohasd.service'\r\n2022\/03\/27 17:37:23 CLSRSC-4015: Performing install or upgrade action for Oracle Autonomous Health Framework (AHF).\r\n2022\/03\/27 17:37:23 CLSRSC-4012: Shutting down Oracle Autonomous Health Framework (AHF).\r\n2022\/03\/27 17:38:18 CLSRSC-4013: Successfully shut down Oracle Autonomous Health Framework (AHF).\r\nOracle Clusterware active version on the cluster is [21.0.0.0.0]. The cluster upgrade state is [NORMAL]. The cluster active patch level is [1452993786].\r\n2022\/03\/27 17:38:38 CLSRSC-4003: Successfully patched Oracle Autonomous Health Framework (AHF).\r\n\r\n Performing following verification checks ...\r\n\r\n   cluster upgrade state ...PASSED\r\n\r\n Post-check for Patch Application was successful.\r\n\r\n CVU operation performed:      stage -post patch\r\n Date:                         Mar 27, 2022 5:38:33 PM\r\n Clusterware version:          21.0.0.0.0\r\n CVU home:                     \/u01\/app\/21.5.0.0\/grid\r\n Grid home:                    \/u01\/app\/21.5.0.0\/grid\r\n User:                         grid\r\n Operating system:             Linux5.4.17-2102.201.3.el8uek.x86_64\r\n\r\n2022\/03\/27 17:39:02 CLSRSC-672: Post-patch steps for patching GI home successfully completed.\r\n[root@oel8n2-21c ~]#<\/pre>\n<p style=\"text-align: justify;\">And you can see below that database continued to be running while the entire CRS stack restarted (look at the time between the database process and the others):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">##################################################################################\r\n#\r\n#Check what is running at node01\r\n#  \r\n##################################################################################\r\n[root@oel8n1-21c ~]# date\r\nSun Mar 27 17:40:45 CEST 2022\r\n[root@oel8n1-21c ~]#\r\n[root@oel8n1-21c ~]# ps -ef |grep smon\r\noracle      7144       1  0 16:45 ?        00:00:00 ora_smon_orcl21c1\r\nroot       84975       1  1 17:28 ?        00:00:09 \/u01\/app\/21.5.0.0\/grid\/bin\/osysmond.bin\r\ngrid       85618       1  0 17:29 ?        00:00:00 asm_smon_+ASM1\r\nroot      112490    5284  0 17:40 pts\/0    00:00:00 grep --color=auto smon\r\n[root@oel8n1-21c ~]# ps -ef |grep lsnr\r\ngrid       85344       1  0 17:29 ?        00:00:00 \/u01\/app\/21.5.0.0\/grid\/bin\/tnslsnr LISTENER -no_crs_notify -inherit\r\ngrid       85423       1  0 17:29 ?        00:00:00 \/u01\/app\/21.5.0.0\/grid\/bin\/tnslsnr ASMNET1LSNR_ASM -no_crs_notify -inherit\r\ngrid       95303       1  0 17:35 ?        00:00:00 \/u01\/app\/21.5.0.0\/grid\/bin\/tnslsnr LISTENER_SCAN1 -no_crs_notify -inherit\r\ngrid       95320       1  0 17:35 ?        00:00:00 \/u01\/app\/21.5.0.0\/grid\/bin\/tnslsnr LISTENER_SCAN2 -no_crs_notify -inherit\r\nroot      112530    5284  0 17:40 pts\/0    00:00:00 grep --color=auto lsnr\r\n[root@oel8n1-21c ~]#\r\n[root@oel8n1-21c ~]# date\r\nSun Mar 27 17:40:51 CEST 2022\r\n[root@oel8n1-21c ~]#\r\n##################################################################################\r\n#\r\n#Check what is running at node02\r\n#  \r\n##################################################################################\r\n[root@oel8n2-21c ~]# date\r\nSun Mar 27 17:40:59 CEST 2022\r\n[root@oel8n2-21c ~]#\r\n[root@oel8n2-21c ~]# ps -ef |grep smon\r\noracle      6721       1  0 16:44 ?        00:00:00 ora_smon_orcl21c2\r\nroot      101956       1  1 17:36 ?        00:00:03 \/u01\/app\/21.5.0.0\/grid\/bin\/osysmond.bin\r\ngrid      104624       1  0 17:37 ?        00:00:00 asm_smon_+ASM2\r\nroot      116445    6491  0 17:41 pts\/0    00:00:00 grep --color=auto smon\r\n[root@oel8n2-21c ~]# ps -ef |grep lsnr\r\ngrid      103478       1  0 17:37 ?        00:00:00 \/u01\/app\/21.5.0.0\/grid\/bin\/tnslsnr LISTENER -no_crs_notify -inherit\r\ngrid      103820       1  0 17:37 ?        00:00:00 \/u01\/app\/21.5.0.0\/grid\/bin\/tnslsnr ASMNET1LSNR_ASM -no_crs_notify -inherit\r\ngrid      103875       1  0 17:37 ?        00:00:00 \/u01\/app\/21.5.0.0\/grid\/bin\/tnslsnr LISTENER_SCAN3 -no_crs_notify -inherit\r\nroot      116451    6491  0 17:41 pts\/0    00:00:00 grep --color=auto lsnr\r\n[root@oel8n2-21c ~]#\r\n[root@oel8n2-21c ~]# date\r\nSun Mar 27 17:41:08 CEST 2022\r\n[root@oel8n2-21c ~]#<\/pre>\n<h3 style=\"text-align: justify;\">Post-Patch<\/h3>\n<p style=\"text-align: justify;\">For post-patch, you just need to upgrade the AFS\/ACFS Kernel Drives. All the steps <a href=\"https:\/\/www.fernandosimon.com\/blog\/21c-updateosfiles-after-grid-infrastructure-patch\/\" target=\"_blank\" rel=\"noopener\">are covered in my additional post<\/a>. Just remember that to do that you will need downtime (the reason that we called gridSetup.sh with the parameter skipDriverUpdate).<\/p>\n<h2 style=\"text-align: justify;\">Conclusion<\/h2>\n<p style=\"text-align: justify;\">Patching the GI using the silent mode is quite easy, <strong>but for Zero-Downtime we need to take care of some details<\/strong>. As explained before the only working option for the response file is the UPGRADE for <em>oracle.install.option<\/em>. Just remember that using this you will need to call griSetup.sh with the parameter <em>switchGridHome<\/em> to allow the patch and Out-Of-Place (OOP) and Zero-Downtime Patch to occur together.<\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify;\"><strong>Disclaimer<\/strong>: \u201c<em>The postings on this site are my own and don\u2019t necessarily represent my actual employer positions, strategies or opinions. The information here was edited to be useful for general purposes, specific data and identifications were removed to allow reach the generic audience and to be useful for the community. Post protected by copyright.<\/em>\u201d<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Recently I made two posts about the process for patch\/upgrading your 21 Grid Infrastructure (GI) while the databases continue to be running. The first post shows how to do this using the GUI interface, and the second one show more details about the process for AFD\/ACFS Kernel Driver Update. But here in this post, I [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[164,55,29,56,141,5,152,14,12],"tags":[166,80,165,75,65,135,124,169],"class_list":["post-943","post","type-post","status-publish","format-standard","hentry","category-21c","category-asm","category-database","category-grid-infrastructure","category-maa","category-oracle","category-patch","category-update","category-upgrade","tag-21c","tag-asm","tag-grid-infrastructure","tag-maa","tag-oracle","tag-patch","tag-upgrade","tag-zero-downtime"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>21c, Zero-Downtime Oracle Grid Infrastructure Patching \u2013 Silent Mode - Fernando Simon<\/title>\n<meta name=\"description\" content=\"Check how to use the Zero-Downtime Patch (zeroDowntimeGIPatching - ZDGIP) for Oracle Grid Infrastructure 21c in Silent Mode. All details, patches, bugs, errors, and workarounds.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"21c, Zero-Downtime Oracle Grid Infrastructure Patching \u2013 Silent Mode - Fernando Simon\" \/>\n<meta property=\"og:description\" content=\"Check how to use the Zero-Downtime Patch (zeroDowntimeGIPatching - ZDGIP) for Oracle Grid Infrastructure 21c in Silent Mode. All details, patches, bugs, errors, and workarounds.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/\" \/>\n<meta property=\"og:site_name\" content=\"Fernando Simon\" \/>\n<meta property=\"article:published_time\" content=\"2022-05-02T20:38:43+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-05-03T11:10:48+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2022\/05\/Silent-Mode-300x252.jpg\" \/>\n<meta name=\"author\" content=\"Simon\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Simon\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"12 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/\"},\"author\":{\"name\":\"Simon\",\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/#\/schema\/person\/386da956604bca0d5be5dd52210c1dd9\"},\"headline\":\"21c, Zero-Downtime Oracle Grid Infrastructure Patching \u2013 Silent Mode\",\"datePublished\":\"2022-05-02T20:38:43+00:00\",\"dateModified\":\"2022-05-03T11:10:48+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/\"},\"wordCount\":1142,\"commentCount\":2,\"image\":{\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2022\/05\/Silent-Mode-300x252.jpg\",\"keywords\":[\"21c\",\"ASM\",\"Grid Infrastructure\",\"MAA\",\"Oracle\",\"Patch\",\"Upgrade\",\"Zero-Downtime\"],\"articleSection\":[\"21c\",\"ASM\",\"Database\",\"Grid Infrastructure\",\"MAA\",\"Oracle\",\"Patch\",\"Update\",\"Upgrade\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/\",\"url\":\"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/\",\"name\":\"21c, Zero-Downtime Oracle Grid Infrastructure Patching \u2013 Silent Mode - Fernando Simon\",\"isPartOf\":{\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2022\/05\/Silent-Mode-300x252.jpg\",\"datePublished\":\"2022-05-02T20:38:43+00:00\",\"dateModified\":\"2022-05-03T11:10:48+00:00\",\"author\":{\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/#\/schema\/person\/386da956604bca0d5be5dd52210c1dd9\"},\"description\":\"Check how to use the Zero-Downtime Patch (zeroDowntimeGIPatching - ZDGIP) for Oracle Grid Infrastructure 21c in Silent Mode. All details, patches, bugs, errors, and workarounds.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/#primaryimage\",\"url\":\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2022\/05\/Silent-Mode.jpg\",\"contentUrl\":\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2022\/05\/Silent-Mode.jpg\",\"width\":925,\"height\":778},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.fernandosimon.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"21c, Zero-Downtime Oracle Grid Infrastructure Patching \u2013 Silent Mode\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/#website\",\"url\":\"https:\/\/www.fernandosimon.com\/blog\/\",\"name\":\"Fernando Simon\",\"description\":\"Have you hugged your backup today?\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.fernandosimon.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/#\/schema\/person\/386da956604bca0d5be5dd52210c1dd9\",\"name\":\"Simon\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.fernandosimon.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/a3dbc48de62fffb1829befb4a588d789ec6dc5e05977afabb3407a5f37a16482?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/a3dbc48de62fffb1829befb4a588d789ec6dc5e05977afabb3407a5f37a16482?s=96&d=mm&r=g\",\"caption\":\"Simon\"},\"sameAs\":[\"http:\/\/www.fernandosimon.com\"],\"url\":\"https:\/\/www.fernandosimon.com\/blog\/author\/simon\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"21c, Zero-Downtime Oracle Grid Infrastructure Patching \u2013 Silent Mode - Fernando Simon","description":"Check how to use the Zero-Downtime Patch (zeroDowntimeGIPatching - ZDGIP) for Oracle Grid Infrastructure 21c in Silent Mode. All details, patches, bugs, errors, and workarounds.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/","og_locale":"en_US","og_type":"article","og_title":"21c, Zero-Downtime Oracle Grid Infrastructure Patching \u2013 Silent Mode - Fernando Simon","og_description":"Check how to use the Zero-Downtime Patch (zeroDowntimeGIPatching - ZDGIP) for Oracle Grid Infrastructure 21c in Silent Mode. All details, patches, bugs, errors, and workarounds.","og_url":"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/","og_site_name":"Fernando Simon","article_published_time":"2022-05-02T20:38:43+00:00","article_modified_time":"2022-05-03T11:10:48+00:00","og_image":[{"url":"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2022\/05\/Silent-Mode-300x252.jpg","type":"","width":"","height":""}],"author":"Simon","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Simon","Est. reading time":"12 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/#article","isPartOf":{"@id":"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/"},"author":{"name":"Simon","@id":"https:\/\/www.fernandosimon.com\/blog\/#\/schema\/person\/386da956604bca0d5be5dd52210c1dd9"},"headline":"21c, Zero-Downtime Oracle Grid Infrastructure Patching \u2013 Silent Mode","datePublished":"2022-05-02T20:38:43+00:00","dateModified":"2022-05-03T11:10:48+00:00","mainEntityOfPage":{"@id":"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/"},"wordCount":1142,"commentCount":2,"image":{"@id":"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/#primaryimage"},"thumbnailUrl":"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2022\/05\/Silent-Mode-300x252.jpg","keywords":["21c","ASM","Grid Infrastructure","MAA","Oracle","Patch","Upgrade","Zero-Downtime"],"articleSection":["21c","ASM","Database","Grid Infrastructure","MAA","Oracle","Patch","Update","Upgrade"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/","url":"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/","name":"21c, Zero-Downtime Oracle Grid Infrastructure Patching \u2013 Silent Mode - Fernando Simon","isPartOf":{"@id":"https:\/\/www.fernandosimon.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/#primaryimage"},"image":{"@id":"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/#primaryimage"},"thumbnailUrl":"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2022\/05\/Silent-Mode-300x252.jpg","datePublished":"2022-05-02T20:38:43+00:00","dateModified":"2022-05-03T11:10:48+00:00","author":{"@id":"https:\/\/www.fernandosimon.com\/blog\/#\/schema\/person\/386da956604bca0d5be5dd52210c1dd9"},"description":"Check how to use the Zero-Downtime Patch (zeroDowntimeGIPatching - ZDGIP) for Oracle Grid Infrastructure 21c in Silent Mode. All details, patches, bugs, errors, and workarounds.","breadcrumb":{"@id":"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/#primaryimage","url":"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2022\/05\/Silent-Mode.jpg","contentUrl":"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2022\/05\/Silent-Mode.jpg","width":925,"height":778},{"@type":"BreadcrumbList","@id":"https:\/\/www.fernandosimon.com\/blog\/21c-zero-downtime-oracle-grid-infrastructure-patching-silent-mode\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.fernandosimon.com\/blog\/"},{"@type":"ListItem","position":2,"name":"21c, Zero-Downtime Oracle Grid Infrastructure Patching \u2013 Silent Mode"}]},{"@type":"WebSite","@id":"https:\/\/www.fernandosimon.com\/blog\/#website","url":"https:\/\/www.fernandosimon.com\/blog\/","name":"Fernando Simon","description":"Have you hugged your backup today?","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.fernandosimon.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.fernandosimon.com\/blog\/#\/schema\/person\/386da956604bca0d5be5dd52210c1dd9","name":"Simon","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.fernandosimon.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/a3dbc48de62fffb1829befb4a588d789ec6dc5e05977afabb3407a5f37a16482?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/a3dbc48de62fffb1829befb4a588d789ec6dc5e05977afabb3407a5f37a16482?s=96&d=mm&r=g","caption":"Simon"},"sameAs":["http:\/\/www.fernandosimon.com"],"url":"https:\/\/www.fernandosimon.com\/blog\/author\/simon\/"}]}},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p5ofTp-fd","_links":{"self":[{"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/posts\/943","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/comments?post=943"}],"version-history":[{"count":0,"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/posts\/943\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/media?parent=943"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/categories?post=943"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/tags?post=943"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}