OCI 블록 볼륨 복제 구현

이 구현에서는 OCI 블록 볼륨 영역 간 복제 기능을 사용하여 블록 볼륨을 복제합니다.

다음은 OCI 블록 볼륨 복제를 구현할 때의 장점입니다.

  • 다른 복제 경우처럼 스크립트를 주기적으로 만들고 실행할 필요가 없습니다. 복제를 설정하면 Oracle Cloud Infrastructure에서 자동으로 수행됩니다.
  • 부팅 볼륨을 제외한 모든 컴퓨팅 인스턴스의 모든 블록 볼륨에 적용 가능한 범용 솔루션입니다. 여러 시스템이 있는 경우 모든 시스템에서 동일한 접근 방식을 사용할 수 있습니다.
  • 복제된 블록 볼륨에 대한 정보는 기본 블록 볼륨의 정확한 복사본이며 블록 볼륨의 모든 파일이 복제됩니다.

OCI 블록 볼륨 복제를 사용하기 전에 다음을 고려하십시오.

  • 복제된 블록 볼륨을 보조 시스템에 마운트하는 단계가 필요합니다. 블록 볼륨의 복제본을 직접 마운트할 수 없습니다. 먼저 복제된 블록 볼륨을 활성화해야 마운트할 수 있습니다. 노드 수가 적은 시스템에서는 복잡하지 않지만 노드 수가 많으면 복잡성이 증가합니다. 특히 기본 및 대기 가용성 도메인에서 노드 배포가 동일하지 않은 시스템에서는 더욱 그렇습니다.

    그러나 Oracle Cloud Infrastructure Full Stack Disaster Recovery 서비스를 사용하여 전환, 페일오버 및 검증 작업에서 이러한 단계를 자동화하면 이러한 복잡성을 극복할 수 있습니다.

  • 이 기술은 많은 시스템에 충분하지 않을 수 있습니다. 시스템에 더 많은 유형의 스토리지(예: 공유 OCI 파일 스토리지 파일 시스템)가 있는 경우 해당 시스템에 다른 복제 기술을 사용해야 합니다.

OCI 블록 볼륨에 대한 복제 설정

OCI 블록 볼륨 복제를 구현하려면 다음 단계가 필요합니다.

  • OCI 콘솔을 사용하여 기본 영역에서 볼륨 그룹을 정의하고 복제해야 하는 블록 볼륨을 그룹화합니다.

    볼륨 그룹에는 동일한 AD(가용성 도메인)에 있는 블록 볼륨만 포함될 수 있으며, 그룹의 모든 블록 볼륨은 하나의 대상 AD에만 복제됩니다. 블록 볼륨이 둘 이상의 AD에 있는 경우 소스 및 대상 AD의 각 조합에 대해 블록 볼륨 그룹을 생성합니다.

  • 볼륨 그룹의 복제본을 보조 영역의 적절한 AD에 사용으로 설정합니다.
  • 보조 시스템의 중간 계층 호스트에 연결하고 기본 시스템에서 복제될 블록 볼륨을 마운트 해제합니다.
  • OCI 콘솔을 사용하여 기본 시스템에서 복제될 모든 블록 볼륨을 분리하고 폐기합니다. 더 이상 사용되지 않습니다.
  • 복제 후 적절한 정보로 블록 볼륨을 업데이트하여 블록 볼륨에 있는 사이트별 정보를 관리하는 방법을 구현합니다.

이 구현은 부트 볼륨을 제외한 모든 블록 볼륨에 적용됩니다. 부트 볼륨 복제는 다른 의미를 가지며 이 구현의 범위를 벗어납니다.

예제 1: OCI Block Volumes 복제를 사용하여 중간 계층 구성 블록 볼륨 복제

주:

이 예는 모든 중간 계층 시스템에 적용됩니다. OCI용 Oracle WebLogic Server 스택의 Oracle WebLogic 구성을 포함하는 블록 볼륨을 복제하는 방법에 대해 설명합니다. 그러나 동일한 단계에 따라 부트 볼륨을 제외하고 중간 계층 시스템의 다른 블록 볼륨을 복제할 수 있습니다.

다음 이미지는 OCI 블록 볼륨 영역 간 복제본이 있는 Oracle WebLogic Server 시스템의 예입니다.



wls-bv-교차 복제본-oracle.zip

블록 볼륨에 대한 영역 간 복제본을 설정하려면 다음 단계를 수행하십시오.

  1. 각 사이트와 관련된 정보를 백업합니다.

    블록 볼륨에는 데이터베이스 또는 LDAP 서버에 대한 연결 문자열과 같이 각 사이트에 특정한 정보가 포함된 파일이 포함될 수 있습니다.

    블록 볼륨 복제본을 사용하는 경우 복제된 블록 볼륨은 기본 블록 볼륨의 정확한 복사본이므로 복제본에서 특정 파일 또는 폴더를 건너뛸 수 없습니다. 따라서 각 사이트의 정보를 조정하여 이러한 차이를 관리해야 합니다. 다양한 접근 방식이 있습니다.

    • 파일에서 문자열 검색 및 교체를 사이트별 정보로 수행할 수 있습니다.
    • 복제 전에 이 정보를 백업하고 나중에 복원할 수 있습니다.

    이 시점에서 복제본을 활성화하기 전에 복제되는 블록 볼륨에 있는 사이트별 정보를 사용하여 파일을 식별하고 백업합니다. 복제된 블록 볼륨 아래에 없는 위치에 백업 복사본을 만듭니다. 그렇지 않으면 백업 복사본이 무효화됩니다.

    참고:

    Oracle WebLogic Server

    예를 들어, WebLogic 도메인이 포함된 블록 볼륨을 복제하는 경우 데이터베이스에 연결할 정보가 있는 파일이 있습니다. 이 정보는 TNS 관리 폴더에 있습니다. 폴더를 식별하려면 WebLogic 데이터 소스에서 tns_admin 속성을 확인합니다. 이 문서에서는 시나리오에 따라 적절한 접근 방식에 따라 이를 관리하는 스크립트를 제공합니다.

    • 시스템이 Oracle Base Database Service 또는 Oracle Exadata Database Service에 접속하는 경우 전환 및 페일오버 작업 중 보조 중간 계층 시스템의 tnsnames.ora 파일에서 데이터베이스 접속 문자열만 업데이트할 수 있습니다. 이 문서는 이에 대한 예제 스크립트를 제공합니다.
    • 시스템이 Oracle Autonomous Database에 연결하는 경우 TNS 관리 폴더에 더 많은 아티팩트(신뢰 저장소 및 키 저장소)가 포함됩니다. 기본 및 대기에서는 서로 다르며 간단한 문자열 대체로 업데이트할 수 없습니다. 이 문서에서는 TNS 폴더의 백업 복사본을 복원하는 스크립트를 제공합니다.

    이때는 TNS 폴더 정보의 백업만 수행하면 됩니다.

  2. 기본 중간 계층 호스트의 블록 볼륨을 식별합니다.
    1. OCI 콘솔로 이동하여 기본 영역을 선택하고 컴파트먼트를 선택합니다.
    2. 스토리지, 블록 볼륨 순으로 이동합니다. 블록 볼륨 및 마운트 지점을 식별합니다.
    3. 이름, 이름이 있는 AD, 연결된 호스트 및 마운트 지점을 기록해 둡니다.

    참고:

    Oracle WebLogic 사례

    예를 들어, Oracle WebLogic Server for OCIOracle SOA Suite on Marketplace 스택에 WebLogic 도메인을 포함하는 블록 볼륨은 데이터 블록 볼륨입니다. 해당 이름은 prefix-data-block-N(여기서 N은 호스트 노드의 번호)이며 각 호스트의 /u01/data에 마운트됩니다.

    기본 블록 볼륨 AD 호스트 마운트 위치
    prefix-data-block-0 AD1 prefix-wls-0 /u01/data
    prefix-data-block-1 AD2 prefix-wls-1 /u01/data

    Oracle 제품 홈을 저장하기 위한 추가 블록 볼륨이 있을 수 있습니다. 예를 들어, OCI용 Oracle WebLogic Server 스택에서 계산에는 /u01/app에 마운트된 prefix-mw-block-N 블록 볼륨도 포함됩니다.

    기본 스택에 대한 WLS-HYDR 프레임워크로 보조를 생성하는 경우 블록 볼륨 대신 Oracle 제품을 저장할 두 개의 중복 OCI 파일 스토리지 파일 시스템이 있습니다. 따라서 제품의 경우 기본은 블록 볼륨과 보조 OCI 파일 스토리지를 사용합니다. 원하는 경우 "mw" 블록 볼륨에 대한 진행 중인 복제도 구성할 수 있습니다. 기본 볼륨에 블록 볼륨 복제본을 구성하고 보조 제품의 OCI File Storage 파일 시스템을 제외하면 됩니다. 그러나 이러한 항목에는 Oracle 제품 홈이 포함되어 있으므로 이러한 항목을 지속적으로 복제할 필요는 없습니다. 자세한 내용은 "중간 계층 파일 아티팩트"를 참조하십시오.

  3. 보조 중간 계층 호스트에서 블록 볼륨을 식별합니다.
    이전 단계에서 설명한 단계를 반복하여 보조 중간 계층 호스트의 블록 볼륨에 대한 이름과 AD(가용성 도메인)를 가져옵니다.

    참고:

    Oracle WebLogic 사례

    WLS-HYDR 프레임워크를 사용하여 보조 시스템을 만드는 경우 호스트 및 블록 볼륨 이름의 접미어 번호가 기본과 다를 수 있습니다. 마켓플레이스 스택은 접미어 0,1,2,3을 사용하며, WLS-HYDR 프레임워크로 생성된 시스템은 접미어 1,2,3,4를 사용합니다. 피어 노드 및 볼륨을 올바르게 식별하는지 확인합니다. 예:

    블록 볼륨(보조) AD 호스트 마운트 위치
    prefixBV1 AD1 prefixhost-1 /u01/data
    prefixBV2 AD2 prefixhost-2 /u01/data
  4. 기본 볼륨에서 블록 볼륨 그룹을 생성하고 리전 간 복제를 사용으로 설정합니다.
    특정 AD에서 보조 AD의 특정 AD로 복제될 모든 블록 볼륨을 그룹화하려면 기본 클러스터에 블록 볼륨 그룹을 생성합니다. 복제본은 볼륨 그룹 레벨에서 사용으로 설정되므로 해당 그룹의 모든 블록 볼륨에 적용됩니다. 볼륨 그룹은 동일한 AD에 있는 블록 볼륨만 포함할 수 있으며, 그룹의 모든 블록 볼륨은 하나의 대상 AD에만 복제됩니다. 따라서 컴퓨팅 인스턴스가 둘 이상의 AD에 있는 경우 소스 및 대상 AD의 각 조합에 대한 블록 볼륨 그룹을 만듭니다.

    블록 볼륨 그룹을 만들고 영역 간 복제본을 사용으로 설정하려면 다음 단계를 수행합니다.

    1. 기본 영역의 OCI 콘솔에 로그온합니다.
    2. 저장소, 볼륨 그룹 순으로 이동합니다.
    3. 블록 볼륨 그룹을 생성합니다.
      예: prefix-BVGroup-region1AD1-region2AD1
    4. 볼륨 그룹 내에서 복제할 블록 볼륨을 추가합니다.

      주:

      부트 볼륨을 추가하지 마십시오. 복제되지 않습니다.
    5. 볼륨 그룹에서 영역 간 복제를 사용으로 설정합니다.
      • 대상 영역: 보조 영역을 선택합니다.
      • 가용성 도메인: 복제된 볼륨을 마운트할 컴퓨터가 있는 보조 영역에서 AD를 선택합니다.
      • 볼륨 그룹 복제본 이름: 복제본 블록 볼륨 그룹의 이름을 입력합니다. 명확성을 위해 기본 볼륨 그룹과 동일한 블록 볼륨 그룹을 사용하십시오.
    6. 변경사항을 저장합니다.
  5. 복제본이 보조 영역에 생성되었는지 확인합니다.
    1. OCI 콘솔에서 보조 리전을 선택합니다.
    2. 스토리지로 이동한 다음 블록 스토리지, 볼륨 그룹 복제본 순으로 누릅니다.
  6. 기본 컴퓨트 인스턴스가 둘 이상의 AD에 상주하는 경우 추가 블록 볼륨 그룹을 생성하는 단계를 반복합니다.

    참고:

    Oracle WebLogic 사례

    기본이 마켓플레이스 스택이고 보조가 WLS-HYDR로 생성된 경우:

    Oracle WebLogic Server for OCIOracle SOA Suite on Marketplace 스택: 영역에 여러 가용성 도메인(3)이 있는 경우 컴퓨트 인스턴스를 분산합니다. For example, node0 in AD1, node1 in AD2, node2 in AD3, node3 in AD1.

    WLS-HYDR에 의해 생성된 시스템: 영역에 여러 가용성 도메인(3)이 있는 경우 사용자는 컴퓨트 인스턴스를 분산할지 여부를 선택할 수 있습니다. 그렇다면 컴퓨트 인스턴스가 2개의 AD에 분산됩니다. For example, node1 in AD1, node2 in AD2, node3 in AD1, node4 in AD2.

    대상의 동일한 AD에 복제되는 블록 볼륨을 그룹화하려면 BV 그룹을 올바르게 정의해야 합니다. 볼륨 그룹은 동일한 AD에 있는 블록 볼륨만 포함할 수 있고 그룹의 모든 블록 볼륨은 하나의 대상 AD에만 복제할 수 있습니다. 혼합(동일한 원본 AD에서는 OCI 블록 볼륨, 대상 AD는 다르며 그 반대의 경우)이 있는 경우 모든 복제본 조합을 관리하려면 필요한 만큼 블록 볼륨 그룹을 생성해야 합니다. 다음은 몇 가지 예제 시나리오입니다.

    • 예 2, 노드 2개, 기본 및 보조 노드에서는 AD 1개만
      • 기본 리전: AD1의 node0, AD1의 node1
      • 보조 영역: node1(AD1), node2(AD1)

      해결책:

      기본 볼륨 그룹 1개, 보조 볼륨 그룹 1개로 복제

    • 예 3, 노드 2개, 기본 및 보조에서 AD 1개 이상
      • 기본 리전의 경우: node0(AD1), node1(AD2)
      • 보조 영역: AD1의 node1, AD2의 node2

      해결책:

      기본에는 다음과 같은 볼륨 그룹이 있습니다.

      • volume-group-AD1(node0의 BV 포함)이 보조 AD1(보조 node1용)에 복제됨
      • volume-group-AD2(node1의 BV 포함)이 보조 AD2(보조 node2용)에 복제됨
    • 예 4, 6개 노드, 기본 및 보조에서 1개 이상의 AD
      • 기본 영역: AD1의 node0, AD2의 node1, AD3의 node2, AD1의 node3, AD2의 node4, AD3의 node5
      • 보조 영역: AD1의 node1, AD2의 node2, AD1의 node3, AD2의 node4, AD1의 node5, AD2의 node6

      해결책:

      기본에는 여러 볼륨 그룹이 필요합니다. (스위치오버 후의 다른 방법에서도 동일함)

      • node0의 BV가 보조 AD1에 복제된 volume-group-reg1AD1-reg2AD1(보조 node1의 경우)
      • node1의 BV가 보조 AD2에 복제된 volume-group-reg1AD2-reg2AD2(보조 node2의 경우)
      • node2의 BV가 보조 AD1에 복제된 volume-group-reg1AD3-reg2AD1(보조 node3의 경우)
      • node3의 BV가 보조 AD2에 복제된 volume-group-reg1AD1-reg2AD2(보조 node4의 경우)
      • node4의 BV가 보조 AD1에 복제된 volume-group-reg1AD2-reg2AD1(보조 node5의 경우)
      • node5의 BV가 보조 AD2에 복제된 volume-group-reg1AD3-reg2AD2(보조 node6의 경우)
  7. 보조 중간 계층 호스트에서 원래 블록 볼륨을 분리합니다.

    주:

    부트 볼륨은 마운트 해제하거나 분리하지 않아야 합니다.

    보조 호스트의 중간 계층 호스트에 대해 다음을 수행합니다.
    1. 기본 볼륨에서 복제된 데이터 블록 볼륨을 마운트 해제합니다.
      실행 중인 Oracle 프로세스가 없는지 확인합니다. 그렇지 않으면 마운트 해제가 실패합니다.
      예제
      [opc@host ~]$ sudo umount /u01/data
    2. root 사용자로 /etc/fstab 파일을 편집하고 마운트 해제된 블록 볼륨에 대한 항목을 제거합니다.
      따라서 다음 재부트 시 원래 블록 볼륨을 마운트하려고 시도할 수 없습니다. /u01/data에 마운트된 볼륨에 대한 항목 예:
      ..
      #Remove this entry:
      #UUID=9e87cf72-a75c-4dff-9825-432f1668d8f9 /u01/data ext4 auto,defaults,_netdev,nofail 0 2
    3. OCI 콘솔에서 블록 볼륨을 분리합니다.
      블록 볼륨, 연결된 인스턴스, 인스턴스에서 분리 순으로 이동합니다. OCI 콘솔에서 분리를 완료하기 전에 일부 ISCSI 명령을 실행하도록 요청합니다.
    4. 보조 노드에 있는 모든 중간 계층 노드에서 이 단계를 반복합니다.
  8. 분리된 OCI 블록 볼륨을 보조 볼륨에서 삭제하거나 이름을 바꿉니다.
    보조 중간 계층 호스트에서 분리된 원래 데이터 블록 볼륨은 더 이상 사용되지 않습니다. 지금 삭제하거나 이름을 바꾸고 나중에 삭제할 수 있습니다.
  9. 보조 중간 계층 호스트에서 systemd 데몬을 다시 시작합니다.
    이전에 마운트된 장치에 대한 캐시된 참조를 새로 고치려면 다음 명령을 실행합니다.
    sudo systemctl daemon-reload
  10. 필요한 경우 각 사이트에 대한 정보를 바꾸도록 스크립트를 준비합니다.

    이 작업은 블록 볼륨에 각 사이트별 정보가 포함된 경우에만 적용됩니다. 그렇지 않은 경우 필요한 작업이 없습니다.

    특정 요구 사항에 따라 로컬 사이트 정보를 바꾸는 스크립트를 만듭니다. 예를 들어, 사이트별 데이터의 검색 및 바꾸기 또는 백업 복사본을 복원합니다. 이러한 스크립트는 복제되지 않은 폴더에 저장해야 합니다.

    이 시점에서 스크립트를 실행하지 마십시오. 다음에 검증, 스위치오버 또는 페일오버를 수행할 때 스크립트를 사용합니다.

    참고:

    Oracle WebLogic 사례

    예를 들어, WebLogic 도메인을 포함하는 블록 볼륨을 복제하는 경우입니다. 전환 또는 페일오버 중에는 로컬 데이터베이스를 가리키도록 구성을 교체해야 합니다. 이 문서에서는 이 교체를 자동화하는 예제 스크립트를 제공합니다.

    데이터베이스 유형 대체 스크립트 및 다운로드 단계 단계 준비
    Oracle Base Database Service 또는 Oracle Exadata Database Service

    replacement_script_BVmodel.sh

    1. GitHub https://github.com/oracle-samples/maa에서 MAA 저장소로 이동합니다.
    2. wls_mp_dr 디렉토리의 모든 스크립트를 다운로드합니다.

      이 스크립트는 wls_mp_dr/Block_Volume_Replica_Method 폴더에 있습니다.

    3. 모든 중간 계층 호스트에 복사합니다.

    이 스크립트는 데이터베이스 연결 문자열을 대체합니다. 또한 클린 시작을 위해 WebLogic 서버(.lck.state)의 상태 파일을 정리합니다.

    각 사이트의 데이터베이스에 대한 로컬 및 원격 값을 제공하여 적절한 값으로 각 호스트에서 편집하고 사용자 정의합니다.

    이 값은 사이트에 따라 다릅니다. site1 호스트에서 사용자 정의하는 경우 "LOCAL" 값은 site1의 값을 나타내고 "REMOTE" 값은 site2의 값을 나타냅니다. site2 호스트에서 스크립트를 사용자 정의할 때 "LOCAL" 값은 site2 및 "REMOTE" 값을 site1로 참조합니다.
    Autonomous Database

    fmwadb_switch_db_conn.sh

    1. GitHub https://github.com/oracle-samples/maa에서 MAA 저장소로 이동합니다.
    2. app_dr_common 디렉토리의 모든 스크립트를 다운로드합니다.

      fmw-wls-with-adb-dr 디렉토리의 모든 스크립트를 다운로드합니다.

    3. 모든 중간 계층 호스트에 복사합니다.

      스크립트는 서로 호출합니다.

    4. 두 디렉토리의 모든 스크립트를 동일한 폴더에 배치합니다.

    스크립트를 편집할 필요가 없습니다. 폴더 및 암호의 값은 입력으로 전달됩니다.

    스크립트를 실행하기 위해서:
    ./fmwadb_switch_db_conn.sh WALLET_DIR WALLET_PASSWORD

    여기서 WALLET_DIR는 로컬 데이터베이스에 연결할 tnsnames.ora, 키 저장소 및 보안 저장소 파일을 포함하는 폴더입니다.

    복제본에서 WALLET_DIR 폴더가 대체되지 않았는지 확인합니다.

    이 시점에서 스크립트를 실행하지 마십시오.

OCI 블록 볼륨에 대한 복제 검증

switchover 또는 failover 작업에서 복제된 정보는 프로세스가 시작되기 전에 standby site에서 available 및 usable이어야 합니다. 또한 스냅샷 모드에서 대기 데이터베이스를 열어 보조 시스템을 검증하는 경우에도 필요합니다.

이미지는 활성화 시 복제본에서 연결 가능한 OCI 블록 볼륨을 생성하는 방법을 보여줍니다.



활성화-생성-bv-oracle.zip

다음을 수행하여 복제된 볼륨을 사용 가능한 상태로 만들고 대기 시스템에서 사용할 수 있도록 합니다.

  1. 대기 사이트에서 복제본을 활성화합니다.
    OCI Block Volumes 복제본은 직접 마운트할 수 없습니다. 먼저 활성화해야 합니다. 블록 볼륨(BV) 복제본을 활성화하면 "연결 가능한" BV가 복제된 BV의 복제본으로 생성됩니다. 그런 다음 복제된 BV를 컴퓨팅 인스턴스에 연결할 수 있습니다.
    standby 사이트에서 복제본을 활성화하려면 다음 단계를 수행하십시오.
    1. OCI 콘솔에서 대기 사이트의 영역으로 이동합니다. 블록 스토리지, 볼륨 그룹 복제본 순으로 선택합니다.
    2. 볼륨 그룹 복제본을 누른 다음 활성화를 누릅니다.
    3. 이 활성화로 인해 생성된 볼륨 그룹의 이름을 지정합니다. 간소화를 위해 기본 영역과 동일한 이름을 사용합니다.
    4. 대기 사이트의 모든 볼륨 그룹 복제본에 대해 동일한 단계를 반복합니다.
  2. 복제된 블록 볼륨을 대기 사이트의 중간 계층 호스트에 연결합니다.
    1. OCI 콘솔에서 스토리지, 블록 볼륨을 차례로 선택하여 대기 사이트의 활성화 결과로 생성된 연결 가능한 OCI 블록 볼륨을 찾습니다.
    2. 해당 블록 볼륨을 해당 호스트에 연결합니다. 블록 볼륨, 연결된 인스턴스, 인스턴스에 연결 순으로 누릅니다. 절차를 간소화하려면 Oracle Cloud Agent를 사용해서 iSCSI로 연결된 볼륨에 자동으로 접속을 선택합니다.
      클라우드 에이전트는 iSCSI 명령을 자동으로 실행하므로 실행할 필요가 없습니다. 이를 사용하려면 호스트에서 블록 볼륨 관리 플러그인을 사용으로 설정해야 합니다.
    3. Oracle Cloud Agent를 사용하지 않는 경우 iSCSI 명령을 수동으로 실행합니다. 연결된 블록 볼륨의 ISCSI 명령 및 정보를 누르고 중간 계층 호스트의 "연결 명령"에 제공된 ISCSI 명령을 실행합니다.
  3. 복제된 블록 볼륨을 대기 호스트에 마운트합니다.
    각 블록 볼륨에 대해 다음을 수행합니다.
    1. 새 연결된 블록 볼륨의 UUID를 가져옵니다.
      블록 볼륨이 기본 사이트에 있는 UUID와 동일합니다. 예:
      [root@prefix-wls-0 opc]# sudo blkid
      /dev/sda3: UUID="974147f5-d731-41de-bba8-56ff78ed1c9c" TYPE="xfs"    PARTUUID="4a95c68a-bc70-4be9-bce8-b15e995fcf46"
      /dev/sda1: SEC_TYPE="msdos" UUID="593B-B893" TYPE="vfat" PARTLABEL="EFI System Partition" PARTUUID="c5ac3089-6a91-40e0-bcc1-212ba0b43418"
      /dev/sda2: UUID="9ca12daa-d7ea-44a2-8680-5b676488b054" TYPE="swap" PARTUUID="682a63d1-d3ec-4019-b372-43720aaae717"
      /dev/sdb: UUID="35e72262-979a-4d84-85ce-a6f91e3b1250" TYPE="ext4" 
      /dev/sdc: UUID="c293b5b5-005c-43e9-8c2f-02e873b76926" TYPE="ext4" 
    2. 아직 마운트되지 않은 경우 마운트할 호스트의 /etc/fstab 파일에 해당 UUID에 대한 항목을 추가하고 재부트 후 마운트를 지속합니다.
      기본 사이트와 동일한 파일 시스템 형식(예: ext4)을 사용해야 합니다. 예:
      UUID=c293b5b5-005c-43e9-8c2f-02e873b76926 /u01/data ext4  auto,defaults,_netdev,nofail
      복제된 각 블록 볼륨의 UUID는 동일한 값으로 유지됩니다. Oracle은 나중에 새로 추가된 항목을 /etc/fstab 파일에 보관할 것을 권장합니다. 따라서 systemd 데몬은 다음에 스위치오버 또는 페일오버 작업 중에 연결될 때 블록 볼륨을 자동으로 마운트합니다.
    3. 연결된 새 블록 볼륨을 마운트합니다. 장치가 연결될 때 해당 항목이 /etc/fstab 파일에 이미 있으면 블록 볼륨이 연결된 후 자동으로 마운트됩니다.
      다음 예는 새 연결된 블록 볼륨을 마운트하는 방법에 대한 것입니다.
      [root@prefix-wls-0 opc]# mount -a
      [root@prefix-wls-0 opc]# df -h| grep /u01/data
      /dev/sdb 49G 1.4G 46G 3% /u01/data
    4. 단계를 반복하여 활성화된 모든 블록 볼륨을 연결합니다.
  4. 보조 중간 계층 호스트에서 사이트별 정보를 바꿉니다.
    대체 스크립트는 보조 중간 계층 호스트의 사이트별 정보를 대체합니다.

    참고:

    WebLogic 도메인을 포함하는 블록 볼륨의 예

    모든 standby mid-tier 호스트에서 교체 스크립트를 실행하여 데이터베이스 연결 정보가 로컬 데이터베이스를 가리키도록 갱신합니다.

    1. 시스템에서 Oracle Base Database Service 또는 Oracle Exadata Database Service를 사용하는 경우 replacement_script_BVmodel.sh 스크립트를 실행합니다.

      적합한 값을 사용해야 합니다.

    2. 시스템에서 Oracle Autonomous Database를 사용하는 경우 fmwadb_switch_db_conn.sh 스크립트를 실행합니다.

      스크립트는 입력으로 보조 원본 전자 지갑이 있는 경로와 전자 지갑 암호를 요구합니다.

      tns_admin 폴더가 DOMAIN_HOME/config 폴더 아래에 있는 경우 관리 호스트에서만 스크립트를 실행할 수 있습니다. 나머지 노드는 관리 서버가 시작될 때 업데이트된 tnsnames.ora를 다운로드합니다. 그렇지 않은 경우 모든 중간 계층 호스트에서 스크립트를 실행합니다.

  5. 서버의 잠금 파일을 정리합니다.
    복제된 블록 볼륨은 기본 프로세스가 작동하는 동안 복제본이 실행되므로 중간 계층 프로세스의 잠금 파일을 포함할 수 있습니다. 보조 프로세스에서 프로세스를 시작하기 전에 이러한 파일을 정리해야 할 수 있습니다. 그렇지 않으면 중간 계층 프로세스가 시작되지 않도록 할 수 있습니다.

    참고:

    WebLogic 도메인을 포함하는 블록 볼륨의 예

    기본 폴더에서 가져온 ${DOMAIN_HOME}/servers/*/data/nodemanager 폴더에 .lck, .pid 또는 .state 파일이 있을 수 있습니다. 노드 관리자와 서버를 시작하기 전에 이러한 파일이 정리되었는지 확인합니다. 예를 들어, 다음과 같습니다.

    rm -f ${DOMAIN_HOME}/servers/*/data/nodemanager/*.lck
    rm -f ${DOMAIN_HOME}/servers/*/data/nodemanager/*.state
    rm -f ${DOMAIN_HOME}/servers/*/data/nodemanager/*.pid
    

    이 작업을 대체 스크립트에 포함하거나 Oracle WebLogic 시작의 이전 단계로 포함할 수 있습니다.

    활성화하면 이전 이미지와 같이 복제본에서 연결 가능한 블록 볼륨이 만들어집니다.
  6. 스위치오버 또는 페일오버가 완료되면 대기 역할이 지정된 사이트의 블록 볼륨을 분리하고 삭제해야 합니다. 또한 스냅샷 모드에서 standby database를 열어 standby site에 대한 검증을 완료했고 standby 롤로 되돌리려는 경우에도 필요합니다.
    1. 기본 사이트에서 복제되는 대기 사이트의 모든 블록 볼륨을 마운트 해제합니다.
      [root@prefix-wls-0 opc]# umount /u01/data
    2. 대기에서 블록 볼륨을 분리합니다.
      OCI 콘솔 UI(또는 API)를 사용하여 마운트 해제된 블록 볼륨을 대기 중간 계층 호스트에서 분리하면 나중에 대비할 수 있습니다. Oracle Cloud Agent를 사용하여 블록 볼륨을 연결한 경우 에이전트는 iSCSI 명령을 실행하여 iSCSI 대상을 로그오프합니다.
    3. 대기 데이터베이스에서 블록 볼륨 및 그룹을 삭제합니다.

      분리된 볼륨을 대기 중간 계층 호스트에서 삭제하거나 이름을 바꾸어 실수로 마운트하지 않도록 합니다.

      대기 사이트에서 사용되지 않은 볼륨 그룹을 삭제합니다. 그들은 더 이상 사용되지 않을 것입니다.

OCI 블록 볼륨에 대한 지속적인 복제 수행

이 구현을 사용할 때 진행 중인 복제에 대해 다음 권장 사항을 따르십시오.

  • OCI는 백그라운드에서 OCI Block Volumes 복제를 자동으로 수행합니다. 시스템의 수명 주기 동안 수행해야 하는 유일한 작업은 주 역할이 있는 시스템의 볼륨 그룹에서 영역 간 복제본이 사용으로 설정되었는지 확인하는 것입니다.
  • 전환 및 페일오버 작업을 자동화하려면 OCI Full Stack Disaster Recovery를 사용하는 것이 좋습니다. OCI 콘솔을 사용하여 클릭 한 번으로 전환 또는 복구 계획을 실행할 수 있는 기능을 제공합니다. 블록 볼륨 복제본과 관련된 모든 작업의 실행을 단순화하는 것이 매우 유용합니다.
  • 복제 기능은 대체 기능이 아니라 백업 기능을 보완합니다. 복제하는 블록 볼륨에 대해 백업 정책을 사용으로 설정해야 합니다. 이렇게 하면 영역 간 복제본 외에 데이터 보호 기능이 제공되므로 특정 시점으로 복원할 수 있습니다.
  • 각 사이트에 대한 정보를 유지 관리하고 최신 상태로 유지합니다. 예를 들어, 파일 시스템에 Oracle Autonomous Database에 연결할 아티팩트가 있는 폴더가 포함된 경우 이 폴더의 백업 복사본을 유지 관리합니다. 전자 지갑에서 갱신을 수행할 때 폴더 백업을 갱신해야 합니다. 이렇게 하면 이후 스위치오버 및 페일오버에서 올바르게 복원됩니다.
  • 스위치오버 또는 페일오버 작업 후 복제 방향을 변경합니다. 이를 위해 다음을 수행합니다.
    • 새 기본 사이트의 OCI 블록 볼륨 그룹에서 새 대기 사이트로 복제본을 사용으로 설정합니다.
    • 원래 기본 볼륨에서 이전 복제를 사용 안함으로 설정하고 사용되지 않는 블록 볼륨을 삭제합니다.