Oracle RAC를 NHN Cloud 하이브리드로: 서버는 그대로, 네트워크만 바꾸는 리로케이션

🤖 AI Summary
Oracle RAC를 클라우드로 옮기려 할 때 벽에 부딪힙니다. RAC는 퍼블릭 클라우드에서 구성과 지원에 제약이 크기 때문이죠. 그래서 선택하는 방법이 리로케이션입니다. 서버를 새로 짓는 마이그레이션이 아니라, 고객의 물리 서버와 OS, 디스크는 그대로 두고 네트워크 연결만 바꿔 NHN Cloud 기반 하이브리드에 편입시키는 것이죠. 핵심은 RAC를 세 개의 네트워크 축(Public의 IP·VIP·SCAN, Private 인터커넥트, 공유 스토리지)으로 보고, 이 세 층을 동시에 정합되게 바꾸는 것입니다. 그리고 순서가 중요합니다. OS 네트워크를 먼저 바꾸면 클러스터가 순환 의존에 빠지므로, "Oracle 먼저, 네트워크 나중에" 순서로 OCR과 GPnP를 미리 갈아끼운 뒤 재부팅 한 번으로 적용해야 합니다.
블로그 목차
마이그레이션이 아니라 리로케이션
Oracle RAC(Real Application Clusters)를 NHN Cloud 같은 하이브리드 환경으로 옮기려 하면 현실적인 장벽을 만납니다. RAC를 클라우드 환경에 그대로 올려 구성·지원하는 데 제약이 크기 때문입니다. 그래서 서버를 새로 구축하는 대신 다른 길을 택합니다.
바로 리로케이션입니다. 고객의 물리 서버, OS, 디스크는 그대로 유지하고, 네트워크 연결만 변경해 하이브리드 구성에 편입시키는 작업이죠. 이미 안정적으로 돌고 있는 시스템을 새로 짓는 게 아니라, "배선"만 바꾸는 것에 가깝습니다. 마이그레이션이 집을 새로 짓는 일이라면, 리로케이션은 이사 없이 전기와 통신 회선만 새 경로로 트는 일에 비유할 수 있습니다.
RAC를 네트워크로 보면 세 개의 축
무엇을 바꿔야 하는지 이해하려면, RAC의 네트워크 구조부터 봐야 합니다. 크게 세 축으로 나뉩니다.

여기서 두 가지가 특히 중요합니다. 첫째, Public IP·VIP·SCAN은 같은 서브넷에 있어야 한다는 Oracle의 설계 전제입니다. 둘째, SCAN은 DNS에서 여러 IP로 해석되도록 구성하고 hosts 파일에는 두지 않는다는 권고입니다. hosts는 하나의 IP만 반환할 수 있어 SCAN의 부하 분산 목적에 맞지 않기 때문이죠. 리로케이션은 이 세 축에 걸친 OS·Oracle·스토리지 설정을 동시에 정합되게 바꾸는 일이고, 한 층만 바뀌고 다른 층이 어긋나면 클러스터가 기동에 실패합니다.
왜 "Oracle 먼저, 네트워크 나중에"인가
리로케이션의 성패는 순서에 달려 있습니다. 직관적으로는 OS 네트워크부터 바꿀 것 같지만, 그렇게 하면 순환 의존(circular dependency)에 빠집니다.

핵심 전략은 이렇습니다. CRS가 정상 동작하는 현재 네트워크에서 Oracle 설정(OCR·GPnP)을 먼저 새 서브넷으로 바꿔두고, OS 네트워크 파일은 복사만 해둔 뒤, 재부팅 한 번으로 둘을 동시에 적용하는 것입니다. 그러면 재부팅 후 OS 네트워크와 Oracle 설정이 같은 새 환경에서 함께 올라옵니다.
이 과정에서 가장 까다로운 지점이 GPnP(Grid Plug and Play) 프로파일입니다. 이 프로파일에 이전 서브넷이 남아 있으면 재부팅 후 기동이 실패하는데, 프로파일은 디지털 서명이 있어 sed로 직접 고치면 서명이 깨져 무시됩니다. 반드시 gpnptool의 편집·서명·반영 절차를 따라야 합니다.
자주 하는 실수
실제 현장에서 마주치는 함정은 대체로 정해져 있습니다.
SCAN을 hosts에 고정: hosts는 단일 IP만 반환해 SCAN의 부하 분산에 맞지 않습니다. SCAN은 DNS로만 해석되게 두는 것이 원칙입니다.OS 네트워크를 먼저 변경: 위에서 본 순환 의존에 빠집니다. "Oracle 먼저" 전략은 바로 이 실수에서 도출됐습니다.GPnP 프로파일을 직접 편집: 서명이 깨져 변경이 무시됩니다. 전용 도구로 편집·서명·반영해야 합니다.
한 가지 더, 클러스터웨어 변경은 자동으로 롤백되지 않습니다. 그래서 변경 전에 네트워크와 클러스터 설정을 스냅샷으로 남겨 롤백 기준을 만들어 두고, OCR을 바꾸는 단계를 명확한 분기점으로 잡는 것이 안전합니다. 그 단계 전이라면 OS 파일 복원만으로 되돌릴 수 있고, 이후라면 OCR까지 되돌려야 합니다.
이것만 기억하세요
RAC를 클라우드로 옮길 때는 서버를 새로 짓는 마이그레이션 대신, 서버·OS·디스크는 그대로 두고 네트워크만 바꾸는 리로케이션이 현실적입니다. 핵심은 OS·Oracle·스토리지 세 층의 네트워크 정합을 동시에 맞추는 것이고, OS 네트워크를 먼저 바꾸면 클러스터가 순환 의존에 빠집니다. 그래서 "Oracle 먼저, 네트워크 나중에" 순서로 OCR·GPnP를 미리 갈아끼운 뒤 재부팅 한 번으로 적용하는 것이 안전합니다.
자주 묻는 질문 (FAQ)
Q. 마이그레이션과 리로케이션은 어떻게 다른가요?
마이그레이션은 서버를 새로 구축하고 데이터를 옮기는 작업이고, 리로케이션은 이미 동작하는 서버와 OS, 디스크를 그대로 두고 네트워크 연결만 바꾸는 작업이에요. Oracle RAC는 퍼블릭 클라우드에서 구성과 지원에 제약이 커서, 물리 서버를 새로 짓는 대신 네트워크만 바꿔 NHN Cloud 하이브리드에 편입시키는 리로케이션이 현실적인 선택이 됩니다.
Q. RAC 리로케이션에서 무엇을 바꿔야 하나요?
RAC를 네트워크로 보면 세 축이에요. Public 네트워크(노드 IP·VIP·SCAN), 노드 간 통신용 Private 네트워크(인터커넥트), 공유 스토리지(iSCSI 위의 ASM)입니다. 리로케이션에서는 이 세 층을 동시에 정합되게 바꿔야 하고, 한 층만 바뀌고 다른 층이 어긋나면 클러스터가 기동에 실패해요.
Q. 왜 OS 네트워크를 먼저 바꾸면 안 되나요?
순환 의존에 빠지기 때문이에요. 재부팅 후 클러스터웨어(CRS)가 시작하려면 OCR이 필요하고, OCR은 ASM 위에 있어 ASM이 필요한데, ASM의 네트워크 자원이 이전 서브넷을 가리켜 어긋나면 기동이 실패합니다. 그래서 CRS가 정상인 현재 네트워크에서 Oracle 설정을 먼저 바꾸고, OS 네트워크는 재부팅으로 함께 적용하는 'Oracle 먼저, 네트워크 나중에' 순서가 안전해요.
Q. SCAN은 왜 hosts 파일에 두면 안 되나요?
Oracle은 SCAN을 DNS에서 여러 IP로 해석되게 하고 hosts에는 등록하지 말 것을 권고해요. hosts는 하나의 IP만 반환할 수 있어 SCAN의 부하 분산 목적에 맞지 않고, 운영 중 변경도 어렵기 때문입니다. 그래서 리로케이션 자동화에서도 hosts의 SCAN 항목을 제거하고 DNS로만 해석되게 처리해요.
Q. RAC 리로케이션을 안전하게 하려면 어떻게 하나요?
변경 전 상태를 스냅샷으로 남겨 롤백 기준을 만들고, 세 층의 변경 대상을 미리 정리한 뒤 'Oracle 먼저, 네트워크 나중에' 순서로 진행하는 게 핵심이에요. 클러스터웨어 변경은 자동 롤백이 안 되니 분기점을 명확히 잡아야 합니다. RAC와 클러스터웨어 경험이 있는 파트너와 함께 점검하면 시행착오를 줄일 수 있어요. 스피디는 NHN Cloud 플래티넘 파트너로서 이런 이전을 함께 설계합니다.



