3 既存のWebLogic Serverインストールへのパッチ適用

既存のWebLogic Serverインストールに、ZDTパッチ適用を使用して、または手動でのサーバーのローリング更新を使用して、パッチを適用することができます。

ノート:

Oracle WebLogic Server 10.3.6からアップグレードする場合は、Oracle WebLogic Server 10.3.6で使用されていたBEA Smart Update (BSU)パッチ適用テクノロジのかわりにOracle OPatchを使用します。Oracle WebLogic Server 10.3.6環境用に作成したインストールおよびパッチ適用の自動化を、Oracle WebLogic Server 12.2.1.4で使用される新しいインストールおよびパッチ適用テクノロジに適応するように変更する必要があります。

ZDTパッチ適用を使用するのは、ドメインに3つ以上のノードが含まれ、パッチを適用するすべてのサーバーがクラスタに割り当てられている場合のみです。

サービスのローリング更新を手動で実行すると、顧客に対するサービスが中断することになります。この方法を使用してクラスタの一部でない個別のサーバーにパッチを適用するか、またはドメインに含まれるノードが3つ未満の場合はこの方法を使用します。「ダウンタイムなしのパッチ適用の使用」を参照してください。

WebLogic Serverインスタンスにすでに適用されているパッチのリストを確認することもできます。「適用済パッチのリストの取得」を参照してください。

ダウンタイムなしのパッチ適用の使用

WebLogic Server 12.2.1現在、ZDTパッチ適用を使用して、WebLogic Serverインストールに対する個々のパッチ、バンドル・パッチまたはパッチ・セット更新を適用する処理を自動化できます。

ZDTパッチ適用では、WLSTまたはWebLogic Server管理コンソールを使用して次のことができます:

  • 2番目のOracleホームの作成とパッチ適用。

  • パッチが適用されたOracleホームをノードのすべてに配布。

  • パッチ適用ワークフローの構成による、ドメイン内の必要なサーバーの更新。

パッチ適用ワークフローを使用して、以前にZDTパッチ適用によってWebLogic Serverインストールに適用したパッチを元に戻します。

ZDTパッチ適用の詳細は、「ダウンタイムなしのパッチ適用の概要」を参照してください。

ノート:

OPatchAutoFMW (OPatch/auto/fmwディレクトリにインストール済)は非推奨となり、OPatch 13.9.4.2.2以降に更新すると自動的に削除されます。

適用済パッチのリストの取得

Oracle WebLogic Serverでは、WebLogic Serverインスタンスに適用されているパッチのリストを表示する機能を提供しています。パッチ・リストは次のソースのいずれかから取得できます。

前述のソースのいずれかを使用する場合、適用済パッチごとに次の詳細が示されます。

  • 関連するOracle Bug#

  • パッチ番号

  • パッチが適用された日

  • 簡単な説明

weblogic.log.DisplayPatchInfoシステム・プロパティの使用

weblogic.log.DisplayPatchInfoシステム・プロパティには、WebLogic Serverインスタンスに適用されているすべてのパッチのログが含まれており、次のいずれかの方法で参照することができます。

  • サーバー・インスタンスを起動する-Dweblogic.log.DisplayPatchInfo=true JVMオプションをコマンド・ラインで指定します。サーバーが起動されると、stdoutの起動メッセージに適用済パッチのリストが含まれ、サーバー・ログ・ファイルにも保持されます。起動時のログ出力の負荷を最小限にするためにこのオプションのデフォルト値はfalseです。

  • weblogic.versionユーティリティを実行します。このユーティリティは-Dweblogic.log.DisplayPatchInfo=true起動オプションが使用されているかどうかにかかわらず、パッチ・リストを取得でき、WebLogic Serverインスタンスが起動されているまたは実行されている必要がありません。

次にweblogic.versionユーティリティを実行する例を示します。この例では、パッチ・リストが表示される特定のサーバー・インスタンスに対応するweblogic.jarファイルのクラスパスを指定します。

bash-4.1$ java -classpath wlserver/server/lib/weblogic.jar weblogic.version

WebLogic Server 12.2.1.1.0 Thu Jun  2 16:21:58 PDT 2016 1784838
24907328;20845986;Mon Mar 13 14:40:42 PDT 2017;WLS PATCH SET UPDATE 12.2.1.1.170117
19795066;19149348;Mon Mar 13 14:33:28 PDT 2017;One-off
18905788;18668039;Mon Mar 13 14:32:57 PDT 2017;One-off
19632480;19278519;Mon Mar 13 14:32:26 PDT 2017;One-off
19002423;18804275;Mon Mar 13 14:31:50 PDT 2017;One-off
19030178;19234068;Mon Mar 13 14:31:22 PDT 2017;One-off
19154304;19278518;Mon Mar 13 14:30:54 PDT 2017;One-off
 
Use 'weblogic.version -verbose' to get subsystem information
 
Use 'weblogic.utils.Versions' to get version information for all modules

ServerRuntimeMBean.PatchList属性の使用

WebLogic Serverインスタンスに適用されたパッチのリストは、ServerRuntimeMBean.PatchList属性でも参照できます。この属性の値は、weblogic.log.DisplayPatchInfoシステム・プロパティには依存しません。次に示すいずれかのクライアントを使用すると、ServerRuntimeMBean.PatchList属性にアクセスできます。

ノート:

ServerRuntimeMBeanからパッチ・リストにアクセスするには、Adminロールにマッピングできる認証済ユーザーである必要があります。

パッチ情報の取得にどのクライアントを使用する場合でも、各パッチ・エントリは次の形式になります:

<BugNumber>;<PatchID>;<DateApplied>;<Description>

例3-1 WLSTの使用

次の例は、WLSTを使用してサーバー・インスタンスに接続し、適用されたパッチのリストを取得する方法を示しています。

wls:/offline> connect('username','password','t3://localhost:7001')
Connecting to t3://localhost:7001 with userid weblogic ...
Successfully connected to Admin Server "myserver" that belongs to domain "mydomain".
 
Warning: An insecure protocol was used to connect to the server.
To ensure on-the-wire security, the SSL port or Admin port should be used instead.
 
wls:/mydomain/serverConfig/> serverRuntime()
Location changed to serverRuntime tree.
 This is a read-only tree with ServerRuntimeMBean as the root.
For more help, use help('serverRuntime').
 
wls:/mydomain/serverRuntime/> print cmo.getPatchList()
array(java.lang.String,['24907328;20845986;Mon Mar 13 14:40:42 PDT 2017;WLS PATCH SET UPDATE 12.2.1.1.170117', '19795066;19149348;Mon Mar 13 14:33:28 PDT 2017;One-off', '18905788;18668039;Mon Mar 13 14:32:57 PDT 2017;One-off', '19632480;19278519;Mon Mar 13 14:32:26 PDT 2017;One-off', '19002423;18804275;Mon Mar 13 14:31:50 PDT 2017;One-off', '19030178;19234068;Mon Mar 13 14:31:22 PDT 2017;One-off', '19154304;19278518;Mon Mar 13 14:30:54 PDT 2017;One-off'])
wls:/mydomain/serverRuntime/> 

例3-2 REST APIの使用

次の例は、REST APIを使用してパッチ・リストを返す例を示しています。

Request:
http://localhost:7001/management/weblogic/latest/serverRuntime?links=none&fields=name,patchList

Response: {
    "patchList": [
        "24907328;20845986;Mon Mar 13 14:40:42 PDT 2017;WLS PATCH SET UPDATE 12.2.1.1.170117",
        "19795066;19149348;Mon Mar 13 14:33:28 PDT 2017;One-off",
        "18905788;18668039;Mon Mar 13 14:32:57 PDT 2017;One-off",
        "19632480;19278519;Mon Mar 13 14:32:26 PDT 2017;One-off",
        "19002423;18804275;Mon Mar 13 14:31:50 PDT 2017;One-off",
        "19030178;19234068;Mon Mar 13 14:31:22 PDT 2017;One-off",
        "19154304;19278518;Mon Mar 13 14:30:54 PDT 2017;One-off"
    ],
    "name": "myserver"
}

例3-3 WebLogic Server管理コンソールの使用

WebLogic Server管理コンソールを使用するには:

  1. 管理コンソールの左側のペインで、「環境」を展開し、「サーバー」を選択します。

  2. 適用済パッチ・リストを表示するサーバーの名前を選択します。

  3. 「構成」「一般」「モニタリング」を選択します。

適用済パッチのリストが、「パッチ・リスト」とラベル付けされたフィールドの下に表示されます。

例3-4 JMXクライアントの使用

JMXアプリケーションを使用すると、次の例に示すようにgetPatchListメソッドを起動してWebLogic Serverインスタンスの適用済パッチ・リストにアクセスできます。

/**
 * @include-api for-public-api
 * Returns array of informational strings for installed patches. Each info string
 * is of the form: <bug-id>;<patch-id>;<date-applied>;<patch-description>
 * For example:
 * 24907328;20845986;Mon Mar 13 14:40:42 PDT 2017;WLS PATCH SET UPDATE 12.2.1.1.170117
 *
 * @return Array of informational strings for installed patches at a server.
 * @roleAllowed Monitor
 * @unharvestable
 */
public String[] getPatchList();