프린트 하기

OS환경 : Oracle Linux 6.8 (64bit)


DB 환경 : Oracle Database 11.2.0.4 grid


방법 : grid 설치 시 사전 점검 스크립트 ./runcluvfy.sh

grid 설치 경로로 이동해서 해당 폴더 확인

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# su - oracle
$ cd /oracle/engine/grid/
$ ls -al
total 76
drwxr-xr-x.  7 oracle dba  4096 Feb 15 15:30 .
drwxr-xr-x.  3 oracle dba  4096 Feb 15 14:00 ..
drwxr-xr-x.  4 oracle dba  4096 Aug 26  2013 install
-rw-r--r--.  1 oracle dba 30016 Aug 27  2013 readme.html
drwxr-xr-x.  2 oracle dba  4096 Feb 15 15:29 response
drwxr-xr-x.  2 oracle dba  4096 Aug 26  2013 rpm
-rwxr-xr-x.  1 oracle dba  4878 Aug 26  2013 runcluvfy.sh
-rwxr-xr-x.  1 oracle dba  3268 Aug 26  2013 runInstaller
drwxr-xr-x.  2 oracle dba  4096 Aug 26  2013 sshsetup
drwxr-xr-x. 14 oracle dba  4096 Aug 26  2013 stage
-rw-r--r--.  1 oracle dba   500 Aug 27  2013 welcome.html


쉘 실행

1
2
3
4
5
6
7
8
$ sh runcluvfy.sh 
runcluvfy.sh 
  Sets up the environment needed to run the 'cluvfy' utility
  and then runs the 'cluvfy' utility with the options specified.
  Please see the 'cluvfy' documentation for further details.
 
Usage:
  runcluvfy.sh <cluvfy command options>

아무 옵션없이 sh 로 실행하면 위와 같은 메세지가 나옴


옵션 제대로 주고 쉘 실행

./runcluvfy.sh stage -pre crsinst -n <node_list>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
$ ./runcluvfy.sh stage -pre crsinst -n racdb1,racdb2
 
Performing pre-checks for cluster services setup 
 
Checking node reachability...
Node reachability check passed from node "racdb1"
 
 
Checking user equivalence...
User equivalence check passed for user "oracle"
 
Checking node connectivity...
 
Checking hosts config file...
 
Verification of the hosts config file successful
 
Node connectivity passed for subnet "192.168.0.0" with node(s) racdb2,racdb1
TCP connectivity check passed for subnet "192.168.0.0"
 
Node connectivity passed for subnet "10.10.10.0" with node(s) racdb2,racdb1
TCP connectivity check passed for subnet "10.10.10.0"
 
Node connectivity passed for subnet "20.20.20.0" with node(s) racdb2,racdb1
TCP connectivity check passed for subnet "20.20.20.0"
 
 
Interfaces found on subnet "192.168.0.0" that are likely candidates for VIP are:
racdb2 eth0:192.168.0.101
racdb1 eth0:192.168.0.100
 
Interfaces found on subnet "20.20.20.0" that are likely candidates for VIP are:
racdb2 eth2:20.20.20.101
racdb1 eth2:20.20.20.100
 
Interfaces found on subnet "10.10.10.0" that are likely candidates for a private interconnect are:
racdb2 eth1:10.10.10.101
racdb1 eth1:10.10.10.100
Checking subnet mask consistency...
Subnet mask consistency check passed for subnet "192.168.0.0".
Subnet mask consistency check passed for subnet "10.10.10.0".
Subnet mask consistency check passed for subnet "20.20.20.0".
Subnet mask consistency check passed.
 
Node connectivity check passed
 
Checking multicast communication...
 
Checking subnet "192.168.0.0" for multicast communication with multicast group "230.0.1.0"...
Check of subnet "192.168.0.0" for multicast communication with multicast group "230.0.1.0" passed.
 
Checking subnet "10.10.10.0" for multicast communication with multicast group "230.0.1.0"...
Check of subnet "10.10.10.0" for multicast communication with multicast group "230.0.1.0" passed.
 
Checking subnet "20.20.20.0" for multicast communication with multicast group "230.0.1.0"...
Check of subnet "20.20.20.0" for multicast communication with multicast group "230.0.1.0" passed.
 
Check of multicast communication passed.
 
Checking ASMLib configuration.
Check for ASMLib configuration passed.
Total memory check passed
Available memory check passed
Swap space check passed
Free disk space check passed for "racdb2:/tmp"
Free disk space check passed for "racdb1:/tmp"
Check for multiple users with UID value 500 passed 
User existence check passed for "oracle"
Group existence check failed for "oinstall"
Check failed on nodes: 
    racdb2,racdb1
Group existence check passed for "dba"
Membership check for user "oracle" in group "oinstall" [as Primary] failed
Check failed on nodes: 
    racdb2,racdb1
Membership check for user "oracle" in group "dba" passed
Run level check passed
Hard limits check passed for "maximum open file descriptors"
Soft limits check passed for "maximum open file descriptors"
Hard limits check passed for "maximum user processes"
Soft limits check passed for "maximum user processes"
System architecture check passed
Kernel version check passed
Kernel parameter check passed for "semmsl"
Kernel parameter check passed for "semmns"
Kernel parameter check passed for "semopm"
Kernel parameter check passed for "semmni"
Kernel parameter check passed for "shmmax"
Kernel parameter check passed for "shmmni"
Kernel parameter check passed for "shmall"
Kernel parameter check passed for "file-max"
Kernel parameter check passed for "ip_local_port_range"
Kernel parameter check passed for "rmem_default"
Kernel parameter check passed for "rmem_max"
Kernel parameter check passed for "wmem_default"
Kernel parameter check passed for "wmem_max"
Kernel parameter check passed for "aio-max-nr"
Package existence check passed for "binutils"
Package existence check passed for "compat-libcap1"
Package existence check passed for "compat-libstdc++-33(x86_64)"
Package existence check passed for "libgcc(x86_64)"
Package existence check passed for "libstdc++(x86_64)"
Package existence check passed for "libstdc++-devel(x86_64)"
Package existence check passed for "sysstat"
Package existence check passed for "gcc"
Package existence check passed for "gcc-c++"
Package existence check passed for "ksh"
Package existence check failed for "make"
Check failed on nodes: 
    racdb1
Package existence check passed for "glibc(x86_64)"
Package existence check passed for "glibc-devel(x86_64)"
Package existence check passed for "libaio(x86_64)"
Package existence check passed for "libaio-devel(x86_64)"
Check for multiple users with UID value 0 passed 
Current group ID check passed
 
Starting check for consistency of primary group of root user
 
Check for consistency of root users primary group passed
 
Starting Clock synchronization checks using Network Time Protocol(NTP)...
 
NTP Configuration file check started...
NTP Configuration file check passed
 
Checking daemon liveness...
Liveness check passed for "ntpd"
Check for NTP daemon or service alive passed on all nodes
 
NTP daemon slewing option check failed on some nodes
Check failed on nodes: 
    racdb2,racdb1
PRVF-5436 : The NTP daemon running on one or more nodes lacks the slewing option "-x"
Clock synchronization check using Network Time Protocol(NTP) failed
 
Core file name pattern consistency check passed.
 
User "oracle" is not part of "root" group. Check passed
Default user file creation mask check passed
Checking consistency of file "/etc/resolv.conf" across nodes
 
File "/etc/resolv.conf" does not have both domain and search entries defined
domain entry in file "/etc/resolv.conf" is consistent across nodes
search entry in file "/etc/resolv.conf" is consistent across nodes
The DNS response time for an unreachable node is within acceptable limit on all nodes
 
File "/etc/resolv.conf" is consistent across nodes
 
Time zone consistency check passed
 
Pre-check for cluster services setup was unsuccessful on all the nodes.

이렇게 grid 설치전 문제가 되는 부분들을 알려주는 스크립트임

설치에 문제가 없는지 사전확인 하는 작업으로 확실히 무시해도 된다는 오류를 제외하고는 반드시 해결하고 진행해야함


나의 경우 group 부분, make 패키지 부분, NTP 부분에 fail이 발생하였음

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
fail 1
Group existence check failed for "oinstall"
Check failed on nodes: 
    racdb2,racdb1
Group existence check passed for "dba"
Membership check for user "oracle" in group "oinstall" [as Primaryfailed
Check failed on nodes: 
    racdb2,racdb1
 
fail 2
Package existence check failed for "make"
Check failed on nodes: 
    racdb1
 
fail 3
NTP daemon slewing option check failed on some nodes
Check failed on nodes: 
    racdb2,racdb1
PRVF-5436 : The NTP daemon running on one or more nodes lacks the slewing option "-x"
Clock synchronization check using Network Time Protocol(NTP) failed


fail 1번의 경우 oinstall 그룹이 아닌 dba 그룹으로 설치를 해서 발생한 메세지임

아래와 같은 형식으로 group을 dba로 잡아주면 메세지가 발생하지 않음

cluvfy stage -pre crsinst -n <node_list> [-osdba <osdba_group>] [-orainv <orainventory_group>]

재검사

1
2
3
4
5
6
7
8
$ cluvfy stage -pre crsinst -n racdb1,racdb2 -osdba dba -orainv dba
.
.
Group existence check passed for "dba"
Membership check for user "oracle" in group "dba" [as Primarypassed
Run level check passed
.
.


fail 2번의 경우 설치 시 필수 패키지인 make 패키지가 설치되어 있지 않아 발생한 메세지임

make 패키지를 설치해주면 메세지가 발생하지 않음

1
2
3
4
5
6
7
8
9
10
11
# yum install -y make*
# su - oracle
 
$ cluvfy stage -pre crsinst -n racdb1,racdb2 -osdba dba -orainv dba
.
.
Package existence check passed for "ksh"
Package existence check passed for "make"
Package existence check passed for "glibc(x86_64)"
.
.


fail 3번의 경우 NTP 데몬에 slewing 옵션이 설정되어 있지 않아서 발생한 메세지

ntpd 서비스를 종료한 뒤 아래 파일에 -x 를 추가 후 ntpd 서비스를 다시 시작(1번, 2번노드 모두 진행)

1
2
3
4
5
6
7
8
9
10
# service ntpd stop
Shutting down ntpd:     [  OK  ]
 
# vi /etc/sysconfig/ntpd
OPTIONS="-u ntp:ntp -p /var/run/ntpd.pid -g"
아래와 같이 수정
OPTIONS="-x -u ntp:ntp -p /var/run/ntpd.pid -g"
 
# service ntpd start
Shutting up ntpd:     [  OK  ]


재검사

1
2
3
4
5
6
7
8
$ cluvfy stage -pre crsinst -n racdb1,racdb2 -osdba dba -orainv dba
.
.
NTP daemon slewing option check passed
 
NTP daemon's boot time configuration check for slewing option passed
.
.


설치에 문제가 없는지 사전확인 하는 작업으로 확실히 무시해도 된다는 오류를 제외하고는 반드시 해결하고 진행해야함



참조 :  (문서 ID 1672918.1)

http://www.oracledistilled.com/grid-infrastructure/prvf-5439-ntp-daemon-does-not-have-slewing-option-%E2%80%9C-x%E2%80%9D-set-on-node/