이 문서에서는 Oracle Data Guard를 사용하여 온-프레미스 Oracle Database를 Azure VM(가상 머신)으로 마이그레이션하는 방법을 설명합니다. 이 문서에서는 Oracle Database 기술, Azure 컴퓨팅 및 Azure 네트워킹에 대한 기본적인 이해가 있다고 가정합니다. 이 시나리오는 Oracle 데이터베이스 워크로드를 Azure로 마이그레이션하는 시나리오를 기반으로 합니다.
아키텍처
다음 다이어그램은 이 시나리오의 예를 보여줍니다.
이 아키텍처의 Visio 파일을 다운로드합니다.
시나리오
다음 시나리오 세부 정보를 고려합니다.
온-프레미스 네트워크에는 기존 Oracle Database 인스턴스가 있으며 해당 인스턴스에서 Azure VM으로 데이터베이스를 마이그레이션하려고 합니다.
데이터베이스는 20TB이며 Oracle Enterprise Linux(x86)에서 실행됩니다. 데이터베이스 버전은 Oracle Database 19c, Enterprise Edition입니다.
데이터베이스는 두 개의 노드를 포함하는 RAC(실제 애플리케이션 클러스터)를 사용할 수 있습니다. 재해 복구의 경우 Oracle Data Guard를 통해 주 데이터베이스 위치에서 지리적으로 멀리 떨어진 다른 데이터 센터에 데이터베이스를 복제합니다.
온-프레미스 Oracle 데이터베이스 및 애플리케이션 서비스에 대한 평가를 수행하고 필요한 컴퓨팅 크기 및 스토리지 구성이 있는 VM을 Azure에 배포했습니다.
허브 가상 네트워크에 피어링되는 Oracle 가상 네트워크에 있는 데이터베이스 서브넷에 VM을 배치합니다. 데이터베이스 서브넷의 IP 주소 범위는 10.42.1.0/24입니다.
허브 가상 네트워크에서 트래픽은 FortiGate, Check Point 또는 Cisco와 같은 비 Microsoft NVA(네트워크 가상 어플라이언스)를 트래버스해야 합니다. NVA는 라우팅 디바이스로 작동하므로 VM과 온-프레미스 Oracle Database 구현 간의 연결을 완전히 라우팅할 수 있습니다. 온-프레미스에서 나가는 모든 트래픽을 검사하도록 NVA를 구성합니다. 허브 NVA의 IP 주소는 10.0.0.5입니다.
온-프레미스 네트워크에 대한 Azure ExpressRoute 연결을 통해 허브 가상 네트워크에서 하이브리드 연결을 구성합니다.
가능한 최소 가동 중지 시간으로 온-프레미스 데이터베이스를 Azure VM으로 마이그레이션해야 합니다. 마이그레이션에 Oracle Data Guard 및 RMAN(Oracle Recovery Manager)을 사용하기로 결정했습니다.
네트워크 연결 설정
마이그레이션에 Oracle Data Guard를 사용하려면 원본 및 대상 데이터베이스가 서로 통신할 수 있는지 확인해야 합니다.
- Azure 경로 테이블을 만들고 데이터베이스 서브넷과 연결합니다.
- Azure 경로 테이블을 허브 NVA의 IP 주소로 지정하여 온-프레미스 환경으로 라우팅합니다.
- 온-프레미스 환경과 데이터베이스 서브넷 간에 트래픽을 라우팅하도록 허브 NVA를 구성합니다.
경로 테이블 구성
다음 구성을 사용하여 Azure 경로 테이블을 만들고 데이터베이스 서브넷과 연결합니다.
- 주소 접두사: 192.168.0.0/16
- 다음 홉 유형: 가상 어플라이언스
- 다음 홉 IP 주소: 10.0.0.5
- 이름: <경로 테이블 이름>
다음 다이어그램은 업데이트된 네트워크 구성의 예를 보여줍니다.
연결을 확인하려면 다음 단계를 수행합니다.
- Azure VM에 로그인합니다. SSH(Secure Shell) 프로토콜을 사용하여 온-프레미스 데이터베이스 서버에 연결할 수 있는지 확인합니다.
- 온-프레미스 데이터베이스 서버에 로그인합니다. SSH 프로토콜을 사용하여 Azure VM에 대한 연결을 설정할 수 있는지 확인합니다.
마이그레이션 작업 수행
RMAN을 사용하여 온-프레미스 데이터베이스 서버에서 데이터베이스를 백업하고 대상 시스템에 복원합니다. 자세한 내용은 새 호스트에서 데이터베이스 복원을 참조 하세요.
데이터베이스 백업 파일 크기 및 네트워크 대역폭에 따라 해당 용도로 특별히 만든 디스크의 준비 영역 집합에서 백업 파일을 Azure VM에 직접 복사할 수 있습니다. 네트워크 대역폭 제약 조건으로 인해 해당 메서드를 사용할 수 없는 경우 Azure Data Box를 사용하여 백업 파일을 Azure에 복사할 수 있습니다. 파일이 Azure Blob Storage에 있으면 복원 작업을 위해 디스크의 Azure VM 준비 영역 집합에 복사해야 합니다.
온-프레미스 데이터베이스 서버(주 복제본)와 Azure VM 데이터베이스 서버(보조 복제본) 간에 Oracle Data Guard를 구성합니다. 자세한 내용은 실제 대기 데이터베이스 만들기를 참조 하세요.
Oracle Data Guard 복제가 완료되고 데이터베이스가 동기화되면 Azure VM으로 전환합니다. 자세한 내용은 역할 전환을 참조 하세요. 애플리케이션 팀과 이 단계를 조정하여 새 데이터베이스를 가리키도록 애플리케이션 서비스를 업데이트하는지 확인합니다.
가동 중지 시간을 최소화하려면 데이터베이스 마이그레이션과 병렬로 다음 애플리케이션 마이그레이션 작업을 수행합니다.
- 계획 및 토론에 따라 애플리케이션 서비스를 마이그레이션합니다.
- 연결 문자열, TNS(투명한 네트워크 기판) 항목 및 기타 필수 구성을 포함하여 새 데이터베이스를 가리키도록 애플리케이션 서비스를 업데이트합니다.
- 애플리케이션 서비스가 예상대로 작동하는지 확인합니다.
마이그레이션 후 활동 수행
Azure VM에서 데이터베이스에 대한 백업을 구성합니다. 자세한 내용은 Azure Linux VM의 Oracle Database에 대한 Backup 전략을 참조 하세요.
Azure VM은 Oracle RAC를 지원하지 않으므로 고가용성 및 재해 복구를 위해 Oracle Data Guard를 사용하는 것이 좋습니다. 자세한 내용은 Azure VM의 Oracle에 대한 비즈니스 연속성 및 재해 복구를 참조 하세요.
마이그레이션에 성공하려면 일정 기간 동안 온-프레미스 데이터베이스를 보조 Data Guard 복제본으로 실행합니다.
온-프레미스 데이터베이스가 더 이상 필요하지 않으면 데이터베이스와 서버를 서비스 해제합니다. 온-프레미스 환경과 Azure VM 간의 통신을 허용하도록 포트 및 방화벽에 대한 변경 내용을 검토합니다. 더 이상 필요하지 않은 변경 내용을 변환합니다.
결론
위의 구성을 변경하여 온-프레미스 환경에서 Azure VM으로 데이터베이스를 마이그레이션합니다. 구성 변경은 원본 및 대상 데이터베이스가 서로 통신할 수 있고 가동 중지 시간을 최소화하면서 마이그레이션을 수행할 수 있도록 하는 데 도움이 됩니다.
참가자
Microsoft에서 이 문서를 유지 관리합니다. 원래 다음 기여자가 작성했습니다.
- Jan Faurskov | 클라우드 솔루션 설계자
- 구허 카얄리 사리칸 | 클라우드 솔루션 설계자
비공개 LinkedIn 프로필을 보려면 LinkedIn에 로그인합니다.
다음 단계
다음 문서를 검토하여 구현이 권장 사례를 따르는지 확인합니다.