파일 시스템 아티팩트를 OCI에 복제

보조 중간 계층에는 기본 데이터베이스의 SOA 도메인에서 사용하는 아티팩트의 복제본이 있어야 합니다. 아티팩트는 수정 빈도에 따라 정적 또는 동적일 수 있습니다. DR 설정의 일부로 아티팩트의 초기 복제를 수행해야 합니다. 이 초기 복제본은 시스템 수명 주기 동안 새로 고쳐집니다.

Artifact 정보

복제할 아티팩트 유형을 결정합니다.

  • 정적 아티팩트: 자주 변경되지 않는 파일과 디렉토리입니다. 다음과 같습니다.
    • Oracle 홈: 일반적으로 Oracle 홈과 Oracle WebLogic Server 홈으로 구성됩니다. Oracle Fusion Middleware를 사용하면 단일 이진 파일 설치에서 여러 Oracle WebLogic Server Managed Server를 만들 수 있습니다. 공유 저장소의 단일 위치에 이진 파일을 설치하고 다른 노드의 서버에서 이 설치를 재사용할 수 있습니다. 가용성을 최대화하기 위해 Oracle은 중복 이진 설치를 사용할 것을 권장합니다.
    • Oracle Inventory: orainventory는 기존 Oracle 홈 목록이 포함된 폴더이며 Oracle 홈에서 분리된 폴더에 있습니다. /etc/oraInst.loc 파일은 orainventory의 위치를 결정합니다.
  • 동적 아티팩트: 자주 변경되는 파일입니다. 이러한 아티팩트는 다음과 같습니다.
    • 도메인 홈: 관리 서버 및 관리 서버의 도메인 디렉토리입니다. EDG 토폴로지에서 ASERVER_HOME은 공유 위치에 있으며, MSERVER_HOME은 전용 위치에 있고 각 서버는 고유 MSERVER_HOME를 갖습니다(NFS에도 저장할 수 있음).
    • 애플리케이션 아티팩트(예: .ear 또는 .war 파일)입니다.
    • MDS 저장소 및 SOAINFRA 스키마와 같은 데이터베이스 아티팩트입니다.
    • JMS 제공자 및 트랜잭션 로그와 같은 영구 저장소 Oracle은 이러한 아티팩트를 데이터베이스에 저장할 것을 권장합니다. 이는 EDG 토폴로지에 권장되는 접근 방식이며, 특히 재해 복구(DR) 환경에서는 기본 Oracle Data Guard를 통해 대기 사이트에 자동으로 복제되기 때문에 유용합니다.
    • 파일 및 JMS 어댑터와 같은 기술 어댑터를 업데이트하는 데 사용되는 배치 계획입니다. 아티팩트가 배치되는 클러스터의 모든 노드에서 액세스할 수 있는 위치에 저장해야 합니다.
    • 파일 어댑터에서 사용되는 파일, MFT에서 전송한 파일 또는 기타 사용자정의 런타임 아티팩트와 같은 기타 런타임 아티팩트입니다.

데이터베이스에 상주하는 모든 콘텐츠(예: MDS 저장소, SOAINFRA 스키마, JMS 및 TLOG, 사용자정의 데이터)는 Oracle Data Guard를 통해 보조 사이트에 자동으로 복제됩니다.

재해 복구 토폴로지의 파일 시스템(예: Oracle 홈 및 WebLogic 도메인 구성)에 상주하는 컨텐츠를 복제하려면 다른 접근 방법을 사용할 수 있습니다. 가장 일반적인 복제본은 스토리지 레벨 복제, rsync 기반 복제 또는 DBFS 기반 복제입니다.

여기에 설명된 하이브리드 DR 모델은 기본 모델이 온프레미스이며 보조 모델이 OCI에 있는 곳입니다. 하이브리드 DR 모델에서는 스토리지 레벨 복제를 사용할 수 없습니다. 대신 rsync는 아티팩트를 기본에서 대기로 복제하는 권장 방법입니다. DBFS(Oracle Database File System) 기반 복제본을 사용하여 일부 아티팩트를 복제할 수 있습니다. 자세한 내용은 About Oracle Database File System의 세부정보를 참조하십시오.

폴더 및 파일 시스템 아티팩트 식별

기본 환경의 기본 SOA 호스트와 해당 컨텐츠에서 사용하는 NFS 볼륨 및 폴더를 식별합니다.

다음 표에서는 이 예에서 사용되는 기본 파일 시스템 아티팩트의 예를 제공합니다.

파일 시스템 볼륨 호스트 마운트 위치 폴더 설명 아티팩트 유형
NFS VOLFMW1 /export/soa/products1 소호스트1 /u01/oracle/products JDK 및 FMW 이진 파일에 대한 볼륨입니다. 정적
NFS VOLFMW2 /export/soa/products2 소호스트2 /u01/oracle/products JDK 및 FMW 이진 파일에 대한 볼륨입니다. 정적
NFS 볼륨 관리자/export/soa/config SOAHOST1, SOAHOST2 /u01/oracle/config 관리 서버 도메인 디렉토리 및 기타 공유 구성(예: 배치 계획, 애플리케이션 및 키 저장소)에 대한 볼륨입니다. 동적
로컬* /u02/oracle/config 소호스트1 /u02/oracle/config SOAHOST1의 전용 구성에 대한 볼륨 동적
로컬* /u02/oracle/config 소호스트2 /u02/oracle/config SOAHOST2의 개인 구성에 대한 볼륨 동적
NFS VOLRUNTIME /export/soa/runtime SOAHOST1, SOAHOST2 /u01/oracle/runtime

파일 어댑터에 사용되는 파일과 같은 공유 런타임 콘텐츠에 대한 볼륨 및 기타 런타임 아티팩트입니다.

주: 이 폴더 대신 JDBC 영구 저장소를 사용하여 JMS 메시지와 TLOGS를 데이터베이스에 저장하는 것이 좋습니다.

동적

* 로컬 파일 시스템 볼륨은 로컬 스토리지 대신 NFS에서 개인(비공유) 마운트일 수 있습니다.

다음 표는 폴더 위치에 대한 EDG 변수의 예입니다.

EDG 변수
ORACLE_BASE /u01/oracle/products
ORACLE_HOME /u01/oracle/products/fmw
JAVA_HOME /u01/oracle/products/jdk
SHARED_CONFIG_DIR /u01/oracle/config
APPLICATION_HOME /u01/oracle/config/applications/mysoadomain
DEPLOY_PLAN_HOME /u01/oracle/config/dp
KEYSTORE_HOME /u01/oracle/config/keystores
ASERVER_HOME /u01/oracle/config/domains/mysoadomain
PRIVATE_CONFIG_DIR /u02/oracle/config
MSERVER_HOME /u02/oracle/config/domains/mysoadomain
NM_HOME /u02/oracle/config/nodemanager
ORACLE_RUNTIME /u01/oracle/runtime

기본 호스트와 대기 호스트 간의 접속 확인

기본 SOA 호스트는 원격 대기 Oracle Cloud Infrastructure(OCI) SOA 호스트에 연결하고 그 반대의 경우도 마찬가지입니다.

원격 SOA 호스트의 물리적 이름을 DNS에서 분석할 수 있거나 원격 피어 SOA 호스트의 물리적 이름과 IP를 /etc/hosts 파일에 포함할 수 있습니다. 즉, 보조 SOA 호스트의 물리적 이름과 IP를 기본 SOA 호스트의 /etc/hosts 파일에 추가합니다. 마찬가지로 주 SOA 호스트의 물리적 이름과 IP를 보조 SOA 호스트의 /etc/hosts 파일에 추가합니다.

참고:

기본 서버가 가상 호스트 이름을 사용하고 있지 않고 서버의 수신 주소로 물리적 노드 호스트 이름을 사용하는 경우 이 단계를 수행하지 마십시오. 이 시나리오에서는 OCI SOA 호스트 IP가 대기 노드 호스트 이름을 확인해야 하기 때문입니다. 이 시나리오에서는 다음 단계를 수행하는 대신 호스트의 IP를 사용하여 원격 노드에 SSH로 연결합니다.
  1. 기본 온-프레미스 SOA 호스트의 /etc/hosts 파일을 편집하여 원격 피어 SOA 호스트의 물리적 이름과 IP 주소를 포함합니다.
    다음은 온-프레미스 호스트의 별칭 예입니다.
    
    #################################
    # ALIASES in on-prem
    #################################
    10.10.10.20   host-vip1.myopnetwork.com    host-vip1          ADMINVHN.example.com   ADMINVHN 
    10.10.10.13   host3.myopnnetwork.com       host3              SOAHOST1.example.com    SOAHOST1
    10.10.10.14   host4.myopnnetwork.com       host4              SOAHOST2.example.com    SOAHOST2
    # Front-end name (resolved but primary Load Balancer IP
    10.10.10.100    mysoa.example.com
    # Remote OCI soa hosts physical names (without virtual host name aliases!)
    100.70.10.13    hydrsoa1.midTiersubnet.hydrvcn.oraclevcn.com      hydrsoa1        
    100.70.10.14   hydrsoa2.midTiersubnet.hydrvcn.oraclevcn.com       hydrsoa2
  2. 대기 OCI SOA 호스트의 /etc/hosts 파일을 편집하여 원격 온-프레미스 SOA 호스트 물리적 이름을 포함합니다. 가상 호스트 이름 별칭을 포함하지 않습니다.
    다음은 대기 OCI SOA 호스트의 별칭 예입니다.
    #################################
    # ALIASES in OCI
    #################################
    100.70.10.20   hydrsoa-vip.midTiersubnet.hydrvcn.oraclevcn.com   hydrsoa-vip    ADMINVHN.example.com    ADMINVHN
    100.70.10.13   hydrsoa1.midtiersubnet.hydrvcn.oraclevcn.com      hydrsoa1       SOAHOST1.example.com    SOAHOST1
    100.70.10.14   hydrsoa2.midtiersubnet.hydrvcn.oraclevcn.com      hydrsoa2       SOAHOST2.example.com    SOAHOST2
    # Front-end name (resolved by secondary OCI LBR IP)
    1070.70.70    mysoa.example.com
    # Remote on-prem soa hosts physical names (without virtual host name aliases!)
    10.10.10.13   host3.myopnnetwork.com       host3
    10.10.10.14   host4.myopnnetwork.com       host4
  3. SSH 명령을 사용하여 기본 온-프레미스 SOA 호스트에서 보조 OCI SOA 호스트로 교차 접속을 확인합니다.
    OCI 컴퓨트 인스턴스에 접속할 때 ssh 키가 필요합니다.
    ssh -i my_private_key oracle@hydrsoa1.midtiersubnet.hydrvcn.oraclevcn.com
    ssh -i my_private_key oracle@hydrsoa2.midtiersubnet.hydrvcn.oraclevcn.com
  4. SSH 명령을 사용하여 보조 OCI SOA 호스트와 기본 온-프레미스 SOA 호스트 간의 교차 접속을 확인합니다.
    ssh 키가 필요하지 않을 수 있습니다.
    ssh  oracle@host3.myopnnetwork.com
    ssh  oracle@host4.myopnnetwork.com

보조 OCI 호스트의 폴더 구조 복제

이때 OCI(Oracle Cloud Infrastructure) SOA 컴퓨트 인스턴스에 FSS가 이미 마운트되어 있습니다. 콘텐츠를 복제하기 전에 EDG에 적합한 폴더 구조를 생성하십시오.

다음 예에서는 이 문서의 EDG 환경에서 사용되는 EDG 폴더 구조를 만드는 명령을 보여 줍니다.
  1. oracle 유저로 OCI SOAHOST1에서 폴더를 생성합니다.
    mkdir -p  /u01/oracle/products/fmw
    mkdir -p  /u01/oracle/products/jdk
    mkdir -p  /u01/oracle/products/oraInventory
    mkdir -p /u02/oracle/config
    mkdir -p /u01/oracle/config/domains/mysoadomain
    mkdir -p /u01/oracle/config/applications/mysoadomain
    mkdir -p /u01/oracle/config/dp/mysoadomain
    mkdir -p /u01/oracle/config/keystores
  2. oracle 유저로 OCI SOAHOST2에서 폴더를 생성합니다.
    mkdir -p  /u01/oracle/products/fmw
    mkdir -p  /u01/oracle/products/jdk
    mkdir -p  /u01/oracle/products/oraInventory
    mkdir -p /u02/oracle/config

ORACLE_HOMEJAVA_HOME을 보조 호스트에 복사

ORACLE_HOMEJAVA_HOME를 기본 호스트에서 보조 호스트로 복사합니다.

ORACLE_HOMEJAVA_HOME는 일반적으로 oraInventory와 함께 동일한 제품 폴더에 있습니다. 이전에 식별한 위치는 폴더 및 파일 시스템 아티팩트 식별을 참조하십시오.

  1. products 폴더를 온-프레미스(On-Premise) 기본 SOAHOST1에서 원격 SOAHOST1로 복사합니다.
  2. 온-프레미스 기본 SOAHOST2에서 제품 홈 폴더를 복사하여 원격 SOAHOST2에 저장합니다. 다른 컴퓨팅 인스턴스에 대해서도 이 과정을 반복합니다.
  3. 기본 호스트에서 /etc/oraInst.loc 파일을 복사하고 보조 호스트에 저장합니다.
    이 파일에는 oraInventory 위치만 포함되어 있으며 시간이 지남에 따라 변경되지 않으므로 이 복사본은 일회성 작업입니다.

    제공된 예제에서 oraInventory/u01/oracle/products 아래에 있으며 jdk 및 Oracle 홈과 함께 복사됩니다. oraInventory가 다른 위치에 있는 경우 보조 호스트에도 복사해야 합니다.

    참고:

    rsync를 사용하여 온프레미스 기본 SOAHOST1의 products 폴더를 Download Code의 원격 SOAHOST1로 복사하는 예제 스크립트를 찾을 수 있습니다. 동일한 절차를 반복하여 제품을 다른 보조 컴퓨트 인스턴스(즉, SOAHOST2에서 원격 SOAHOST2로)에 홈으로 복사합니다.

WebLogic 도메인 구성 폴더를 대기 호스트에 복사

WebLogic 도메인 공유 구성 폴더 및 전용 구성 폴더를 OCI(Oracle Cloud Infrastructure) SOA 호스트로 복사합니다.

  1. WebLogic 도메인 공유 구성 폴더를 온-프레미스 기본 SOAHOST1에서 원격 OCI SOAHOST1로 복사합니다.
    WebLogic 도메인 공유 구성은 SHARED_CONFIG_DIR 변수로 설계된 위치에 있으며 APPLICATION_HOME, DEPLOY_PLAN_HOME, KEYSTORE_HOME, ASERVER_HOME 등의 공유 구성 폴더를 포함합니다.

    참고:

    공유 구성 폴더를 온-프레미스 기본 SOAHOST1에서 원격 SOAHOST1로 복사할 수 있습니다. 이 폴더는 공유 폴더이므로 OCI SOA 호스트 중 하나에 복사하기만 하면 됩니다.

    예제 스크립트는 다운로드 코드에서 사용할 수 있습니다.

  2. 온-프레미스 기본 SOAHOST1의 WebLogic 도메인 전용 구성 폴더를 복사하여 원격 OCI SOAHOST1에 저장합니다.
    WebLogic 전용 구성은 PRIVATE_CONFIG_DIR 변수로 지정된 위치에 있으며 MSERVER_HOMENM_HOME 폴더를 포함합니다. 이러한 폴더는 공유되지 않으며 각 SOA 호스트에 대한 특정(전용) 폴더입니다. 따라서 각 서버에 대해 복사를 수행해야 합니다. 온-프레미스 SOAHOST1의 전용(private) 구성을 OCI SOAHOST1에 복사하고, 온-프레미스 SOAHOST2의 전용(private) 구성을 OCI SOAHOST2 등에 복사해야 합니다.

    참고:

    다운로드 코드에서 rsync를 사용하여 온프레미스 기본 SOAHOST1에서 원격 SOAHOST1로 전용 구성 폴더를 복사하는 예제 스크립트를 찾을 수 있습니다.

공유 런타임 폴더 복사

필요한 경우 공유 런타임 폴더를 Oracle Cloud Infrastructure(OCI) SOA 호스트로 복사합니다.

공유 런타임 폴더는 변수 ORACLE_RUNTIME로 지정된 위치에 있습니다. 이전에 식별한 위치는 폴더 및 파일 시스템 아티팩트 식별을 참조하십시오.

참고:

JDBC 영구 저장소를 사용하여 JMS 영구 저장소 및 TLOGS 저장소를 데이터베이스에 저장하는 것이 좋습니다. 데이터베이스에 있으므로 Oracle Data Guard를 사용하여 보조 시스템에 자동으로 복제됩니다.
  • 이 정보는 런타임 정보이므로 일반적으로 설정 단계 중 복제할 필요가 없습니다. 그러나 이 폴더를 대기 호스트에 복제해야 하는 경우 WebLogic 도메인 공유 구성 파일을 복사하는 데 사용한 유사한 접근 방법에 따라 콘텐츠를 복사할 수 있습니다.