合 一步一步在RHEL6.5+VMware Workstation 10上搭建 oracle 11gR2 rac + dg
Tags: Oracle安装部署racDG集群部署VMware WorkStation11gR2RHEL6.5
一步一步在RHEL6.5+VMware Workstation 10上搭建 oracle 11gR2 rac + dg 之grid安装 (四)
这一步也比较重要,主要是安装ASM,如果前一步的共享磁盘没有准备好的话,执行root脚本的时候可能会报错,不过不要紧的,,,一定可以解决的,,,,
Grid安装过程
下载软件,上传软件,解压软件:
[root@rac1 share]# ll
total 3398288
-rwxrwxrwx 1 root root 1358454646 Dec 14 2011 p10404530_112030_Linux-x86-64_1of7.zip
-rwxrwxrwx 1 root root 1142195302 May 25 2012 p10404530_112030_Linux-x86-64_2of7.zip
-rwxrwxrwx 1 root root 979195792 May 26 2012 p10404530_112030_Linux-x86-64_3of7.zip
[root@rac1 share]# unzip p10404530_112030_Linux-x86-64_1of7.zip -d /tmp/ && unzip p10404530_112030_Linux-x86-64_2of7.zip -d /tmp/
[root@rac1 share]# unzip p10404530_112030_Linux-x86-64_3of7.zip -d /tmp/
安装补丁包(cvuqdisk)
安装cvuqdisk包并验证,在2个节点上都需要安装该包:
在两个 Oracle RAC 节点上安装操作系统程序包 cvuqdisk。如果没有 cvuqdisk,集群验证实用程序就无法发现共享磁盘,当运行(手动运行或在 Oracle Grid Infrastructure 安装结束时自动运行)集群验证实用程序时,您会收到这样的错误消息:“Package cvuqdisk not installed”。使用适用于您的硬件体系结构(例如,x86_64 或 i386)的 cvuqdisk RPM。
cvuqdisk RPM 包含在 Oracle Grid Infrastructure 安装介质上的 rpm 目录中。
设置环境变量 CVUQDISK_GRP,使其指向作为 cvuqdisk 的所有者所在的组(本文为 oinstall):
export CVUQDISK_GRP=oinstall
使用 CVU 验证是否满足 Oracle 集群件要求
记住要作为 grid 用户在将要执行 Oracle 安装的节点 (racnode1) 上运行。此外,必须为 grid
用户配置通过用户等效性实现的 SSH 连通性。
[root@rac1 rpm]# rpm -ivh cvuqdisk-1.0.7-1.rpm
Preparing... ########################################### [100%]
Using default group oinstall to install package
1:cvuqdisk ########################################### [100%]
[root@rac1 Packages]# rpm -q cvuqdisk
cvuqdisk-1.0.7-1.x86_64
传输到第2个节点上:
[root@rac1 rpm]# scp cvuqdisk-1.0.9-1.rpm root@192.168.59.136:/tmp
cluster 硬件检测--安装前预检查配置信息
该过程有点慢。。。。。慢慢等待吧。。。。。
只需要在其中一个节点上运行即可
在安装 GRID 之前,建议先利用 CVU(Cluster Verification Utility)检查 CRS 的安装前环境。
① 使用 CVU 检查 CRS 的安装前环境
在grid软件目录里运行以下命令:
使用 CVU 验证硬件和操作系统设置
./runcluvfy.sh stage -pre crsinst -n rac1,rac2 -fixup -verbose
./runcluvfy.sh stage -pre crsinst -n rac1,rac2 -verbose
./runcluvfy.sh stage -post hwos -n rac1,rac2 -verbose
cluvfy stage -pre crsinst -n node1,node2,node3 -fixup -verbose
未检测通过的显示为failed,根据情况修复一下即可:
[grid@rac1 grid]$ ll
total 15
drwxrwxrwx 1 root root 4096 Aug 16 2009 doc
drwxrwxrwx 1 root root 4096 Aug 15 2009 install
drwxrwxrwx 1 root root 0 Aug 15 2009 response
drwxrwxrwx 1 root root 0 Aug 15 2009 rpm
-rwxrwxrwx 1 root root 3795 Jan 28 2009 runcluvfy.sh
-rwxrwxrwx 1 root root 3227 Aug 15 2009 runInstaller
drwxrwxrwx 1 root root 0 Aug 15 2009 sshsetup
drwxrwxrwx 1 root root 8192 Aug 15 2009 stage
-rwxrwxrwx 1 root root 4228 Aug 17 2009 welcome.html
[grid@rac1 grid]$ ./runcluvfy.sh stage -pre crsinst -n rac1,rac2 -verbose
Performing pre-checks for cluster services setup
Checking node reachability...
Check: Node reachability from node "rac1"
Destination Node Reachable?
------------------------------------ ------------------------
rac2 yes
rac1 yes
Result: Node reachability check passed from node "rac1"
Checking user equivalence...
Check: User equivalence for user "grid"
Node Name Comment
------------------------------------ ------------------------
rac2 passed
rac1 passed
Result: User equivalence check passed for user "grid"
Checking node connectivity...
Checking hosts config file...
Node Name Status Comment
------------ ------------------------ ------------------------
rac2 passed
rac1 passed
Verification of the hosts config file successful
Interface information for node "rac2"
Name IP Address Subnet Gateway Def. Gateway HW Address MTU
------ --------------- --------------- --------------- --------------- ----------------- ------
eth0 192.168.128.152 192.168.128.0 0.0.0.0 192.168.128.2 00:0C:29:EC:A0:64 1500
eth1 10.10.10.152 10.0.0.0 0.0.0.0 192.168.128.2 00:0C:29:EC:A0:6E 1500
Interface information for node "rac1"
Name IP Address Subnet Gateway Def. Gateway HW Address MTU
------ --------------- --------------- --------------- --------------- ----------------- ------
eth0 192.168.128.151 192.168.128.0 0.0.0.0 192.168.128.2 00:0C:29:2F:A8:C3 1500
eth1 10.10.10.151 10.0.0.0 0.0.0.0 192.168.128.2 00:0C:29:2F:A8:CD 1500
Check: Node connectivity of subnet "192.168.128.0"
Source Destination Connected?
------------------------------ ------------------------------ ----------------
rac2:eth0 rac1:eth0 yes
Result: Node connectivity passed for subnet "192.168.128.0" with node(s) rac2,rac1
Check: TCP connectivity of subnet "192.168.128.0"
Source Destination Connected?
------------------------------ ------------------------------ ----------------
rac1:192.168.128.151 rac2:192.168.128.152 passed
Result: TCP connectivity check passed for subnet "192.168.128.0"
Check: Node connectivity of subnet "10.0.0.0"
Source Destination Connected?
------------------------------ ------------------------------ ----------------
rac2:eth1 rac1:eth1 yes
Result: Node connectivity passed for subnet "10.0.0.0" with node(s) rac2,rac1
Check: TCP connectivity of subnet "10.0.0.0"
Source Destination Connected?
------------------------------ ------------------------------ ----------------
rac1:10.10.10.151 rac2:10.10.10.152 passed
Result: TCP connectivity check passed for subnet "10.0.0.0"
Interfaces found on subnet "192.168.128.0" that are likely candidates for VIP are:
rac2 eth0:192.168.128.152
rac1 eth0:192.168.128.151
Interfaces found on subnet "10.0.0.0" that are likely candidates for a private interconnect are:
rac2 eth1:10.10.10.152
rac1 eth1:10.10.10.151
Result: Node connectivity check passed
Check: Total memory
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 999.85MB (1023844.0KB) 1.5GB (1572864.0KB) failed
rac1 999.85MB (1023844.0KB) 1.5GB (1572864.0KB) failed
Result: Total memory check failed
Check: Available memory
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 878.98MB (900076.0KB) 50MB (51200.0KB) passed
rac1 717.45MB (734672.0KB) 50MB (51200.0KB) passed
Result: Available memory check passed
Check: Swap space
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
Result: Swap space check failed
Check: Free disk space for "rac2:/tmp"
Path Node Name Mount point Available Required Comment
---------------- ------------ ------------ ------------ ------------ ------------
/tmp rac2 / 14.5GB 1GB passed
Result: Free disk space check passed for "rac2:/tmp"
Check: Free disk space for "rac1:/tmp"
Path Node Name Mount point Available Required Comment
---------------- ------------ ------------ ------------ ------------ ------------
/tmp rac1 / 14.06GB 1GB passed
Result: Free disk space check passed for "rac1:/tmp"
Check: User existence for "grid"
Node Name Status Comment
------------ ------------------------ ------------------------
rac2 exists passed
rac1 exists passed
Result: User existence check passed for "grid"
Check: Group existence for "oinstall"
Node Name Status Comment
------------ ------------------------ ------------------------
rac2 exists passed
rac1 exists passed
Result: Group existence check passed for "oinstall"
Check: Group existence for "dba"
Node Name Status Comment
------------ ------------------------ ------------------------
rac2 exists passed
rac1 exists passed
Result: Group existence check passed for "dba"
Check: Membership of user "grid" in group "oinstall" [as Primary]
Node Name User Exists Group Exists User in Group Primary Comment
---------------- ------------ ------------ ------------ ------------ ------------
rac2 yes yes yes yes passed
rac1 yes yes yes yes passed
Result: Membership check for user "grid" in group "oinstall" [as Primary] passed
Check: Membership of user "grid" in group "dba"
Node Name User Exists Group Exists User in Group Comment
---------------- ------------ ------------ ------------ ----------------
rac2 yes yes yes passed
rac1 yes yes yes passed
Result: Membership check for user "grid" in group "dba" passed
Check: Run level
Node Name run level Required Comment
------------ ------------------------ ------------------------ ----------
rac2 5 3,5 passed
rac1 5 3,5 passed
Result: Run level check passed
Check: Hard limits for "maximum open file descriptors"
Node Name Type Available Required Comment
---------------- ------------ ------------ ------------ ----------------
rac2 hard 65536 65536 passed
rac1 hard 65536 65536 passed
Result: Hard limits check passed for "maximum open file descriptors"
Check: Soft limits for "maximum open file descriptors"
Node Name Type Available Required Comment
---------------- ------------ ------------ ------------ ----------------
rac2 soft 1024 1024 passed
rac1 soft 1024 1024 passed
Result: Soft limits check passed for "maximum open file descriptors"
Check: Hard limits for "maximum user processes"
Node Name Type Available Required Comment
---------------- ------------ ------------ ------------ ----------------
rac2 hard 16384 16384 passed
rac1 hard 16384 16384 passed
Result: Hard limits check passed for "maximum user processes"
Check: Soft limits for "maximum user processes"
Node Name Type Available Required Comment
---------------- ------------ ------------ ------------ ----------------
rac2 soft 2047 2047 passed
rac1 soft 2047 2047 passed
Result: Soft limits check passed for "maximum user processes"
Check: System architecture
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 x86_64 x86_64 passed
rac1 x86_64 x86_64 passed
Result: System architecture check passed
Check: Kernel version
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 2.6.18-348.el5 2.6.18 passed
rac1 2.6.18-348.el5 2.6.18 passed
Result: Kernel version check passed
Check: Kernel parameter for "semmsl"
Node Name Configured Required Comment
------------ ------------------------ ------------------------ ----------
rac2 250 250 passed
rac1 250 250 passed
Result: Kernel parameter check passed for "semmsl"
Check: Kernel parameter for "semmns"
Node Name Configured Required Comment
------------ ------------------------ ------------------------ ----------
rac2 32000 32000 passed
rac1 32000 32000 passed
Result: Kernel parameter check passed for "semmns"
Check: Kernel parameter for "semopm"
Node Name Configured Required Comment
------------ ------------------------ ------------------------ ----------
rac2 100 100 passed
rac1 100 100 passed
Result: Kernel parameter check passed for "semopm"
Check: Kernel parameter for "semmni"
Node Name Configured Required Comment
------------ ------------------------ ------------------------ ----------
rac2 128 128 passed
rac1 128 128 passed
Result: Kernel parameter check passed for "semmni"
Check: Kernel parameter for "shmmax"
Node Name Configured Required Comment
------------ ------------------------ ------------------------ ----------
rac2 68719476736 536870912 passed
rac1 68719476736 536870912 passed
Result: Kernel parameter check passed for "shmmax"
Check: Kernel parameter for "shmmni"
Node Name Configured Required Comment
------------ ------------------------ ------------------------ ----------
rac2 4096 4096 passed
rac1 4096 4096 passed
Result: Kernel parameter check passed for "shmmni"
Check: Kernel parameter for "shmall"
Node Name Configured Required Comment
------------ ------------------------ ------------------------ ----------
rac2 2147483648 2097152 passed
rac1 2147483648 2097152 passed
Result: Kernel parameter check passed for "shmall"
Check: Kernel parameter for "file-max"
Node Name Configured Required Comment
------------ ------------------------ ------------------------ ----------
rac2 6815744 6815744 passed
rac1 6815744 6815744 passed
Result: Kernel parameter check passed for "file-max"
Check: Kernel parameter for "ip_local_port_range"
Node Name Configured Required Comment
------------ ------------------------ ------------------------ ----------
rac2 between 9000 & 65500 between 9000 & 65500 passed
rac1 between 9000 & 65500 between 9000 & 65500 passed
Result: Kernel parameter check passed for "ip_local_port_range"
Check: Kernel parameter for "rmem_default"
Node Name Configured Required Comment
------------ ------------------------ ------------------------ ----------
rac2 262144 262144 passed
rac1 262144 262144 passed
Result: Kernel parameter check passed for "rmem_default"
Check: Kernel parameter for "rmem_max"
Node Name Configured Required Comment
------------ ------------------------ ------------------------ ----------
rac2 4194304 4194304 passed
rac1 4194304 4194304 passed
Result: Kernel parameter check passed for "rmem_max"
Check: Kernel parameter for "wmem_default"
Node Name Configured Required Comment
------------ ------------------------ ------------------------ ----------
rac2 262144 262144 passed
rac1 262144 262144 passed
Result: Kernel parameter check passed for "wmem_default"
Check: Kernel parameter for "wmem_max"
Node Name Configured Required Comment
------------ ------------------------ ------------------------ ----------
rac2 1048586 1048576 passed
rac1 1048586 1048576 passed
Result: Kernel parameter check passed for "wmem_max"
Check: Kernel parameter for "aio-max-nr"
Node Name Configured Required Comment
------------ ------------------------ ------------------------ ----------
rac2 1048576 1048576 passed
rac1 1048576 1048576 passed
Result: Kernel parameter check passed for "aio-max-nr"
Check: Package existence for "make-3.81"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 make-3.81-3.el5 make-3.81 passed
rac1 make-3.81-3.el5 make-3.81 passed
Result: Package existence check passed for "make-3.81"
Check: Package existence for "binutils-2.17.50.0.6"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 binutils-2.17.50.0.6-20.el5_8.3 binutils-2.17.50.0.6 passed
rac1 binutils-2.17.50.0.6-20.el5_8.3 binutils-2.17.50.0.6 passed
Result: Package existence check passed for "binutils-2.17.50.0.6"
Check: Package existence for "gcc-4.1"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 gcc-4.1.2-54.el5 gcc-4.1 passed
rac1 gcc-4.1.2-54.el5 gcc-4.1 passed
Result: Package existence check passed for "gcc-4.1"
Check: Package existence for "libaio-0.3.106 (i386)"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 libaio-0.3.106-5 (i386) libaio-0.3.106 (i386) passed
rac1 libaio-0.3.106-5 (i386) libaio-0.3.106 (i386) passed
Result: Package existence check passed for "libaio-0.3.106 (i386)"
Check: Package existence for "libaio-0.3.106 (x86_64)"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 libaio-0.3.106-5 (x86_64) libaio-0.3.106 (x86_64) passed
rac1 libaio-0.3.106-5 (x86_64) libaio-0.3.106 (x86_64) passed
Result: Package existence check passed for "libaio-0.3.106 (x86_64)"
Check: Package existence for "glibc-2.5-24 (i686)"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 glibc-2.5-107 (i686) glibc-2.5-24 (i686) passed
rac1 glibc-2.5-107 (i686) glibc-2.5-24 (i686) passed
Result: Package existence check passed for "glibc-2.5-24 (i686)"
Check: Package existence for "glibc-2.5-24 (x86_64)"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 glibc-2.5-107 (x86_64) glibc-2.5-24 (x86_64) passed
rac1 glibc-2.5-107 (x86_64) glibc-2.5-24 (x86_64) passed
Result: Package existence check passed for "glibc-2.5-24 (x86_64)"
Check: Package existence for "compat-libstdc++-33-3.2.3 (i386)"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 missing compat-libstdc++-33-3.2.3 (i386) failed
rac1 missing compat-libstdc++-33-3.2.3 (i386) failed
Result: Package existence check failed for "compat-libstdc++-33-3.2.3 (i386)"
Check: Package existence for "compat-libstdc++-33-3.2.3 (x86_64)"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 compat-libstdc++-33-3.2.3-61 (x86_64) compat-libstdc++-33-3.2.3 (x86_64) passed
rac1 compat-libstdc++-33-3.2.3-61 (x86_64) compat-libstdc++-33-3.2.3 (x86_64) passed
Result: Package existence check passed for "compat-libstdc++-33-3.2.3 (x86_64)"
Check: Package existence for "elfutils-libelf-0.125 (x86_64)"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 elfutils-libelf-0.137-3.el5 (x86_64) elfutils-libelf-0.125 (x86_64) passed
rac1 elfutils-libelf-0.137-3.el5 (x86_64) elfutils-libelf-0.125 (x86_64) passed
Result: Package existence check passed for "elfutils-libelf-0.125 (x86_64)"
Check: Package existence for "elfutils-libelf-devel-0.125"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 elfutils-libelf-devel-0.137-3.el5 elfutils-libelf-devel-0.125 passed
rac1 elfutils-libelf-devel-0.137-3.el5 elfutils-libelf-devel-0.125 passed
WARNING:
PRVF-7584 : Multiple versions of package "elfutils-libelf-devel" found on node rac2: elfutils-libelf-devel-0.137-3.el5 (i386),elfutils-libelf-devel-0.137-3.el5 (x86_64)
WARNING:
PRVF-7584 : Multiple versions of package "elfutils-libelf-devel" found on node rac1: elfutils-libelf-devel-0.137-3.el5 (i386),elfutils-libelf-devel-0.137-3.el5 (x86_64)
Result: Package existence check passed for "elfutils-libelf-devel-0.125"
Check: Package existence for "glibc-common-2.5"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 glibc-common-2.5-107 glibc-common-2.5 passed
rac1 glibc-common-2.5-107 glibc-common-2.5 passed
Result: Package existence check passed for "glibc-common-2.5"
Check: Package existence for "glibc-devel-2.5 (i386)"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 missing glibc-devel-2.5 (i386) failed
rac1 missing glibc-devel-2.5 (i386) failed
Result: Package existence check failed for "glibc-devel-2.5 (i386)"
Check: Package existence for "glibc-devel-2.5 (x86_64)"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 glibc-devel-2.5-107 (x86_64) glibc-devel-2.5 (x86_64) passed
rac1 glibc-devel-2.5-107 (x86_64) glibc-devel-2.5 (x86_64) passed
Result: Package existence check passed for "glibc-devel-2.5 (x86_64)"
Check: Package existence for "glibc-headers-2.5"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 glibc-headers-2.5-107 glibc-headers-2.5 passed
rac1 glibc-headers-2.5-107 glibc-headers-2.5 passed
Result: Package existence check passed for "glibc-headers-2.5"
Check: Package existence for "gcc-c++-4.1.2"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 gcc-c++-4.1.2-54.el5 gcc-c++-4.1.2 passed
rac1 gcc-c++-4.1.2-54.el5 gcc-c++-4.1.2 passed
Result: Package existence check passed for "gcc-c++-4.1.2"
Check: Package existence for "libaio-devel-0.3.106 (i386)"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 missing libaio-devel-0.3.106 (i386) failed
rac1 missing libaio-devel-0.3.106 (i386) failed
Result: Package existence check failed for "libaio-devel-0.3.106 (i386)"
Check: Package existence for "libaio-devel-0.3.106 (x86_64)"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 libaio-devel-0.3.106-5 (x86_64) libaio-devel-0.3.106 (x86_64) passed
rac1 libaio-devel-0.3.106-5 (x86_64) libaio-devel-0.3.106 (x86_64) passed
Result: Package existence check passed for "libaio-devel-0.3.106 (x86_64)"
Check: Package existence for "libgcc-4.1.2 (i386)"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 libgcc-4.1.2-54.el5 (i386) libgcc-4.1.2 (i386) passed
rac1 libgcc-4.1.2-54.el5 (i386) libgcc-4.1.2 (i386) passed
Result: Package existence check passed for "libgcc-4.1.2 (i386)"
Check: Package existence for "libgcc-4.1.2 (x86_64)"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 libgcc-4.1.2-54.el5 (x86_64) libgcc-4.1.2 (x86_64) passed
rac1 libgcc-4.1.2-54.el5 (x86_64) libgcc-4.1.2 (x86_64) passed
Result: Package existence check passed for "libgcc-4.1.2 (x86_64)"
Check: Package existence for "libstdc++-4.1.2 (i386)"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 libstdc++-4.1.2-54.el5 (i386) libstdc++-4.1.2 (i386) passed
rac1 libstdc++-4.1.2-54.el5 (i386) libstdc++-4.1.2 (i386) passed
Result: Package existence check passed for "libstdc++-4.1.2 (i386)"
Check: Package existence for "libstdc++-4.1.2 (x86_64)"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 libstdc++-4.1.2-54.el5 (x86_64) libstdc++-4.1.2 (x86_64) passed
rac1 libstdc++-4.1.2-54.el5 (x86_64) libstdc++-4.1.2 (x86_64) passed
Result: Package existence check passed for "libstdc++-4.1.2 (x86_64)"
Check: Package existence for "libstdc++-devel-4.1.2 (x86_64)"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 libstdc++-devel-4.1.2-54.el5 (x86_64) libstdc++-devel-4.1.2 (x86_64) passed
rac1 libstdc++-devel-4.1.2-54.el5 (x86_64) libstdc++-devel-4.1.2 (x86_64) passed
Result: Package existence check passed for "libstdc++-devel-4.1.2 (x86_64)"
Check: Package existence for "sysstat-7.0.2"
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 sysstat-7.0.2-12.el5 sysstat-7.0.2 passed
rac1 sysstat-7.0.2-12.el5 sysstat-7.0.2 passed
Result: Package existence check passed for "sysstat-7.0.2"