为什么RHEL 6上没有ASMLIB?

为什么RHEL 6上没有ASMLIB?

 

有些人简单解释为Oracle为了推广自家的Oracle Linux而特意为之,实际上这一评价是不公允的。

ASMLIB的特殊性是它有部分Linux Kernel内核级别的组件, 而Kernel的开放与否完全取决于Kernel内核的维护者,对于Red Hat Enterprise Linux而言是Redhat公司。 由于Redhat公司从RHEL 6这个版本开始决定从Kernel中移除ASMLIB,并且不再给与Oracle公司对于该部分内核代码的访问修改权利,这直接导致Oracle不可能build出FOR RHEL 6的ASMLIB版本,因此显然这是Redhat的问题,而非O记得问题。

 

注意ASMLIB仅仅是不支持原生态的RHEL 6的Kernel,这不代表在RHEL 6上不可能用ASMLIB。Metalink文档介绍了相关信息:

 

What is ASMLib?

 

ASMLib is free, optional software for the Automatic Storage Management (ASM) feature of Oracle Database that simplifies the management and discovery of ASM disks and makes I/O processing and kernel resource usage with ASM storage more efficient. ASMLib is not required to use the Automatic Storage Management (ASM) feature of Oracle Database on Linux and all features and functionality of ASM will work without ASMLib.

Software Update Policy for ASMLib running on Red Hat Enterprise Linux

Oracle provides ASMLib software and support for customers who receive Red Hat Enterprise Linux (RHEL) operating system support from Red Hat and have a valid Oracle database support contract. Only the latest release of ASMLib will be provided for new Linux kernels released with each new RHEL minor release (“Update”). For example, if Red Hat were to release kernel 2.6.18-194.0.1.el5, Oracle will only release the latest version of ASMLib, say 2.0.5, for that kernel. Oracle will not release any previous versions of ASMlib for that kernel.

Furthermore, ASMLib software is only provided for Linux kernels for which the corresponding packages (devel, src, binaries) are available to Oracle. For example, Oracle cannot provide ASMLib software for kernels provided under Red Hat’s Extended Update Model or “z-stream” support.

Red Hat Enterprise Linux 6 (RHEL6)

For RHEL6 or Oracle Linux 6, Oracle will only provide ASMLib software and updates when configured Unbreakable Enterprise Kernel (UEK). Oracle will not provide ASMLib packages for kernels distributed by Red Hat as part of RHEL 6 or the Red Hat compatible kernel in Oracle Linux 6. ASMLib updates will be delivered via Unbreakable Linux Network(ULN) which is available to customers with Oracle Linux support. ULN works with both Oracle Linux or Red Hat Linux installations, but ASMlib usage will require replacing any Red Hat kernel with UEK

 
对于RHEL6,只要使用Oracle自己的Unbreakable Enterprise Kernel(UEK)内核则仍可以使用ASMLIB软件及其更新,仅仅是不支持RHEL 6自带的Kernel以及Redhat兼容的Kernel。  可以使用Unbreakable Linux Network(ULN)更新ASMLIB,前提是用户购买了Oracle Linux  Support服务。 不管是Oracle Linux还是Redhat Linux均可以使用ULN服务,但是ASMlib要求必须将任何Redhat Kernel替换为UEK。

 

Unbreakable Linux Network

 

相关阅读:

 在Linux 6上使用UDEV解决RAC ASM存储设备名问题
利用UDEV服务解决RAC ASM存储设备名
Why ASMLIB and why not?
如何诊断ASMLIB故障

  1. 你好,能请教一下这个文章的观点是你个人的看法还是Oracle公司的官方说明?

    签名

    虽然asmlib实在真的是一个可有可无的东西,可是对有些初学者来说还是挺重视的

    签名

    所以,有些观点还是不要以讹传讹的好

    • 这个博客所有的文章都是个人观点,不代表官方立场。 但是这些观点都是从相对权威的资料中理解的来; 这些观点是否权威,请自行评估。

      • 那就小小的纠正一下:
        而Kernel的开放与否完全取决于Kernel内核的维护者,对于Red Hat Enterprise Linux而言是Redhat公司。 由于Redhat公司从RHEL 6这个版本开始决定从Kernel中移除ASMLIB,并且不再给与Oracle公司对于该部分内核代码的访问修改权利,这直接导致Oracle不可能build出FOR RHEL 6的ASMLIB版本,因此显然这是Redhat的问题,而非O记得问题。
        文章中的这一段的提法是有问题的,建议你对GPL、linux kernel以及asmlib的相关背景知识做一点更深入的了解。或者说,请再仔细看看Wim Coekaerts对asmlib的一篇相关文字:https://blogs.oracle.com/wim/entry/asmlib。

        签名

        asmlib的软件包其实是分三部分的:
        1. oracleasm-support – user space shell scripts
        2. oracleasmlib – user space library (closed source)
        3. oracleasm-`uname -r` – kernel driver

        • 很高兴和你探讨这个问题(你是redhat的兄弟??), Wim Coekaerts对这个问题的主要描述是:

          1.维护RHEL上的测试环境耗费大量人力
          2.在RHEL6中没办法用到最新的kernel特性
          3.不想再维护多个版本的ASMLIB

          So today, we (Oracle) provide Oracle ASMLib for Oracle Linux and in particular on the Unbreakable Enterprise Kernel. We did the build/testing/delivery of ASMLib for RHEL until RHEL5 but since RHEL6 decided that it was too much effort for us to also maintain all the build and test environments for RHEL and we did not have the ability to use the latest kernel features to introduce the Data Integrity features and we didn’t want to end up with multiple versions of asmlib as maintained by us. SuSE SLES still builds and comes with the oracleasm module and they do all the work and RHAT it certainly welcome to do the same. They don’t have to rebuild the userspace library, it’s really about the kernel module.

          这和我看到的材料的说法大相径庭;

          呵呵,这算是asmlib引起的一件公案,各有各的说法。

  2. ASM 不等于 ASMLIB,再说一次!

    用ASM 根本不需要ASMLIB!

    需要ASMLIB的相关依赖包啊?

    根本不需要!不要乱说! AIX 、 HP-UX、Solaris上根本没ASMLIB,这几个平台就不能用ASM了?

    再说一次装ASM 不需要ASMLIB,ASMLIB只是一种设备绑定方案、不是ASM必须的。

    推荐使用UDEV彻底取代ASMLIB,作为设备绑定服务。

    今后只有Oracle Linux Kernel自带ASMLIB,其他的Linux均没有、也不需要有!

    Why ASMLIB and why not? http://www.askmaclean.com/archives/why-asmlib-and-why-not.html

  3. Pingback: 深入了解Oracle ASM(一):基础概念 | Ask Maclean Oracle Blog

    • 不这样认为, 如果觉得ASMLIB性能比UDEV好, 请给出原理或者POC。此外如果ASMLIB对性能有收益,那么Oracle应当给所有平台包括AIX开发ASMLIB,这显然是个悖论。