Oracle Exadataデータベース・サーバーとGrid Infrastructure更新の組合せ

Oracle Exadataデータベース・サーバーとOracle Grid Infrastructure更新を組み合せて使用すると、複数の独立した機能を利用できます。

Grid Infrastructureへのパッチ適用とExadataデータベース・ノードの更新ではいずれも、そのノード上のデータベース・インスタンスをすべて停止して起動する必要があります。実行中のアプリケーションの数およびインスタンスの停止と起動に要する時間によっては、これにかなりの時間がかかる場合があります。これら両方のパッチ適用アクションを個別に実行すると、本番データベースの停止時間は2倍になります。Oracle FPPの複合パッチ適用機能を使用すると、これら両方のパッチ適用アクションが、各ノードのデータベース・インスタンスの停止および起動のシーケンスを1つのみ必要とする単一の統合パッチ適用プロセスに自動化されます。バッチ内の複数のノードで複合パッチ適用を実行すると、パッチ適用ウィンドウ全体がさらに停止します。

Oracle FPPでは、内部的にpatchmgrツールを使用してExadataデータベース・ノードにパッチを適用します。複合パッチ適用方法では、本来のOracle FPP実装の統合フローをOracle Grid Infrastructureパッチ適用に使用した後、patchmgrツールを起動して各Exadataデータベース・ノードにパッチを適用します。

Oracle Exadataデータベース・ノードとOracle Grid Infrastructureパッチ適用を組み合せて完了するには、次で説明する操作を実行する必要があります。

ノート:

Oracle Exadataイメージの作成およびデプロイに停止時間は必要なく、Oracle Grid InfrastructureおよびOracle Exadataデータベースにパッチを適用する前にこれら両方の操作を実行できます。Oracle FPPサーバーでOracle Exadataイメージを作成する必要があるのは、パッチ適用サイクルで1回のみですが、Oracle Exadataイメージをデプロイし、各ターゲット・システムでOracle Grid InfrastructureおよびOracle Exadataデータベース・ノードにパッチを適用する必要があります。

Oracle Exadataイメージの作成

rhpctl import imageコマンドを使用して、指定されたパスのソフトウェアの内容すべてをOracle Fleet Patching and Provisioningサーバー(FPPS)にコピーし、Oracle Exadata更新イメージを作成します。

例6-1 Oracle Exadata更新イメージの作成

次のコマンドは、Oracle Exadataイメージを作成します。この例では、imageは追加するOracle Exadataイメージの名前を指定し、pathはインポートするOracle Exadataソフトウェア・ホームの絶対パスの場所を指定し、imagetypeはOracle ExadataソフトウェアのEXAPATCHSOFTWAREを指定し、versionはOracle Exadataソフトウェアのバージョンを指定します。

$ rhpctl import image -image EXADATAIMAGEV1 
   -path /tmp/ExadataPatchBundle -imagetype EXAPATCHSOFTWARE -version 19.2.2.0.0.190513.2

このコマンドを使用してOracle Exadataソフトウェア・ホームをインポートする場合、versionパラメータは、データベース・ノードのpatchmgrに必要なOracle Exadataソフトウェアのバージョンである必要があります。pathパラメータには、Oracle Exadata更新のzipファイルを含める必要があります。

関連項目:

rhpctl import imageコマンドの完全な構文は、rhpctl import imageを参照してください

Oracle Exadata更新イメージのデプロイ

rhpctl deploy imageコマンドを使用して、Oracle Exadata更新イメージをターゲットに伝播します。

例6-2 Oracle Exadataイメージのデプロイ

次のコマンドは、Oracle Exadataイメージをクライアント・クラスタにデプロイします。この例では、imageはデプロイするOracle Exadataイメージの名前、clientはイメージをデプロイするクラスタの名前、pathはターゲット側またはクライアント側にOracle Exadataソフトウェア・ホームをデプロイする絶対パスの場所を指定します。

$ rhpctl deploy image -image EXADATAIMAGEV1 -client CLUSTER1 -path /exadatasoftware

targetnodeパラメータは、ホームをホストしているノードがOracle Fleet Patching and Provisioningクライアントでない場合に必要です。ターゲット・ノードまたはクライアント・オプションが指定されていない場合、Oracle ExadataイメージはOracle Fleet Patching and Provisioningサーバーにデプロイされます。

関連項目:

rhpctl deploy imageコマンドの完全な構文は、rhpctl deploy imageを参照してください

Oracle Grid Infrastructure移動とデータベース・ノード更新の組合せ

Oracle Exadataデータベース・ノードの更新中にOracle Grid Infrastructureソフトウェア・スタックをホーム間で移動するには、rhpctl move gihomeコマンドを使用します。

例6-3 Oracle Grid Infrastructureホームの移動およびデータベース・ノードの更新

次の例では、クライアント・クラスタでOracle Grid Infrastructureの移動とデータベース・ノードの更新を組み合せて実行します。この例では、sourcewcはソース作業用コピーの名前を指定し、destwcはOracle Grid Infrastructureホームの移動先の宛先作業用コピーの名前を指定し、imageはOracle Exadataイメージの名前を指定し、batchesはノードのカンマ区切りリストを指定します。ここで、各バッチはカッコで囲まれたノード名のカンマ区切りリストであり、ノード名は二重引用符("")で囲まれたリストを"(nA,nB,...),(...,nY,nZ)"の形式で指定します。iso_repoはISOリポジトリ内のイメージを指定し、pathmgocはパッチ・マネージャの場所を指定します。

$ rhpctl move gihome -sourcewc prodHomeV1 -destwc prodHomeV2 -image EXADATAIMAGEV1 
    -batches “(rac07box1,rac07box2,rac07box3),(rac07box4)" 
   -patchmgrargs “-ignore_alerts" -iso_repo p28802055_192000_Linux-x86-64.zip -client prodcluster 
    -patchmgrloc /patchMgr/dbserver_patch_19.190306

rhpctl move gihomeコマンドを起動するたびに、FPPはまずデータベース・ノードにパッチを適用し、次にOracle Grid Infrastructureにパッチを適用します。これは、指定したバッチ内の各ノードの処理順序です。

最初のバッチに複数のデータベース・ノードが含まれる場合、FPPはすべてのノードに対してpatchmgrをパラレルに起動します。ノードがpatchmgr後の操作を含むpatchmgr操作を完了するとすぐに、FPPはそのノードでOracle Grid Infrastructureパッチ適用を開始します。このノードでOracle Grid Infrastructureパッチ適用が完了すると、FPPは、データベース・ノードのパッチ適用がこれらのノードで完了したときに、他のノードでOracle Grid Infrastructureパッチ適用からパッチ適用を開始します。

patchmgrの失敗またはpatchmgr操作のタイムアウトが原因でノードの再起動が遅延した場合は、ノードのバックアップ後にrhpctl move gihomeコマンドを再開できます。

関連項目:

rhpctl move gihomeコマンドの完全な構文は、rhpctl move gihomeを参照してください