ACFS-9109: oracleoks.ko driver failed to load

En el proceso de instalación de la base de datos Oracle 12c R2 en un entorno Linux es posible encontrarse con un error similar al que describo en el título de esta entrada. En concreto, ese error se encontrará al forzar la carga de los drivers ACFS:

[root@hostname ]# acfsload start
ACFS-9391: Checking for existing ADVM/ACFS installation.
ACFS-9392: Validating ADVM/ACFS installation files for operating system.
ACFS-9393: Verifying ASM Administrator setup.
ACFS-9308: Loading installed ADVM/ACFS drivers.
ACFS-9154: Loading 'oracleoks.ko' driver.
modprobe: FATAL: Module oracleoks not found.
ACFS-9109: oracleoks.ko driver failed to load.
ACFS-9127: Not all ADVM/ACFS drivers have been loaded.

Fruto de mi actual proyecto (migración de una base de datos Oracle 10g hacia una Oracle 12c) he podido comprobar como la elección del kernel de Linux puede ser de vital trascendencia para el devenir de la posterior instalación cuando trabajamos con bases de datos Oracle. En este caso concreto, se decidió instalar el software de base de datos en un kernel Red Hat, en concreto la versión 3.10.0-693.21.1.el7.x86_64, en lugar de hacer uso de la versión Oracle Unbreakable 4.1.12-112.16.4.el7uek.x86_64.

La instalación se desarrolla de forma correcta hasta llegar a un punto concreto del despliegue del paquete de software de grid; la ejecución de los script de root. Al lanzar  root.sh, aparece un error como el siguiente:

[root@hostname grid]# ./root.sh
Performing root user operation.
The following environment variables are set as:
    ORACLE_OWNER= grid
    ORACLE_HOME=  /u01/app/12.2.0/grid
Enter the full pathname of the local bin directory: [/usr/local/bin]:
   Copying dbhome to /usr/local/bin ...
   Copying oraenv to /usr/local/bin ...
   Copying coraenv to /usr/local/bin ...

Creating /etc/oratab file...
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.
Using configuration parameter file: /u01/app/12.2.0/grid/crs/install/crsconfig_params
The log of current session can be found at:
  /u01/app/grid/crsdata/hostname/crsconfig/roothas_2018-04-23_01-29-45PM.log
LOCAL ADD MODE
Creating OCR keys for user 'grid', privgrp 'oinstall'..
Operation successful.
LOCAL ONLY MODE
Successfully accumulated necessary OCR keys.
Creating OCR keys for user 'root', privgrp 'root'..
Operation successful.
CRS-4664: Node hostname successfully pinned.
2018/04/23 13:29:57 CLSRSC-330: Adding Clusterware entries to file 'oracle-ohasd.service'
2018/04/23 13:33:04 CLSRSC-400: A system reboot is required to continue installing.
The command '/u01/app/12.2.0/grid/perl/bin/perl -I/u01/app/12.2.0/grid/perl/lib -I/u01/app/12.2.0/grid/crs/install /u01/app/12.2.0/grid/crs/install/roothas.pl ' execution failed

Tras bucear concienzudamente por Oracle Support no conseguí encontrar una solución satisfactoria (simplemente, algo que me permitiera seguir con la instalación). De modo que tuve que buscar en sitios no oficiales. Y aquí encontré la solución.

Básicamente, el procedimiento se resume en descargar un parche para el instalador del software de grid, y descargar la versión actualizada de OPatch. Tras ello, se lanza la instalación haciendo una llamada a ese parche (con el adecuado modificador del comando de instalación). Para ello:

Una vez se tienen los tres paquetes de software (el instalable del grid, la nueva versión de OPatch y el parche actualizado) se procede en la instalación tal cual se describe en el documento oficial, hasta llegar al momento en el que se tiene que lanzar el ejecutable para instalar el software de grid. En ese momento, se incluye la modificación de la siguiente forma para aplicar el parche durante el proceso de instalación:

[grid@hostname grid]$ ./gridSetup.sh -applyPSU /u01/patch/27468969/
Preparando el directorio raíz para el parche...
Aplicando el parche /u01/patch/27468969/...
El parche se ha aplicado correctamente.
El log está en: /tmp/GridSetupActions2018-04-24_01-00-31PM/installerPatchActions_2018-04-24_01-00-31PM.log
Iniciando el asistente de configuración de infraestructura de grid de Oracle...
Encontrará el log de esta sesión de instalación en:
/tmp/GridSetupActions2018-04-24_01-00-31PM/gridSetupActions2018-04-24_01-00-31PM.log
Se han movido los logs de sesión de instalación a:
/u01/app/oraInventory/logs/GridSetupActions2018-04-24_01-00-31PM

Tras la aplicación del parche se lanza el proceso de instalación, el cual transcurre sin incidentes hasta llegar al momento en el que se deben lanzar los ejecutables de root. El que fallaba era root.sh, pero en este caso la ejecución es correcta:

[root@hostname ~]# /u01/app/12.2.0/grid/root.sh
Performing root user operation.
The following environment variables are set as:
    ORACLE_OWNER= grid
    ORACLE_HOME=  /u01/app/12.2.0/grid
Enter the full pathname of the local bin directory: [/usr/local/bin]:
The contents of "dbhome" have not changed. No need to overwrite.
The contents of "oraenv" have not changed. No need to overwrite.
The contents of "coraenv" have not changed. No need to overwrite.

Creating /etc/oratab file...
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.
Using configuration parameter file: /u01/app/12.2.0/grid/crs/install/crsconfig_params
The log of current session can be found at:
  /u01/app/grid/crsdata/hostname/crsconfig/roothas_2018-04-24_01-10-07PM.log
LOCAL ADD MODE
Creating OCR keys for user 'grid', privgrp 'oinstall'..
Operation successful.
LOCAL ONLY MODE
Successfully accumulated necessary OCR keys.
Creating OCR keys for user 'root', privgrp 'root'..
Operation successful.
CRS-4664: Node hostname successfully pinned.
2018/04/24 13:10:20 CLSRSC-330: Adding Clusterware entries to file 'oracle-ohasd.service'
CRS-2791: Iniciando cierre de los recursos gestionados por los Servicios de Alta Disponibilidad de Oracle en 'tributos-pru-bd'
CRS-2673: Intentando parar ''ora.evmd'' en ''hostname''
CRS-2677: La parada de ''ora.evmd'' en ''hostname'' se ha realizado correctamente
CRS-2793: Ha terminado el cierre de los recursos gestionados por los Servicios de Alta Disponibilidad de Oracle en 'hostname'
CRS-4133: Se ha parado Servicios de Alta Disponibilidad de Oracle.
CRS-4123: Se ha iniciado Servicios de Alta Disponibilidad de Oracle.
hostname     2018/04/24 13:13:42     /u01/app/12.2.0/grid/cdata/hostname/backup_20180424_131342.olr     626559184
2018/04/24 13:13:43 CLSRSC-327: Successfully configured Oracle Restart for a standalone server

 

Deja un comentario