본문 바로가기

Oracle/10g. Rac Install

C. ClusterWare 설치를 위한 기본세팅

Oracle 10g 설치와 마찬가지로 기본적인 설정을 해준다.

1. /etc/security/limits.conf

oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536

2. /etc/pam.d/login

session required /lib/security/pam_limits.so

3. /etc/profile

if [ $USER = "oracle" ]; then	
	ulimit -u 16384 -n 65536
fi

4. # more /etc/sysctl.conf
kernel.shmall = 2097152 kernel.shmmax = 2147483648 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 fs.file-max = 65536 net.ipv4.ip_local_port_range = 1024 65000 net.core.rmem_default = 1048576 net.core.rmem_max = 1048576 net.core.wmem_default = 262144 net.core.wmem_max = 262144

5. /etc/modprobe.conf
options hangcheck-timer hangcheck_tick=30 hangcheck_margin=180


hangcheck-timer 커널 모듈의 설정. hangcheck timer 커널 모듈은 시스템의 상태를 모니터링하고 장애가 발생한 RAC 노드를 재시작합니다. 노드의 장애 상황을 파악하기 위해 사용되는 두 가지 매개변수로 hangcheck_tick(시스템 모니터링 빈도 정의)과 hangcheck_margin(RAC 노드의 리셋을 수행하기 위한 최대 지연 허용 시간)이 있습니다


6. 게스트 OS와 호스트 OS의 시간 동기화. Oracle Clusterware와 Oracle Database 소프트웨어를 설치하는 과정에서 오라클 인스톨러는 먼저 로컬 노드에 소프트웨어를 설치한 후 원격 노드에 소프트웨어를 카피하는 작업을 수행합니다. 양쪽 RAC 노드의 날짜와 시간이 동기화되지 않은 경우 아래와 같은 에러가 발생할 수도 있습니다.

"/bin/tar: ./inventory/Components21/oracle.ordim.server/10.2.0.1.0: time 
stamp  2006-11-04 06:24:04 is 25 s in the future"

따라서 Oracle RAC 설치를 수행하기 전에, 가상 머신과 호스트 머신의 시간을 동기화해 주어야 합니다. root 사용자로 로그인하여 아래 작업을 실행하여 시간을 동기화합니다.

  1. “vmware-toolbox”를 실행하여 VMware Tools Properties 윈도우를 엽니다. Options 탭에서 Time synchronization between the virtual machine and the host operating system을 선택합니다. tools.syncTime = "TRUE" 매개변수가 가상 머신 설정 파일(d:\vm\rac\rac1\Red Hat Enterprise Linux 4.vmx)에 추가된 것을 확인할 수 있을 것입니다.
  2. 2. "/boot/grub/grub.conf" 파일을 편집하여 kernel /boot/ 라인에 "clock=pit nosmp noapic nolapic" 옵션을 추가합니다. 이제 양쪽 커널에 옵션을 추가하는 작업을 완료했습니다. 변경 작업은 현재 사용 중인 커널에 대해서만 수행해 주면 됩니다.
    #boot=/dev/sda
    default=0
    timeout=5
    splashimage=(hd0,0)/boot/grub/splash.xpm.gz
    hiddenmenu
    title Enterprise (2.6.9-42.0.0.0.1.ELsmp)
            root (hd0,0)
            kernel /boot/vmlinuz-2.6.9-42.0.0.0.1.ELsmp ro 
    root=LABEL=/ rhgb quiet clock=pit nosmp noapic nolapic
            initrd /boot/initrd-2.6.9-42.0.0.0.1.ELsmp.img
    title Enterprise-up (2.6.9-42.0.0.0.1.EL)
            root (hd0,0)
            kernel /boot/vmlinuz-2.6.9-42.0.0.0.1.EL ro root=LABEL=/ 
    rhgb quiet clock=pit nosmp noapic nolapic
            initrd /boot/initrd-2.6.9-42.0.0.0.1.EL.img
 
7. oracle 계정의 .bash_profile 설정.
ORACLE_BASE
ORACLE_SID

ORACLE_HOME
등을 설정해준다.
8.소프트웨어 ( ocfs )설치
오라클 리눅스 안에 ocfs2 관련 소프트웨어를 설치.





[root@ocm1 rpm]# rpm -Uvh ocfs2-tools-1.2.7-1.el4.i386.rpm
Preparing...                ########################################### [100%]
   1:ocfs2-tools            ########################################### [100%]
[root@ocm1 rpm]# rpm -Uvh ocfs2console-1.2.7-1.el4.i386.rpm
Preparing...                ########################################### [100%]
   1:ocfs2console           ########################################### [100%]
[root@ocm1 rpm]# rpm -Uvh ocfs2-2.6.9-89.EL-1.2.9-1.el4.i686.rpm
Preparing...                ########################################### [100%]
   1:ocfs2-2.6.9-89.EL      ########################################### [100%]
[root@ocm1 rpm]#

9. 설치후 ocfs2console 를 실행해서 format및 양쪽노드가 인식할수있도록 설정을 해준다.

ㄱ. root 계정으로 실행한다. ocfs2console


ㄴ. Cluster -> Configure Node 를 실행하면 해당 설정파일을 만들수있다.

ㄷ. 각노드 정보 입력.


ㄹ. 노드정보 입력후 Apply 를 선택.


ㅁ. 적용후 close



10. 설정후 o2cb로 해당 모듈을 내린후 새설정을 진행.

# /etc/init.d/o2cb unload
Stopping O2CB cluster ocfs2: OK
Unmounting ocfs2_dlmfs filesystem: OK
Unloading module "ocfs2_dlmfs": OK
Unmounting configfs filesystem: OK
Unloading module "configfs": OK

# /etc/init.d/o2cb configure
Configuring the O2CB driver.

This will configure the on-boot properties of the O2CB driver.
The following questions will determine whether the driver is loaded on
boot.  The current values will be shown in brackets ('[]').  Hitting
 without typing an answer will keep that current value.  Ctrl-C
will abort.

Load O2CB driver on boot (y/n) [y]: y
Cluster to start on boot (Enter "none" to clear) [ocfs2]:
Specify heartbeat dead threshold (>=7) [7]: 61
Writing O2CB configuration: OK
Loading module "configfs": OK
Mounting configfs filesystem at /config: OK
Loading module "ocfs2_nodemanager": OK
Loading module "ocfs2_dlm": OK
Loading module "ocfs2_dlmfs": OK
Mounting ocfs2_dlmfs filesystem at /dlm: OK
Starting O2CB cluster ocfs2: OK
# /etc/init.d/o2cb status
Module "configfs": Loaded
Filesystem "configfs": Mounted
Module "ocfs2_nodemanager": Loaded
Module "ocfs2_dlm": Loaded
Module "ocfs2_dlmfs": Loaded
Filesystem "ocfs2_dlmfs": Mounted
Checking O2CB heartbeat: Not active
 
이상없이 진행되면 voting디스크로 사용할 드라이브를 마운트작업을 한다.
# mount -t ocfs2 -o datavolume,nointr /dev/sdb1 /ocfs

/etc/fstab

/dev/sdb1 /ocfs ocfs2 _netdev,datavolume,nointr 0 0