6 Replies Latest reply: Jul 26, 2012 7:58 AM by Santosh_Kangane RSS

    Oracle 11gR2 Clusterware on Ubuntu12.04 (x86_64 bit,Kernel:3.2.0-23) issue

    Santosh_Kangane
      I have done the following steps to install the Oracle 11gR2 on Ubuntu 12.04(x86_64 bit, Kernel : 3.2.0-23-generic) ,
      but now when I do $oracleasm init its not able to load oracleasm driver.
      Could you guide me in this regards ?

      Specification :
      1)     2 Node RAC setup
      2)     Each machine with Linux Ubuntu 12.04 (x86_64 bit, Kernel : 3.2.0-23-generic)
      3)     Oracle 11gR2 Database
      4)     Oracle 11gR2 Grid Infrastructure.

      Pre-Installation :
      1)     All the nodes should have same OS and Kernel version and bits (x86 or x86_64)
      For Linux use $uname –a it should show same output on all the nodes.
      2)     Make sure each of the node has following Packages Installed (Ref : Installing Oracle 11g R2 on Ubuntu 10 Howto
      Oracle Software Prerequisites Install required packages
      apt-get install build-essential
      apt-get install libaio1
      apt-get install libaio-dev
      apt-get install unixODBC
      apt-get install unixODBC-dev
      apt-get install pdksh
      apt-get install expat
      apt-get install sysstat
      apt-get install libelf-dev
      apt-get install elfutils
      apt-get install lsb-cxx

      3)     To avoid error "linking ctx/lib/ins_ctx.mk...":
           
      $ wget http://mirrors.kernel.org/ubuntu/pool/universe/g/gcc-3.3/libstdc++5_3.3.6-25ubuntu1_amd64.deb
      ( you may have to check the latest package available on site http://mirrors.kernel.org/ubuntu/pool/universe/g/gcc-3.3 and following file paths may change as per package structure )
      $ dpkg-deb -x libstdc++5_3.3.6-25ubuntu1_amd64.deb ia64-libs
      $ cp /tmp/ia64-libs/usr/lib/x86_64-linux-gnu/libstdc++.so.5.0.7 /lib64/
      $ cd /lib64/
      $ ln -s libstdc++.so.5.0.7 libstdc++.so.5

      4)     To avoid error invoking target 'idg4odbc' of makefile:
      $ ln -s /usr/bin/basename /bin/basename

      5)     To avoid errors when executing the post-install root.sh script:
      $ ln -s /usr/bin/awk /bin/awk

      6)     Modify the kernel parameter file
      I have appended the following entries in /etc/sysctl.conf file.

      $echo "#">> /etc/sysctl.conf
      $echo "# Oracle 11gR2 entries">> /etc/sysctl.conf
      $echo "fs.aio-max-nr=1048576" >> /etc/sysctl.conf
      $echo "fs.file-max=6815744" >> /etc/sysctl.conf
      $echo "kernel.shmall=2097152" >> /etc/sysctl.conf
      $echo "kernel.shmmni=4096" >> /etc/sysctl.conf
      $echo "kernel.sem=250 32000 100 128" >> /etc/sysctl.conf
      $echo "net.ipv4.ip_local_port_range=9000 65500" >> /etc/sysctl.conf
      $echo "net.core.rmem_default=262144" >> /etc/sysctl.conf
      $echo "net.core.rmem_max=4194304" >> /etc/sysctl.conf
      $echo "net.core.wmem_default=262144" >> /etc/sysctl.conf
      $echo "net.core.wmem_max=1048586" >> /etc/sysctl.conf
      $echo "kernel.shmmax=2147483648" >> /etc/sysctl.conf

      Issue the command to reload kernel parameter :

      $ sysctl -p
      root@PTS0009:~# sysctl -p
      fs.aio-max-nr = 1048576
      fs.file-max = 6815744
      kernel.shmall = 2097152
      kernel.shmmni = 4096
      kernel.sem = 250 32000 100 128
      net.ipv4.ip_local_port_range = 9000 65500
      net.core.rmem_default = 262144
      net.core.rmem_max = 4194304
      net.core.wmem_default = 262144
      net.core.wmem_max = 1048586
      kernel.shmmax = 2147483648
      root@PTS0009:~#

      7)     Install Oracleasm, oracleasmlib and oracleasm-support for ASM instance creation
      a.     Since Ubuntu does not have by default support of Oracle ASM you will have to download (http://www.oracle.com/technetwork/server-storage/linux/downloads/rhel5-084877.html) and installation compatible to your kernel version.
      b.     For my Ubuntu Linux Kernel version : 3.2.0-23-generic I have used following libraries
      oracleasm-2.6.18-308.11.1.el5-2.0.5-1.el5.x86_64.rpm
      oracleasm-2.6.18-308.11.1.el5debug-2.0.5-1.el5.x86_64.rpm
      oracleasm-2.6.18-308.11.1.el5xen-2.0.5-1.el5.x86_64.rpm
      oracleasmlib-2.0.4-1.el5.x86_64.rpm
      oracleasm-support-2.1.7-1.el5.x86_64.rpm


      Steps for Oracle RAC :
      1)     Create group : dba, oinstall, asmadmin, asmdba, asmoper on all the nodes for Oracle software and ASM
      2)     Create users : Oracle ( for oracle software owner) and grid ( for oracle cluster owner) as follows :
      $ id grid
      uid=501(grid) gid=501(oinstall) groups=501(oinstall),502(asmadmin),503(asmdba),504(asmoper)
      $ id oracle
      uid=500(oracle) gid=501(oinstall) groups=501(oinstall),500(dba),503(asmdba)

      3)     Configure Oracle ASM:
      root@PTS0006:/home/softwares# oracleasm configure
      ORACLEASM_ENABLED=false
      ORACLEASM_UID=
      ORACLEASM_GID=
      ORACLEASM_SCANBOOT=true
      ORACLEASM_SCANORDER=""
      ORACLEASM_SCANEXCLUDE=""
      root@PTS0006:/home/softwares# oracleasm configure -i
      Configuring the Oracle ASM library driver.

      This will configure the on-boot properties of the Oracle ASM library
      driver. The following questions will determine whether the driver is
      loaded on boot and what permissions it will have. The current values
      will be shown in brackets ('[]'). Hitting <ENTER> without typing an
      answer will keep that current value. Ctrl-C will abort.

      Default user to own the driver interface []: grid
      Default group to own the driver interface []: asmadmin
      Start Oracle ASM library driver on boot (y/n) [n]: y
      Scan for Oracle ASM disks on boot (y/n) [y]: y
      Writing Oracle ASM library driver configuration: done
      root@PTS0006:/home/softwares# oracleasm configure
      ORACLEASM_ENABLED=true
      ORACLEASM_UID=grid
      ORACLEASM_GID=asmadmin
      ORACLEASM_SCANBOOT=true
      ORACLEASM_SCANORDER=""
      ORACLEASM_SCANEXCLUDE=""
      root@PTS0006:/home/softwares#

      4)     Load Oracle ASM:
      a.     Check Current status
      root@PTS0009:/home/softwares# oracleasm status
      Checking if ASM is loaded: no
      Checking if /dev/oracleasm is mounted: no
      b.     Init Oracle ASM
      root@PTS0009:/home/softwares# oracleasm init
      Creating /dev/oracleasm mount point: /dev/oracleasm
      Loading module "oracleasm": failed
      Unable to load module "oracleasm"

      Edited by: 948091 on Jul 25, 2012 3:21 AM

      Edited by: 948091 on Jul 25, 2012 3:38 AM
        • 1. Re: Oracle 11gR2 Clusterware on Ubuntu12.04 (x86_64 bit,Kernel:3.2.0-23) issue
          Sebastian Solbach -Dba Community-Oracle
          Hi,

          there is no ASMLIB kernel module for Ubuntu. So I doubt you will be able to get asmlib to run.

          However this is not so bad as it seems.: Since you can perfectly use ASM without asmlib.

          Simply leave out the steps with ASMLIB. Then use udev rules to give the devices you want to use for ASM the correct user and permission (as in the installation guide).
          Then you only have to make sure your DISK_STRING (discovery path of ASM is set to /dev/sda1 or whatever you ASM disks are).

          Regards
          Sebastian
          • 2. Re: Oracle 11gR2 Clusterware on Ubuntu12.04 (x86_64 bit,Kernel:3.2.0-23) issue
            Santosh_Kangane
            Sebastian Solbach (DBA Community) wrote:
            Simply leave out the steps with ASMLIB. Then use udev rules to give the devices you want to use for ASM the correct user and permission (as in the installation guide).
            Then you only have to make sure your DISK_STRING (discovery path of ASM is set to /dev/sda1 or whatever you ASM disks are).
            Regards
            Sebastian
            Thanks Sebastian,
            Since there are no Oracleasm support for Ubuntu I had used latest release for RedHat (http://www.oracle.com/technetwork/server-storage/linux/downloads/rhel5-084877.html#oracleasm_rhel5_amd64)

            Which ASMLib should I use for Ubuntu 12.04 (x86_64 bit, Kernel : 3.2.0-23-generic) ?

            Can you please elaborate more or can give me some links to the above topic that you have mention?

            Thanks,
            Santosh
            • 3. Re: Oracle 11gR2 Clusterware on Ubuntu12.04 (x86_64 bit,Kernel:3.2.0-23) issue
              Sebastian Solbach -Dba Community-Oracle
              Hi,

              as written above, do not use ASMLIB on system where there is no kernel driver available (like for Ubuntu). I leave out the fact that Ubuntu is not the right system to install Oracle RAC on, since it is not a supported platform (by Oracle), though lots of people got Oracle software running on Ubuntu. However that is still a trial and error thing...(without support).

              You have 2 options:
              a.) The supported one: You can download Oracle Linux (edelivery.oracle.com/linux) for free --- there is even a free update server on public-yum.oracle.com. With this you can use asmlib and are on the supported site.
              b.) Continue to use ubuntu, and do not use ASMLIB. You don't need ASMLIB for ASM. The only thing ASMLIB does is to set the correct permissions for the disks and use a little less ressources.
              But I did a lot of installations (even on supported platforms) without ASMLIB.
              Simply setup UDEV rules to take up the tasks to set the permissions for the disks correctly.

              Regards
              Sebastian
              • 4. Re: Oracle 11gR2 Clusterware on Ubuntu12.04 (x86_64 bit,Kernel:3.2.0-23) issue
                Santosh_Kangane
                Thanks Sebastian,

                This helps a lot...
                Since I’m implementing this just to learn and test ASM and RAC setup/working, I will go with 2nd option you suggested much of high difficulty level for me :) . ( and I will have option 1 as fallback if I wont able to run option 2 :) )
                • 5. Re: Oracle 11gR2 Clusterware on Ubuntu12.04 (x86_64 bit,Kernel:3.2.0-23) issue
                  Santosh_Kangane
                  Now something new…

                  I thought I will go with Shared storage instead of ASM for Voting Disk and OCR (Re: Oracle 11gR2 Clusterware on Ubuntu12.04 (x86_64 bit,Kernel:3.2.0-23) issue And launch the installer but now I have following error 

                  [INS-08106] Unexpected error occurred while loading the view 'GridPlugPlayInfoUI' associated to state 'GridPlugPlayInfoUI'.

                  Error Log :
                  INFO: Verifying route FRESH_CRS_INSTALL
                  INFO: Get view named [GridPlugPlayInfoUI]
                  INFO: View for [GridPlugPlayInfoUI] is oracle.install.ivw.crs.view.GridPlugPlayInfoUI@23a82e92
                  INFO: Initializing view <GridPlugPlayInfoUI> at state <GridPlugPlayInfoUI>
                  INFO: GridPlugPlayInfoUI entering onEvent
                  INFO: Terminating all background operations
                  INFO: Terminated all background operations
                  SEVERE: [FATAL] [INS-08106] Unexpected error occurred while loading the view 'GridPlugPlayInfoUI' associated to state 'GridPlugPlayInfoUI'.
                  CAUSE: No additional information available.
                  ACTION: Contact Oracle Support Services or refer to the software manual.
                  SUMMARY:
                  - java.lang.NullPointerException.
                  Refer associated stacktrace #oracle.install.commons.util.exception.DefaultErrorAdvisor:458
                  INFO: Advice is ABORT
                  SEVERE: Unconditional Exit
                  INFO: Adding ExitStatus FAILURE to the exit status set
                  INFO: Finding the most appropriate exit status for the current application
                  INFO: Exit Status is -1
                  INFO: Shutdown Oracle Grid Infrastructure
                  INFO: Unloading Setup Driver


                  Error Stacktrace --------------

                  java.lang.NullPointerException
                       at oracle.sysman.oii.oiin.OiinNetOps.addNICInfo(OiinNetOps.java:144)
                       at oracle.sysman.oii.oiin.OiinNetOps.computeNICList(OiinNetOps.java:109)
                       at oracle.sysman.oii.oiin.OiinNetOps.<init>(OiinNetOps.java:76)
                       at oracle.sysman.oii.oiin.OiinNetOps.getNetOps(OiinNetOps.java:90)
                       at oracle.sysman.oii.oiix.OiixNetOps.getFullHostName(OiixNetOps.java:49)
                       at oracle.install.library.util.MachineInfo.getFullHostName(MachineInfo.java:109)
                       at oracle.install.library.db.RAC92Info.is92RACPresent(RAC92Info.java:115)
                       at oracle.install.ivw.crs.view.InstallTypeGUI.onEvent(InstallTypeGUI.java:120)
                       at oracle.install.commons.flow.AbstractFlowExecutor.loadView(AbstractFlowExecutor.java:508)
                       at oracle.install.commons.flow.AbstractGraphicalFlowExecutor.access$001(AbstractGraphicalFlowExecutor.java:39)
                       at oracle.install.commons.flow.AbstractGraphicalFlowExecutor$1.call(AbstractGraphicalFlowExecutor.java:99)
                       at oracle.install.commons.flow.AbstractGraphicalFlowExecutor$1.call(AbstractGraphicalFlowExecutor.java:98)
                       at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
                       at java.util.concurrent.FutureTask.run(FutureTask.java:123)
                       at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
                       at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
                       at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
                       at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
                       at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
                       at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
                       at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
                  ---# Begin Stacktrace #---------------------------
                  ID: oracle.install.commons.util.exception.DefaultErrorAdvisor:458
                  oracle.install.commons.flow.FlowException: [INS-08106] Unexpected error occurred while loading the view 'GridPlugPlayInfoUI' associated to state 'GridPlugPlayInfoUI'.
                       at oracle.install.commons.flow.AbstractFlowExecutor.loadView(AbstractFlowExecutor.java:510)
                       at oracle.install.commons.flow.AbstractGraphicalFlowExecutor.access$001(AbstractGraphicalFlowExecutor.java:39)
                       at oracle.install.commons.flow.AbstractGraphicalFlowExecutor$1.call(AbstractGraphicalFlowExecutor.java:99)
                       at oracle.install.commons.flow.AbstractGraphicalFlowExecutor$1.call(AbstractGraphicalFlowExecutor.java:98)
                       at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
                       at java.util.concurrent.FutureTask.run(FutureTask.java:123)
                       at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
                       at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
                       at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
                       at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
                       at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
                       at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
                       at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
                  Caused by: java.lang.NullPointerException
                       at oracle.install.library.crs.CRSInfo.getDefaultIPAddressForGNSVIP(CRSInfo.java:584)
                       at oracle.install.ivw.crs.view.GridPlugPlayInfoUI.onEvent(GridPlugPlayInfoUI.java:373)
                       at oracle.install.commons.flow.AbstractFlowExecutor.loadView(AbstractFlowExecutor.java:508)
                       ... 12 more

                  ---# End Stacktrace #-----------------------------