Google Cloud에서 Exadata Database Service에 대한 리전 간 재해 복구 구현

애플리케이션을 설계할 때는 무중단 업무 운영을 보장하기 위해 장애 발생 시 운영을 복원하기 위한 강력한 재해 복구 메커니즘을 구축해야 합니다. 데이터 센터에서 기존의 복제된 재해 복구 설정은 비용이 더 많이 들 수 있습니다. 따라서 많은 조직이 선행 인프라 비용을 최소화하고 필요에 맞게 확장 가능한 솔루션을 배포하기 위해 클라우드로 전환하고 있습니다.

수년 동안 고객은 온프레미스 및 Oracle Exadata Database Service 모두에서 미션 크리티컬 애플리케이션에 대한 복원력을 보장하기 위해 Oracle Maximum Availability Architecture(MAA)를 사용하여 Oracle Exadata Database Service를 신뢰했습니다. Oracle Database@Google CloudOracle Exadata Database ServiceOracle Cloud Infrastructure(OCI)에서 Exadata와 기능 및 가격 패리티를 제공하며, 고가용성 및 재해 복구를 보장하기 위해 여러 Google Cloud 리전에 배포할 수 있습니다.

구조

고가용성 Google Cloud 애플리케이션은 두 개의 Google Cloud 리전(기본 리전 및 대기 리전)에 배포됩니다.

이 아키텍처는 지역 간 재해 복구 토폴로지에서 Oracle Database@Google CloudOracle Exadata Database Service가 포함된 고가용성 Google Cloud 애플리케이션을 보여줍니다.



exadb-dr-db-google-cloud-oracle.zip

데이터 보호를 위해 Oracle Database는 기본 영역의 Exadata VM(가상 머신) 클러스터에서 실행되고 있으며, Active Data Guard는 대기 영역의 Exadata VM 클러스터에서 실행되는 대기 데이터베이스로 데이터를 복제합니다.

Google Cloud 네트워크를 통해 Active Data Guard 트래픽을 라우팅할 수 있습니다. 그러나 이 아키텍처는 네트워크 처리량 및 대기 시간을 최적화하기 위해 OCI 네트워크를 통한 Active Data Guard 네트워크 트래픽에 중점을 둡니다.

Oracle Database@Google Cloud 네트워크의 Oracle Exadata Database Service는 Oracle에서 관리하는 DRG(동적 라우팅 게이트웨이)를 사용하여 Exadata 클라이언트 서브넷에 연결됩니다. 또한 다른 지역의 VCN(가상 클라우드 네트워크) 간 피어 연결을 생성하려면 DRG가 필요합니다. OCI의 VCN당 하나의 DRG만 허용되므로 각 리전의 기본 및 대기 VCN을 연결하려면 자체 DRG를 사용하는 두 번째 VCN이 필요합니다.

데이터베이스 TDE(투명한 데이터 암호화) 키는 Oracle Cloud Infrastructure Vault에 저장되고 OCI 리전 간에 복제됩니다.

자동 백업은 기본 및 대기 영역에서 모두 Google Cloud 또는 OCI에 상주할 수 있는 Oracle Database Autonomous Recovery Service로 구성됩니다.

Oracle Database Autonomous Recovery Service는 자동 백업을 위한 선호 솔루션입니다. 또는 OCI Object Storage를 사용할 수도 있습니다.

구조에는 다음과 같은 구성 요소가 있습니다.

  • Google Cloud 지역

    Google Cloud 리전은 리소스 호스팅을 위한 데이터 센터 및 인프라를 포함하는 지리적 영역입니다. 영역은 영역으로 구성되며 영역 내에서 서로 격리됩니다.

  • 지역

    Oracle Cloud Infrastructure 리전은 하나 이상의 데이터 센터, 호스팅 가용성 도메인을 포함하는 지역화된 지리적 영역입니다. 지역은 다른 지역과 독립적이며, 먼 거리가 그들을 분리 할 수 있습니다 (국가 또는 대륙에 걸쳐).

  • Google Virtual Private Cloud

    Google Virtual Private Cloud(VPC)는 컴퓨트 엔진 가상 머신(VM) 인스턴스, Google Kubernetes Engine(GKE) 컨테이너, 데이터베이스 서비스 및 서버리스 워크로드에 네트워킹 기능을 제공합니다. VPC는 클라우드 기반 서비스를 위해 확장 가능하고 유연한 글로벌 네트워킹을 제공합니다.

  • VCN(가상 클라우드 네트워크) 및 서브넷

    VCN은 Oracle Cloud Infrastructure 지역에서 설정한 맞춤형 소프트웨어 정의 네트워크입니다. 기존의 데이터 센터 네트워크와 마찬가지로 VCN을 통해 네트워크 환경을 제어할 수 있습니다. VCN에는 VCN 생성 후 변경할 수 있는 겹치지 않는 CIDR 블록이 여러 개 있을 수 있습니다. VCN을 서브넷으로 분할할 수 있습니다. 서브넷은 지역 또는 가용성 도메인으로 범위가 지정될 수 있습니다. 각 서브넷은 VCN의 다른 서브넷과 겹치지 않는 연속적인 주소 범위로 구성됩니다. 생성 후 서브넷의 크기를 변경할 수 있습니다. 서브넷은 공용 또는 전용일 수 있습니다.

  • Oracle Exadata Database Service

    클라우드에서 Exadata의 성능을 활용할 수 있습니다. Oracle Exadata Database Service는 퍼블릭 클라우드에서 특별히 구축되고 최적화된 Oracle Exadata 인프라에 대해 입증된 Oracle Database 기능을 제공합니다. 모든 Oracle Database 워크로드에 대한 클라우드 자동화, 탄력적인 리소스 확장, 보안 및 빠른 성능이 내장되어 있어 관리를 간소화하고 비용을 절감할 수 있습니다.

  • VCN(가상 클라우드 네트워크) 및 서브넷

    VCN은 Oracle Cloud Infrastructure 지역에서 설정한 맞춤형 소프트웨어 정의 네트워크입니다. 기존의 데이터 센터 네트워크와 마찬가지로 VCN을 통해 네트워크 환경을 제어할 수 있습니다. VCN에는 VCN 생성 후 변경할 수 있는 겹치지 않는 CIDR 블록이 여러 개 있을 수 있습니다. VCN을 서브넷으로 분할할 수 있습니다. 서브넷은 지역 또는 가용성 도메인으로 범위가 지정될 수 있습니다. 각 서브넷은 VCN의 다른 서브넷과 겹치지 않는 연속적인 주소 범위로 구성됩니다. 생성 후 서브넷의 크기를 변경할 수 있습니다. 서브넷은 공용 또는 전용일 수 있습니다.

  • 오브젝트 스토리지

    OCI Object Storage는 데이터베이스 백업, 분석 데이터, 이미지 및 비디오와 같은 리치 콘텐츠 등 모든 콘텐츠 유형의 대량의 구조적 및 비구조적 데이터에 대한 액세스를 제공합니다. 인터넷 또는 클라우드 플랫폼 내에서 직접 데이터를 안전하고 안전하게 저장할 수 있습니다. 성능 또는 서비스 안정성이 저하되지 않고 스토리지를 확장할 수 있습니다.

    빠르고 즉각적이며 자주 액세스하는 데 필요한 "핫" 스토리지에 표준 스토리지를 사용합니다. 장기간 보존하고 거의 또는 거의 액세스하지 않는 "콜드" 스토리지에 아카이브 스토리지를 사용합니다.

  • Oracle Cloud Infrastructure Vault

    Oracle Cloud Infrastructure Vault를 사용하면 데이터를 보호하는 암호화 키와 클라우드의 리소스에 대한 액세스를 보호하는 데 사용하는 보안 자격 증명을 생성하고 중앙에서 관리할 수 있습니다. 기본 키 관리는 Oracle 관리 키입니다. OCI Vault를 사용하는 고객 관리 키를 사용할 수도 있습니다. OCI Vault는 Vault 및 키를 관리할 수 있는 다양한 REST API 세트를 제공합니다.

  • Oracle Database Autonomous Recovery Service

    Oracle Database Autonomous Recovery Service는 Oracle 데이터베이스를 보호하는 Oracle Cloud 서비스입니다. OCI 데이터베이스의 백업 자동화 및 향상된 데이터 보호 기능을 통해 모든 백업 처리 및 스토리지 요구 사항을 Oracle Database Autonomous Recovery Service로 오프로드할 수 있으므로 백업 인프라 비용과 수동 관리 오버헤드가 줄어듭니다.

  • 관리형 서비스

    관리형 서비스는 성능, 가용성, 확장, 보안 또는 업그레이드 최적화와 관련된 유지 관리 작업을 수행할 필요 없이 특정 기능을 제공합니다. 관리형 서비스를 사용하면 운영의 복잡성에 대해 걱정하지 않고 고객에게 기능을 제공하는 데 집중할 수 있습니다. 관리형 서비스는 클라우드 전용 개발을 위한 확장 가능하고 안전한 구성요소를 제공합니다. 관리형 서비스를 사용하여 앱을 개발 및 실행하고 데이터를 저장합니다. 앱을 구축하고 운영하기 위해 각 도메인에 대한 전문 지식 없이도 동급 최강의 솔루션을 얻을 수 있습니다.

  • 로컬 피어링

    로컬 피어링을 사용하면 한 VCN을 동일한 지역의 다른 VCN과 피어링할 수 있습니다. 피어링이란 VCN이 인터넷을 순회하거나 온프레미스 네트워크를 통해 라우팅하지 않고 전용(private) IP 주소를 사용하여 통신하는 것을 의미합니다.

  • 원격 피어링

    원격 피어링을 사용하면 서로 다른 VCN 내의 리소스가 전용(private) IP 주소를 사용하여 통신할 수 있습니다. 원격 피어링을 사용하면 다른 지역의 다른 VCN과 통신해야 하는 인스턴스에 대해 인터넷 게이트웨이 또는 공용 IP 주소가 필요하지 않습니다.

  • Data Guard

    Oracle Data Guard and Oracle Active Data Guard provide a comprehensive set of services that create, maintain, manage, and monitor one or more standby databases and that enable production Oracle databases to remain available without interruption. Oracle Data Guard는 인메모리 복제를 사용하여 이러한 대기 데이터베이스를 운영 데이터베이스의 복사본으로 유지 관리합니다. 계획되거나 계획되지 않은 운용중단으로 인해 운용 중인 데이터베이스를 사용할 수 없게 되면 Oracle Data Guard에서 대기 데이터베이스를 운용 롤로 전환하여 운용중단과 연관된 작동 중지 시간을 최소화할 수 있습니다. Oracle Active Data Guard는 읽기 대부분 작업 로드를 대기 데이터베이스로 오프로드하는 추가 기능을 제공하며 고급 데이터 보호 기능도 제공합니다.

  • Oracle Database@Google Cloud

    Oracle Database@Google Cloud는 Google Cloud 환경에서 Oracle Database 워크로드를 실행하는 Oracle Cloud 데이터베이스 서비스입니다. Oracle Database@Google Cloud용 모든 하드웨어는 Google Cloud의 데이터 센터에 함께 배치되며 Google Cloud 네트워킹을 사용합니다. 이 서비스는 Google Cloud 내에서 단일 운영 환경의 단순성, 보안 및 짧은 대기 시간의 이점을 제공합니다. Google Cloud 콘솔에서 또는 Google Cloud 자동화 도구를 사용하여 서비스를 관리할 수 있습니다. Google Cloud IAM 및 Admin은 Oracle Exadata Database Service에 대한 통합 ID 및 액세스 관리를 제공합니다.

권장사항

Oracle Database@Google Cloud에서 Oracle Exadata Database Service에 대해 리전 간 재해 복구를 수행할 때 다음 권장사항을 시작점으로 사용합니다. 요구 사항은 여기에 설명된 구조와 다를 수 있습니다.
  • 3~6개월마다 정기적인 애플리케이션 및 데이터베이스 전환 작업을 수행하거나 전체 애플리케이션 및 데이터베이스 페일오버 테스트를 수행합니다.
  • 기본 및 대기 영역 모두에 필요한 Exadata 인프라를 배치합니다. 각 Exadata 인스턴스에 대해 동일한 VPC(가상 프라이빗 클라우드)의 Exadata VM 클러스터를 다른 서브넷에 배치합니다. 그런 다음 Oracle RAC(Oracle Real Application Clusters) 데이터베이스를 클러스터에서 인스턴스화할 수 있습니다. 동일한 VPC에서 애플리케이션을 별도의 서브넷에 배포합니다. Configure Active Data Guard to replicate data from one Oracle Database to the other, across regions.
  • OCI 콘솔, OCI CLI, SDK, REST API와 같은 Oracle Cloud 자동화 툴을 사용하여 Oracle의 MAA(Maximum Availability Architecture) 모범 사례에 따라 Active Data Guard 대기 데이터베이스를 자동으로 프로비저닝합니다.

고려사항

Oracle Database@Google Cloud에서 Oracle Exadata Database Service에 대해 리전 간 재해 복구를 수행하는 경우 다음을 고려하십시오.

  • 다양한 비즈니스 요구 사항 및 가용성 아키텍처를 고려하는 포괄적인 재해 시나리오를 사용하여 준비합니다. 계획은 실행 가능해야 하며 HA(고가용성), DR(재해 복구) 요구 사항을 포함해야 합니다. 이 아키텍처는 OCI 및 Google Cloud 환경의 재해 복구 구성에 간단하고 효과적인 페일오버를 사용하여 애플리케이션 배포에 가장 적합한 접근 방식을 선택하는 데 도움이 되는 지침을 제공합니다.
  • (선택사항) 별도의 위치 또는 응용 프로그램 네트워크에서 Oracle Data Guard Observer를 별도의 VM에 설치하여 장애 발생 시 복구 시간을 줄이도록 자동 페일오버(Fast-Start Failover)를 사용으로 설정합니다.
  • OCI 또는 Google Cloud에 있는 Oracle Database Autonomous Recovery Service로 자동 백업을 구성할 수 있습니다.
  • OCI 자동화를 사용하여 대기 데이터베이스를 생성하는 동안 Oracle Data Guard 또는 Active Data Guard를 구성할 수 있습니다.

배치

영역 간 VCN 피어링을 구성하고 아키텍처 다이어그램에 표시된 영역 간에 네트워크 통신을 설정하려면 다음 고급 단계를 완료하십시오.

기본 영역

  1. Oracle Cloud Infrastructure(OCI) 기본 영역에 VCN(가상 클라우드 네트워크), HUB VCN 기본을 생성합니다.
  2. VCN 기본HUB VCN 기본에 각각 2개의 로컬 피어링 게이트웨이(LPG), Primary-LPGHUB-Primary-LPG를 배포합니다.
  3. HUB VCN 기본VCN 기본에 대해 LPG 간에 피어 LPG 연결을 설정합니다.
  4. 허브 VCN 기본 VCN에 기본 DRG인 동적 경로 지정 게이트웨이를 생성합니다.
  5. HUB VCN 기본 VCN에서 경로 테이블 primary_hub_transit_drg을 생성하고 VCN 기본 클라이언트 서브넷의 대상, LPG의 대상 유형 및 HUB-Primary-LPG 대상을 지정합니다. 예:
    10.5.0.0/24 target type: LPG, Target: Hub-Primary-LPG
  6. HUB VCN 기본 VCN에서 두번째 경로 테이블 primary_hub_transit_lpg을 생성하고 VCN 대기 클라이언트 서브넷의 대상, 대상 유형 DRG 및 대상 Primary-DRG를 지정합니다. 예:
    10.6.0.0/24 target type: DRG, Target: Primary-DRG
  7. 허브 VCN 기본 VCN에서 허브 VCN 기본을 DRG에 연결합니다. DRG VCN 연결을 편집하고 고급 옵션에서 탭 VCN 경로 테이블을 편집하여 primary_hub_transit_drg 경로 테이블과 연관시킵니다. 이 구성은 전송 경로 지정을 허용합니다.
  8. 허브 VCN 기본 VCN에서 primary_hub_transit_lpg 경로 테이블을 Hub-Primary-LPG 게이트웨이와 연관시킵니다.
  9. 허브 VCN 기본 경로 테이블에서 LPG를 사용할 VCN 기본 클라이언트 서브넷 IP 주소 범위에 대한 경로 규칙을 추가합니다. DRG를 사용할 VCN 대기 클라이언트 서브넷 IP 주소 범위에 대한 다른 경로 규칙을 추가합니다. 예:
    10.5.0.0/24 LPG Hub-Primary-LPG
    10.6.0.0/24 DRG Primary-DRG
  10. 기본 DRG에서 DRG 경로 테이블, RPC, VC 및 IPSec 연결에 대한 자동 생성된 DRG 경로 테이블을 선택합니다. VCN 기본 서브넷 클라이언트 IP 주소 범위에 다음 홉 연결 유형이 VCN이고 다음 홉 연결 이름이 기본 허브 연결허브 VCN 기본 VCN을 사용하는 정적 경로를 추가합니다. 예:
    10.5.0.0/24 VCN Primary Hub attachment
  11. 기본 DRG 원격 피어링 접속 연결 메뉴를 사용하여 원격 피어링 접속 RPC를 생성합니다.
  12. VCN 기본 클라이언트 서브넷에서 네트워크 보안 그룹(NSG)을 업데이트하여 TCP 포트 1521에 대한 수신을 허용하는 보안 규칙을 만듭니다. 선택적으로 데이터베이스 서버에 대한 직접 SSH 액세스를 위해 SSH 포트 22를 추가할 수 있습니다.

    주:

    보다 정확한 구성을 위해 Autogenerated DRG Route Table for RPC, VC, and IPSec attachments 경로 테이블의 임포트 경로 분포를 사용 안함으로 설정합니다. VCN 연결용 자동 생성된 DRG 경로 테이블의 경우 필요한 RPC 연결만 포함하여 새 임포트 경로 분포를 생성하고 지정합니다.

대기 영역

  1. OCI 대기 영역에 VCN, HUB VCN 대기를 생성합니다.
  2. VCN 대기HUB VCN 대기 VCN에 각각 Standby-LPGHUB-Standby-LPG의 두 LPG를 배포합니다.
  3. VCN 대기HUB VCN 대기에 대해 LPG 간에 피어 LPG 연결을 설정합니다.
  4. 허브 VCN 대기 VCN에 DRG, 대기 DRG를 생성합니다.
  5. HUB VCN 대기 VCN에서 경로 테이블 standby_hub_transit_drg을 생성하고 VCN 대기 클라이언트 서브넷의 대상, 대상 유형 LPG 및 대상 HUB-Standby-LPG를 지정합니다. 예:
    10.6.0.0/24 target type: LPG, Target: Hub-Standby-LPG
  6. HUB VCN 대기 VCN에서 두번째 경로 테이블 standby_hub_transit_lpg을 생성하고 VCN 기본 클라이언트 서브넷의 대상, 대상 유형 DRG 및 대상 대기 DRG를 지정합니다. 예:
    10.5.0.0/24 target type: DRG, Target: Standby-DRG
  7. HUB VCN 대기 VCN에서 허브 VCN 대기 VCN을 DRG에 연결합니다. DRG VCN 연결을 편집하고 고급 옵션에서 VCN 경로 테이블을 편집하여 standby_hub_transit_drg 경로 테이블과 연관시킵니다. 이 구성은 전송 경로 지정을 허용합니다.
  8. HUB VCN 대기 VCN의 허브 VCN 대기 기본 경로 테이블에서 VCN 대기 클라이언트 서브넷 IP 주소 범위에 대한 경로 규칙을 추가하여 LPG를 사용하고 VCN 기본 클라이언트 서브넷 IP 주소 범위에 대해 DRG를 사용합니다. 예:
    10.6.0.0/24 LPG Hub-Standby-LPG
    10.5.0.0/24 DRG Standby-DRG
  9. 경로 테이블 standby_hub_transit_lpgHub-Standby-LPG 게이트웨이와 연결합니다.
  10. 대기 DRG에서 DRG 경로 테이블 RPC, VC 및 IPSec 연결에 대한 자동 생성된 Drg Route Table을 선택합니다. VCN 대기 서브넷 클라이언트 IP 주소 범위에 다음 홉 연결 유형이 VCN이고 다음 홉 연결 이름이 대기 허브 연결허브 VCN 대기 VCN을 사용하는 정적 경로를 추가합니다. 예:
    10.6.0.0/24 VCN Standby Hub attachment
  11. Standby-DRG 원격 피어링 접속 연결 메뉴를 사용하여 원격 피어링 접속 RPC를 생성합니다.
  12. 원격 피어링 접속을 선택하고 접속 설정을 선택한 다음 기본 DRG OCID를 제공합니다. 피어링 상태가 피어링됩니다. 두 영역이 모두 연결되어 있습니다.
  13. VCN 대기 클라이언트 서브넷에서 NSG를 업데이트하여 TCP 포트 1521에 대한 수신을 허용하도록 보안 규칙을 생성합니다. 선택적으로 데이터베이스 서버에 대한 직접 SSH 액세스를 위해 SSH 포트 22를 추가할 수 있습니다.

Data Guard

다음 단계에 따라 Oracle Database에서 Oracle Data Guard 또는 Active Data Guard를 사용으로 설정합니다.

  1. Oracle Database 세부정보 페이지에서 Data Guard 그룹을 누른 다음 대기 추가를 누릅니다.
  2. Add Standby 페이지에서 다음을 수행합니다.
    1. 대기 피어 영역을 선택합니다.
    2. Google Cloud 영역에 매핑된 대기 가용성 도메인을 선택합니다.
    3. 대기 Exadata 인프라를 선택합니다.
    4. 원하는 대기 VM 클러스터를 선택합니다.
    5. Oracle Data Guard 또는 Active Data Guard를 선택합니다.

      주:

      Oracle MAA는 데이터 손상 자동 블록 복구 및 보고 오프로드 기능을 위해 Active Data Guard를 권장합니다.
    6. 영역 간 Oracle Data Guard 연관의 경우 최대 성능 보호 모드만 지원됩니다.
    7. 기존 데이터베이스 홈을 선택하거나 새로 생성하십시오.

      주:

      Oracle은 둘 다 동일한 패치를 사용할 수 있도록 standby database home에 대해 primary database의 동일한 데이터베이스 소프트웨어 이미지를 사용할 것을 권장합니다.
    8. SYS 사용자에 대한 비밀번호를 입력합니다.
    9. 대기 추가를 누릅니다.

    Oracle Data Guard가 사용으로 설정된 후 대기 데이터베이스가 Oracle Data Guard 그룹 섹션에 나열됩니다.

  3. (선택사항) 별도의 위치 또는 응용 프로그램 네트워크에서 Oracle Data Guard Observer를 별도의 VM에 설치하여 장애 발생 시 복구 시간을 줄이도록 자동 페일오버(Fast-Start Failover)를 사용으로 설정합니다.

확인

  • 작성자: Sinan Petrus Toma, Glen Hawkins, Julien Silverston
  • 제공자: Andy Steinorth, Lawrence To, Sreya Dutta