Migrating from Oracle ASM Filter Driver to Oracle ASMLib for Oracle Restart

Oracle ASM filtering is disabled starting with Linux kernel version 5.14. To continue using filtering, migrate from Oracle ASM Filter Driver (Oracle ASMFD) to Oracle ASMLib 3.1 in rolling mode.

Prerequisites

  • If Oracle ASMFD is installed and configured for an existing Oracle ASM installation, then you must explicitly deconfigure Oracle ASMFD filtering before installing and configuring Oracle ASMLib.
  • Use this procedure on Oracle Linux 8 or later servers running UEK6 (kernel version 5.4.17-2136.342.1 or later).
  • If the Oracle ASM disk group attribute compatible.rdbms is lower than 12.2.0.1.0, then set compatible.rdbms to 12.2.0.1.0 or higher (preferred), or apply one-off patch for bug 39030808.
  1. Confirm if Oracle ASMFD is configured and running:
    # asmcmd lsdsk
    Path
    AFD:DATA1
    AFD:DATA2
    The AFD prefix in the results indicates that the disks are configured using Oracle ASMFD.
  2. Apply the one-off patches for the following bugs to the specified Oracle homes:
    1. 37347369 (Oracle Grid Infrastructure home)
    2. 37405185 (Oracle Grid Infrastructure home)
    3. 37230154 (Oracle Grid Infrastructure home and Oracle Database home)
    4. 39030808 (Oracle Grid Infrastructure home; required only if compatible.rdbms is lower than 12.2.0.1.0 and you cannot set it to a higher release)
  3. As the grid user, shut down the Oracle Restart stack:
    $ crsctl stop has
  4. As the root user, stop the Oracle ACFS kernel modules:
    # $ORACLE_HOME/bin/acfsload stop
  5. Deconfigure Oracle ASMFD filtering:
    # $ORACLE_HOME/bin/asmcmd afd_deconfigure
  6. Install Oracle ASMLib v3 by performing the steps in the following link:
    After installing the oracleasm-support and oracleasmlib packages, configure oracleasm using the management utility /usr/sbin/oracleasm.
  7. Run the Oracle ASM initialization script and configure Oracle ASMLib:
    # /usr/sbin/oracleasm init
    # /use/sbin/oracleasm configure -i
  8. Start the Oracle ASMLib service.
    # systemctl enable --now oracleasm
  9. As the root user, scan for Oracle ASMLib-labeled disks:
    # oracleasm scandisks

    Note:

    Ensure that the Oracle ASM disks in /dev are owned by the asmdba group.
  10. List the Oracle ASMLib disks.
    # oracleasm listdisks

    Note:

    The disk list must match the disk list from Step 1.
  11. Start the Oracle ACFS kernel modules.
    # $ORACLE_HOME/bin/acfsload start

    Note:

    Run this step even if you do not use Oracle ACFS.
  12. As the grid user, start the Oracle Restart stack.
    $ crsctl start has
  13. Confirm if Oracle ASMLib is configured and running.
    $ asmcmd lsdsk
    Path
    ORCL:DATA1
    ORCL:DATA2

    The ORCL prefix in the results indicates that the disks are configured using Oracle ASMLib.