{"id":2216,"date":"2021-01-14T16:37:55","date_gmt":"2021-01-14T15:37:55","guid":{"rendered":"http:\/\/clemente.pamplona.name\/dba\/?p=2216"},"modified":"2021-01-15T17:15:00","modified_gmt":"2021-01-15T16:15:00","slug":"solucionando-problemas-de-version-de-parcheado-entre-nodos-del-rac-the-cluster-upgrade-state-is-rolling-patch","status":"publish","type":"post","link":"http:\/\/clemente.pamplona.name\/dba\/solucionando-problemas-de-version-de-parcheado-entre-nodos-del-rac-the-cluster-upgrade-state-is-rolling-patch\/","title":{"rendered":"El RAC se queda  en estado  [ROLLING PATCH]"},"content":{"rendered":"<p>Hoy vamos a ver una entrada sobre ago que puede dar mucho miedo pero que tiene una solucion muy sencila<br \/>\nPongamos que tras aplicar una serie de parches comprobamos la version de nuesrto softare en el RAC y nos encontramos lo siguiente<\/p>\n<pre>\r\n[oracle@rac1~]$ sudo  $ORACLE_HOME\/bin\/crsctl query  crs  activeversion -f\r\nOracle Clusterware active version on the cluster is [19.0.0.0.0]. The cluster upgrade state is [ROLLING PATCH]. The cluster active patch level is [724960844].\r\n\r\nOracle Clusterware patch level on node rac1is [2701864972].\r\n[oracle@rac1~]$ sudo  $ORACLE_HOME\/bin\/crsctl query  crs  softwarepatch rac2\r\nOracle Clusterware patch level on node rac2 is [387459443].\r\n<\/pre>\n<p>De alguna manera que no alcanzamos a entender ( o igual si), tenemos que tras finalizar un parcheado los parches de los dos nodos son iguales.<\/p>\n<h1> Que hacemos ??<\/h1>\n<p>Veamos a ver cuales son los  parches que tenemos instalados.<br \/>\nLo primero que se nos viene a la cabeza es tirar del comando optch<br \/>\nY ecejutamos un<br \/>\n<i> $ORACLE_HOME\/OPatch\/opatch -lsinventory <\/i><br \/>\no bien<br \/>\n<i> $ORACLE_HOME\/OPatch\/opatch -lspatches<\/i><br \/>\nPero, para nuestra desesperacion resulta que Opatch nos dice que hay los mismos parches instalados.<br \/>\n\u00bfque hacemos ahora?<\/p>\n<h2> La solucon esta en patchgen <\/h2>\n<p>Vamos a ver realmente que es lo que tenemos instalado en los nodos.<br \/>\nPara ello usaremos en ambos nodos el comando<br \/>\n<b> $ORACLE_HOME\/bin\/kfod op=patches<\/b><\/p>\n<pre>\r\n[oracle@rac1~]$  $ORACLE_HOME\/bin\/kfod op=patches\r\n---------------\r\nList of Patches\r\n===============\r\n30489227\r\n30489632\r\n30557433\r\n30655595\r\n\r\n[oracle@rac2~]$ $ORACLE_HOME\/bin\/kfod op=patches\r\n---------------\r\nList of Patches\r\n===============\r\n29517242\r\n29517247\r\n29585399\r\n30489227\r\n30489632\r\n30557433\r\n30655595\r\n<\/pre>\n<p>Como podemos ver, en el rac2 nos aparecen 3 parches que no tenemos en rac1.<br \/>\nEl siguiente paso deberia de ser el buscar cuales son esos parches y decidir si los queremos aplicar donde no estan , o quitrlos de donde estan.<br \/>\nDado que quitar un parche suele ser mas complicado que ponerlo , vamos ha hacer esta segunda opcion y a eliminar esos 3 parches de rac2.<\/p>\n<p>Para ello,lo primero que tendremos que hacer es como usuario <b>root<\/b><\/p>\n<pre>\r\n. oaenv\r\n $ORACLE_HOME\/crs\/install\/rootcrs.sh -prepatch\r\n<\/pre>\n<p>Y tras esto, eliminaremos los parches con <\/p>\n<pre>\r\n$ORACLE_HOME\/bin\/patchgen commit -rb 29517242 \r\n$ORACLE_HOME\/bin\/patchgen commit -rb 29517247\r\n$ORACLE_HOME\/bin\/patchgen commit -rb 29585399\r\n<\/pre>\n<p>Una vez eliminados, comprobamos d enuevo con <b> kfod<\/b> que tenemos solamente los parches deseados, y sera en ese momento cuando cerremos la operacion con (de nuevo como <b>root<\/b>)<\/p>\n<pre>\r\n $ORACLE_HOME\/crs\/install\/rootcrs.sh -postpatch\r\n<\/pre>\n<p>Tras esto  solamente tenemos que comprobar que el estado del cluster es normal y que las versiones y parches son los correctos<\/p>\n<pre>\r\n[oracle@rac1~]$) crsctl query crs softwarepatch -all\r\nOracle Clusterware patch level on node rac1 is [2701864972].\r\n[oracle@rac1~]$ crsctl query crs activeversion  -f\r\nOracle Clusterware active version on the cluster is [19.0.0.0.0]. The cluster upgrade state is [NORMAL]. The cluster active patch level is [2701864972].\r\n[oracle@rac1~]$ crsctl query crs releasepatch\r\nOracle Clusterware release patch level is [2701864972] and the complete list of patches [30489227 30489632 30557433 30655595 ] have been applied on the local node. The release patch string is [19.6.0.0.0].\r\n[oracle@rac2~]$ crsctl query crs releasepatch\r\nOracle Clusterware release patch level is [2701864972] and the complete list of patches [30489227 30489632 30557433 30655595 ] have been applied on the local node. The release patch string is [19.6.0.0.0].\r\n<\/pre>\n<p>Mas informacion como siempre en la documentacion de oracle<\/p>\n<ul>\n<li><a href=\"https:\/\/docs.oracle.com\/cd\/E24628_01\/doc.121\/e39376\/troubleshooting_opatchauto.htm#BJFGAGBH\" rel=\"noopener\" target=\"_blank\">Troubleshooting OPatchAuto<\/a>\n<li>\n<li>  KFOD, KFED, AMDU (Doc ID 1485597.1)\n<li> Note 1180491.1 \u2013 KFED Tool For Windows OS\n<li>Note 1346190.1 \u2013 KFED.PL for diagnosing \u2013 ORA-15036 ORA-15042 ORA-15020 ORA-15033\n<li>Note 1505005.1 \u2013 Where to find kfed utility before Oracle Grid Infrastructure is installed\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Hoy vamos a ver una entrada sobre ago que puede dar mucho miedo pero que tiene una solucion muy sencila Pongamos que tras aplicar una serie de parches comprobamos la version de nuesrto softare en el RAC y nos encontramos &hellip; <a href=\"http:\/\/clemente.pamplona.name\/dba\/solucionando-problemas-de-version-de-parcheado-entre-nodos-del-rac-the-cluster-upgrade-state-is-rolling-patch\/\">Sigue leyendo <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[567,921,975,12],"tags":[137,1006,75,770,1004,252,1005],"class_list":["post-2216","post","type-post","status-publish","format-standard","hentry","category-12c-en","category-18c","category-19c","category-parcheados","tag-crsctl","tag-kfod","tag-opatch","tag-opatchauto","tag-patchgen","tag-rac","tag-rolling-patch"],"_links":{"self":[{"href":"http:\/\/clemente.pamplona.name\/dba\/wp-json\/wp\/v2\/posts\/2216","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/clemente.pamplona.name\/dba\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/clemente.pamplona.name\/dba\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/clemente.pamplona.name\/dba\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/clemente.pamplona.name\/dba\/wp-json\/wp\/v2\/comments?post=2216"}],"version-history":[{"count":5,"href":"http:\/\/clemente.pamplona.name\/dba\/wp-json\/wp\/v2\/posts\/2216\/revisions"}],"predecessor-version":[{"id":2221,"href":"http:\/\/clemente.pamplona.name\/dba\/wp-json\/wp\/v2\/posts\/2216\/revisions\/2221"}],"wp:attachment":[{"href":"http:\/\/clemente.pamplona.name\/dba\/wp-json\/wp\/v2\/media?parent=2216"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/clemente.pamplona.name\/dba\/wp-json\/wp\/v2\/categories?post=2216"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/clemente.pamplona.name\/dba\/wp-json\/wp\/v2\/tags?post=2216"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}