http://blog.naver.com/y2k29t/80092610918
|
"모르는 것이 약이다." 이 말을 참 좋아했는데, 이번 여행동안은 "아는것이 힘이다!!"가 더 중요하다는 걸 알았습니다.
OS에 대해서 거의 무지상태라....설치하면서도 이게 왜 이렇게 되는지, 에러가 나도 왜 나는지...알지 못 해서 책 찾아가면서 하느라 시간이 오래걸렸네요...그럼에도 불구하고 여전히 OS는 무지상태라눈.....
(OS를 차근 차근 공부해야겠어요~~~)
아~~!! 아래 내용이 반말체임을 양해 부탁드립니다...^^;;
===================================================================================================================
VMWare를 이용하여 Oracle Enterprise Linux 기반 Oracle RAC 10g 설치
<?xml:namespace prefix = o />
Ⅰ. 노트북 사양
메모리 2G
하드디스크 160G
OS Windows XP Professional Service Pack2
Ⅱ. 설치 가이드
1. VMWare를 이용하여 Oracle Enterprise Linux 기반 Oracle RAC 10g 설치하기, Vincent Chan
2. Linux, iSCSI 환경에서 Oracle RAC 10g Release 2 클러스터 설치하기, Jeffrey Hunter
Ⅲ. 10g RAC 설치 시 발생했던 문제점과 해결 방법
1. 메모리 : 2G에서도 잘 작동은 하나, 윈도우나 VMWare상의 리눅스 모두 느리다. (많은 인내심이 필요함)
2. VMWare Server 1.0.3 Download : 다운로드 받아서 설치하면 시리얼번호를 입력하라고 나온다…
시리얼 번호를 받기 위해서는 “resister” 회원가입을 해야 한다. 난 혼자 사용할 거라 시리얼번호를 하나만 받았다.
3. 가상 머신 구성
① Virtual Machine Settings : VMWare Server 1.0.3에는 기본으로 floppy disk가 없으므로 삭제 할 필요가 없다
② USB 추가 : Virtual Machine Settings에서 USB 선택하고 ADD를 클릭한다.(소프트웨어를 리눅스 파일에 옮겨야하므로 필요)
③ 추가된 USB는 필요 할 때마다, “Ctrl + D” 혹은 “VM → Removable Devices → USB → 인식된 장치를 체크” 해주면 리눅스에 mount된다.
4. 가상 머신에 Enterprise Linux 설치 할 때 주의 사항
1) Network Configuration : RAC를 설치 하기 전에 궁금했던 부분이었다. IP Address를 어떻게 설정하나..
가이드에 나온 대로 설정하면 된다(가상 IP가 필요한 이유는 “Linux, iSCSI 환경에서 Oracle RAC 10g Release 2 클러스터 설치하기” 참고).
ⓐ 하나의 데이터베이스를 여러 대의 서버가 공유해서 사용하고,
Clusterware & DB설치 할 때, 노드 간에 동일한 데이터를 동시에 액세스할 경우 ping 발생, 특정 노드의
fail 발생 시 정상인 다른 노드로 접속되는 것 등 노드간의 통신이 필요한 경우가 있다. 그래서 IP Address와
Hostname은 field 상황에 맞게 설정하며. 이는 한 노드에서 다른 노드로 원격 접속 설정에 필요하다. 여기서는 테스트
용이므로 임시로 IP Address와 Hostname을 설정한다. (혜은이 생각…. 보충 및 수정 필요)
ⓑ eth0(public network), eth1(interconnect. 노드간의 직접 연결 담당)
2) Selecting System tool in the Package Group Selection : Enterprise Linux Release 4 Update 4의 kernel이 “ELsmp”이므로 “ocfs-2-2.6.9-42.0.0.0.1ELsmp”, “oracleasm-2.6.9-42.0.0.0.1ELsmp”를 선택해야 설치가 된다.
3) 커널 모듈의 종류
① xxx.EL-xx.rpm : for single processor
② xxx.ELsmp-xx.rpm : for multiple processor
③ xxx.ELhugemem- for hugemem
5. 방화벽 비활성화로 설정 : 방화벽이 설정되어 있으면 Oracle Clusterware실행 시 crash(프로세스 실패)된다.
① error message
oac_init:2: Could not connect to server, clsc retcode = 9
a_init:12!: Client init unsuccessful : [32]
ibctx:1:ERROR: INVALID FORMAT
proprinit : problem reading the bootblock or superbloc 22
6. 오라클 사용자의 생성
1) shell 설정
① ksh : 자동 완성 기능 없음. ksh로 설정 시 오라클 사용자 환경 파일은 “.profile”이다.
② bash : 자동 완성 기능 있음. Bash로 설정 시 오라클 사용자 환경 파일은 “.bash_profile”이다.
③ shell 변경 : 변경하려는 계정으로 로그인 → $chsh → [/bin/ksh]:/bin/bash → 재로그인(시스템에 적용됨)
ⓐ 문제점 : 환경 파일에 설정한 환경변수들(ORACLE_BASE, ORACLE_HOME등)을 인식하지 못해서 폴더가 생성되지 않거나 설치 해당 경로를 인식하지 못하는 등의 에러 발생.
ⓑ 해결책 : 환경 파일을 shell에 맞게 구성하거나, 사용자 생성 할 때부터 원하는 shell로 구성한다.
2) “파일시스템 디렉토리 구조의 생성”에서 오타
mkdir –p $ORACLE_BASE/admin
mkdir –p $ORACLE_HOME
mkdir –p $ORA_CRS_HOME
3) oracle 사용자의 shell Limit 설정 : root계정에서 실행
4) Enterprise Liux 소프트웨어 패키지 설치 : VMWare에서 “Ctrl + D”를 눌러서 CD-ROM에서
“use ISO Img”로 설정을 변경해서 CD를 mount한 후, redhat ISO 3번 파일에 필요한 패키지를 설치한다.
5) redhat ISO 3번 CD : ocfs와 oracleasm 패키지 설치와 관련된 파일,
libaio-0.3.105-2.i386.rpm, openmotif21-2.1.30-11.RHEL4.6.i386.rpm 파일이
있다.
7. oracleasm 패키지 설치
1) 설치 순서 : 리눅스 설치할 때 설치가 되나, 설치가 안되었거나 재설치 할 때 참고
oracleasm-support-2.0.3-2 → oracleasm-2.6.9-42.0.0.0.1ELsmp → oracleasmlib-2.0.2-1
<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" /><?xml:namespace prefix = v />
8. DISPLAY 환경 변수 설정
1) Can’t open DISPLAY error
① 설치 가이드 방법 대로 설정하면 아래 그림과 같은 에러
② 해결 방법
ⓐ method1
rac1]ssh –X oracle@rac2
rac2]export DISPLAY=rac1:0.0
rac2]xclock
ⓑ method2 : method1에서 에러 발생시
rac1]ssh –Y oracle@rac2
rac2] xclock
2) X11Forward error 발생
① X11Forwarding이 활성화되어 있으면 오라클 설치 작업이 실패한다.
② 해결 방법 : X11Forwarding을 비활성화 한다.
è /etc/ssh/sshd.config에서 “X11Forwarding no” 로 설정을 변경한다.( “#X11Forwarding yes” 주석처리)
9. ASM 설정
1)한 노드에서만 ASM 디스크를 생성한다.
2) 새로운 볼륨인식은 모든 노드에서 수행한다.
# /etc/init.d/oracleasm scandisks
10. 파일시스템 마운트
1) 설치 전에 “mount”명령어를 통해서 OCFS2가 마운트 되었는지 확인 해야 한다.
① 마운트가 안 되었을 경우 발생하는 에러(⒜각 노드간의 원격 접속이 안되거나,⒝해당 경로의 permission이 "oracle"로 설정이 안되어 있어도 같은 에러가 발생된다.)
② 마운트가 된 상태 확인
# mount
…
/dev/sde1 on /ocfs type ocfs2 (rw,_netdev,datavolume,nointr,heartbeat=local)
③ 커널 모듈을 로드하고 OCFS2 파일 시스템을 마운트 하는데 필요한 설정이 완료 된 후에 o2cb 플래그 설정 확인
#su root
#chkconfig __list o2cb
o2cb 0:off 1:off 2:on 3:on 4:on 5:on 6:off
⊙ 굵은 글씨는 반드시 "on"으로 설정 되어 있어야 한다.
11.Oracle Clusterware와 Oracle Database 10gR2 설치 실행 경로
1) 설치 가이드대로 할 경우에 "staging"폴더를 생성하지 않았으므로 에러 발생
2)해경방법
① USB에 있는 clusterware와 database 소프트웨어를 oracle폴더로 복사한 후, 이 폴더에 압축을 푼다.
(oracle폴더에는 clusterware, database폴더가 생성된다)
② /u01/app/oracle/clusterware/runInstaller
③ /u01/app/oracle/database/runInstaller
12. Oracle Database 10g R2 설치
1)설치 전 사전 점검 작업 수행
# cd clusterware/cluvfy
# ./runcluvfy.sh stage -pre dbinst -n rac1,rac2 -r 10gR2 -verbose
2)Oracel Database 10g R2 설치 명령
# /u01/app/oracle/database/runInstaller -ignoreSysPrereqs
3)Create Disk Groups : 디스크 그룹 생성
ⓐ 설치 후 v$asm_disk 에서 header_status가 unknown으로 나타난다.
ⓑ 백업/복구 테스트:복구가 제대로 수행 안됨.
② 해결 방법:아직 해결 못함.
⊙ Change Disk Discovery Path Click → '/u01/oradata/devdb/asmdisk1','/u01/oradata/devdb/asmdisk2','/u01/oradata/devdb/asmdisk3'
13. 애플리케이션 리소스의 시작/중단
1) oracle 계정으로 로그인한 후 애플리케이션 리소스를 중단 한 후 시작해야 한다.
srvctl stop instance -d devdb -i devdb1
srvctl stop asm -n rac1
srvctl stop nodeapps -n rac1
srvctl start instance -d devdb -i devdb1
srvctl start asm -n rac1
srvctl start nodeapps -n rac1
⊙ devdb : database name
⊙ devdb1/devdb2 : instance name
⊙ rac1/rac2 : hostname
2) crs관련 디렉토리와 파일의 permission 때문에 nodeapps가 시작 안 됨.
① $ORA_CRS_HOME/crs_1:root:oinstall을 "oracle:oinstall"로 변경
② $ORACLE_HOME/racg:oracle:oinstall을 "oracle:dba"로 변경
③ ocfs/clusterware/ocr:root:oinstall을 :"oracle:oistall"로 변경
3)asm 시작 에러 : $ORA_CRS_HOME에서 "bin, crs, lib"폴더가 root:oinstall로 되어 있었다. 그래서 "oracle:oinstall"로 변경해서 해결함
14. Clusterware, database설치 실패 후, 성공적인 재설치를 위해서 모든 파일들을 깨끗하게 정리 해야 한다.
1) 에러 메시지
2) 해결 방법 : 아래 문서들 참고
② CRS 와 10G REAL APPLICATION CLUSTERS