OPatchAutoは、インストールの一部としてOPatchユーティリティとともに自動的にインストールされます。これには、単一のホストまたは複数のホスト環境でパッチの適用およびロールバックを自動化するために使用できるコマンドが複数用意されています。
OPatchAutoを使用したパッチ適用の詳細は、次のトピックを参照してください。
複数ホスト・トポロジのパッチ適用の場合、パッチのダウンロード後に最初に行う手順の1つとして、そのパッチがゼロ・ダウンタイム(ZDT)パッチ適用に適しているかどうかを識別します。適している場合は、OPatchAutoを使用してパッチを適用する2つの方法のいずれかを使用できます。
ゼロ・ダウンタイム(ZDT)パッチ適用では、アプリケーションが要求に対するサービス提供を継続しながら、ドメイン全体にパッチをロールアウトできるようにするための、プロセスおよびメカニズムが提供されます。
ZDTパッチは、OPatchAutoを使用して適用できます。これは、1度に1つのノードに対して変更をロールアウトし、この変更が完了するまでは、ロード・バランサ(Oracle Traffic Director (OTD)など)によって、残りのノードに着信トラフィックがリダイレクトされるようにします。
パッチがZDTパッチ適用に適しているかどうかを識別するには、パッチのメタデータでパッチのuptimeオプション値を判別する方法をお薦めします。ZDTパッチを識別するには、「ゼロ・ダウンタイム・パッチの識別」を参照してください。
ゼロ・ダウンタイム(ZDT)パッチは、パッチ・メタデータ内のパッチのuptimeオプションの値で識別できます。
PATCH_HOME/etc/config
ディレクトリのpatchdeploy.xml
を開きます。ここでPATCH_HOMEは、パッチが含まれるパッチ・ディレクトリの場所です。次の例に示すように、patch-uptime-option
の値がFMW_ROLLING_ORACLE_HOME
である場合、
<patch-uptime-option>FMW_ROLLING_ORACLE_HOME<patch-uptime-option>
または値がFMW_ROLLING_SESSION
である場合、
<patch-uptime-option>FMW_ROLLING_SESSION<patch-uptime-option>
パッチはZDTパッチ適用に適しています。
パッチのメタデータにFMW_ROLLING_ORACLE_HOME
またはFMW_ROLLING_SESSION
がない場合、パッチがZDTパッチ適用に適していないこと、およびその結果ZDTパッチ・プランとの互換性がないことがわかります。パッチのuptimeオプションの値によって、パッチを適用するための適切なパッチ・プランを選択できます。パッチ・プランの選択の詳細は、「使用可能なパッチ・プランについて」を参照してください。
パッチがZDTパッチ適用に適しているかどうかを識別した後で、パッチ・プランを識別および選択する必要があります。したがって、パッチを適用するために使用可能なパッチ・プランの特性と制限を確認し理解することが重要です。
パッチ・プランは、パッチをデプロイするために実行する手順の順序を説明します。プランを実行するには、コマンドラインで-plan
オプションを使用してプラン名を指定します。詳細は、『Oracle Opatchユーザーズ・ガイドfor Windows and UNIX』のパッチ・プランに関する項を参照してください。
Oracleホームで使用可能なプランを検出するには、opatchauto lsplans
コマンドを使用します。次に、使用可能なプランをリストし説明する、このコマンドの出力例を示します。
cd ORACLE_HOME/OPatch ./opatchauto lsplans Oracle OPatchAuto Version 13.9.1.0.0 Copyright (c) 2016, Oracle Corporation. All rights reserved. OPatchAuto available patch plan information: Product Name: OPatchAuto Core Patch Plan Name: rolling (Default) Description: Process patch targets on a per-home basis and tries to minimize downtime. Patch Plan Name: parallel Description: Process patch targets in parallel and does not attempt to minimize downtime. Product Name: Oracle Fusion Middleware Patch Plan Name: wls-zdt-rollout Description: Performs full WLS ZDT rollout. Patch Plan Name: wls-push-image Description: Performs only image push portion of WLS ZDT rollout.
パッチがZDTパッチであるかどうかを識別(「ゼロ・ダウンタイム・パッチの識別」を参照)した後、プランを選択する場合は、次の情報を考慮します。
パッチがZDTパッチではない場合は、「applyコマンドを使用した複数のホストへの非ZDTパッチの適用」に示すように、parallelパッチ・プランを使用してパッチを適用します。
パッチがZDTパッチである場合は、rolling
およびwls-zdt-rollout
の2つのプランが使用可能です。
パッチがFMW_ROLLING_ORACLE_HOME
パッチである場合は、rollingオプションを使用します。このオプションは、すべてのパッチ適用操作をOPatchAutoが実行する、完全なOPatchAutoアプローチを使用します。Fusion Middlewareにはこの方法をお薦めします。
このアプローチでは、イメージベースおよび非イメージベースの両方のパッチ適用を実行できます。また、このアプローチを使用して、いわゆる構成パッチ適用(またはドメイン上で実行されるパッチ適用操作)を実行することもできます。ただし、この方法には、サーバーが停止した場合にセッションを別のサーバーに移行するような、セッション管理機能がありません。
rolling
プランを使用したZDTパッチの適用の詳細は、「applyコマンドを使用した複数のホストへのZDTパッチの適用」を参照してください。
パッチがFMW_ROLLING_SESSION
パッチである場合は、wls-zdt-rolloutオプションを使用します。このオプションにもOPatchAutoを使用しますが、特定のライフサイクル操作はWLSTまたはWebLogic Server管理コンソールなどのWebLogic Serverコンポーネントに委任されます。これはWebLogic Serverにのみお薦めします。
このアプローチでは、イメージ・ベースのパッチ適用のみがサポートされ、構成パッチ適用はサポートされません。ただし、インスタンス停止時のセッション移行はサポートされます。
このドキュメントには、このオプションを使用したZDTパッチの適用手順は含まれていません。このオプションの詳細は、『Oracle Fusion Middlewareゼロ・ダウンタイム・パッチ適用ワークフローの管理』」のゼロ・ダウンタイム・パッチ適用の概要に関する項を参照してください。
パッチを正常に適用するには、OPatchの最新バージョンの取得、My Oracle Supportからの必要なパッチの取得、および環境のバックアップなど、OPatchAutoの実行に備えて環境を準備するために完了する必要がある前提条件がいくつかあります。
環境の準備の詳細は、次の項を参照してください。
ORACLE_HOME/oracle_common/bin
にあるFMW (Fusion Middleware)コンポーザを開き、トポロジの各要素を1つずつ追加および定義する必要があります。OPatchAutoを実行する前に、OracleホームでOPatchAutoを検索し、最新のバージョンであることを検証してください。最新バージョンのOPatchAutoが使用されている場合、最新バージョンのOPatchが使用されています。
詳細は、以下のトピックを参照してください。
ORACLE_HOME/OPatch
ディレクトリで検索および実行できます。opatchauto version
コマンドを使用します。OPatchAutoユーティリティは、Oracle Fusion Middleware製品をインストールした後、ORACLE_HOME/OPatch
ディレクトリで検索および実行できます。
OPatchAutoを実行するには、このディレクトリのopatchauto
コマンドを実行するだけです。
たとえば、UNIXシステムでOPatchAutoの使用可能なコマンドのリストを表示するには、次のように入力します。
./opatchauto -help
Oracle Fusion Middleware 12c (12.2.1.2)には、OPatchAutoバージョン13.9.1.0.0が含まれます。このバージョンが使用されていることを検証するには、opatchauto version
コマンドを使用します。
一般に、Oracle Universal Installerソフトウェアのバージョンごとに利用可能なOPatchおよびOPatchAutoのバージョンがあります。
OPatchAutoのバージョンを識別するには、次の手順を実行します。
最新バージョンのOPatchAutoが使用されている場合、最新バージョンのOPatchが使用されています。最新のバージョンが使用されていない場合は、パッチ6880880を使用してOPatchをダウンロードできます。インストールに対して指定された最新のダウンロードを常に使用する必要があります。 Oracle Fusion Middleware 12c (12.2.1.2)の場合、バージョンおよびプラットフォームとしてOUI NextGen 13.9.1を選択し、「ダウンロード」をクリックしてOUI NextGen OPatch 13.9.1をダウンロードします。
インストールに対する最新のパッチをMy Oracle Supportで検索してダウンロードできます。
次の場所のMy Oracle Supportに登録してログインすることによって、使用しているOracle Fusion Middleware製品またはコンポーネントで利用可能な最新のパッチを確認できます。
http://support.oracle.com
My Oracle Supportにログインした後、Oracleソフトウェア・インストールに最も重要なパッチを迅速に検索できる様々なツールを提供する「パッチと更新版」タブをクリックします。
注意:
各パッチに含まれているREADMEファイルを確認することは重要です。READMEファイルには、パッチ適用の要件および手順に関する重要な情報が含まれています。
このガイドの例では、OPatchAutoを実行するためのサンプル・コマンドを示します。これらのコマンド例では、主要なディレクトリの参照に変数を使用しています。
このガイドでは次のディレクトリ変数を使用しています。
ORACLE_HOME、Oracleホーム・ディレクトリの場所の参照に使用します。
PATCH_HOME、Oracleホームに適用するパッチが含まれるパッチ・ディレクトリの場所の参照に使用します。
DOMAIN_HOME、ドメイン・ホーム・ディレクトリの場所の参照に使用します
複数のホストにパッチを適用するには、トポロジの要素を定義するトポロジ・ファイルを作成する必要があります。これを行うには、ORACLE_HOME/oracle_common/bin
にあるFMW (Fusion Middleware)コンポーザを開き、トポロジの各要素を1つずつ追加および定義する必要があります。
トポロジをコンポーザで作成した後、これをXMLまたはJSONファイルに保存してOPatchAutoに提供すると、パッチを適用できます。
コンポーザのユーザー・インタフェースの詳細は、「FMWコンポーザを使用したトポロジ・ファイルの作成例」を参照してください。この例を確認して、トポロジ・ファイルを作成するための基本的な手順を理解する必要があります。
OPatchAutoを正常に実行するには、各ホストのSSH資格証明などの、必要なパスワード資格証明が含まれるウォレットをコマンドラインで指定する必要があります。
ウォレットを作成するには、次のツールの1つを使用します。
ORACLE_HOME/OPatch/auto/core/bin
ディレクトリのpatchingWallet.sh
ツールを使用して、ウォレット・ファイルを作成できます。ORACLE_HOME/oracle_common/bin
のFMWコンポーザを使用して、トポロジ・ファイルの作成時にウォレットを作成することもできます。ORACLE_HOME/OPatch/auto/core/bin
ディレクトリのpatchingWallet.sh
ツールを使用して、ウォレット・ファイルを作成できます。
ウォレットを作成する場合、次のことが必要です。
SSH資格証明をホストごとに“user:hostname:ssh”
の形式を使用して定義する必要があります
WebLogic管理者資格証明を“adminuser:adminhost:wls”
の形式を使用して定義する必要があります。ゼロ・ダウンタイム(ZDT)パッチの適用にwls-zdt-rollout
オプションを使用している場合は、wls
資格証明が必要です。
複数ホストのパッチ適用の場合は、FMWコンポーザを使用してトポロジ・ファイルを作成する必要があります。これには、次の資格証明が追加で必要になります。
ノード・マネージャ資格証明を“adminuser:domain_name/NM”
の形式を使用して定義する必要があります
ドメイン管理者資格証明を“adminuser:domain_name/ADMIN”
の形式を使用して定義する必要があります
domain_name/NM
およびdomain_name/ADMIN
はそれぞれ、FMWコンポーザでノード・マネージャおよび管理サーバーに使用されるデフォルトのウォレット別名です。別の値を使用することもできます。ただし、コンポーザを使用してトポロジ・ファイルを作成する場合は、コンポーザの資格証明フィールドで指定した資格証明値がウォレットの別名と一致していることを確認する必要があります。
次に、ウォレットを作成して資格証明をウォレットに追加する方法の例を示します。
./patchingWallet.sh -walletDir wallet_location –create "user:adminhost:ssh" "user:host1:ssh" "user:host2:ssh" "adminuser:domain_name/ADMIN" "adminuser:domain_name/NM"
次に例を示します。
./patchingWallet.sh -walletDir /tmp/samplewallet –create "oracle:adminhost:ssh" "oracle:host1:ssh" "oracle:host2:ssh" "weblogic:zdtDomain/ADMIN" "weblogic:zdtDomain/NM"
各資格証明のパスワードの入力と確認を求められます。
Enter Password for oracle:adminhost:ssh: Confirm Password for oracle:adminhost:ssh: Enter Password for oracle:host1:ssh: Confirm Password for oracle:host1:ssh: Enter Password for oracle:host2:ssh: Confirm Password for oracle:host2:ssh: Enter Password for weblogic:zdtDomain/ADMIN: Confirm Password for weblogic:zdtDomain/ADMIN: Enter Password for weblogic:zdtDomain/NM: Confirm Password for weblogic:zdtDomain/NM:
複数ホスト・トポロジのパッチ適用の場合は、ORACLE_HOME/oracle_common/bin
のFMWコンポーザを使用して、トポロジ・ファイルの作成時にウォレットを作成することもできます。
このツールには、既存のウォレットの割当や編集を行ったり、ウォレットを最初から作成したりする、グラフィカル・ユーザー・インタフェースが用意されています。「ウォレット・ファイルの割当または作成」では、トポロジのウォレットの割当または作成方法の例を示します。
パッチの適用中に、OPatchAutoが適切にシステムを停止および起動できるようにするには、ノード・マネージャが起動および停止操作をサポートするように構成する必要があります。
これを行うには、nodemanager.properties
ファイルのQuitEnabled
およびCrashRecoveryEnabled
プロパティを次のように設定します。
QuitEnabled=true CrashRecoveryEnabled=false
CrashRecoveryEnabled
のデフォルトの値はfalse
です。
デフォルトで、このファイルはノード・マネージャのホーム・ディレクトリに作成され、ノード・マネージャのホームは通常DOMAIN_HOME/nodemanager
です。
注意:
ZDTパッチの適用にrolling
プランを使用している場合は、QuitEnabled=true
のみが必要です。これは、『Oracle Fusion Middlewareゼロ・ダウンタイム・パッチ適用ワークフローの管理』のゼロ・ダウンタイム・パッチ適用の概要に関する項で説明しているように、wls-zdt-rollout
プランを使用している場合は必要ありません。
wls-zdt-rollout
プランを使用している場合は、CrashRecoveryEnabled
をtrue
に設定する必要があります。
これらのプロパティを更新した後で、ノード・マネージャを再起動します。
nodemanager.properties
ファイルの詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverノード・マネージャの管理』のnodemanager.propertiesの検討に関する項を参照してください。
Windowsマシンでのパッチ適用の場合、Cygwin SSHサーバーがインストールされて設定されていることを確認します。OPatchAutoは現時点ではその他のSSHサーバーをサポートしません。
詳細は、『Oracle Opatchユーザーズ・ガイドfor Windows and UNIX』のSSHを使用したリモート・ホストの実行に関する項を参照してください。
パッチ操作を実行する前に、Oracleホームをバックアップすることを強くお薦めします。Oracleホームは、任意の方法でバックアップできます。
Oracleホームの圧縮には、zip
、cp -r
、tar
、cpio
などの任意の方法を使用できます。
opatch lsinventory -detail
コマンドの実行時にOracleホームが表示されない場合は、セントラル・インベントリにOracleホームがないか、セントラル・インベントリ自体が失われたか破損している可能性があります。
opatch lsinventory -detail
コマンドの実行時にOracleホームがリストされても、Oracleホーム内の製品およびコンポーネントがリストされない場合は、Oracleホーム内のインベントリ(ローカル・インベントリ)が失われたか破損している可能性があります。
ローカル・インベントリがなんらかの理由で破損または消失した場合は、Oracleホーム全体をリストアする必要があります(バックアップされている場合)。バックアップが存在しない場合は、ソフトウェアを再インストールする必要があります。
OPatchAutoを使用して、単一ホスト環境または複数ホスト環境にパッチ適用またはパッチのロールバックを行うために必要な手順を自動化できます。
次の各トピックでは、OPatchAutoを使用したOracle Fusion Middlewareへのパッチの適用方法について説明します。
opatchauto apply —analyze
コマンドを使用して前提条件を検証し、opatchauto apply
を使用して単一のホストにパッチを適用します。必要な場合、opatchauto rollback
を使用してパッチをロールバックできます。opatchauto apply —analyze
コマンドを使用して前提条件を検証し、opatchauto apply
を使用して複数のホストにパッチを適用します。必要な場合、opatchauto rollback
を使用してパッチをロールバックできます。opatch lsinventory
コマンドを使用します。listDomainPatchInventory.sh
コマンドを使用します。このコマンドをOPatch lsinventory
コマンドとともに使用して、パッチが正常に適用されたことを検証します。OPatchAutoを使用したパッチ適用には、パッチを正常に適用するために実行する必要がある一連の手順が含まれます。
次の表に、OPatchAutoを使用した既存のFusion Middleware環境へのパッチ適用に必要な通常手順を示します。
表2-1 OPatchAutoでのOPatchの使用
タスク | 説明 | ドキュメント |
---|---|---|
インストールに必要なパッチを取得します。 |
ログインし、特定のインストールに必要なパッチを検索してダウンロードします。 OPatchAutoが特定のパッチ・タイプをサポートしているかどうかについて気にする必要はありません。OPatchAutoが特定のパッチ・タイプをサポートしていない場合、ツールを実行するときに通知されます。 |
|
パッチのREADME.txtファイルを確認します。 |
各パッチ・アーカイブには、重要な情報およびパッチの適用前に従う必要がある手順が記載されているREADMEファイルが含まれています。READMEファイルには、パッチ固有の手順やその他の情報が記載されているため、このファイルを確認することは重要です。 |
パッチ・アーカイブにパッケージされているREADME.txtファイル |
複数ホスト環境の場合、パッチがゼロ・ダウンタイム(ZDT)パッチであるかどうかを識別します。 |
パッチがZDTパッチであるかどうかを識別するために |
|
複数ホスト環境の場合、FMWコンポーザを使用してトポロジ(構成)を定義します。 |
複数のホストにパッチを適用するには、FMWコンポーザを使用して、XMLまたはJSONファイルのトポロジ・ファイルを作成する必要があります。このファイルには、構成に関する情報が含まれます。 トポロジ・ファイルにより、OPatchAutoが環境から情報を取得し、パッチ適用を自動化できるようになります。 |
|
パッチ前提条件を確認します。 |
OPatchAutoの |
単一ホストの環境にパッチを適用している場合、「単一のホストでパッチを適用するための前提条件の検証」を参照してください。 複数ホストの環境にパッチを適用している場合、「複数のホストでパッチを適用するための前提条件の検証」を参照してください。 |
パッチを適用します。 |
パッチの適用が必要なOracleホームを確定して、READMEファイルを読んだ後に、 |
単一ホストの環境にパッチを適用している場合、「applyコマンドを使用した単一のホストへのパッチ適用」を参照してください。 複数ホスト環境のパッチ適用の場合、パッチがZDTパッチ適用に適しているかどうかに応じて、次のいずれかを1つを参照してください。
|
パッチがOracleホームに正しく適用されたことを検証します。 |
OPatch |
|
パッチの適用後、ソフトウェアが正しく実行されていることを検証します。 |
パッチの適用が完了し、サーバーの再起動が完了したら、製品ソフトウェアで問題が解決しているかどうかを検証する必要があります。 |
|
パッチ適用のトラブルシューティングを行います。 |
パッチ適用に問題がある場合、最初のトラブルシューティング・タスクはOPatchAutoセッションのログ・ファイルを確認することです。 |
|
パッチ適用をロールバックします。 |
なんらかの原因で満足のいく結果が得られなかった場合は、 追加の支援が必要な場合は、My Oracle Support (以前のOracleMetaLink)を参照してください。 |
単一ホストの環境の場合、「単一のホストに適用したパッチのロールバック」を参照してください。 複数ホストの環境の場合、「複数のホストに適用したパッチのロールバック」を参照してください。 |
インストールに必要なパッチを取得した後、opatchauto apply —analyze
コマンドを使用して前提条件を検証し、opatchauto apply
を使用して単一のホストにパッチを適用します。必要な場合、opatchauto rollback
を使用してパッチをロールバックできます。
OPatchAutoを使用した単一ホスト環境へのパッチ適用には、次のタスクが含まれます。
apply
コマンドに-analyze
引数を使用します。単一ホストへのパッチ適用の場合、—instance
引数を使用してドメインの場所も指定する必要があります。opatchauto apply
コマンドを使用します。これは、opatchauto apply -analyze
と同じコマンドですが、パッチを適用する準備が整っているときに-analyze
引数を削除する点が異なります。opatchauto rollback
コマンドを使用してパッチ適用をロールバックします。これは、opatchauto rollback –analyze
と同じコマンドですが、パッチをロールバックする準備が整っているときに-analyze
引数を削除する点が異なります。パッチを単一のホストに適用できることを検証するには、OPatchAutoのapply
コマンドに-analyze
引数を使用します。単一ホストへのパッチ適用の場合、—instance
引数を使用してドメインの場所も指定する必要があります。
次のコマンドは、単一のホストでパッチを適用するための前提条件を検証する方法を示しています。
opatchauto apply PATCH_HOME -analyze -instance DOMAIN_HOME -wallet wallet_location -walletPassword password_ifneeded -wls-admin-host weblogic_adminserver_host:port
次に例を示します。
opatchauto apply /home/oracle/patches/15941858 -analyze -instance /home/oracle/config/domains/exampledomain -wallet /tmp/samplewallet -wls-admin-host examplehost.exampledomain.com:7001
1つのセッションで複数のパッチを適用するには、–phBaseDir
オプションを使用します。
このコマンドは、パッチによって実行される処理を分析および表示しますが、実際にパッチを適用することはありません。これにより、パッチの前提条件が満たされていることを検証できます。
前提条件の確認が失敗した場合は、出力およびログ・ファイルを参照して、作業を続行する前に問題を修正してください。たとえば、一般的な失敗としてはパッチの競合の検出があります。パッチの競合が発生した場合は、Oracleサポートからマージ・パッチを取得する方法についてログ・ファイル内の指示に従ってください。
パッチを単一のホストに適用するには、opatchauto apply
コマンドを使用します。これは、opatchauto apply -analyze
と同じコマンドですが、パッチを適用する準備が整っているときに-analyze
引数を削除する点が異なります。
次の例では、単一のホスト上のOracle Fusion Middleware環境にパッチを適用するためにopatchauto apply
コマンドを使用する方法を示します。
この例では、次の内容が想定されています。
ダウンロードしたパッチは、My Oracle Supportでのパッチ番号の名前が付けられたディレクトリに保存されます。この場合、パッチ番号は15941858です。
ORACLE_HOME/OPatch
ディレクトリからOPatchAutoコマンドを実行し、コマンドへの引数としてパッチの場所(PATCH_HOME)を含めます。
注意:
opatchauto apply
コマンドを実行する場合、コマンド出力内のセッションID (EKZRなど)をメモしてください。これにより、パッチを後でロールバックすることを決定した場合、ロールバック・プロセスが容易になります。
opatchauto apply PATCH_HOME -instance DOMAIN_HOME -wallet wallet_location -walletPassword password_ifneeded -wls-admin-host weblogic_adminserver_host:port
次に例を示します。
opatchauto apply /home/oracle/patches/15941858 -instance /home/oracle/config/domains/exampledomain -wallet /tmp/samplewallet -walletPassword password -wls-admin-host examplehost.exampledomain.com:7001
パッチを適用したときに結果が不十分である場合、opatchauto rollback
コマンドを使用してパッチ適用をロールバックします。これは、opatchauto rollback –analyze
と同じコマンドですが、パッチをロールバックする準備が整っているときに-analyze
引数を削除する点が異なります。
次の例では、単一のホスト上のOracle Fusion Middleware環境に適用されたパッチをロールバックするためにopatchauto rollback
コマンドを使用する方法を示します。
ロールバックを実行するには、パッチを適用したときと同じプロセスに従います。つまり、最初にopatchauto rollback
コマンドのテスト実行を行います。
注意:
パッチを適用するときに使用したセッションID (EKZRなど)を指定すると、コマンドを簡素化できます。これにより、OPatchAutoで必要なコマンドライン・パラメータをすべて導出できるようになります。
opatchauto rollback –session session_id -analyze –wallet wallet_location -walletPassword password_ifneeded -wls-admin-host weblogic_adminserver_host:port
次に例を示します。
opatchauto rollback –session EKZR -analyze –wallet /tmp/samplewallet -walletPassword password -wls-admin-host examplehost.exampledomain.com:7001
テストを正常に実行できたら、パッチのロールバックを実際に実行します。
opatchauto rollback –session session_id –wallet wallet_location -walletPassword password_ifneeded -wls-admin-host weblogic_adminserver_host:port
次に例を示します。
opatchauto rollback –session EKZR –wallet /tmp/samplewallet -walletPassword password -wls-admin-host examplehost.exampledomain.com:7001
また、次のようにして、OPatchAutoを未解凍のパッチのコピーにポイントすることで、パッチをロールバックすることもできます。
opatchauto rollback unzipped_patch_location -instance DOMAIN_HOME –wallet wallet_location -walletPassword password_ifneeded -wls-admin-host weblogic_adminserver_host:port
必要なパッチを取得した後、opatchauto apply —analyze
コマンドを使用して前提条件を検証し、opatchauto apply
を使用して複数のホストにパッチを適用します。必要な場合、opatchauto rollback
を使用してパッチをロールバックできます。
注意:
複数のホストにパッチを適用する前に、FMWコンポーザを使用してトポロジ・ファイルが作成されていることを確認してください。このファイル(XMLまたはJSONファイルのいずれか)は、OPatchAutoを実行するときにコマンドラインで-topology
オプションを使用して指定する必要があります。OPatchAutoは、このファイルを使用して、パッチを適用する環境に関する情報を取得します。トポロジ・ファイルの作成方法の例は、「FMWコンポーザを使用したトポロジ・ファイルの作成例」を参照してください。
OPatchAutoを使用した複数ホスト環境へのパッチ適用には、次のタスクが含まれます。
opatchauto apply —analyze
コマンドを使用して前提条件を確認します。opatchauto apply
コマンドをparallel
パッチ・プランとともに使用します。これは、opatchauto apply -analyze
と同じコマンドですが、パッチを適用する準備が整っているときに-analyze
引数を削除する点が異なります。opatchauto apply
コマンドをrolling
パッチ・プランとともに使用します。これは、opatchauto apply -analyze
と同じコマンドですが、パッチを適用する準備が整っているときに-analyze
引数を削除する点が異なります。opatchauto rollback
コマンドを使用してパッチ適用をロールバックします。これは、opatchauto rollback –analyze
と同じコマンドですが、パッチをロールバックする準備が整っているときに-analyze
引数を削除する点が異なります。パッチを正常に適用するには、パッチを適用する前に、opatchauto apply —analyze
コマンドを使用して前提条件を確認します。
複数のホスト上の特定のOracleホーム(ORACLE_HOME)およびドメインの場所(DOMAIN_HOME)にパッチを適用できることを検証するには、OPatchAuto apply
コマンドに—analyze
引数を使用します。
opatchauto apply PATCH_HOME -analyze -plan patch_plan -topology path_to_topology_file -wallet wallet_location -walletPassword password_ifneeded
次に例を示します。
opatchauto apply /home/oracle/patches/15941858 -analyze -plan rolling -topology /home/oracle/topologies/topology-1.0.xml -wallet /tmp/samplewallet -walletPassword password
1つのセッションで複数のパッチを適用するには、–phBaseDir
オプションを使用します。
rolling
は、コマンドラインでプランが指定されない場合のデフォルトのパッチ・プランです。使用可能なプランの識別の詳細は、「使用可能なパッチ・プランについて」を参照してください。
このコマンドは、パッチによって実行される処理を表示しますが、実際にパッチを適用することはありません。これにより、パッチの前提条件が満たされていることを検証できます。
前提条件の確認が失敗した場合は、コマンドの出力およびログ・ファイルを参照して、作業を続行する前に問題を修正してください。たとえば、一般的な失敗としてはパッチの競合の検出があります。パッチの競合が発生した場合は、Oracleサポートからマージ・パッチを取得する方法についてログ・ファイル内の指示に従ってください。
非ZDTパッチを適用するには、opatchauto apply
コマンドをparallel
パッチ・プランとともに使用します。これは、opatchauto apply -analyze
と同じコマンドですが、パッチを適用する準備が整っているときに-analyze
引数を削除する点が異なります。
次の例では、複数のホスト上のOracle Fusion Middleware環境に非ZDTパッチを適用するためにopatchauto apply
コマンドを使用する方法を示します。
この例では、次の内容が想定されています。
ダウンロードしたパッチは、My Oracle Supportでのパッチ番号の名前が付けられたディレクトリに保存されます。この場合、パッチ番号は15941858です。
ORACLE_HOME/OPatch
ディレクトリからOPatchAutoコマンドを実行し、コマンドへの引数としてパッチの場所(PATCH_HOME)を含めます。
注意:
opatchauto apply
コマンドを実行する場合、コマンド出力内のセッションID (EKZRなど)をメモしてください。これにより、パッチを後でロールバックすることを決定した場合、ロールバック・プロセスが容易になります。
opatchauto apply PATCH_HOME -plan parallel -topology path_to_topology_file -wallet wallet_location -walletPassword password_ifneeded
次に例を示します。
opatchauto apply /home/oracle/patches/15941858 -plan parallel -topology /home/oracle/topologies/topology-1.0.xml -wallet /tmp/samplewallet -walletPassword password
ゼロ・ダウンタイム(ZDT)パッチを適用するには、opatchauto apply
コマンドをrolling
パッチ・プランとともに使用します。これは、opatchauto apply -analyze
と同じコマンドですが、パッチを適用する準備が整っているときに-analyze
引数を削除する点が異なります。
次の例では、複数のホスト上のOracle Fusion Middleware環境にZDTパッチを適用するためにopatchauto apply
コマンドを使用する方法を示します。
この例では、次の内容が想定されています。
ダウンロードしたパッチは、My Oracle Supportでのパッチ番号の名前が付けられたディレクトリに保存されます。この場合、パッチ番号は15941858です。
ORACLE_HOME/OPatch
ディレクトリからOPatchAutoコマンドを実行し、コマンドへの引数としてパッチの場所(PATCH_HOME)を含めます。
注意:
opatchauto apply
コマンドを実行する場合、コマンド出力内のセッションID (EKZRなど)をメモしてください。これにより、パッチを後でロールバックすることを決定した場合、ロールバック・プロセスが容易になります。
rolling
は、コマンドラインでプランが指定されない場合のデフォルトのパッチ・プランです。
opatchauto apply PATCH_HOME -plan rolling -topology path_to_topology_file -wallet wallet_location -walletPassword password_ifneeded
次に例を示します。
opatchauto apply /home/oracle/patches/15941858 -plan rolling -topology /home/oracle/topologies/topology-1.0.xml -wallet /tmp/samplewallet -walletPassword password
パッチを適用したときに結果が不十分である場合、opatchauto rollback
コマンドを使用してパッチ適用をロールバックします。これは、opatchauto rollback –analyze
と同じコマンドですが、パッチをロールバックする準備が整っているときに-analyze
引数を削除する点が異なります。
次の例では、複数のホスト上のOracle Fusion Middleware環境に適用されたパッチをロールバックするためにopatchauto rollback
コマンドを使用する方法を示します。
ロールバックを実行するには、パッチを適用したときと同じプロセスに従います。つまり、最初にopatchauto rollback
コマンドのテスト実行を行います。
注意:
パッチを適用するときに使用したセッションID (EKZRなど)を指定すると、コマンドを簡素化できます。これにより、OPatchAutoで必要なコマンドライン・パラメータをすべて導出できるようになります。
opatchauto rollback –session session_id -analyze -walletPassword password_ifneeded
次に例を示します。
opatchauto rollback –session EKZR -analyze -walletPassword password
テストを正常に実行できたら、パッチのロールバックを実際に実行します。
opatchauto rollback –session session_id -walletPassword password_ifneeded
次に例を示します。
opatchauto rollback –session EKZR -walletPassword password
また、次のようにして、OPatchAutoを未解凍のパッチのコピーにポイントすることで、パッチをロールバックすることもできます。
opatchauto rollback unzipped_patch_location -topology path_to_topology_file –wallet wallet_location -walletPassword password_ifneeded
または、次の例に示すように、パッチ・ディレクトリの場所を指定せずに、-id
オプションを使用してパッチIDを指定することができます。
opatchauto rollback -id 12345 -wallet /tmp/samplewallet -topology /home/oracle/topologies/topology-1.0.json
パッチの適用方法およびパッチ適用に関する問題のトラブルシューティング方法を理解するには、OPatchAutoセッションのログ・ファイルを確認する必要があります。
ログ・ファイルの場所は、通常、次のディレクトリまたはこの場所のサブディレクトリに保存されます。
ORACLE_HOME/cfgtoollogs/opatchauto/
各ログ・ファイルのファイル名は、実行された日時を示します。次に例を示します。
opatchauto2015-09-28_11-47-13AM.log
ログ・ファイルは、opatchauto
コマンドの出力を表示することによっても検索できます。ログ・ファイルの名前および場所は、コマンドの出力に含まれます。次に例を示します。
Session log file is /home/Oracle/products/fmw12c/cfgtoollogs/opatchauto/opatchauto2015-09-28_11-47-13AM.log
Oracleホームに適用されたパッチを検証するには、またはOracleホームに関する追加情報を確認するには、opatch lsinventory
コマンドを使用します。
次の例に、特定の個別パッチが適用されていることを示す、lsinventory
コマンドのサンプル出力を示します。
例2-1 Oracleホーム情報を取得するためのopatch lsinventoryコマンドの実行
> opatch lsinventory Oracle Interim Patch Installer version 13.9.1.0.0 Copyright (c) 2016, Oracle Corporation. All rights reserved. Oracle Home : /opt/Oracle/products/fmw12c Central Inventory : /opt/Oracle/oraInventory from : /var/opt/Oracle/oraInst.loc OPatch version : 13.9.1.0.0 OUI version : 13.9.1.0.0 Log file location : /opt/Oracle/products/fmw12c/cfgtoollogs/opatch/opatch2013-06-10_12-32-37PM_1.log OPatch detects the Middleware Home as "/opt/Oracle/products/fmw12c" Lsinventory Output file location : /opt/Oracle/products/fmw12c/cfgtoollogs/opatch/lsinv/lsinventory2013-06-10_12-32-37PM.txt -------------------------------------------------------------------------------- Local Machine Information:: Hostname: ARU platform id: 226 ARU platform description:: Linux x86-64 Interim patches (1) : Patch 15941858 : applied on Mon Jun 10 12:39:07 PDT 2013 Unique Patch ID: 150220 Patch description: "TEST PATCH FOR WLS 12.2.1.2.0 - JAVA CLASSES PATCH" Created on 17 May 2013, 11:54:20 hrs PST8PDT Bugs fixed: 783169, 15941850 -------------------------------------------------------------------------------- OPatch succeeded.
ドメインに適用されたパッチを検証するには、listDomainPatchInventory.sh
コマンドを使用します。このコマンドをOPatch lsinventory
コマンドとともに使用して、パッチが正常に適用されたことを検証します。
次に例を示します。
cd ORACLE_HOME/OPatch/bin ./listDomainPatchInventory.sh DOMAIN_HOME
このコマンドは、特定の個別パッチが適用されていることを示します。
ドメイン・インベントリ内と各Oracleホームのインベントリ内の両方で同じパッチのリストが表示されます。そうでない場合は、パッチを再適用してください。パッチを再適用すると、欠落している手順のみが実行されます。すでに実行されているタスクはスキップされます。
複数ホストのパッチ適用の場合、トポロジの要素がトポロジ・ファイルに定義されていることが前提条件になります。FMWコンポーザを使用してこのファイルを作成し、環境に関する情報をOPatchAutoに提供することが必要になります。このファイルにより、OPatchAutoは手動での介入なしにパッチ適用手順を自動的に実行できます。
このガイドでは例を使用して、複数ホスト・トポロジのトポロジ・ファイルを作成するための一般的な手順を示します。特に、この例では、次のダイアグラムに示すサンプル・トポロジのトポロジ・ファイルを作成する方法を段階的に説明します。このトポロジは、2台の管理対象サーバーを含む1つのクラスタと管理サーバーが1台の標準的なWebLogic Serverドメインを示しています。
次の手順では、この例のトポロジのトポロジ・ファイルを作成する方法を示します。
ORACLE_HOME/oracle_common/bin
ディレクトリからFMWコンポーザを開始します。