原创作品,出自 “深蓝的blog” 博客,欢迎转载,转载时请务必注明下面出处,否则追究版权法律责任。
深蓝的blog:
1、报错
[grid@node1 grid]$ ./runcluvfy.sh stage -pre crsinst -n node1,node2 -fixup -verbose
Performing pre-checks for cluster services setup
Checking node reachability...
Check: Node reachability from node "node1"
Destination Node Reachable?
------------------------------------ ------------------------
node1 yes
node2 yes
Result: Node reachability check passed from node "node1"
Checking user equivalence...
Check: User equivalence for user "grid"
Node Name Comment
------------------------------------ ------------------------
node2 failed
node1 failed
Result: PRVF-4007 : User equivalence check failed for user "grid"
ERROR:
User equivalence unavailable on all the specified nodes
Verification cannot proceed
Pre-check for cluster services setup was unsuccessful on all the nodes.
--注意到“Verification cannot proceed”信息。突然想到grid信任关系没有进行配置,于是下面開始配置grid两节点的信任关系
2、解决
=====Grid 用户==========================
在grid用户下操作:
[root@node1 /]# su – grid
[grid@node1 ~]$ mkdir .ssh 创建一个.ssh的隐藏文件夹
[grid@node1 ~]$ ls -al
1)生成密钥对(rsa+dsa)(node1、node2)
node1生成密钥rsa类型
id_rsa为私钥,自己主动保存到.ssh下
id_rsa.pub为公钥,自己主动保存到.ssh下
[grid@node1 ~]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/oracle/.ssh/id_rsa): enter
Enter passphrase (empty for no passphrase): enter
Enter same passphrase again: enter
Your identification has been saved in /home/oracle/.ssh/id_rsa.
Your public key has been saved in /home/oracle/.ssh/id_rsa.pub.
The key fingerprint is:
64:a6:4a:77:db:33:a4:aa:6e:ca:8f:5f:2f:77:0f:40 oracle@node1
node1生成密钥dsa类型
id_dsa为私钥,自己主动保存到.ssh下
id_dsa.pub为公钥,自己主动保存到.ssh下
[grid@node1 ~]$ ssh-keygen -t dsa
Generating public/private dsa key pair.
Enter file in which to save the key (/home/oracle/.ssh/id_dsa): enter
Enter passphrase (empty for no passphrase):enter
Enter same passphrase again:enter
Your identification has been saved in /home/oracle/.ssh/id_dsa.
Your public key has been saved in /home/oracle/.ssh/id_dsa.pub.
The key fingerprint is:
7c:41:b5:0f:81:06:ad:30:07:4f:8b:1a:9b:94:68:14 oracle@node1
node2生成密钥rsa类型
id_rsa为私钥。自己主动保存到.ssh下
id_rsa.pub为公钥,自己主动保存到.ssh下
[root@node2 ~]# su – grid
[grid@node2 ~]$ mkdir .ssh
[grid@node2 ~]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/oracle/.ssh/id_rsa): enter
Enter passphrase (empty for no passphrase): enter
Enter same passphrase again: enter
Your identification has been saved in /home/oracle/.ssh/id_rsa.
Your public key has been saved in /home/oracle/.ssh/id_rsa.pub.
The key fingerprint is:
64:a6:4a:77:db:33:a4:aa:6e:ca:8f:5f:2f:77:0f:40 oracle@node1
node2生成密钥dsa类型
id_dsa为私钥,自己主动保存到.ssh下
id_dsa.pub为公钥,自己主动保存到.ssh下
[grid@node2 ~]$ ssh-keygen -t dsa
Generating public/private dsa key pair.
Enter file in which to save the key (/home/oracle/.ssh/id_dsa): enter
Enter passphrase (empty for no passphrase):enter
Enter same passphrase again:enter
Your identification has been saved in /home/oracle/.ssh/id_dsa.
Your public key has been saved in /home/oracle/.ssh/id_dsa.pub.
The key fingerprint is:
7c:41:b5:0f:81:06:ad:30:07:4f:8b:1a:9b:94:68:14 oracle@node1
2)配置信任关系(node1、node2)
为node1配置信任
[grid@node1 ~]$ ls .ssh
id_dsa id_rsa id_dsa.pub id_rsa.pub known_hosts
rsa和dsa为私钥 .pub的为公钥
[grid@node1 ~]$ cat .ssh/id_rsa.pub >>.ssh/authorized_keys
[grid@node1 ~]$ cat .ssh/id_dsa.pub >>.ssh/authorized_keys
[grid@node1 ~]$ ssh node2 cat .ssh/id_rsa.pub >>.ssh/authorized_keys
The authenticity of host 'node2 (10.53.105.21)' can't be established.
RSA key fingerprint is 61:af:d7:cc:72:eb:84:2e:71:88:9a:38:ac:08:5c:98.
Are you sure you want to continue connecting (yes/no)?yes
Warning: Permanently added 'node2,10.53.105.21' (RSA) to the list of known hosts.
grid@node2's password:
[grid@node1 ~]$ ssh node2 cat .ssh/id_dsa.pub >>.ssh/authorized_keys
grid@node2's password: grid的密码
为node2配置信任
能够把node1中的authorized_keys(密钥文件)拷贝到node2中
[grid@node1 ~]$ scp .ssh/authorized_keys node2:~/.ssh
grid@node2's password: grid的密码
authorized_keys 100% 1992 2.0KB/s 00:00
3)验证信任关系(node1、node2)
node1上验证信任
[grid@node1 ~]$ ssh node2 date
[grid@node1 ~]$ ssh node2-priv date
[grid@node1 ~]$ ssh node1 date
[grid@node1 ~]$ ssh node1-priv date
具体操作例如以下:
[grid@node1 ~]$ ssh node2 date
Thu May 2 14:46:30 CST 2013
[grid@node1 ~]$ ssh node2-priv date //不要输入password为信任成功
The authenticity of host 'node2-priv (10.10.10.2)' can't be established.
RSA key fingerprint is 16:28:88:50:27:30:92:cb:49:be:55:61:f6:c2:a1:3f.
Are you sure you want to continue connecting (yes/no)?yes
Warning: Permanently added 'node2-priv,10.10.10.2' (RSA) to the list of known hosts.
Thu May 2 14:47:03 CST 2013
[grid@node1 ~]$ ssh node2-priv date
Thu May 2 14:47:05 CST 2013
[grid@node1 ~]$ ssh node1 date
Thu May 2 14:48:19 CST 2013
[grid@node1 ~]$ ssh node1-priv date
The authenticity of host 'node1-priv (10.10.10.1)' can't be established.
RSA key fingerprint is 39:04:88:3b:54:34:3c:34:d2:df:74:37:fe:5f:92:2d.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'node1-priv,10.10.10.1' (RSA) to the list of known hosts.
Thu May 2 14:48:35 CST 2013
[grid@node1 ~]$ ssh node1-priv date
Thu May 2 14:48:36 CST 2013
node2上验证信任
[grid@node2 ~]$ ssh node1 date
[grid@node2 ~]$ ssh node1-priv date
[grid@node2 ~]$ ssh node2 date
[grid@node2 ~]$ ssh node2-priv date
又一次运行校验程序。例如以下正常运行:
[grid@node1 grid]$ ./runcluvfy.sh stage -pre crsinst -n node1,node2 -fixup -verbose
[LOCAL] : SEND[0]: window-change (rows: 36, cols: 80)Performing pre-checks for cluster services setup Checking node reachability...Check: Node reachability from node "node1" Destination Node Reachable?
------------------------------------ ------------------------ node1 yes node2 yes Result: Node reachability check passed from node "node1" Checking user equivalence... Check: User equivalence for user "grid" Node Name Comment ------------------------------------ ------------------------ node2 passed node1 passed Result: User equivalence check passed for user "grid" Checking node connectivity... Checking hosts config file... Node Name Status Comment ------------ ------------------------ ------------------------ node2 passed node1 passed Verification of the hosts config file successful Interface information for node "node2" Name IP Address Subnet Gateway Def. Gateway HW Address MTU ------ --------------- --------------- --------------- --------------- ----------------- ------ eth1 10.53.105.23 10.53.105.0 0.0.0.0 UNKNOWN 08:00:27:11:DC:E2 1500 virbr0 192.168.122.1 192.168.122.0 0.0.0.0 UNKNOWN 00:00:00:00:00:00 1500 eth0 10.53.105.21 10.53.105.0 0.0.0.0 UNKNOWN 08:00:27:A7:8C:9C 1500 Interface information for node "node1" Name IP Address Subnet Gateway Def. Gateway HW Address MTU ------ --------------- --------------- --------------- --------------- ----------------- ------ eth1 10.53.105.22 10.53.105.0 0.0.0.0 UNKNOWN 08:00:27:56:8C:96 1500 virbr0 192.168.122.1 192.168.122.0 0.0.0.0 UNKNOWN 00:00:00:00:00:00 1500 eth0 10.53.105.20 10.53.105.0 0.0.0.0 UNKNOWN 08:00:27:C5:00:E5 1500 Check: Node connectivity of subnet "10.53.105.0" Source Destination Connected?
------------------------------ ------------------------------ ---------------- node2:eth1 node2:eth0 yes node2:eth1 node1:eth1 yes node2:eth1 node1:eth0 yes node2:eth0 node1:eth1 yes node2:eth0 node1:eth0 yes node1:eth1 node1:eth0 yes Result: Node connectivity passed for subnet "10.53.105.0" with node(s) node2,node1 Check: TCP connectivity of subnet "10.53.105.0" Source Destination Connected?
------------------------------ ------------------------------ ---------------- node1:10.53.105.22 node2:10.53.105.23 passed node1:10.53.105.22 node2:10.53.105.21 passed node1:10.53.105.22 node1:10.53.105.20 passed Result: TCP connectivity check passed for subnet "10.53.105.0" Check: Node connectivity of subnet "192.168.122.0" Source Destination Connected?
------------------------------ ------------------------------ ---------------- node2:virbr0 node1:virbr0 yes Result: Node connectivity passed for subnet "192.168.122.0" with node(s) node2,node1 Check: TCP connectivity of subnet "192.168.122.0" Result: TCP connectivity check failed for subnet "192.168.122.0" Interfaces found on subnet "10.53.105.0" that are likely candidates for a private interconnect are: node2 eth1:10.53.105.23 node1 eth1:10.53.105.22 Interfaces found on subnet "10.53.105.0" that are likely candidates for a private interconnect are: node2 eth0:10.53.105.21 node1 eth0:10.53.105.20 Interfaces found on subnet "192.168.122.0" that are likely candidates for a private interconnect are: node2 virbr0:192.168.122.1 node1 virbr0:192.168.122.1 WARNING: Could not find a suitable set of interfaces for VIPs Result: Node connectivity check passed Check: Total memory Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 1.7GB (1785856.0KB) 1.5GB (1572864.0KB) passed node1 1.7GB (1785856.0KB) 1.5GB (1572864.0KB) passed Result: Total memory check passed Check: Available memory Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 1.34GB (1407240.0KB) 50MB (51200.0KB) passed node1 1.39GB (1457380.0KB) 50MB (51200.0KB) passed Result: Available memory check passed Check: Swap space Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 4GB (4192956.0KB) 2.55GB (2678784.0KB) passed node1 4GB (4192956.0KB) 2.55GB (2678784.0KB) passed Result: Swap space check passed Check: Free disk space for "node2:/tmp" Path Node Name Mount point Available Required Comment ---------------- ------------ ------------ ------------ ------------ ------------ /tmp node2 / 29.19GB 1GB passed Result: Free disk space check passed for "node2:/tmp" Check: Free disk space for "node1:/tmp" Path Node Name Mount point Available Required Comment ---------------- ------------ ------------ ------------ ------------ ------------ /tmp node1 / 25.47GB 1GB passed Result: Free disk space check passed for "node1:/tmp" Check: User existence for "grid" Node Name Status Comment ------------ ------------------------ ------------------------ node2 exists passed node1 exists passed Result: User existence check passed for "grid" Check: Group existence for "oinstall" Node Name Status Comment ------------ ------------------------ ------------------------ node2 exists passed node1 exists passed Result: Group existence check passed for "oinstall" Check: Group existence for "dba" Node Name Status Comment ------------ ------------------------ ------------------------ node2 exists passed node1 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 ---------------- ------------ ------------ ------------ ------------ ------------ node2 yes yes yes yes passed node1 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 ---------------- ------------ ------------ ------------ ---------------- node2 yes yes yes passed node1 yes yes yes passed Result: Membership check for user "grid" in group "dba" passed Check: Run level Node Name run level Required Comment ------------ ------------------------ ------------------------ ---------- node2 5 3,5 passed node1 5 3,5 passed Result: Run level check passed Check: Hard limits for "maximum open file descriptors" Node Name Type Available Required Comment ---------------- ------------ ------------ ------------ ---------------- node2 hard 65536 65536 passed node1 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 ---------------- ------------ ------------ ------------ ---------------- node2 soft 1024 1024 passed node1 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 ---------------- ------------ ------------ ------------ ---------------- node2 hard 16384 16384 passed node1 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 ---------------- ------------ ------------ ------------ ---------------- node2 soft 2047 2047 passed node1 soft 2047 2047 passed Result: Soft limits check passed for "maximum user processes" Check: System architecture Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 x86_64 x86_64 passed node1 x86_64 x86_64 passed Result: System architecture check passed Check: Kernel version Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 2.6.18-238.el5xen 2.6.9 passed node1 2.6.18-238.el5xen 2.6.9 passed Result: Kernel version check passed Check: Kernel parameter for "semmsl" Node Name Configured Required Comment ------------ ------------------------ ------------------------ ---------- node2 250 250 passed node1 250 250 passed Result: Kernel parameter check passed for "semmsl" Check: Kernel parameter for "semmns" Node Name Configured Required Comment ------------ ------------------------ ------------------------ ---------- node2 32000 32000 passed node1 32000 32000 passed Result: Kernel parameter check passed for "semmns" Check: Kernel parameter for "semopm" Node Name Configured Required Comment ------------ ------------------------ ------------------------ ---------- node2 100 100 passed node1 100 100 passed Result: Kernel parameter check passed for "semopm" Check: Kernel parameter for "semmni" Node Name Configured Required Comment ------------ ------------------------ ------------------------ ---------- node2 128 128 passed node1 128 128 passed Result: Kernel parameter check passed for "semmni" Check: Kernel parameter for "shmmax" Node Name Configured Required Comment ------------ ------------------------ ------------------------ ---------- node2 68719476736 536870912 passed node1 68719476736 536870912 passed Result: Kernel parameter check passed for "shmmax" Check: Kernel parameter for "shmmni" Node Name Configured Required Comment ------------ ------------------------ ------------------------ ---------- node2 4096 4096 passed node1 4096 4096 passed Result: Kernel parameter check passed for "shmmni" Check: Kernel parameter for "shmall" Node Name Configured Required Comment ------------ ------------------------ ------------------------ ---------- node2 4294967296 2097152 passed node1 4294967296 2097152 passed Result: Kernel parameter check passed for "shmall" Check: Kernel parameter for "file-max" Node Name Configured Required Comment ------------ ------------------------ ------------------------ ---------- node2 6815744 6815744 passed node1 6815744 6815744 passed Result: Kernel parameter check passed for "file-max" Check: Kernel parameter for "ip_local_port_range" Node Name Configured Required Comment ------------ ------------------------ ------------------------ ---------- node2 between 9000 & 65500 between 9000 & 65500 passed node1 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 ------------ ------------------------ ------------------------ ---------- node2 262144 262144 passed node1 262144 262144 passed Result: Kernel parameter check passed for "rmem_default" Check: Kernel parameter for "rmem_max" Node Name Configured Required Comment ------------ ------------------------ ------------------------ ---------- node2 4194304 4194304 passed node1 4194304 4194304 passed Result: Kernel parameter check passed for "rmem_max" Check: Kernel parameter for "wmem_default" Node Name Configured Required Comment ------------ ------------------------ ------------------------ ---------- node2 262144 262144 passed node1 262144 262144 passed Result: Kernel parameter check passed for "wmem_default" Check: Kernel parameter for "wmem_max" Node Name Configured Required Comment ------------ ------------------------ ------------------------ ---------- node2 1048586 1048576 passed node1 1048586 1048576 passed Result: Kernel parameter check passed for "wmem_max" Check: Kernel parameter for "aio-max-nr" Node Name Configured Required Comment ------------ ------------------------ ------------------------ ---------- node2 1048576 1048576 passed node1 1048576 1048576 passed Result: Kernel parameter check passed for "aio-max-nr" Check: Package existence for "make-3.80" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 make-3.81-3.el5 make-3.80 passed node1 make-3.81-3.el5 make-3.80 passed Result: Package existence check passed for "make-3.80" Check: Package existence for "binutils-2.15.92.0.2" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 binutils-2.17.50.0.6-14.el5 binutils-2.15.92.0.2 passed node1 binutils-2.17.50.0.6-14.el5 binutils-2.15.92.0.2 passed Result: Package existence check passed for "binutils-2.15.92.0.2" Check: Package existence for "gcc-3.4.6" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 gcc-4.1.2-50.el5 gcc-3.4.6 passed node1 gcc-4.1.2-50.el5 gcc-3.4.6 passed Result: Package existence check passed for "gcc-3.4.6" Check: Package existence for "libaio-0.3.105 (i386)" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 libaio-0.3.106-5 (i386) libaio-0.3.105 (i386) passed node1 libaio-0.3.106-5 (i386) libaio-0.3.105 (i386) passed Result: Package existence check passed for "libaio-0.3.105 (i386)" Check: Package existence for "libaio-0.3.105 (x86_64)" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 libaio-0.3.106-5 (x86_64) libaio-0.3.105 (x86_64) passed node1 libaio-0.3.106-5 (x86_64) libaio-0.3.105 (x86_64) passed Result: Package existence check passed for "libaio-0.3.105 (x86_64)" Check: Package existence for "glibc-2.3.4-2.41 (i686)" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 glibc-2.5-58 (i686) glibc-2.3.4-2.41 (i686) passed node1 glibc-2.5-58 (i686) glibc-2.3.4-2.41 (i686) passed Result: Package existence check passed for "glibc-2.3.4-2.41 (i686)" Check: Package existence for "glibc-2.3.4-2.41 (x86_64)" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 glibc-2.5-58 (x86_64) glibc-2.3.4-2.41 (x86_64) passed node1 glibc-2.5-58 (x86_64) glibc-2.3.4-2.41 (x86_64) passed Result: Package existence check passed for "glibc-2.3.4-2.41 (x86_64)" Check: Package existence for "compat-libstdc++-33-3.2.3 (i386)" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 compat-libstdc++-33-3.2.3-61 (i386) compat-libstdc++-33-3.2.3 (i386) passed node1 compat-libstdc++-33-3.2.3-61 (i386) compat-libstdc++-33-3.2.3 (i386) passed Result: Package existence check passed 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 ------------ ------------------------ ------------------------ ---------- node2 compat-libstdc++-33-3.2.3-61 (x86_64) compat-libstdc++-33-3.2.3 (x86_64) passed node1 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.97 (x86_64)" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 elfutils-libelf-0.137-3.el5 (x86_64) elfutils-libelf-0.97 (x86_64) passed node1 elfutils-libelf-0.137-3.el5 (x86_64) elfutils-libelf-0.97 (x86_64) passed Result: Package existence check passed for "elfutils-libelf-0.97 (x86_64)" Check: Package existence for "elfutils-libelf-devel-0.97" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 elfutils-libelf-devel-0.137-3.el5 elfutils-libelf-devel-0.97 passed node1 elfutils-libelf-devel-0.137-3.el5 elfutils-libelf-devel-0.97 passed Result: Package existence check passed for "elfutils-libelf-devel-0.97" Check: Package existence for "glibc-common-2.3.4" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 glibc-common-2.5-58 glibc-common-2.3.4 passed node1 glibc-common-2.5-58 glibc-common-2.3.4 passed Result: Package existence check passed for "glibc-common-2.3.4" Check: Package existence for "glibc-devel-2.3.4 (x86_64)" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 glibc-devel-2.5-58 (x86_64) glibc-devel-2.3.4 (x86_64) passed node1 glibc-devel-2.5-58 (x86_64) glibc-devel-2.3.4 (x86_64) passed Result: Package existence check passed for "glibc-devel-2.3.4 (x86_64)" Check: Package existence for "glibc-headers-2.3.4" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 glibc-headers-2.5-58 glibc-headers-2.3.4 passed node1 glibc-headers-2.5-58 glibc-headers-2.3.4 passed Result: Package existence check passed for "glibc-headers-2.3.4" Check: Package existence for "gcc-c++-3.4.6" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 gcc-c++-4.1.2-50.el5 gcc-c++-3.4.6 passed node1 gcc-c++-4.1.2-50.el5 gcc-c++-3.4.6 passed Result: Package existence check passed for "gcc-c++-3.4.6" Check: Package existence for "libaio-devel-0.3.105 (i386)" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 libaio-devel-0.3.106-5 (i386) libaio-devel-0.3.105 (i386) passed node1 libaio-devel-0.3.106-5 (i386) libaio-devel-0.3.105 (i386) passed Result: Package existence check passed for "libaio-devel-0.3.105 (i386)" Check: Package existence for "libaio-devel-0.3.105 (x86_64)" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 libaio-devel-0.3.106-5 (x86_64) libaio-devel-0.3.105 (x86_64) passed node1 libaio-devel-0.3.106-5 (x86_64) libaio-devel-0.3.105 (x86_64) passed Result: Package existence check passed for "libaio-devel-0.3.105 (x86_64)" Check: Package existence for "libgcc-3.4.6 (i386)" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 libgcc-4.1.2-50.el5 (i386) libgcc-3.4.6 (i386) passed node1 libgcc-4.1.2-50.el5 (i386) libgcc-3.4.6 (i386) passed Result: Package existence check passed for "libgcc-3.4.6 (i386)" Check: Package existence for "libgcc-3.4.6 (x86_64)" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 libgcc-4.1.2-50.el5 (x86_64) libgcc-3.4.6 (x86_64) passed node1 libgcc-4.1.2-50.el5 (x86_64) libgcc-3.4.6 (x86_64) passed Result: Package existence check passed for "libgcc-3.4.6 (x86_64)" Check: Package existence for "libstdc++-3.4.6 (i386)" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 libstdc++-4.1.2-50.el5 (i386) libstdc++-3.4.6 (i386) passed node1 libstdc++-4.1.2-50.el5 (i386) libstdc++-3.4.6 (i386) passed Result: Package existence check passed for "libstdc++-3.4.6 (i386)" Check: Package existence for "libstdc++-3.4.6 (x86_64)" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 libstdc++-4.1.2-50.el5 (x86_64) libstdc++-3.4.6 (x86_64) passed node1 libstdc++-4.1.2-50.el5 (x86_64) libstdc++-3.4.6 (x86_64) passed Result: Package existence check passed for "libstdc++-3.4.6 (x86_64)" Check: Package existence for "libstdc++-devel-3.4.6 (x86_64)" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 libstdc++-devel-4.1.2-50.el5 (x86_64) libstdc++-devel-3.4.6 (x86_64) passed node1 libstdc++-devel-4.1.2-50.el5 (x86_64) libstdc++-devel-3.4.6 (x86_64) passed Result: Package existence check passed for "libstdc++-devel-3.4.6 (x86_64)" Check: Package existence for "sysstat-5.0.5" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 sysstat-7.0.2-3.el5_5.1 sysstat-5.0.5 passed node1 sysstat-7.0.2-3.el5_5.1 sysstat-5.0.5 passed Result: Package existence check passed for "sysstat-5.0.5" Check: Package existence for "unixODBC-2.2.11 (i386)" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 unixODBC-2.2.11-7.1 (i386) unixODBC-2.2.11 (i386) passed node1 unixODBC-2.2.11-7.1 (i386) unixODBC-2.2.11 (i386) passed Result: Package existence check passed for "unixODBC-2.2.11 (i386)" Check: Package existence for "unixODBC-2.2.11 (x86_64)" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 unixODBC-2.2.11-7.1 (x86_64) unixODBC-2.2.11 (x86_64) passed node1 unixODBC-2.2.11-7.1 (x86_64) unixODBC-2.2.11 (x86_64) passed Result: Package existence check passed for "unixODBC-2.2.11 (x86_64)" Check: Package existence for "unixODBC-devel-2.2.11 (i386)" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 unixODBC-devel-2.2.11-7.1 (i386) unixODBC-devel-2.2.11 (i386) passed node1 unixODBC-devel-2.2.11-7.1 (i386) unixODBC-devel-2.2.11 (i386) passed Result: Package existence check passed for "unixODBC-devel-2.2.11 (i386)" Check: Package existence for "unixODBC-devel-2.2.11 (x86_64)" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 unixODBC-devel-2.2.11-7.1 (x86_64) unixODBC-devel-2.2.11 (x86_64) passed node1 unixODBC-devel-2.2.11-7.1 (x86_64) unixODBC-devel-2.2.11 (x86_64) passed Result: Package existence check passed for "unixODBC-devel-2.2.11 (x86_64)" Check: Package existence for "pdksh-5.2.14" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 pdksh-5.2.14-36.el5 pdksh-5.2.14 passed node1 pdksh-5.2.14-36.el5 pdksh-5.2.14 passed Result: Package existence check passed for "pdksh-5.2.14" Check: Package existence for "expat-1.95.7 (x86_64)" Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 expat-1.95.8-8.3.el5_5.3 (x86_64) expat-1.95.7 (x86_64) passed node1 expat-1.95.8-8.3.el5_5.3 (x86_64) expat-1.95.7 (x86_64) passed Result: Package existence check passed for "expat-1.95.7 (x86_64)" Checking for multiple users with UID value 0 Result: Check for multiple users with UID value 0 passed Check: Current group ID Result: Current group ID check passed Checking Core file name pattern consistency... Core file name pattern consistency check passed. Checking to make sure user "grid" is not in "root" group Node Name Status Comment ------------ ------------------------ ------------------------ node2 does not exist passed node1 does not exist passed Result: User "grid" is not part of "root" group. Check passed Check default user file creation mask Node Name Available Required Comment ------------ ------------------------ ------------------------ ---------- node2 0022 0022 passed node1 0022 0022 passed Result: Default user file creation mask check passed Starting Clock synchronization checks using Network Time Protocol(NTP)... NTP Configuration file check started... Network Time Protocol(NTP) configuration file not found on any of the nodes. Oracle Cluster Time Synchronization Service(CTSS) can be used instead of NTP for time synchronization on the cluster nodes Result: Clock synchronization check using Network Time Protocol(NTP) passed Pre-check for cluster services setup was successful.
3、小结
错误源于不仔细的安装,马虎大意造成了这次错误。收获就是看到了在没有进行grid信任关系时,校验时会遇到的错误现象。
没有太多的技术解析。又是一篇引以为戒的文章。希望读者朋友们安装时细心慎重,不要遇到类似这种低级错误。
原创作品,出自 “深蓝的blog” 博客,欢迎转载,转载时请务必注明下面出处,否则追究版权法律责任。
深蓝的blog: