버전 비교
키
- 이 줄이 추가되었습니다.
- 이 줄이 삭제되었습니다.
- 서식이 변경되었습니다.
VirtualBox Guest Addition 설치
1번 노드가 부팅이 됩니다.
"root" 유저로 접속합니다.
root 유저의 암호(“oracle”)를 입력합니다.
VirtualBox로 구축된 환경에서는 편의를 위해 VBOXADDITIONS (이하 Guest Addition)를 설치합니다.
호스트 머신의 VirtualBox 메뉴에서 '장치' > '게스트 확장 CD 이미지 삽입'을 클릭하여, Guest Addition CD를 mount 시켜줍니다.
Guest Addition 이미지를 mount하면 자동으로 폴더가 열립니다.
VBoxLinuxAdditions.run을 더블 클릭합니다.
실행 여부를 뭍는 창이 나오면 <실행>을 클릭합니다.
자동으로 설치가 진행되며, 설치가 완료되면 "엔터"를 입력하여 창을 닫아줍니다.
Guest Addition을 적용하기 위해서 재부팅이 필요합니다.
화면 상단의 메뉴바에서 '시스템' > '끄기'를 순서대로 클릭합니다.
<다시 시작> 버튼을 클릭하여 재부팅합니다.
서비스 정리 및 패키지 확인
코드 블럭 | ||||||
---|---|---|---|---|---|---|
| ||||||
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 iptables off chkconfig --level 123456 ip6tables off chkconfig --level 123456 bluetooth off chkconfig --level 123456 yum-updatesd off |
펼치기 | ||
---|---|---|
|
리소스 낭비를 줄이기 위해 불필요한 서비스를 끕니다.
코드 블럭 | ||||||
---|---|---|---|---|---|---|
| ||||||
rpm -q binutils-2.* rpm -q compat-libstdc++-33-* rpm -q elfutils-libelf-0.* rpm -q elfutils-libelf-devel-* rpm -q gcc-4.* rpm -q gcc-c++-4.* rpm -q glibc-2.* rpm -q glibc-common-2.* rpm -q glibc-devel-2.* rpm -q glibc-headers-2.* rpm -q ksh-2* rpm -q libaio-0.* rpm -q libaio-devel-0.* rpm -q libgcc-4.* rpm -q libstdc++-4.* rpm -q libstdc++-devel-4.* rpm -q make-3.* rpm -q sysstat-7.* rpm -q unixODBC-2.* rpm -q unixODBC-devel-2.* |
펼치기 | ||
---|---|---|
|
오라클 설치를 위해 필요한 OS 패키지가 제대로 설치되어 있는지 확인합니다.
만약 이전에 설치 과정을 잘 따라왔다면 모든 패키지가 제대로 설치되어 있을 것입니다.
host 파일 수정
코드 블럭 | ||||||
---|---|---|---|---|---|---|
| ||||||
### Public 10.0.1.101 rac1.localdomain rac1 10.0.1.102 rac2.localdomain rac2 ### Private 10.0.5.101 rac1-priv.localdomain rac1-priv 10.0.5.102 rac2-priv.localdomain rac2-priv ### Virtual 10.0.1.111 rac1-vip.localdomain rac1-vip 10.0.1.112 rac2-vip.localdomain rac2-vip ### SCAN 10.0.1.110 rac-scan.localdomain rac-scan |
/etc/hosts 파일에 서버 정보를 추가합니다.
오라클 소프트웨어 설치를 정상적으로 진행하기 위해 정확한 정보를 입력해야 합니다.
OS 환경 설정 변경
코드 블럭 | ||||
---|---|---|---|---|
| ||||
tmpfs /dev/shm tmpfs size=1500m 0 0 |
오라클의 MEMORY_TARGET 파라미터를 사용하기 위해서 tmpfs를 변경해야 합니다.
기존에 설정된 tmpfs 값은 #로 주석 처리하거나 삭제합니다.
코드 블럭 | ||||||
---|---|---|---|---|---|---|
| ||||||
mount -o remount /dev/shm df -h |
펼치기 | ||
---|---|---|
|
remount하여 바로 시스템에 적용시킵니다.
코드 블럭 | ||||||
---|---|---|---|---|---|---|
| ||||||
fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmmni = 4096 # semaphores: semmsl, semmns, semopm, semmni kernel.sem = 250 32000 100 128 net.ipv4.ip_local_port_range = 9000 65500 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048586 |
커널 변수를 추가하는 작업입니다.
코드 블럭 | ||||
---|---|---|---|---|
| ||||
/sbin/sysctl -p |
펼치기 |
---|
[root@rac1 ~]# /sbin/sysctl -p |
루트 유저로 /sbin/sysctl -p 명령을 수행하면 바로 시스템에 적용할 수 있습니다.
코드 블럭 | ||||
---|---|---|---|---|
| ||||
session required pam_limits.so |
사용자 인증에 관한 설정을 추가합니다.
코드 블럭 | ||||
---|---|---|---|---|
| ||||
options hangcheck-timer hangcheck_tick=30 hangcheck_margin=180 |
클러스터 상태 모니터링을 위한 hangcheck-timer 설정을 추가합니다.
hangcheck_tick은 모니터링 주기(초)를 나타내며, hangcheck_margin은 최대 지연시간(초)를 의미합니다.
코드 블럭 | ||||
---|---|---|---|---|
| ||||
/sbin/modprobe hangcheck-timer |
재기동시에 hangcheck-timer 모듈을 사용할 수 있도록 /etc/rc.local을 수정합니다.
코드 블럭 | ||||||
---|---|---|---|---|---|---|
| ||||||
mv /etc/sysconfig/ntpd /etc/sysconfig/ntpd.original mv /etc/ntp /etc/ntp.original mv /etc/ntp.conf /etc/ntp.conf.original |
펼치기 | ||
---|---|---|
|
실습을 위한 환경이므로 CTSS 사용을 위해 기존 NTP 관련 설정 파일들을 사용하지 못하도록 변경(백업)합니다.
실제 운영환경에서는 반드시 NTP를 사용해 시간을 동기화할 것을 강력히 권합니다
SCAN 관련 설정
코드 블럭 | ||||
---|---|---|---|---|
| ||||
nameserver 127.0.0.1 |
dnsmasq를 사용해 /etc/hosts 파일의 내용을 DNS처럼 사용할 것이므로 loopback IP를 nameserver로 등록합니다.
코드 블럭 | ||||||
---|---|---|---|---|---|---|
| ||||||
chkconfig dnsmasq on service dnsmasq start nslookup rac-scan |
펼치기 | ||
---|---|---|
|
dnsmasq 서비스를 등록하고 실행하면, SCAN IP 검색이 가능합니다.
그룹, 사용자 환경 수정
코드 블럭 | ||||||
---|---|---|---|---|---|---|
| ||||||
groupadd oper groupadd asmdba groupadd asmoper groupadd asmadmin usermod -g oinstall -G dba,oper,asmdba,asmadmin,vboxsf oracle useradd -g oinstall -G dba,asmdba,asmoper,asmadmin,vboxsf grid id oracle id grid passwd oracle passwd grid |
펼치기 | ||
---|---|---|
|
리눅스 설치시 포함된 oracle-validated 패키지에 반영된 설치 유저에 관한 구성을 실습 환경에 맞게 수정해야 합니다.
Guest Addition을 설치했으므로 관련 그룹인 vboxsf를 oracle과 grid 유저에 추가합니다.
passwd로 유저 암호를 반드시 지정해야 합니다.
코드 블럭 | ||||
---|---|---|---|---|
| ||||
oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 grid hard nproc 16384 grid hard nofile 65536 |
리소스 제한을 위한 사용자별 설정값을 입력합니다.
오라클을 설치하는 OS 계정에 맞게 제한값을 입력합니다.
코드 블럭 | ||||||
---|---|---|---|---|---|---|
| ||||||
mkdir -p /u01/app/11.2.0/grid mkdir -p /u01/app/oracle/product/11.2.0/db_1 chown -R grid:oinstall /u01 chown -R oracle:oinstall /u01/app/oracle/product chmod -R 755 /u01 |
펼치기 | ||
---|---|---|
|
오라클 소프트웨어 설치를 위한 경로를 생성하고, 해당 경로에 대한 권한과 소유권을 수정합니다.
코드 블럭 | ||||||
---|---|---|---|---|---|---|
| ||||||
export ORACLE_BASE=/u01/app/oracle export GRID_HOME=/u01/app/11.2.0/grid export DB_HOME=$ORACLE_BASE/product/11.2.0/db_1 export PATH=$PATH:$GRID_HOME/bin |
펼치기 | ||
---|---|---|
|
root 계정의 .bash_profile을 수정합니다.
코드 블럭 | ||||||
---|---|---|---|---|---|---|
| ||||||
export TMP=/tmp export TMPDIR=$TMP export EDITOR=vi export ORACLE_HOSTNAME=rac1 # rac2 export ORACLE_BASE=/u01/app/oracle export GRID_HOME=/u01/app/11.2.0/grid export DB_HOME=$ORACLE_BASE/product/11.2.0/db_1 export ORACLE_HOME=$GRID_HOME export ORACLE_SID=+ASM1 # +ASM2 export ORACLE_TERM=xterm export BASE_PATH=/usr/sbin:$PATH export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$GRID_HOME/bin:$BASE_PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib export NLS_LANG=AMERICAN_KOREA.AL32UTF8 export PS1='[\u@$ORACLE_SID \W]$ ' if [ $USER = "grid" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi fi |
펼치기 | ||
---|---|---|
|
grid 계정으로 접속하여 .bash_profile을 수정합니다.
코드 블럭 | ||||||
---|---|---|---|---|---|---|
| ||||||
export PATH export TMP=/tmp export TMPDIR=$TMP export EDITOR=vi export ORACLE_HOSTNAME=rac1 # rac2 export ORACLE_UNQNAME=racdb # instance_name export ORACLE_BASE=/u01/app/oracle export GRID_HOME=/u01/app/11.2.0/grid export DB_HOME=$ORACLE_BASE/product/11.2.0/db_1 export ORACLE_HOME=$DB_HOME export ORACLE_SID=racdb1 # racdb2 export ORACLE_TERM=xterm export BASE_PATH=/usr/sbin:$PATH export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$GRID_HOME/bin:$BASE_PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib export NLS_LANG=AMERICAN_KOREA.AL32UTF8 export PS1='[\u@$ORACLE_SID \W]$ ' if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi fi |
펼치기 | ||
---|---|---|
|
마지막으로 oracle 계정으로 접속하여 .bash_profile을 수정합니다.