OCIでミッドティアを準備

Oracle Cloud Infrastructure (OCI)でのディザスタ・リカバリのために中間層ホストをプロビジョニングおよび準備します。

SOAミッドティア・ノードのコンピュート・インスタンスのプロビジョニング

オンプレミスのプライマリOracle SOA Suiteホストごとに、Oracle Cloud Infrastructure (OCI)中間層サブネット上に仮想マシン(VM)コンピュート・インスタンスを作成します。コンピュート・インスタンスでは、オンプレミス・ホストで使用されるイメージおよびシェイプに類似したOSイメージおよびコンピュート・シェイプを使用する必要があります。

この例では、表に示すように、コンパートメント内の単一の可用性ドメインに2つのコンピュート・インスタンスを使用します。

名前 コンパートメント 可用性ドメイン IMAGE シェイプ VCN サブネット
hydrsoa1 HyDRCompmt AD1 Oracle Linux 7.9 VM.Standard2.2 hydrvcn midTierSubnet
hydrsoa2 HyDRCompmt AD1 Oracle Linux 7.9 VM.Standard2.2 hydrvcn midTierSubnet
  1. テナンシのOCIコンソールに接続します。
  2. 適切な地域を選択します。
  3. ナビゲーション・メニューを開き、「コンピュート」「インスタンスの作成」の順にクリックします。
  4. インスタンスを作成するコンパートメントを選択します。
  5. 環境のVCN、サブネットおよび可用性ドメインを選択します。
    OCIリージョンに複数のアベイラビリティ・ドメインがある場合は、Oracle SOA Suiteコンピュート・インスタンスを別のアベイラビリティ・ドメインに配置します。
  6. 要件に適したOSイメージおよびシェイプを選択します。
  7. ステップを繰り返して、別のコンピュート・インスタンスを作成します。

ノート:

これらのコンピュート・インスタンスを作成するためのTerraformコードは、「コードのダウンロード」にあります。

オペレーティング・システム・ユーザーおよびグループの準備

プライマリ・オンプレミスのOracleソフトウェアと同じユーザーおよびグループを作成します。ユーザー識別子およびグループ識別子(ID)は、プライマリ環境の識別子と同じである必要があります。

SSHを使用して、最近作成したインスタンスにopcユーザーとしてアクセスできます。このユーザーはsudo権限を持ち、追加のユーザーおよびグループの作成に使用できます。oracleソフトウェアのプライマリ・オンプレミスで使用されるのと同じユーザーおよびグループを作成し、ユーザーおよびグループIDがプライマリと同じであることを確認する必要があります。

この例では、表に示すように、EDG環境で一般的なユーザーおよびグループを使用します。

ユーザーまたはグループ 名前 摘要
ユーザー nobody 権限のないユーザー
oracle Oracleソフトウェアの所有者(別の名前を使用できます)。このアカウントのプライマリ・グループはoinstallにする必要があります。このアカウントは、dbaグループにも属している必要があります。
グループ oinstall oracleユーザーのプリンシパル・グループ
dba oracleユーザーのセカンダリ・グループ

セカンダリ・コンピュート・インスタンスにユーザーおよびグループを作成します。Oracleソフトウェアのプライマリ・オンプレミスで使用されるのと同じユーザーおよびグループを作成し、ユーザーおよびグループIDがプライマリと同じであることを確認します。

OCIコンピュート・インスタンス内の各グループおよびユーザーは、すべてのノードで、プライマリと同じIDを持っている必要があります。

  1. プライマリ・ホストのIDを特定します。
    1. oracleユーザーでオンプレミスのOracle SOA Suiteホストにログインし、コマンドidを使用してユーザーのグループとIDを特定します。
      [oracle@host3.myopnetwork.com ~]$ id
      uid=1001(oracle) gid=1002(oinstall) groups=1002(oinstall),1001(dba)
       [oracle@ host3.myopnetwork.com ~]$ more /etc/passwd | grep nobody
      nobody:x:99:99:Nobody:/:/bin/false
      [oracle@ host3.myopnetwork.com ~]$ more /etc/passwd | grep oracle
      oracle:x:1001:1002::/home/oracle:/bin/bash
    2. ユーザーおよびグループのいずれかがOCIコンピュート・インスタンスにすでに存在するかどうかを確認します。
      [opc@hydrsoa1 ~]$ more /etc/passwd | grep 1001
      [opc@hydrsoa1 ~]$ more /etc/group | grep 1001
      [opc@hydrsoa1 ~]$ more /etc/group | grep 1002
    3. ユーザーおよびグループIDのいずれかがOCIコンピュート・インスタンスにすでに存在するかどうかを確認します。
      [oracle@host3.myopnetwork.com ~]$ id
      uid=1001(oracle) gid=1002(oinstall) groups=1002(oinstall),1001(dba)
       [oracle@ host3.myopnetwork.com ~]$ more /etc/passwd | grep nobody
      nobody:x:99:99:Nobody:/:/bin/false
      [oracle@ host3.myopnetwork.com ~]$ more /etc/passwd | grep oracle
      oracle:x:1001:1002::/home/oracle:/bin/bash
      
      OCI SOAコンピュート・インスタンスにOracle関連ユーザーがすでに作成されているとはかぎりません。通常、ユーザーnobodyのみがすでに存在します。したがって、セカンダリでプライマリのIDを使用できます。
  2. プライマリ・ホストと同じユーザーおよびグループIDを使用して、各OCI SOAコンピュート・インスタンスにグループおよびユーザーを作成します。
    次に例を示します。
    sudo -s
    groupadd oinstall -g 1002
    groupadd dba -g 1001
    useradd -u 1001 oracle -g oinstall -G dba
  3. (オプション推奨)新しく作成されたoracleユーザーへのSSHアクセスを有効にします。
    新しく作成したoracleユーザーへのSSHアクセスの有効化はオプションですが、強くお薦めします。oracleユーザーがファイル・システム・アーティファクトのコピーに使用されるコマンドに直接接続できるため、このDRトポロジで役立ちます。
    1. SOAコンピュート・インスタンスへの接続に使用する公開キーをテキスト・ファイルにコピーします。これは、この手順の後の方で使用します。
    2. インスタンスにログインし、sudoをルート・ユーザーにログインします。
    3. 新規ユーザーのホーム・ディレクトリで.sshディレクトリを作成します。
      mkdir /home/oracle/.ssh
    4. コンピュートへの接続に使用するSSH公開キーをファイルにコピーします。
      /home/oracle/.ssh/authorized_keys
    5. /home/oracle/.sshディレクトリの所有者とグループをoracleユーザーに変更します。
      chown -R oracle:oinstall /home/oracle/.ssh
    6. authorized_keysファイルの権限を変更して、oracleユーザーにファイル(600)への完全な読取りおよび書込みアクセス権を付与します。
      chmod 600 /home/oracle/.ssh/authorized_keys
    7. oracleユーザーおよび秘密キーを使用してSSHに接続することで、接続を確認します。

オペレーティングシステムの要件の準備

セカンダリ中間層ホストは、ソフトウェアを実行するためのオペレーティング・システム要件を満たす必要があります。

Oracle SOA SuiteおよびOracle WebLogic Serverバイナリを正しく実行するには、ソフトウェアのインストール時にプライマリで準備されたのと同じ方法で、スタンバイ・システムのオペレーティング・システムを準備する必要があります。

SOAホームのバイナリは、プライマリSOAホストからセカンダリSOAホストにコピーされます。したがって、セカンダリSOAホストでruninstallerを実行する必要はありません。ただし、オペレーティング・システムの要件は同じである必要があります。

  1. 使用している環境が、プライマリSOAホストにインストールされている製品の最小インストール要件を満たしていることを確認します。
    Oracle Fusion Middlewareのシステム要件と仕様の対応するドキュメントと、EDGのLinuxオペレーティング・システム要件の確認のステップを確認してください。
  2. 使用しているバージョンおよびOSに必要なシステムパッケージを確認します。
  3. yumを使用して、欠落しているシステム・パッケージをインストールします。
    この例では、Oracle Fusion Middleware 12.21.4およびOracle Linux 7を使用し、必要なパッケージのほとんどはOracle Cloud Infrastructure (OCI)中間層コンピュート・インスタンスにすでにインストールされています。この例では、次のものがなく、yumを使用してインストールする必要がありました。
    yum install compat-libcap1.x86_64
    yum install compat-libstdc++-33.x86_64
    yum install compat-libstdc++-33.i686
    yum install gcc-c++.x86_64
    yum install libaio-devel.x86_64
    yum install libstdc++.i686
    yum install libstdc++-devel.x86_64
    yum install dejavu-serif-fonts
    yum install numactl.x86_64
    yum install numactl-devel.x86_64
    yum install motif.x86_64
    yum install motif-devel.x86_64
    yum install redhat-lsb.x86_64
    yum install xorg-x11-utils.x86_64
  4. /etc/security/limits.confファイルにfileおよびprocの制限を構成します。オンプレミスのSOAホストの制限を確認し、それに応じてOCI SOAコンピュート・インスタンスの値を設定します。

ホスト名の別名の準備

プライマリ環境のOracle WebLogic Serverコンポーネントによって使用されるものと同じ仮想ホスト名を、セカンダリOracle Cloud Infrastructure (OCI) SOAコンピュート・インスタンスの別名として構成しますが、セカンダリ・ホストのIPアドレスを指定します。
これは、次の方法で実装できます。
  • ホスト名を別名としてOCI SOAコンピュート・インスタンスの/etc/hostsファイルに追加します。
  • セカンダリOCI VCNでプライベートDNSビューを使用します。

/etc/hostsファイルを使用

プライマリOracle WebLogic Serverで使用される仮想ホスト名は、セカンダリOracle WebLogic Serverホストの/etc/hostsファイルに追加され、セカンダリOracle WebLogic ServerホストのIPアドレスを指しています。 このモードは、DNSサーバーがプライマリ・オンプレミスおよびセカンダリOracle Cloud Infrastructure (OCI)サイトで同じである場合、およびプライマリ・サイトとセカンダリ・サイトで分離されたDNSサーバーが使用されている場合にも有効です。/etc/hostsファイル内のエントリは、DNS解決よりも優先されます。これは、/etc/nsswitch.confファイルのディレクティブ「hosts」にデフォルトで定義されている優先順位であるためです。
  1. SOAコンピュート・インスタンスの/etc/oci-hostname.confファイルを編集し、インスタンスの再起動後も/etc/hostsエントリを保持するようにプロパティPRESERVE_HOSTINFO=3を設定します。
  2. コマンドhostname --fqdnを使用して、OCI SOAコンピュート・インスタンスの完全なホスト名を識別します。
  3. OCI SOAコンピュート・インスタンスの/etc/hostsファイルに次のエントリを追加します:
    #################################
    # ALIASES on OCI for DR
    #################################
    virtual_IP_for_admin           virtualIP_fqdn virtualIP_hostname    ALIAS_OF_ADMINVHN
    soahost1_compute_instance_IP  soahost1_fqdn   soahost1_hostname   ALIAS_OF_SOAHOST1 
    soahost2_compute_instance_IP  soahost2_fqdn   soahost2_hostname   ALIAS_OF_SOAHOST2    
    
    次に、セカンダリOCI SOAコンピュート・インスタンスの/etc/hostsファイルの例を示します:
    #################################
    # ALIASES on OCI for DR
    #################################
    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

ドメインネームシステム(DNS)を使用する

プライマリOracle WebLogic Serverホストで使用される仮想ホスト名は、セカンダリ中間層サーバーのVCNによって使用されるDNSリゾルバに追加され、セカンダリOracle WebLogic ServerホストのIPアドレスを指しています。 このモードは、別々のDNSサーバーがプライマリ・オンプレミスで使用され、セカンダリがOracle Cloud Infrastructure (OCI)で使用されている場合に有効です。それ以外の場合、名前の解決で競合が発生する可能性があります。各サイトのサーバーは、これらの名前を独自のIPで解決する必要があります。この方法の利点は、すべてのOracle WebLogic Serverホストのすべての/etc/hostsに追加するのではなく、すべてのエントリをプライベートDNSビューに追加できることです。

セカンダリVCNでプライベート・ビューを作成し、セカンダリIPを持つプライマリによって使用される仮想ホスト名を解決するステップは、次のとおりです:

  1. OCIコンソールで、セカンダリ・リージョンに移動し、プライベート・ビューを作成します。
    1. 「ネットワーキング」「DNS管理」「プライベート・ビュー」「プライベート・ビューの作成」の順にクリックします。
      たとえば、プライベート・ビューにHYBRID_DR_VIRTUAL_HOSTNAMESという名前を付けることができます。
    2. プライベート・ビューで「ゾーンの作成」をクリックします。
      ゾーン名には、仮想ホストの完全なドメインを使用する必要があります。この例では、example.comを使用します。
    3. 仮想ホスト名をこのゾーンに追加します(短縮名)。ただし、セカンダリWLSホストのIPSで解決されます。
    4. 「変更の発行」をクリックします。
  2. セカンダリVCNリゾルバにプライベート・ビューを追加します。
    1. VCNのDNSリゾルバ・リソースをクリックします。
    2. 前に作成したDNSプライベート・ビューを追加します。
      セカンダリVCN内のホストは、プライベート・ビューを使用してプライマリOracle WebLogic Serverホストで使用される仮想ホスト名を解決します。
  3. 仮想ホスト名のpingおよびnslookupを実行して、解決SECONDARYホストを検証します。
    これらは同等のSECONDARY IPで解決する必要があります。

    ノート:

    このOCIプライベート・ビューおよびレコードを作成するためのTerraformコードは、ダウンロード・コードにあります。

WebLogic管理サーバーの仮想IPの作成と構成

高可用性のために、WebLogic管理サーバーでは、ノード間のフェイルオーバーを可能にするために仮想IPにマップされたホスト名を使用する必要があります。

ノート:

プライマリ・システムの管理サーバーにVIPアドレスを使用していない場合は、このタスクをスキップします。

soahost1コンピュート・インスタンスのVNICに追加のIPを割り当てます。追加のIPは、セカンダリOracle Cloud Infrastructure (OCI)システムの管理サーバーによって使用されます。このIPは通常、soahost1コンピュート・インスタンスにアタッチされますが、EDGで説明されているように、soahost2コンピュート・インスタンスに移動して、管理サーバーのローカル・フェイルオーバーを提供できます。

OCIコンソールを使用して新しいIPをVNICにアタッチした後、OSで非永続モードで構成する必要があります(このIPは、管理サーバーのフェイルオーバーのためにsoahost1からsoahost2に移動できるため)。

  1. 新しいセカンダリ・プライベートIPアドレスを、OCIのsoahost1コンピュート・インスタンスのVNICに割り当てます。
    OCIドキュメントの新しいセカンダリ・プライベートIPをVNICに割り当てるにはで説明されているステップを使用します。
    仮想IPとして識別するのに役立つ値をホスト名に指定します。たとえば、hydrsoa-vipです。
  2. 新しいIPがVNICにアタッチされたら、非永続モードでOSで新しいIPアドレスを構成します。
    Linux: セカンダリIPアドレスの詳細で説明されているステップを使用します。
    管理サーバーのフェイルオーバーのためにIPをsoahosthost1からsoahosthost2に移動できるため、これが必要です。
    1. soahosthost1コンピュート・インスタンスのネットワーク・インタフェースおよびアタッチされたIPアドレスを表示します。
      この例では、VNICのプライマリIPは次のとおりです: inet 100.70.10.13/20 brd 100.70.10.255 scope global dynamic ens3
      [opc@hydrsoa1 ~]$ ip addr
      1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
          link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
          inet 127.0.0.1/8 scope host lo
             valid_lft forever preferred_lft forever
          inet6 ::1/128 scope host
             valid_lft forever preferred_lft forever
      2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc pfifo_fast state UP group default qlen 1000
          link/ether 00:00:17:00:05:87 brd ff:ff:ff:ff:ff:ff
          inet 100.70.10.13/20 brd 100.70.10.255 scope global dynamic ens3
             valid_lft 60218sec preferred_lft 60218sec
          inet6 fe80::200:17ff:fe00:587/64 scope link
             valid_lft forever preferred_lft forever
    2. rootとして、ラベルにシーケンス番号を設定して、仮想IPを追加のIPとしてインタフェースに追加します。
      [root@hydrsoa1 ~]# ip addr add 100.70.10.20/20 dev ens3 label ens3:1
    3. インタフェースに新しいIPがあることを確認します。
      この例では、VNICのセカンダリIPは次のとおりです: inet 100.70.10.20/20 scope global secondary ens3:1
      [root@hydrsoa1 ~]# ip addr
      1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
          link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
          inet 127.0.0.1/8 scope host lo
             valid_lft forever preferred_lft forever
          inet6 ::1/128 scope host
             valid_lft forever preferred_lft forever
      2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc pfifo_fast state UP group default qlen 1000
          link/ether 00:00:17:00:05:87 brd ff:ff:ff:ff:ff:ff
          inet 100.70.10.13/20 brd 100.70.10.255 scope global dynamic ens3
             valid_lft 59873sec preferred_lft 59873sec
          inet 100.70.10.20/20 scope global secondary ens3:1
             valid_lft forever preferred_lft forever
          inet6 fe80::200:17ff:fe00:587/64 scope link
             valid_lft forever preferred_lft forever

OCIホストのファイアウォールで必須ポートを開く

各コンピュート・インスタンスには、ローカル・ファイアウォール・サービスがあります。セキュリティ上の理由から、デフォルトの構成では、最低限必要なポート(sshdhcp)を除くすべてのポートの接続を拒否します。Oracle WebLogic Serverで使用されるポートを開く必要があります。

  1. rootユーザーとして、各Oracle SOA Suiteコンピュート・インスタンスのファイアウォール・サービスのステータスおよびルールを確認します。
    bash-4.2# firewall-cmd --state
    running
    bash-4.2# firewall-cmd --list-all
    public (active)
      target: default
      icmp-block-inversion: no
      interfaces: ens3
      sources:
      services: dhcpv6-client ssh
      ports:
      protocols:
      masquerade: no
      forward-ports:
      source-ports:
      icmp-blocks:
      rich rules:
    この出力は、22以外のポートが開いていないことを意味します。
  2. rootユーザーとして、firewall-cmdコマンドを使用して、各SOAコンピュート・インスタンスでシステムのコンポーネントによって使用されるポートを開きます。
    例:
    firewall-cmd --permanent --add-port=7001/tcp
    firewall-cmd --permanent --add-port=5556/tcp
    firewall-cmd --permanent --add-port=7010/tcp
    firewall-cmd --permanent --add-port=8001/tcp
    firewall-cmd --permanent --add-port=8011/tcp
    firewall-cmd --permanent --add-port=8021/tcp
    firewall-cmd --permanent --add-port=9001/tcp
    firewall-cmd --permanent --add-port=7801/tcp
    firewall-cmd --permanent --add-port=7801/udp
    service firewalld reload
  3. Coherenceを使用している場合は、Coherenceクラスタ・ポート(9991など)のtcpおよびudpをエフェメラル・ポート用に、tcpをポート7用に開きます。
    Coherenceでは、Coherenceクラスタ通信用の追加ポートを開く必要があります。
    sudo firewall-cmd --permanent --add-port=9991/udp
    sudo firewall-cmd --permanent --add-port=9991/tcp
    sudo firewall-cmd --permanent --add-port=32768-60999/udp
    sudo firewall-cmd --permanent --add-port=32768-60999/tcp
    sudo firewall-cmd --permanent --add-port=7/tcp
    sudo service firewalld reload
  4. ファイアウォール・サービスのステータスおよびルールを確認してください。
    bash-4.2# firewall-cmd --list-all
    public (active)
      target: default
      icmp-block-inversion: no
      interfaces: ens3
      sources:
      services: dhcpv6-client ssh
      ports: 7001/tcp 5556/tcp 8001/tcp 9001/tcp 9991/tcp ...
      protocols:
      masquerade: no
      forward-ports:
      source-ports:
      icmp-blocks:
      rich rules:

OCIファイル・システムのマウント

以前にOracle Cloud Infrastructure (OCI)に作成されたファイル・システムは、Oracle SOA Suiteコンピュート・インスタンスにマウントする必要があります。

  1. opcユーザーを使用してsshSOAコンピュート・インスタンスに接続し、NFSクライアントをインストールします。
    sudo yum install nfs-utils
  2. SOAコンピュート・インスタンスでマウント・ポイントを作成します。
    たとえば、productsconfigおよびruntimeのディレクトリを作成します。値は異なる場合があります。
    sudo mkdir -p /u01/oracle/products
    sudo mkdir -p /u01/oracle/config
    sudo mkdir -p /u01/oracle/runtime
  3. rootユーザーとして、soahost1コンピュート・インスタンスの/etc/fstabディレクトリにエントリを追加します。
    次の例では、100.70.8.101がマウント・ターゲットのIPアドレスの値の例です。OCIリージョンに複数の可用性ドメインがあり、複数のマウント・ポイントを作成している場合は、各エクスポートに適切なマウント・ターゲットIPを使用します。
    100.70.8.101:/export/soadrconfig	       /u01/oracle/config nfs defaults,nofail,nosuid,resvport 0 0
    100.70.8.101:/export/soadrruntime          /u01/oracle/runtime nfs defaults,nofail,nosuid,resvport 0 0
    100.70.8.101:/export/soadrproducts1        /u01/oracle/products nfs defaults,nofail,nosuid,resvport 0 0
  4. rootユーザーとして、soahost2コンピュート・インスタンスの/etc/fstabディレクトリにエントリを追加します。
    次の例では、100.70.8.101がマウント・ターゲットのIPアドレスの値の例です。OCIリージョンに複数の可用性ドメインがあり、複数のマウント・ポイントを作成している場合は、各エクスポートに適切なマウント・ターゲットIPを使用します。
    100.70.8.101:/export/soadrconfig	        /u01/oracle/config nfs defaults,nofail,nosuid,resvport 0 0
    100.70.8.101:/export/soadrruntime           /u01/oracle/runtime nfs defaults,nofail,nosuid,resvport 0 0
    100.70.8.101:/export/soadrproducts2         /u01/oracle/products nfs defaults,nofail,nosuid,resvport 0 0
  5. rootユーザーとして、各soaコンピュート・インスタンスにファイル・システムをマウントします。
    mount -a 
  6. ファイル・システムが正しくマウントされていることを確認します。
    df -h
    hydrsoa1およびhydrsoa2の出力例を次に示します。
    [root@hydrsoa1 ~]# df -h
    Filesystem                           Size  Used Avail Use% Mounted on
    devtmpfs                              15G     0   15G   0% /dev
    tmpfs                                 15G     0   15G   0% /dev/shm
    tmpfs                                 15G   25M   15G   1% /run
    tmpfs                                 15G     0   15G   0% /sys/fs/cgroup
    /dev/sda3                             39G  4.4G   35G  12% /
    /dev/sda1                            200M  7.4M  193M   4% /boot/efi
    tmpfs                                3.0G     0  3.0G   0% /run/user/0
    tmpfs                                3.0G     0  3.0G   0% /run/user/994
    tmpfs                                3.0G     0  3.0G   0% /run/user/1000
    100.70.8.101:/export/soadrconfig     8.0E     0  8.0E   0% /u01/oracle/config
    100.70.8.101:/export/soadrruntime    8.0E     0  8.0E   0% /u01/oracle/runtime
    100.70.8.101:/export/soadrproducts1  8.0E     0  8.0E   0% /u01/oracle/products
    [root@hydrsoa2 ~]# df -h
    Filesystem                          Size  Used Avail Use% Mounted on
    devtmpfs                             15G     0   15G   0% /dev
    tmpfs                                15G     0   15G   0% /dev/shm
    tmpfs                                15G   25M   15G   1% /run
    tmpfs                                15G     0   15G   0% /sys/fs/cgroup
    /dev/sda3                            39G  4.4G   35G  12% /
    /dev/sda1                           200M  7.4M  193M   4% /boot/efi
    tmpfs                               3.0G     0  3.0G   0% /run/user/0
    tmpfs                               3.0G     0  3.0G   0% /run/user/994
    tmpfs                               3.0G     0  3.0G   0% /run/user/1000
    100.70.8.101:/export/soadrconfig    8.0E     0  8.0E   0% /u01/oracle/config
    100.70.8.101:/export/soadrruntime   8.0E     0  8.0E   0% /u01/oracle/runtime
    100.70.8.101:/export/soadrproducts2  8.0E     0  8.0E   0% /u01/oracle/products
  7. フォルダの所有権をoracleユーザーおよびグループに変更します。
    [root@hydrsoa1 ~]#chown -R oracle:oinstall /u01/oracle/products
    [root@hydrsoa1 ~]#chown -R oracle:oinstall /u01/oracle/config
    [root@hydrsoa1 ~]#chown -R oracle:oinstall /u01/oracle/runtime
    [root@hydrsoa2 ~]#chown -R oracle:oinstall /u01/oracle/products
    [root@hydrsoa2 ~]#chown -R oracle:oinstall /u01/oracle/config
    [root@hydrsoa2 ~]#chown -R oracle:oinstall /u01/oracle/runtime
    
  8. oracleユーザーとしてログインし、これらのファイル・システムにファイルを作成できることを確認します。共有されているファイル・システム(/u01/oracle/config/u01/oracle/runtime)の場合、あるホスト内にファイルを作成すると、他のホストから参照できることを確認します。

OCIブロック・ボリュームのマウント

Oracle SOA Suiteコンピュート・インスタンスで以前に作成されたブロック・ボリュームをマウントします。

たとえば、

ブロック・ボリューム コンピュート・インスタンス マウント・ポイント
soadrBV1 Hydrsoa1 /u02
soadrBV2 Hydrsoa2 /u02
  1. rootユーザーとしてすべてのSOAホストにSSH接続し、マウント・ポイントとして使用するフォルダを作成します。
    [root@hydrsoa1 ~]# mkdir -p /u02
  2. テナンシのOracle Cloud Infrastructure (OCI)コンソールに接続します。
  3. 適切な地域を選択します。
  4. ナビゲーション・メニューを開き、「ストレージ」「ブロック・ストレージ」「ブロック・ボリューム」の順にクリックします。
  5. いずれかのブロック・ボリュームをクリックします。
  6. 「アタッチされたインスタンス」をクリックし、「インスタンスにアタッチ」をクリックします。
    1. iSCSIアタッチメント・タイプを選択します。
      IOPSパフォーマンスは、iSCSIアタッチメントのほうが準仮想化アタッチメントよりも高くなります。
    2. 「読取り/書込み」アクセス・タイプを選択します。
    3. 適切なコンピュート・インスタンスを選択します。
  7. コンピュート・インスタンスに接続します。
  8. ボリュームがアタッチされたら、ブロック・ボリューム・アタッチメントの「iSCSIコマンドおよび情報」をクリックして、ブロック・ボリュームのiSCSIコマンドを実行します。
    「iSCSI Commands and Information」ダイアログ・ボックスに、必要なiSCSIコマンドが表示されます。コマンドは、含まれている適切な情報に基づいて使用できる状態です。コマンドをコピーしてコンピュート・インスタンス・セッションにペーストできます。
  9. ボリュームを一覧表示し、新しいボリュームを特定します。
    例:
    bash-4.2# lsblk
    NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sdb      8:16   0   50G  0 disk ------------> this is the new one
    sda      8:0    0 46.6G  0 disk
    ├─sda2   8:2    0    8G  0 part [SWAP]
    ├─sda3   8:3    0 38.4G  0 part /
    └─sda1   8:1    0  200M  0 part /boot/efi
  10. 新しいボリュームをフォーマットします。
    例:
    bash-4.2# mkfs.xfs -f /dev/sdb
    
    meta-data=/dev/sdb               isize=256    agcount=4, agsize=3276800 blks
             =                       sectsz=4096  attr=2, projid32bit=1
             =                       crc=0        finobt=0, sparse=0, rmapbt=0
             =                       reflink=0
    data     =                       bsize=4096   blocks=13107200, imaxpct=25
             =                       sunit=0      swidth=0 blks
    naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
    log      =internal log           bsize=4096   blocks=6400, version=2
             =                       sectsz=4096  sunit=1 blks, lazy-count=1
    realtime =none                   extsz=4096   blocks=0, rtextents=0
  11. ボリュームをマウントします。
    1. コマンドblkidを使用して、新しいブロック・ボリュームのUUIDを識別します。
      例:
      bash-4.2# blkid
      /dev/sda3: UUID="1517ce80-df91-45cc-a27e-2aa38b3f6646" TYPE="xfs" PARTUUID="c42a8415-7230-42bb-970a-3b4c3142d279"
      /dev/sda1: SEC_TYPE="msdos" UUID="A1E6-54F8" TYPE="vfat" PARTLABEL="EFI System Partition" PARTUUID="78756fd0-3be7-4fbb-b8a8-3d6f68a84b34"
      /dev/sda2: UUID="5384ac33-8ffe-4ad8-8d40-6307f2756dc5" TYPE="swap" PARTUUID="0adbce70-6c26-44fd-bec5-c191a6f9e02f"
      /dev/sdb: UUID="47955773-743f-4bde-bf2f-68ce0f71dbf9" TYPE="xfs"
    2. /etc/fstabファイルを編集し、ブロック・ボリュームをマウントする行を追加します。
      例:
      UUID=47955773-743f-4bde-bf2f-68ce0f71dbf9 /u02 xfs defaults,_netdev,nofail 0 2
    3. ブロック・ボリュームをマウントします。
      bash-4.2# mount -a
    4. マウントされていることを確認します。
      [opc@hydrsoa1 ~]$ df -h
      Filesystem                              Size  Used Avail Use% Mounted on
      devtmpfs                                15G     0   15G   0% /dev
      tmpfs                                   15G     0   15G   0% /dev/shm
      tmpfs                                   15G  8.8M   15G   1% /run
      …
      /dev/sdb                                50G   33M   50G   1% /u02
      …
  12. ブロック・ボリュームがマウントされたら、マウントの所有権を適切なoracleユーザーに変更します。
    bash-4.2# chown oracle:oinstall /u02
  13. ホストを再起動し、再起動後にブロック・ボリュームが自動的にマウントされていることを確認します。
  14. このステップを繰り返して、残りのセカンダリSOAホストにブロック・ボリュームをマウントします。
    ボリュームのアタッチの詳細は、Oracle Cloud Infrastructureドキュメンテーションを参照してください。

TNS別名の作成

Oracle Cloud Infrastructure (OCI) DBシステムを指すTNSディレクトリおよびtnsnames.oraファイルを作成します。セカンダリのWebLogicドメイン構成はプライマリのコピーになるため、WebLogicデータソースでTNS別名アプローチを使用するには、プライマリにある同じアーティファクトを作成する必要があります。

  1. oracleユーザーとして、プライマリ中間層ホストで使用されているのと同じパスを使用して、各SOAコンピュート・インスタンスにtnsフォルダを作成します。
    これは、プライマリからレプリケートされないローカル・フォルダである必要があります。
    [oracle@hydrsoa1 ~]$ mkdir -p /home/oracle/tnsnames_dir
    [oracle@hydrsoa2 ~]$ mkdir -p /home/oracle/tnsnames_dir
  2. プライマリで使用されているがOCI DBシステムのアドレスを指すtnsエイリアスが同じディレクトリにtnsnames.oraファイルを作成します。

    サービス名は、プライマリとセカンダリで同じである必要があります。

    SOAPDB =
    (DESCRIPTION=
      (ADDRESS_LIST=
        (LOAD_BALANCE=ON)
        (ADDRESS=(PROTOCOL=TCP)(HOST=hydrdb-scan.dbTierSubnet.hydrvcn.oraclevcn.com)(PORT=1521))
      )
      (CONNECT_DATA=(SERVICE_NAME=soapdb.example.com))
    )

oracleユーザー環境変数の作成

通常、WebLogicホストのoracleユーザーのプロファイルにWebLogic関連の環境変数があります。たとえば、ORACLE_HOMEJDK_HOMEPATHASERVER_HOMEなどです。

  1. プライマリSOAホストにあるoracleユーザーのプロファイル・ファイルを確認します。
  2. セカンダリで、同じWebLogic関連の環境変数をoracleユーザーのプロファイル・ファイル(.bashrcまたは.bash_profile)に追加します。

    ノート:

    セカンダリSOAホスト内のoracleユーザーの.bashrcファイルには、定義されている変数(MIDDLEWARE_HOMEWLS_HOMEなど)がすでに含まれている場合がありますが、環境のフォルダと一致しない可能性があり、有効ではありません。必ず環境フォルダに従って削除または変更してください。