Instalación de Oracle Clusterware y Oracle RDBMS 19c en modo Silent

#OracleACEAssociate

#OracleTIPSSV

10 de Agosto de 2023

Raúl Antonio Molina Alvarenga

El objetivo de este articulo no es preparar todos los pasos previos para instalar un cluster, en realidad lo enfoque solo los comandos importantes en la instalación siguiendo el modo que mas me provoca al momento de instalar: MODO NO INTERACTIVO o MODO SILENT.

Procedamos con una hojeada al concepto de Modo Silencioso.

Todos conocemos el famoso instalador de los productos Oracle, el OUI u Oracle Universal Installer, un Software integrado construido en JAVA y con un complemento de scripts en otras lenguajes de programación que Oracle ocupa que permite instalar los productos Oracle en cualquier plataforma; este software permite realizar dicha tarea en forma interactiva.

Ese Instalador puede considerarse pesado o lento en algunas circunstancias, como por ejemplo usarlo via VPN , desde sitios remotos.

La alternativa a dichas situaciones o escenarios, el modo No Interactivo o Silencioso, este modo utiliza el mismo Instalador, solo que no de forma interactivo si no que requiere que se provean todas las respuestas que el programa requiere.

Las respuestas pueden ser puestas en lote en la linea de comandos (lo cual no recomiendo), o usando un archivo de respuesta, o responseFile ( recomendado).

El archivo de respuesta puede obtenerse de 2 formas, el propio instalador tiene algunas plantillas ya incluidas, por ejemplo propio OUI, DBCA, NETCA.

Otra forma es generarlo ejecutando el propio instalador y guardarlo como se muestra en la imagen:

Nuestro archivo de respuesta quedaría de la siguiente forma:

oracle.install.responseFileVersion=/oracle/install/rspfmt_crsinstall_response_schema_v19.0.0

INVENTORY_LOCATION=/u01/app/oraInventory

oracle.install.option=CRS_CONFIG

ORACLE_BASE=/u01/app/grid

oracle.install.asm.OSDBA=oinstall

oracle.install.asm.OSOPER=

oracle.install.asm.OSASM=asmadmin

oracle.install.crs.config.scanType=LOCAL_SCAN

oracle.install.crs.config.gpnp.scanName=rac-scan

oracle.install.crs.config.gpnp.scanPort=1521

oracle.install.crs.config.ClusterConfiguration=STANDALONE

oracle.install.crs.config.configureAsExtendedCluster=false

oracle.install.crs.config.clusterName=rac-cluster

oracle.install.crs.config.gpnp.configureGNS=false

oracle.install.crs.config.autoConfigureClusterNodeVIP=false

oracle.install.crs.config.clusterNodes=nodo1:nodo1-vip,nodo2:nodo2-vip

oracle.install.crs.config.networkInterfaceList=eno16780032:192.168.51.0:1,eno33559296:10.20.0.0:5

oracle.install.crs.configureGIMR=false

oracle.install.asm.configureGIMRDataDG=false

oracle.install.crs.config.storageOption=FLEX_ASM_STORAGE

oracle.install.asm.SYSASMPassword=Oracle123

oracle.install.asm.diskGroup.name=OCR

oracle.install.asm.diskGroup.redundancy=NORMAL

oracle.install.asm.diskGroup.AUSize=4

oracle.install.asm.diskGroup.disksWithFailureGroupNames=ORCL:ASM1,,ORCL:ASM2,,ORCL:ASM3,

oracle.install.asm.diskGroup.disks=ORCL:ASM1,ORCL:ASM2,ORCL:ASM3

oracle.install.asm.diskGroup.diskDiscoveryString=ORCL:*

oracle.install.asm.monitorPassword=Oracle123

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.crs.rootconfig.executeRootScript=false

Una vez tenemos definido su contenido, podemos preparar la equivalencia de usuarios en una capa o dos , si vamos a tener Separación de usuarios ( Role Separation Duties).

./sshUserSetup.sh -user grid -hosts “nodo1 nodo2” -noPromptPassphrase

./sshUserSetup.sh -user oracle -hosts “nodo1 nodo2” -noPromptPassphrase

Para ejecutar el instalador:

./gridSetup.sh -silent -waitForCompletion -ignorePrereqFailure -ignoreInternalDriverError -responseFile /home/grid/gi.rsp

Luego hay que estar atentos a las salidas, archivos de logs, salida en pantalla , etc etc.

Después prosigue instalar la capa de rdbms ( Proceder solo si la capa de GI fue satisfactoria).

La muestra de nuestro archivo de respuesta:

oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v19.0.0

oracle.install.option=INSTALL_DB_SWONLY

UNIX_GROUP_NAME=oinstall

INVENTORY_LOCATION=/u01/app/oraInventory

ORACLE_HOME=/u01/app/oracle/product/19.0.0/db_1

ORACLE_BASE=/u01/app/oracle

oracle.install.db.InstallEdition=EE

oracle.install.db.OSDBA_GROUP=oinstall

oracle.install.db.OSOPER_GROUP=oinstall

oracle.install.db.OSBACKUPDBA_GROUP=oinstall

oracle.install.db.OSDGDBA_GROUP=oinstall

oracle.install.db.OSKMDBA_GROUP=oinstall

oracle.install.db.OSRACDBA_GROUP=oinstall

oracle.install.db.rootconfig.executeRootScript=false

oracle.install.db.CLUSTER_NODES=nodo1,nodo2

Y como ultimo paso el lanzamiento del instalador:

./runInstaller  -silent -ignoreInternalDriverError -ignorePrereqFailure -responseFile /home/oracle/db_install.rsp 

Espero les sea de Utilidad.

Saludos!!