This discussion is archived
6 Replies Latest reply: Jul 26, 2012 5:58 AM by Santosh_Kangane RSS

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

Santosh_Kangane Newbie
Currently Being Moderated
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) Guru
    Currently Being Moderated
    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 Newbie
    Currently Being Moderated
    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) Guru
    Currently Being Moderated
    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 Newbie
    Currently Being Moderated
    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 Newbie
    Currently Being Moderated
    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 #-----------------------------

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points