오라클 10g ASM방식으로 RAC 설치 #4/9 (리눅스 환경설정)
1. Node #1 리눅스 환경설정
가. VMware Tools 설치(선택사항)
root 계정으로 접속한 후 Install VMware Tools를 선택한다( CD-ROM이 마운트 됨)
터미널을 띄우고 아래 그림처럼 입력한다.
설치가 끝났으면 시스템을 재부팅한다.
나. 노드 1 네트워크 설정
터미널을 띄우고 네트워크 카드별 IP주소, 서브넷, 게이트웨이를 확인한다.(필자와 IP주소는 서로 다를 수 있음)
# ifconfig
네트워크 카드별 IP 확인
# netstat -nr
게이트웨이 확인
# neat
네트워크 설정(아래 그림 참고)
참고 :
각자의 컴퓨터 환경에 따라 IP 주소는 달라지므로 위 그림과 동일한 IP주소로 세팅하지 않도록 한다.
Pirvate IP에는 게이트웨이 주소를 입력하지 않는다.
# /etc/init.d/network restart
네트워크 재시작
( 또는 네트워크 카드를 선택 후 위 그림의 메뉴 중 활성화 단추를 눌러도 된다.)
# vi /etc/hosts
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost
192.168.126.131 rac1
192.168.126.132 rac2
192.168.121.129 rac1-priv
192.168.121.130 rac2-priv
192.168.126.31 rac1-vip
192.168.126.32 rac2-vip
자신의 환경에 맞게 IP주소를 세팅한다.
참고 :
rac2의 IP주소는 rac1의 주소에 +1 하였다(rac1 같은 네트워크에 존재하기만 하면 상관없음)
각 노드별 Virtual IP(rac1-vip, rac2-vip)는 어떠한 네트워크 대역여도 상관없으며,
여기에서는 public 네트워크와 같은 네트워크의 임의 IP(192.168.126.31 ~ 32)로 설정하였다.rac1, rac2 : Public IP로 DBA가 각 노드를 관리하기 위해 접속하는 IP
rac1-priv, rac2-priv : Private IP로 각 노드간 통신을 위한 IP
rac1-vip, rac2-vip : Virtual IP로 운영 IP
# ping rac1
# ping rac1-priv
# ping 168.126.63.1
모든 곳으로 Ping이 나가는지 확인
나가지 않을 곳이 있을 경우 네트워크 설정을 다시 확인한다.
다. 불필요한 서비스 종료
# chkconfig –level 123456 xinetd off
# chkconfig –level 123456 sendmail off
# chkconfig –level 123456 cups off
# chkconfig –level 123456 cups-config-daemon off
# chkconfig –level 123456 smartd off
# chkconfig –level 123456 isdn off
# chkconfig –level 123456 pcmcia off
# chkconfig –level 123456 iptables off
라. 각종 환경 설정
# vi /etc/sysctl.conf
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 = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
위 내용을 추가
# vi /etc/security/limits.conf
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
위 내용을 추가
# vi /etc/pam.d/login
# vi /etc/modprobe.conf
# modprobe -v hangcheck-timer
# vi /etc/rc.local
참고 : timer와 관련된 항목은 각 노드간 시간동기화를 위해서이다.
각 노드별 시간이 서로 다르면 데이터의 무결성이 깨지게 된다.
# groupadd -g 5000 dba
# useradd -g dba oracle
# passwd oracle
오라클 계정 생성
# vi ~/.bash_profile
# vi /home/oracle/.bash_profile
export LD_ASSUME_KERNEL=2.4.19
export ORACLE_BASE=/home/oracle
export ORA_CRS_HOME=$ORACLE_BASE/product/10g/crs
export ORACLE_HOME=$ORACLE_BASE/product/10g/db
export ORA_ASM_HOME=$ORACLE_BASE/product/10g/asm
export ORACLE_SID=rac1
export LANG=ko_KR.UTF-8
export ORACLE_TERM=xterm
export NLS_LANG=AMERICAN_AMERICA.KO16MSWIN949
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib
export PATH=$PATH:$ORACLE_HOME/bin:/$ORA_CRS_HOME/bin
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
위 내용을 추가
마. 디스크 설정
# fdisk /dev/sdb
나머지 디스크(sdc ~ sdi)의 파티션도 위와 동일한 순서로 반복한다.
# vi /etc/sysconfig/rawdevices
/dev/raw/raw2 /dev/sdc1
/dev/raw/raw3 /dev/sdd1
/dev/raw/raw4 /dev/sde1
/dev/raw/raw5 /dev/sdf1
/dev/raw/raw6 /dev/sdg1
/dev/raw/raw7 /dev/sdh1
/dev/raw/raw8 /dev/sdi1
위 내용을 추가
# /etc/init.d/rawdevices restart
# vi /etc/udev/permissions.d/50-udev.permissions
raw/*:oracle:dba:0660
113번째 줄을 위와 같이 수정
# /etc/init.d/rawdevices restart
# ls -al /dev/raw
소유권이 oracle 로 변경 됐는지 확인
노드 1 시스템을 shutdown 시킨다.
2. Node #2 리눅스 환경설정
가. 노드 1 가상머신 -> 노드 2로 복사하기
아래 그림처럼 rac1의 파일 중 2개를 rac2 디렉토리로 복사해 온다
가상머신 이름을 rac2 로 변경한 뒤 시스템을 부팅한다.
참고 : 노드 2의 네트워크 카드의 재구성 화면은 빠르게 사라지므로 빠른 손놀림이 필요하다.
만일 화면이 지나갔다면 시스템을 재부팅하여 다시 시도하도록 한다.
나. 노드 2 네트워크 설정
노드 1에서의 방법과 동일한 과정으로 설정한다.
IP 정보는 /etc/hosts 에 설정한 것과 동일하게 설정한다.
# ping rac2
# ping rac2-priv
# ping 168.126.63.1
모든 곳으로 Ping이 나가는지 확인
나가지 않을 곳이 있을 경우 네트워크 설정을 다시 확인한다.
# vi /home/oracle/.bash_profile
위 처럼 수정한다
# shutdown -r now
노드 2 시스템을 재시작한다.
노드 1 시스템을 부팅시킨다
3. equivalence 설정
가. SSH 공개키/개인키 생성
오라클 계정으로 접속 한다
모든 노드에서 각각 실행(노드 1, 노드 2 모두 power on 상태)
$ ssh-keygen -t rsa
$ ssh-keygen -t dsa
노드 1에서만 실행
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
$ ssh rac2 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ ssh rac2 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
$ scp ~/.ssh/authorized_keys rac2:~/.ssh/authorized_keys
개인키가 저장된 파일(authorized_keys)을 노드2에 복사한다.
모든 노드에서 각각 실행
(암호를 묻는 과정이 나오지 않으면 올바르게 설정된 것임)
$ ssh rac1 date
$ ssh rac1-priv date
$ ssh rac2 date
$ ssh rac2-priv date
참고 : 최초 실행 시 공개키를 받는 과정에서 yes 입력
최신 댓글