プライベート・クラウド・アプライアンスのIaaSの構成

Oracle Private Cloud ApplianceでOracle RACデータベースを作成する前に、ネットワーク、コンピュート、ストレージ、オペレーティング・システムを構成し、Oracle Grid InfrastructureおよびOracle RAC Database Softwareをインストールする必要があります。プライベート・クラウド・アプライアンスのIaaS構成は、次のアーキテクチャのようになります。



rac-pca-architecture.zip (rac-pca-architecture.zip)

インフラストラクチャを作成する前に、次の前提と考慮事項を確認してください。

  • Oracle RAC環境のすべてのノード(仮想マシン)は、ユーザーおよびアプリケーションがデータベースにアクセスできるように、少なくとも1つのパブリック・ネットワークに接続する必要があります。
  • Oracle RACでは、パブリック・ネットワークに加えて、ノードとそれらのノードで実行されているデータベース・インスタンス間の通信にのみ使用されるプライベート・ネットワーク接続が必要です。
  • Oracle Private Cloud Applianceを使用する場合、構成できるプライベート・ネットワーク・インターコネクトは1つのみです。このネットワークは通常、インターコネクトと呼ばれます。インターコネクト・ネットワークは、クラスタ内のすべてのサーバーを接続するプライベート・ネットワークです。
  • Compute Enclave UI (CEUI)へのアクセスに加えて、CEUIに依存するかわりにOCIを使用してコマンドを実行するように、要塞VMでOCI CLIを構成する必要もあります。

次の項では、プライベート・クラウド・アプライアンス・システムでコンピュート、ネットワークおよびストレージの構成を作成する方法について説明します。

ネットワークの構成

  1. 仮想クラウド・ネットワーク(VCN)を作成し、有効なCIDR範囲を定義します。Compute Enclave UI (CEUI)またはOCI CLIを使用できます。
  2. パブリック・サブネットとプライベート・サブネットを作成します。さらに、動的ルーティング・ゲートウェイ、インターネット・ゲートウェイ、セキュリティ・ルール、DHCPオプション、ルーティング表などのゲートウェイを定義します。
  3. プライマリDNSゾーンおよびDNSゾーン・レコードを作成します。
  4. DNSゾーン・レコードにSCAN名と仮想IPを登録します。次のように構成します。
    • Customer EnclaveまたはOCI CLIを使用して、DNSゾーン内の3つの異なるIPアドレスに解決するSCAN名を登録します。
    • カスタマ・エンクレーブを使用して、またはOracle RACクラスタ内の各ノードでOCI CLIを使用して、仮想IP名をDNSゾーンのIPアドレスに登録します。
    [root@vmrac1 ~]#nslookup node1_name-vip.domain_name
    Server: X.X.X.X
    Address: X.X.X.X
    Name: node1-vip.domain_name
    Address: X.X.X.Y4
    [root@vmrac2 ~]#nslookup node2_name-vip.domain_name
    Server: X.X.X.X
    Address: X.X.X.X
    Name: node2-vip.domain_name
    Address: X.X.X.Y5
  5. ステアリング・ポリシーを作成し、回答を3つのIPアドレスとして追加して、同じSCAN名に解決します。
  6. ステアリング・ポリシーを追加し、DNSゾーンをステアリング・ポリシーにアタッチします。
  7. SCAN名の結果を確認します。例:
    [root@vmrac1 ~]# nslookup SCAN_name.domain_name
    Server: X.X.X.X
    Address: X.X.X.X
    Name: SCAN_name
    Address: X.X.X.Y1
    Name: SCAN_name
    Address: X.X.X.Y2
    Name: SCAN_name
    Address: X.X.X.Y3

コンピュート・ノードの構成

これらのステップでは、コンピュートVMを作成する方法について説明します。
  1. 同じパブリック・サブネットで2つのVMを起動します。次のようにVMを構成します。
    • OL7.9プラットフォーム・イメージを持つ2つのプライベート・クラウド・アプライアンス・コンピュート・インスタンス。
    • VMシェイプVM.PCAStandard1.x。ここで、xは、クラスタ・ノードおよび2つ以上のVNICにCPUを提供するのに十分な大きさである必要があります。各クラスタ・ノードには、2つ以上のOCPUが必要です。
    • 両方のノードでプライマリ(デフォルト) VNICの「ソース/宛先チェックのスキップ」を有効にします。詳細は、Oracle Private Cloud Applianceユーザー・ガイドのVNICの更新に関する項を参照してください。
  2. 両方のコンピュートノードでセカンダリIPを次のように構成します。
    • コンピュート・インスタンスごとに、クラスタ・ノードごとに1つのプライマリVNICがすでに作成されています。
    • コンピュート・インスタンスのプライマリVNICと同じVCNサブネット内。
    • プライマリIPアドレスには、目的のクラスタ・ホスト名であるホスト名が割り当てられます。
    • 割り当てられたホスト名cluster-node-name-vipでこのVNICにセカンダリIPアドレスを割り当てます。
  3. 同じプライベート・サブネット内の両方のノードで、次のようにプライベートIPを構成します。
    • コンピュート・インスタンスごとに、クラスタ・ノードごとに1つのセカンダリVNICを作成します。詳細は、Oracle Private Cloud Applianceユーザー・ガイドのセカンダリVNICのインスタンスOSの構成を参照してください。Oracleスクリプトsecondary_vnic_all_configure.shをダウンロードして実行し、/etc/sysconfig/network-scripts/ifcfg*ファイルを編集してセカンダリVNICを有効にする必要がある場合があります。
    • インスタンスの起動後に、両方のノードのプライベート・サブネットに2つ目のVNICを追加します。これにより、プライベート・サブネットCIDR範囲のIPアドレスが割り当てられます。
    • プライベート・インターコネクト・トラフィックが問題なく通過できるように、すべてのファイアウォールが無効になっていることを確認します。
    • /etc/hostsファイル内のプライベートIPのエントリを更新します。
    • オプションで、IPアドレスを入力するか、プライベート・サブネットCIDR範囲からIPアドレスをシステムで割り当てることができます。
    Cat /etc/hosts
    127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
    X.X.X.A1 node1 node1.domain_name 
    X.X.X.A2 node2 node2.domain_name
    X.X.X.A3 node1-vip node1-vip.domain_name
    X.X.X.A4 node2-vip node2-vip.domain_name
    X.X.Y.B1 node1-priv node1-priv.domain_name
    X.X.Y.B2 node2-priv node2-priv.domain_name
    
    前述の例に示すように、両方のノードの/etc/hostsファイルには、パブリックIP、仮想IPおよびプライベートIPのエントリが必要です。
  4. ローカル・ブロック・ボリュームを各ノードにアタッチします。
    コンピュート・インスタンスごとに、クラスタ・ノードごとに1つの新しいブロック・ボリュームを作成し、それを読取り/書込みモードでコンピュート・インスタンスにアタッチします。このボリュームは、Grid InfrastructureホームおよびOracle Database Homeに使用されます。

ストレージの構成

Oracle RACでは、Oracle Automatic Storage Management (Oracle ASM)を使用して、効率的な共有記憶域アクセスを実現します。Oracle Automatic Storage Management (Oracle ASM)は、基礎となるクラスタ化されたボリューム・マネージャとして機能します。データベース管理者に、すべてのサーバーおよびストレージ・プラットフォームで一貫性のある単純なストレージ管理インタフェースを提供します。Oracle Databaseファイル専用の垂直統合ファイル・システムとボリューム・マネージャであるOracle Automatic Storage Management (Oracle ASM)は、ファイル・システムを簡単に管理できるRAW I/Oのパフォーマンスを提供します。
  1. 共有ストレージ・ディスク・グループを作成します。Oracle Automatic Storage Management (Oracle ASM)ディスク・グループに使用されるブロック・ボリュームを少なくとも1つ作成します。このブロック・ボリュームは、両方のVMに共有モードでアタッチし、Oracle Automatic Storage Management (Oracle ASM)ディスクのAFDを構成し、asmcmdコマンドを使用してAFD_labelを作成する必要があります。これらのブロック・ボリュームは、ASMの下のクラスタ共有ディスクに使用されます。
  2. ディスクのアクセス権が次のように構成されていることを確認してください。
    chown grid:asmadmin /dev/sdc
  3. 再起動後もディスク権限を維持するように設定します。次のファイルを作成し、ディスク権限を更新します。
    /etc/udev/rules.d
  4. 次のように構成されたローカルストレージマウントポイントを作成します。
    • 各ノードのローカル・マウント・ポイントに使用する2つのブロック・ボリュームを作成します。VMごとに、新しく作成された1つのブロック・ボリュームを読取り/書込みモードでアタッチする必要があります。
    • 各ノードに/u01として各VMにローカル・マウント・ポイントを作成します。
    • このブロック・ボリュームの上にファイルシステムを作成し、各ノードで/u01を作成します。各ノードの/u01にファイルシステムを作成します。
    • リブート後も保持されるように、/etc/fstabにエントリを追加してください。このマウント・ポイントは、各ノードのOracle Grid InfrastructureホームおよびOracle Databaseホームに使用されます。

オペレーティング・システムの構成

Oracle Grid InfrastructureおよびOracle RACのユーザー、グループおよび環境を構成します。
  1. プライマリ・グループとセカンダリ・グループを持つグリッドおよびOracleユーザーを作成し、両方のノードのユーザーIDを確認します。
    [root@vmrac1 ~]#groupadd -g 201 oinstall
    groupadd -g 200 dba
    groupadd -g 202 asmadmin
    groupadd -g 203 asmdba
    [root@vmrac1 ~]#useradd -u 200 -g oinstall -G dba,asmdba oracle
    useradd -u 123 -g oinstall -G dba,asmdba,asmadmin grid
    id oracle
    id grid
    root@vmrac2 ~]#groupadd -g 201 oinstall
    groupadd -g 200 dba
    groupadd -g 202 asmadmin
    groupadd -g 203 asmdba
    [root@vmrac2 ~]#useradd -u 200 -g oinstall -G dba,asmdba oracle
    useradd -u 123 -g oinstall -G dba,asmdba,asmadmin grid
    id oracle
    id grid
  2. rootユーザーとして両方のノードでこれらのコマンドを実行し、ソフトウェア・インストール・ディレクトリを作成します。
    [root@vmrac1 ~]#mkdir -p /u01/app/21.0.0/grid
    chown grid:oinstall /u01/app/21.0.0/grid
    mkdir -p /u01/app/grid
    mkdir -p /u01/app/oracle
    chown -R grid:oinstall /u01 
    chown oracle:oinstall /u01/app/oracle
    chmod -R 775 /u01/
    mkdir /etc/oraInventory
    chown grid:oinstall /etc/oraInventory
    chmod 770 /etc/oraInventory
  3. 3人のすべてのユーザー(rootgridおよびoracle)に対してパスワードなしSSH構成を構成します。ロール分離がない場合は、Oracle Grid InfrastructureOracle RACの両方のデータベース・ソフトウェアに必要なoracleユーザーは1つのみです。

Oracle Grid InfrastructureおよびOracle RACデータベース・ソフトウェアの設定

  1. Oracle Grid InfrastructureおよびOracle RACデータベース・ソフトウェアの両方をステージングします。
  2. ステージング・ディレクトリを作成します。例: /u01/app/stage
  3. Oracle Grid Infrastructureソフトウェアをステージング・ディレクトリ(/u01/app/stage)にステージングしてから、Oracle Grid Infrastructureソフトウェアをソフトウェア・インストール・ディレクトリ(/u01/app/21.0.0/grid)に解凍します。
  4. クラスタ検証ユーティリティを実行して、インストールの前提条件を満たしていることを確認します。例: GI_HOME/bin/runcluvfy.sh stage -pre crsinst -n node1,node2 -fixup -verbose
    /u01/app/21.0.0/grid/bin/runcluvfy.sh stage -pre crsinst -n racvm1,racvm2 -fixup -verbose
    インストールを続行する前に、クラスタ検証出力のエラーを修正してください。cluvfyコマンドで生成された修正スクリプトも使用できます。