5 高速ホーム・プロビジョニング、スケーリング、パッチ適用およびアップグレード

高速ホーム・プロビジョニングは、ソフトウェア・ホームをシングル・クラスタからデータ・センター内の任意の数のノードにデプロイする方法で、これにより、ソフトウェアのスケーリング、パッチ適用およびアップグレードも容易になります。

高速ホーム・プロビジョニングを使用して、OracleホームのテンプレートをOracleソフトウェア(データベース、ミドルウェア、アプリケーションなど)のイメージ(ゴールド・イメージと呼ばれます)として作成、格納および管理します。すべてのゴールド・イメージの作業用コピーを作成し、その作業用コピーをデータ・センターの任意のノードにプロビジョニングできます。

ゴールド・イメージは高速ホーム・プロビジョニング・サーバー上のリポジトリに格納されます。このサーバーは、高可用性プロビジョニング・システムである高速ホーム・プロビジョニング・サーバー・クラスタ内の1つのサーバーで実行されています。このプロビジョニング方法によってOracleホームへの迅速なパッチ適用を簡単に行えるようになり、停止時間が最小限に短縮され、場合によっては完全に解消します。

高速ホーム・プロビジョニングによって大規模環境でのメンテナンスが簡略化されます。高速ホーム・プロビジョニング・サーバー上のソフトウェア・ホームを1回だけ更新すればよいためです。

高速ホーム・プロビジョニングの機能のリストを次に示します。

クライアントなしのターゲット

Oracle Clusterwareの以前のリリースでは、高速ホーム・プロビジョニング・サーバーで管理できるのは、そのサーバー自体と、同じリリースの高速ホーム・プロビジョニング・クライアントのソフトウェアのみでした。このリリースのOracle Clusterwareでは、高速ホーム・プロビジョニング・サーバーによって、それ自体と、同じリリースの高速ホーム・プロビジョニング・クライアントを管理でき、さらに、Oracle Grid Infrastructure 11g リリース2 (11.2.0.3と11.2.0.4)および12c リリース1 (12.1.0.2)を実行するインストールも管理できます。これらのターゲットは、RHPサーバーでプロビジョニングされたインストールか、または既存のインストールになります。

新しいサーバー・プールのプロビジョニング

高速ホーム・プロビジョニング・サーバーでは、Oracleソフトウェア・インベントリのないノードにOracle Grid Infrastructure (11g リリース2 (11.2.0.4)と、12c リリース1 (12.1.0.2)およびリリース2 (12.2))をインストールして構成してから、完全な高速ホーム・プロビジョニング機能を使用してそれらのデプロイメントを管理できます。

あらゆるソフトウェア・ホームのプロビジョニングおよび管理

高速ホーム・プロビジョニングにより、あらゆるソフトウェア・ホームからゴールド・イメージを作成できます。その後、そのソフトウェアを作業用コピーとして任意の高速ホーム・プロビジョニング・クライアントまたはターゲットにプロビジョニングできます。ソフトウェアは、高速ホーム・プロビジョニング・クライアントで実行するバイナリか、またはターゲットで実行するバイナリです。

高速ホーム・プロビジョニングはOracle Grid Infrastructureの一部であり、Oracle Databaseのナレッジが含まれるため、次の各項で説明するOracle Grid InfrastructureおよびOracle Databaseホームのプロビジョニング、スケーリング、パッチ適用およびアップグレードを行う機能が組み込まれています。

Oracle Grid Infrastructureのプロビジョニング、スケーリング、パッチ適用およびアップグレード

高速ホーム・プロビジョニング・サーバーでは、Oracle Grid Infrastructure (11g リリース2 (11.2.0.4)と、12c リリース1 (12.1.0.2)およびリリース2 (12.2))ホームのプロビジョニングとOracle Grid Infrastructure構成のノードの追加と削除を実行でき、さらにこのサーバーを使用して、Oracle Grid Infrastructureホームのパッチ適用とアップグレードを行うこともできます。また、パッチ適用手順の前に簡単に戻すことができるロールバック機能もあります。Oracle Grid Infrastructureのパッチ適用中に、高速ホーム・プロビジョニングを使用して、クラスタにホストされる任意のデータベース・ホームにオプションでパッチを適用できます。

注意:

高速ホーム・プロビジョニングでは、Oracle Restartのプロビジョニング、パッチ適用、アップグレードは行われませんが、Oracle Restart上で単一インスタンスのデータベースをプロビジョニングすることはできます(後続の項を参照)。

Oracle Databaseのプロビジョニング、スケーリング、パッチ適用およびアップグレード

高速ホーム・プロビジョニングを使用して、次のリリースのOracle DatabaseのOracle Databaseソフトウェアをプロビジョニングできます。
  • Oracle Database 11gリリース2(11.2.0.4)

  • Oracle Database 12c リリース1 (12.1.0.2)

  • Oracle Database 12cリリース2 (12.2)

このようなソフトウェアをプロビジョニングするとき、高速ホーム・プロビジョニングによって、様々なタイプのデータベース(Oracle Real Application Clusters (Oracle RAC)、シングル・インスタンス、Oracle Real Application Clusters One Node (Oracle RAC One Node)データベースなど)を異なるタイプの記憶域に作成するための追加機能や、その他のオプション(テンプレートの使用やコンテナ・データベース(CDB)の作成など)が提供されます。高速ホーム・プロビジョニング・サーバーにより、Oracle RAC構成へのノードの追加およびOracle RAC構成からのノードの削除を実行できます。また、高速ホーム・プロビジョニングにより、データベース・ソフトウェアへのパッチ適用が改善され、効率がよくなります。このため、ソフトウェアのリモートでの高速パッチ適用が可能になり、ほとんどのケースでデータベースの停止時間が発生しません。

高速ホーム・プロビジョニングを使用すると、Oracle Database 11g リリース2 (11.2.0.4)、12c リリース1 (12.1.0.2)および12c リリース(12.2)のプロビジョニング、スケーリングおよびパッチ適用を実行できます。また、Oracle Databaseを11g リリース2 (11.2.0.3)から11g リリース2 (11.2.0.4)に、11g リリース2 (11.2.0.4)から12c リリース1 (12.1.0.2)に、および11g リリース2 (11.2.0.4)または12c リリース1 (12.1.0.2)から12c リリース2 (12.2)にアップグレードできます。

単一インスタンス・データベースのサポート

高速ホーム・プロビジョニングを使用して、クラスタ、Oracle Restartまたは単一のスタンドアロン・ノードで実行される単一インスタンス・データベースをプロビジョニング、パッチ適用およびアップグレードできます。

高度なパッチ適用機能

Oracle Grid InfrastructureまたはOracle Databaseホームにパッチを適用する場合、高速ホーム・プロビジョニングでは、クラスタの一部またはすべてのノードに順次ではなくパラレルでパッチを適用することでパッチ適用プロセスを高速化するバッチ・モードが提供されます。

Oracle Databaseホームに対して、非結合のノードのセットを定義できます。ノードの各セットは順次更新されます。それ自体で実行されるデータベース・インスタンスへの参照を含むセットを定義することで、サービス全体がオフラインになることがなくなり、ローリング更新の影響を最小化できます。この目的のために、バッチ・セットの定義に役立つsmartmoveオプションを使用できます。

もう1つの拡張機能はアプリケーションの継続性との統合で、メンテナンスの影響の解消に役立ちます。これにより、クラスタ内でサービスを正常にドレインおよび再配置して、ユーザーに対してメンテナンスを完全に隠すことができます。

通知

高速ホーム・プロビジョニング・サーバーは、データ・センターで使用できるソフトウェア・ホームの中央リポジトリです。そのため、データ・センター全体の管理者が、自身の担当する領域に影響する可能性があるインベントリへの変更を把握する必要があります。

高速ホーム・プロビジョニングにより、各ユーザーがイメージ・シリーズ・イベントにサブスクライブできます。サブスクライバには、特定のイメージ・シリーズの使用可能なイメージに対する変更が電子メールで通知されます。また、クライアントで作業用コピーが追加または削除されたときに、ユーザーに電子メールで通知できます。

カスタム・ワークフロー・サポート

イメージのインポート、作業用コピーの追加または削除、ソフトウェア・ホームの管理など、様々な高速ホーム・プロビジョニングの操作に関するアクションを作成できます。操作ごとに異なるアクションを定義して、操作が適用されるイメージのタイプでさらに区別できます。定義したアクションは、特定の操作の前後で実行でき、操作が適用されるデプロイメント(高速ホーム・プロビジョニング・サーバー、高速ホーム・プロビジョニング・クライアントを実行していないターゲットまたは高速ホーム・プロビジョニング・クライアントを実行しているターゲット)で実行されます。

失敗した操作の再開

イメージの追加、作業用コピーのプロビジョニング、あるいはスケーリング、パッチ適用またはアップグレードの実行などの操作が失敗した場合、高速ホーム・プロビジョニングでエラーがレポートされて停止します。問題が解決した(たとえば、ターゲット・ノードのディレクトリの権限または所有権の構成ミスなど)後で、失敗したRHPCTLコマンドを再度実行して、失敗したところから再開できます。これにより、失敗の前に完了した作業を再度実行する必要がなくなります。

監査コマンド

高速ホーム・プロビジョニング・サーバーでは、すべての高速ホーム・プロビジョニングの操作の実行とその結果(成功または失敗)が記録されます。監査メカニズムにより、様々なディメンションで監査ログを問い合せることができ、さらにその内容とサイズを管理できます。

注意:

  • HP-UXまたはWindowsオペレーティング・システムでは高速ホーム・プロビジョニングはサポートされません。

  • 高速ホーム・プロビジョニング・サーバーでは、オペレーティング・システムのイメージは管理されません。

この項には次のトピックが含まれます:

5.1 高速ホーム・プロビジョニングのアーキテクチャ

高速ホーム・プロビジョニングのアーキテクチャに関する概念です。

高速ホーム・プロビジョニングのアーキテクチャは、高速ホーム・プロビジョニング・サーバーと、任意の数の高速ホーム・プロビジョニング・クライアントおよびターゲットで構成されます。高可用性を実現するために、マルチノード・クラスタに高速ホーム・プロビジョニング・サーバーをデプロイすることをお薦めします。

高速ホーム・プロビジョニング・サーバー・クラスタはすべてのデータのリポジトリです。データは大きく分けて次の2つのタイプがあります。

  • ゴールド・イメージ

  • ユーザー、ロール、権限およびアイデンティティに関連するメタデータ

高速ホーム・プロビジョニング・サーバーは、Oracle Databaseホーム、Oracle Grid Infrastructureホームおよびその他のアプリケーション・ソフトウェア・ホームのプロビジョニングでセントラル・サーバーとして動作し、高速ホーム・プロビジョニング・サーバーをホストするクラスタ、高速ホーム・プロビジョニング・クライアント・クラスタおよびターゲットでそれらを利用できるようにします。

ユーザーは、高速ホーム・プロビジョニング・サーバーまたは高速ホーム・プロビジョニング・クライアントで操作し、Oracleホームのデプロイメントをリクエストしたり、ゴールド・イメージを問い合せます。ユーザーがゴールド・イメージを指定してOracleホームをリクエストすると、高速ホーム・プロビジョニング・クライアントは、高速ホーム・プロビジョニング・サーバーと通信してそのリクエストを渡します。高速ホーム・プロビジョニング・サーバーが適切なアクションを実行してリクエストを処理します。具体的には、Oracle Automatic Storage Management Cluster File System (Oracle ACFS)、ネットワーク・ファイル・システム(NFS)、ローカル・ファイル・システムなどのテクノロジを使用して、ゴールド・イメージのコピーをインスタンス化し、高速ホーム・プロビジョニング・クライアント・クラスタで利用できるようにします。

5.1.1 高速ホーム・プロビジョニング・サーバー

高速ホーム・プロビジョニング・サーバーは、Oracle Automatic Storage Management (Oracle ASM)、Oracle Automatic Storage Management Cluster File System (Oracle ACFS)、Grid Naming Service (GNS)、およびその他のコンポーネントを使用する、高可用性ソフトウェア・プロビジョニング・システムです。

高速ホーム・プロビジョニング・サーバーは、Oracleホームのプロビジョニングで主にセントラル・サーバーとして動作し、高速ホーム・プロビジョニング・クライアントおよびターゲットがOracleホームを利用できるようにします。

高速ホーム・プロビジョニング・サーバーの機能:

  • 管理ホームのゴールド・イメージおよびイメージ・シリーズを効率よく保存します(ユーザー、ロールおよび権限に関連する、個別のバイナリおよびメタデータを含む)。

  • リモート・クラスタでマウントを使用してアクセスされるホームに、高可用性ネットワーク・ファイル・システム(HANFS)のエクスポートを提供します。

  • リクエストに応じて、クライアントに利用可能なホームのリストを提供します。

  • ソフトウェア・ホームにパッチを1回適用してから、そのホームを高速ホーム・プロビジョニング・クライアントまたはその他のターゲットにデプロイします。すべてのサイトにパッチを適用するのではありません。

  • 既存のデプロイに関するレポートが可能となります。

  • 物理サーバーと仮想マシンにホームをデプロイします。

  • イメージ・シリーズに対する変更をサブスクライバに通知します。

  • すべてのRHPCTLコマンドの実行の監査ログを保持します。

5.1.2 高速ホーム・プロビジョニングのターゲット

高速ホーム・プロビジョニングで認識されているコンピュータはターゲットと呼ばれます。

Oracle Clusterware 12c リリース1 (12.1)の高速ホーム・プロビジョニング・サーバーは、同じリリースのOracle Clusterwareの高速ホーム・プロビジョニング・クライアントのみと通信できます。Oracle Clusterware 12c リリース2 (12.2)の高速ホーム・プロビジョニング・サーバーでは、新しいターゲットを作成でき、さらに、1つのオペレーティング・システムのみがインストールされているターゲットにOracle Grid Infrastructureをインストールして構成できます。

その後、高速ホーム・プロビジョニング・サーバーによって、それらのターゲットのデータベースおよびその他のソフトウェアをプロビジョニングできます。高速ホーム・プロビジョニング・クライアントがないOracle Clusterware 11gおよびOracle Clusterware 12cを実行しているターゲットと高速ホーム・プロビジョニング・サーバーの間の通信は、常にサーバーからターゲットへの一方向です。Oracle Clusterware 12c リリース2 (12.2)を実行している高速ホーム・プロビジョニング・クライアントと高速ホーム・プロビジョニング・サーバーの間の通信は、双方向です。

5.1.3 高速ホーム・プロビジョニング・クライアント

高速ホーム・プロビジョニング・クライアントは、Oracle Grid Infrastructureの一部です。ユーザーは、Oracleホームのデプロイのリクエストや使用可能なゴールド・イメージのリスト表示といったタスクを実行するために、高速ホーム・プロビジョニング・クライアントで操作を行います。

ユーザーがゴールド・イメージを指定してOracleホームをリクエストすると、高速ホーム・プロビジョニング・クライアントは、高速ホーム・プロビジョニング・サーバーと通信してそのリクエストを渡します。高速ホーム・プロビジョニング・サーバーがリクエストを処理します。具体的には、ゴールド・イメージの作業用コピーをインスタンス化し、Oracle ACFS、別のローカル・ファイル・システムまたはNFSを使用して、高速ホーム・プロビジョニング・クライアントで利用できるようにします。

高速ホーム・プロビジョニング・クライアントの機能:

  • Oracle ACFSを使用して、ローカル・ホームとして迅速にプロビジョニングできる作業用コピーを格納できます。新しいホームは、Oracle ACFSスナップショットを使用してすぐに作成したり元に戻すことができます。

    注意:

    Oracle ACFS以外のローカル・ファイル・システムも使用できます。

  • 高速ホーム・プロビジョニング・サーバーの使用可能なホームのリストを提供します。

  • 高速ホーム・プロビジョニング・サーバーからの高可用性NFS (HANFS)マウントを、作業用コピーとして高速ホーム・プロビジョニング・クライアント・クラスタにプロビジョニングできます。

  • Oracle Clusterware 12c リリース2 (12.2)のすべての機能を使用でき、Oracle Clusterware 12c リリース2 (12.2)以降の高速ホーム・プロビジョニング・サーバーと通信できます。

NFSホーム・クライアントは、Oracle ACFSがインストールされていない高速ホーム・プロビジョニング・クライアントですが、NFSプロトコルを介して高速ホーム・プロビジョニング・サーバーにアクセスすることもできます。

5.1.4 高速ホーム・プロビジョニングのロール

管理者は、ロールを高速ホーム・プロビジョニングのユーザーに割り当てます(各ロールにはアクセスレベル権限が定義されています)。高速ホーム・プロビジョニング・クライアントのユーザーにも、特定のロールが割り当てられます。高速ホーム・プロビジョニングには、基本組込みロールと複合組込みロールが含まれます。

5.1.4.1 基本組込みロール

基本組込みロールとその機能:

  • GH_ROLE_ADMIN: ロールに関連するすべてのための管理ロール。このロールを割り当てられたユーザーは、rhpctl verb roleコマンドを実行できます。

  • GH_SITE_ADMIN: 高速ホーム・プロビジョニング・クライアントに関連するすべてのための管理ロール。このロールを割り当てられたユーザーは、rhpctl verb clientコマンドを実行できます。

  • GH_SERIES_ADMIN: イメージ・シリーズに関連するすべてのための管理ロール。このロールを割り当てられたユーザーは、rhpctl verb seriesコマンドを実行できます。

  • GH_SERIES_CONTRIB: このロールを割り当てられたユーザーは、シリーズへのイメージの追加(rhpctl insertimage seriesコマンド使用)またはシリーズからのイメージの削除(rhpctl deleteimage seriesコマンド使用)を行うことができます。

  • GH_WC_ADMIN: 作業用コピーに関連するすべてのための管理ロール。このロールを割り当てられたユーザーは、rhpctl verb workingcopyコマンドを実行できます。

  • GH_WC_OPER: このロールでは、rhpctl add workingcopyコマンドを使用して、自分または他のユーザーのために作業用コピーを作成できるようになります。他のユーザーのために作成する場合は-userオプションを付けます。このロールが割り当てられたユーザーには管理権限はありません。自分が作成する作業用コピーのみ管理できます。

  • GH_WC_USER: このロールでは、rhpctl add workingcopyコマンドを使用して作業用コピーを作成できるようになります。このロールが割り当てられたユーザーには管理権限はありません。自分で作成した作業用コピーのみ削除できます。

  • GH_IMG_ADMIN: イメージに関連するすべてのための管理ロール。このロールが割り当てられたユーザーは、rhpctl verb imageコマンドを実行できます。

  • GH_IMG_USER: このロールでは、rhpctl add | import imageコマンドを使用してイメージを作成できるようになります。このロールが割り当てられたユーザーには管理権限はありません。自分で作成したイメージのみ削除できます。

  • GH_IMG_TESTABLE: このロールでは、TESTABLE状態のイメージの作業用コピーを追加できるようになります。このロールが割り当てられたユーザーが作業用コピーを追加するためには、GH_WC_ADMINロールまたはGH_WC_USERロールのいずれかの割当てが必要です。

  • GH_IMG_RESTRICT: このロールでは、RESTRICTED状態のイメージから作業用コピーを追加できるようになります。このロールが割り当てられたユーザーが作業用コピーを追加するためには、GH_WC_ADMINロールまたはGH_WC_USERロールのいずれかの割当てが必要です。

  • GH_IMG_PUBLISH: このロールが割り当てられたユーザーは、イメージを別の状態にプロモートするか、PUBLISHED状態のイメージをTESTABLEまたはRESTRICTED状態にリトラクトできます。

  • GH_IMG_VISIBILITY: このロールが割り当てられたユーザーは、rhpctl allow | disallow imageコマンドを使用して、プロモート済または公開済のイメージへのアクセスを変更できます。

5.1.4.2 複合組込みロール

複合組込みロールとその機能:

  • GH_SA: 高速ホーム・プロビジョニング・サーバー上のOracle Grid Infrastructureユーザーは自動的にこのロールを継承します。

    GH_SAロールに含まれる基本組込みロール: GH_ROLE_ADMIN、GH_SITE_ADMIN、GH_SERIES_ADMIN、GH_SERIES_CONTRIB、GH_WC_ADMIN、GH_IMG_ADMIN、GH_IMG_TESTABLE、GH_IMG_RESTRICT、GH_IMG_PUBLISHおよびGH_IMG_VISIBILITY。

  • GH_CA: 高速ホーム・プロビジョニング・クライアント上のOracle Grid Infrastructureユーザーは自動的にこのロールを継承します。

    GH_CAロールに含まれる基本組込みロール: GH_SERIES_ADMIN、GH_SERIES_CONTRIB、GH_WC_ADMIN、GH_IMG_ADMIN、GH_IMG_TESTABLE、GH_IMG_RESTRICT、GH_IMG_PUBLISHおよびGH_IMG_VISIBILITY。

  • GH_OPER: このロールに含まれる基本組込みロール: GH_WC_OPER、GH_SERIES_ADMIN、GH_IMG_TESTABLE、GH_IMG_RESTRICTおよびGH_IMG_USER。このロールが割り当てられたユーザーは、自分が作成したイメージのみを削除できます。

高速ホーム・プロビジョニング・サーバーで使用できるG1というゴールド・イメージについて考えてみます。

また、高速ホーム・プロビジョニング・クライアントCl1のユーザーU1がGH_WC_USERロールを持っているとします。U1がゴールド・イメージG1に基づくOracleホームのプロビジョニングをリクエストすると、GH_WC_USERロールによって付与される権限によりU1はそれを実行できます。ただし、U1G1の削除をリクエストした場合、GH_WC_USERロールには必要な権限が含まれないため、そのリクエストは拒否されます。

高速ホーム・プロビジョニング・サーバーは、高速ホーム・プロビジョニング・クライアントにユーザーとロールのマッピングを関連付けることができます。高速ホーム・プロビジョニング・サーバーがユーザーとロールのマッピングを委任した後で、高速ホーム・プロビジョニング・クライアントは、高速ホーム・プロビジョニング・クライアントに所属するすべてのユーザーについて、高速ホーム・プロビジョニング・サーバー上でユーザーとロールのマッピングを変更できます。これは、高速ホーム・プロビジョニング・サーバーのみが、高速ホーム・プロビジョニング・クライアントのサイトのユーザーIDをそのサイトのクライアント・クラスタ名で修飾するという事実によって暗黙に示されます。したがって、高速ホーム・プロビジョニング・クライアントCL1は、CL2上のユーザーのユーザー・マッピングを更新できません(CL2は別の高速ホーム・プロビジョニング・クライアントのクラスタ名)。

5.1.5 高速ホーム・プロビジョニングのイメージ

デフォルトでは、rhpctl import imageまたはrhpctl add imageを使用してゴールド・イメージを作成した場合、そのイメージを作業用コピーのプロビジョニングにすぐ使用できます。ただし、一定の条件の下では、イメージへのアクセスを制限して、他の人にイメージのテストまたは検証を要求してから、一般に使用できるようにする必要があります。

同一のリリース・バージョン、特定のユーザーによって公開されたゴールド・イメージ、組織内の特定の部門用のイメージなど、互いに関連するゴールド・イメージ・シリーズとしてまとめて分類できる一連のゴールド・イメージを高速ホーム・プロビジョニング・サーバーで作成することもできます。

5.1.6 高速ホーム・プロビジョニング・サーバーの監査

高速ホーム・プロビジョニング・サーバーでは、すべての高速ホーム・プロビジョニングの操作の実行と、その操作が成功したか失敗したかが記録されます。

監査メカニズムにより、管理者が様々なディメンションで監査ログを問い合せることができ、さらにその内容とサイズを管理できます。

5.1.7 高速ホーム・プロビジョニングの通知

高速ホーム・プロビジョニング・サーバーは、データ・センターで使用できるソフトウェア・ホームの中央リポジトリです。そのため、データ・センター全体の管理者が、自身の担当する領域に影響する可能性があるインベントリへの変更を把握する必要があります。

イメージ・シリーズ・イベントへのサブスクリプションを作成できます。高速ホーム・プロビジョニングにより、サブスクライブするロールまたは複数のユーザーに、イメージの追加や削除などの、シリーズの使用可能なイメージに対する変更が電子メールで通知されます。シリーズごとに固有のサブスクライバのグループを作成できます。

また、ターゲットから作業用コピーが追加または削除されたときに、作業用コピーの所有者と追加ユーザーに電子メールで通知できます。追加の高速ホーム・プロビジョニングのイベントに関する通知を有効にする場合は、次の項で説明するように、ユーザー定義のアクションを作成できます。

5.1.8 ユーザー定義のアクション

イメージのインポート、作業用コピーの追加および削除、ソフトウェア・ホームの追加、削除、移動およびアップグレードなど、様々な高速ホーム・プロビジョニングの操作に関するアクションを作成できます。

イメージのインポート、作業用コピーの追加および削除、ソフトウェア・ホームの追加、削除、移動およびアップグレードなど、様々な高速ホーム・プロビジョニングの操作に関するアクションを作成できます。操作ごとに異なるアクションを定義して、操作が適用されるイメージのタイプでさらにそれらを区別できます。ユーザー定義のアクションは、特定の操作の前後で実行でき、操作が実行されるデプロイメント(高速ホーム・プロビジョニング・サーバー、高速ホーム・プロビジョニング・クライアント(12c リリース2 (12.2)以降)、または高速ホーム・プロビジョニング・クライアントを実行していないターゲット)で実行されます。

ユーザー定義のアクションは、高速ホーム・プロビジョニング・サーバーに格納されるシェル・スクリプトです。スクリプト実行時に、コマンドラインで操作に関連する情報が付与されます。また、スクリプトとファイルを関連付けることができます。高速ホーム・プロビジョニング・サーバーにより、スクリプトが実行されるクライアントまたはターゲットの同じ場所にそのファイルがコピーされます。

たとえば、データベースのアップグレード後に実行するユーザー定義のアクションを作成する場合や、Oracle Database 11gと12cで異なるアクションを定義する場合などがあります。この場合、次の手順の例のように、新しいイメージ・タイプを定義する必要があります。

  1. 次のように、ORACLEDBSOFTWAREイメージ・タイプに基づいて、新しいイメージ・タイプ(たとえば、DB11IMAGE)を作成します。

    $ rhpctl add imagetype -imagetype DB11IMAGE -basetype ORACLEDBSOFTWARE

    Oracle Database 11gゴールド・イメージを追加またはインポートするときに、DB11IMAGEイメージ・タイプを指定します。

  2. ユーザー・アクションを定義して、それをDB11IMAGEイメージ・タイプおよびアップグレード操作に関連付けます。アップグレードの前または後で異なるアクションを実行できます。

  3. Oracle Database 12cのアクションを定義するには、前の手順のようにORACLEDBSOFTWAREイメージ・タイプに基づく新しいイメージ・タイプ(たとえば、DB12IMAGE)を作成しますが、DB12IMAGEイメージ・タイプを指定します。

    注意:

    ユーザー定義のイメージ・タイプのベース・タイプにユーザー・アクションを定義する場合(このケースでは、ベース・タイプはORACLEDBSOFTWARE)、ユーザー定義のイメージ・タイプのアクションの前に、高速ホーム・プロビジョニングによってこれらのアクションが実行されます。

rhpctl modify imageコマンドを使用して、イメージのイメージ・タイプを変更できます。さらに、他のアクションを変更、追加および削除できます。次の表5-1表5-2の2つの表は、それぞれ、カスタマイズできる操作と、それらの操作を定義するために使用できるパラメータを示しています。

表5-1 高速ホーム・プロビジョニングのユーザー定義の操作

操作 パラメータ・リスト
IMPORT_IMAGE

RHP_OPTYPERHP_PHASERHP_PATHRHP_PATHOWNERRHP_PROGRESSLISTENERHOSTRHP_PROGRESSLISTENERPORTRHP_IMAGERHP_IMAGETYPERHP_VERSIONRHP_CLIRHP_USERACTIONDATA

ADD_WORKINGCOPY

RHP_OPTYPERHP_PHASERHP_WORKINGCOPYRHP_PATHRHP_STORAGETYPERHP_USERRHP_NODESRHP_ORACLEBASERHP_DBNAMERHP_PROGRESSLISTENERHOSTRHP_PROGRESSLISTENERPORTRHP_IMAGERHP_IMAGETYPERHP_VERSIONRHP_CLIRHP_USERACTIONDATA

ADD_DATABASE

RHP_OPTYPERHP_PHASERHP_WORKINGCOPYRHP_CLIENTRHP_DBNAMERHP_PROGRESSLISTENERHOSTRHP_PROGRESSLISTENERPORTRHP_IMAGERHP_IMAGETYPERHP_VERSIONRHP_CLIRHP_USERACTIONDATA

DELETE_WORKINGCOPY

RHP_OPTYPERHP_PHASERHP_WORKINGCOPYRHP_CLIENTRHP_PATHRHP_PROGRESSLISTENERHOSRHP_PROGRESSLISTENERPORTRHP_IMAGERHP_IMAGETYPERHP_VERSIONRHP_CLIRHP_USERACTIONDATA

DELETE_DATABASE

RHP_OPTYPERHP_PHASERHP_WORKINGCOPYRHP_CLIENTRHP_DBNAMERHP_PROGRESSLISTENERHOSTRHP_PROGRESSLISTENERPORTRHP_IMAGERHP_IMAGETYPERHP_VERSIONRHP_CLIRHP_USERACTIONDATA

MOVE_GIHOME

RHP_OPTYPERHP_PHASERHP_SOURCEWCRHP_SOURCEPATHRHP_DESTINATIONWCRHP_DESTINATIONPATHRHP_IMAGERHP_IMAGETYPERHP_PROGRESSLISTENERHOSRHP_PROGRESSLISTENERPORTRHP_VERSIONRHP_CLRHP_USERACTIONDATA

MOVE_DATABASE

RHP_OPTYPERHP_PHASERHP_SOURCEWCRHP_SOURCEPATHRHP_DESTINATIONWCRHP_DESTINATIONPATHRHP_DBNAMERHP_IMAGERHP_IMAGETYPERHP_PROGRESSLISTENERHOSTRHP_PROGRESSLISTENERPORTRHP_VERSIONRHP_CLIRHP_DATAPATCHRHP_USERACTIONDATA

UPGRADE_GIHOME

RHP_OPTYPERHP_PHASERHP_SOURCEWCRHP_SOURCEPATHRHP_DESTINATIONWCRHP_DESTINATIONPATHRHP_IMAGERHP_IMAGETYPERHP_PROGRESSLISTENERHOSTRHP_PROGRESSLISTENERPORTRHP_VERSIONRHP_CLIRHP_USERACTIONDATA

UPGRADE_DATABASE

RHP_OPTYPERHP_PHASERHP_SOURCEWCRHP_SOURCEPATHRHP_DESTINATIONWCRHP_DESTINATIONPATHRHP_DBNAMERHP_IMAGERHP_IMAGETYPERHP_PROGRESSLISTENERHOSTRHP_PROGRESSLISTENERPORTRHP_VERSIONRHP_CLIRHP_USERACTIONDATA

ADDNODE_DATABASE

RHP_OPTYPERHP_PHASERHP_WORKINGCOPYRHP_CLIENTRHP_DBNAMERHP_PROGRESSLISTENERHOSTRHP_PROGRESSLISTENERPORTRHP_IMAGERHP_IMAGETYPERHP_VERSIONRHP_CLIRHP_USERACTIONDATA

DELETENODE_DATABASE

RHP_OPTYPERHP_PHASERHP_WORKINGCOPYRHP_CLIENTRHP_DBNAMERHP_PROGRESSLISTENERHOSTRHP_PROGRESSLISTENERPORTRHP_IMAGERHP_IMAGETYPERHP_VERSIONRHP_CLIRHP_USERACTIONDATA

ADDNODE_GIHOME

RHP_OPTYPERHP_PHASERHP_WORKINGCOPYRHP_CLIENTRHP_PATHRHP_PROGRESSLISTENERHOSTRHP_PROGRESSLISTENERPORTRHP_IMAGERHP_IMAGETYPERHP_VERSIONRHP_CLIRHP_USERACTIONDATA

DELETENODE_GIHOME

RHP_OPTYPERHP_PHASERHP_WORKINGCOPYRHP_CLIENTRHP_PATHRHP_PROGRESSLISTENERHOSTRHP_PROGRESSLISTENERPORTRHP_IMAGERHP_IMAGETYPERHP_VERSIONRHP_CLIRHP_USERACTIONDATA

ADDNODE_WORKINGCOPY

RHP_OPTYPERHP_PHASERHP_WORKINGCOPYRHP_CLIENTRHP_PATHRHP_PROGRESSLISTENERHOSTRHP_PROGRESSLISTENERPORTRHP_IMAGERHP_IMAGETYPERHP_VERSIONRHP_CLIRHP_USERACTIONDATA

表5-2 ユーザー定義の操作のパラメータ

パラメータ 説明
RHP_OPTYPE

前の表に示されている、ユーザー・アクションの実行対象の操作のタイプ。

RHP_PHASE

このパラメータは、ユーザー・アクションが操作の前に実行されるか、後に実行されるかを示します(PREまたはPOST)。

RHP_PATH

これは、ソフトウェア・ホームの場所のパスです。このパラメータは、IMPORT_IMAGE操作については、RHPCTLコマンドが実行されているローカル・ノードのパスを表します。その他すべての操作については、このパスは、操作が実行されているサイトに存在します。

RHP_PATHOWNER

インポートされているゴールド・イメージのパスの所有者。

RHP_PROGRESSLISTENERHOST

進捗リスナーがリスニングしているホスト。進捗リスナーのポートとともにこのパラメータを使用してTCP接続を作成し、RHPCTLコマンドが実行されているコンソールに出力を表示できます。

RHP_PROGRESSLISTENERPORT

進捗リスナーがリスニングしているポート。進捗リスナーのホスト名とともにこのパラメータを使用してTCP接続を作成し、RHPCTLコマンドが実行されているコンソールに出力を表示できます。

RHP_IMAGE

操作に関連するイメージ。移動操作の場合は、デスティネーション・イメージの名前が反映されます。

RHP_IMAGETYPE

操作に関連するイメージのイメージ・タイプ。移動操作の場合は、デスティネーション・イメージの名前が反映されます。

RHP_VERSION

高速ホーム・プロビジョニング・サーバーで実行されているOracle Grid Infrastructureソフトウェアのバージョン。

RHP_CLI

操作を起動するために実行された正確なコマンド。

RHP_STORAGETYPE

ホームの記憶域のタイプ(NFSLOCALまたはRHP_MANAGED)。

RHP_USER

操作の実行対象となるユーザー。

RHP_NODES

プロファイルが作成されるノード。

RHP_ORACLEBASE

プロビジョニングしたホームのOracleベースの場所。

RHP_DBNAME

作成するデータベースの名前。

RHP_CLIENT

クライアント・クラスタの名前。

RHP_SOURCEWC

アップグレード操作のパッチ用のソースの作業用コピー名。

RHP_SOURCEPATH

ソースの作業用コピーのホームのパス。

RHP_DESTINATIONWC

パッチまたはアップグレード操作用の宛先の作業用コピー名。

RHP_DESTINATIONPATH

宛先の作業用コピーのホームのパス。

RHP_DATAPATCH

このパラメータは、データベースの移動操作の完了後にSQLパッチが実行されるノードで、ユーザー・アクションの最後にTRUEに設定されます。

RHP_USERACTIONDATA

このパラメータはすべての操作に存在し、実行時に引数としてユーザー定義の項目をユーザー・アクションに渡すために使用されます。

ユーザー定義のアクションの例

ADD_WORKINGCOPY操作でユーザー・アクションとして登録されるサンプルのスクリプトを次に示します。

#!/bin/sh
touch /tmp/SAMPLEOUT.txt;
echo $* >> /tmp/SAMPLEOUT.txt;

前述のユーザー・アクションは、次のコマンドの一部として起動されます。

$ rhpctl add workingcopy -workingcopy apachecopy -image apacheinstall 
  -path /scratch/mjkeenan/apacheinstallloc -sudouser mjkeenan -sudopath
  /usr/local/bin/sudo -node rws1290753 -user mjkeenan -useractiondata 
  "/tmp/SAMPLEUA.txt"

このコマンドの間にユーザー・アクションが起動されると、コマンドによって次のような出力が返されます。

$ cat /tmp/SAMPLEOUT.txt
RHP_OPTYPE=ADD_WORKINGCOPY
RHP_PHASE=PRE
RHP_WORKINGCOPY=apachecopy
RHP_PATH=/scratch/mjkeenan/apacheinstallloc
RHP_STORAGETYPE=
RHP_USER=mjkeenan
RHP_NODES=rws1290753
RHP_ORACLEBASE=
RHP_DBNAME=
RHP_PROGRESSLISTENERHOST=mds11042003.my.company.com
RHP_PROGRESSLISTENERPORT=58068
RHP_IMAGE=apacheinstall
RHP_IMAGETYPE=apachetype
RHP_VERSION=12.2.0.1.0
RHP_CLI=rhpctl__add__workingcopy__-image__apacheinstall__
  -path__/scratch/mjkeenan/apacheinstallloc__-node__rws1290753__
  -useractiondata__/tmp/SAMPLEUA.txt__-sudopath__/usr/local/bin/sudo__
  -workingcopy__apachecopy__-user__mjkeenan__
  -sudouser__mjkeenan__
RHP_USERACTIONDATA=/tmp/SAMPLEUA.txt

注意:

  • 前述の出力の例では、空の値は等号(=)で終了します。

  • RHP_CLIパラメータのコマンドラインの値にあるスペースは、他のパラメータと区別するために、2つのアンダースコア(__)に置き換えられます。

5.2 高速ホーム・プロビジョニングの実装

高速ホーム・プロビジョニングの実装には、高速ホーム・プロビジョニング・サーバーの作成、サーバーへのゴールド・イメージの追加およびソフトウェアをプロビジョニングするための作業用コピーの作成が含まれます。

Oracle Clusterwareをインストールして構成した後で、高速ホーム・プロビジョニングを構成して、使用を開始できます。データベースなどのソフトウェア・ホームのゴールド・イメージを作成および格納する高速ホーム・プロビジョニング・サーバーを作成する必要があります。

5.2.1 高速ホーム・プロビジョニング・サーバーの作成

高速ホーム・プロビジョニング・サーバーは、Oracle ACFSファイル・システムに作成されたリポジトリを使用します。ここに、クライアントおよびターゲットで利用できるようにするすべてのソフトウェア・ホームを格納します。

高速ホーム・プロビジョニング・サーバーを作成するには、次の手順を実行します。

  1. Oracle ASM Configuration Assistant (ASMCA)を使用して、次のように、ソフトウェアを格納するOracle ASMディスク・グループを高速ホーム・プロビジョニング・サーバー上に作成します。
    $ Grid_home/bin/asmca

    このディスク・グループはソフトウェアの格納に使用されるため50 GB以上にすることをお薦めします。

    注意:

    このディスク・グループのOracle ASM Dynamic Volume Manager (Oracle ADVM)互換性設定は12.1に設定する必要があります。

  2. クラスタのすべてのノードに存在するマウント・パスを指定します。高速ホーム・プロビジョニング・サーバーはこのパスを使用してゴールド・イメージをマウントします。
    $ mkdir -p storage_path/images
  3. rootとして、次のように高速ホーム・プロビジョニング・サーバーのリソースを作成します。
    # Grid_home/bin/srvctl add rhpserver -storage storage_path
        -diskgroup disk_group_name
  4. 高速ホーム・プロビジョニング・サーバーを、次のように起動します。
    $ Grid_home/bin/srvctl start rhpserver

高速ホーム・プロビジョニング・サーバーの起動後に、さらに高速ホーム・プロビジョニングを管理するには高速ホーム・プロビジョニング・コントロール(RHPCTL)ユーティリティを使用します。

5.2.2 高速ホーム・プロビジョニング・サーバーへのゴールド・イメージの追加

後でソフトウェアをプロビジョニングするために、RHPCTLを使用してゴールド・イメージを追加します。

高速ホーム・プロビジョニング・サーバーは、ソフトウェア・ホームのゴールド・イメージの保存および提供を行います。このようなイメージは、高速ホーム・プロビジョニング・サーバーでインスタンス化される必要があります。

注意:

イメージは読取り専用です。イメージからプログラムを実行することはできません。利用可能なソフトウェア・ホームをイメージから作成するには、作業用コピーを作成する必要があります。イメージをソフトウェア・ホームとして直接使用することはできません。ただし、イメージを使用して作業用コピー(ソフトウェア・ホーム)を作成できます。

次の方法の1つを使用して、高速ホーム・プロビジョニング・サーバーにソフトウェアをインポートできます。

  • 次のコマンドを使用して、高速ホーム・プロビジョニング・サーバーにインストールされたホームからイメージをインポートできます。

    rhpctl import image -image image_name -path path_to_installed_home
      [-imagetype ORACLEDBSOFTWARE | ORACLEGISOFTWARE | SOFTWARE]
    
  • 次のコマンドを使用して(高速ホーム・プロビジョニング・クライアントで実行)、高速ホーム・プロビジョニング・クライアントにインストールされたホームからイメージをインポートできます。

    rhpctl import image -image image_name -path path_to_installed_home
    
  • 次のコマンドを使用して、既存の作業用コピーからイメージを作成できます。

    rhpctl add image –image image_name -workingcopy working_copy_name
    

前のリストの最初の2つのコマンドを使用して、イメージ・リポジトリをシードして、時間の経過とともにイメージを追加します。既存のゴールド・イメージに適用されるパッチを含むゴールド・イメージを作成するワークフローの一部として、高速ホーム・プロビジョニング・サーバーで3つ目のコマンドを使用します。

また、これらの3つのコマンドを実行すると、次のようなOracle ACFSファイル・システムが高速ホーム・プロビジョニングのルート・ディレクトリに作成されます。

/u01/rhp/images/images/RDBMS_121020617524
5.2.2.1 イメージの状態

イメージの状態をTESTABLEまたはRESTRICTEDに設定すると、GH_IMG_TESTABLEまたはGH_IMG_RESTRICTロールを持つユーザーのみがこのイメージから作業用コピーをプロビジョニングできます。イメージのテストまたは検証が終了したら、rhpctl promote image -image image_name -state PUBLISHEDコマンドを実行して、状態を変更し、イメージを一般に使用できるようにします。新しいゴールド・イメージを追加したときのデフォルトのイメージ状態はPUBLISHEDですが、rhpctl add imageコマンドとrhpctl import imageコマンドを使用して、異なる状態を指定することもできます。

5.2.2.2 イメージ・シリーズ

イメージ・シリーズは、様々なゴールド・イメージを論理的な順序でグループ化する方法として便利です。

高速ホーム・プロビジョニングは、各イメージを他のイメージとは独立したエンティティとして扱います。イメージが特定の体系に沿っている場合でも、イメージ間に関係はないとみなされます。イメージ管理者は、ユーザーのコミュニティで理解できる論理的な方法でイメージに名前を付けることができますが、これによって高速ホーム・プロビジョニングのフレームワーク内に管理グループが作成されることはありません。

rhpctl add seriesコマンドを使用して、イメージ・シリーズを作成し、1つ以上のイメージをそのシリーズに関連付けます。イメージ・シリーズ内のイメージのリストは、順序付きのリストです。rhpctl insertimage seriesrhpctl deleteimage seriesを使用して、イメージ・シリーズに対してイメージを追加および削除します。これらのコマンドを使用してシリーズ内のイメージの順序を変更することもできます。

insertimagedeleteimageのコマンドでは、実際のゴールド・イメージがインスタンス化されることも削除されることもありませんが、リストの変更のみ行われます。また、イメージは、複数のシリーズに属する(またはシリーズにまったく属さない)ことができます。

5.2.2.3 イメージ・タイプ

ゴールド・イメージを追加またはインポートするときに、イメージ・タイプを指定する必要があります。Oracle ClusterwareではORACLEDBSOFTWARE、ORACLEGISOFTWAREおよびSOFTWAREの3つの組込みイメージ・タイプが用意されており、カスタムのイメージ・タイプを作成できます。

すべてのゴールド・イメージがイメージ・タイプを持つ必要があり、独自のイメージ・タイプを作成できます。新しいイメージ・タイプは、いずれかの組込みのタイプに基づく必要があります。イメージ・タイプにより、Oracle Grid InfrastructureおよびOracle Databaseホームを管理するためにその機能が高速ホーム・プロビジョニングに適用されます。また、高速ホーム・プロビジョニングでイメージ・タイプを使用して、カスタム・ワークフロー・サポート・フレームワークを編成します。

カスタム・イメージ・タイプの作成

カスタム・イメージ・タイプを作成するには、rhpctl add imagetypeコマンドを使用します。

たとえば、ORACLEDBSOFTWAREイメージ・タイプに基づくDBTESTというイメージ・タイプを作成するには、次のコマンドを実行します。

$ rhpctl add imagetype -imagetype DBTEST -basetype ORACLEDBSOFTWARE

注意:

既存のイメージ・タイプに基づくイメージ・タイプを作成する場合、新しいイメージ・タイプでは、ベースとなるタイプから(カスタム・ワークフロー・サポートの)ユーザー・アクションは継承されません。

5.2.3 ソフトウェアをプロビジョニングするための作業用コピーの作成

RHPCTLを使用して作業用コピーを作成し、高速ホーム・プロビジョニング・サーバー、クライアントおよびターゲットにソフトウェアをプロビジョニングします。

ゴールド・イメージを作成してインポートしたら、作業用コピーを高速ホーム・プロビジョニング・サーバー、高速ホーム・プロビジョニング・クライアントまたはターゲットに追加することで、ソフトウェアをプロビジョニングできます。その後、サーバーまたはクライアントでソフトウェア・プロビジョニング・コマンドを実行できます。

  • 高速ホーム・プロビジョニング・サーバー上に作業用コピーを作成するには、次のコマンドを使用します。
    $ rhpctl add workingcopy -workingcopy working_copy_name -image image_name
    
  • 高速ホーム・プロビジョニング・クライアントのローカル・ファイル・システムに作業用コピーを作成するには、次のコマンドを使用します。
    $ rhpctl add workingcopy -workingcopy working_copy_name -image image_name
       -storagetype LOCAL -path path_to_software_home
  • 高速ホーム・プロビジョニング・サーバーから高速ホーム・プロビジョニング・クライアント上に作業用コピーを作成するには、次のコマンドを使用します。
    $ rhpctl add workingcopy -workingcopy working_copy_name -image image_name
       -client client_cluster_name

注意:

  • -pathパラメータに指定するディレクトリは空であることが必要です。

  • システム・エラーまたはユーザー・エラーによって中断または失敗した場合には、プロビジョニング・コマンドを再実行できます。報告されたエラーを修正してからコマンドを再実行すると、失敗したところから再開します。

5.2.3.1 高速ホーム・プロビジョニングでのユーザー・グループ管理

移動操作またはアップグレード操作の一部として作業用コピーを作成すると、高速ホーム・プロビジョニングにより、新しい作業用コピーのオペレーティング・システムのグループがソースのソフトウェア・ホームのものと一致するように構成されます(移動元またはアップグレード元のホームは管理対象かどうかを問いません)。

SOFTWAREイメージ・タイプのゴールド・イメージを作成した場合、ソースのユーザー・グループが継承されることはなく、このタイプのイメージにユーザー・グループ情報が含まれることはありません。rhpctl add workingcopyコマンドを使用してSOFTWAREゴールド・イメージから作業用コピーをプロビジョニングする場合、オプションで-groupパラメータを使用して作業用コピーのユーザー・グループを構成できます。

rhpctl move databaserhpctl move gihomerhpctl upgrade databaseおよびrhpctl upgrade gihomeのすべてのコマンドで、ソース・ホーム(高速ホーム・プロビジョニングを使用してプロビジョニングした管理対象外ホームまたは管理対象ホーム(作業用コピー))および宛先ホーム(作業用コピーである必要があります)を指定する必要があります。宛先ホームについては、前述のすべてのコマンドで、以前にrhpctl add workingcopyを使用してプロビジョニングした既存の作業用コピーを指定することも、かわりに、宛先ホームにする新しい作業用コピーの作成元のゴールド・イメージを指定することもできます。

rhpctl add workingcopyコマンドを使用して宛先ホームをプロビジョニングした場合、移動操作またはアップグレード操作を実行する前に、ソース・ホームで構成されたグループを宛先ホームのグループと一致させる必要があります。高速ホーム・プロビジョニングでは、追加操作の一部としてグループが構成されます。

ソースのソフトウェア・ホーム(rhpctl import imageコマンドを使用)または作業用コピー(rhpctl add imageコマンドを使用)からORACLEGISOFTWAREまたはORACLEDBSOFTWAREイメージ・タイプのゴールド・イメージを作成すると、ゴールド・イメージが、ソースで構成されたOracleユーザー・グループを継承します。この機能は無効にできません。

次の各項で説明するように、イメージ・タイプとユーザー・グループに応じて、rhpctl add workingcopyコマンドを使用してORACLEGISOFTWAREおよびORACLEDBSOFTWAREの作業用コピーに対してユーザー・グループを定義できます。

この項では、高速ホーム・プロビジョニングでユーザー・グループ構成を管理する方法と、rhpctl add workingcopy-groupコマンドライン・オプションが機能する仕組みについて説明します。

ORACLEGISOFTWARE (Oracle Grid Infrastructure 11g リリース2 (11.2)と、12c リリース1 (12.1)およびリリース2 (12.2))

Oracle Grid Infrastructureの作業用コピーをプロビジョニングすると、プロビジョニングのタイプ(通常のプロビジョニングか、ソフトウェアのみか、および-localパラメータを指定したかどうか)およびrhpctl add workingcopy-groupパラメータを指定したかどうかに応じて、作業用コピーでグループが設定されます。-softwareonlyコマンド・パラメータを指定するか、rhpctl add workingcopyコマンドでレスポンス・ファイルを使用して、Oracle Grid InfrastructureソフトウェアにOSDBAおよびOSASMユーザー・グループを定義できます。

-softwareonlyコマンド・パラメータを使用してOracle Grid Infrastructureソフトウェアのみをプロビジョニングしている場合は、-groupパラメータを使用することはできず、高速ホーム・プロビジョニングでアクティブなGridホームからOSDBAおよびOSASMユーザー・グループが取得されます。

rhpctl add workingcopy-localコマンド・パラメータ(これは、-softwareonlyコマンド・パラメータを使用する場合にのみ有効です)を使用すると、高速ホーム・プロビジョニングで、コマンドラインからグループの値が取得される(-groupパラメータを使用)か、高速ホーム・プロビジョニングがゴールド・イメージのosdbagrpバイナリから取得するデフォルト値が使用されます。

前述のものがいずれも該当しない場合、インストーラのデフォルトのユーザー・グループが使用されます。

レスポンス・ファイルからの情報を使用して作業用コピーをプロビジョニングおよび構成している場合、高速ホーム・プロビジョニングの動作は次のとおりです。
  1. コマンドラインからユーザー・グループの値を使用します(OSDBAまたはOSASM、あるいはその両方に対して指定されている場合)。

  2. コマンドラインで値を指定しない場合、レスポンス・ファイルに定義されたユーザー・グループ情報が取得されます。

OSOPER Oracleグループを定義している場合は、その後、再度-softwareonlyコマンド・パラメータを使用するか、rhpctl add workingcopyコマンドでレスポンス・ファイルを使用できます。

-softwareonlyコマンド・パラメータを使用する場合は、コマンドラインで値を指定する(-groupパラメータを使用)ことも、ユーザー・グループを未定義のままにすることもできます。

レスポンス・ファイルからの情報を使用して作業用コピーをプロビジョニングおよび構成している場合、コマンドラインで値を指定することも、レスポンス・ファイルに含まれる情報を使用することも、OSOPER Oracleグループを未定義のままにすることもできます。

ORACLEDBSOFTWARE (Oracle Database 11g リリース2 (11.2)と、12c リリース1 (12.1)およびリリース2 (12.2))

Oracle Databaseソフトウェアの作業用コピーをプロビジョニングしており、Oracleグループを定義する場合は、rhpctl add workingcopyコマンドで-groupコマンド・パラメータを使用します。Oracle Databaseの各種リリースで使用できるOracleグループは、次のとおりです。

  • Oracle Database 11gリリース2(11.2)

    • OSDBA
    • OSOPER
  • Oracle Database 12c リリース1 (12.1)

    • OSDBA
    • OSOPER
    • OSBACKUP
    • OSDG
    • OSKM
  • Oracle Database 12c リリース2 (12.2)

    • OSDBA
    • OSOPER
    • OSBACKUP
    • OSDG
    • OSKM
    • OSRAC

定義しているグループが前述のいずれでも(OSOPERを除く)、高速ホーム・プロビジョニングで、コマンドラインからグループの値が取得される(-groupパラメータを使用)か、高速ホーム・プロビジョニングがゴールド・イメージのosdbagrpバイナリから取得するデフォルト値が使用されます。

データベース・ユーザーが属しているグループのリストに、osdbagrpバイナリから選択したグループが含まれていない場合(idコマンドで確認)、インストーラのデフォルトのユーザー・グループが使用されます。それ以外の場合、データベース・ユーザーはrhpctl add workingcopyコマンドを実行しているユーザーです。

5.2.3.2 プロビジョニングするソフトウェアのための記憶域オプション

高速ホーム・プロビジョニングで作業用コピーを格納する3つの記憶域オプションのいずれかを選択します。

rhpctl add workingcopyコマンドを使用してソフトウェアをプロビジョニングする場合、3つの記憶域オプションから選択して、高速ホーム・プロビジョニングでそのソフトウェアを次の場所に配置できます。

  • 高速ホーム・プロビジョニングで管理されるOracle ACFS共有ファイル・システム(データベース・ホームの場合のみ)

  • 高速ホーム・プロビジョニングで管理されていないローカル・ファイル・システム

  • 高速ホーム・プロビジョニング・サーバーで提供および管理されるNFSファイル・システム

–storagetype–pathのパラメータを指定してrhpctl add workingcopyコマンドを使用すると、プロビジョニングした作業用コピーを格納する場所を選択できます。パラメータが適用可能かどうかは、作業用コピーのプロビジョニング対象の1つ以上のノードが高速ホーム・プロビジョニング・サーバーであるか、高速ホーム・プロビジョニング・クライアントであるか、非高速ホーム・プロビジョニング・クライアントであるかに応じて異なります。–stroragetypeパラメータの値は、3つの異なる値から選択できます。

  • RHP_MANAGED: 高速ホーム・プロビジョニング・サーバーと高速ホーム・プロビジョニング・クライアントで使用できるこの値を選択すると、作業用コピーがOracle ACFS共有ファイル・システムに格納されます。高速ホーム・プロビジョニングで記憶域オプションが管理されるため、このオプションでは–pathパラメータは使用されません。

    注意:

    • RHP_MANAGED記憶域にOracle Grid Infrastructureホームを格納することはできません。

    • Oracle ASMディスク・グループを含むように構成された高速ホーム・プロビジョニング・サーバーおよびクライアントで使用できるRHP_MANAGED記憶域タイプを使用することをお薦めします。

    • 高速ホーム・プロビジョニング・サーバーで作業用コピーをプロビジョニングする場合は、デフォルトでRHP_MANAGEDが設定されるため、-storagetypeオプションを指定する必要はありません。

    • 高速ホーム・プロビジョニング・クライアントで作業用コピーをプロビジョニングする場合に、-pathパラメータを指定しないと、クライアントにOracle ASMディスク・グループがある場合にのみ、記憶域タイプがデフォルトでRHP_MANAGEDに設定されます。それ以外の場合、コマンドは失敗します。-pathパラメータにクライアント上の場所を指定すると、Oracle ASMディスク・グループの有無に関係なく、記憶域タイプがデフォルトでLOCALに設定されます。

  • LOCAL: この値を選択すると、高速ホーム・プロビジョニングで管理されていないローカル・ファイル・システムに作業用コピーが格納されます。高速ホーム・プロビジョニング・サーバー、高速ホーム・プロビジョニング・クライアントまたは非高速ホーム・プロビジョニング・クライアントのファイル・システムへのパス、あるいは高速ホーム・プロビジョニング・クライアントのOracle ASMディスク・グループへのパスを指定する必要があります。

  • NFS: この値を選択すると、指定したパスがNFSマウント・ポイントとして使用されます。NFS記憶域では、ソフトウェアは高速ホーム・プロビジョニング・サーバー・クラスタに存在し、高速ホーム・プロビジョニング・クライアント・クラスタからNFSを介して読取り/書込みとしてアクセスできます。このケースでは、同じソフトウェアがクライアントのすべてのノードで認識され、すべてのノードで共有されます。

    注意:

    高速ホーム・プロビジョニング・サーバーに作業用コピーを格納する場合、NFSは記憶域タイプとして無効な選択肢になるため、使用できません。

–pathパラメータを指定する場合、クラスタのすべてのノードでファイル・システムが共有されていると、この共有記憶域に作業用コピーが作成されます。ファイル・システムが共有されていない場合は、クラスタの各ノードの指定パスの場所に作業用コピーが作成されます。

注意:

-pathパラメータに指定するディレクトリは空であることが必要です。

関連トピック

5.2.3.3 別のユーザーのプロビジョニング

コマンドを実行しているユーザーとは異なるユーザーがソフトウェアをプロビジョニングできるようにするには、rhpctl add workingcopyコマンドの-userパラメータを使用します。

プロビジョニングが完了したとき、プロビジョニングされたソフトウェアのすべてのファイルとディレクトリは、指定したユーザーが所有します。リモートでプロビジョニングされたソフトウェアのファイルに対する権限は、そのアプリケーション・ソフトウェアのプロビジョニング元のゴールド・イメージに存在する権限と同じです。

5.3 Oracle Grid Infrastructureの管理

高速ホーム・プロビジョニング・サーバーでは、Oracle Grid Infrastructureホームをターゲットまたは高速ホーム・プロビジョニング・クライアントに配布するための効率的でセキュアなプラットフォームが提供されます。

また、高速ホーム・プロビジョニング・クライアントは、高速ホーム・プロビジョニング・サーバーからOracle Grid Infrastructureホームをフェッチできます。

Oracle Grid Infrastructureホームは、作業用コピーの形式で配布されます。作業用コピーがプロビジョニングされた後は、高速ホーム・プロビジョニングによって、オプションでOracle Grid Infrastructureを構成できます。これにより、高速ホーム・プロビジョニングで、最初にOracle Grid Infrastructureがインストールされていない1つ以上のノードで構成されるグループにOracle Grid Infrastructureインストールを作成できます。

高速ホーム・プロビジョニングには、パッチが適用されたホームへの切替えや新しいバージョンのOracle Grid Infrastructureへのアップグレードなど、Oracle Grid Infrastructureホームを管理するコマンドもあります。これらはいずれも、関連する多数の手順を統合する単一のコマンドです。元のホームに、同様に簡単に戻すことができます。また、高速ホーム・プロビジョニングにより、Oracle Grid Infrastructure構成のノードを追加または削除できます。

5.3.1 Oracle Grid Infrastructureソフトウェアのプロビジョニング

高速ホーム・プロビジョニングには、Oracle Grid Infrastructureホームをプロビジョニングして、オプションで構成する方法がいくつか用意されています。

まず、高速ホーム・プロビジョニングによって、現在Gridホームのない1つ以上のノードでOracle Grid Infrastructureをプロビジョニングおよび構成して、単一ノードまたはマルチノードのOracle Grid Infrastructureインストールを形成するようにOracle Grid Infrastructureを構成できます。
Oracle Grid Infrastructureをインストールおよび構成して、単純かつ繰返し可能な標準化されたデプロイメントの作成を可能にするには、rhpctl add workingcopyコマンドを使用します。
次に、高速ホーム・プロビジョニング・サーバーにより、現在Oracle Grid Infrastructureを実行しているノードまたはクラスタにOracle Grid Infrastructureホームをプロビジョニングできます。現在実行されているGridホームは、高速ホーム・プロビジョニングでプロビジョニングされていないホーム(管理対象外のホーム)にすることも、高速ホーム・プロビジョニングでプロビジョニングされたホーム(管理対象のホーム)にすることもできます。
いずれの場合でも、rhpctl add workingcopyコマンドの-softwareonlyパラメータを使用します。これによってプロビジョニングされますが、新しいGridホームがアクティブ化されるわけではないため、新しいホームに切り替えることができる場合は、単一のコマンドで実行できます。
  • Oracle Grid Infrastructureをインストールするノードを高速ホーム・プロビジョニングに通知する場合、およびOracle Grid Infrastructureを構成する場合は、次の例のようにレスポンス・ファイルに指示を指定します。
    $ rhpctl add workingcopy -workingcopy GI_HOME_11204_WCPY -image GI_HOME_11204 –responsefile /u01/app/rhpinfo/GI_11204_install.txt –root root/sudo credentials
    前述のコマンドでは、GI_HOME_11204ゴールド・イメージに基づくGI_HOME_11204_WCPY作業用コピーが、GI_11204_install.txtレスポンス・ファイルで指定されたターゲットにプロビジョニングされます。ターゲット・ノードの識別に加えて、レスポンス・ファイルでは、Oracle ASMおよびGNSパラメータなどのOracle Grid Infrastructure構成に関する情報が指定されます。

    注意:

    レスポンス・ファイルに指定した内容に関係なく、高速ホーム・プロビジョニングではoracle.install.crs.rootconfig.executeRootScript=xxxレスポンス・ファイル・パラメータは上書きされ、常にfalseに設定されます。
  • 現在Oracle Grid Infrastructureを実行しているノードまたはクラスタにOracle Grid Infrastructureホームをプロビジョニングするには、次のコマンドを実行します。
    $ rhpctl add workingcopy -workingcopy GI_HOME_12201_PATCHED_WCPY -image GI_HOME_12201_PSU1 –client CLUST_002 -softwareonly

    前述のコマンドでは、GI_HOME_12201_PSU1ゴールド・イメージに基づく新しい作業用コピーが、CLUST_002という名前の高速ホーム・プロビジョニング・クライアント(Oracle Grid Infrastructure 12c リリース2 (12.2)を実行しているもの)にプロビジョニングされます。Oracle Grid Infrastructure 12c リリース2 (12.2)を実行していないターゲット(たとえば、Oracle Grid Infrastructure 12c リリース1 (12.1)またはOracle Grid Infrastructure 11g リリース2 (11.2)を実行しているターゲットなど)にプロビジョニングする場合は、-clientではなく-targetnodeパラメータを使用します。

5.3.2 Oracle Grid Infrastructureソフトウェアへのパッチ適用

高速ホーム・プロビジョニングには、Oracle Grid Infrastructureソフトウェア・ホームにパッチを適用する方法として、ローリング、非ローリングおよびバッチの3つがあります。

Oracle Grid Infrastructureソフトウェアへのパッチ適用では、Gridホームが、パッチが適用されたバージョンの現在のGridホームに移動します。パッチが適用されたバージョンは、作業用コピーである必要があります。Gridホームの移動先の作業用コピーは、現在のホームよりも低いパッチ・レベルにすることができます。これにより、高いレベルのパッチが適用されたホームに移動した後で問題が発生した場合に、ロールバックが容易になります。

この項には次のトピックが含まれます:

5.3.2.1 ローリング方式を使用したOracle Grid Infrastructureへのパッチ適用

Oracle Grid Infrastructureへのパッチ適用のローリング方式は、デフォルトの方法です。

rhpctl move gihomeコマンド(アトミック操作)を使用し、これは、新しいホームで各ノードのOracle Grid Infrastructureスタックが再起動された後に戻されます。ノードは順次再起動されるため、一度に1つのみのノードがオフラインになり、クラスタのその他すべてのノードはオンラインのままになります。
  • 次のように、Oracle Grid Infrastructureホームを同じリリース・レベルの作業用コピーに移動します。
    $ rhpctl move gihome -client cluster_name –sourcewc Grid_home_1 –destwc Grid_home_2

前述のコマンドでは、実行中のOracle Grid Infrastructureホームが、現在の管理対象のホーム(sourcewc)から、特定のクライアント・クラスタのパッチが適用されたホーム(destwc)に移動します。パッチが適用された作業用コピーは、クライアントでプロビジョニングされる必要があります。

注意:

  • Gridホームは、高速ホーム・プロビジョニングで管理されていないホームには移動できません。このため、ロールバックは、2つの作業用コピー間での移動にのみ適用されます。

  • Gridホームを移動した後、いつでもソースの作業用コピーを削除できます。ただし、作業用コピーを削除した後は、ロールバックを実行できません。また、rhpctl delete workingcopyコマンド(rmなどではなく)を使用してソースの作業用コピーを削除し、高速ホーム・プロビジョニング・インベントリを正常な状態に保ちます。

5.3.2.2 非ローリング方式を使用したOracle Grid Infrastructureへのパッチ適用

rhpctl move gihomeコマンドで-nonrollingパラメータを使用して、すべてのノードのOracle Grid Infrastructureスタックをパラレルで再起動できます。

ローリング方式と同様、すべてのノードがオンラインになった後に戻されるアトミック・コマンドです。
  • 非ローリング方式でOracle Grid Infrastructureにパッチを適用するには、次のコマンドを使用します。
    $ rhpctl move gihome -client cluster_name –sourcewc Grid_home_1 –destwc Grid_home_2 -nonrolling
5.3.2.3 バッチを使用したOracle Grid Infrastructureへのパッチ適用

3つ目のパッチ適用方法は、ノードのバッチを順次処理し、各バッチの多数のノードをパラレルで再起動する方法です。

この方法により、パッチ適用プロセス中のサービスの可用性が最大化されます。Oracle リリース2 (12.2.x)ソフトウェア・ホームにパッチを適用するときに、コマンドラインでバッチを定義することも、クラスタで実行されているデータベース・サービスの分析に基づいて高速ホーム・プロビジョニングでバッチのリストを生成することもできます。
バッチを定義する方法として、2つの方法があります。

ユーザー定義のバッチ

このパッチ適用の方法を使用する場合、初めてrhpctl move gihomeコマンドを実行するときに、ソース・ホーム、宛先ホーム、バッチおよび必要に応じてその他のオプションを指定する必要があります。コマンドは、最初のノードの再起動後に終了します。

定義したバッチを使用してOracle Grid Infrastructureにパッチを適用するには、次の手順を実行します。

  1. 次の例のように、コマンドラインでバッチのリストを定義して、パッチ適用プロセスを開始します。

    $ rhpctl move gihome -sourcewc wc1 -destwc wc2 -firstnode n1 -batches "(n2,n3),(n4)"

    前述のコマンド例では、移動操作を開始し、最初のバッチでOracle Grid Infrastructureスタックが再起動したときに終了し、成功をレポートします。Oracle Grid Infrastructureは、-batchesパラメータで指定した順序でバッチを再起動します。

    コマンド例では、ノードn1は最初のバッチを形成し、ノードn2およびn3は2つ目のバッチを形成し、ノードn4は最後のバッチを形成しています。コマンドでは、ソースの作業用コピーがwc1として、パッチが適用された(宛先)作業用コピーがwc2として定義されています。

    注意:

    • パッチを適用しているデプロイメントがOracle Flex Clusterである場合は、-firstnodeパラメータを使用してハブ・ノードの名前を指定する必要があります。

    • シングルトン・サービス(ポリシー管理シングルトン・サービスまたは1つのインスタンスで実行中の管理者管理シングルトン・サービス)がバッチ間で再配置されて、非シングルトン・サービスが引き続きパッチ適用プロセス中に部分的に使用できるように、バッチを指定できます。

  2. 次のように、rhpctl move gihomeコマンドを再度実行して、次のバッチを処理する必要があります。

    $ rhpctl move gihome -sourcewc wc1 -continue

    前述のコマンド例では、2つ目のバッチ(ノードn2およびn3)のOracle Grid Infrastructureスタックを再起動します。コマンドは、2つ目のバッチが正常にパッチ適用されたことをレポートして、終了します。

  3. ノードの最後のバッチが処理されるまで、前述の手順を繰り返します。最後のバッチが処理された後で-continueパラメータを含むコマンドを実行しようとすると、コマンドでエラーが返されます。

    前述の一連の手順のいずれかでrhpctl move gihomeコマンドが失敗した場合は、-continueオプションを指定してコマンドを再度実行し、失敗したバッチへのパッチ適用を試行します。失敗したバッチをスキップして次のバッチに進む場合は、-continue-skipのパラメータを使用します。最後のバッチをスキップしようとすると、移動操作が終了します。

    前述の手順のいずれかで-continueパラメータではなく-abortパラメータを使用して、パッチ適用プロセスを終了し、クラスタを現在の状態のままにすることができます。

    注意:

    • 1つのアクティブ・サーバーによるサーバー・プールでホストされたポリシー管理サービスと、1つの優先インスタンスによる管理者管理サービスおよび使用可能なインスタンスがない管理者管理サービスは再配置できず、インスタンスの再起動中にオフラインになります。

    • 移動操作が進行中の場合は、同じソース・ホームからの別の移動操作または同じ宛先ホームへの別の移動操作は開始できません。

    • 移動操作が終了した後で、移動の前に実行されていたものとは異なるノードでサービスが実行されている場合があり、必要に応じてこれらを元のインスタンスに手動で配置しなおす必要があります。

    • 起動依存性に応じて、移動の開始前にオフラインだったサービスが移動中にオンラインになる場合があります。

高速ホーム・プロビジョニングで定義されるバッチ

ノードのバッチの定義とパッチ適用に高速ホーム・プロビジョニングを使用することは、次のコマンド例、つまり、ソースの作業用コピーがwc1で宛先の作業用コピーがwc2となっている例で示すように、実行する必要があるコマンドが1つのみであることを意味します。

$ rhpctl move gihome -sourcewc wc1 -destwc wc2 -smartmove -saf Z+ [-eval]

コマンドで-separateパラメータを使用していないかぎり、他の操作を実行する必要はありません。その場合、移動操作は次のバッチに進むためのユーザーの介入を待機し、各バッチが完了した後、-continueパラメータを指定してコマンドを実行する必要があります。

前述の例で使用されているパラメータは、次のとおりです。

  • -smartmove: このパラメータにより、Oracle Grid Infrastructureを起動する前にシングルトン・リソースが再配置されるように、非結合のノードのセット上のOracle Grid Infrastructureスタックが再起動されます。

    注意:

    リソースが属するサーバー・プールに含まれるアクティブ・サーバーが1つのみの場合は、再配置を実行できないため、そのリソースはオフラインになります。

    -smartmoveパラメータ:

    • サービスとそれらが実行されているノードのマップを作成します。

    • ノードのバッチを作成します。構成がOracle Flex Clusterの場合は、最初のバッチにはハブ・ノードのみが含まれます。追加バッチについては、次の場合にノードをバッチにマージできます。

      • このノードで実行されている非シングルトン・サービスの可用性が、指定したサービスの可用性ファクタ(またはデフォルトの50%)を下回っていない。

      • このノードに実行中のシングルトン・サービスがあり、バッチにサービスの再配置ターゲット・ノードが含まれていない。

    • バッチごとにOracle Grid Infrastructureスタックを再起動します。

  • サービスの可用性ファクタ(-saf Z+): データベース・サービスを実行する必要があるデータベース・インスタンスの最小数を示す正数を割合として指定できます。次に例を示します。

    • 2つのインスタンスで実行されるサービスに対して-saf 50を指定した場合は、一度に1つのインスタンスのみをオフラインにすることができます。

    • 3つのインスタンスで実行されるサービスに対して-saf 50を指定した場合は、一度に1つのインスタンスのみをオフラインにすることができます。

    • 2つのインスタンスで実行されるサービスに対して-saf 75を指定した場合、ターゲットは対応できないため、エラーが発生します。

    • サービスの可用性ファクタは、2つ以上のインスタンスで実行されるサービスに適用できます。そのため、サービスの可用性ファクタは非ローリング移動を示す0%にすることはできますが、100%にすることはできません。デフォルトは50%です。

    • シングルトン・サービスに対してサービスの可用性ファクタを指定した場合、そのようなサービスの可用性は100%であるためパラメータが無視されて、サービスが再配置されます。

  • -eval: オプションでこのパラメータを使用して、自動生成されたバッチを表示できます。また、このパラメータでは、実際にソフトウェアにパッチを適用することなく、移動操作の順序が表示されます。

5.3.2.4 Oracle Grid InfrastructureとOracle Databaseのパッチ適用の結合

Oracle Grid Infrastructureデプロイメントにパッチを適用するときに、高速ホーム・プロビジョニングでは、クラスタのOracle Databaseホームに同時にパッチを適用できるため、単一のメンテナンス操作で両方のタイプのソフトウェア・ホームにパッチを適用できます。

次のrhpctl move gihomeコマンドのオプション・パラメータは、Oracle Grid InfrastructureとOracle Databaseのパッチ適用の結合のユースケースに関連します。

  • -auto: Oracle Grid Infrastructureへのパッチ適用とともに自動的にデータベースにパッチを適用します。

  • -dbhomes mapping_of_Oracle_homes: 次の形式のソースと宛先の作業用コピーのマッピング:
    sourcewc1=destwc1,...,source_oracle_home_path=destwcN
  • -dblist db_name_list: 指定したデータベースのみにパッチを適用します。

  • -excludedblist db_name_list: 指定したデータベースを除くすべてのデータベースにパッチを適用します。

  • -nodatapatch: 移動するデータベースに対してdatapatchが実行されないことを示します。

たとえば、Oracle Grid Infrastructure 12c リリース2 (12.2)の高速ホーム・プロビジョニング・サーバーによって、ノードtest_749を含むOracle Grid Infrastructure 12c リリース1 (12.1.0.2)ターゲット・クラスタの次の作業用コピーがプロビジョニングされているとします。

  • GI121WC1: Oracle Grid Infrastructure 12c リリース1 (12.1.0.2)クラスタのアクティブなGridホーム

  • GI121WC2: Oracle Grid Infrastructure 12c リリース1 (12.1.0.2)クラスタのソフトウェアのみのGridホーム

  • DB121WC1: データベース・インスタンスを実行しているOracle RAC 12c リリース1 (12.1.0.2.0)データベース・ホーム

  • DB121025WC1: データベース・インスタンスのないOracle RAC 12c リリース1 (12.1.0.2.5)データベース・ホーム(これがパッチが適用されたホームです)

  • DB112WC1: データベース・インスタンスを実行しているOracle RAC 11g リリース2 (11.2.0.4.0)データベース・ホーム

  • DB112045WC1: データベース・インスタンスのないOracle RAC 11g リリース2 (11.2.0.4.5)データベース・ホーム(これがパッチが適用されたホームです)

また、同時に次の移動を実行するとします。

  • Oracle Grid Infrastructureを作業用コピーGI121WC1から作業用コピーGI121WC2

  • Oracle RACデータベースdb1を作業用コピーDB121WC1から作業用コピーDB121025WC1

  • Oracle RACデータベースdb2を作業用コピーDB112WC1から作業用コピーDB112045WC1

次の単一のコマンドによって移動が完了します。

$ rhpctl move gihome -sourcewc GI121WC1 -destwc GI121WC2 -auto
  -dbhomes DB121WC1=DB121025WC1,DB112WC1=DB112045WC1 -targetnode test_749 -root

注意:

現在作業用コピーでない既存のOracleホームがある場合、ソース・ホームには作業用コピーの名前ではなくOracleホームのパスを指定します。前述の例では、既存の12.1.0.2ホームのOracleホームのパスが/u01/app/prod/12.1.0.2/dbhome1である場合は、DB121WC1=DB121025WC1/u01/app/prod/12.1.0.2/dbhome1=DB121025WC1に置き換えます。

前述のコマンド例では、Oracle Grid Infrastructure 12c リリース1 (12.1.0.2)のGridホームが作業用コピーGI121WC1から作業用コピーGI121WC2に移動し、作業用コピーDB121WC1で実行されているデータベースが作業用コピーDB121025WC1に移動し、作業用コピーDB112WC1で実行されているデータベースが作業用コピーDB112045WC1に移動します。

クライアント・クラスタの各ノードでは、RHPCTLの手順は次のとおりです。

  1. Oracle Grid Infrastructureを移動する構成済の操作前ユーザー・アクションを実行します(move gihome)。

  2. データベースの作業用コピーを移動する構成済の操作前ユーザー・アクションを実行します(move database)。

  3. ノードで実行されているサービスを停止して、ドレインと切断のオプションを適用します。

  4. Oracle ClusterwareとOracle Databaseの関連するパッチ適用操作を実行します。

  5. データベースの作業用コピーを移動する構成済の操作後ユーザー・アクションを実行します(move database)。

  6. Oracle Grid Infrastructureの作業用コピーを移動する構成済の操作後ユーザー・アクションを実行します(move gihome)。

5.3.3 Oracle Grid Infrastructureソフトウェアのアップグレード

高速ホーム・プロビジョニングを使用している場合、1つのコマンドでOracle Grid Infrastructureホームをアップグレードできます。

高速ホーム・プロビジョニングは、Oracle Grid Infrastructure 11g リリース2 (11.2.0.3および11.2.0.4)から12c リリース1 (12.1.0.2)へのアップグレードをサポートします。Oracle Grid Infrastructure 11g リリース2 (11.2.0.3と11.2.0.4)および12c リリース1 (12.1.0.2)から12c リリース2 (12.2.0.1)へのアップグレードがサポートされています。すでにプロビジョニングされている作業用コピーをアップグレード先にすることも、この操作の一部として作業用コピーを作成することもできます。

たとえば、高速ホーム・プロビジョニングによってプロビジョニングされたOracle Grid Infrastructureホームで、ターゲット・クラスタがOracle Grid Infrastructureを実行しているとします。このOracle Grid Infrastructureホームは11g リリース2 (11.2.0.4)で、それに従って作業用コピーに名前が付けられます。

Oracle Grid Infrastructure 12c リリース2 (12.2.0.1)の作業用コピー・バージョン(この例ではGIOH12201)をプロビジョニングしたら、次の1つのコマンドでその作業用コピーにアップグレードできます。

$ rhpctl upgrade gihome -sourcewc GIOH11204 -destwc GIOH12201
高速ホーム・プロビジョニングでは、ソースの作業用コピーの名前に基づいて、アップグレードするクラスタを識別できます。管理対象外のOracle Grid Infrastructureホームでターゲット・クラスタが実行されていた場合、ソースの作業用コピーの名前ではなくソース・ホームのパスを指定して、ターゲット・クラスタも指定する必要があります。

注意:

アップグレードの完了後は、いつでもソースの作業用コピーを削除できます。ただし、作業用コピーを削除した後は、ロールバックを実行できません。また、rhpctl delete workingcopyコマンド(rmなどではなく)を使用してソースの作業用コピーを削除し、高速ホーム・プロビジョニング・インベントリを正常な状態に保ちます。

5.4 Oracle Databaseソフトウェアの管理

高速ホーム・プロビジョニング・サーバーでは、Oracle Databaseホームをターゲットまたは高速ホーム・プロビジョニング・クライアントに配布するための効率的でセキュアなプラットフォームが提供されます。

また、高速ホーム・プロビジョニング・クライアントは、高速ホーム・プロビジョニング・サーバーからデータベース・ホームをフェッチできます。

Oracle Databaseホームは、作業用コピーの形式で配布されます。その後、作業用コピーでデータベース・インスタンス(1つ以上)を作成できます。

高速ホーム・プロビジョニングには、パッチが適用されたホームへの切替えや新しいバージョンのデータベースへのアップグレードなど、既存のデータベースを管理するコマンドもあります。これらはいずれも、関連する多数の手順を統合する単一のコマンドです。元のホームに、同様に簡単に戻すことができます。

5.4.1 データベース・ホームの作業用コピーのプロビジョニング

高速ホーム・プロビジョニング・サーバー、クライアントまたはターゲットでデータベース・ホームの作業用コピーをプロビジョニングするには、rhpctl add workingcopyコマンドを使用します。

  • 次の例のように、高速ホーム・プロビジョニング・サーバーでrhpctl add workingcopyコマンドを実行します。
    $ rhpctl add workingcopy -image db12c -path /u01/app/dbusr/product/12.2.0/db12201
      -client client_007 -oraclebase /u01/app/dbusr/ -workingcopy wc_db122_1

    前述のコマンド例では、client_007という高速ホーム・プロビジョニング・クライアント・クラスタのすべてのノードでwc_db122_1という作業用コピーが作成されます。ゴールド・イメージdb12cが作業用コピーのソースです。コマンドで指定するディレクトリ・パスの場所は、空である必要があります。

関連トピック

5.4.2 作業用コピーでのOracle Databaseの作成

作業用コピーでOracle Databaseを作成します。

高速ホーム・プロビジョニング・サーバーでは、その高速ホーム・プロビジョニング・サーバー自体、高速ホーム・プロビジョニング・クライアントまたは非高速ホーム・プロビジョニング・クライアントの作業用コピーにデータベースを追加できます。高速ホーム・プロビジョニング・クライアントでは、その高速ホーム・プロビジョニング・クライアント自体で実行されている作業用コピーでデータベースを作成できます。

  • ゴールド・イメージの作業用コピーを作成してその作業用コピーをターゲットにプロビジョニングすると、次のコマンド例、つまり、wc_db122_1という作業用コピーにdb12201というOracle Real Application Clusters (Oracle RAC)データベースを作成する例のように、rhpctl add databaseコマンドを使用して、作業用コピーにOracle Databaseを作成できます。
    $ rhpctl add database –workingcopy wc_db122_1 –dbname db12201 -node client_007_node1,client_007_node2 -dbtype RAC -datafileDestination DATA007_DG
前述の例では、クライアント・クラスタの2つのノードに、管理者管理Oracle RACデータベースが作成されます。データ・ファイルの宛先は、コマンドの実行前に作成したOracle ASMディスク・グループです。さらに、Oracle RAC One Nodeと非クラスタ化データベースを作成できます。

注意:

高速ホーム・プロビジョニングを使用してデータベースを作成する場合、データベースのSYSとSYSTEMの両方のスキーマに、取得できないランダムなパスワードが使用されます。DBAまたはオペレータのロールを持つユーザーは、実行中のノードのデータベースにローカルに接続して、パスワードをこれら2つのアカウントにリセットする必要があります。

5.4.3 Oracle Databaseソフトウェアへのパッチ適用

Oracle Databaseにパッチを適用するには、データベース・ホームを、実装するパッチが含まれる作業用コピーに移動します。

1つ以上のデータベース・ホームを同じリリース・レベルのデータベースの作業用コピーに移動するには、rhpctl move databaseコマンドを使用します。データベースは、作業用コピー、または高速ホーム・プロビジョニングで管理されていないOracle Databaseホームで実行できます。このコマンドを実行すると、パッチが適用されたイメージに基づいて新しいORACLE_HOMEが作成され(存在しない場合)、さらに、現在の場所であるORACLE_HOMEのかわりに、この新しい場所からデータベースが実行されます。
データベースの移動先の作業用コピーは、現在のデータベース・ホームよりも低いパッチ・レベルにすることができます。これにより、高いレベルのパッチが適用されたホームに移動した後で問題が発生した場合に、ロールバックが容易になります。

注意:

高速ホーム・プロビジョニングで管理されていないホームには移動できないため、ロールバックは作業用コピーのみに適用されます。
データベース・ホームの移動先の作業用コピーは、元の作業用コピーと同じパッチ・レベルにすることができます。このことは、ある記憶域の場所から別の記憶域の場所にデータベース・ホームを移動する場合や、同じパッチ・レベルを維持して管理対象外のホームを管理対象のホームに変換する場合に役立ちます。
高速ホーム・プロビジョニングでは、すべてのパッチがアウトオブプレースで適用されることで、メンテナンスに必要な停止時間が最小化されます。また、高速ホーム・プロビジョニングでは、現在の構成が保持されるため、前述のロールバック機能を使用できます。デフォルトでは、高速ホーム・プロビジョニングでは、パッチがローリング方式で適用されるため、サービスの停止時間が削減され、多くの場合解消されます。非ローリング・モードでパッチ適用を実行するには、-nonrollingオプションを使用します。 こうすると、古いORACLE_HOMEデータベースでデータベースが完全に停止してから、新しくパッチ適用されたORACLE_HOMEから再起動して実行されます。

注意:

パッチ適用プロセスの一部には、データパッチの適用が含まれます。Oracle Database 12c リリース1 (12.1)以降を移動する場合、高速ホーム・プロビジョニングでこの手順が自動的に完了します。ただし、Oracle Database 12c リリース1 (12.1)より前のバージョンに移動する場合は、手動でデータパッチを実行する必要があります。

データベースへのパッチ適用のワークフロー

DB122というOracle Database 12c リリース2 (12.2)のゴールド・イメージから作成された作業用コピーでmyorcldbというデータベースが実行されているとします。Oracle Databaseホームにパッチを適用する一般的なワークフローは次のとおりです。
  1. パッチを適用するOracle Database (この場合、DB122)の作業用コピーを作成します。
  2. 作成した作業用コピーにパッチを適用します。
  3. パッチが適用された作業用コピーをテストおよび検証します。
  4. パッチが適用された作業用コピーからゴールド・イメージ(DB122_PATCHなど)を作成するには、rhpctl add imageコマンドを使用します。

    注意:

    前述のコマンドで指定した作業用コピーは、高速ホーム・プロビジョニングで管理されている記憶域の高速ホーム・プロビジョニング・サーバーでホストされる必要があります。
  5. rhpctl delete workingcopyコマンドを使用して、パッチが適用されたOracle Databaseとともにパッチが適用された作業用コピーを削除します。

    注意:

    rmコマンドなどのいくつかの方法では、高速ホーム・プロビジョニング・インベントリの情報が更新されないため、これらの方法を使用して直接削除しないでください。
  6. パッチが適用されたゴールド・イメージ(DB122_PATCH)から作業用コピーを作成します。
  7. 作成した作業用コピーにmyorcldbを移動します。
  8. 手順の開始時にデータベースが実行されていた作業用コピーにロールバックする必要がないことがわかっている場合は、rhpctl delete workingcopyコマンドを使用してその作業用コピーを削除します。

バッチを使用したOracle Databaseへのパッチ適用

データベースへのパッチの適用中に、高速ホーム・プロビジョニングによって、ノードのバッチを順次処理し、各バッチの多数のノードをパラレルで再起動できます。この方法により、パッチ適用プロセス中のサービスの可用性が最大化されます。コマンドラインでバッチを定義することも、クラスタで実行されているデータベース・サービスの分析に基づいて高速ホーム・プロビジョニングでバッチのリストを生成することもできます。

5.4.4 Oracle Databaseソフトウェアのアップグレード

データベースをアップグレードするための、単一の高速ホーム・プロビジョニング・コマンドがあります。

Oracle Database 11g リリース2 (11.2.0.3および11.2.0.4)からOracle Database 12c リリース1 (12.1.0.2)にアップグレードするには、rhpctl upgrade databaseコマンドを使用します。Oracle Database 11g リリース2 (11.2.0.3と11.2.0.4)およびOracle Database 12c リリース1 (12.1.0.2)からOracle Database 12c リリース2 (12.2.0.1)へのアップグレードがサポートされています。

注意:

アップグレード前のデータベースが実行されているOracle Grid Infrastructureのバージョンは、アップグレード先のデータベースのバージョン以上にする必要があります。
すでにプロビジョニングされている作業用コピーをアップグレード先にすることも、この操作の一部として作業用コピーを作成することもできます。
アップグレード前のデータベースは、作業用コピー(高速ホーム・プロビジョニングでプロビジョニングされた管理対象のホーム)、または管理対象外のホームで実行できます。前者の場合は、1つのRHPCTLコマンドでアップグレード・プロセスを元に戻すことができます。高速ホーム・プロビジョニングでは、管理対象外のホームを元に戻すことはできません。

注意:

アップグレードの完了後は、いつでもソースの作業用コピーを削除できます。ただし、作業用コピーを削除した後は、ロールバックを実行できません。また、rhpctl delete workingcopyコマンド(rmなどではなく)を使用してソースの作業用コピーを削除し、高速ホーム・プロビジョニング・インベントリを正常な状態に保ちます。

関連トピック

5.5 パッチ適用中の永続的ホーム・パス

更新を適用する場合は、アウトオブプレース・パッチ適用をお薦めします。

アウトオブプレース・パッチ適用では、パッチが適用された環境を新しいディレクトリ・パスにデプロイして、ソフトウェア・ホームをその新しいパスに切り替えます。この方法では、新しいホームがプロビジョニングされるときに既存のホームがアクティブなままとなるため、ソフトウェアが停止されなくなり、切替え後に問題が発生した場合にパッチが適用されていないソフトウェア・ホームを使用できるため、ロールバックが容易になります。

従来のアウトオブプレース・パッチ適用の潜在的な悪影響は、ソフトウェア・ホームのパスが変更されることです。高速ホーム・プロビジョニングでは、Oracle DatabaseおよびOracle Grid Infrastructureソフトウェアで内部的および透過的にこのことが管理されますが、一部のユーザーがパスに依存するスクリプトを開発しています。これに対処するために、高速ホーム・プロビジョニングでは、サイト固有の構成の変更からゴールド・イメージ・ソフトウェアを分離できるようにするファイル・システム機能が使用されているため、ソフトウェア・ホームのパスはすべての更新で永続的です。

この機能は、ローカル記憶域でプロビジョニングされたOracle Database 12c リリース2 (12.2)およびOracle Grid Infrastructure 12c リリース2 (12.2)の作業用コピーで使用できます。また、この機能を使用しないでOracle Database 12c リリース2 (12.2)またはOracle Grid Infrastructure 12c リリース2 (12.2)ホームをプロビジョニングした場合は、rhpctl move databaseまたはrhpctl move gihomeコマンドを使用したパッチ適用操作中に、この構成に変換して機能を利用できます。

注意:

高速ホーム・プロビジョニング・サーバーからの永続的ホーム・パスに基づくホームを持つ、高速ホーム・プロビジョニング・クライアントのOracle Grid Infrastructureのみにパッチを適用できます。

5.6 高速ホーム・プロビジョニング・クライアントの管理

高速ホーム・プロビジョニング・クライアントの管理タスクには、作成、有効化と無効化、ユーザーの作成とそれらのユーザーへのロールの割当ておよびパスワードの管理が含まれます。

SRVCTLおよびRHPCTLを使用すると、高速ホーム・プロビジョニング・クライアントのすべての管理タスクを実行できます。

5.6.1 高速ホーム・プロビジョニング・クライアントの作成

ユーザーは、Oracleホームのデプロイのリクエストやゴールド・イメージの問合せといったタスクを実行するために、高速ホーム・プロビジョニング・クライアントで操作を行います。

高速ホーム・プロビジョニング・クライアントを作成するには、次の手順を実行します。

  1. 高可用性VIP (HAVIP)が高速ホーム・プロビジョニング・サーバーにない場合は、rootユーザーとして次のようにHAVIPを作成します。
    # srvctl add havip -id id -address {host_name | ip_address}
    

    ホスト名、IPv4またはIPv6 IPアドレスのいずれかを指定できます。HAVIPに指定するIPアドレス、または指定したホスト名から解決されるアドレスが、このコマンドを実行するときに使用中であってはいけません

    注意:

    可用性の高いVIPは、高速ホーム・プロビジョニング・サーバー・クラスタで構成されているデフォルトのネットワークと同じサブネットに所属している必要があります。次のコマンドを実行することによって、サブネットを取得できます。

    $ srvctl config network -netnum network_number
  2. 高速ホーム・プロビジョニング・サーバー上で、Gridホームの所有者として、クライアント・データ・ファイルを次のように作成します。
    $ rhpctl add client -client client_cluster_name -toclientdata path
    

    RHPCTLによって、-toclientdataフラグの後に指定するディレクトリ・パスに、クライアント・データ・ファイルが作成されます。クライアント・データ・ファイルの名前はclient_cluster_name.xmlです。

    注意:

    client_cluster_nameは一意で、手順4を実行するクライアント・クラスタのクラスタ名と一致する必要があります。

  3. 高速ホーム・プロビジョニング・クライアント上で、Gridホームの所有者が読取り/書込み権限を持つクライアント・クラスタ上のディレクトリに、前述の手順で作成したクライアント・データ・ファイルを、コピーします。
  4. クライアント・クラスタで次のコマンドをrootとして実行し、高速ホーム・プロビジョニング・クライアントを作成します。
    # srvctl add rhpclient -clientdata path_to_client_data
       [-diskgroup disk_group_name -storage base_path]

    作業用コピーをこのクラスタのOracle ACFS記憶域にプロビジョニングする場合、そのためのディスク・グループをすでに作成しているときは、そのディスク・グループを前のコマンドに指定します。このケースでは記憶域のパスも指定してください。これは、作業用コピーを格納するためのOracle ACFSファイル・システムを作成するときに、すべてのマウント・ポイントのベース・パスとして使用されます。

    注意:

    高速ホーム・プロビジョニング・クライアントでディスク・グループを一度構成すると、高速ホーム・プロビジョニング・クライアント構成からディスク・グループを削除したり変更したりすることはできません。いずれか(変更または削除)を実行するには、srvctl remove clientコマンドを使用して高速ホーム・プロビジョニング・クライアントを完全に削除するしかありません。その後、必要であれば別のディスク・グループを使用して追加します。高速ホーム・プロビジョニング・クライアントを削除する前には、そのクラスタから登録済のすべてのユーザーを削除し、そのクラスタにプロビジョニングされたすべての作業用コピーを削除してください。

  5. 高速ホーム・プロビジョニング・クライアントを、次のように起動します。
    $ srvctl start rhpclient
  6. 高速ホーム・プロビジョニング・クライアントのステータスを、次のようにチェックします。
    $ srvctl status rhpclient

5.6.2 高速ホーム・プロビジョニング・クライアントの有効化と無効化

高速ホーム・プロビジョニング・クライアントは、すべてのアクションについて高速ホーム・プロビジョニング・サーバーと通信します。高速ホーム・プロビジョニング・サーバーに接続せずにRHPCTLコマンドを実行することはできません。

高速ホーム・プロビジョニング・サーバーで、高速ホーム・プロビジョニング・サーバー・クラスタから次のコマンドを実行して、高速ホーム・プロビジョニング・クライアントを有効化または無効化できます。

$ rhpctl modify client -client client_name -enabled TRUE | FALSE

高速ホーム・プロビジョニング・クライアントを有効化するには、-enabled TRUEと指定します。逆に、クライアントを無効化するには-enabled FALSEを指定します。高速ホーム・プロビジョニング・クライアント・クラスタを無効化すると、クライアントを再び有効化しないかぎり、そのクライアント・クラスタからのすべてのRHPCTLコマンドは高速ホーム・プロビジョニング・サーバーによって拒否されます。

注意:

高速ホーム・プロビジョニング・クライアント・クラスタを無効化しても、そのクライアント・クラスタ上の既存の作業用コピーは無効化されません。作業用コピーは引き続き機能し、その作業用コピー内のデータベースも引き続き実行されます。高速ホーム・プロビジョニング・サーバー・クラスタのOracleホームの記憶域がNFSを使用している場合でも変わりません。

5.6.3 高速ホーム・プロビジョニング・クライアントの削除

高速ホーム・プロビジョニング・クライアントを削除するには、次の手順を使用します。

  1. 高速ホーム・プロビジョニング・クライアントを削除する前に、まず、次のように高速ホーム・プロビジョニング・サーバーの作業用コピーとユーザーを削除する必要があります。
    1. 高速ホーム・プロビジョニング・クライアント・クラスタでプロビジョニングされている作業用コピーのリストを問い合せます。

      次のコマンドを実行します。

      $ rhpctl query workingcopy -client client_name
    2. 前述のコマンドの出力にリストされた各作業用コピーを削除します。

      作業用コピーごとに次のコマンドを実行して、削除する作業用コピーの名前を指定します。

      $ rhpctl delete workingcopy -workingcopy working_copy_name
    3. 高速ホーム・プロビジョニング・クライアント・クラスタからユーザーのリストを問い合せます。

      次のコマンドを実行します。

      $ rhpctl query user -client client_name
    4. 次のように、前述のコマンドの出力にリストされたユーザーを削除します。

      次のコマンドを実行して、削除するユーザーの名前とクライアントの名前を指定します。

      $ rhpctl delete user -user user_name —client client_name
  2. 高速ホーム・プロビジョニング・クライアント・クラスタで、次のようにクライアントを削除します。
    1. 高速ホーム・プロビジョニング・クライアント・デーモンを停止します。

      次のコマンドを実行します。

      $ srvctl stop rhpclient
    2. 高速ホーム・プロビジョニング・クライアントの構成を削除します。

      次のコマンドを実行します。

      $ srvctl remove rhpclient
  3. 高速ホーム・プロビジョニング・サーバー・クラスタのクライアントのサイト構成を削除します。

    次のコマンドを実行して、クライアントの名前を指定します。

    $ rhpctl delete client -client client_name

5.6.4 高速ホーム・プロビジョニング・クライアント・クラスタ・ユーザーのためのユーザーの作成とロールの割当て

rhpctl add clientコマンドを使用して高速ホーム・プロビジョニング・クライアントを作成した場合は、-maprolesパラメータを使用してユーザーを作成してロールを割り当てることができます。このコマンドで、複数のユーザーをロールに関連付けたり、1ユーザーに複数のロールを割り当てたりすることができます。

クライアントが作成されたら、rhpctl grant roleコマンドを使用してユーザーのロールを追加することも、rhpctl revoke roleコマンドを使用してユーザーのロールを削除することもできます。

5.6.5 高速ホーム・プロビジョニング・クライアント・パスワードの管理

高速ホーム・プロビジョニング・クライアントは、内部に格納されているパスワードを使用して、RHPサーバーに対して自らを認証します。このパスワードを問い合せることはできません。ただし、なんらかの理由によってこのパスワードをリセットする必要がある場合には、RHPサーバー・クラスタで次のように行うことができます。

  1. 高速ホーム・プロビジョニング・サーバー・クラスタで次のコマンドを実行し、新しいパスワードを生成して、クライアント資格証明に格納します。
    $ rhpctl modify client -client client_name -password
    
  2. 高速ホーム・プロビジョニング・サーバー・クラスタで次のコマンドを実行し、資格証明ファイルを生成します。
    $ rhpctl export client -client client_name -clientdata file_path
    

    たとえば、高速ホーム・プロビジョニング・クライアントの資格証明ファイルmjk9394を生成するには、次のようにします。

    $ rhpctl export client -client mjk9394 -clientdata /tmp/mjk9394.xml
    
  3. 前の例に続いて、生成された資格証明ファイルを高速ホーム・プロビジョニング・クライアント・クラスタにセキュアに転送し、次のコマンドを高速ホーム・プロビジョニング・クライアント・クラスタの任意のノードで実行します。
    $ srvctl modify rhpclient -clientdata path_to_mjk9394.xml
    
  4. 次のコマンドを高速ホーム・プロビジョニング・クライアント・クラスタで実行して、高速ホーム・プロビジョニング・クライアント・デーモンを再起動します。
    $ srvctl stop rhpclient
    $ srvctl start rhpclient

5.7 高速ホーム・プロビジョニングのユース・ケース

以下のトピックでは、高速ホーム・プロビジョニングを使用してソフトウェアのプロビジョニング、パッチ適用、アップグレードを行うための手順を段階ごとに示します。

高速ホーム・プロビジョニングは、ソフトウェア・ライフサイクル管理ソリューションであり、標準運用環境のパッチ適用、プロビジョニングおよびアップグレードを標準化するのに役立ちます。

5.7.1 Oracle Grid Infrastructure 12cリリース2デプロイメントの作成

現在Gridホームのない2つのノードでOracle Grid Infrastructureをプロビジョニングし、その後、マルチノードのOracle Grid Infrastructureインストールを形成するようにOracle Grid Infrastructureを構成します。

始める前に

Oracle Grid Infrastructureをインストールするための、ストレージ、ネットワーク、ユーザー、グループおよびノード情報の構成詳細を、レスポンス・ファイルに指定してください。レスポンス・ファイルは、高速ホーム・プロビジョニング・サーバー上の任意の場所に格納できます。

Oracle Standalone Cluster、Oracle Application Clusters、Oracle Domain Services ClusterまたはOracle Member Clustersをプロビジョニングできます。レスポンス・ファイルに、必要なクラスタ構成詳細が含まれていることを確認してください。

『Oracle Grid Infrastructureインストレーション・ガイド』に記載されているように、ストレージ、ネットワークおよびオペレーティング・システムの要件が構成されていることを確認してください。

手順

  1. 高速ホーム・プロビジョニング・サーバーから、次のコマンドを実行します。
    rhpctl add workingcopy -workingcopy GI122 -image GI_HOME_12201 –responsefile /u01/app/rhpinfo/GI_12201_install.rsp –root

    GI122は、イメージGI_HOME_12201に基づく作業用コピーです

    /u01/app/rhpinfo/GI_12201_install.rspはレスポンス・ファイルの場所です。

    ノードに接続するためのrootまたはsudo資格証明を指定します。

    クラスタ検証ユーティリティは、要件に応じてインストール前の構成をチェックします。高速ホーム・プロビジョニングは、Oracle Grid Infrastructureを構成します。

Oracle Grid Infrastructure 12cリリース2は、同じレスポンス・ファイル内の設定に基づいてプロビジョニングされます。

プロビジョニング中にエラーが発生した場合は、プロシージャが停止し、エラーを修正できます。エラーを修正したら、最後に停止した場所からプロビジョニング操作を再開できます。

ビデオを見る

5.7.2 Oracle Databaseホームのプロビジョニングとデータベースの作成

この手順では、Oracle Database 12cリリース2 (12.2)ソフトウェアをプロビジョニングし、Oracle Databaseインスタンスを作成します。

始める前に

高速ホーム・プロビジョニング・サーバーに格納されているゴールド・イメージdb12201が存在することを確認してください。

手順

  1. 高速ホーム・プロビジョニング・サーバーから、Oracle Databaseホーム・ソフトウェアをプロビジョニングします。
    rhpctl add workingcopy -image db12201 -path /u01/app/dbusr/product/12.2.0/db12201
      -client client_001 -oraclebase /u01/app/dbusr/ 
    -workingcopy db122 
    このコマンドを実行すると、クラスタclient_001上の指定されたパスに、作業用コピーdb122がプロビジョニングされます(イメージdb12201から)。
  2. データベース・インスタンスを作成します。
    rhpctl add database -workingcopy db122 -dbname db -dbtype RAC
    このコマンドを実行すると、Oracle RACデータベース・インスタンスdbが作成されます。add databaseコマンドを使用すれば、作業用コピー上に追加のインスタンスを繰り返し作成できます。

ビデオを見る

5.7.3 Oracle Grid Infrastructure 12cリリース2へのアップグレード

この手順では、高速ホーム・プロビジョニングを使用して、Oracle Grid Infrastructureクラスタを11gリリース2 (11.2.0.4)から12cリリース2 (12.2)にアップグレードします。

始める前に

Oracle Grid Infrastructure 12cリリース2 (12.2.0.1)にアップグレードするには、ソースがOracle Grid Infrastructure 11gリリース2 (11.2.0.3または11.2.0.4)か、Oracle Grid Infrastructure 12cリリース2 (12.1.0.2)である必要があります。

ソース・ホームで構成されているグループが宛先ホームのものに一致することを確認してください。

作業用コピーをプロビジョニングするための、Oracle Grid Infrastructure 12cリリース2 (12.2.0.1)ソフトウェアのイメージGI_HOME_12201があることを確認してください。

GI_11204は、アップグレードされるクラスタ上のアクティブなGrid Infrastructureホームです。これは作業用コピーです(この例では、高速ホーム・プロビジョニングによってクラスタがプロビジョニングされているため)。高速ホーム・プロビジョニングでは、Grid Infrastructureホームが管理対象外のクラスタ(つまり、高速ホーム・プロビジョニングによってプロビジョニングされなかったホーム)をアップグレードすることもできます。

手順

  1. Oracle Grid Infrastructure 12cリリース2 (12.2.0.1)ソフトウェアの作業用コピーをプロビジョニングします。
    rhpctl add workingcopy -workingcopy GI122 -image GI_HOME_12201 -root root

    GI122は、イメージGI_HOME_12201に基づく作業用コピーです。

  2. ターゲット・クラスタをGI122作業用コピーにアップグレードします。
    rhpctl upgrade gihome -sourcewc GI11204 -destwc GI122
    高速ホーム・プロビジョニングは、ソース作業用コピーの名前に基づいてアップグレード対象のクラスタを識別し、作業用コピーGI122にアップグレードします。

5.7.4 Gridホーム・パスを変更しないOracle Grid Infrastructureのパッチ適用

この手順では、Gridホーム・パスを変更せずに、Oracle Grid Infrastructureにパッチを適用する方法について説明します。

始める前に

  • Gridホームを含んだゴールド・イメージがインポートされ、高速ホーム・プロビジョニング・サーバー上に存在していることを確認してください。

  • ­pathオプションで指定したディレクトリが既存のディレクトリでないことを確認してください。

  • OLFS準拠のGridホームから別のホームに移行する場合は、Oracleレイヤー・ファイルシステム(OLFS)に対応したイメージGIHOME_12201_LPMが利用可能であることを確認してください。

パッチ適用の手順

  1. Gridホームにパッチを適用し、それをOracleレイヤー・ファイルシステム(OLFS)に移動するには、高速ホーム・プロビジョニング・サーバーから、次のいずれかのコマンドを実行します。
    1. 高速ホーム・プロビジョニングによって管理されるGridホームにパッチを適用するには、次のコマンドを実行します(Oracleホームが高速ホーム・プロビジョニングによって管理されるため、ソース作業用コピーが存在します)。
      [GRID:grid@testuser:/grid_home]> rhpctl move gihome -srcwc GI_HOME_12201
       -destwc GI_HOME_12201_PSU1 -aupath  /u01/app/orabase/product/12.2.0.1/aupath
      -agpath /u01/app/orabase/product/12.2.0.1/aupath -image -path /u01/app/orabase/product/12.2.0.1/grid

      GI_HOME_12201はパッチが適用されるGridホームのソース作業用コピーで、GI_HOME_12201_PSU1はパッチが適用されたGridホーム・ソフトウェアの作業用コピーです。

      /u01/app/orabase/product/12.2.0.1/agpathおよび/u01/app/orabase/product/12.2.0.1/aupathは、Gridホームへのパッチ適用時に、物理パス/u01/app/orabase/product/12.2.0.1/gridへと解決される論理パスです。

    2. 管理対象外のGridホームにパッチを適用するには、次のコマンドを実行します(Oracleホームは高速ホーム・プロビジョニングによって管理されないため、ソース作業用コピーは存在しません)。
      [GRID:grid@testuser:/grid_home]> rhpctl move gihome -sourcehome /u01/app/grid
       -destwc GI_HOME_12201_PSU1 -aupath /u01/app/orabase/product/12.2.0.1/aupath 
      -agpath /u01/app/orabase/product/12.2.0.1/agpath -image -path /u01/app/orabase/product/12.2.0.1/grid

      /u01/app/gridはパッチが適用されるGridホームのパスで、GI_HOME_12201_PSU1はパッチが適用されたGridホームの作業用コピーです。

      /u01/app/orabase/product/12.2.0.1/agpathおよび/u01/app/orabase/product/12.2.0.1/aupathは、Gridホームへのパッチ適用時に、物理パス/u01/app/orabase/product/12.2.0.1/gridへと解決される論理パスです。

  2. Oracleレイヤー・ファイルシステム(OLFS)に準拠したGridホームにパッチを適用するには、高速ホーム・プロビジョニング・サーバーから、次のコマンドを実行します。
    [GRID:grid@testuser:/grid_home]> rhpctl move gihome -sourcewc gihome12201_lpm
     -destwc gihome12201_psu1_lpm -aupath /u01/app/orabase/product/12.2.0.1/aupath 
    -image GIHOME_12201_LPM

    ソース作業用コピーgihome12201_lpmから実行されているGridホームが、作業用コピーgihome12201_psu1_lpm (イメージGIHOME_12201_LPMに基づき、パッチが含まれている)に移動されます。

5.7.5 Oracle Grid InfrastructureとOracle Databaseの同時パッチ適用

この手順では、クラスタのダウンタイムを発生させずに、クラスタ上のOracle Grid InfrastructureとOracle Databaseに最新のパッチ・レベルを適用します。

始める前に

この手順では、Oracle Grid Infrastructure 12cリリース2 (12.2.0.1)がターゲット・クラスタ上で実行されています。作業用コピーGI_HOME_12201_WCPYは、このクラスタ上のアクティブなGridホームです。作業用コピーDB_HOME_12201_WCPYでは、Oracle RAC 12cリリース2 (12.2.0.1)データベースが実行され、データベース・インスタンスdb1が実行されています。作業用コピーDB_HOME_12102_WCPYでは、Oracle RAC 12cリリース1 (12.1.0.2)データベースが実行され、データベース・インスタンスdb2が実行されています

高速ホーム・プロビジョニング・サーバー上で、Oracle Grid InfrastructureとOracle RACデータベースに必要なパッチが、イメージGI_HOME_12201_PSU1DB_HOME_12201_PSU1DB_HOME_12102_PSU5に適用されていることを確認してください。

ソース・ホームで構成されているグループは、宛先ホームのものに一致する必要があります。

手順

  1. 次の手順で、ターゲットOracleホームを準備します。
    1. パッチ適用するクラスタ上のソフトウェア専用Gridホームをプロビジョニングします。
      rhpctl add workingcopy -workingcopy GI_HOME_12201_PATCHED_WCPY 
      -image GI_HOME_12201_PSU1 –client CLUSTER_005 -softwareonly
    2. パッチ適用する各リリースのデータベース・ホーム(データベース・インスタンスなし)をプロビジョニングします。
      rhpctl add workingcopy -workingcopy DB_HOME_12201_PATCHED_WCPY 
      -image DB_HOME_12201_PSU1
      rhpctl add workingcopy -workingcopy DB_HOME_12102_PATCHED_WCPY 
      -image DB_HOME_12102_PSU5
  2. 次のコマンドを実行して、Oracle Grid Infrastructureと、node1上のすべてのOracle RACデータベースにパッチを適用します。
    rhpctl move gihome -sourcewc GI_HOME_12201_WCPY -destwc GI_HOME_12201_PATCHED_WCPY -auto 
    -dbhomes DB_HOME_12102_WCPY=DB_HOME_12102_PATCHED_WCPY,DB_HOME_12201_WCPY=DB_HOME_12201_PATCHED_WCPY -targetnode node1 -root

    このコマンドを実行すると、アクティブなOracle Grid Infrastructureが作業用コピーGI_HOME_12201_WCPYからGI_HOME_12201_PATCHED_WCPYに、Oracle RACデータベースdb1DB_HOME_12201_WCPYからDB_HOME_12201_PATCHED_WCPYに、Oracle RACデータベースdb2DB_HOME_12102_WCPYからDB_HOME_12102_PATCHED_WCPYに移動されます。

5.7.6 ダウンタイムを発生させないOracle Database 12cリリース1のパッチ適用

この手順では、データベースをダウンさせずに、Oracle Database 12cリリース1 (12.1.0.2)に最新のパッチを適用する方法について説明します。

始める前に

最新のパッチ・レベルにパッチ適用するOracle Database db12102があることを確認してください。

DB12102_PSUイメージに基づく作業用コピーdb12102_psuに、最新のパッチが含まれていて、利用可能であることを確認してください。

手順

高速ホーム・プロビジョニング・サーバーから、データベース上のソースと宛先に応じて、次のいずれかのコマンドを実行します。

  1. 高速ホーム・プロビジョニングによって管理されるOracle Databaseホームにパッチを適用する場合で、ソースおよび宛先データベースの作業用コピーが存在する場合は、次のコマンドを実行します。
    rhpctl move database -sourcewc db12102 -patchedwc db12102_psu

    db12102は、パッチが適用されるデータベースのソース作業用コピーです。

    db12102_psuは、パッチが適用されたOracle Databaseソフトウェアの作業用コピーです(イメージDB12102_PSUに基づく)。

  2. 管理対象外のOracle Databaseホームにパッチを適用するには、次のコマンドを実行します(Oracleホームは高速ホーム・プロビジョニングによって管理されないため、ソース作業用コピーは存在しません)。
    rhpctl move database -sourcehome /u01/app/orabase/product/12.1.0.2/dbhome_1
     -patchedwc db12102_psu -targetnode node1

    targetnodeでは、アップグレード対象のデータベースが実行されているノードを指定します(ソースOracle Databaseは12.1.0.2クラスタ上にあるため)。

    /u01/app/orabase/product/12.1.0.2/dbhome_1はアップグレードされるデータベースのパスです

    db12102_psuは、パッチが適用されたOracle Databaseソフトウェアの作業用コピーです(イメージDB12102_PSUに基づく)。

    リリース12cリリース1のすべてのデータベースのパッチ適用を同じパッチ・レベルへと標準化するために、保存されたゴールド・イメージを使用します。
  3. 何らかの理由で、適用されたパッチを管理対象外のOracle Databaseホームにロールバックする必要がある場所は、次のコマンドを実行します。
    rhpctl move database -patchedwc db12102_psu 
    -sourcehome /u01/app/orabase/product/12.1.0.2/dbhome_1
     targetnode node1

すべてのOracle Databaseについて、move databaseコマンドでは次の追加オプションも指定できます。

  • -keepplacement: 管理者によって管理されるOracle RACデータベース(Oracle RAC One Nodeデータベースではありません)のために、高速ホーム・プロビジョニングは移動後もサービスを同じノード上に保持します。

  • -disconnect: サービスを停止または再配置する前にすべてのセッションを切断します。

  • -drain_timeout: 計画的なメンテナンス操作のためのリソース排出が完了するまでの許容時間を秒数で指定します。ドレイン期間中は、現在のすべてのクライアント要求は処理されますが、新しい要求は受け入れません。このオプションは、Oracle Database 12cリリース2 (12.2)以降についてのみ使用できます。

  • -stopoption: データベースを停止します。

  • -nodatapatch: 移動するデータベースに対してdatapatchが実行されていないことを確認します。

ビデオを見る

5.7.7 Oracle Database 12cリリース2へのアップグレード

この手順では、高速ホーム・プロビジョニングを使用して、管理対象と管理対象外の両方のOracleホームを対象に、Oracle Databaseを11.2から12cリリース2へと単一コマンドでアップグレードする方法について説明します。

始める前に

  • Oracle Database 12cリリース2 (12.2.0.1)にアップグレードするには、ソース・データベースがOracle Database 11gリリース2 (11.2.0.3または11.2.0.4)か、Oracle Database 12cリリース1 (12.1.0.2)のいずれかである必要があります。

  • アップグレード前のデータベースが実行されているOracle Grid Infrastructureは、アップグレード先のデータベースのリリース以上である必要があります。

  • アップグレードされるソースOracleホームは、管理対象の作業用コピー(つまり、高速ホーム・プロビジョニングを使用してプロビジョニングされたOracleホーム)であっても、管理対象外のホーム(つまり、高速ホーム・プロビジョニングを使用してプロビジョニングされなかったOracleホーム)であってもかまいません。管理対象外のOracleホームをアップグレードする場合は、アップグレード用のデータベースの完全パスを指定してください。

高速ホーム・プロビジョニングを使用してOracle Databaseをアップグレードする手順

  1. 高速ホーム・プロビジョニング・サーバーから、データベース上のソースと宛先に応じて、次のいずれかのコマンドを実行します。
    1. 高速ホーム・プロビジョニングによって管理されるOracleホームをアップグレードする場合で、ソースおよび宛先データベースの作業用コピーが存在する場合は、次のコマンドを実行します。
      [GRID:grid@testuser:/grid_home]>  rhpctl upgrade database -dbname test_database 
      -sourcewc db112 -destwc db122 -root

      test_databaseは、アップグレードされるデータベースの名前です。

      db112は事前アップグレード・データベースのソース作業用コピーです。

      db122は、アップグレードされたOracle Databaseソフトウェアの作業用コピーです。

    2. 管理対象外のOracleホームにアップグレードするには、次のコマンドを実行します(Oracleホームは高速ホーム・プロビジョニングによって管理されないため、ソース作業用コピーは存在しません)。
      [GRID:grid@testuser:/grid_home]>  rhpctl move database -sourcehome 
      /u01/app/orabase/product/11.2.0/dbhome_1 -destwc db122 -targetnode node1 -root

      /u01/app/orabase/product/11.2.0/dbhome_1はアップグレードされるデータベースのパスです。

      db122は、アップグレードされたOracle Databaseソフトウェアの作業用コピーです。

      targetnodeでは、アップグレード対象のデータベースが実行されているノードを指定します(ソースOracle Databaseは11.2.0.4クラスタ上にあるため)。

アップグレードされたデータベースは、高速ホーム・プロビジョニングによって管理されます。高速ホーム・プロビジョニングを使用して、データベースが最新レベルにパッチ適用されていることを確認できます。

注意:

アップグレード中にエラーが発生した場合は、プロシージャが停止し、エラーを修正できます。エラーを修正したら、最後に停止した場所からアップグレード操作を再開できます。

ビデオを見る

5.7.8 クラスタへのノード追加とノードに対するOracle RACデータベースのスケーリング

高速ホーム・プロビジョニングを使用して、2ノードのクラスタに新しいノードを追加し、Oracle RACデータベースを新しいノードへと拡張できます。

始める前に

この手順では、Oracle Grid Infrastructure 12cリリース2 (12.2.0.1)がクラスタ上で実行されています。作業用コピーGI_HOME_12202_WCPYは、このクラスタ上のアクティブなGridホームです。

Oracle RACデータベース・ホームは、作業用コピーDB_HOME_12202_WCPYで実行されます。

『Oracle Grid Infrastructureインストレーション・ガイド』に記載されているように、ストレージ、ネットワークおよびオペレーティング・システムの要件が新規ノード用に構成されていることを確認してください。

手順

  1. 高速ホーム・プロビジョニング・サーバーから、次のコマンドを実行して既存のOracle Grid Infrastructure作業用コピーにノードを追加します。
    rhpctl addnode gihome -workingcopy GI_HOME_12202_WCPY -newnodes -root n3:n3-vip -root
    このコマンドは、node3を追加することによってクラスタを拡張します。
  2. 管理者管理のOracle RACデータベースにインスタンスを追加します。
    rhpctl addnode database -workingcopy DB_HOME_12202_WCPY -dbname db321 -node n3 -root
    このコマンドを実行すると、node3のデータベース・ホームが拡張され、このノード上にデータベースdb321が作成されます。

ビデオを見る

5.7.9 高速ホーム・プロビジョニング用のゴールド・イメージの追加

ソフトウェア・ホームのゴールド・イメージを作成し、それらを高速ホーム・プロビジョニング・サーバーに格納します(後でOracleホームのプロビジョニングに使用します)。

始める前に

ゴールド・イメージの作成に使用されるOracleホームは、高速ホーム・プロビジョニング・サーバー上のものでも、高速ホーム・プロビジョニング・クライアント上のものでも、あるいは高速ホーム・プロビジョニング・サーバーが通信できるターゲット・マシン上のものでもかまいません。

手順

Oracleホームのゴールド・イメージを次のいずれかの方法で作成し、それらを高速ホーム・プロビジョニング・サーバーに格納します。

  1. 高速ホーム・プロビジョニング・サーバー上のインストール済Oracleホームから、イメージをインポートします。
    rhpctl import image -image db12201 -path /share/software/122/dbhome -imagetype ORACLEDBSOFTWARE 

    imagetype Oracle Database 12cリリース2ソフトウェアのゴールド・イメージが作成され、高速ホーム・プロビジョニング・サーバーに格納されます。

    -imagetypeORACLEGISOFTWAREまたはSOFTWAREとして指定することで、Oracle Grid Infrastructureやその他のソフトウェアのゴールド・イメージを作成することもできます。

  2. 高速ホーム・プロビジョニング・クライアントから次のコマンドを実行して、高速ホーム・プロビジョニング・クライアント上のインストール済Oracleホームからイメージをインポートできます。
    rhpctl import image -image db12201 -path /u01/app/dbusr/product/12.2.0/

    このコマンドを実行すると、指定されたパスにインストールされているローカルOracleホームに基づいて、イメージdb12201が作成され、追加されます。

注意:

イメージをソフトウェア・ホームとして直接使用することはできません。イメージを使用してソフトウェア・ホームの作業用コピーを作成してください。

5.7.10 Webサーバーをデプロイするためのユーザー・アクションの作成

高速ホーム・プロビジョニングのユーザー・アクションを使用して、任意のタイプのソフトウェアをインストールし、構成できます。次に示すのは、高速ホーム・プロビジョニングを使用してApache Webサーバーのデプロイメントを自動化するための手順です。

高速ホーム・プロビジョニングは、すべてのタイプのソフトウェアをデプロイ・管理するためのワークフロー作成をサポートしています。
  1. Apache Webサーバーをインストールするためのスクリプトを作成します。
    1. 高速ホーム・プロビジョニング・サーバー上で、Apache Webサーバーのインストール・キットをダウンロードし、抽出します。
    2. Apache Webサーバーをインストール、構成、起動するためのスクリプトを作成します。
  2. スクリプトをユーザー・アクションとして高速ホーム・プロビジョニングに登録します。高速ホーム・プロビジョニング・サーバーから次のコマンドを実行します。
    rhpctl useraction -useraction apachestart 
    -actionscript /user1/useractions/apacheinstall.sh 
    -post -optype ADD_WORKINGCOPY -onerror ABORT

    このコマンドにより、指定されたディレクトリに格納されているアクション・スクリプト用のapachestartユーザー・アクションが追加されます。指定されたプロパティに応じて、ADD_WORKINGCOPY操作の後にユーザー・アクションが実行され、エラーが発生した場合には操作が中止されます。

  3. イメージ・タイプを作成し、そのイメージ・タイプにユーザー・アクションを関連付けます。
    rhpctl add imagetype -imagetype apachetype -basetype SOFTWARE 
    -useraction "apachestart"

    このコマンドにより、apachetypeという新しいイメージ・タイプが作成されます。これは、ユーザー・アクションapacherstartが関連付けられた、基本イメージ・タイプSOFTWAREのデリバティブです。

  4. イメージ・タイプのゴールド・イメージを作成します。
    rhpctl import image -image apacheinstall -path /user1/apache2219_kit/ 
    -imagetype apachetype

    このコマンドでは、先に作成したimagetypeに基づいて、Apache Webサーバー・インストール用のスクリプトを使用したゴールド・イメージapacheinstallが、指定されたパスに作成されます。

    このイメージのプロパティを表示するには、rhpctl query image -image apacheinstallコマンドを実行します。
  5. ゴールド・イメージの作業用コピーをターゲットにデプロイします。
    rhpctl add workingcopy -workingcopy apachecopy -image apacheinstall 
    -path /user1/apacheinstallloc -sudouser user1 
    -sudopath /usr/local/bin/sudo -node node1 -user user1 
    -useractiondata "/user1/apachehome:1080:2.2.19

    高速ホーム・プロビジョニングは、ソフトウェアをターゲットにプロビジョニングし、ユーザー・アクションで指定されたスクリプトapachestartを実行します。Apache Webサーバーの構成詳細(ポート番号など)は、useractiondataオプションを使用して指定します。ターゲットが高速ホーム・プロビジョニング・クライアントである場合は、sudo資格証明を指定する必要はありません。

同様に、高速ホーム・プロビジョニングを使用して他のユーザー・アクションを作成し、ソフトウェア・ホームのインストールと構成を自動化することもできます。