Tuesday, February 10, 2009

Installing RAC 10gR2 on RHEL5.2 POWER LINUX

On both nodes
more /etc/oraInst.loc
on node1
groupadd oinstall
groupadd dba
useradd -u 200 -g oinstall -G dba oracle
passwd oracle
id nobody (user must exist)
id oracle (record the uid,gid)

on node2
groupadd -g 500 oinstall
groupadd -g 501 dba
useradd -u 200 -g oinstall -G dba oracle

Configure ssh equivelance
as root
vi /etc/hosts
127.0.0.1 localhost.localdomain localhost
172.18.253.32 billing2
172.18.253.30 billing1

which scp
if not in /usr/local/bin create link :
cd /usr/local/bin ; ln -s /usr/bin/scp scp

which ssh
if not in /usr/local/bin create link :
cd /usr/local/bin ; ln -s /usr/bin/ssh ssh

On both nodes login as oracle
mkdir .ssh
chmod 700 .ssh
ssh-keygen -t rsa
ssh-keygen -t dsa

on billing1:
cd .ssh
ssh billing1 cat /home/oracle/.ssh/id_rsa.pub >> authorized_keys
ssh billing1 cat /home/oracle/.ssh/id_dsa.pub >> authorized_keys
ssh billing2 cat /home/oracle/.ssh/id_rsa.pub >> authorized_keys
ssh billing2 cat /home/oracle/.ssh/id_dsa.pub >> authorized_keys
scp authorized_keys billing2:/home/oracle/.ssh/

on billing2:
cd .ssh
ssh billing1 cat /home/oracle/.ssh/id_rsa.pub >> authorized_keys
ssh billing1 cat /home/oracle/.ssh/id_dsa.pub >> authorized_keys
ssh billing2 cat /home/oracle/.ssh/id_rsa.pub >> authorized_keys
ssh billing2 cat /home/oracle/.ssh/id_dsa.pub >> authorized_keys
scp authorized_keys billing1:/home/oracle/.ssh/

on both nodes
chmod 600 ~/.ssh/authorized_keysexec
/usr/bin/ssh-agent $SHELL
/usr/bin/ssh-add
vi /home/oracle/.ssh/config ...
add
Host *
ForwardX11 no

vi .bashrc ... add
if [ -t 0 ]; then
stty intr ^C
fi
vi .bash_profile
umask 022
export DISPLAY=172.18.41.140:0
. ./.bash_profile

as root
vi /etc/hosts
127.0.0.1 localhost.localdomain localhost
172.18.253.32 billing2
172.18.253.33 billing2-v
10.254.254.32 billing2-i
172.18.253.30 billing1
172.18.253.31 billing1-v
10.254.254.30 billing1-i

vi /etc/hosts.equiv
billing1 oracle
billing2 oracle
billing1-i oracle
billing2-i oracle

Install required packages
yum install libaio-devel
yum install libXp

Download and install ibm xlc
http://www-1.ibm.com/support/docview.wss?rs=2030&context=SSJT9L&context=SSENT9&context=SSEP5D&dc=D400&dc=D410&dc=D420&dc=D430&q1=Run-time+Environment+Component&uid=swg24007906&loc=en_US&cs=utf-8&lang=en
rpm -ihv update/xlc/apr2007/xlsmp.msg.rte-1.5.1-3.ppc64pseries.rpm
rpm -ihv update/xlc/apr2007/xlsmp.rte-1.5.1-3.ppc64pseries.rpm
rpm -ihv update/xlc/apr2007/vacpp.rte-7.0.1-3.ppc64pseries.rpm
rpm -ivh vacpp.rte.lnk-7.0.1-0.ppc64pseries.rpm
rpm -ihv vac.lib-7.0.1-0.ppc64pseries.rpm

add entries to /etc/sysctl.conf
# Oracle RAC
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000

sysctl -p

vi /etc/security/limits.conf
# Oracle Limits
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
# As per Release Notes
oracle soft memlock 3145728
oracle hard memlock 3145728

vi /etc/pam.d/login
# Oracle RAC
session required pam_limits.so

vi /etc/profile
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
mkdir -p /orabin
chown -R oracle:oinstall /orabin
chmod -R 775 /orabin
mkdir -p /orabin/crs
chown -R root:oinstall /orabin/crs
chmod -R 775 /orabin/crs
as root on both nodes
lsmod grep hang
if not hangcheck_timer configured then
insmod /lib/modules/2.6.18-92.el5/kernel/drivers/char/hangcheck-timer.ko hangcheck_tick=30 hangcheck_margin=180
add the previous comand in /etc/rc.d/rc.local

Configuring raw devices for ocr and css using mpath (Metalink Note:564580.1)
raw /dev/raw/raw1 /dev/mapper/mpath1
raw /dev/raw/raw2 /dev/mapper/mpath2
raw -qals -l /dev/raw/
dd if=/dev/zero of=/dev/raw/raw1 bs=1024 count=100
su - oracle
dd if=/dev/zero of=/dev/raw/raw1 bs=1024 count=100 --> Permission Denied Expected
dd if=/dev/zero of=/dev/raw/raw2 bs=1024 count=100
su - oracle
dd if=/dev/zero of=/dev/raw/raw2 bs=1024 count=100 --> Permission Denied Expected
raw /dev/raw/raw1 0 0
raw /dev/raw/raw2 0 0
vi /etc/rc.d/rc.local and add
##### Oracle Cluster Registry (OCR) devices#####
chown root:oinstall /dev/mapper/mpath1
chmod 660 /dev/mapper/mpath1
raw /dev/raw/raw1 /dev/mapper/mpath1
chown root:oinstall /dev/raw/raw1
chmod 660 /dev/raw/raw1
##### Oracle Voting disks#####
chown oracle:oinstall /dev/mapper/mpath2
chmod 660 /dev/mapper/mpath2
raw /dev/raw/raw2 /dev/mapper/mpath2
chown oracle:oinstall /dev/raw/raw2
chmod 660 /dev/raw/raw2
/etc/rc.local
ll /dev/mapper
brw-rw---- 1 root oinstall 253, 5 May 30 14:40 mpath1
brw-rw---- 1 oracle oinstall 253, 6 May 30 14:40 mpath2
ls -l /dev/raw/
crw-rw---- 1 root oinstall 162, 1 May 30 15:41 raw1
crw-rw---- 1 oracle oinstall 162, 2 May 30 15:41 raw2
Disable sendmail Service and reboot
ll /dev/mapper/ & ls -l /dev/raw same results as above

Open oracle session on first node
export ORACLE_BASE=/orabin
export ORACLE_HOME=/orabin/crs

cd /orasoft
Disk1/cluvfy/runcluvfy.sh stage -pre crsinst -n billing1,billing2
Ignore vipca Error
runInstaller -ignoreSysPrereqs (as per Metalink Note: 414163.1)
Ignore remote attach home error
as root first on node1 and then on node2 do:
/orabin/oraInventory/orainstRoot.sh
Before Running root.sh on each node apply fix for Bug 4679769
FAILED TO FORMAT OCR DISK USING CLSFMTas per Metalink Note:564580.1
as root first on node1 and then on node2 do:
cd /orasoft
unzip p4679769_10201_IBMPower.zip
cd 5682732/
ls -l /orabin/crs/bin/clsfmt.bin
-rwxr-xr-x 1 oracle oinstall 784750 Nov 11 2005 /orabin/crs/bin/clsfmt.bin
cp /orabin/crs/bin/clsfmt.bin /orabin/crs/bin/clsfmt.bin.bak
cp clsfmt.bin /orabin/crs/bin/clsfmt.bin
chmod 755 /orabin/crs/bin/clsfmt.bin
ls -l /orabin/crs/bin/clsfmt.bin-rwxr-xr-x 1 oracle oinstall 778072 May 30 16:12 /orabin/crs/bin/clsfmt.bin
Apply workaround #2 for vipca errors as per Metalink Note:414163.1 (maybe not applying on ppc)
as root first on node1 and then on node2 do:
vi /orabin/crs/bin/vipca
Find lines : if [ "$arch" = "i686" -o "$arch" = "ia64" -o "$arch" = "x86_64" ]
then
LD_ASSUME_KERNEL=2.4.19
export LD_ASSUME_KERNEL
fi
unset LD_ASSUME_KERNEL <<== Line to be added
as root first on node1 and then on node2 do:
/orabin/crs/root.sh
On node2 you may see :
Running vipca(silent) for configuring nodeapps
The given interface(s), "eth0" is not public.
Public interfaces should be used to configure virtual IPs.
Ignore vipca error and run it from master node (First test from failling node failed, According to netapp document run from master node)
on node2:
export DISPLAY=172.18.41.140:0
/orabin/crs/bin/vipca
define interface for the virtual ips
and check crs after vipca finishes and installation reports finished
on both nodes
/orabin/crs/bin/crs_stat -t
Name Type Target State Host
------------------------------------------------------------
ora....ng1.gsd application ONLINE ONLINE billing1
ora....ng1.ons application ONLINE ONLINE billing1
ora....ng1.vip application ONLINE ONLINE billing1
ora....ng2.gsd application ONLINE ONLINE billing2
ora....ng2.ons application ONLINE ONLINE billing2
ora....ng2.vip application ONLINE ONLINE billing2

Reboot just to check if all is ok !!!

FINISHED !!!!!!

3 comments:

  1. Hi Agis,

    I am trying to install Oracle 10g R2 on RHEL 5 Power Series, but failing to start the OUI screen itself, I have had installed JAVA 1.4, 1.5, JRE, JDK, but nothing helped, any suggestions please?

    -Roshan Nair

    ReplyDelete
  2. Hi, Roshan

    Ensure that the RHEL is 5.2 and up.
    And try this ...
    1)
    As root
    more /etc/oraInst.loc
    groupadd oinstall
    groupadd dba
    useradd -u 200 -g oinstall -G dba oracle
    passwd oracle
    id nobody (user must exist)
    id oracle (record the uid,gid)
    vi .bashrc ... add
    if [ -t 0 ]; then
    stty intr ^C
    fi
    vi .bash_profile
    umask 022
    export DISPLAY=172.18.41.140:0
    . ./.bash_profile

    as root
    vi /etc/hosts
    127.0.0.1 localhost.localdomain localhost
    XXX.XXX.XXX.XXX server-name
    vi /etc/hosts.equiv
    server-name oracle

    Install required packages
    yum install libaio-devel
    yum install libXp

    Download and install ibm xlc
    http://www-1.ibm.com/support/docview.wss?rs=2030&context=SSJT9L&context=SSENT9&context=SSEP5D&dc=D400&dc=D410&dc=D420&dc=D430&q1=Run-time+Environment+Component&uid=swg24007906&loc=en_US&cs=utf-8&lang=en
    rpm -ihv update/xlc/apr2007/xlsmp.msg.rte-1.5.1-3.ppc64pseries.rpm
    rpm -ihv update/xlc/apr2007/xlsmp.rte-1.5.1-3.ppc64pseries.rpm
    rpm -ihv update/xlc/apr2007/vacpp.rte-7.0.1-3.ppc64pseries.rpm
    rpm -ivh vacpp.rte.lnk-7.0.1-0.ppc64pseries.rpm
    rpm -ihv vac.lib-7.0.1-0.ppc64pseries.rpm

    add entries to /etc/sysctl.conf
    # Oracle RAC
    kernel.shmmni = 4096
    kernel.sem = 250 32000 100 128
    fs.file-max = 65536
    net.ipv4.ip_local_port_range = 1024 65000

    sysctl -p

    vi /etc/security/limits.conf
    # Oracle Limits
    oracle soft nproc 2047
    oracle hard nproc 16384
    oracle soft nofile 1024
    oracle hard nofile 65536
    # As per Release Notes
    oracle soft memlock 3145728
    oracle hard memlock 3145728

    vi /etc/pam.d/login
    # Oracle RAC
    session required pam_limits.so

    vi /etc/profile
    if [ $USER = "oracle" ]; then
    if [ $SHELL = "/bin/ksh" ]; then
    ulimit -p 16384
    ulimit -n 65536
    else
    ulimit -u 16384 -n 65536
    fi
    fi
    mkdir -p /orabin
    chown -R oracle:oinstall /orabin
    chmod -R 775 /orabin

    as root
    lsmod grep hang
    if not hangcheck_timer configured then
    insmod /lib/modules/2.6.18-92.el5/kernel/drivers/char/hangcheck-timer.ko hangcheck_tick=30 hangcheck_margin=180
    add the previous comand in /etc/rc.d/rc.local

    Open oracle session
    export ORACLE_BASE=/orabin
    export ORACLE_HOME=/orabin/

    cd /orasoft
    runInstaller -ignoreSysPrereqs (as per Metalink Note: 414163.1)

    ReplyDelete
  3. Thank you for the info. It sounds pretty user friendly. I guess I’ll pick one up for fun. thank u Power Install

    ReplyDelete