IT Japan

ESXi에서 RAC를 구축 [RAC 구축의 사전 작업] 본문

IT/인프라

ESXi에서 RAC를 구축 [RAC 구축의 사전 작업]

swhwang 2017. 5. 26. 15:02
반응형


여기에서는 Grid Infrastructure를 설치하기 전에 수행 할 작업을 설명한다.

1.그룹과 유저작성

・사용자 및 그룹 만들기
 ※UID 및 GID는 선택 사항이지만 두 서버에서 통일해야합니다.

# groupadd -g 1000 dba
# groupadd -g 1001 oinstall
# useradd -u 1000 -g oinstall -G dba oracle
# useradd -u 1001 -g oinstall -G dba grid


・패스워드 설정

# passwd oracle
# passwd grid

※각 서버에 SSH접속할 때에는 필수



2.디렉토리의 작성

# mkdir -p /u01/app/grid
# mkdir -p /u01/app/11.2.0/grid
# chown -R grid:oinstall /u01
# mkdir -p /u01/app/oracle
# chown oracle:oinstall /u01/app/oracle
# chmod -R 775 /u01



3.쉘의 제한

・limits.conf파일의 편집(추가)

# vi /etc/security/limits.conf
====
* soft nproc 2047
* hard nproc 16384
* soft nofile 1024
* hard nofile 65536
* hard stack 10240


・login파일 편집

# vi /etc/pam.d/login
====
session required pam_limits.so


・디폴트의 쉘기동 파일의 편집

# vi /etc/profile
====
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi



4.Oracle유저의 환경변수

# vi ~oracle/.bash_profile
umask 022



5.커널의 설정/변경

※하기의 파라메터보다 큰경우는 변경할 필요가 없습니다.

# vi /etc/sysctl.conf
====
kernel.shmall = 2097152
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.aio-max-nr = 1048576
fs.file-max = 6815744
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 


・sysctl설정반영

# sysctl -p



6.이름해결을 위한 Host파일 변경

 DNS 서버 또는 Hosts 파일 중 하나에 각 서버의 IP를 등록 할 필요가 있지만, 여기에서는 Hosts 파일로 관리하는 것을 전제로한다.

# vi /etc/hosts
====
10.96.146.165 rac-server01 rac-server01.localdomain
10.96.146.166 rac-server02 rac-server02.localdomain
10.96.146.167 rac-server01-vip rac-server01-vip.localdomain
10.96.146.168 rac-server02-vip rac-server02-vip.localdomain
10.96.146.169 scan-vip01 scan-vip01.localdomain

192.168.2.165 rac-server01-pri rac-server01-pri.localdomain
192.168.2.166 rac-server02-pri rac-server02-pri.localdomain



7.시각동기 NTPD

・slew모드로 한다.
 slew 모드는 시스템의 시간 진행되는 방법을 조정 (느리게하거나 빠르게하고)하고 천천히 시간을 맞춘다.

# vi /etc/sysconfig/ntpd
====
# 수정후
OPTIONS="-x -u ntp:ntp -p /var/run/ntpd.pid"


・NTPD설정반영

# /etc/nit.d/ntpd stop
# ntpdate -b 130.69.251.23;hwclock --systohc
# /etc/init.d/ntpd start


8.Raw디바이스

・파티션작성의 사전확인

# fdisk -l
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = 실린더 수 of 16065 * 512 = 8225280 bytes

디스크 /dev/sdb는 정상의 영역테이블을 포함하지않습니다.


※"디스크 / dev / xxx는 정상적인 영역 테이블을 포함하지 않습니다"메시지 / dev / xxx 장치가 대상이된다.

・신규 파티션 작성

# fdisk /sdb
<생략>
명령어(m 으로 help): n
명력어 액션
e 확장
p 기본영역 (1-4)
p
영역 (1-4): 1
최초실린더 (1-204, default 1):
Using default value 1
종점실린더 또는 +사이즈 또는 +사이즈M 또는  +사이즈K (1-204, default 204):
Using default value 204

명령어 (m 로 help): w

영역테이블은 교환되었다!

※할당 된 모든 장치에 파티션을 생성한다.

・rawdevice설정

# vi /etc/sysconfig/rawdevices
====
/dev/raw/raw1 /dev/sdb1
/dev/raw/raw2 /dev/sdc1
/dev/raw/raw3 /dev/sdd1


・RAW 디바이스 설정반영

# service rawdevices restart


・RAW 디바이스의 퍼미션설정(udev)

# vi /etc/udev/rules.d/65-raw-permissions.rules
====
# OCR&투표디스크용
ACTION=="add",KERNEL=="sdb1", RUN+="/bin/raw /dev/raw/raw1 %N"
ACTION=="add",KERNEL=="sdc1", RUN+="/bin/raw /dev/raw/raw2 %N"
ACTION=="add",KERNEL=="sdd1", RUN+="/bin/raw /dev/raw/raw3 %N"

#SYSTEM,SYSAUX,UNDO,TEMP, 유저영역등
ACTION=="add",KERNEL=="sde1", RUN+="/bin/raw /dev/raw/raw21 %N"
ACTION=="add",KERNEL=="sdf1", RUN+="/bin/raw /dev/raw/raw22 %N"
ACTION=="add",KERNEL=="sdg1", RUN+="/bin/raw /dev/raw/raw23 %N"
ACTION=="add",KERNEL=="sdh1", RUN+="/bin/raw /dev/raw/raw24 %N"
ACTION=="add",KERNEL=="sdi1", RUN+="/bin/raw /dev/raw/raw25 %N"

#Redolog(1),제어파일
ACTION=="add",KERNEL=="sdj1", RUN+="/bin/raw /dev/raw/raw41 %N"
#Redolog(2),제어파일(이중화)
ACTION=="add",KERNEL=="sdk1", RUN+="/bin/raw /dev/raw/raw42 %N"

#아카이브 로그용
ACTION=="add",KERNEL=="sdl1", RUN+="/bin/raw /dev/raw/raw11 %N"
ACTION=="add",KERNEL=="sdm1", RUN+="/bin/raw /dev/raw/raw12 %N"

#플래쉬 리커버리영역
ACTION=="add",KERNEL=="sdn1", RUN+="/bin/raw /dev/raw/raw31 %N"

# OCR&투표디스크용
KERNEL=="raw1", OWNER="grid", GROUP="oinstall", MODE="660"
KERNEL=="raw2", OWNER="grid", GROUP="oinstall", MODE="660"
KERNEL=="raw3", OWNER="grid", GROUP="oinstall", MODE="660"

#SYSTEM,SYSAUX,UNDO,TEMP, 유저영역등
KERNEL=="raw21", OWNER="grid", GROUP="oinstall", MODE="660"
KERNEL=="raw22", OWNER="grid", GROUP="oinstall", MODE="660"
KERNEL=="raw23", OWNER="grid", GROUP="oinstall", MODE="660"
KERNEL=="raw24", OWNER="grid", GROUP="oinstall", MODE="660"
KERNEL=="raw25", OWNER="grid", GROUP="oinstall", MODE="660"

#Redolog(1),제어파일
KERNEL=="raw41", OWNER="grid", GROUP="oinstall", MODE="660"
#Redolog(2),제어파일(이중화)
KERNEL=="raw42", OWNER="grid", GROUP="oinstall", MODE="660"

#아카이브 로그용
KERNEL=="raw11", OWNER="grid", GROUP="oinstall", MODE="660"
KERNEL=="raw12", OWNER="grid", GROUP="oinstall", MODE="660"

#플래쉬 리커버리영역
KERNEL=="raw31", OWNER="grid", GROUP="oinstall", MODE="660"



재기동하고 권한이 설정되어 있는지 확인한다

# ls -al /dev/raw/*
# raw -qa
/dev/raw/raw1: bound to major 8, minor 17
/dev/raw/raw2: bound to major 8, minor 33
/dev/raw/raw3: bound to major 8, minor 49



9.관련 패키지의 인스톨

・cvuqdisk
 ※세 번째 디스크 (p10404530_112030_Linux-x86-64_3of7.zip)

# unzip /media/p10404530_112030_Linux-x86-64_3of7.zip
# cd grid/rpm
# rpm -ivh cvuqdisk-1.0.9-1.rpm


・그외

# yum install libaio-devel
# yum install compat-libstdc++-33.x86_64
# yum install numactl-devel
# yum install sysstat
# yum install pdksh.x86_64


반응형

'IT > 인프라' 카테고리의 다른 글

SAN(Storage Area Network)  (0) 2017.12.07
vCenter Server란?  (0) 2017.11.24
Nginx의 로드 밸런서의 구축  (0) 2017.05.26
Redmine과Git의 이행  (0) 2017.05.26
Vagrant에 lxc를 사용한다.  (0) 2017.05.25
Comments