본문 바로가기

Oracle/RAC

RAC 개요

RAC (Real Application Cluster)


8i까지 사용되던 OPS(Oracle Parallel Server)의 단점이던 오류가 없을 시에는 Standby DB가 낭비된다는 부분을 개선하여 나온 기술이다.


구조는 하드 디스크(Storage)를 하나를 둔다. Node 1에서 작업을 하거나 Node2 에서 작업을 하거나 저장은 하나의 하드디스크에 저장한다. 그리고  2개의 DB 서버 모두 Active 상태이다.

Node 에는 엔진만 설치 되어 있고, 사용자가 저장하는 파일들은 하드 디스크에 저장된다. Data file, Log file, Control file 등이 하드디스크에 저장이 된다. 


▶장점

- Node1, Node2 모두 active 상태이기 때문에 부하가 OPS 보다 적게 발생한다.

- 모두 active 상태이기 때문에 장애가 발생해도 데이터 유실이 없고 실시간 보존이 가능하다.

- Rolling Patch, Rolling Upgrade로 서비스 정지를 최소화 시켜줌


▶단점

- 비용이 비싸고 구성이 어렵다.

- 모든 노드가 active이기에 유지비용이 많이 든다.



* RAC 설치시 필요 ip

  1. Public IP : 외부에서 클라이언트의 node 접속을 위한 ip

  2. Private IP (Inter Connect) : node간 연결(정보 이동)을 위한 ip로 사용자가 사용하는 것이 아닌 CRS가 node끼리 통신하는데 사용한다.

  3. Virtual IP : 클라이언트가 사용하는 가상의 ip로 가용성을 높이기 위해 사용. 클러스터웨어는 연결된 노드 중 하나가 죽으면 그 노드의 VIP를 다른 노드에 그 아이피를 추가시켜 그 아이피로 계속 접속할 수 있게 한다. 이 때 옮겨지는 ip가 Vip이다.

  4. Scan IP : 사용자를 instance에 분산하여 분배하기위해 필요한 ip (scan ip를 통해오는 접속을 CRS가 로드밸런싱 해준다.)

2. 구성요소

2. 구성요소

필요한 모든 메타 정보를 관리하는 db file (node1이 깨졌을 때 node2로 바꿔줄 수 있는 정보-fail over)

                   ONS 프로세스가 장애 발생시 ocr file을 읽어 장애 상항에 대한 정보를 알려준다.

② Voting Disk : split brain(SGA간 sync가 맞지 않은것) 현상을 예방하기 위한 misscount(노드간 heart beat 주기)와 disktimeout(disk와 node 간 heart beat 주기)정보를 관리하는 파일

[출처] RAC 구조|작성자 도도리① OCR file : 클러스터 구성에 

 OCR file : 클러스터 구성에 필요한 모든 메타 정보를 관리하는 db file (node1이 깨졌을 때 node2로 바꿔줄 수 있는 정보-fail over)

                   ONS 프로세스가 장애 발생시 ocr file을 읽어 장애 상항에 대한 정보를 알려준다.

② Voting Disk : split brain(SGA간 sync가 맞지 않은것) 현상을 예방하기 위한 misscount(노드간 heart beat 주기)와 disktimeout(disk와 node 간 heart beat 주기)정보를 관리하는 파일

[출처] RAC 구조|작성자 도도리

[출처] RAC구조|도도리



* OCR 파일과 Voting 디스크

  • OCR (Oracle Cluster Registry)

- RAC 클러스터 구성 정보 및 RAC 구성 인스턴스의 모든 메타 정보를 저장
- 한쪽 노드의 서비스 수행 도중 Fail시 넘어갈 예비 서비스 정보가 있다. (ex. 노드1이 깨졌을 때 노드2로 바꿔줄 수 있는 정보)
  • Voting Disk
- Split brain (노드간 SYNC가 일치하지 않는 현상) 방지하기 위한  miss count(노드간 heart beat 주기)와 disk timeout(disk와 node 간 heart beat 주기)정보를 관리하는 파일

★ OCR File과 Voting Disk는 ASM에 저장될 수 없으며, RAC를 구성하는 모든 인스턴스에서 접근 가능한 공유 디스크에 저장되어야 한다!
-> WHY?
OCR과 Voting Disk는 인스턴스 시작 전에 접근 되어야 하기 때문에


[출처] RAC 구조|작성자 도도리


* CTF와 TAF




 - CTF : 한 쪽의 Instance가 장애가 날 경우 신규접속자를 다른 Instance로 접속할 수 있게 하는 기술 (RAC 설치시 기본)

 - TAF : 한 쪽의 Instance가 장애가 날 경우 해당 Instance에 접속중이던 기존 접속자를 넘겨주는 기술 (별도로 설정해야 함)



* Cache Fusion

물리적으로 떨어져 있는 각 노드의 Buffer Cache를 논리적으로 하나의 Buffer Cache처럼 보이게 하고 사용하기 위한 기능.

Private Inter-connect Network를 통해 각 노드의 Buffer Cache 및 기타 관련 정보를 전송하게 된다.

메모리 TO 메모리로 전송이 가능하다.