ORACLE GRID INFRASTRUCTURE 11GR2
(RAC) INSTALLATION ON LINUX 5.4
The document describes the
installation of oracle 11gR2 Grid Infrastructure on Linux 5.4(32-bit) on oracle
virtualbox-4.2.18 with latest virtualbox extension pack.
The oracle software will be
downloaded from MOS using valid CSI. The installation steps mentioned here used
for 11.2.0.3 and also valid for 11.2.0.1 to 11.2.0.4. The virtualbox software
can be downloaded from www.virtualbox.org,
The virtualbox can provide you
with the flexibility to run multiple machines on single physical server. It
also allows you to setup, configure and use the virtual shared storage.
- Be ready with host machine running with two virtual machines on VM.
- Consider you have sufficient memory and CPU available, Minimum requirement are 3G physical memory on each guest machine, but recommendation is to use minimum of 4G on each guest. otherwise system will go crazy.
- Add the 3-SCAN ip's in DNS or GNS, if you have no plan to use the DNS or GNS, than single SCAN ip will be added into /etc/hosts on all the nodes.
- The public and virtual ip must be on same subnet including SCAN. The private ip must be on different network. Do not use 169.254.* series of IP as private or public because the series are reserved for HAIP.
- This installation uses the 32bit Linux guest host with 4G of physical RAM each and 3-shared virtual disk for ASM storage.
Software::
- Download virtualbox with extension pack and install
- Oracle Enterprise Linux 5.4 / REHL
- Oracle Software with Grid Infrastructure (Disk1, Disk2 and Disk3)
Guest Machines setup:- Install the virtualbox with extension
pack -> double click and start the
virtual box. Once the oracle VM box manager is started. do the following to
create the two guest hosts.
Click the "New" button
on the toolbar and enter the machine name "RAC01" (whatever you
want), select type as "Linux" and version "oracle" or
"oracle(64bit)" i am using
oracle for 32bit. and then click "Next".
Allocate the physical memory to
guest machine by sliding the slider or write into box as "4096" for
4G. then "Next"
The next step is to create the
virtual hard disk for OS installation, select the default and
"create"
The next window provide you with the disk file type, accept
the default selection "VDI(Virtual Box Disk Image)" and press
"Next".
The next window will provide you with the option for
creating the disk with fixed size of dynamic size. "Accept the default as
dynamic", I will prefer the dynamic
because it allocates the space as required and is also fast in for creating the
disk. Hit the "Next" button,
Moving to next window will give
you the opportunity to select the size of disk and the location of the disk by
select the folder icon on right hand side (marked in blue). and slide the
slider for the desired size. Hit "Create"
Once the disk is created, the
guest is visible into VM manager, like wise use the same steps for other
machine i.e. RAC02.
select the machine
"RAC01" click settings in
toolbar - select network - "Adapter1", "Enable Network
Adapter", "Bridged Adapter".
select "Adapter2" and select
either "Internal Network" or "Bridged Network", both will
work.
Now goto "System" on
same window and select the "Boot Order" unselect the floppy option
and hit "OK". The guest is ready to start-> on VM manager ->
hit the "Start" on toolbar to start the machine.
Once the guest is on, select the
linux software "ISO" image by clicking on the right hand side folder
option and select "Start" button.
Now, here is the boot-loader
screen for Linux installation. Repeat the same steps for other machines as
well.
Once all the required guest are
ready, assign the IP Addresses to the machines (you are free to use as per your
convenient but keep the consistency across the nodes).
So my machines IP address as
follows in the /etc/hosts file,
Grid Infrastructure Installation Prerequisites: The prereqs can be setup by either manually or
automatic. The Oracle Enterprise Linux comes with preinstalled oracle prereqs
with oracle-validated packages or 11gR2-preinstall-packages. Selecting these
during installation will install all the required packages and setup the kernel
parameters and other configuration files. The oracle user are also created by
default with oinstall and DBA as group.
other automatic method is to
install the oracle-validated packages from ULN. Note the internet connectivity
is required for downloading the packages.
The instructions are available at http://public-yum.oracle.com
to setup the oracle linux repository, and login as root and execute,
[root@RAC01~]#yum install
oracle-validated
Manual Method:: if you are not using OEL (Oracle Enterprise Linux)
or have any challenge to install the prereqs packages, follow the steps,
download and install the below list of packages.
binutils-2.17.50.0.6
compat-libstdc++-33-3.2.3
compat-libstdc++-33-3.2.3 (32 bit)
elfutils-libelf-0.125
elfutils-libelf-devel-0.125
elfutils-libelf-devel-static-0.125
gcc-4.1.2
gcc-c++-4.1.2
glibc-2.5-24
glibc-2.5-24 (32 bit)
glibc-common-2.5
glibc-devel-2.5
glibc-devel-2.5 (32 bit)
glibc-headers-2.5
ksh-20060214
libaio-0.3.106
libaio-0.3.106 (32 bit)
libaio-devel-0.3.106
libaio-devel-0.3.106 (32 bit)
libgcc-4.1.2
libgcc-4.1.2 (32 bit)
libstdc++-4.1.2
libstdc++-4.1.2 (32 bit)
libstdc++-devel 4.1.2
libstdc++-devel 4.1.2 (32 bit)
make-3.81
pdksh-5.2.14
sysstat-7.0.2
unixODBC-2.2.11
unixODBC-2.2.11 (32 bit)
unixODBC-devel-2.2.11
unixODBC-devel-2.2.11 (32 bit)
Add the following lines into
"/etc/sysctl.conf" file and execute the following command as root to
update the current kernel parameters.
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 1054504960
kernel.shmmni = 4096
# semaphores: semmsl, semmns, semopm, semmni
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
[root@RAC01~]# sysctl -p
Edit and add the below lines to the
"/etc/security/limits.conf" file for both grid and oracle.
oracle
soft nproc 2047
oracle
hard nproc 16384
oracle
soft nofile 1024
oracle
hard nofile 65536
grid
soft nproc 2047
grid
hard nproc 16384
grid
soft nofile 1024
grid
hard nofile 65536
Also add the lines to the
"/etc/pam.d/login" file, if it does not exist.
session required pam_limits.so
Create the users and groups as root on both the
nodes (separate for grid infrastructure and oracle RDBMS), you can also use the
same user for oracle and grid infrastructure. Note:- keep the guid same across
all the nodes, otherwise user equivalence check will fail.
[root@RAC01~]#groupadd -g 509 oinstall
[root@RAC01~]#groupadd -g 511 asmadmin
[root@RAC01~]#groupadd -g 513 asmdba
[root@RAC01~]#groupadd -g 511 asmoper
[root@RAC01~]#groupadd -g 510 dba
[root@RAC01~]#useradd -u 509 -g oinstall -G
asmadmin,asmoper,asmdba,dba grid
[root@RAC01~]#useradd -u 510 -g oinstall -G
dba,asmdba oracle
Create the desired directories and change the
ownership to user oracle and grid, here i have created two different file
systems for grid software(/oracrs) and oracle software(/orasoft)
[root@RAC01~]#mkdir -p /oracrs/app/11.2.0/grid
[root@RAC01~]#chown -R grid:oinstall /oracrs
[root@RAC01~]#chmod -R 775 /oracrs/
[root@RAC01~]#mkdir -p
/orasoft/app/oracle/product/11.2.0/dbhome
[root@RAC01~]#chown -R oracle:oinstall /orasoft
[root@RAC01~]#chmod -R 775 /orasoft/
setup the passwords for grid and oracle user.
[root@RAC01~]#passwd oracle
[root@RAC01~]#passwd grid
setup the ip addresses as mentioned above in
"/etc/hosts" and add the single IP for scan into it, if DNS is not
available. (copy the same file on other nodes)
#private Address
10.10.0.1 rac01-priv
10.5.0.1 rac01-priv
10.10.0.2 rac02-priv
10.5.0.2 rac02-priv
#public Address
192.168.0.11 rac01
192.168.0.10 rac02
#VIP Address
192.168.0.15 rac01-vip
192.168.0.16 rac02-vip
#SCAN Address
192.168.0.20 rac-scan
Install the clusterware specific package shipped
with grid binaries on all the nodes as a root user.
[root@RAC01~]#cd /tmp/grid/rpm
[root@RAC01~]#export CVUQDISK_GRP=oinstall
[root@RAC01~]#rpm -ivh cvuqdisk-1.0.7-1.rpm
Disable the SELINUX by commenting the below
parameter into "/etc/selinux/config" file
SELINUX=enforcing to SELINUX=disabled or
permissive.
Stop and disable the firewalls between nodes
(execute on both the nodes),
[root@RAC01~]#service iptables stop
[root@RAC01~]#chkconfig iptables off
The time synchronization can be done by either NTP
or CTSS, if you are not using NTP, then CTSS will synchronize the time between
nodes. so stop and remove the NTPD configuration from all the nodes,
[root@RAC01~]# service ntpd stop
Shutting down ntpd: [ OK ]
[root@RAC01~]# chkconfig ntpd off
[root@RAC01~]# mv /etc/ntp.conf /etc/ntp.conf.orig
[root@RAC01~]# rm /var/run/ntpd.pid
or if you are planning to use NTP, then you must
add the "-x" option into "/etc/sysconfig/ntpd" file and
then restart the service.
OPTIONS="-x -u ntp:ntp -p
/var/run/ntpd.pid"
[root@RAC01~]#service ntpd restart
SSH: Configure SSH for user equivalence on both the
nodes (grid as well as oracle user), during installation OUI needs to copy
files to and execute programs on the other nodes in the cluster. Configuring
SSH on both the nodes means copying and executing the program on other nodes
without prompting passwords.
Generate
RSA/DSA Keys: login as grid and oracle user one by one and generate the keys on
each node.
[grid@rac01~]$mkdir .ssh
[grid@rac01~]$chmod -R 700 .ssh
[grid@rac01~]$ssh-keygen -t rsa (press 3-times
enter, generates two files)
[grid@rac01~]$ssh-keygen -t dsa (press 3-times
enter, generate two files)
Generate authorized_keys: Generate the
authorized_keys by copying RSA and DSA public keys from all the nodes.
[grid@rac01~]$ssh rac01 cat
/home/grid/.ssh/id_rsa.pub >> authorized_keys
[grid@rac01~]$ssh rac01 cat
/home/grid/.ssh/id_dsa.pub >> authorized_keys
[grid@rac01~]$ssh rac02 cat
/home/grid/.ssh/id_rsa.pub >> authorized_keys
[grid@rac01~]$ssh rac02 cat
/home/grid/.ssh/id_dsa.pub >> authorized_keys
[grid@rac01~]$ssh rac01 cat
/home/oracle/.ssh/id_rsa.pub >> authorized_keys
[grid@rac01~]$ssh rac01 cat
/home/oracle/.ssh/id_dsa.pub >> authorized_keys
[grid@rac01~]$ssh rac02 cat
/home/oracle/.ssh/id_rsa.pub >> authorized_keys
[grid@rac01~]$ssh rac02 cat
/home/oracle/.ssh/id_dsa.pub >> authorized_keys
Copy the generated authorized_keys &
known_hosts to other nodes:
$scp authorized_keys known_hosts rac02:/home/grid/.ssh
$scp authorized_keys known_hosts rac02:/home/oracle/.ssh
Alternatively you can use the oracle provided
utility available in software location e.g.
/tmp/1120_grid/grid/sshsetup/sshUserSetup.sh or during installation using GUI prompt you for configuration. Make
sure for silent installation, the ssh configured before proceeding for
installation.
$/tmp/grid/sshsetup/sshUserSetup.sh -user grid
-hosts “rac01 rac02” -advanced -noPromptPassphrase
Adding shared storage:- The shared storage will be
either allocated from SAN or NAS, but here we are using VM, follow the steps to
create the shared storage.
shutdown the machine and goto "settings"
toolbar - select "Storage" - click on add controller button (marked
in RED) - select "Add SCSI Controller" from the list
Once the "Controller:SCSI" visible into
the "Storage Tree" select SCSI and click on add attachement (marked
in RED) and then select "create new disk"
Next window will give you the option to select the
size using slider and the location where you want to store the shared disks and
select the storage -> "Fixed Size", otherwise sharing will not be
allowed. repeat the steps to add more ASM shared disks.
Added three virtual ASM disks. follow the same
procedure to add more storage.
Goto Virtual Box Manager and select
"File" -> "Virtual Media Manager" ,
Select the ASM disk from the list which you want to
share with other nodes and click "Modify" from toolbar and check the
"Shareable" and then "OK" repeat the same for other disks
as well.
After finishing with one node, select the other
node and add the SCSI controller and also add the attachments (explained above)
and select the "Choose Existing Disk" from the selection, then browse
your above created disk and hit "OK", repeat the same for other disks
as well on all the nodes.
once done, the devices will be created and visible
into "/dev" directory as,
[root@RAC01~]# cd /dev
[root@RAC01~]# ls sd*
sda
sda1 sda2 sdb sdc
sdd sde sdf
[root@RAC01~]#
Use the "fdisk" command to partition the
disks sdb to sdf by using the below procedure,
[root@RAC01~]# fdisk /dev/sdb
Device
contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building
a new DOS disklabel. Changes will remain in memory only,
until you
decide to write them. After that, of course, the previous
content
won't be recoverable.
The
number of cylinders for this disk is set to 1305.
There is
nothing wrong with that, but this is larger than 1024,
and could
in certain setups cause problems with:
1)
software that runs at boot time (e.g., old versions of LILO)
2)
booting and partitioning software from other OSs
(e.g.,
DOS FDISK, OS/2 FDISK)
Warning:
invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
Command
(m for help): n
Command
action
e extended
p primary partition (1-4)
p
Partition
number (1-4): 1
First
cylinder (1-1305, default 1):
Using
default value 1
Last
cylinder or +size or +sizeM or +sizeK (1-1305, default 1305):
Using
default value 1305
Command
(m for help): p
Disk /dev/sdb: 10.7 GB, 10737418240 bytes
255
heads, 63 sectors/track, 1305 cylinders
Units =
cylinders of 16065 * 512 = 8225280 bytes
Device
Boot Start End Blocks
Id System
/dev/sdb1 1 1305
10482381 83 Linux
Command
(m for help): w
The
partition table has been altered!
Calling
ioctl() to re-read partition table.
Syncing
disks.
#
In each case, the sequence of answers is
"n", "p", "1", "Return",
"Return", "p" and "w".
Once all the disks are partitioned, the results
will be as.
[root@RAC01~]# cd /dev
[root@RAC01~]# ls sd*
sda sda1
sda2 sdb sdb1
sdc sdc1 sdd
sdd1 sde sde1
sdf sdf1
[root@RAC01~]#
Configure ASMLIB:- for OEL the ASMLIB will be by
default installed if not then download the appropriate ASMLIB from ULN/OL and
install the same. Note:- ASMLIB not available for RHEL6.0 and above versions.
in this case, use the UDEV. Execute the below on all the nodes.
[root@RAC01~]# 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]:
Writing Oracle ASM library driver configuration:
done
[root@RAC01~]#
Load the Kernel Modules by executing,
[root@RAC01~]# /usr/sbin/oracleasm init
Loading module "oracleasm": oracleasm
Mounting ASMlib driver filesystem: /dev/oracleasm
[root@RAC01~]#
Create the shared disks using oracleasm on one node
and scan the disks on this and other nodes,
[root@RAC01~]# oracleasm createdisk DISK1 /dev/sdb1
Writing disk header: done
Instantiating disk: done
[root@RAC01~]# oracleasm createdisk DISK2 /dev/sdc1
Writing disk header: done
Instantiating disk: done
[root@RAC01~]# oracleasm createdisk DISK3 /dev/sdd1
Writing disk header: done
Instantiating disk: done
[root@RAC01~]#oracleasm scandisks
Reloading disk partitions: done
Cleaning any stale ASM disks...
Scanning system for ASM disks...
[root@RAC01~]#
[root@RAC01~]#oracleasm listdisks --> verify
that all the disks visible from other nodes as well.
DISK1
DISK2
DISK3
[root@RAC01~]#
------------------------------------Reboot all the
machines-----------------------------------------------
Installation
of Grid Infrastructure: Make sure all the machines are up and pingable from
each other (RAC01 and RAC02). goto the software location and unzip the disk3,
change the ownership of the software to grid:oinstall
[grid@RAC01~]$ cd /tmp/grid
[grid@RAC01~]$ ./runInstaller
select "Skip software updates" if you do
not have MOS login credentials or internet connectivity. - Next
Select "Install and Configure Grid
Infrastructure for a Cluster" option, then click the "Next"
button.
Select "Typical Installation" option,
then click the "Next" button.
Enter the SCAN name and click the "Add" button.
Enter the details of the second node in the
cluster, then click the "OK" button.
Click the "SSH Connectivity...and enter the
"oracle" os user password. Click the "Setup" button to to
configure SSH connectivity between nodes, if the ssh already established then
click "Test" button to test the connectivity.
Click on "Identify network interfaces"
button and select the correct public and private and do not use if you are not
using any network subnet. and hit the "Next"
In next window, Enter the "Oracle Base"
"/oracrs/app/grid" and "/oracrs/app/11.2.0/grid" as the
software location. select the "Automatic Storage Manager" for
"cluster registry storage type" and enter the ASM password. Hit
"Next" button.
Give the diskgroup name "DATA" or
anyother (choice yours), Set the redundancy to "Normal". if the ASM
disks are not displayed, click the "Change Discovery Path" button and
enter "/dev/oracleasm/disks/*" and click the "OK" button.
Select all 3 disks and click the "Next" button.
Accept the default oraInventory location and hit
"Next" button. The next window will do the prereqs checks and display
the messages for any failures.
CVUQDISK is not installed and prereqs check failed,
install the cvuqdisk and explained above by login as root on all the nodes and
click "Check Again", If
"device Checks for ASM" failed, check the "Ignore All"
The next, window will have the summary of, and if
you are like the summary, hit the "Install" button.
The progressing window will be displayed and the
installation take few minutes..wait
During installation, prompted for the scripts to
run as root, follow the sequence while executing the root.sh and oraInstroot.sh
scripts(only first time installation). Once done on all the nodes, hit
"OK"
oraInstroot.sh
script:- Execute on both the nodes(prompt only, if you are installing first
time)
[root@RAC01~]## cd
/oracrs/app/oraInventory
[root@RAC01~]#
./orainstRoot.sh
Changing permissions
of /oracrs/app/oraInventory.
Adding read,write
permissions for group.
Removing
read,write,execute permissions for world.
Changing groupname of
/oracrs/app/oraInventory to oinstall.
The execution of the
script is complete.
[root@RAC01~]#
root.sh
execution logs on RAC01,
[root@RAC01~]#
hostname
RAC01
[root@RAC01~]# /oracrs/app/11.2.0/grid/root.sh
Performing root user
operation for Oracle 11g
The following
environment variables are set as:
ORACLE_OWNER= grid
ORACLE_HOME= /oracrs/app/11.2.0/grid
Enter the full
pathname of the local bin directory: [/usr/local/bin]:
The contents of
"dbhome" have not changed. No need to overwrite.
The contents of
"oraenv" have not changed. No need to overwrite.
The contents of
"coraenv" have not changed. No need to overwrite.
Creating /etc/oratab
file...
Entries will be added
to the /etc/oratab file as needed by
Database
Configuration Assistant when a database is created
Finished running
generic part of root script.
Now product-specific
root actions will be performed.
Using configuration
parameter file: /oracrs/app/11.2.0/grid/crs/install/crsconfig_params
Creating trace
directory
User ignored
Prerequisites during installation
OLR initialization -
successful
root wallet
root wallet cert
root cert export
peer wallet
profile reader wallet
pa wallet
peer wallet keys
pa wallet keys
peer cert request
pa cert request
peer cert
pa cert
peer root cert TP
profile reader root cert TP
pa root cert TP
peer pa cert TP
pa peer cert TP
profile reader pa cert TP
profile reader peer cert TP
peer user cert
pa user cert
Adding Clusterware
entries to inittab
CRS-2672: Attempting
to start 'ora.mdnsd' on 'rac01'
CRS-2676: Start of
'ora.mdnsd' on 'rac01' succeeded
CRS-2672: Attempting
to start 'ora.gpnpd' on 'rac01'
CRS-2676: Start of
'ora.gpnpd' on 'rac01' succeeded
CRS-2672: Attempting
to start 'ora.cssdmonitor' on 'rac01'
CRS-2672: Attempting
to start 'ora.gipcd' on 'rac01'
CRS-2676: Start of
'ora.cssdmonitor' on 'rac01' succeeded
CRS-2676: Start of
'ora.gipcd' on 'rac01' succeeded
CRS-2672: Attempting
to start 'ora.cssd' on 'rac01'
CRS-2672: Attempting
to start 'ora.diskmon' on 'rac01'
CRS-2676: Start of
'ora.diskmon' on 'rac01' succeeded
CRS-2676: Start of
'ora.cssd' on 'rac01' succeeded
ASM created and
started successfully.
Disk Group DATA
created successfully.
clscfg: -install mode
specified
Successfully
accumulated necessary OCR keys.
Creating OCR keys for
user 'root', privgrp 'root'..
Operation successful.
CRS-4256: Updating
the profile
Successful addition
of voting disk a9c76262f6634fb0bf3a8c1f5f2acc6f.
Successful addition
of voting disk 42a663207a034fd5bf6874bc1b290eec.
Successful addition
of voting disk a59592a3cf794fa0bf834920ba3ef83a.
Successfully replaced
voting disk group with +DATA.
CRS-4256: Updating
the profile
CRS-4266: Voting
file(s) successfully replaced
## STATE
File Universal Id
File Name Disk group
-- -----
-----------------
--------- ---------
1. ONLINE
a9c76262f6634fb0bf3a8c1f5f2acc6f (/dev/oracleasm/disks/DISK1) [DATA]
2. ONLINE
42a663207a034fd5bf6874bc1b290eec (/dev/oracleasm/disks/DISK2) [DATA]
3. ONLINE
a59592a3cf794fa0bf834920ba3ef83a (/dev/oracleasm/disks/DISK3) [DATA]
Located 3 voting
disk(s).
CRS-2672: Attempting
to start 'ora.asm' on 'rac01'
CRS-2676: Start of
'ora.asm' on 'rac01' succeeded
CRS-2672: Attempting
to start 'ora.DATA.dg' on 'rac01'
CRS-2676: Start of
'ora.DATA.dg' on 'rac01' succeeded
CRS-2672: Attempting
to start 'ora.registry.acfs' on 'rac01'
CRS-2676: Start of
'ora.registry.acfs' on 'rac01' succeeded
Configure Oracle Grid
Infrastructure for a Cluster ... succeeded
[root@RAC01~]#
root.sh
execution logs on RAC02.
[root@RAC02~]#
/oracrs/app/11.2.0/grid/root.sh
Performing root user
operation for Oracle 11g
The following
environment variables are set as:
ORACLE_OWNER= grid
ORACLE_HOME= /oracrs/app/11.2.0/grid
Enter the full
pathname of the local bin directory: [/usr/local/bin]:
The contents of
"dbhome" have not changed. No need to overwrite.
The contents of
"oraenv" have not changed. No need to overwrite.
The contents of
"coraenv" have not changed. No need to overwrite.
Creating /etc/oratab
file...
Entries will be added
to the /etc/oratab file as needed by
Database
Configuration Assistant when a database is created
Finished running
generic part of root script.
Now product-specific
root actions will be performed.
Using configuration
parameter file: /oracrs/app/11.2.0/grid/crs/install/crsconfig_params
Creating trace
directory
User ignored
Prerequisites during installation
OLR initialization -
successful
Adding Clusterware
entries to inittab
CRS-4402: The CSS
daemon was started in exclusive mode but found an active CSS daemon on node
rac01, number 1, and is terminating
An active cluster was
found during exclusive startup, restarting to join the cluster
Configure Oracle Grid
Infrastructure for a Cluster ... succeeded
[root@RAC02~]#
If you have any failure as mentioned below during
"oracle Cluster Verification Utility" safe to skip, because the DNS
is not configured for SCAN. "Skip" and hit "Next"
INFO: Checking Single
Client Access Name (SCAN)...
INFO: Checking name
resolution setup for "rac-scan"...
INFO: ERROR:
INFO: PRVF-4664 :
Found inconsistent name resolution entries for SCAN name "rac-scan"
INFO: ERROR:
INFO: PRVF-4657 :
Name resolution setup check for "rac-scan" (IP address: 192.168.0.20)
failed
INFO: ERROR:
INFO: PRVF-4664 :
Found inconsistent name resolution entries for SCAN name "rac-scan"
INFO: Verification of
SCAN VIP and Listener setup failed
and finally, hit the "Close". (you have
successfully installed the grid infrastructure 11gR2(11.2.0.3.0).
Finally, check the services status registered with
cluster.
[grid@RAC01 grid]$ crsctl stat res -t
--------------------------------------------------------------------------------
NAME TARGET STATE
SERVER
STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.DATA.dg
ONLINE ONLINE
rac01
ONLINE ONLINE
rac02
ora.LISTENER.lsnr
ONLINE ONLINE
rac01
ONLINE ONLINE
rac02
ora.asm
ONLINE ONLINE
rac01
Started
ONLINE ONLINE
rac02 Started
ora.gsd
OFFLINE OFFLINE rac01
OFFLINE OFFLINE rac02
ora.net1.network
ONLINE ONLINE
rac01
ONLINE ONLINE
rac02
ora.ons
ONLINE ONLINE
rac01
ONLINE ONLINE
rac02
ora.registry.acfs
ONLINE ONLINE
rac01
ONLINE ONLINE
rac02
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
1
ONLINE ONLINE rac01
ora.cvu
1
ONLINE ONLINE rac01
ora.oc4j
1
ONLINE ONLINE rac01
ora.rac01.vip
1
ONLINE ONLINE rac01
ora.rac02.vip
1
ONLINE ONLINE rac02
ora.scan1.vip
1
ONLINE ONLINE rac01
[grid@RAC01 grid]$
RAC
DATABASE INSTALLATION
We have finished the grid infrastructure
installation part and now moving to RAC RDBMS installation. Make sure all the
clustered machines are up and running. Unzip the Disk1 and Disk2 in same
directory and change the ownership of software to "oracle" user.
login as "oracle" OS user and start the
runInstaller as,
uncheck the "security updates checkbox"
as checked by default and hit "Next"
Select "Skip software updates" and hit
the "Next" button,
Select "create and configure database"
and hit "Next" button, you can also use "install database
software only" if you wish to create the database later.
select the server class as database installation
and creation. and hit "Next" button
Select the "Oracle Real Application Clusters
Database Installations" and hit
"Next" button,
If you getting the below error, after hitting
"next" do the following to fix this,
The issue is because installation of grid infrastructure inventory.xml contains
the CRS flag to false in central oraInventory. When the runInstaller invokes
for RAC RDBMS binaries installation, It will look for inventory.xml for CRS
flag and fails.
Solution:- )cat the
oraInst.loc and look for inventory location
-------------------------------------------------------
Linux:
[grid@rac01 ~]$ cat
/etc/oraInst.loc
inventory_loc=/oracrs/app/oraInventory
inst_group=oinstall
----------------------------------------------------------------------
b.) Check the
inventro.xml in your oraInventry and look for CRS=true
(donot edit gthis
file manually) if not present proceed to next step,
-----------------------------------------------------------------------
[grid@rac01
ContentsXML]$ pwd
/oracrs/app/oraInventory/ContentsXML
[grid@rac01
ContentsXML]$ ls
comps.xml inventory.xml
libs.xml
[grid@rac01
ContentsXML]$ cat inventory.xml
<?xml
version="1.0" standalone="yes" ?>
<!-- Copyright (c)
1999, 2011, Oracle. All rights reserved. -->
<!-- Do not modify
the contents of this file by hand. -->
<INVENTORY>
<VERSION_INFO>
<SAVED_WITH>11.2.0.3.0</SAVED_WITH>
<MINIMUM_VER>2.1.0.6.0</MINIMUM_VER>
</VERSION_INFO>
<HOME_LIST>
<HOME
NAME="Ora11g_gridinfrahome1" LOC="/oracrs/app/11.2.0/grid"
TYPE="O" IDX="1">
<NODE_LIST>
<NODE NAME="rac01"/>
<NODE NAME="rac02"/>
</NODE_LIST>
</HOME>
</HOME_LIST>
<COMPOSITEHOME_LIST>
</COMPOSITEHOME_LIST>
</INVENTORY>
[grid@rac01
ContentsXML]$
------------------------------------------------------------------------------------------------------------------
b.1) Do this on all
the nodes in grid infrastructure (if not automatically updated by runInstaller
on all the nodes)
------------------------------------------------------------------------------------------------------------------
$GRID_HOME/oui/bin/runInstaller
-updateNodeList ORACLE_HOME="<GIRD HOME>" CRS=true.
[grid@rac01bin]$./runInstaller
-updateNodeList ORACLE_HOME="/oracrs/app/11.2.0/grid" CRS=true
Starting Oracle
Universal Installer...
Checking swap space:
must be greater than 500 MB. Actual
34271 MB Passed
The inventory pointer
is located at /etc/oraInst.loc
The inventory is
located at /oracrs/app/oraInventory
'UpdateNodeList' was
successful.
Fixed, move to "Next" window, make sure
both the nodes select (rac01, rac02), option to setup the SSH, if not already
done as explained above. hit "Next" button.
Select "Typical Installation" and hit
"Next" button.
Option to select the correct directory for software
installation, provide the oracle base and software location. select Storage
Type "Oracle Automatic Storage Management" and provide the diskgroup
name which you want to use to store the database files. pass the Global
database name and supply the passwords. hit "Next" button once done
with this window.
The next window will do the prereqs checks and
report any prereqs not met, fix them and proceed for next and if any prereqs
are not mandatory, you can check the "Ignore All" and proceed with
"Next" button.
Now, next windows will be summary where you have
the opportunity to revalidate and if you are happy with the summary, hit
"Install" button to proceed for installation.
The next will be the progressing window and wait
here because the installation take while, enjoy and relax (coffee break)
As soon as the oracle RAC software installation
finished, the database configuration Assistant(DBCA) will invoke automatically,
When prompted, execute the root.sh script as root
user in sequence,
root.sh
script execution and output log.
once the root.sh script execution finished on all
the node, back to node1 and hit "OK" and "Next"
The last window will give you the OEM link, which
can be used to monitor and administration task as well. finally hit
"Close" to finish the RAC database installation and creation.
Database Verification:- There are multiple ways to
verify or check the database, use crsctl command as explained in part -I. you can also verify from OS using ps -ef
command, login to database or using srvctl as below,
[oracle@RAC01~]$
srvctl config database -d orcl
Database unique name:
orcl
Database name: orcl
Oracle home:
/orasoft/app/oracle/product/11.2.0/dbhome
Oracle user: oracle
Spfile:
+EXT/RAC/spfileorcl.ora
Domain: localdomain
Start options: open
Stop options:
immediate
Database role:
PRIMARY
Management policy:
AUTOMATIC
Server pools: RAC
Database instances:
orcl1,orcl2
Disk Groups: EXT
Services:
Database is
administrator managed
[oracle@RAC01~]$
[oracle@RAC01~]$
srvctl status database -d orcl
Instance RAC1 is
running on node rac01
Instance RAC2 is
running on node rac02
[oracle@RAC01~]$
You are done
with database installation and configuration. enjoy the readings and post
questions if you have any.
********************END************************


















No comments:
Post a Comment