A Enterprise Managerコマンドライン・インタフェースの使用
この付録では、Enterprise Managerコマンドライン・インタフェース(EM CLI)の使用によって、パッチ計画を使用するパッチのデプロイ、プロシージャのプロビジョニング、および一部のソフトウェア・ライブラリ・タスクの実行を行う方法について説明します。
この付録の具体的な内容は次のとおりです。
注意:
様々なデプロイメント・プロシージャを実行するためのEM CLIの実装は、Oracle Enterprise Manager Cloud Control (Cloud Control)で全体的に改良されています。
概要
Enterprise Managerコマンドライン・インタフェース(EM CLI)は、Oracle Enterprise Manager Cloud Control (Cloud Control)の上級ユーザー向けのコマンドライン・ユーティリティで、コンソールでの操作のほとんどを実行することができます。各種オペレーティング・システムのテキストベースのコンソール(シェルおよびコマンド・ウィンドウ)からCloud Control機能にアクセスできます。
-
ターゲットとジョブのモニタリングや管理、デプロイメント・プロシージャの実行、Enterprise Managerターゲットへのパッチ適用など、様々なコマンドライン操作を実行できます。
-
EM CLIの動詞という機能を使用して、オペレーティング・システム・シェル、Perl、Pythonなど、様々なプログラミング環境でカスタム・スクリプトを構築できます。これにより、Oracle Enterprise Managerの機能を自社のビジネス・プロセスと密接に統合することができます。
-
Cloud Controlコンソールと同等のセキュリティと機密性で、操作を実行できます。
Enterprise Managerコマンドライン・インタフェース動詞
この項では主として、様々なパッチとプロビジョニングのタスクを実行する際に使用するEM CLI動詞をすべてリストします。大きくわけて次の内容があります。
プロビジョニングのEM CLI動詞
次の表は、デプロイメント・プロシージャを実行するために使用されるすべてのEM CLI動詞のリストです。
表A-1 EM CLIのプロビジョニング動詞とその使用方法
動詞 | 使用方法 | 例 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
パッチ適用のEM CLI動詞
コマンドライン・インタフェースを使用して、1つの同じパッチ計画から任意の数のターゲットにパッチを適用できるようになりました。パッチ適用に使用される重要なEM CLI動詞の一部を次に示します。
表A-2 EM CLIのパッチ適用動詞とその使用方法
動詞 | 使用方法 | 例 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ソフトウェア・ライブラリのEM CLI動詞
Oracle Enterprise Manager Cloud Controlでは、ソフトウェア・ライブラリの構成、エンティティの作成およびそれらの使用がサポートされています。
注意:
Enterprise Manager UIかコマンドライン・ユーティリティ(EM CLI)を使用して、フォルダIDとエンティティ・リビジョンIDを取得できます。その方法と、EM CLI動詞を効率的に使用して次の表にリストされている多くのソフトウェア・ライブラリ・タスクを実行する方法については、「ZIPファイルの関連付けによる新規汎用コンポーネントの作成」でワークフローの例を参照してください。
ソフトウェア・ライブラリのアクションの実行に使用される重要なEM CLI動詞の一部を次に示します。
表A-3 ソフトウェア・ライブラリのEM CLI動詞とその使用方法
動詞 | 使用方法 | 例 |
---|---|---|
(ソフトウェア・ライブラリ・ストレージの場所の追加) |
|
|
(ソフトウェア・ライブラリ・フォルダの作成) |
|
|
(ソフトウェア・ライブラリ・エンティティの作成) |
|
|
(ソフトウェア・ライブラリ・エンティティのリスト) |
|
|
(ソフトウェア・ライブラリ・エンティティ・サブタイプのリスト) |
|
|
(ソフトウェア・ライブラリ・エンティティ・タイプのリスト) |
|
|
(ソフトウェア・ライブラリ・フォルダのリスト) |
|
|
(ソフトウェア・ライブラリ・ストレージの場所のリスト) |
|
|
(ソフトウェア・ライブラリ・エンティティからのファイルの参照) |
|
|
(ソフトウェア・ライブラリ・メタデータの再インポート) |
|
|
(ソフトウェア・ライブラリ・ストレージの場所の削除) |
|
|
(ソフトウェア・ライブラリ・エンティティの変更) |
|
|
(ソフトウェア・ライブラリ・エンティティへのファイルのアップロード) |
|
|
EM CLIを使用するプロビジョニング
デプロイメント・プロシージャは、EM CLIを使用してコマンドラインから実行するか、Cloud Control UIから実行できます。コマンドラインまたはGUIからプロシージャを起動する際には、一連の入力値を提供する必要があります。ただし、このような入力値を入力するモードはそれぞれのケースで異なります。デプロイメント・プロシージャをUIから実行するときは、ウィザードを使用して、プロシージャを実行するために必要なすべての入力値を入力できます。ただし、EM CLIでは入力値を入力するためにプロパティ・ファイルを使用します。プロパティ・ファイルは、デプロイメント・プロシージャを実行するために必要なすべての入力値を含むファイルです。この後で、プロパティ・ファイルを新規作成してプロシージャで使用する方法、すでに実行されたプロシージャのプロパティ・ファイルを使用する方法、デプロイメント・プロシージャを実行するためのプロパティ・ファイルと他の属性を使用してテンプレートを作成する方法を説明します。
注意:
-
EM CLIを使用してデプロイメント・プロシージャを実行することにより、プラガブル・データベースをプロビジョニングすることはできません。EM CLIを使用したプラガブル・データベースのプロビジョニング方法の詳細は、「プラガブル・データベースのプロビジョニング」を参照してください。
-
-swlib
引数は、Oracle Database 9iリリース2のみのクローニングに使用します。それ以降のリリースに対して、この引数は使用しないでください。
この項の内容は次のとおりです。
デプロイメント・プロシージャを発行するためのプロパティ・ファイルの作成
次の図は、テンプレート・プロパティ・ファイルを作成し、ファイルの値を更新してから、更新したプロパティ・ファイルを入力としてプロシージャを発行する手順を示します。

ステップ1: プロシージャ定義からのテンプレート・プロパティ・ファイルの作成
プロシージャをコマンドラインから正常に発行するために、選択したデプロイメント・プロシージャで必要なすべての詳細情報(変数名、ターゲット、資格証明など)をこのステップで指定します。プロパティ・ファイルの生成は次のように2段階で行います。
EM CLI動詞では、デプロイメント・プロシージャまたはプロシージャ構成の入力データを名前/値ペアの形式(プロパティ・ファイル形式とも呼ばれる)で記述します。プロシージャの名前/値のファイル形式の利点は、柔軟性が高く、複数の宛先ターゲットを受け入れられることです。
ステップ2: プロパティ・ファイルへの新しい値の入力
任意のエディタを使用してプロパティ・ファイルを開き、名前に対して値を入力します。すべてのフィールドを更新したら、プロパティ・ファイルを保存して閉じます。
このステップの目的は、一般的な入力値をデフォルトとして設定したプロパティ・ファイルのライブラリを作成することです。こうしておくと、オペレータのミスが減少し、オペレータが入力すべき入力数も減少します。
For example, vi procConfiguration.properties
注意:
プロパティ・ファイルの例は、「Oracle Databaseソフトウェアのプロビジョニング」または「Oracle WebLogic Serverのプロビジョニング」を参照してください。
ステップ3: 更新済プロパティ・ファイルを入力とするプロシージャの発行
デプロイメント・プロシージャを実行するための正しい名前/値ペアを設定してプロパティ・ファイルを準備できたら、EM CLI動詞submit_procedureを使用する必要があります。これは、編集したプロパティ・ファイルを入力として受け取ります。
emcli submit_procedure [-name={name of the procedure}] [-owner={owner of the procedure}] [-procedure={guid of the procedure}] -input_file={data:{file_path}/file name" [-instance_name={name for the procedure instance}] [-notification={procedure status}] [-grants={users and their corresponding accessing levels}] [-schedule=start_time:yyyy/MM/dd HH:mm; tz:{java timezone ID}]
次の例のように、Cloud Control 12c以降では、プロシージャを発行するときにプロシージャGUIDを使用することも、プロシージャ名/所有者のペアを使用することもできます。
-
プロシージャのGUIDを使用したプロパティ・ファイルの発行:
emcli submit_procedure -input_file=data:procConfiguration.properties -procedure=B35E10B1F427B4EEE040578CD78179DC -schedule="start_time:2006/6/21 21:23; tz:America/New_York" -grants="user1:VIEW_JOB; user2:FULL_JOB" -notification="scheduled, action required, running"
-
プロシージャ名/所有者ペアを使用したプロパティ・ファイルの発行:
emcli submit_procedure -input_file=data:procConfiguration.properties -name=SIHA_SIDB_PROC -owner=sysman -schedule="start_time:2006/6/21 21:23; tz:America/New_York" -grants="user1:VIEW_JOB; user2:FULL_JOB" -notification="scheduled, action required, running"
出力:
Verifying parameters ...
B35E10B1F427B4EEE040578CD78179DC
Deployment procedure submitted successfully
Note: The instanceId is B35E10B1F427B4EEE040578CD78179F1
この動詞は非待機モードで機能します。つまり、実行のためにプロシージャを発行すると、完了を待機せずに終了します。この動詞の出力は、プロシージャの発行が成功したかどうか、またはエラーが生成されたかどうかを示します。正常に発行された場合は、出力としてインスタンスGUIDが表示されます。
ステップ4: プロシージャのステータスの確認
最後のステップでは、プロシージャの進捗とステータスを追跡できます。プロシージャ発行の動詞がデプロイメント・プロシージャの完了を待機しないため、これは特に重要です。
emcli get_instance_status [-instance={instance guid}] [-exec=execution guid] [-xml [-details] [-showJobOutput] [-tailLength={last N characters}]]] Example: emcli get_instance_status -instance=B35E10B1F427B4EEE040578CD78179F1 -details -showJobOutput Output: B35E10B1F427B4EEE040578CD78179F1, WEBLOGIC_WSM, DANS_SCALEUP_WSM12, FAILED
すでに実行したデプロイメント・プロシージャのプロパティ・ファイルの使用
次の図は、すでに実行されたデプロイメント・プロシージャのプロパティ・ファイルを取得し、ファイルの値を更新してから、更新済プロパティ・ファイルを入力としてプロシージャを発行する手順を示します。

既存の実行からのプロパティ・ファイルの取得
プロシージャをコマンドラインから正常に発行するために、選択したデプロイメント・プロシージャで必要なすべての入力値(変数名、ターゲット、資格証明など)をこのステップで指定します。プロパティ・ファイルの生成は次のように2段階で行います。
既存の保存プロシージャを使用するプロシージャの起動
繰返し使用されるプロシージャは、プロパティ・ファイル、ジョブ権限、スケジュール、通知などと一緒に、一意の名前を付けて保存できます。この特別にパッケージ化したプロシージャは、必要な際にいつでも、一意の名前を使用して実行できます。これはプロシージャを何度も実行する必要があるときに非常に役立ち、時間と労力を大幅に節約できます。動詞emcli get_procedures
を実行すると、プロシージャ構成も含むすべてのプロシージャがフェッチされます。
既存のプロシージャ構成ファイルを使用してプロシージャをきどうするには、次の手順を実行します。
プロシージャのプロシージャ構成の保存
プロシージャを実行するためにプロパティ・ファイルを繰返し使用する必要がある場合、プロパティ・ファイルと一緒にそのプロシージャを保存して、保存したプロシージャに名前を付けることをお薦めします。このプロシージャを同じプロパティ・ファイルを使用して実行するときは常に、名前を指定して保存済のプロシージャを実行できます。プロシージャを保存するには、次のコマンドを実行します。
emcli save_procedure_input -name={name of procedure configuration} -procedure={Procedure name} [-owner={owner of procedure}] -input_file=data:/file path/file name [-grants={users and their corresponding accessing levels}] [-notification={procedure status}] [-schedule=start_time:yyyy/MM/dd HH:mm;tz:{java timezone id};grace_period:xxx] Example: emcli save_procedure_input -name=procConfiguration -procedure=ComputeStepTest -input_file=data:/tmp/instanceData.properties -grants="user1:VIEW_JOB; user2:FULL_JOB" -notification="scheduled, action required, running" -schedule="start_time:2012/12/25 00:00;tz:American/New York;grace_period:60"
プロシージャのプロシージャ構成の更新
保存したプロシージャの既存の値を更新するには、次のコマンドを実行します。
emcli update_procedure_input -name={name of procedure configuration} -input_file="data:/file path/file name" [-notification={procedure status}] [-grants={users and their corresponding accessing levels}] [-schedule=start_time:yyyy/MM/dd HH:mm;tz:{java timezone id};grace_period:xxx] Example: emcli update_procedure_input -name=procConfiguration -input_file=data:/tmp/instanceData.properties -grants="user1:VIEW_JOB;user2:FULL_JOB" -notification="scheduled, action required, running" -schedule="start_time:2012/12/25 00:00;tz:American/New York;grace_period:60"
プラガブル・データベースのプロビジョニング
この項では、EM CLIを使用したプラガブル・データベース(PDB)のプロビジョニング方法について説明します。次の項目が含まれます。
スナップショット・プロファイルを使用したプラガブル・データベースのプロビジョニング
スナップ・クローン方法を使用してPDBのクローンを作成する場合、作成したスナップショットからスナップショット・プロファイルを作成して、ソフトウェア・ライブラリにスナップショット・プロファイルを保存し、後でスナップショット・プロファイルを使用してPDBをプロビジョニングできます。この方法を使用すると、各プロビジョニング操作時にソースPDBのスナップショットを作成する必要なく、ステーブルで標準化された最新のPDBを大量のホスト上にプロビジョニングできます。
この項の内容は次のとおりです。
スナップショット・プロファイルを使用してプラガブル・データベースをプロビジョニングするための前提条件
スナップショット・プロファイルを使用してPDBをプロビジョニングする前に、次の前提条件を満たしていることを確認します。
-
Oracle Databaseプラグイン用に12.1.0.6 Enterprise Manager以上のバージョンをシステムにダウンロードおよびデプロイする必要があります。
-
スナップ・クローン方法(プラガブル・データベースをクローニングするための前提条件を参照)を使用したPDBのクローニングの前提条件を満たす必要があります。
EM CLIを使用するパッチ適用
この項は、次のトピックで構成されています。
パッチ適用を開始する前に
EM CLIを使用してターゲットにパッチを適用する前に、次の点に注意してください。
-
ターゲット名、ターゲット・タイプ、ターゲット・バージョン、リリース番号、プラットフォーム、製品などのターゲット情報を用意してあること。
-
パッチ名(パッチ番号)、リリースID、プラットフォームID、言語IDなどのパッチ情報を用意してあること。
-
パッチ適用プロセスを開始する前に、ターゲット・ホスト・マシンのOracleホームで次のいずれかの資格証明を設定します。
-
Oracleホームの名前付き資格証明
-
Oracleホームの名前付き特権資格証明
-
-
Oracle
アカウントまたはroot
アカウントへのアクセス権(ユーザー名/パスワード)がない場合には、SudoまたはPowerBrokerを通じて権限委任を設定し、ホスト・ターゲットにテンプレートを適用します。 -
パッチを適用する前に次のいずれかのモードを設定します。
-
オンライン・モード: このモードはインターネット接続があるときに役立ちます。ただし、My Oracle Supportからパッチを検索してダウンロードするには、My Oracle Supportの優先資格証明を設定する必要があります。
-
オフライン・モード: このモードは、すでにパッチをソフトウェア・ライブラリにダウンロードしている場合のパッチ適用に使用できます。この場合は、ソフトウェア・ライブラリで検索できます。
-
EM CLIを使用するパッチ適用
Enterprise Managerコマンドライン・インタフェースを使用してターゲットにパッチを適用できます。パッチのダウンロードと適用にCloud Controlは必須ではありません。
次の表は、EM CLIのパッチ適用シナリオを示しています。
表A-4 EM CLIのパッチ適用シナリオ
ケースNo | シナリオ | 高レベルのステップ |
---|---|---|
ケース1 |
パッチ適用ターゲットの新規プロパティ・ファイルの作成 |
新規プロパティ・ファイルを使用してターゲットにパッチを適用するには、次のステップを実行します。
EM CLIコマンドを使用して各ステップを実行する方法の詳細は、「パッチ適用ターゲットの新規プロパティ・ファイルの作成」を参照してください。 |
ケース2 |
既存のパッチ計画のプロパティ・ファイルを更新してターゲットにパッチを適用 |
既存のパッチ計画から取得したプロパティ・ファイルを更新するには、次のステップを実行します。
EM CLIコマンドを使用して各ステップを実行する方法の詳細は、「既存のパッチ計画のプロパティ・ファイルを使用してターゲットにパッチを適用」を参照してください。 |
パッチ適用ターゲットの新規プロパティ・ファイルの作成
パッチ計画を最初から作成する場合は、新規のプロパティ・ファイルを作成し、計画を作成するための入力としてこのプロパティ・ファイルを送信する必要があります。次のステップを実行します。
-
パッチを適用する必要のあるターゲットを選択します。これを行うには、次のEM CLIコマンドを実行します。
emcli get_targets [-targets="[name1:]type1;[name2:]type2;..."] For example: emcli get_targets -targets=oracle_emd Output: Displays all the Management Agent targets.
ステータスID ステータス ターゲット・タイプ ターゲット名 2
エラー時のメトリック収集
oracle_emd
h1.us.example.com:5125
2
エラー時のメトリック収集
oracle_emd
h2.us.example.com:5125
1
稼働中
oracle_emd
slc01nha.us.example.com:11852
1
稼働中
oracle_emd
slc00bng.us.example.com:1833
1
稼働中
oracle_emd
adc2101349.us.example.com:1832
-
適用するパッチを検索します。計画に該当するパッチを検索するには、「パッチID」を使用するか(基本検索)、「リリースID」、「プラットフォームID」および「製品ID」の組合せを使用して(拡張検索)、必要なパッチまでドリルダウンする必要があります。これを行うには、次のEM CLIコマンドを実行します。
emcli search_patches [-swlib] [-patch_name="patch_name"] [-product="product id" [-include_all_products_in_family]] [-release="release id"] [-platform="platform id" | -language="language id"] [-type="patch | patchset"] [-noheader] [-script | -xml | -format= [name:<pretty|script|csv>]; [column_separator:"column_sep_string"]; [row_separator:"row_sep_string"]; ]
注意:
パッチは、次のいずれかの場所で検索できます。
• ARUサイト
• ソフトウェア・ライブラリ
インターネット接続があってオンライン・モードの場合は、デフォルトでARUサイトのパッチを検索できます。一方、オフライン・モードの場合には、パッチを使用できるようにソフトウェア・ライブラリにパッチがすでにアップロードされていることを確認する必要があります。
EM CLIを使用して、次のいずれかの方法で検索を実行できます。
• 簡易検索: このモードでは、パッチID情報を使用してARUサイトまたはソフトウェア・ライブラリを検索できます。
• 拡張検索: このモードでは、プラットフォームID、言語ID、リリースID、製品IDなどのキー値を組み合せて指定し、検索するパッチまでドリルダウンすることができます。
次の構文および対応する例を使用して、EM CLIコマンドを使用する簡易検索と拡張検索を実行できます。
-
(基本検索)「パッチID」を使用してパッチを検索するには、次の手順を実行します。
emcli search_patches [-swlib] [-patch_name="patch_name"] [-product="product id" [-include_all_products_in_family]] [-release="release id"] [-platform="platform id" | -language="language id"] [-type="patch | patchset"] [-noheader] [-script | -xml | -format= [name:<pretty|script|csv>]; [column_separator:"column_sep_string"]; [row_separator:"row_sep_string"]; ]
Example 1: Basic Search (Online Mode) To search for patches on My Oracle Support using the Patch ID: emcli search_patches -patch_name=11993573 Output: 11993573 Agent Plugin PATCH Cloud Control (Agent) 12.1.0.1.0 Linux x86-64 American English General Enterprise Manager Base Platform - Plugin Example 2: Basic Search (Offline Mode) To search for patches on Software Library using the patch ID: emcli search_patches -patch_name=11993573 -swlib -script Output: 11993573 Agent Plugin PATCH Cloud Control (Agent) 12.1.0.1.0 Linux x86-64 American English General Enterprise Manager Base Platform - Plugin
-
(拡張検索)「製品ID」、「リリースID」、「プラットフォームID」(または「言語ID」)を使用して、パッチ計画に追加するパッチの詳細を取得します。
Example: To search for patches using a combination of Product ID, Release ID, and Platform ID (obtained from the earlier steps): emcli search_patches -product=12383 -release=9800371121010 -platform=226 Output: 13491785 ENTERPRISE MANAGER BASE PLATFORM - AGENT 12.1.0.1.0 BP1 (PORT) Cloud Control (Agent) 12.1.0.1.0 Linux x86-64 American English Recommended Enterprise Manager Base Platform13481721 WRONG ERROR MESSAGE RETURNED FROM NMO Cloud Control (Agent) 12.1.0.1.0 Linux x86-64 American English General Enterprise Manager Base Platform
-
-
任意のエディタを使用してパッチとターゲットのマップを作成し(プロパティ・ファイルに格納される)、パッチID、リリースID、プラットフォームID、言語IDなどの情報を指定します。次にサンプルのプロパティ・ファイルを示します。
vi demo.props patch.0.patch_id=13426630 patch.0.release_id=9800371121010 patch.0.platform_id=2000 patch.0.language_id=0 patch.0.target_name=abc1.example.com:1836 patch.0.target_type=oracle_emd patch.1.patch_id=13426630 patch.1.release_id=9800371121010 patch.1.platform_id=2000 patch.1.language_id=0 patch.1.target_name=abc2.us.example.com:1839 patch.1.target_type=oracle_emd
-
create_patch_planコマンドを実行して計画を作成し、新規作成したプロパティ・ファイル(
demo.props
)を入力として指定します。emcli create_patch_plan -name="name" -input_file=data:"file_path" [-impact_other_targets="add_all | add_original_only | cancel"] Example: emcli create_patch_plan -name=demo_agent -input_file=data:demo.props -impact_other_targets=add_all
注意:
選択したターゲットが他のターゲットに影響する場合は、
impact_other_targets with the value "add_all"
を追加する必要があります。たとえば、NFSホームで稼働しているエージェントのいずれかをパッチの対象として選択すると、同じNFSホームに基づく他のエージェントもパッチ適用の影響を受けるため、パッチ計画にすべてを含める必要があります。 -
関連するすべてのデータを使用してパッチ計画の作成が終了すると、「分析」モードで送信し、計画がデプロイ可能かどうかを検証できます。これを行うには、次のコマンドを実行します。
emcli submit_patch_plan -name=demo_agent -action=analyze Output: The action "analyze" is successfully submitted on the Patch Plan "demo_agent", now "analyze" is in progress.
「分析」モードを使用すると、計画がデプロイ可能かどうかを確認するために、計画ですべての検証を実行しやすくなります。計画は、分析が成功してからでないとデプロイできません。
-
パッチ計画のステータスを検証するには、次のEM CLIコマンドを実行します。
emcli show_patch_plan -name=demo_agent -info | grep plan_status Output: <plan_status>CONFLICTS</plan_status>
なんらかの競合がある場合には、計画をデプロイする前に解決してください。ユーザー・インタフェースを使用して問題を解決し、ステータスがCLEANになるまで計画を再実行できます。
-
分析が成功すると、パッチ計画をデプロイできるようになります。これを行うには、actionにdeployを指定して次のコマンドを実行します。
emcli submit_patch_plan -name=agent_demo -action=deploy Output: The action "deploy" is successfully submitted on the Patch Plan "demo_agent", now "deploy" is in progress
-
計画のステータスを検証するには、ステップ
6
で説明しているようにEM CLIコマンドshow_patch_planを実行します。コマンドの出力がDEPLOY_SUCCESS
の場合のみ、計画が正常にデプロイされ、パッチ計画に指定されたターゲットにパッチが適用されたことを意味します。emcli show_patch_plan -name=demo_agent -info Output: <plan> <planDetails> <plan_id>79CAF6A6DAFCFEE6654C425632F19411</plan_id> <name>demo</name> <type>PATCH</type> <description/> <conflict_check_date>Tue Feb 21 18:04:04 PST 2012</conflict_check_date> <conflict_check_date_ms>1329876244000</conflict_check_date_ms> <is_deployable>1</is_deployable> <plan_status>CONFLICTS</plan_status> <review_status>CONFLICT_FREE</review_status> <created_date>Tue Feb 21 17:40:47 PST 2012</created_date> <created_date_ms>1329874847000</created_date_ms> <created_by>SYSMAN</created_by> <last_updated_date>Tue Feb 21 17:58:29 PST 2012</last_updated_date> <last_updated_date_ms>1329875909000</last_updated_date_ms> <last_updated_by>SYSMAN</last_updated_by> <grant_priv>yes</grant_priv> <user_plan_privilege>FULL</user_plan_privilege> <see_all_targets>N</see_all_targets> <homogeneousGroupLabel>Database Instance 10.2.0.1.0 (Linux x86-64)</homogeneousGroupLabel> <executeGuid/> <executeUrl/> <planDetails/>
-
発行したパッチ適用プロシージャ/ジョブの詳細を取得するには、コマンドget_job_execution_detailsで、実行のGUIDを使用します。
emcli get_job_execution_detail -execution={execution_id} [-xml [-showOutput [-tailLength={length}]]] For Example: emcli get_job_execution_detail -execution=79CAF6A6DAFCFEE6654C425632F19411 -xml
EM CLIコマンドを使用するワークフローの例
次の項では、EM CLIコマンドを使用して実行できるプロビジョニング、パッチ適用およびソフトウェア・ライブラリの各タスクの一部について説明します。
Oracleデータベース・ソフトウェアのプロビジョニング
このユースケースでは、Cloud Controlに含まれるEM CLIコマンドを使用してOracle Databaseソフトウェアをプロビジョニングする方法を説明します。最初のステップでは、社内で実行しているデータベース・プロシージャをフィルタ処理でリストから除外し、単一インスタンス・データベース・プロシージャと対応するGUIDを選択します。SI DBプロシージャについて、新しいプロパティ・ファイルを新規作成します。最初はテンプレートの名前/値ペアは空になっています。プロパティ・ファイルの属性を編集して、値を講師する必要があります。その後、更新したプロパティ・ファイルを入力としてプロシージャを発行し、完了するまで追跡します。
注意:
次の動詞の場合、Oracle Database 9i Release 2のみクローニングされます。emcli clone_database_home -swlib true
ステップごとの手順を出力とともに次に示します。
Oracle WebLogic Serverのプロビジョニング
このユースケースでは、Cloud ControlのEM CLIコマンドを使用して、Oracle WebLogic Serverをプロビジョニングする方法、およびミドルウェア・プロシージャをスケール・アップおよびスケール・アウトする方法を説明します。
Cloud Controlでは、EM CLIコマンドを使用してOracle WebLogic Serverをプロビジョニングする次のユースケースがサポートされます。
Oracle WebLogic Serverをプロビジョニングするための前提条件
-
管理サーバーおよび管理対象サーバーを含むWebLogicドメインを設定しておきます。また、ホスト・ターゲットがMiddlewareプロビジョニング・ページで検出されるように、ターゲットをOMSに登録しておきます。
-
WebLogicドメイン・プロビジョニング・プロファイルを作成します。こうすると、選択されたドメインとMiddlewareホームが、将来のクローニング操作のためにアーカイブされてソフトウェア・ライブラリに格納されます。このプロファイルは、WebLogicドメインをクローニングするときに使用できます。
プロビジョニング・プロファイルを使用したOracle WebLogic Serverのプロビジョニング
最初のステップでは、社内で実行しているFMWプロシージャをフィルタ処理でリストから除外し、FMWPROV
と対応するGUIDを選択します。FMWPROV
プロシージャについて、新しいプロパティ・ファイル・テンプレートを新規作成します。最初はテンプレートの名前/値ペアは空になっています。プロパティ・ファイルの属性を編集して、値を講師する必要があります。その後、更新したプロパティ・ファイルを入力としてプロシージャを発行し、完了するまで追跡します。
次のステップを実行します。
ミドルウェア・デプロイメント・プロシージャのスケール・アップまたはスケール・アウト
既存のマシン上のクラスタにさらにサーバー・インスタンスを追加したり、新規サーバー・インスタンスをホストするためのマシンをクラスタに追加したりして、クラスタの能力を強化するプロセスは、スケール・アップと呼ばれます。管理対象サーバーのスケール・アップおよびスケール・アウトは、Enterprise Manager 13cのEM CLIコマンドを使用してコマンドラインから実行できます。
このユースケースでは、SCALEUP
プロシージャのインスタンスGUIDを取得してから、それを使用して、プロシージャのそのインスタンスの入力プロパティ・ファイルを取得します。プロパティ・ファイルに必要な更新(ユーザーフレンドリ値の追加など)を行ってから、更新済プロパティ・ファイルを入力としてプロシージャを発行します。
ステップごとのステップを次に示します。
ユーザー定義デプロイメント・プロシージャのプロビジョニング
このユースケースでは、Cloud Controlに含まれるEM CLIコマンドを使用してユーザー定義デプロイメント・プロシージャ(UDDP)をプロビジョニングする方法を説明します。このユースケースでは、Cloud Control UIを使用したUDDPの作成と、EM CLIコマンドを使用したUDDPの再発行の基本を説明します。
このユースケースでは、Cloud Control UIを使用して、Linuxホストabc.example.com
上のJRE6をプロビジョニングするユーザー定義デプロイメント・プロシージャを作成します。JREの転送やJREバージョンのチェックなどのステップをプロシージャに追加し、一意の発行名を使用してプロシージャを発行します。次に、EM CLIコマンドを使用して、発行されたプロシージャのインスタンスGUIDを取得します。プロパティ・ファイルを少し変更し、EM CLIで発行します。
ユーザー定義デプロイメント・プロシージャをプロビジョニングするための前提条件
次の前提条件を満たしていることを確認します。
-
デザイナとしてCloud Controlにログインします。
-
ソフトウェア・ライブラリ・ディレクティブを作成して、Linuxの
/software_library/provisioning/install_jre6_linux32
ディレクトリにJRE6をインストールします。任意のディレクトリを選択できることに注意してください。 -
LinuxのホットスポットJRE6を含むソフトウェア・ライブラリ・コンポーネントを、
/software_library/provisioning/hotspot_jre6_linux32
ディレクトリに作成します。
GUIを使用したユーザー定義デプロイメント・プロシージャへのステップとフェーズの追加
フェーズやステップをユーザー定義デプロイメント・プロシージャ(UDDP)に追加するには、デザイナとしてCloud Controlにログインして次のステップを実行します。
-
Cloud Controlで、「エンタープライズ」メニューから「プロビジョニングとパッチ適用」を選択し、「プロシージャ・ライブラリ」を選択します。
-
プロビジョニング・ページの「アクション」メニューで「新規作成」を選択し、「実行」をクリックします。
-
プロシージャUDDPTest に一意の名前を付けて、「プロシージャ・ステップ」タブをクリックします。
-
「プロシージャ変数」タブで、プロシージャ変数
destination_path
を追加します。 -
「デフォルト・フェーズ」を選択し、「挿入」をクリックして新しいステップをフェーズに追加します。作成ウィザードで「タイプ」として「ライブラリ: コンポーネント」を選択します。ページがリフレッシュされ、5つのステップで構成されるウィザードが表示されます。
-
作成ページで一意名としてJREの転送を入力し、「次へ」をクリックします。
-
コンポーネントの選択ページで、コンポーネントhotspot_jre6_linux32を選択します。
-
ディレクティブの選択ページで、ディレクティブinstall_jre6_linux32を選択します。
-
プロパティのマップ・ページで、ディレクティブのプロパティに定義した変数をマップします。たとえば、
destination_path
ディレクティブ・プロパティを「変数の選択」
に設定してから、destination_path
を設定したプロシージャ変数を選択します。 -
確認ページで詳細を確認し、「終了」をクリックします。
-
-
JREの転送ステップを選択し、「挿入」をクリックします。作成ウィザードで「タイプ」として「ホスト・コマンド」を選択します。ページがリフレッシュされ、3つのステップで構成されるウィザードが表示されます。
-
作成ページで一意名としてJREバージョンのチェックを入力し、「次へ」をクリックします。
-
コマンドの入力ページに次のコマンドを入力します。
${data.destination_path}/jre1.6.0_23/bin/java -version
-
確認ページで詳細を確認し、「終了」をクリックします。
-
-
プロシージャ・ライブラリ・ページで、作成したばかりのUDDPTestプロシージャを選択し、「起動」をクリックします。ウィザードを完了するには、プロシージャをプロビジョニングするターゲット、変数(宛先パス:
/tmp
)、資格証明情報、通知情報を入力します。 -
すべての詳細情報を指定したら、「発行」をクリックします。一意の発行名FirstUDDPを入力します。
-
プロシージャが実行された後で、JREバージョンのチェック・ステップの出力を確認します。正常な場合、バージョンは
JRE6
になります。
WebLogic Serverターゲットへのパッチ適用
次の手順では、パッチ計画を作成してその値を更新し、送信して、選択したターゲットにパッチをデプロイする方法を説明します。このワークフローは、WLSターゲットへのパッチ適用でエンドツーエンドのステップを取得します。パッチ適用のプロセスは、選択したターゲットにかかわらず同じです。
WebLogicサーバー・ターゲットにパッチを適用するには、次のステップを実行します。
ZIPファイルの関連付けによる新規汎用コンポーネントの作成
ZIPファイルを新規コンポーネントとしてアップロードするには、次のステップを実行します。
ステップ1: ソフトウェア・ライブラリでの親フォルダの特定
ソフトウェア・ライブラリで作成した新規エンティティは、フォルダに配置する必要があります。既存のフォルダを選択することも、新規のフォルダを作成することもできます。これを行うには、次の各項に従います。
新規フォルダの作成
新規フォルダを作成する場合は、親フォルダを指定する必要があります。親フォルダがルート・フォルダの場合(最上位レベルの「Software Library」フォルダとして表示される)は、次のEM CLI動詞を使用します。
emcli create_swlib_folder -name="myFolder" -desc="myFolder description" -parent_id=ROOT
出力:
Software Library
フォルダにフォルダ'myFolder
が作成されました。識別子はoracle:defaultService:em:provisioning:1:cat:C771B5A38A484CE3E40E50AD38A69D2
です。
新規作成したフォルダについて出力メッセージで表示される識別子は、エンティティの作成または変更時に、あるいは他のサブフォルダを作成する目的で使用できます。
既存フォルダの選択
既存フォルダを選択する場合は、次のいずれかのアプローチを使用します。
アプローチ1: Enterprise Manager UIを使用
次のステップを実行します。
- 「エンタープライズ」メニューから、「プロビジョニングとパッチ適用」、「ソフトウェア・ライブラリ」 の順に選択します。
- 「ソフトウェア・ライブラリ」ホームページで、「表示」メニューから「列」、「内部ID」の順に選択します。デフォルトでは、「内部ID」列は表示されていません。
- 必要なフォルダの「内部ID」列の値をコピーします。
アプローチ2: Enterprise Managerコマンドライン・インタフェースを使用
次のEM CLI動詞を使用します。
emcli list_swlib_folders -parent_id=ROOT -show_folder_id
出力:
Java EE Provisioning,Java EE Application Provisioning Entities,oracle:defaultService:em:provisioning:1:cat:C771B5AAF4A4EED9E040E50AD38A6E98
MultiOMS,List of Oracle shipped Directives,oracle:defaultService:em:provisioning:1:cat:C771B5AAF1ACEED9E040E50AD38A6E98
myFolder,myFolder description,oracle:defaultService:em:provisioning:1:cat:C771B5A38A484CE3E040E50AD38A69D2
OSBProvisioning,OSBProvisioning Entities,oracle:defaultService:em:provisioning:1:cat:C771B5AAF3F1EED9E040E50AD38A6E98
..........
アクセスしようとするフォルダがmyFolder
のサブフォルダの場合は、次の動詞を使用し、myFolder
の識別子を指定してサブフォルダをリストします。
emcli list_swlib_folders -parent_id='oracle:defaultService:em:provisioning:1:cat:C771B5A38A484CE3E040E50AD38A69D2' -show_folder_id
出力:
mySubFolder,mySubFolder description,oracle:defaultService:em:provisioning:1:cat:C771B5A38A494CE3E040E50AD38A69D2
ステップ2: 汎用コンポーネント・エンティティの作成
mySubFolder
フォルダの下に、タイプがComponent
、サブタイプがGeneric Component
のエンティティを作成し、次の各項に従います。
ステップ1a:エンティティ・タイプの指定
ソフトウェア・ライブラリで使用可能なタイプをすべてリストするには、次の動詞を使用します。
emcli list_swlib_entity_types -show_type_id
出力:
Component, COMP_Component Directives, COMP_Directives Bare Metal Provisioning, BMPType Virtualization, Virtualization
ステップ1b:エンティティ・サブタイプの指定
component
タイプのすべてのサブタイプをリストするには、次の動詞を使用します。
emcli list_swlib_entity_subtypes -entity_type_id=COMP_Component -show_subtype_id
出力:
Generic Component, SUB_Generic
Oracle Database Software Clone, SUB_OracleDB
Configuration Template, SUB_ConfigTmpl
SUB_OracleAS
Self Update, SUB_SelfUpdate
Oracle Clusterware Clone, SUB_OracleCRS
Service Bus Resource, SUB_OSBResource
Oracle Software Update, SUB_OraSoftUpdate
Java EE Application, SUB_JavaEEApplication
Installation Media, SUB_InstallationMedia
Database Template, SUB_DbCreateTemplate
Database Provisioning Profile, SUB_DbProfile
WebLogic Domain Provisioning Profile, SUB_FMWBundle
WebLogic Domain Clone, SUB_WLSTemlpate
Oracle Middleware Home Gold Image, SUB_FMWImage
ステップ2:汎用コンポーネント・エンティティの作成
汎用コンポーネントを作成するには、次の動詞を実行します。
emcli create_swlib_entity -name=myEntity -type=COMP_Component -subtype=SUB_Generic -folder_id='oracle:defaultService:em:provisioning:1:cat:C771B5A38A494CE3E040E50AD38A69D2' -desc='myEntity description' -attr="PRODUCT:Example" -attr="PRODUCT_VERSION:3.1" -attr="VENDOR:Example Corp" -note='first comment for myEntity
注意:
タイプとサブタイプは、汎用コンポーネントを作成する際にはオプションですが、この説明では明示的に指定しています。
出力:
Entity 'myEntity' is created in 'mySubFolder' folder, identifier is 'oracle:defaultService:em:provisioning:1:cmp:COMP_Component:SUB_Generic:C77200CA9DC1E7AAE040E50AD38A1599:0.1'
注意:
新規作成したエンティティについて出力メッセージで表示される識別子は、ファイルのアップロードやエンティティの変更時に使用できます。
新規作成したエンティティを検証するには、次の動詞を使用します。
emcli list_swlib_entities -name=myEntity -folder_id='oracle:defaultService:em:provisioning:1:cat:C771B5A38A494CE3E040E50AD38A69D2'
出力:
myEntity,0.1,myEntity description,Ready,Component,Generic Component,Untested,SYSMAN
ステップ3: 汎用コンポーネントへのZIPファイルの関連付け
既存のエンティティmyEntity
にZIPファイルをアップロードするには、次の動詞を使用します。
emcli upload_swlib_entity_files -entity_rev_id='oracle:defaultService:em:provisioning:1:cmp:COMP_Component:SUB_Generic:C77200CA9DC1E7AAE040E50AD38A1599:0.1' -file="/scratch/user1/patch13653908.zip;newfile1.zip" -host="host.us.example.com" -credential_name=mycred11 -credential_owner=sysman
注意:
アップロードが完了すると、エンティティmyEntity
の新規リビジョンが作成されます。
出力:
Upload of file(s) initiated, this may take some time to complete... Upload of file(s) completed successfully. Entity 'myEntity (0.2)' in 'mySubFolder' folder has been created, identifier is 'oracle:defaultService:em:provisioning:1:cmp:COMP_Component:SUB_Generic:C77200CA9DC1E7AAE040E50AD38A1599:0.2'.
あるいはHTTPの参照先、たとえばmyScripts
にあるZIPファイルを参照するには、次の動詞を使用します。
emcli refer_swlib_entity_files -entity_rev_id='oracle:defaultService:em:provisioning:1:cmp:COMP_Component:SUB_Generic:C77200CA9DC1E7AAE040E50AD38A1599:0.1' -file='scripts/perl/script1.pl;new_script.pl' -refer_storage='myScripts;Http'
出力:
Entity 'myEntity (0.2)' in 'mySubFolder' folder has been created, identifier is 'oracle:defaultService:em:provisioning:1:cmp:COMP_Component:SUB_Generic:C77200CA9DC1E7AAE040E50AD38A1599:0.2'.
ソフトウェア・ライブラリの記憶域の場所の移行および削除
このユースケースは、既存の記憶域の場所の移行および削除方法を説明しています。次の例では、ソフトウェア・ライブラリ・アップロード・ファイルの記憶域の場所がすでに構成されています。ファイルは、この記憶域の場所から、同じ記憶域タイプまたは別の記憶域タイプの別の場所に移行できます。
次の例では、最初の記憶域の場所の名前はfirstLocで、記憶域タイプはOMSエージェント・ファイル・システムです。2番目の記憶域の場所はOMS共有ファイル・システムで、名前はsecondLocです。
ステップ1: ファイルを移行する宛先記憶域の場所の追加
ソフトウェア・ライブラリ内のエンティティに関連付けられているファイルを置くことができるのは、1つの記憶域の場所のみです。アップロード・ファイルの記憶域の場所を削除する処理は、ファイルを別の既存のアップロード・ファイルの記憶域の場所に移行する処理よりも常に後に実行されます。このステップの一部として、タイプがOMS共有ファイル・システムである宛先記憶域の場所が十分なディスク領域を指定して作成され、ソース記憶域の場所firstLocにあるすべてのファイルのコピーが保持されます。
OMS共有ファイル・システム記憶域の場所の追加
emcli add_swlib_storage_location
-name=secondLoc
path=/u01/swlib
type=OmsShared
サンプル出力:
場所の構成が開始しました。完了までにはしばらく時間がかかる場合があります...
Location 'secondLoc' created.
OMS共有ファイル・システム記憶域の場所の表示
新しい記憶域の場所が作成されたことを確認するには、次のコマンドを実行します。
emcli list_swlib_storage_locations
type=OmsShared
サンプル出力:
secondLoc, /u01/swlib/, Active
ステップ2: 既存の記憶域の場所の移行および削除
記憶域の場所firstLocを削除して、すべてのファイルを記憶域の場所secondLocに移行するには、次のコマンドを使用します。
emcli remove_swlib_storage_location
name=firstLoc
type=OmsAgent
migrate_to_loc=secondLoc
-migrate_to_type=OmsShared
サンプル出力:
Job 'MigrateEntityFiles_1352113174929' has been successfully submitted for migrating the files.
ジョブが正常に実行されると、場所firstLocは削除されます。ジョブ実行の詳細を確認するには、「エンタープライズ」、「ジョブ」、「アクティビティ」ページにナビゲートします。
ソースOMSエージェント・ファイル・システム記憶域の場所のステータスの確認
記憶域の場所firstLocに対して移行操作および削除操作を開始した直後に、その場所は「非アクティブ」としてマークされ、この場所に新しいファイルがアップロードできなくなります。この場所のステータスを確認するには、次のコマンドを実行します。
emcli list_swlib_storage_locations
-type=OmsAgent
サンプル出力:
firstLoc, /u01/swlib/, Inactive
移行ジョブが完了したら、場所firstLocは削除されるため、表示されなくなります。
EM CLIを使用したATSサービス・テストの追加
このユースケースは、カスタム・データバンクを使用して、テスト・リポジトリで使用可能な既存のATSサービス・テスト・インスタンスをカスタマイズする方法を説明します。
注意:
このプロシージャを続行する前に、ATSサービス・テスト・タイプをテスト・リポジトリにアップロードしていることを確認します。詳細は、『Oracle Enterprise Manager Cloud Control管理者ガイド』の「サービスの構成および使用」を参照してください。
リポジトリで使用可能なサービス・テストを使用してATSテスト・インスタンスを作成し、カスタム・データバンクを適用することによりテストをカスタマイズするには、次のステップに従います。
Enterprise Managerコマンドライン・インタフェースの使用に関する制限事項
次に、デプロイメント・プロシージャを実行するためのEM CLIの使用に関する制限事項を示します。
-
EM CLIコマンドを使用してステップとフェーズの追加または編集を行うことはできません。これを実行するには、Cloud Controlにログインし、項33.2.1のステップを実行する必要があります。
-
デプロイメント・プロシージャで使用される新しい変数はEM CLIでは定義できません。Cloud Control UIのみで定義できます。プロシージャ変数の詳細は、項32.3.2を参照してください。
-
インスタンスの詳しい実行情報(失敗など)は、EM CLIでは追跡できません。Cloud Control UIでは可能です。
-
My Oracle Supportの優先資格証明を設定するには、Enterprise Manager Cloud Controlにログインする必要があります。これを実行するコマンドライン・オプションはありません。