Oracle Data Guard용 Sun Cluster Geographic Edition 데이터 복제 안내서

3장 Oracle Data Guard 데이터 복제를 사용하는 서비스의 마이그레이션

이 장에서는 유지보수용 또는 클러스터 장애의 결과로 인한 서비스 마이그레이션에 대한 정보를 제공합니다.

이 장은 다음 내용으로 구성되어 있습니다.

Oracle Data Guard 데이터 복제를 사용하는 시스템의 클러스터 실패 감지

이 절에서는 기본 클러스터 또는 대기 클러스터에서 실패가 감지될 때 발생하는 내부 프로세스에 대해 설명합니다.

기본 클러스터 실패 감지

주어진 보호 그룹에 대한 기본 클러스터가 실패하면 파트너쉽의 대기 클러스터가 실패를 감지합니다. 실패하는 클러스터가 둘 이상 파트너쉽의 구성원인 경우 복수 실패 감지가 발생할 수 있습니다.

보호 그룹의 전체 상태가 Unknown 상태로 변경될 때 다음 작업이 나타납니다.

대기 클러스터의 실패 감지

주어진 보호 그룹에 대한 대기 클러스터가 실패하면 동일한 파트너쉽의 클러스터가 실패를 감지합니다. 실패한 클러스터가 둘 이상 파트너쉽의 구성원인 경우 복수 실패 감지가 발생할 수 있습니다.

실패 감지 중에 다음 조치가 발생합니다.

전환으로 Oracle Data Guard를 사용하는 서비스의 마이그레이션

파트너 클러스터로 서비스를 순차적으로 마이그레이션하려는 경우 Oracle Data Guard 보호 그룹의 전환을 수행합니다. 전환에는 다음 조작이 포함됩니다.

이 절에서는 다음 내용을 설명합니다.

Procedure기본 클러스터에서 대기 클러스터로 Oracle Data Guard 보호 그룹을 전환하는 방법

시작하기 전에

전환이 발생하려면 기본 클러스터와 대기 클러스터 사이에 데이터 복제가 활성 상태여야 합니다. 즉, Oracle Data Guard Broker 구성이 사용 가능합니다. 또한 Oracle Data Guard Broker show configuration 명령이 SUCCESS 상태를 표시해야 합니다. 이 상태는 이 Oracle Data Guard Broker 구성에 대한 Sun Cluster Geographic Edition 복제 자원의 상태에 반영되며, online 상태를 표시해야 합니다.

보호 그룹을 기본 클러스터에서 대기 클러스터로 전환하기 전에 다음 조건이 충족되어 있는지 확인합니다.

  1. 클러스터 노드에 로그인합니다.

    이 단계를 완료하려면 Geo Management RBAC 권한 프로파일이 할당되어야 합니다. RBAC에 대한 자세한 내용은 Sun Cluster Geographic Edition 시스템 관리 설명서Sun Cluster Geographic Edition 소프트웨어와 RBAC를 참조하십시오.

  2. 전환을 시작합니다.

    보호 그룹의 일부인 응용 프로그램 자원 그룹이 전환 중에 중지되고 시작됩니다.


    phys-node-n# geopg switchover [-f] -m newprimarycluster protectiongroupname
    
    -f

    사용자에게 확인을 요청하지 않고 강제로 명령이 조작을 수행하도록 합니다.

    -m newprimarycluster

    보호 그룹에 대한 기본 클러스터가 될 클러스터의 이름을 지정합니다.

    protectiongroupname

    보호 그룹의 이름을 지정합니다.


예 3–1 기본 클러스터에서 대기 클러스터로 강제 전환

이 예에서는 대기 클러스터로의 전환을 수행하는 방법을 보여줍니다.


phys-paris-1# geopg switchover -f -m cluster-newyork sales-pg

전환 동안 Sun Cluster Geographic Edition 소프트웨어가 수행하는 조치

geopg switchover 명령이 실행될 때 소프트웨어는 기본 클러스터에 실제로 기본 데이터베이스가 있는지 확인합니다. 이 명령은 Oracle Data Guard Broker 구성에서 원격 데이터베이스가 enabled 상태에 있는지 확인합니다. 또한 Oracle Data Guard 명령줄 인터페이스(dgmgrl) show configuration 명령을 실행하여 명령에서 SUCCESS 상태가 반환되는지 확인함으로써 구성이 양호한지 확인합니다. 이 명령의 출력에 Oracle Data Guard Broker가 고유한 상태 검사를 수행하고 있다고 표시되는 경우 Oracle Data Guard 명령줄 인터페이스는 SUCCESS 응답이 수신되거나 2분이 경과할 때까지 명령을 재시도합니다. 명령줄 인터페이스가 SUCCESS 응답을 받지 못하면 명령이 실패합니다. 구성이 양호한 경우 소프트웨어가 원래의 기본 클러스터에 다음 조치를 수행합니다.

원래의 대기 클러스터에서 명령은 다음 조치를 수행합니다.

명령이 성공적으로 완료되면 대기 클러스터 cluster-newyork이 보호 그룹에 대한 새 기본 클러스터로 전환됩니다. 원래의 기본 클러스터 cluster-paris는 새 대기 클러스터가 됩니다. 보호 그룹의 Oracle Data Guard Broker 구성과 연관된 데이터베이스는 로컬 클러스터의 보호 그룹 역할에 따라서 해당 역할이 반전되었습니다. Oracle 섀도우 RAC 서버 프록시 자원 그룹 및 다른 모든 응용 프로그램 자원 그룹은 새 기본 클러스터에서 온라인 상태입니다. 새 기본 클러스터에서 새 대기 클러스터로의 데이터 복제가 시작됩니다.

앞의 조작 중 하나라도 실패하는 경우 이 명령은 오류를 반환합니다. 각 구성 요소의 상태를 보려면 geoadm status 명령을 실행합니다. 예를 들어 보호 그룹의 Configuration 상태가 실패의 원인에 따라서 Error로 설정될 수 있습니다. 보호 그룹이 활성화 또는 비활성화될 수 있습니다.

보호 그룹의 Configuration 상태가 Error로 설정되는 경우, Oracle Data Guard 보호 그룹 검증 방법에서 설명하는 절차를 사용하여 보호 그룹을 재검증합니다.

보호 그룹의 구성이 각 파트너 클러스터에서 동일하지 않은 경우 Oracle Data Guard 보호 그룹 재동기화 방법에서 설명하는 절차를 사용하여 구성을 재동기화해야 합니다.

Oracle Data Guard를 사용하는 시스템에서 강제 인계

기본 데이터베이스와 대기 데이터베이스의 데이터가 완전히 일치하는지 여부와 관계 없이 응용 프로그램이 대기 클러스터에서 온라인 상태여야 할 때 인계를 수행합니다. 이 절에서는 보호 그룹이 시작되었다고 가정합니다.

인계가 시작된 후에 다음 조작이 수행됩니다.

인계 전후에 기본 및 대기 클러스터에 나타날 수 있는 상태에 대한 자세한 내용은 Sun Cluster Geographic Edition 시스템 관리 설명서의 부록 C, 인계 사후 조건를 참조하십시오.

이 절에서는 다음 내용을 설명합니다.

Procedure대기 클러스터로 Oracle Data Guard 서비스의 즉각적 인계를 강제 수행하는 방법

시작하기 전에

대기 클러스터가 기본 클러스터의 활동을 수행하도록 강제하려면 다음 조건이 충족되어 있는지 확인합니다.

  1. 대기 클러스터의 노드에 로그인합니다.

    이 단계를 완료하려면 Geo Management RBAC 권한 프로파일이 할당되어야 합니다. RBAC에 대한 자세한 내용은 Sun Cluster Geographic Edition 시스템 관리 설명서Sun Cluster Geographic Edition 소프트웨어와 RBAC를 참조하십시오.

  2. 인계를 시작합니다.


    phys-node-n# geopg takeover [-f] protectiongroupname
    
    -f

    사용자 확인 없이 강제로 명령이 조작을 수행하도록 합니다.

    protectiongroupname

    보호 그룹의 이름을 지정합니다.


예 3–2 대기 클러스터에 의한 인계 강제 수행

이 예에서는 대기 클러스터 cluster-newyork에 의한 sales-pg의 인계를 강제 수행하는 방법을 보여줍니다.

노드 phys-newyork-1은 대기 클러스터의 첫 번째 노드입니다. 어느 노드가 phys-newyork-1인지에 대한 미리 알림은 Sun Cluster Geographic Edition 시스템 관리 설명서Sun Cluster Geographic Edition 클러스터 구성 예을 참조하십시오.


phys-newyork-1# geopg takeover -f sales-pg

다음 순서

인계 전후에 기본 및 대기 클러스터에 나타날 수 있는 상태에 대한 자세한 내용은 Sun Cluster Geographic Edition 시스템 관리 설명서의 부록 C, 인계 사후 조건을 참조하십시오.

인계 동안 Sun Cluster Geographic Edition 소프트웨어가 수행하는 조치

geopg takeover 명령이 실행되면 소프트웨어는 사용 불가 데이터베이스로의 인계를 수행할 수 없을 때 대기 클러스터, 즉 향후 기본 클러스터의 Oracle Data Guard Broker 구성에 있는 데이터베이스가 사용 가능한지 확인합니다. 또한 소프트웨어는 Oracle Data Guard 명령줄 인터페이스 show configuration 명령이 SUCCESS 상태를 표시하는지 또는 상태 검사(ORA-16610)를 수행 중인지 확인합니다. show configuration 명령이 다른 Oracle 오류 코드를 반환하는 경우 인계에 실패합니다.

원래의 기본 클러스터 cluster-paris에 접근할 수 있는 경우 소프트웨어는 응용 프로그램 자원 그룹을 오프라인으로 전환하고 Unmanaged 상태로 만듭니다.

원래의 대기 클러스터 cluster-newyork에서 소프트웨어는 다음 조작을 수행합니다.

명령이 성공적으로 완료되면 대기 클러스터 cluster-newyork이 보호 그룹에 대한 새 기본 클러스터로 전환됩니다. 보호 그룹의 Oracle Data Guard Broker 구성과 연관된 데이터베이스는 로컬 클러스터의 보호 그룹 역할에 따라서 해당 역할이 반전되었습니다. Oracle 섀도우 RAC 서버 프록시 자원 그룹 및 다른 모든 응용 프로그램 자원 그룹은 새 기본 클러스터에서 온라인 상태입니다. 원래의 기본 클러스터에 접근할 수 있는 경우 보호 그룹의 새 대기 클러스터가 됩니다. 보호 그룹의 Oracle Data Guard Broker 구성과 연관된 모든 데이터베이스의 복제가 중지됩니다.


주의 – 주의 –

인계에 성공한 후 데이터 복제가 중지됩니다. 복제 일시 중단 상태를 계속 유지하려면 geopg start 명령을 사용할 때마다 -n 옵션을 지정합니다. 이 옵션은 새 기본 클러스터에서 새 대기 클러스터로 데이터 복제가 시작되지 않도록 합니다.


이전 조작이 실패하면 이 명령에서 오류가 반환됩니다. 각 구성 요소의 상태를 보려면 geoadm status 명령을 사용합니다. 예를 들어 보호 그룹의 Configuration 상태가 실패의 원인에 따라서 Error 상태로 설정될 수 있습니다. 보호 그룹이 활성화 또는 비활성화될 수 있습니다.

보호 그룹의 Configuration 상태가 Error 상태로 설정되는 경우, Oracle Data Guard 보호 그룹 검증 방법에서 설명하는 절차를 사용하여 보호 그룹을 재검증합니다.

보호 그룹의 구성이 각 파트너 클러스터에서 동일하지 않은 경우 Oracle Data Guard 보호 그룹 재동기화 방법에서 설명하는 절차를 사용하여 구성을 재동기화해야 합니다.

인계 후 Oracle Data Guard 데이터 복구

인계 조작이 성공한 후 대기 클러스터 cluster-newyork이 보호 그룹에 대한 기본 클러스터가 되고 서비스가 대기 클러스터에서 온라인으로 전환됩니다. 원래의 기본 클러스터가 복구된 후에 장애 복구라는 프로세스를 사용하여 원래 기본 클러스터에서 서비스가 다시 온라인으로 전환될 수 있습니다.

Sun Cluster Geographic Edition 소프트웨어는 다음 두 종류의 장애 복구를 지원합니다.

원래 기본 클러스터가 다시 시작된 후 새 기본 클러스터 cluster-newyork를 기본 클러스터로 유지하고 원래 기본 클러스터 cluster-paris를 대기 클러스터로 유지하려는 경우, 보호 그룹 구성을 재동기화하고 재검증할 수 있습니다. 전환 또는 인계를 수행하지 않고 보호 그룹을 재동기화하고 재검증할 수 있습니다.

이 절에서는 다음 절차를 수행하는 방법에 대해 설명합니다.

Procedure보호 그룹 구성의 재동기화 및 재검증 방법

원래 기본 클러스터 cluster-paris에 있는 데이터를 현재 기본 클러스터 cluster-newyork에 있는 데이터로 재동기화 및 재검증하려면 이 절차를 수행합니다.

시작하기 전에

보호 그룹 구성을 재동기화 및 재검증하기 전에 cluster-newyork에서 인계가 발생합니다. 클러스터는 이제 다음 역할을 갖습니다.

  1. 원래의 기본 클러스터 cluster-paris가 중지된 경우 클러스터가 부트되고 Sun Cluster Geographic Edition 기반 구조가 클러스터에서 사용 가능한지 확인합니다.

    클러스터 부트에 대한 자세한 내용은 Sun Cluster Geographic Edition 시스템 관리 설명서클러스터 부트를 참조하십시오.

  2. 원래 기본 클러스터 cluster-paris를 현재 기본 클러스터 cluster-newyork과 재동기화합니다.

    cluster-paris 클러스터는 자체 구성을 상실하고 cluster-newyork 구성을 로컬로 복제합니다. 파트너쉽 및 보호 그룹 구성을 재동기화합니다.

    1. cluster-paris에서 로컬 클러스터의 보호 그룹을 비활성화합니다.


      phys-paris-1# geopg stop -e local protectiongroupname
      
      -e local

      명령의 범위를 지정합니다.

      local 범위를 지정하면 명령이 로컬 클러스터에서만 작동합니다.


      주 –

      globallocal 같은 등록 정보 값은 대소문자를 구별하지 않습니다.


      protectiongroupname

      보호 그룹의 이름을 지정합니다.

      보호 그룹이 이미 비활성화된 경우, 응용 프로그램 자원 그룹이 관리 및 오프라인 상태이므로 보호 그룹의 자원 그룹 상태는 Error일 수도 있습니다.

      보호 그룹을 비활성화하면 응용 프로그램 자원 그룹이 더이상 관리되지 않으며 Error 상태가 지워집니다.

    2. cluster-paris에서, 파트너쉽을 재동기화합니다.


      phys-paris-1# geops update partnershipname
      

      주 –

      여러 보호 그룹을 재동기화할 경우에도 본 단계는 한번만 수행합니다.


      파트너쉽 동기화에 대한 자세한 내용은 Sun Cluster Geographic Edition 시스템 관리 설명서파트너쉽 재동기화를 참조하십시오.

    3. cluster-paris에서 각 보호 그룹을 재동기화합니다.

      cluster-newyork의 보호 그룹 역할이 primary이기 때문에 이 단계에서는 cluster-paris의 보호 그룹 역할이 secondary임을 확인합니다.


      phys-paris-1# geopg update protectiongroupname
      

      보호 그룹 동기화에 대한 자세한 내용은 Oracle Data Guard 보호 그룹 재동기화를 참조하십시오.

  3. cluster-paris에서 각 보호 그룹에 대한 구성을 검증합니다.


    phys-paris-1# geopg validate protectiongroupname
    

    자세한 내용은 Oracle Data Guard 보호 그룹 검증 방법을 참조하십시오.

  4. cluster-paris에서 각 보호 그룹을 활성화합니다.

    보호 그룹을 활성화할 때 해당 응용 프로그램 자원 그룹도 온라인이 됩니다.


    phys-paris-1# geopg start -e global protectiongroupname
    
    -e global

    명령의 범위를 지정합니다.

    global 범위를 지정하면 보호 그룹이 있는 두 클러스터에서 모두 명령이 작동합니다.


    주 –

    globallocal 같은 등록 정보 값은 대소문자를 구별하지 않습니다.


    protectiongroupname

    보호 그룹의 이름을 지정합니다.


    주의 – 주의 –

    현재 기본 클러스터 cluster-newyork에서 현재 대기 클러스터 cluster-paris로의 데이터 동기화가 필요하기 때문에 -n 옵션은 사용하지 마십시오.

    보호 그룹에 secondary 역할이 있으므로 데이터는 현재 기본 클러스터 cluster-newyork에서 현재 대기 클러스터 cluster-paris로 동기화됩니다.

    geopg start 명령에 대한 자세한 내용은 Oracle Data Guard 보호 그룹 활성화 방법을 참조하십시오.


  5. 모든 데이터가 동기화되었는지 확인합니다.

    1. cluster-newyork의 보호 그룹의 상태가 OK인지 확인합니다.


      phys-newyork-1# geoadm status
      

      출력의 Protection Group 섹션을 참조하십시오.

    2. 복제 자원 그룹 ODGprotectiongroupname-odg-rep-rg의 모든 자원이 OK 상태를 보고하는지 확인합니다.


      phys-newyork-1# clresource status -v ODGprotectiongroupname-odg-rep-rs
      

ProcedureOracle Data Guard 복제를 사용하는 시스템에서 장애 복구 전환을 수행하는 방법

이 클러스터의 데이터가 현재의 기본 클러스터 cluster-newyork의 데이터와 재동기화된 후, 이 절차를 수행하여 원래의 기본 클러스터 cluster-paris에서 응용 프로그램을 재시작합니다.

장애 복구 절차는 파트너쉽에 있는 클러스터에만 적용됩니다. 다음 절차는 각 파트너쉽에 대해 한번만 수행하면 됩니다.

시작하기 전에

장애 복구 전환을 수행하기 전에 인계가 cluster-newyork에서 발생했습니다. 클러스터는 이제 다음 역할을 갖습니다.

  1. 원래 기본 클러스터 cluster-paris가 실패한 경우 클러스터가 다시 시작되고 Sun Cluster Geographic Edition 기반 구조가 클러스터에서 사용 가능한지 확인합니다.

    클러스터 다시 시작에 대한 자세한 내용은 Sun Cluster Geographic Edition 시스템 관리 설명서클러스터 부트를 참조하십시오.

  2. 실패한 Oracle Data Guard 기본 데이터베이스를 새 대기 데이터베이스로 복구합니다.

    이 단계를 수행하는 방법을 설명하는 Oracle 설명서를 참조하십시오.

  3. 원래 기본 클러스터 cluster-paris가 Oracle Data Guard 구성의 일부로 올바르게 작동하는지 확인합니다.


    oracle (phys-paris-1)$ dgmgrl sys/sysdba_password@sales-svc
    DGMGRL> show configuration;
    

    원래 기본 클러스터 cluster-paris가 올바르게 작동하면 show configuration 명령은 SUCCESS 상태를 표시합니다.

    원래 기본 클러스터가 실패 시점에서 종료되면 해당 클러스터가 비활성화된 기본 클러스터로 표시됩니다. 원래 기본 클러스터가 실패 시점에서 시작되면 해당 클러스터가 비활성화된 보조 클러스터로 표시됩니다.

  4. 원래 기본 클러스터 cluster-paris를 현재 기본 클러스터 cluster-newyork과 재동기화합니다.

    cluster-paris 클러스터는 자체 구성을 상실하고 cluster-newyork 구성을 로컬로 복제합니다. 파트너쉽 및 보호 그룹 구성을 재동기화합니다.

    1. cluster-paris에서, 파트너쉽을 재동기화합니다.


      phys-paris-1# geops update partnershipname
      

      주 –

      파트너쉽의 여러 보호 그룹에 대해 장애 복구 전환을 수행하는 경우에도 각 파트너쉽에 대해 한 번만 이 단계를 수행하면 됩니다.


      파트너쉽 동기화에 대한 자세한 내용은 Sun Cluster Geographic Edition 시스템 관리 설명서파트너쉽 재동기화를 참조하십시오.

    2. 원래 기본 클러스터의 보호 그룹 cluster-paris가 활성 상태인지 확인합니다.


      phys-paris-1# geoadm status
      
    3. 원래 기본 클러스터의 보호 그룹이 활성 상태인 경우 보호 그룹을 중지합니다.


      phys-paris-1# geopg stop -e local protectiongroupname
      
      -e local

      명령의 범위를 지정합니다.

      local 범위를 지정하면 명령이 로컬 클러스터에서만 작동합니다.


      주 –

      globallocal 같은 등록 정보 값은 대소문자를 구별하지 않습니다.


      protectiongroupname

      보호 그룹의 이름을 지정합니다.

      보호 그룹이 이미 비활성화된 경우, 응용 프로그램 자원 그룹이 관리 및 오프라인 상태이므로 보호 그룹의 자원 그룹 상태는 Error일 수도 있습니다.

      보호 그룹을 비활성화하면 응용 프로그램 자원 그룹이 더이상 관리되지 않으며 Error 상태가 지워집니다.

    4. 보호 그룹이 중지되었는지 확인합니다


      phys-paris-1# geoadm status
      
    5. cluster-paris에서 각 보호 그룹을 재동기화합니다.

      이제 cluster-newyork에서 보호 그룹의 로컬 역할이 primary이기 때문에 이 단계에서는 cluster-paris 클러스터의 보호 그룹 역할이 secondary가 되는지 확인합니다.


      phys-paris-1# geopg update protectiongroupname
      

      보호 그룹 동기화에 대한 자세한 내용은 Oracle Data Guard 보호 그룹 재동기화를 참조하십시오.

  5. cluster-paris에서 각 보호 그룹에 대한 구성을 검증합니다.

    보호 그룹이 Error 상태일 때는 시작할 수 없습니다. 보호 그룹이 Error 상태가 아님을 확인합니다.


    phys-paris-1# geopg validate protectiongroupname
    

    자세한 내용은 Oracle Data Guard 보호 그룹 검증 방법을 참조하십시오.

  6. cluster-paris에서 각 보호 그룹을 활성화합니다.

    보호 그룹을 활성화할 때 그의 응용 프로그램 자원 그룹도 온라인이 됩니다.


    phys-paris-1# geopg start -e global protectiongroupname
    
    -e global

    명령의 범위를 지정합니다.

    global 범위를 지정하면 보호 그룹이 있는 두 클러스터에서 모두 명령이 작동합니다.


    주 –

    globallocal 같은 등록 정보 값은 대소문자를 구별하지 않습니다.


    protectiongroupname

    보호 그룹의 이름을 지정합니다.

  7. 데이터가 완전히 동기화되었는지 확인합니다.

    1. cluster-newyork의 보호 그룹의 상태가 OK인지 확인합니다.


      phys-newyork-1# geoadm status
      

      출력의 Protection Group 섹션을 참조하십시오.

    2. 복제 자원 그룹 ODGprotectiongroupname-odg-rep-rg의 모든 자원이 OK 상태를 보고하는지 확인합니다.


      phys-newyork-1# clresource status -v ODGprotectiongroupname-odg-rep-rs
      
  8. 두 파트너 클러스터 모두에서 보호 그룹이 활성화되어 있는지 확인합니다.


    phys-paris-1# geoadm status
    …
    phys-newyork-1# geoadm status
  9. 클러스터의 각 보호 그룹에 대해 cluster-newyork에서 cluster-paris로의 전환을 수행합니다.


    phys-node-n# geopg switchover [-f] -m cluster-paris protectiongroupname
    

    자세한 내용은 기본 클러스터에서 대기 클러스터로 Oracle Data Guard 보호 그룹을 전환하는 방법을 참조하십시오.

    cluster-paris 클러스터가 보호 그룹에 대한 기본 클러스터로서 원래 역할을 재개합니다.

  10. 전환이 성공적으로 수행되었는지 확인합니다.


    phys-node-n# geoadm status
    

    이제 보호 그룹이 cluster-paris에서 기본이고 cluster-newyork에서 보조임을 확인하고, Data replicationResource groups 등록 정보에 대해 표시된 상태가 두 클러스터에서 모두 OK임을 확인합니다.

  11. 각 Oracle Data Guard 보호 그룹에 대한 응용 프로그램 자원 그룹 및 데이터 복제의 런타임 상태를 확인합니다.


    phys-node-n# clresourcegroup status -v resourcegroupname
    # clresource status -v ODGConfigurationName-odg-rep-rs
    

    확인하려는 Oracle Data Guard Broker 구성에 대해 제공되는 StatusStatus Message 필드를 참조하십시오. 이 필드에 대한 자세한 내용은 표 2–1을 참조하십시오.

    데이터 복제의 런타임 상태에 대한 자세한 내용은 Oracle Data Guard 데이터 복제의 런타임 상태 확인을 참조하십시오.

ProcedureOracle Data Guard 복제를 사용하는 시스템에서 장애 복구 인계를 수행하는 방법

원래의 기본 클러스터 cluster-paris에서 응용 프로그램을 재시작하고 원래 기본 클러스터의 현재 데이터를 사용하려면 이 절차를 수행합니다.


주 –

대기 클러스터 cluster-newyork이 기본으로 작동하고 있는 동안 이 클러스터에서 발생한 모든 업데이트가 삭제됩니다.


장애 복구 절차는 파트너쉽에 있는 클러스터에만 적용됩니다. 다음 절차는 각 파트너쉽에 대해 한번만 수행하면 됩니다.


주 –

조건에 따라 원래의 기본 cluster-paris의 데이터 사용을 재개할 수 있습니다. 그러나 cluster-newyork에 대한 인계 조작 후에는 새로운 기본 cluster-newyork에서 원래의 기본 클러스터 cluster-paris로 데이터를 복제하지 않아야 합니다.


시작하기 전에

장애 복구 인계 절차를 시작하기 전에 클러스터에 다음 역할이 있어야 합니다.

  1. 원래 기본 클러스터 cluster-paris가 실패한 경우 클러스터가 다시 시작되고 Sun Cluster Geographic Edition 기반 구조가 클러스터에서 사용 가능한지 확인합니다.

    클러스터 다시 시작에 대한 자세한 내용은 Sun Cluster Geographic Edition 시스템 관리 설명서클러스터 부트를 참조하십시오.

  2. 원래 기본 데이터베이스가 실패하기 전에 새 Oracle Data Guard 기본 데이터베이스를 원래 기본 데이터베이스의 대기 데이터베이스로 복구합니다.

    이 단계를 수행하는 방법을 설명하는 Oracle 설명서를 참조하십시오.


    주 –

    dgmgrl 명령을 사용하여 Oracle Data Guard Broker 구성을 제거 및 다시 만들어야 할 수도 있습니다.


  3. 원래 기본 클러스터 cluster-paris가 Oracle Data Guard 구성의 일부로 다시 기본 클러스터로 올바르게 작동하는지 확인합니다.


    oracle (phys-paris-1)$ dgmgrl sys/sysdba_password@sales-svc
    DGMGRL> show configuration;
    

    원래 기본 클러스터 cluster-paris가 올바르게 작동하면 show configuration 명령은 SUCCESS 상태를 표시합니다.

    원래 기본 클러스터가 실패 시점에서 시작되면 해당 클러스터가 비활성화된 보조 클러스터로 표시됩니다. 또한 원래 대기 클러스터가 활성화된 기본 클러스터로 표시됩니다.

    원래 기본 클러스터가 실패 시점에서 종료되면 해당 클러스터가 비활성화된 기본 클러스터로 표시됩니다. 또한 원래 대기 클러스터가 활성화된 기본 클러스터로 표시됩니다.

  4. 원래 기본 클러스터 cluster-paris가 실패 시점에서 사작 또는 종료됩니까?

    • 원래 기본 클러스터 cluster-paris가 실패 시점에서 종료되면 원래 대기 클러스터 cluster-newyork를 보조 클러스터로 업데이트합니다.

      1. 새 기본 클러스터가 된 원래 대기 클러스터에서 보호 구룹을 중지합니다.


        phys-newyork-1# geopg stop -e local protectiongroupname
        
      2. 새 기본 클러스터가 된 원래 대기 클러스터에서 보호 구룹을 업데이트합니다.


        phys-newyork-1# geopg update protectiongroupname
        

        이제 역할은 정확하지만 두 클러스터는 모두 비활성화됨으로 표시됩니다.

        보호 그룹 동기화에 대한 자세한 내용은 Oracle Data Guard 보호 그룹 재동기화 방법을 참조하십시오.

      3. cluster-pariscluster-newyork에서 각 보호 구룹의 구성을 로컬로 검증합니다.

        보호 그룹이 Error 상태가 아님을 확인합니다. 보호 그룹이 Error 상태에 있을 때는 보호 그룹을 시작할 수 없습니다.


        phys-paris-1# geopg validate protectiongroupname
        phys-newyork-1# geopg validate protectiongroupname
        

        자세한 내용은 Oracle Data Guard 보호 그룹 검증 방법을 참조하십시오.

      4. 두 가지 중 하나의 클러스터의 임의 노드에서 두 클러스터의 보호 그룹을 모두 전역적으로 활성화합니다.


        # geopg start -e global protectiongroupname
        

        보호 구룹이 두 클러스터에서 모두 활성화되면 장애 복구 인계가 성공적으로 완료됩니다.

    • 원래 기본 클러스터 cluster-paris가 실패 시점에서 시작되면 보조 구성(즉 원래 구성)의 상태를 확인합니다.


      phys-newyork-1# geoadm status
      
      • Configuration의 상태가 OK로 설정되면 구성을 동기화합니다.

        1. 원래 기본 클러스터 cluster-paris에 있는 각 보호 구룹에 대해 인계를 시작합니다.


          phys-paris-1# geopg takeover [-f] protectiongroupname
          
        2. 원래 대기 클러스터 cluster-newyork의 구성이 Error로 표시되면 각 보호 구룹의 구성을 검증하십시오.


          cluster-newyork# geopg validate protectiongroupname
          

          자세한 내용은 Oracle Data Guard 보호 그룹 검증 방법을 참조하십시오.

        3. 두 클러스터에서 모두 보호 구룹을 전역적으로 활성화합니다.


          cluster-newyork# geopg start -e global protectiongroupname
          

          보호 구룹이 두 클러스터에서 모두 활성화되면 장애 복구 인계가 성공적으로 완료됩니다.

      • Configuration의 상태가 Error로 설정되면 이 문제를 해결하십시오.

        1. Error 상태인 보조 구성(즉 원래 기본 구성)을 비활성화합니다.


          phys-newyork-1#  geopg stop -e local protectiongroupname
          
        2. 인계를 강제로 시작하여 보조 구성을 다시 기본 구성으로 설정하고 기본 Oracle dgmgrl 구성과 일치합니다.


          phys-newyork-1# geopg takeover -f protectiongroupname
          
        3. cluster-pariscluster-newyork에서 각 보호 구룹의 구성을 로컬로 검증합니다.


          phys-paris-1# geopg validate protectiongroupname
          phys-newyork-1# geopg validate protectiongroupname
          

          자세한 내용은 Oracle Data Guard 보호 그룹 검증 방법을 참조하십시오.

        4. 두 가지 중 하나의 클러스터의 임의 노드에서 두 클러스터의 보호 그룹을 모두 전역적으로 활성화합니다.


          # geopg start -e global protectiongroupname
          

          보호 구룹이 두 클러스터에서 모두 활성화되면 장애 복구 인계가 성공적으로 완료됩니다.

Oracle Data Guard 데이터 복제 오류에서 복구

데이터 복제 레벨에서 오류가 발생할 때 오류가 관련 Oracle Data Guard Broker 구성의 복제 자원 그룹의 자원 상태에 반영됩니다.

예를 들어, 복제된 데이터베이스 sales가 포함된 Oracle Data Guard Broker 구성 sales-pg가 보호 모드 MaxAvailability에서 MaxPerformance로 변경되었다고 가정합니다. FAULTED에 대한 상태 변경은 다음 자원 상태에 반영됩니다.


Resource Status = "FAULTED"
Resource status message = "FAULTED - Protection mode "MaxAvailability" given 
for local database sales does not match configured value "MaxPerformance""

주 –

검사가 여전히 올바르게 실행 중이기 때문에 Resource State가 여전히 Online입니다.


자원 상태가 변했기 때문에 보호 그룹 상태도 변경됩니다. 이 경우에 로컬 Data Replication 상태, 로컬 클러스터의 Protection Group 상태 및 전체 Protection Group 상태가 모두 Error가 됩니다.

오류 상태에서 복구하려면 다음 절차를 수행합니다.

Procedure데이터 복제 오류에서 복구하는 방법

  1. Oracle Data Guard 설명서의 절차를 사용하여 FAULTED 상태의 원인을 판별합니다.

  2. 다음 Oracle Data Guard 절차를 수행하여 오류 상태에서 복구합니다.

    복구 절차가 Oracle Data Guard Broker 구성의 상태를 변경하는 경우 이 상태는 자원에 의해 자동으로 감지되며 새 보호 그룹 상태로서 보고됩니다. 복제 모드가 Sun Cluster Geographic Edition 설정과 일치하지 않는 경우 다음을 입력합니다.


    phys-paris-1# geopg modify-replication-component -p replication_mode=New-protection-mode \
    ODGConfigurationName protectiongroupname
    
  3. 보호 그룹 구성을 재검증합니다.


    phys-paris-1# geopg validate protectiongroupname
    

    여기서 protectiongroupname은 Oracle Data Guard 보호 그룹의 이름을 지정합니다.

  4. 보호 그룹 구성의 상태를 검토합니다.


    phys-paris-1# geopg list protectiongroupname
    

    여기서 protectiongroupname은 Oracle Data Guard 보호 그룹의 이름을 지정합니다.