DR 토폴로지 구성

DR(재해 복구) 토폴로지를 설정합니다. 프로세스를 간소화하는 데 스크립트를 사용할 수 있습니다.

스크립트 다운로드

GitHub 저장소에서 최신 설치 스크립트를 가져옵니다.

참고:

다운로드한 모든 스크립트를 동일한 폴더에 배치합니다.
  1. GitHub 저장소로 이동합니다.
  2. maa/fmw-wls-with-adb-dr 디렉토리의 모든 스크립트를 다운로드합니다.
  3. maa/app_dr_common 디렉토리에 있는 모든 스크립트를 다운로드합니다.
    이 스크립트는 서로 호출합니다. 특정 작업이 특정 시점에 수행되더라도 전체 디렉토리를 다운로드하고 모든 스크립트를 동일한 폴더에 배치합니다. 기본 사이트와 보조 사이트 모두에 스크립트가 필요합니다.
  4. 이 문서의 지침에 따라 수행하는 각 작업의 각 스크립트에서 필요한 변수를 읽습니다.

다운로드된 파일에는 다음 작업을 수행하는 스크립트가 포함되어 있습니다.

  1. 데이터 소스에 대한 TNS 별칭 구성
  2. 초기 DR 구성 설정
  3. 진행 중인 복제 설정
  4. Oracle WebLogic Server, Oracle SOA 또는 Oracle Fusion Middleware 시스템에 대한 전자 지갑을 변경합니다.
각 스크립트는 DR 설정의 여러 부분과 재해 보호 시스템의 수명 주기에 대한 자동화를 제공합니다. 다음 표에서는 유틸리티에 대한 요약 정보를 제공합니다.
스크립트 이름 설명
fmwadb_config_replica.sh 사이트 간에 구성을 복제합니다.
fmwadb_dr_prim.sh DR 설정을 위한 기본 사이트를 준비합니다.
fmwadb_dr_stby.sh DR 설정을 위한 보조 사이트를 준비합니다.
fmwadb_rest_api_listabds.sh ADB ID 및 테넌시 정보를 기반으로 Autonomous Database 롤을 얻습니다.
fmwadb_switch_db_conn.sh 기존 연결 정보를 새 ADBS WALLET로 바꿉니다.
fmw_change_to_tns_alias.sh Oracle WebLogic 데이터 소스 및 jps config 파일에 사용되는 연결 문자열을 tns 별칭으로 바꿉니다.
fmw_dec_pwd.sh Oracle WebLogic 암호화 비밀번호를 해독합니다.
fmw_enc_pwd.sh Oracle WebLogic 암호화를 사용하여 암호를 암호화합니다.
fmw_get_connect_string.sh Oracle WebLogic, Oracle SOA 또는 Oracle Fusion Middleware 데이터 소스가 사용 중인 접속 문자열을 반환합니다.
fmw_get_ds_property.sh 특정 데이터 소스 속성의 값을 반환합니다.

가상 프런트엔드에 대한 기본 중간 계층 준비

기본 중간 계층이 가상 프론트 엔드 이름으로 아직 구성되지 않은 경우 이러한 작업을 수행하여 DR(재해 복구) 구성에 대비합니다.

  1. 모든 기본 중간 계층 호스트의 /etc/hosts 파일에 가상 프론트 엔드 이름 및 IP를 추가합니다.
    각 사이트는 DNS(도메인 이름 시스템)를 통한 클라이언트 관련 확인에 관계없이 항상 프론트엔드 이름을 로컬 로드 밸런서로 확인해야 합니다. root 사용자로 /etc/hosts 파일을 편집하고 기본 로드 밸런서 공용 IP를 가상 프론트 엔드 FQDN(정규화된 도메인 이름)에 매핑합니다. 모든 기본 Oracle WebLogic 호스트에서 반복합니다. 예:
    [oracle@wlsociprefix-wls-0 ~]$ more /etc/hosts
    (...)
    # Front-end virtual name
    111.111.111.111 mywebapps.example.com

    참고:

    스위치오버 또는 페일오버가 있는 경우 기본 Oracle WebLogic 호스트의 /etc/hosts 파일을 변경하면 안됩니다. 기본 Oracle WebLogic 호스트는 항상 프런트엔드 IP로 가상 프런트엔드 이름을 분석합니다. 스위치오버 및 페일오버 절차 중 필요한 DNS 업데이트는 클라이언트가 사용하는 DNS 또는 호스트 파일에서 수행됩니다.

  2. 프론트 엔드 이름을 클러스터 프론트 엔드로 구성합니다.
    1. 인스턴스의 Oracle WebLogic 콘솔에 로그인합니다.
    2. Environment(환경), Clusters(클러스터)로 차례로 이동한 다음 클러스터를 선택합니다.
    3. 구성, HTTP로 차례로 이동합니다.
    4. Fronted 호스트를 프론트 엔드 FQDN으로 설정합니다.
      예: mywebapps.example.com.
    5. HTTP 및 HTTPS에 대한 프론트엔드 포트가 값으로 올바르게 구성되었는지 확인하십시오.
    6. 저장, 활성화를 차례로 누릅니다.
  3. 클러스터를 다시 시작하여 변경 사항을 구현합니다.

TNS 별칭을 사용하도록 기본 데이터 소스 및 JPS 구성 수정

JDBC(Java Database Connectivity) URL에서 TNS(Transparent Network Substrate) 별칭을 사용하면 원격 새로고침 가능 복제본을 사용하여 Primary와 Standby 간에 이동하는 방식으로 Oracle WebLogic Server for Oracle Cloud Infrastructure 데이터 소스를 쉽게 재구성할 수 있습니다.

참고:

릴리스 23.1.1(2023년 2월) 이상으로 프로비전된 Oracle SOA Suite on Marketplace 인스턴스는 즉시 사용 가능한 TNS 별칭 접근 방식으로 구성됩니다. 이 경우 이 작업을 건너뛸 수 있습니다.

TNS 별칭을 사용하려면 데이터 소스 및 jps 파일에 Oracle Fusion Middleware 구성 파일에 oracle.net.tns_admin 변수가 포함되어야 합니다.

  1. grep 명령을 사용하여 Oracle Fusion Middleware 구성 파일에서 oracle.net.tns_admin 변수를 검색합니다.
    [oracle@soarefr-soa-0 ~]$ grep oracle.net.tns_admin ${DOMAIN_HOME}/config/fmwconfig/jps-config.xml 
    <property name="oracle.net.tns_admin" value="/u01/data/domains/soarefr_domain/config/atp"/>
    
    [oracle@soarefr-soa-0 ~]$ grep oracle.net.tns ${DOMAIN_HOME}/config/jdbc/opss-datasource-jdbc.xml  -A1 | grep value 
    <value>/u01/data/domains/soarefr_domain/config/atp</value>
    [oracle@soarefr-soa-0 ~]$
    jps-config.xml(및 데이터 소스)에 반영된 디렉토리는 WebLogic Server 도메인의 모든 노드에서 사용 가능하고 액세스할 수 있어야 합니다.
    • Oracle SOA Suite on Marketplace에서 이 디렉토리는 $DOMAIN_HOME/config/atp 디렉토리(릴리스 23.1.1 이전) 또는 $DOMAIN_HOME/config/tnsadmin 디렉토리(릴리스 23.1.1 이상)에 있으며 관리 서버가 시작될 때 WebLogic Server에 의해 다른 모든 노드로 자동으로 복제됩니다.

      참고:

      기본 Oracle SOA Suite on Marketplace가 23.1.1 이전인 경우 대기와 일치하도록 폴더를 $DOMAIN_HOME/config/tnsadmin 디렉토리로 이동하는 것이 좋습니다.
    • Oracle WebLogic Server for Oracle Cloud Infrastructure에서는 $DOMAIN_HOME/atpwallet에 있습니다.

      참고:

      전자 지갑이 DOMAIN_HOME/config 디렉토리 아래에 없는 경우 전자 지갑 디렉토리의 콘텐츠에 대한 변경사항은 Oracle WebLogic Server 기반 구조에 의해 자동으로 다른 노드로 복제되지 않습니다. 이 경우 전자 지갑 디렉토리를 변경하고 필요한 데이터 소스 구성을 업데이트하거나 업데이트될 때 다른 노드에 수동으로 복사해야 합니다.
    • 다른 구성에서는 공유 스토리지에 디렉토리를 배치할 수 있습니다.
    모든 경우에 WebLogic Server 도메인의 모든 다른 멤버가 동일한 tns_admin 디렉토리에 연결할 수 있어야 합니다. 이 디렉토리는 Oracle Autonomous Database에서 생성된 다양한 서비스에 대해 별칭이 다른 tnsnames.ora 파일을 포함합니다.

    다음은 Oracle Autonomous Database Serverless를 사용한 Oracle Fusion Middleware 구성에 대한 샘플 tnsnames.ora 파일입니다.

    [oracle@soarefr-soa-0 ~]$ cat 
    $DOMAIN_HOME}}/config/tnsadmin/tnsnames.ora
    soaadb1_high = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbvcn.adb.ap-mumbai-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_high.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
     
    soaadb1_low = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbvcn.adb.ap-mumbai-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_low.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
     
    soaadb1_medium = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbvcn.adb.ap-mumbai-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_medium.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
     
    soaadb1_tp = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbvcn.adb.ap-mumbai-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_tp.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
     
    soaadb1_tpurgent = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbvcn.adb.ap-mumbai-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_tpurgent.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))

    tnsnames.ora 파일에 대한 수정 사항은 WLS 데이터 소스에서 동적으로 사용됩니다. 즉, 데이터 소스를 다시 시작하지 않고도 tnsnames.ora 파일(예: 다른 서비스를 가리키기 위해)을 변경할 수 있습니다.

  2. Autonomous Database를 사용하는 Oracle SOA Suite on Marketplace 또는 Oracle WebLogic Server for Oracle Cloud Infrastructure 시스템에서 TNS 별칭을 사용하도록 표준 데이터 소스 구성을 수정하려면 fmw_change_to_tns_alias.sh 스크립트를 사용합니다.

    별칭은 $DOMAIN_HOME/config/jdbc 아래의 모든 데이터 소스 파일과 $DOMAIN_HOME/config/fmwconfig 아래의 jps config 파일에서 사용해야 합니다.

    참고:

    이 스크립트는 연결 문자열과 tns_admin 속성만 변경합니다. 다른 사용자정의 데이터 출처를 추가하는 경우 Oracle WebLogic, Oracle SOA Suite on MarketplaceOracle Fusion Middleware에 대한 내부 별칭과 마찬가지로 TNS 별칭도 사용해야 합니다.
    Oracle WebLogic Server for Oracle Cloud Infrastructure 또는 Oracle SOA Suite on MarketplaceOracle Autonomous Database를 사용하여 프로비전되는 경우 데이터베이스 전자 지갑의 구성이 데이터 소스(신뢰 저장소 위치, 키 저장소 위치 등)에 포함됩니다. 이러한 매개변수는 fmw_change_to_tns_alias.sh 스크립트에 의해 수정되지 않으며 TNS 별칭 사용 여부에 관계없이 유효합니다. 전자 지갑 디렉토리는 프로비전 중 Oracle WebLogic Server for Oracle Cloud InfrastructureOracle SOA Suite on Marketplace에서 생성되며 이미 tnsnames.ora 파일을 포함합니다. OCI의 자율운영 데이터베이스 UI에서 Oracle Autonomous Database 전자 지갑을 가져올 수도 있습니다.

    참고:

    Oracle WebLogic Server for Oracle Cloud InfrastructureOracle SOA Suite on Marketplace에서 사용되는 Oracle Autonomous Database 전자 지갑은 프로비전될 때 관리 서버 노드로 다운로드됩니다. 기본 및 대기 시스템의 전자 지갑은 Oracle Autonomous Database UI에서 다시 다운로드하고 $DOMAIN_HOME/config/jdbc 디렉토리 및 jps config 파일($DOMAIN_HOME/config/fmwconfig)에서 전자 지갑 비밀번호를 업데이트하여 업데이트할 수 있습니다. 기본, 대기 및 새로고침 가능 복제본의 전자 지갑에 대해 동일한 비밀번호를 사용하면 두 사이트에서 데이터 소스 구성을 쉽게 조작할 수 있지만 아래 제공된 스크립트는 다른 비밀번호를 처리할 수 있습니다. fmwadb_switch_db_conn.sh 스크립트를 사용하여 새 전자 지갑으로 시스템을 업데이트합니다.

    기본 시스템이 프로비저닝되면 프로비저닝 화면에서 Oracle Autonomous Database 서비스 수준 중 하나를 선택했습니다. 동일한 서비스 레벨을 사용하여 fmw_change_to_tns_alias.sh 스크립트를 실행합니다. Oracle Autonomous Database의 DB 서비스에 대한 서비스 수준은 낮음, 중간, 높음, 긴급입니다. 다음은 Oracle Fusion Middleware를 TNS 별칭으로 변경하는 예입니다.

    [oracle@soarefr-soa-0 ~]$ grep url /u01/data/domains/soarefr_domain/config/fmwconfig/jps-config.xml
    <property name="jdbc.url" value="jdbc:oracle:thin:@(description=(retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbvcn.adb.ap-mumbai-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_low.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))"/>
    [oracle@soarefr-soa-0 ~]$ grep url /u01/data/domains/soarefr_domain/config/jdbc/opss-datasource-jdbc.xml
    <url>jdbc:oracle:thin:@(description=(retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbvcn.adb.ap-mumbai-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_low.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))</url>
     
    NOTICE the "low" label in g914a2540e8ab6d_soaadb1_low.adb.oraclecloud.com, that is the service flag that will allow you identify the tns alias that needs to be used
     
    [oracle@soarefr-soa-0 good]$ cat $DOMAIN_HOME/config/atp/tnsnames.ora | grep low | awk -F '=' '{print $1}'
    soaadb1_low
     
    [oracle@soarefr-soa-0 good]$ ./fmw_change_to_tns_alias.sh soaadb1_low                                                                                          
    Getting variables from current datasource ...............
    An existing tns_admin property was found in /u01/data/domains/soarefr_domain/config/jdbc/opss-datasource-jdbc.xml and will be used
    Found soaadb1_low  as tns_alias
    No modifications will be required in /u01/data/domains/soarefr_domain/config/atp/tnsnames.ora
    *******************WILL USE THESE SETTINGS********************
    **************************************************************
    TNS admin:........................./u01/data/domains/soarefr_domain/config/atp
    TNS alias:........................ soaadb1_low
    Current connect string:............(description=(retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=rcsoaadb1.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_rcsoaadb1_low.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
    Current jps connect string:........(description=(retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=rcsoaadb1.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_rcsoaadb1_low.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
    Current tnsnames.ora:..............
    soaadb1_high = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=rcsoaadb1.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_rcsoaadb1_high.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
    soaadb1_low = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=rcsoaadb1.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_rcsoaadb1_low.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
    soaadb1_medium = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=rcsoaadb1.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_rcsoaadb1_medium.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
    soaadb1_tp = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=rcsoaadb1.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_rcsoaadb1_tp.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
    soaadb1_tpurgent = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=rcsoaadb1.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_rcsoaadb1_tpurgent.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
    **************************************************************
    Taking backup of existing config...
    ************** Replacing DB connect information **************
    Replacing jdbc url in config/jdbc files...
    Replacing jdbc url in config/fmwconfig files...
    Replacement complete!
     
    [oracle@soarefr-soa-0 ~]$ grep url $DOMAIN_HOME/config/fmwconfig/jps-config.xml
    <property name="jdbc.url" value="jdbc:oracle:thin:@soaadb1_low "/>
    [oracle@soarefr-soa-0 ~]$ grep url /u01/data/domains/soarefr_domain/config/jdbc/opss-datasource-jdbc.xml
        <url>jdbc:oracle:thin:@soaadb1_low </url>
    <property name="jdbc.url" value="jdbc:oracle:thin:@soaadb1_low "/>
    [oracle@soarefr-soa-0 ~]$
  3. 스크립트에서 수행된 변경사항을 소비하려면 도메인의 모든 Oracle WebLogic 서버를 재시작합니다.

보조 영역에 VCN 및 서브넷 생성

아직 수행하지 않은 경우 기본 영역의 CIDR과 충돌하지 않는 CIDR을 사용하여 대기 영역에 VCN을 생성합니다. 예를 들어, 기본 VCN이 10.1.0.0/16을 사용하는 경우 보조 VCN은 10.2.0.0/16을 사용할 수 있습니다.

  1. 보조 영역에 VCN 및 서브넷을 생성합니다.
    클라우드 스택을 생성하여 관련 클라우드 서비스 그룹을 프로비저닝할 수 있습니다.
  2. 보안 목록에서 계층 간 적절한 통신을 허용하는지 확인합니다.

    다음 통신을 확인합니다.

    • OCI 로드 밸런서에서 WebLogic 서버로
    • WebLogic 서버에서 데이터베이스로
    • WebLogic 서버에서 공유 스토리지로

    또한 DRG(동적 경로 지정 게이트웨이)를 통해 관리 서버 노드 간 통신을 허용하기 위한 필수 규칙을 포함합니다.

기본 및 보조 VCN 간 DRG 구성

재해 복구를 설정하려면 기본 및 보조 Oracle WebLogic Server 관리 노드가 서로 통신하여 Oracle Cloud Infrastructure File Storage 복사본을 통해 도메인 구성을 수신해야 합니다. 이를 위해서는 중간 계층 VCN 간에 DRG(동적 경로 지정 게이트웨이)를 만들어야 합니다.

  1. 중간 계층 VCN 간에 DRG를 만듭니다.
  2. 새 DRG가 선택한 구획 또는 영역의 동적 경로 지정 게이트웨이 페이지에 나타나는지 확인합니다.
    DR 설정 스크립트는 필요한 연결을 설정할 수 있는지 확인합니다.
  3. 기본 및 대기 VCN에서 적절한 경로 및 보안 규칙을 구성하여 중간 계층 간의 SSH 연결을 허용합니다.
  4. 기본 Oracle WebLogic Administration Server 노드에서 보조 Oracle WebLogic Administration Server 노드로 SSH 연결을 설정할 수 있는지 확인합니다.
    예를 들어, 10.2.1.104가 보조 관리 서버 노드의 IP인 경우 기본 관리 서버 노드에서 다음을 실행합니다.
    [opc@soarefr-soa-0 ~]$ ssh -i KeySOAMAA.ppk opc@10.2.1.104
    Last login: Wed Dec 14 16:59:15 2022 from 10.2.0.83
    [opc@soarefr-soa-0 ~]$

보조 영역에 Oracle Autonomous Data Guard 대기 생성

기존 기본 Oracle Autonomous Database에 대한 대기 데이터베이스를 생성합니다.

  1. Oracle Autonomous Database Serverless의 경우 보조 영역에 대기 Oracle Autonomous Database Serverless를 생성하십시오.
    1. OCI 콘솔의 왼쪽 탐색 메뉴에서 Oracle Database를 눌러 기본 Oracle Autonomous Database로 이동합니다.
    2. Autonomous Database Details 페이지의 Resources 아래에서 Disaster Recovery를 누른 다음 Add peer database를 누릅니다.
    3. 이전에 생성한 VCN 및 전용 서브넷을 사용합니다.
  2. Oracle Autonomous Database on Dedicated Exadata Infrastructure의 경우
    1. OCI 콘솔에서 자율운영 컨테이너 데이터베이스 세부정보 페이지로 이동하여 [리소스] 섹션에서 자율운영 Data Guard 연관 리소스를 선택합니다.
    2. 자율운영 Data Guard 사용을 누릅니다.
    3. 피어 자율운영 VM 클러스터 정보, 보호 모드 및 자동 복구 선택사항을 입력합니다. 필요한 정보를 모두 입력한 후 자율운영 Data Guard 사용을 누릅니다.
      이 워크플로우의 일부로 선택된 자율운영 VM 클러스터에 모든 대기 자율운영 데이터베이스가 포함된 새 대기 자율운영 컨테이너 데이터베이스가 생성됩니다.

DR 설정을 위한 대기 Autonomous Database 준비

이 작업은 Snapshot Standby 또는 Remote Refreshable Clone 접근 방식을 사용하는지에 따라 달라집니다.

Snapshot Standby 방식은 Convert the Standby into a Snapshot Standby를 참조하십시오.

원격 새로고침 가능 복제 접근 방법은 보조 영역에서 원격 새로고침 가능 복제 생성을 참조하십시오.

{\f2732 Standby}를{\f2732 Snapshot Standby}로 변환

{\f2732 Snapshot Standby }방법을 사용하여{\f2732 standby }자율운영 데이터베이스를{\f2732 Snapshot Standby}로 변환합니다{\f2732 .}

  1. Oracle Cloud Infrastructure 콘솔 왼쪽 탐색 메뉴에서 Autonomous Database를 누릅니다.
  2. 보조 영역에서 대기 Autonomous Database를 선택합니다.
  3. More Actions(추가 작업) 드롭다운 목록에서 Convert to snapshot standby database(스냅샷 대기 데이터베이스로 변환)를 누릅니다.
  4. 전용 인프라를 사용하는 경우 기본 데이터베이스 서비스 사용을 선택합니다.

참고:

Oracle Dedicated Exadata Infrastructure의 스냅샷 대기가 7일 내에 물리적 대기로 변환되지 않으면 스냅샷 대기가 자동으로 물리적 대기로 변환됩니다.

Oracle Autonomous Database Serverless의 스냅샷 대기가 2일 내에 물리적 대기로 변환되지 않으면 스냅샷 대기가 자동으로 물리적 대기로 변환됩니다.

보조 영역에 원격 새로고침 가능 복제본 생성

원격 새로고침 가능 복제 접근 방식을 사용하여 원격 영역의 기존 기본 Oracle Autonomous Database Serverless에서 새로고침 가능 복제본을 생성합니다.

  1. 기존 기본 Oracle Autonomous Database Serverless에서 새로고침 가능 복제본을 생성합니다.
    새로고침 가능한 복제본을 VCN 내부의 보조(원격) 영역과 이전에 생성한 전용 서브넷에 배치합니다.

    참고:

    물리적 대기에서 이미 사용 중인 이름이므로 기본 데이터베이스와 동일한 DB 이름을 사용할 수 없습니다.
  2. Private Endpoint Access Only를 사용하여 데이터베이스에 액세스합니다.

    생성된 후에는 새로고침 가능한 복제본이 접속된 상태로 읽기 전용 모드로 유지됩니다. Oracle WebLogic Server, Oracle SOAOracle Fusion Middleware 시스템에 대해 프로비전할 수 없습니다. 단, 읽기/쓰기로 변환되지 않습니다(기본 시스템에서 접속 해제됨).

  3. 기본 자율운영 데이터베이스에서 새로고침 가능 복제본을 접속 해제하고 읽기/쓰기 모드로 변환합니다.

    참고:

    원격 새로고침 가능 복제본은 24시간 이상 연결 해제된 상태로 유지할 수 없습니다. 예를 들어, 원격 새로고침 가능 복제 데이터베이스를 가리키는 보조 중간 계층을 만드는 데 24시간 이상 걸릴 수 없습니다.
    1. Oracle Cloud Infrastructure 왼쪽 탐색 메뉴에서 Autonomous Database를 누릅니다.
    2. 새로고침 가능한 복제본 이름을 선택합니다.
    3. 소스 데이터베이스를 선택한 다음 연결 해제를 누릅니다.

보조 시스템 프로비전

보조 데이터베이스(스냅샷 대기 접근 방식) 또는 새로고침 가능 복제본(원격 새로고침 가능 복제본 접근 방식)을 가리키는 Oracle Fusion Middleware(시스템)를 사용하는 보조 Oracle WebLogic Server for Oracle Cloud Infrastructure, Oracle SOA Suite on Marketplace 또는 기타 중간 계층 Oracle Cloud Infrastructure(OCI) 서비스를 프로비전합니다.

  1. 재해 복구에 대해 표준 서브넷, CIDR, 보안 규칙 및 인스턴스 접두어 권장사항을 따릅니다.

    스택 이름은 다를 수 있지만 기본 위치에서 사용한 것과 동일한 리소스 이름 접두어를 사용해야 합니다. Oracle은 이상적인 페일오버/스위치오버 동작을 위해 기본 및 대기 위치에서 동일한 용량 및 컴퓨트 구성을 사용할 것을 권장합니다.

    보조 위치에서 프로비전할 Oracle WebLogic Server for OCI 버전 및 패치 레벨이 기본 사이트에서 실행 중인 버전과 일치하는지 확인하십시오.

    자세한 내용은 Oracle WebLogic Server for Oracle Cloud Infrastructure Disaster Recovery의 "보조 사이트에서 OCI용 WLS 프로비전" 섹션 또는 Oracle Cloud Infrastructure Marketplace 재해 복구의 SOA Suite의 "보조 사이트에서 SOA Suite 프로비전" 섹션에서 DR 설정에 대한 프로비전 마법사 옵션을 요약한 표를 참조하십시오.

  2. 표준 프로비저닝(provisioning) 프로세스에 따라 보조 Middle-tier 시스템을 생성합니다.
  3. 표준 Oracle WebLogic Server for Oracle Cloud Infrastructure, Oracle SOA Suite on Marketplace 또는 Oracle Fusion Middleware URL(예: 콘솔, soa-infra 등)을 사용하는 기타 중간 계층 Oracle Cloud Infrastructure(OCI) 서비스를 확인하여 시스템이 제대로 생성되었는지 검증합니다.
  4. 검증되면 대기 데이터베이스(관리 서버, 관리 서버 및 노드 관리자)에서 Oracle WebLogic 프로세스를 중지합니다.
  5. 원격 새로고침 가능 복제본을 사용 중인 경우 소스에 다시 연결할 수 있습니다. Snapshot Standby를 사용 중인 경우 다시 Physical Standby로 변환할 수 있습니다.
    DR 설정이 완료될 때까지 보조에서 Oracle WebLogic 프로세스를 시작하지 마십시오.

보조 TNS 별칭 접속 문자열 수정

보조 시스템에서 사용된 별칭을 기본 시스템과 동일한 별칭으로 수정합니다.

기본 시스템과 마찬가지로 $DOMAIN_HOME/config/jdbc 아래의 모든 데이터 소스 파일과 $DOMAIN_HOME/config/fmwconfig 아래의 jps config 파일에서 TNS(투명한 네트워크 하위 문자열) 별칭을 사용해야 합니다. 데이터 소스는 이전에 생성된 별칭을 포함하는 기본 시스템에서 복제되므로 보조(대기) 시스템에 사용된 별칭은 기본 시스템과 동일합니다.

이 작업은 Snapshot Standby 또는 Remote Refreshable Clone 접근 방식을 사용하는지에 따라 달라집니다.

스냅샷 대기 접근법에 대한 보조의 TNS 별칭 접속 문자열 수정

{\f2732 Snapshot Standby }방식의 경우 연결 문자열이{\f2732 standby database}의 주소를 가리키지만{\f2732 tnsnames.ora }파일의{\f2732 alias}는{\f2732 primary database}와 동일해야 합니다{\f2732 .} 수정할 필요가 없습니다.

  1. tnsnames.ora 파일의 문자열이 이중인 경우(로컬 및 원격 자율운영 데이터베이스 호스트를 모두 포함하는 경우) Oracle은 로컬 데이터베이스를 가리키도록 문자열을 수정할 것을 권장합니다.
    이는 전용 인프라에서 Oracle Autonomous Database를 사용하는 경우 발생할 수 있습니다. 대기용 tnsnames.ora 파일은 구성 복제 및 기타 수명 주기 작업에 의해 변경되지 않으므로 이 변경을 한 번만 수행해야 합니다.

    다음은 tnsnames.ora 파일의 항목이 이중인 경우의 예입니다.

    adbd1_tp=(DESCRIPTION =(CONNECT_TIMEOUT = 90)(RETRY_COUNT = 50)(RETRY_DELAY = 3)(TRANSPORT_CONNECT_TIMEOUT = 3)(ADDRESS_LIST =(LOAD_BALANCE = ON)(ADDRESS = (PROTOCOL=TCP)(HOST= host-kyzm3-scan.secondarysubnet.secondaryvcn.oraclevcn.com)(PORT=1521)) (ADDRESS = (PROTOCOL=TCP)(HOST=host-xwgo9-scan.primarysubnet.primaryvcn.oraclevcn.com)(PORT=1521)) )(CONNECT_DATA = (SERVICE_NAME = ADBD1_tp.atp.oraclecloud.com)))
    
    adbd1_medium=(DESCRIPTION =(CONNECT_TIMEOUT = 90)(RETRY_COUNT = 50)(RETRY_DELAY = 3)(TRANSPORT_CONNECT_TIMEOUT = 3)(ADDRESS_LIST =(LOAD_BALANCE = ON)(ADDRESS = (PROTOCOL=TCP)(HOST=host-kyzm3-scan.secondarysubnet.secondaryvcn.oraclevcn.com)(PORT=1521)) (ADDRESS = (PROTOCOL=TCP)(HOST=host-xwgo9-scan.primarysubnet.primaryvcn.oraclevcn.com)(PORT=1521)) )(CONNECT_DATA = (SERVICE_NAME = ADBD1_medium.atp.oraclecloud.com)))
    
    adbd1_tpurgent=(DESCRIPTION =(CONNECT_TIMEOUT = 90)(RETRY_COUNT = 50)(RETRY_DELAY = 3)(TRANSPORT_CONNECT_TIMEOUT = 3)(ADDRESS_LIST =(LOAD_BALANCE = ON)(ADDRESS = (PROTOCOL=TCP)(HOST=host-kyzm3-scan.secondarysubnet.secondaryvcn.oraclevcn.com)(PORT=1521)) (ADDRESS = (PROTOCOL=TCP)(HOST=host-xwgo9-scan.primarysubnet.primaryvcn.oraclevcn.com)(PORT=1521)) )(CONNECT_DATA = (SERVICE_NAME = ADBD1_tpurgent.atp.oraclecloud.com)))
    …
  2. 이중 항목이 있는 경우 원격 데이터베이스의 ADDRESS를 제거하여 로컬 Autonomous Database를 가리키도록 수정합니다.

    보조의 tnsnames.ora 파일에는 대기 데이터베이스의 ADDRESS만 포함되어야 합니다. 예:

    adbd1_tp=(DESCRIPTION =(CONNECT_TIMEOUT = 90)(RETRY_COUNT = 50)(RETRY_DELAY = 3)(TRANSPORT_CONNECT_TIMEOUT = 3)(ADDRESS_LIST =(LOAD_BALANCE = ON)(ADDRESS = (PROTOCOL=TCP)(HOST= host-kyzm3-scan.secondarysubnet.secondaryvcn.oraclevcn.com)(PORT=1521)))(CONNECT_DATA = (SERVICE_NAME = ADBD1_tp.atp.oraclecloud.com)))
    
    adbd1_medium=(DESCRIPTION =(CONNECT_TIMEOUT = 90)(RETRY_COUNT = 50)(RETRY_DELAY = 3)(TRANSPORT_CONNECT_TIMEOUT = 3)(ADDRESS_LIST =(LOAD_BALANCE = ON)(ADDRESS = (PROTOCOL=TCP)(HOST=host-kyzm3-scan.secondarysubnet.secondaryvcn.oraclevcn.com)(PORT=1521)))(CONNECT_DATA = (SERVICE_NAME = ADBD1_medium.atp.oraclecloud.com)))
    
    adbd1_tpurgent=(DESCRIPTION =(CONNECT_TIMEOUT = 90)(RETRY_COUNT = 50)(RETRY_DELAY = 3)(TRANSPORT_CONNECT_TIMEOUT = 3)(ADDRESS_LIST =(LOAD_BALANCE = ON)(ADDRESS = (PROTOCOL=TCP)(HOST=host-kyzm3-scan.secondarysubnet.secondaryvcn.oraclevcn.com)(PORT=1521)))(CONNECT_DATA = (SERVICE_NAME = ADBD1_tpurgent.atp.oraclecloud.com)))
    …

원격 새로고침 가능 복제 접근 방법에 대한 보조의 TNS 별칭 접속 문자열을 수정합니다.

Remote Refreshable Clone 방식의 경우 보조 시스템에서 사용되는 별칭을 기본 시스템과 동일한 별칭으로 수정합니다.

보조 Oracle WebLogic Server for Oracle Cloud Infrastructure, Oracle SOA Suite on Marketplace 또는 Oracle Fusion Middleware 시스템 생성에 포함된 tnsnames.ora 파일에는 원격 새로고침 가능 복제본 이름을 기반으로 하는 별칭이 포함됩니다. 예를 들어, 원격 새로고침 가능 복제본이 soaadb1rc2 이름으로 생성된 경우 tnsnames.ora 파일(프로비저닝 중 생성된 전자 지갑 디렉토리에 있음)에는 soaadb1rc2_high, soaadb1rc2_low, soaadb1rc2_medium, soaadb1rc2_tp, soaadb1rc2_tpurgent 별칭이 포함됩니다. 구성을 간소화하려면 기본 및 보조 시스템 모두에서 tnsnames.ora 파일에 동일한 별칭 이름을 사용해야 하므로 Oracle WebLogic Server for Oracle Cloud Infrastructure, Oracle SOA Suite on Marketplace 또는 Oracle Fusion Middleware 도메인이 기본과 동일한 별칭 이름을 사용하도록 (원격 새로고침 가능 복제본) 구성된 TNS 별칭을 수정하십시오. 기본 이름은 $tns_admin/tsnames.ora 파일에서 별칭 이름을 얻을 수 있습니다. 서로 다른 서비스에 대해 서로 다른 별칭이 만들어지며 모두 DB 이름에서 접두어를 추론합니다. 별칭 이름만 수정하고 서비스는 수정하지 않습니다. 파일에서 전역 검색 및 바꾸기를 사용하지 마십시오. tnsnames.ora 파일에서 접속 문자열의 서비스 이름도 변경됩니다.

  • 기본 시스템과 동일한 별칭을 사용하도록 보조 시스템의 tnsnames.ora 파일을 수정합니다.

    다음은 기본 시스템에서 Oracle Autonomous Database Serverless를 사용하는 Oracle Fusion Middleware 구성에 대한 샘플 tnsnames.ora 파일입니다.

    [oracle@soarefr-soa-0 ~]$ cat $DOMAIN_HOME/config/tnsadmin/tnsnames.ora
    soaadb1_high = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbvcn.adb.ap-mumbai-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_high.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
     
    soaadb1_low = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbvcn.adb.ap-mumbai-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_low.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
     
    soaadb1_medium = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbvcn.adb.ap-mumbai-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_medium.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
     
    soaadb1_tp = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbvcn.adb.ap-mumbai-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_tp.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
     
    soaadb1_tpurgent = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbvcn.adb.ap-mumbai-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_tpurgent.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))

    다음은 새로고침 가능한 복제본이 있는 보조에서 Oracle Autonomous Database Serverless를 사용하는 Oracle Fusion Middleware 구성의 샘플 tnsnames.ora 파일입니다.

    oracle@soarefr-soa-0 ~]$ cat $DOMAIN_HOME/config/tnsadmin/tnsnames.ora
    rcsoaadb1_high = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=rcsoaadb1.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_rcsoaadb1_high.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
     
    rcsoaadb1_low = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=rcsoaadb1.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_rcsoaadb1_low.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
     
    rcsoaadb1_medium = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=rcsoaadb1.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_rcsoaadb1_medium.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
     
    rcsoaadb1_tp = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=rcsoaadb1.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_rcsoaadb1_tp.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
     
    rcsoaadb1_tpurgent = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=rcsoaadb1.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_rcsoaadb1_tpurgent.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))

    일회성 작업이므로 새로 고칠 수 있는 복제본의 별칭을 변경하는 가장 쉬운 방법은 파일을 편집하는 것입니다. 사용 중인 서비스 레벨에 대한 별칭 또는 일관성을 위해 모든 별칭을 수정할 수 있습니다.

    참고:

    테스트 또는 검증에 새 새로고침 가능 복제본을 사용하고 새 전자 지갑이 사용될 때마다 이 작업을 수행해야 합니다.

    다음은 Oracle Autonomous Database Serverless기본 별칭을 사용하는 새로고침 가능 복제본이 있는 보조에 포함된 Oracle Fusion Middleware 구성의 샘플 tnsnames.ora 파일입니다.

    [oracle@soarefr-soa-0 ~]$ cat $DOMAIN_HOME/config/tnsadmin/tnsnames.ora
    soaadb1_high = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=rcsoaadb1.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_rcsoaadb1_high.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
     
    soaadb1_low = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=rcsoaadb1.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_rcsoaadb1_low.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
     
    soaadb1_medium = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=rcsoaadb1.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_rcsoaadb1_medium.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
     
    soaadb1_tp = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=rcsoaadb1.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_rcsoaadb1_tp.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
     
    soaadb1_tpurgent = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=rcsoaadb1.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_rcsoaadb1_tpurgent.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))

기본 시스템과 마찬가지로 $DOMAIN_HOME/config/jdbc$DOMAIN_HOME/config/fmwconfig 아래의 jps 구성 파일에 있는 모든 데이터 소스 파일은 선택한 별칭을 사용합니다. 기본 시스템(low, mid, high, tp 또는 tpurgent)에서와 같이 원격 새로고침 가능 복제본으로 동일한 서비스 레벨을 선택해야 합니다. 별칭 및 데이터 소스가 기본 시스템에서 복사되므로 보조 시스템에서 fmw_change_to_tns_alias.sh 스크립트를 실행할 필요가 없습니다. 재해 복구 설정이 필요한 대체를 처리합니다.

기본 tnsnames.ora 파일의 다른 데이터베이스를 가리킬 추가 별칭이 있는 경우 보조 시스템의 tnsnames.ora 파일에 그에 따라 추가합니다.

기본 및 대기 중간 계층에서 호스트 이름 별칭 및 프론트 엔드 주소 업데이트

보조 도메인의 WebLogic 도메인 구성은 DR 설정이 완료되면 기본 WebLogic 도메인의 복사본이 됩니다. 따라서 기본 Oracle WebLogic 서버(기본 호스트의 호스트 이름)에서 수신 주소로 사용되는 호스트 이름은 보조 위치에서 유효하지만 보조 IP에 매핑되어야 합니다.

기본 및 대기 둘 다에서 동일한 프론트 엔드 주소를 사용해야 합니다. 일반 작업 중에 이 프론트 엔드 호스트 이름은 기본 Oracle Cloud Infrastructure(OCI) 로드 밸런서의 IP에 매핑됩니다. (스위치오버 또는 페일오버 후) 보조 호스트에서 실행 중인 경우 이 프론트 엔드 호스트 이름이 보조 OCI 로드 밸런서의 IP에 매핑됩니다.

참고:

스위치오버 또는 페일오버가 있을 경우 중간 계층 호스트의 /etc/hosts 파일을 변경하면 안됩니다. 중간 계층 호스트는 항상 프런트엔드 IP로 가상 프런트엔드 이름을 확인합니다. 스위치오버 및 페일오버 절차 중 필요한 DNS 업데이트는 클라이언트가 사용하는 DNS 또는 호스트 파일에서 수행됩니다.

다음 방법으로 이 호스트 별칭을 구현할 수 있습니다.

  • OCI용 Oracle WebLogic Server 컴퓨트 인스턴스의 /etc/hosts 파일에 호스트 이름을 별칭으로 추가합니다.
  • 보조 OCI VCN에서 전용 DNS 뷰 사용

/etc/hosts 파일 사용

기본 Oracle WebLogic Server에서 사용되는 호스트 이름은 보조 Oracle WebLogic Server 호스트의 /etc/hosts 파일에 추가되어 보조 Oracle WebLogic Server 호스트의 IP 주소를 가리킵니다. 이 모드는 기본 및 보조 Oracle Cloud Infrastructure(OCI) 사이트에서 DNS 서버가 동일한 경우, 분리된 DNS 서버가 기본 및 보조 사이트에서 사용되는 경우에도 유효합니다. /etc/hosts 파일의 항목은 /etc/nsswitch.conf 파일의 "hosts" 지시어에서 미리 정의된 우선 순위이므로 DNS 확인보다 우선합니다.
  1. WebLogic Server 컴퓨트 인스턴스의 /etc/oci-hostname.conf 파일을 편집하고 PRESERVE_HOSTINFO=3 등록 정보를 설정하여 인스턴스 재부팅 시 /etc/hosts 항목을 보존합니다.
  2. hostname --fqdn 명령을 사용하여 OCI WebLogic Server 컴퓨트 인스턴스의 전체 호스트 이름을 식별합니다.
  3. 다음 항목을 중간 계층 컴퓨트 인스턴스의 /etc/hosts 파일에 추가합니다.
    #################################
    # ALIASES on OCI for DR
    #################################
    apphost1_compute_instance_IP  apphost1_fqdn   apphost1_hostname   ALIAS_OF_APPHOST1 
    apphost2_compute_instance_IP  apphost2_fqdn   apphost2_hostname   ALIAS_OF_APPHOST2 
    #################################
    # Frontend name 
    #################################
    IP_OF_LBR  frontend_name_fqdn
    다음은 primary Oracle WebLogic Server 호스트의 /etc/hosts 파일에 대한 예입니다.
    # Aliases for DR in primary region
    10.0.2.10 wlsociprefix-wls-0.subnetlon.vcnlon.oraclevcn.com wlsociprefix-wls-0 
    10.0.2.11 wlsociprefix-wls-1.subnetlon.vcnlon.oraclevcn.com wlsociprefix-wls-1
    
    # Front-end virtual name to primary LBR IP
    111.111.111.111 mywebapps.mycompany.com 

    다음은 secondary OCI WebLogic Server 컴퓨트 인스턴스의 /etc/hosts 파일 예입니다.

    참고:

    기본 호스트 이름은 보조 노드의 별칭으로 추가되고 프론트 엔드 가상 이름은 보조 로드 밸런서 IP를 가리킵니다.

    # Aliases for DR in secondary region
    10.1.2.5 wlsociprefix-wls-0.subnetfra.vcnfra.oraclevcn.com wlsociprefix-wls-0 wlsociprefix-wls-0.subnetlon.vcnlon.oraclevcn.com wlsociprefix-wls-0
    10.1.2.4 wlsociprefix-wls-1. subnetfra.vcnfra.oraclevcn.com wlsociprefix-wls-1 wlsociprefix-wls-1.subnetlon.vcnlon.oraclevcn.com wlsociprefix-wls-0
    
    # Front-end virtual name to secondary LBRIP
    222.222.222.222 mywebapps.example.com
    

OCI 도메인 이름 시스템(DNS) 사용

기본 Oracle WebLogic Server 호스트에서 사용되는 호스트 이름은 보조 중간 계층 서버의 VCN에서 사용되는 DNS 분석기에 추가되어 보조 Oracle WebLogic Server 호스트의 IP 주소를 가리킵니다. 이 모드는 기본 및 보조 Oracle Cloud Infrastructure(OCI) 사이트에서 별도의 DNS 서버가 사용되는 경우 유효합니다. 그렇지 않으면 이름 지정 분석에서 충돌이 발생할 수 있습니다. 각 사이트의 서버는 자신의 IP로 이러한 이름을 분석해야 합니다. 이 방법의 장점은 모든 Oracle WebLogic Server 호스트의 모든 /etc/hosts에 항목을 추가하는 대신 모든 항목을 개인 DNS 뷰에 추가할 수 있다는 것입니다.

다음은 보조 VCN에서 전용 뷰를 생성하고 기본 및 보조 IP에서 사용하는 호스트 이름을 확인하는 단계입니다.

  1. OCI 콘솔에서 보조 영역으로 이동하고 전용 뷰를 생성하여 보조 IP 주소를 사용하는 기본 호스트의 이름을 확인합니다.
    1. Networking, DNS Management, Private Views, Create Private View를 차례로 누릅니다.
      예를 들어, 전용 뷰의 이름을 PRIMARY_HOSTNAMES_PRIVATE_VIEW로 지정할 수 있습니다.
    2. 전용 뷰에서 영역 생성을 누릅니다.
      영역 이름의 경우 호스트의 전체 도메인을 사용해야 합니다. 예: subnetpri.vcnpri.oraclevcn.com
    3. 이 영역(짧은 이름)에 기본 호스트 이름을 추가하되 보조 Oracle WebLogic Server 호스트의 IP 주소로 확인됩니다.
    4. Publish changes를 누릅니다.
  2. 보조 VCN 분석기에 전용 뷰를 추가합니다.
    1. VCN에서 DNS 분석기 리소스를 누릅니다.
    2. 이전에 생성된 DNS 전용 뷰를 추가합니다.
      보조 VCN의 호스트는 전용 뷰를 사용하여 기본 Oracle WebLogic Server 호스트에서 사용하는 호스트 이름을 분석합니다.
  3. 호스트 이름의 pingnslookup를 수행하여 해결 SECONDARY 호스트의 유효성을 검사합니다.
    동일한 보조 IP를 사용하여 확인해야 합니다.

    참고:

    Terraform 코드를 찾아 GitHub에서 이 OCI 전용 뷰 및 레코드를 생성할 수 있습니다.

보조 시스템 구성

시스템을 보조로 구성하려면 WebLogic Server 도메인 구성을 기본 도메인에서 보조 WebLogic Server, Oracle SOA Suite 또는 Oracle Fusion Middleware 시스템 도메인으로 복사해야 합니다.
DR(재해 복구) 설정은 로컬 유효한 상태로 유지되어야 하는 특정 디렉토리 및 파일을 제외하고 모든 보조 도메인을 대체합니다. 이러한 디렉토리는 스크립트에서 명시적으로 제외됩니다. 또한 보조 사용자가 기본 데이터베이스와 동일한 DB 스키마 이름을 사용하지만 로컬 데이터베이스(DR 설정 중 새로고침 가능한 복제본, 스위치오버 준비 중 대기)를 가리키는 기존 jdbc url를 필요한 전자 지갑으로 사용하도록 스크립트가 데이터 소스 파일을 바꿉니다.
  1. 기본 서버의 WebLogic Server 관리 노드에서 fmwadb_dr_prim.sh 스크립트를 실행합니다.
    이 스크립트는 동적 경로 지정 게이트웨이를 통해 WebLogic Server 관리 서버 노드 간의 연결을 확인하고 보조 영역에 있는 Oracle Cloud Infrastructure File Storage 마운트의 스테이징 디렉토리에 도메인을 복사합니다.

    다음 매개변수를 사용합니다.

    • REMOTE_ADMIN_NODE_IP

      보조 WebLogic Server 관리 서버 노드의 IP 주소입니다.

      이 IP는 이 호스트(기본 Oracle WebLogic Server 관리 서버 노드)에서 연결할 수 있어야 합니다.

      동적 라우팅 게이트웨이를 사용하여 기본 사이트와 보조 사이트를 상호 연결하여 전용 IP 주소를 제공하는 것이 좋습니다.

    • REMOTE_SSH_PRIV_KEYFILE

      원격 Oracle WebLogic 관리 서버 노드에 접속하기 위한 전용 SSH 키 파일입니다.

    • FSS_MOUNT

      WebLogic 서버 도메인 구성의 복사본을 스테이지하는 데 사용되는 OCI 파일 스토리지에 마운트된 디렉토리입니다.

    ./fmwadb_dr_prim.sh [REMOTE_ADMIN_NODE_IP] [REMOTE_SSH_PRIV_KEYFILE] [FSS_MOUNT]
    다음은 명령 및 출력의 예입니다.
    [oracle@soarefr-soa-0 ~]$ ./fmwadbs_dr_prim.sh '10.2.1.104' '/u01/soacs/dbfs/share/KeyWithoutPassPhraseSOAMAA.ppk' /u01/soacs/dbfs/share/
     Checking ssh connectivity to remote WebLogic Administration server node....
        Connectivity to 10.2.1.104 is OK
        REMOTE_ADMIN_HOSTNAME...... soarefr-soa-0.sub09051735411.soaadbvcnstby.oraclevcn.com
     Checking local FSS mount folder readiness........
         The FSS is expected to be mounted in /u01/soacs/dbfs/share
         The folder for the copy of the domain is expected to be /u01/soacs/dbfs/share/domain_config_copy
         Local folder /u01/soacs/dbfs/share/domain_config_copy exists.
     Checking remote FSS mount folder readiness........
         Remote folder 10.2.1.104:/u01/soacs/dbfs/share/domain_config_copy exists.
     
    ----------- Rsyncing from local domain to local FSS folder ---------------
     
    Local rsync output to /u01/soacs/dbfs/share/domain_config_copy/last_primary_update_local_06-10-2022-09-47-50.log ....
    Source and target directories are in sync. ALL GOOD!
     
    ----------- Local rsync complete -----------------------------------------
     
    ----------- Rsyncing from local FSS folder to remote site... --------------
    Remote rsync output to /u01/soacs/dbfs/share/domain_config_copy/last_primary_update_remote_06-10-2022-09-47-50.log ....
    Source and target directories are in sync. ALL GOOD!
  2. fmwadb_dr_prim.sh 스크립트 실행이 완료되면 아직 중지되지 않은 경우 보조 시스템의 모든 WebLogic Server 시스템 및 노드 관리자를 중지합니다.
  3. 보조 항목의 WebLogic Server 관리 노드에 로그인하고 fmwadb_dr_stby.sh 스크립트를 실행합니다.

    이 스크립트는 OCI File Storage 마운트의 스테이지 디렉토리에서 보조 WebLogic Server 도메인 디렉토리로 WebLogic Server 도메인을 복사하고 필요한 전자 지갑 및 암호 항목을 대체합니다. 제공할 전자 지갑은 새로 고칠 수 있는 복제본이므로 초기 DR이 설정된 후 보조를 검증할 수 있습니다.

    다음 매개변수를 사용합니다.

    • WALLET_DIR

      압축 해제된 Oracle Autonomous Database 전자 지갑의 디렉토리입니다. WebLogic Server 관리 서버 노드.

      이 디렉토리는 tnsnames.ora, keystore.jkstruststore.jks 파일 이상을 포함해야 합니다.

      {\f2732 snapshot standby }방법을 사용하는 경우{\f2732 tnsadmin }폴더일 뿐입니다{\f2732 .}

    • WALLET_PASSWORD

      Oracle Autonomous Database Serverless OCI UI에서 전자 지갑을 다운로드할 때 제공된 비밀번호입니다.

      전자 지갑이 프로비전할 때 WebLogic Server, Oracle SOA Suite 또는 Oracle Fusion Middleware 시스템에서 생성된 초기 전자 지갑인 경우 다음 명령을 사용하여 이 스크립트를 얻을 수 있습니다.

      Oracle SOA:
      python /opt/scripts/atp_db_util.py generate-atp-wallet-password
      
      Oracle WebLogic Server:
      python3 /opt/scripts/atp_db_util.py generate-atp-wallet-password
    • FSS_MOUNT

      WebLogic Server 도메인 구성을 스테이지하는 데 사용되는 OCI File Storage 마운트 디렉토리입니다.

    ./fmwadb_dr_stby.sh [WALLET_DIR] [WALLET_PASSWORD] [FSS_MOUNT]
    다음은 명령 실행 및 출력의 예입니다.
    [oracle@wsladbs2-wls-0 scripts]$ ./fmwadb_dr_stby.sh /u01/data/domains/wsladbs2_domain/config/atpwallet/  7f3e3ed8ee7921fed058b481298eca55 /u01/shared/
    Backing up current domain...
    Backup created at /u01/data/domains/wsladbs2_domain/ /u01/data/domains/wsladbs2_domain_backup_11_42_19-26-10-22
    Rsyncing from FSS  mount to domain dir...
     Syncing the Weblogic Administration server node...
    Rsync complete!
    Switching config to /u01/data/domains/wsladbs2_domain/config/atpwallet/
    The password provided for the wallet is valid. Proceeding...
    Gathering Data Soure information...
    The new wallet is the same as the one being used.
    Will maintain existing wallet dir and just replace password
    Backing up current config...
    Backup created at  /u01/data/domains/wsladbs2_domain/DS_backup_11_42_33-26-10-22
    Replacing values in datasources...
    Replacement complete!
  4. 보조 영역의 다른 WebLogic Server 관리 서버 노드에서 fmwadb_dr_stby.sh 스크립트를 실행합니다.
  5. 대기 데이터베이스에 읽기/쓰기 모드로 액세스할 수 있는지 확인합니다.
    • {\f2732 snapshot standby }방법을 사용하는 경우{\f2732 standby database}가{\f2732 snapshot standby database}로 변환되어 읽기{\f2732 /}쓰기 모드에서 액세스할 수 있는지 확인합니다{\f2732 .}
    • Remote Refreshable Clone 접근 방식을 사용하는 경우 소스에서 연결이 해제되어 읽기-쓰기 모드로 액세스할 수 있는지 확인합니다.
  6. 보조 노드 관리자 및 Oracle WebLogic Administration Server를 시작합니다. 콘솔에 액세스하고 도메인에서 WebLogic Server 관리 서버를 시작합니다.
  7. primary의 기존 응용 프로그램 및 배치를 보조 응용 프로그램에서도 사용할 수 있는지 검증합니다.
  8. 보조 서버에서 WebLogic Server를 종료합니다.
  9. 대기 데이터베이스를 물리적 대기 데이터베이스로 변환하거나 새로고침 가능한 복제본을 다시 연결합니다.
    • {\f2732 snapshot standby }방법을 사용하는 경우{\f2732 standby database}를 물리적{\f2732 standby database}로 변환합니다{\f2732 .}

    • Remote Refreshable Clone을 사용 중인 경우 새로 고칠 수 있는 복제본을 다시 연결합니다. 미리 알림: 새로고침 가능한 복제본은 24시간 이상 기본 복제본에서 접속 해제된 상태로 유지될 수 없습니다.

시스템 전환 준비 상태 유지

새로 고칠 수 있는 복제본으로 보조 시스템을 구성하고 검증한 후 TNS 별칭을 대기 Oracle Autonomous Database Serverless로 지정하여 시스템을 전환할 수 있도록 준비 상태로 둡니다.

참고:

이 작업은 원격 새로고침 가능 복제본으로 보조 시스템이 구성되고 검증된 경우에만 필요합니다.

보조 데이터베이스 사용자 인터페이스에서 대기 데이터베이스의 전자 지갑을 다운로드합니다. 원격 DR 사례에서는 불필요한 재시도를 유발하므로 이중 연결 문자열(기본 및 대기 호스트 모두)을 사용하지 마십시오.

  1. 대기 데이터베이스의 Oracle Autonomous Database Serverless 사용자 인터페이스에 로그인합니다.
  2. Autonomous Database를 누르고 autonomous_db_name를 선택하고 DB 접속을 누른 다음 전자 지갑 다운로드를 누릅니다.
  3. 전자 지갑에 기본을 가리키는 이중 문자열이 포함된 경우 접속 문자열이 보조 영역의 로컬 DB를 가리키도록 tnsnames.ora 파일에서 기본 설명 항목을 제거합니다.

    다음은 tnsnames.ora 파일의 샘플 수정입니다.

    soaadb1_high = (description_list= (failover=on) (load_balance=off) (description= (retry_count=15)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbvcn.adb.ap-mumbai-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_high.adb.oraclecloud.com))(security=(ssl_server_cert_dn="CN=adb.ap-mumbai-1.oraclecloud.com, OU=Oracle ADB INDIA, O=Oracle Corporation, L=Redwood City, ST=California, C=US"))) (description= (retry_count=15)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbstby.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_high.adb.oraclecloud.com))(security=(ssl_server_dn_match=no))))
    soaadb1_low = (description_list= (failover=on) (load_balance=off) (description= (retry_count=15)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbvcn.adb.ap-mumbai-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_low.adb.oraclecloud.com))(security=(ssl_server_cert_dn="CN=adb.ap-mumbai-1.oraclecloud.com, OU=Oracle ADB INDIA, O=Oracle Corporation, L=Redwood City, ST=California, C=US"))) (description= (retry_count=15)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbstby.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_low.adb.oraclecloud.com))(security=(ssl_server_dn_match=no))))
    soaadb1_medium = (description_list= (failover=on) (load_balance=off) (description= (retry_count=15)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbvcn.adb.ap-mumbai-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_medium.adb.oraclecloud.com))(security=(ssl_server_cert_dn="CN=adb.ap-mumbai-1.oraclecloud.com, OU=Oracle ADB INDIA, O=Oracle Corporation, L=Redwood City, ST=California, C=US"))) (description= (retry_count=15)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbstby.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_medium.adb.oraclecloud.com))(security=(ssl_server_dn_match=no))))
    soaadb1_tp = (description_list= (failover=on) (load_balance=off) (description= (retry_count=15)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbvcn.adb.ap-mumbai-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_tp.adb.oraclecloud.com))(security=(ssl_server_cert_dn="CN=adb.ap-mumbai-1.oraclecloud.com, OU=Oracle ADB INDIA, O=Oracle Corporation, L=Redwood City, ST=California, C=US"))) (description= (retry_count=15)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbstby.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_tp.adb.oraclecloud.com))(security=(ssl_server_dn_match=no))))
    soaadb1_tpurgent = (description_list= (failover=on) (load_balance=off) (description= (retry_count=15)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbvcn.adb.ap-mumbai-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_tpurgent.adb.oraclecloud.com))(security=(ssl_server_cert_dn="CN=adb.ap-mumbai-1.oraclecloud.com, OU=Oracle ADB INDIA, O=Oracle Corporation, L=Redwood City, ST=California, C=US"))) (description= (retry_count=15)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbstby.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_tpurgent.adb.oraclecloud.com))(security=(ssl_server_dn_match=no))))
    
    SHOULD BE
    
    soaadb1_high = (description= (retry_count=15)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbstby.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_high.adb.oraclecloud.com))(security=(ssl_server_dn_match=no))) 
    soaadb1_low = (description= (retry_count=15)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbstby.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_low.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
    soaadb1_medium = (description= (retry_count=15)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbstby.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_medium.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
    soaadb1_tp = (description= (retry_count=15)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbstby.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_tp.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
    soaadb1_tpurgent = (description= (retry_count=15)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=soaadbstby.adb.ap-hyderabad-1.oraclecloud.com))(connect_data=(service_name=g914a2540e8ab6d_soaadb1_tpurgent.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
  4. 전자 지갑을 보조 영역의 WebLogic Server Administration Server 노드에 있는 임시 폴더로 복사하고 디렉토리로 이동합니다.
    [oracle@wsladbs2-wls-0 scripts]$ cd /tmp
    [oracle@wsladbs2-wls-0 tmp]$ mkdir wallet-stby
    [oracle@wsladbs2-wls-0 tmp]$ cd wallet-stby/
  5. 전자 지갑의 압축을 해제합니다.
    [oracle@wsladbs2-wls-0 wallet-stby]$ unzip /tmp/Wallet_soaadb1-standby.zip
    Archive:  ../Wallet_soaadb1-standby.zip
      inflating: ewallet.pem
      inflating: README
      inflating: cwallet.sso
      inflating: tnsnames.ora
      inflating: truststore.jks
      inflating: ojdbc.properties
      inflating: sqlnet.ora
      inflating: ewallet.p12
      inflating: keystore.jks
  6. fmwadb_switch_db_conn.sh 스크립트를 실행하여 중간 계층을 보조 전자 지갑 및 연결 문자열과 함께 준비 상태로 둡니다.

    다음은 대기 Oracle Autonomous Database Serverless 전자 지갑을 가리키는 스크립트 실행의 예입니다.

    [oracle@wsladbs2-wls-0 scripts]$ ./fmwadb_switch_db_conn.sh /tmp/wallet-stby/ wallet_password
    The password provided for the wallet is valid. Proceeding...
    Gathering Data Source information...
    The new wallet is the same as the one being used.
    Will maintain existing wallet dir and just replace password
    Backing up current config...
    Backup created at  /u01/data/domains/wsladbs2_domain/DS_backup_10_38_32-27-10-22
    Replacing values in datasources...
    Replacement complete!

진행 중인 구성 복제 설정

시스템의 수명 주기에 도메인 파일 시스템에 대한 빈번한 업데이트가 포함된 경우 스크립트를 사용하여 구성 복제 프로세스를 자동화할 수 있습니다. fmwadb_config_replica.sh 스크립트는 정기적으로 Oracle Cloud Infrastructure File Storage(OCI File Storage) 스테이지 디렉토리를 통해 변경사항을 복제합니다.

각 복제 후 스위치오버에 대해 구성이 준비(준비)되어 있습니다.

Remote Refreshable Clone을 사용하는 경우 물리적 대기(새로 고칠 수 있는 복제본 아님)에 대해 복제된 구성이 "adapted"된다고 가정합니다. 새로고침 가능한 복제본을 사용하여 검증 또는 테스트가 필요한 경우 대신 새로고침 가능한 복제본을 가리키도록 대기 도메인 구성을 변경할 수 있습니다.

구성을 복제하려면 WebLogic Server 관리 노드(기본 및 대기 모두에서)에서 fmwadb_config_replica.sh 스크립트를 실행해야 합니다. 일반적으로 이 스크립트는 cron 작업으로 일정이 잡혀 Oracle Autonomous Database 시스템의 기본 및 대기 WebLogic 서버, Oracle SOA Suite 또는 Oracle Fusion Middleware 시스템 간에 정기적으로 구성을 복제합니다. 이 스크립트는 로컬 데이터베이스의 현재 롤을 검사하여 기본 또는 대기 사이트에서 실행 중인지 확인합니다.

  • 스크립트가 PRIMARY 사이트에서 실행되면 도메인 구성이 기본 도메인에서 로컬 지원 폴더(FSS)로 복사된 다음 보조 사이트 지원 폴더(rsync 사용)로 복사됩니다.
  • 스크립트가 STANDBY 사이트에서 실행되면 보조 지원 폴더(OCI 파일 스토리지)의 도메인 구성을 보조 도메인으로 복사하고 로컬 데이터베이스에서 작동하도록 데이터 소스에 필요한 대체 작업을 수행합니다.

보안을 위해 OCI 콘솔에서 서로 다른 매개변수를 수집하고 Oracle Autonomous Database 전자 지갑에 액세스하기 위한 비밀번호를 암호화해야 합니다.

다음은 스크립트에 사용된 변수 및 변수를 얻는 방법에 대한 설명입니다.

  • REMOTE_WLSADMIN_NODE_IP

    피어 및 원격 WebLogic 서버 관리 서버 노드의 IP입니다.

    피어 사이트의 WebLogic Server 관리 서버에 있는 노드 호스트의 IP입니다. 로컬 노드에서 연결할 수 있어야 합니다. 동적 라우팅 게이트웨이를 사용하여 노드의 원격 전용 IP에 연결하는 것이 좋습니다.

  • REMOTE_SSH_PRIV_KEYFILE

    원격 Oracle WebLogic 관리 서버 노드에 접속하기 위한 전용 SSH 키 파일입니다.

  • TENANCY_OCID

    Oracle Autonomous Database가 상주하는 테넌시의 OCID입니다. OCID는 OCI(Oracle Cloud Infrastructure) 사용자 인터페이스(UI)에서 가져올 수 있습니다.

  • USER_OCID

    자율운영 데이터베이스 인스턴스를 소유하는 사용자의 OCID입니다. OCI UI에서 OCID를 찾을 수 있습니다.

  • PRIVATE_KEY

    이 사용자에 대한 전용 PEM 형식 키의 경로입니다.

  • LOCAL_ADB_OCID

    검사 중인 Oracle Autonomous Database의 OCID입니다. OCID는 OCI 콘솔의 Oracle Autonomous Database 화면에서 찾을 수 있습니다.

  • WALLET_DIR

    로컬 Oracle Autonomous Database 전자 지갑의 디렉토리입니다(OCI 콘솔에서 다운로드한 전자 지갑의 압축을 풉니다). 이 디렉토리는 최소한 tnsnames.ora, keystore.jkstruststore.jks 파일을 포함해야 합니다. Snapshot Standby 방식을 사용하는 경우 이 폴더는 tnsadmin 폴더입니다.

  • ENC_WALLET_PASSWORD

    Oracle Autonomous Database OCI UI에서 전자 지갑을 다운로드할 때 제공된 비밀번호의 WLS ENCRYPTED incarnation입니다.

    전자 지갑이 WebLogic Server 프로비전 중 WebLogic Server, Oracle SOA Suite 또는 Oracle Fusion Middleware에서 생성된 초기 전자 지갑인 경우 다음 명령을 사용하여 비밀번호를 가져올 수 있습니다.

    WebLogic의 경우:
    [oracle@wsladbs2-wls-1 ~]$ python3 /opt/scripts/atp_db_util.py generate-atp-wallet-password
    SOA의 경우:
    [oracle@soarefr-soa-0 ~]$ python /opt/scripts/atp_db_util.py generate-atp-wallet-password
    OCI 콘솔에 제공된 비밀번호나 프로비전 중 사용된 비밀번호를 암호화하려면 fmw_enc_pwd.sh 스크립트를 사용할 수 있습니다.
    ./fmw_enc_pwd.sh UNENC_WALLET_PASSWORD

    ENC_WALLET_PASSWORD 변수에 대해 가져온 문자열을 사용합니다.

  • FSS_MOUNT

    WebLogic 서버 도메인 구성을 스테이지하는 데 사용할 OCI 파일 스토리지 마운트 디렉토리입니다.

변수 정보를 수집했으면 다음 단계를 수행하여 환경에 맞게 스크립트를 복사하고 커스터마이즈합니다.

  1. 보안을 위해 Oracle Autonomous Database 전자 지갑에 액세스하기 위한 비밀번호를 암호화합니다.
  2. 스크립트를 기본 사이트에 복사한 다음 기본 사이트에 필요한 변수를 완성하는 스크립트를 편집합니다.
    스크립트에 사용된 변수에 대한 설명은 위를 참조하십시오.
  3. 스크립트를 standby site로 복사한 다음 standby site에 필요한 변수를 채우는 스크립트를 편집합니다.
    스크립트에 사용된 변수에 대한 설명은 위를 참조하십시오.
  4. 각 영역에 대해 커스터마이즈된 후에는(각 영역에 대해 LOCAL 데이터베이스 OCID를 제공해야 함) 다음 작업을 수행합니다.
    1. 기본 서버의 Oracle WebLogic 관리 호스트에서 스크립트를 실행합니다.
    2. 보조 영역의 Oracle WebLogic 관리 호스트에서 스크립트를 실행합니다.
  5. 각 영역의 cron 작업에 스크립트를 추가합니다.