Oracle ASMLib Availability and Support

Solution Verified - Updated -

Environment

  • Red Hat Enterprise Linux 6
  • Red Hat Enterprise Linux 7

Issue

  • Oracle ASM (Automated Storage Management) is a data volume manager for Oracle databases. ASMLib is an optional utility that can be used on Linux systems to manage Oracle ASM devices. ASM assists users in disk management by keeping track of storage devices dedicated to Oracle databases and allocating space on those devices according to the requests from Oracle database instances.
  • I have tried installing Oracle ASM using the RPMs downloaded from the Oracle site. However, when attempting to install them, I get this error:
[root@host tmp]# rpm -ivh oracleasmlib-2.0.4-1.el6.x86_64.rpm
warning: oracleasmlib-2.0.4-1.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
error: Failed dependencies:
        oracleasm >= 1.0.4 is needed by oracleasmlib-2.0.4-1.el6.x86_64

Resolution

Overview

ASMLib consists of the following components:

  • An open source (GPL) kernel module package: kmod-oracleasm
  • An open source (GPL) utilities package: oracleasm-support
  • A closed source (proprietary) library package: oracleasmlib

ASM features and functionality are available without ASMLib. The use of ASMLib does not affect database performance.

The ASMLib kernel module package is provided as a convenience to Red Hat customers via the Red Hat Network Customer Portal. Red Hat Global Support Services will field ASMLib related issues and use commercially reasonable effort to support the ASMLib kernel module, until such an effort requires knowledge of or modifications to Oracle's proprietary dependent component(s).

Red Hat Enterprise Linux 6

Red Hat Enterprise Linux 6 customers who use ASMLib can obtain the other two components (the ASMLib utilities package and the proprietary library package) at the locations (subject to change) described in the steps below.

Installing and Configuring ASMLib:

To obtain, install, and configure ASMLib:

  1. Enable the Red Hat Enterprise Linux 6 Server repository on Red Hat Network Customer Portal

  2. Download the ASMLib utilities package (oracleasm-support) and ASMLib library package (oracleasmlib) from the following location:
    http://www.oracle.com/technetwork/server-storage/linux/asmlib/rhel6-1940776.html

  3. Install the ASMLib kernel module package as root using the following command:

    # yum install kmod-oracleasm
    
  4. Install the ASMLib library package obtained from step 2 as root using the following command, with the downloaded package:

    # yum localinstall oracleasmlib-<version>.x86_64.rpm    # Where <version> is the revision downloaded in the previous step
    
  5. Install the ASMLib utilities package obtained from step 2 as root using the following command, with the downloaded package:

    # yum localinstall oracleasm-support-<version>.x86_64.rpm
    

    All three required ASMLib components should now be installed on your system.

  6. Configure ASMLib using the following command:

    # oracleasm init
    

Support for ASMLib

The ASMLib kernel module package is provided as a convenience to Red Hat customers via the Red Hat Network Customer Portal. Red Hat Global Support Services will respond to ASMLib related issues and use commercially reasonable efforts to support the ASMLib kernel module until such an effort requires knowledge of or modifications to Oracle's proprietary dependent component(s).

Since the ASMLib kernel module package is now updated with each kernel release, please update the relevant kmod-oracleasm package with each kernel update.

Additionally, updates may be provided for the kmod-oracleasm package independent of a kernel update. You may find the latest kmod-oracleasm packages in the base RHEL channel.

Oracle will provide support for the other two required ASMLib components (oracleasm-support and oracleasmlib) on Red Hat Enterprise Linux 6. Customers can obtain these two ASMLib components at the location (subject to change) described in the steps above.

Note that the ASMLib kernel module package ABIs are not guaranteed per Red Hat's Supplementary software package support terms as stated at https://access.redhat.com/support/offerings/production/scope_moredetail.html.

Alternatives to ASMLib

Please note that Red Hat is continuing to develop fully open source alternatives to ASMLib. Red Hat has provided a reference architecture for Oracle RAC clusters using upstream-accepted technologies such as dm-multipath and udev. This reference architecture is available at: https://access.redhat.com/knowledge/articles/216093.

Red Hat Enterprise Linux 7

The ASMLib kernel module (kmod-oracleasm) is available with Red Hat Enterprise Linux. Red Hat Enterprise Linux 7 customers who use ASMLib can obtain the other two components (the ASMLib utilities package and the proprietary library package) at the locations (subject to change) described in the steps below.

Installing and Configuring ASMLib:

To obtain, install, and configure ASMLib:

  1. Enable the Red Hat Enterprise Linux 7 Server repository on Red Hat Network Customer Portal

  2. Download the ASMLib utilities package (oracleasm-support) and ASMLib library package (oracleasmlib) from the following location:
    https://www.oracle.com/technetwork/server-storage/linux/asmlib/rhel7-2773795.html

  3. Install the ASMLib kernel module package as root using the following command:

    # yum install kmod-oracleasm
    
  4. Install the ASMLib library package obtained from step 2 as root using the following command, with the downloaded package:

    # yum localinstall oracleasmlib-<version>.x86_64.rpm    # Where <version> is the revision downloaded in the previous step
    
  5. Install the ASMLib utilities package obtained from step 2 as root using the following command, with the downloaded package:

    # yum localinstall oracleasm-support-<version>.x86_64.rpm
    

    All three required ASMLib components should now be installed on your system.

  6. Configure ASMLib using the following command:

    # oracleasm init
    

    For more detailed steps on configuring ASMLib, refer to the ASMLib documentation:
    https://docs.oracle.com/en/

Support for ASMLib

The ASMLib kernel module (kmod-oracleasm) is available with Red Hat Enterprise Linux. Red Hat Global Support Services will respond to ASMLib related issues and use commercially reasonable efforts to support the ASMLib kernel module until such an effort requires knowledge of or modifications to Oracle's proprietary dependent component(s).

Since the ASMLib kernel module package is now updated with each kernel release, please update the relevant kmod-oracleasm package with each kernel update.

Oracle will provide support for the other two required ASMLib components (oracleasm-support and oracleasmlib) on Red Hat Enterprise Linux 7.
Customers can obtain these two ASMLib components at the location (subject to change) described in the steps above.

Note that the ASMLib kernel module package ABIs are not guaranteed per Red Hat's Supplementary software package support terms as stated at https://access.redhat.com/support/offerings/production/scope_moredetail.html.

When using ASMLib, you should make DIF/DIX( https://access.redhat.com/solutions/41548) to be disabled. Red Hat does not support for using ASMLib with enabled DIF/DIX.

Additional Information:

  1. Guide the oracledata official documentation to configure the oracleasm.
    especially for the "Disk Scan Ordering" item. Please see the following reference
    for more detailed configuration instruction:
    http://docs.oracle.com/cd/E11882_01/install.112/e41961/storage.htm#CWLIN301

  2. SELinux may prevent oracleasm.service (systemd) from starting during the system boot. Please see section#2.10 Oracle ASM Fails to Initialize with SELinux in Enforcing Mode in the following link for more detailed instructions on how to workaround the issue:
    https://docs.oracle.com/cd/E52668_01/E53499/E53499.pdf

    Hint: The oracleasm script fails if SELinux is in Enforcing mode.

    The suggested workaround is to disable the SELInux policy module for Oracle
    ASM before running oracleasm:

    # semodule -d oracleasm
    # semodule -l | grep oracleasm
        oracleasm
        1.0.0 
       Disabled
    
  3. Secureboot

With UEFI secure boot enabled system, oracleasm kernel module can not be loaded,
there are two workarounds for this problem:

  • disable secure boot in the BIOS and reboot, and then load the kmod-oracleasm module in.
  • sign oracleasm kernel module after install kmod-oracleasm with the vendor's own secureboot keys.

Please refer to the Red Hat Enterprise 7 System Administration Guide below for how to sign a third party module for second workaround method above:

https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/System_Administrators_Guide/sect-signing-kernel-modules-for-secure-boot.html

Important Note:
When using the 'oracleasm deletedisk' command, please be sure that using this command is the intention and that the correct device is used.
In RHEL 7, using this command will delete the data in the device without warning, even when the device is active.

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.

21 Comments

Good news, can we also build ocfs2 modules, and include into the supplementary repo ?

Hi Chris, at this time Red Hat has no plans to build and provide any ocfs2 modules. Hope this helps!

Will the kernel mod be rebuilt for all new kernel packages, or just point releases? (or something in between?)

G Keegan - the kmod will be rebuilt at every minor release (6.5, 6.6, etc) as necessary.

This is awesome, great work!!!

Just to be clear - Because I have many customers asking, kmod-oracleasm is not available for RHEL 6 prior to the 6.4 release. Right?

Kimberly, correct! This only applies for RHEL 6.4 and newer (per the Environment section above). RHEL 6.3 and older did not provide this. Thanks!

RHEL 6.5 is out, and the kmod-oracleasm-2.0.6.rh1-2.el6 RPM has a dependency on 6.4's specific kernel version (2.6.32-358). Unsurprisingly, this breaks things like "yum upgrade". Can we expect an updated package to be provided? I opened case #01006748 before landing here: Red Hat's representative told me this is a third-party package and advised me to open a case with Oracle. Really? This is not a package malfunction, it's a dependency issue. Isn't the RPM built by Red Hat?

It's of course possible to hack the RPM's dependency directly, but then what's the point of using a supported system if I have to kludge my local repository?

HI Flavio,
Have you solved issue. I have the samee problem on RHEL 6.5
rpm -i kmod-oracleasm-2.0.6.rh1-2.el6.x86_64.rpm
error: Failed dependencies:
kernel < 2.6.32-359.el6 is needed by kmod-oracleasm-2.0.6.rh1-2.el6.x86_64
Thanks in advance
Best regards

Same issue as Flavio, attempting a fresh Kickstart of 6.5, with kmod-oracleasm included. The Kickstart stops because of the dependency upon an old kernel.

Yikes! Sorry all, this was an oversight on our part. We are working to get this corrected and included in RHEL 6.5.z and adding future tracking for 6.6, 6.7, 6.8 so this won't happen again.

Please refer to Bugzilla 1056772 to watch the status of this to land in RHEL 6.5.z.

Worked for me today with rhel 6.5. This was TREMENDOUSLY better than the method oRACLE recommended (they had no method). My oracle guru was very happy.

Any plan to have this on rhel7?

Any ETA for RHEL 6.6? We had to downgrade the kernel to 6.5's version, for the time being...

I'm curious of a corresponding article for the remaining systems I have under Red Hat 5.11 (we are migrating them soon to rhel 6.latest, or rhel7.latest when rhel7 is approved for us)

I finally found the answer after searching around. I installed the required packages but fails when instantiating disk.

oracleasm init # This fixed it!

Thanks.

please give direct link to download kmode driver

The correct link to "Oracle ASMLib Downloads for Red Hat Enterprise Linux 7" should be: http://www.oracle.com/technetwork/server-storage/linux/asmlib/rhel7-2773795.html

Where you will find both files for download:

oracleasmlib-2.0.12-1.el7.x86_64.rpm oracleasm-support-2.1.8-3.el7.x86_64.rpm

Can some one help finding the kmod-oracleasm package for RHEL 4?????

kmod-oracleasm package is not shipped with RHEL4, the only exception was for RHEL5.11 and that too with ELS subscription released with package name oracleasm-rhel5u11-2.0.5-2.el5_11

great!!!