現在、キットの一部として、Oracle Configuration ManagerをバンドルしていないOracle製品があります。また、旧製品で、Oracle Configuration Managerはインストールされていたが構成されていないものもあります。このような環境にOracle Configuration Managerを手動でインストールするのは、非常に手間と時間のかかる作業です。Oracle Mass Deployment Utilityは、ある1か所からこのような環境へのOracle Configuration Managerのデプロイを容易にするとともに、様々なシステムを更新および構成します。
Mass Deployment Utilityはこのような状況を改善するために作成されました。
この章の内容は次のとおりです。
Oracle Configuration Manager Mass Deployment Utility(Mass Deployment)は、Oracle Configuration Managerがインストールされていないか、インストールはされているが構成されていないOracleホームにOracle Configuration Managerを配布するためのメカニズムを提供します。また、Mass Deployment Utilityは、最新版ではないOracle Configuration Managerがインストールされている既存のホームの更新、既存のインストールの再構成、およびOracleホームに存在するデータベースのインスツルメント処理も行います。
Mass Deployment Utilityは、次のコンポーネントから構成されています。
secure_passwordユーティリティ
デプロイメント・プロセスで使用されるパスワード・ファイルと入力ファイルの両方でパスワードの暗号化を管理します。
password.csvファイル
ユーザー名とパスワードをグループ名にマップするカンマ区切り値のファイル。入力ファイルでは、ユーザー名とパスワードではなくグループ名が使用されるので、資格証明はより強力に保護されます。
remote_opユーティリティ
リモート・サイトのOracleホームでアクションが実行されるようにします。
sample_input.csv
remote_opユーティリティへの入力として使用されるフィールドのリストです。このファイルは、独自の入力ファイルのテンプレートとして使用します。
入力ファイル
エントリのリストを提供するカンマ区切り形式のファイル。このファイルの各エントリは、指定されたターゲットに対して機能し、remote_opユーティリティへの入力です。
出力ファイル
remote_opユーティリティの実行結果。形式は、カンマ区切り値です。出力ファイルには、入力ファイルの各エントリに対する操作の結果が入ったエントリがあります。
.logファイル
リモート・ターゲット・ホームで実行された各アクションの詳細が含まれます。.logファイルには出力ファイル名に.logを追加した名前が付けられます。
次の前提条件を満たす必要があります。
Mass Deployment Utilityを正常に使用するには、JAVA_HOME環境変数をJDK 1.5に設定する必要があります。
ターゲット・ホームでは、必要なバージョンのJDK(UNIXでは1.2.2以上、Windowsでは1.3.1以上)が使用可能であることを確認する必要があります。次の条件の1つに該当している必要があります。
ターゲット・ホームにJDKがインストールされていること。
インストールされているJDKへのsymlinkがターゲット・ホームに存在すること。
ユーザーの.kshrcで定義されているJAVA_HOME環境変数が、適切なJDKのインストールを示していること。
Mass Deployment UtilityはSSHを使用して、ファイルを転送し、リモート・コマンドを実行します(したがって、このインストール方法は、SSH接続を使用しない、またはブロックする環境には適しません)。SSHには次のような利点があります。
ファイルを転送できる。
環境を設定/変更できる。
ホスト・コマンドをリモートで実行できる。
他のリモート実行方法(rshなど)と比べてセキュリティのレベルが高い。
通常、SSHは大半のLinux/UNIXシステムに存在しますが、Windowsホストの場合、通常デフォルトではSSHアクセスをサポートしません。Mass Deployment UtilityがWindowsホストに接続できるようにするには、SSHサービスをインストールする必要があります。Mass Deployment Utilityでは、これとともに、Cygwinスイートに付属するその他のソフトウェア・ツールも必要です。完全なスイートは次のサイトからダウンロードできます。
http://www.cygwin.com
これらのインストール方法は、付録B「Microsoft WindowsでのSSH(SSHD)サーバーの設定」を参照してください。
Oracleサーバーへの接続には、ターゲットにRepeaterが必要であるかどうかを判断します。Repeaterの詳細は、第3章「Oracle Configuration Manager Repeater」を参照してください。ターゲットがRepeaterを必要としている場合、すべてのターゲットに対してRepeaterの使用を構成するようにMass Deployment Utilityを設定する必要があります。Repeaterを構成できるようにするには、次のようにします。
<path>/ocm/md/configディレクトリにあるmd.propertiesファイルを編集します。
次の行を追加します。
md.repeater.uri=http://<host_name>:port where <host_name> is the host where the Repeater is deployed port is the port used to access the Repeater
このプロパティが設定されている場合、このユーティリティによって行われるインストールすべてでRepeaterが構成されます。
Companion配布キットはzipファイル(ocm_companion-10.0.0.0.0.zip)1つに収められています。このファイルを入手するには、My Oracle Supportの「コレクタ」タブからダウンロードするか、またはAutomated Release Update(ARU)からパッチ8355285をダウンロードします。ocm_companion-10.0.0.0.0.zipファイルはCompanion配布ファイルのインストール先となる場所にコピーしてください。
次のようにして、ファイルを解凍します。
unzip -d <full_path> ocm_companion-10.0.0.0.0.zip
ここで、<full_path>はキットの保存先のフルパスを表します。
例:
unzip -d /scratch/jdoe/install/ ocm_companion-10.0.0.0.0.zip
この結果、次のファイルが保存先ディレクトリocm_companion/distributionに格納されます。
Mass Deployment Utilityキット(ocm_massdeployment-10.0.0.0.0.zip)
Repeaterキット(ocm_repeater-10.3.1.1.0.zip)
したがって、保存先ディレクトリocm_companion/distributionの内容は次のようになります。
ocm_companion/distributions
ocm_massdeployment-10.0.0.0.0.zip (Mass Deployment Utility kit)
ocm_repeater-10.3.1.1.0.zip (Repeater kit)
これらのzipファイルを、インストール先の場所にコピーします。
ocm_massdeployment-10.0.0.0.0.zipファイルを解凍します。これにより、<your_directory>/ocm/mdにMass Deploymentがインストールされます。
Mass Deployment Utilityは、<your_directory>/ocm/md/bin内の次のコンポーネントにより構成されます。
remote_op
このコンポーネントは、適切なConfiguration Managerの詳細を使用して、リモート・システム上にホームをインストール、更新または構成します。
secure_password
このコンポーネントは、password.csvファイルおよび入力ファイルでのパスワードの暗号化を管理します。
Mass Deployment Utilityの構成はすべて、<your_directory>/ocm/md/config/md.propertiesファイルに記録されています。構成を変更するには、このファイルを編集します。重要なプロパティは次のとおりです。
md.win.tmp
任意のバージョンのWindowsオペレーティング・システムのリモート・マシン上の一時ディレクトリの場所。リモート操作に必要なファイルはすべて、リモート・マシンのこの場所にコピーされます。デフォルト値はC:\です。必要に応じて、デフォルトを変更することができます。
すべてのリモート・マシンでこのディレクトリが使用できること、およびすべてのユーザーがこのディレクトリに対する読取り権限および書込み権限を持っていることを確認します。
md.unix.tmp
Windows以外のオペレーティング・システムのリモート・マシン上の一時ディレクトリの場所。リモート操作に必要なファイルはすべて、リモート・マシンのこの場所にコピーされます。デフォルト値は/tmpです。必要に応じて、デフォルトを変更することができます。
すべてのリモート・マシンでこのディレクトリが使用できること、およびすべてのユーザーがこのディレクトリに対する読取り権限および書込み権限を持っていることを確認します。
md.repeater.uri
RepeaterをOracleサーバーに接続する必要がある場合は、これを使用して、RepeaterのURLを指定します。Repeaterの詳細は、第3章「Oracle Configuration Manager Repeater」を参照してください。設定されている場合、このユーティリティによって行われるインストールすべてでRepeaterが構成されます。
Mass Deploymentユーティリティのどちらかを初めて実行する場合、パスワードの入力を求められます。remote_opユーティリティまたはsecure_passwordユーティリティを使用するたびに、このパスワードが要求されます。パスワードは少なくとも8文字必要です。
Mass Deployment Utilityの目的は企業のリモート・ターゲット・ホームで操作を行うことなので、Mass Deployment Utilityに入力を提供するためのメカニズムが必要です。このメカニズムは、必要なデータを含む入力csvファイルです。
入力ファイルの使用を用意にするために、Mass Deployment Utilityにはテンプレート(sample_input.csv)が用意されています。このテンプレートは、フィールド値の指定に使用できます。
password.csvファイルは、グループ名と資格証明(ユーザー名/パスワードのペア)を関連付けるために使用されます。パスワード・グループを定義することにより、パスワード・グループ名をユーザー名フィールドへの入力として使用し、入力ファイルのパスワード・フィールドを空のままにしておくことができます。これにより、パスワードをすべて、暗号化された形式で1つのファイルに保存できます。
password.csvファイルは、パスワードのグループ名、ユーザー名およびパスワードのフィールドから構成されています。入力csvファイルのユーザー名は、パスワード・グループ名により置き換えられます。たとえば、password.csvファイルの先頭行は次のようになります。
<group name>,<user name>,<password>
where <group name> is the name of the group
<user name> is the name of the user
<password> is the password associated with the user name
For example, the first line of the password.csv file could be:
accounting,payables,mypswd
したがって、パスワード・グループを使用する入力ファイルの行は、次のようになります。
install,abc22,[accounting],,
where install is the action
abc22 is the host
[accounting] is the password group name which must be in brackets
,, denotes that the password field is left blank
次の点に注意してください。
ファイル名はpassword.csvで、すべて小文字を使用します。
password.csvファイルは、configディレクトリにある必要があります(ocm/md/config/password.csv)。
MetaLink、プロキシ、データベースなど、すべてのタイプの資格証明はこのファイルに格納されます。
secure_passwordユーティリティまたはremote_opユーティリティを実行すると、必ず、password.csvファイルが暗号化されます。
secure_passwordユーティリティは、password.csvファイルおよび入力ファイルに記載されているパスワードを暗号化します。password.csvファイルを作成または変更したら、secure_passwordユーティリティの実行を検討してください。実行と同時にパスワードが暗号化されます。
出力の例は次のとおりです。
prompt>ocm/md/bin/secure_password OCM Mass Deployment Utility - Release: 10.0.0.0.0 Copyright (c) 2009, Oracle. All rights reserved. Please enter the password for Mass Deployment Utility. Password: prompt>
エラーのある行には、ユーザー名が存在しないなど、エラーの説明が表示されます。正常終了すると、プロンプトが表示されます。
次の点に注意してください。
password.csvファイルおよび入力ファイルで暗号化されたパスワードの先頭にはENCR_が付きます。
過去に暗号化されたパスワードは無視されます。
パスワードはエラーのない行で暗号化されます。入力行にエラーがあるときに、その行にパスワードが含まれている場合、このパスワードは暗号化されますが、これらのグループは処理の対象とはみなされません。
Oracleの提供するpassword.csvファイルのテンプレートには、グループ名、ユーザー名、パスワードのヘッダーのみ含まれます。
暗号化されたデータを含むファイルは移動できません。暗号化はMass Deploymentインストールと関係しています。
secure_passwordユーティリティにはヘルプ・オプションがあります。ヘルプにアクセスするには、次のように入力します。
secure_password -help
例:
secure_password -help
OCM Mass Deployment Utility - Release: 10.0.0.0.0
Copyright (c) 2009, Oracle. All rights reserved.
Usage: secure_password [-input_file]
-help : prints help for the command
-input_file <input.csv> : input file to secure
Example: secure_password -input_file input.csv
reads the config/password.csv file and input.csv.
It will modify these files by encrypting all clear text passwords.
テンプレートから入力ファイルを作成したら、次のコマンドを使用して、Mass Deployment Utilityを介してこのファイルを実行します。
remote_op -input_file <input.csv> [-out_file <out_file.csv>] [-check]
例:
bin/remote_op -input_file ~/md_scripts/install_soh_2dir.csv
その後、画面に次のように表示されます。
OCM Mass Deployment Utility - Release: 10.0.0.0.0 Copyright (c) 2009, Oracle. All rights reserved. Please enter the password for Mass Deployment Utility. Password: [Password must be correct or execution will not occur.] Please be patient, process may take some time. Log File: /scratch/tboisver/massdeploy/ocm_companion/ocm/md/out/output-2009-03-19_04-32-43-PM-install_soh_2dir.csv.log Please see the output file /scratch/jdoe/massdeploy/ocm_companion/ocm/md/out/output-2009-03-19_04-32-43-PM-install_soh_ 2dir.csv
remote_opユーティリティにはヘルプ・オプションがあります。ヘルプにアクセスするには、次のように入力します。
remote_op -help
例:
remote_op -help
OCM Mass Deployment Utility - Release: 10.0.0.0.0
Copyright (c) 2009, Oracle. All rights reserved.
Usage: remote_op -input_file <input.csv> [-out_file <out.csv>] [-check]
-check : actual remote operation is not performed
-help : prints help for the command
-input_file <input.csv> : input from this file
-out_file <output.csv> : output to this file
Example: remote_op -input_file input.csv
reads the input.csv file and performs remote
OCM operations like install, config, upgrade.
It will also invoke secure_password command implicitly.
remote_opユーティリティの引数は次のとおりです。
-input_file
入力ファイル名。ファイル名に制限はありません。たとえば、入力ファイルにaccount_payables.csvという名前を付けることができます。
-out_file
オプションの引数です。指定されている場合、出力ファイル名を表します。この引数を指定しなかった場合、出力ファイル名は、デフォルトで入力ファイル名の前にoutput-とタイムスタンプを付けた名前(たとえば、output-2009-03-21_10-39-36-AM-account_payables.csv)になり、ocm/md/outディレクトリに格納されます。
-check
実際のリモート操作を行わずに、入力ファイルの情報が正しいことを検証します。
remote_opの実行結果は次のとおりです。
出力ファイル
実行されたコマンドと、個々の実行の結果ステータスが含まれます。2.4.6項「Mass Deploymentの出力ファイル」を参照してください。
ログ・ファイル
リモート操作に関する詳細情報が含まれます。2.4.7項「ログ・ファイル」を参照してください。
資格証明とは、入力ファイル内の様々なユーザー名およびパスワードを表す一般用語です(ホスト資格証明、MetaLink資格証明、プロキシ資格証明、およびデータベース資格証明)。入力ファイルで資格情報を提供する方法は3つあります。
password.csvファイルで定義されたグループ名を使用します。このファイルは、ocm/md/configディレクトリにあります。
remote_opユーティリティで入力ファイルを処理するときに、パスワードを要求されるようにする場合は、入力ファイルのパスワード・フィールドに__PROMPT__と入力します。たとえば、install,host123,jdoe,__PROMPT__,とします。
単語PROMPTは大/小文字が区別されます。この場合は必ず大文字で指定します。そのようにしないと、その語はパスワードであるとみなされます。処理が終了すると、入力ファイルの__PROMPT__は暗号化されたパスワード(ENCR_で始まる)で置き換えられます。
password.csvファイルでパスワードのかわりに、__PROMPT__を使用することもできます。この場合、secure_password(またはremote_op)を実行すると、ユーザーに対してパスワードの入力を求めるプロンプトが表示されます。
__PROMPT__を使用したときの出力例は次のとおりです。(太字はプロンプトです。)
OCM Mass Deployment Utility - Release: 10.0.0.0.0 Copyright (c) 2009, Oracle. All rights reserved. Please enter the password for Mass Deployment Utility. Password: Password for user aime (host:abcd123): Confirm Password: Password for user testing@jdoe.com (metalink): Confirm Password: Encrypting input file /home/jdoe/md_scripts/instrument.csv Please be patient, process may take some time. Log File: /scratch/jdoe/massdeploy/ocm/md/out/output-2009-03-27_07-07-44-AM-instrument_nt.csv.log
入力ファイルには__PROMPT__はもう含まれていません。かわりに暗号化されたパスワードが含まれています。
入力ファイルに資格証明を入力し、この入力ファイルに対してsecure_passwordユーティリティを実行します。入力ファイルに対してsecure_passwordを実行しなかった場合、パスワードは、remote_opユーティリティを初めて実行したときに暗号化されます。
入力csvファイルは、remote_opユーティリティへの入力です。このファイルには、アクション/ホスト/ターゲット・ホームの組合せ1つに対して1行が含まれます。資格証明ではなく、パスワード・グループ名が使用されている場合、ユーザー名は大カッコ内のグループ名で置き換えられ、パスワードは空欄のままになります。
sample_input.csvという次のようなテンプレートが用意されています。
#Action,HostName,Host-user,Host-Password,Product Home Path,Oracle Config Home Path,OCM Version,OCM Status,OCM Mode (connected/disconnected),Db SID,DB Type (EM/Ebiz/db),ML-user (Metalink user ID),ML-Pwd,Proxy-Host,Proxy-Port,Proxy-user,Proxy-Pwd,DB-user (SYSDBA user),DB-Pwd,DB-App-user (Ebiz user if db type is Ebiz),DB-App-Pwd (Ebiz user password if db type is Ebiz or SYSMAN password if db type is EM),Cmd Status (Status of the remote operation)
テンプレート内の番号記号(#)はコメントを表しています。番号記号(#)で始まる行は、remote_opコマンドおよびsecure_passwordコマンドでは無視されます。
次の表では、入力ファイルの要素を説明しています。サンプル入力ファイルはocm/md/sample_input.csvにあります。スプレッドシートを使用すると、入力が簡単になります。
表2-1 入力csvファイルのフィールド
| フィールド | 説明 |
|---|---|
|
Action |
必須フィールド。Oracleホームで実行されるアクションを指定します。オプションは次のとおりです。
|
|
HostName |
必須フィールド。ホストのドメイン名またはホストIP。 |
|
Host-User |
必須フィールド。入力[グループ]としてホスト・ユーザーまたはグループ名。 |
|
Host-Password |
ホストのパスワード。ただし、Host-Userフィールドにグループ名が指定されている場合は空欄にします。2.4.4項「資格証明」を参照してください。 |
|
Product Home Path |
必須フィールド。コマンドが実行される場所。 |
|
Oracle Config Home Path |
オプションのフィールド。これが共有Oracleホームである場合に指定します。 |
|
OCM Version |
出力のみ。OracleホームにインストールされているOCMバージョン。 |
|
OCM Status |
出力のみ。OCMのステータス。 |
|
OCM Mode |
出力のみ。OCMの接続モード(connectedまたはdisconnected)。 |
|
DB SID |
データベース・システム識別子。installアクションおよびinstrumentアクションに使用されます。installアクションに対して指定した場合、データベースは自動的にインスツルメント処理されます。 |
|
DB Type |
EM、ebiz、db。installおよびinstrumentアクションに対してのみ指定します。 |
|
ML-User |
MetaLinkユーザー(グループ名[グループ]を指定することができます)。install、configおよびchmod_conアクションの場合は必須です。 |
|
ML-Pwd |
MetaLinkのパスワード。ただし、ML-Userフィールドにグループ名が指定されている場合は空欄にします。このフィールドは必須ではありません。MetaLinkのパスワードを指定しなかった場合、Oracle Configuration Managerは匿名登録モードで構成されます。2.4.4項「資格証明」を参照してください。 |
|
Proxy-Host |
プロキシ・ホスト(オプション。必要な場合にのみ使用されます)。 |
|
Proxy-Port |
プロキシ・ポート(オプション。必要な場合にのみ使用されます)。 |
|
Proxy-User |
プロキシ・ユーザー(またはグループ)(オプション。必要な場合にのみ使用されます)。 |
|
Proxy-Pwd |
プロキシ・パスワード(グループを使用している場合は空欄)(オプション。必要な場合にのみ使用されます)。 |
|
DB-User |
SYSDBAユーザー。データベースでOS認証が有効化されている場合は、このフィールドは必要ありません。 |
|
DB-Pwd |
SYSDBAユーザーのパスワード。データベースでOS認証が有効化されている場合は、このフィールドは必要ありません。 |
|
DB-App-User |
DBタイプがEbizである場合は、Ebizアプリケーション・ユーザー名を指定します。 |
|
DB-App-Password |
DBタイプがEbizの場合はEbizアプリケーションのユーザー・パスワード、EMの場合はSYSMANパスワード。 |
|
Cmd Status |
出力のみ。リモート操作のステータス。各操作に対するエラー・メッセージの詳細を表示します。 |
Oracle Configuration Manager操作で実行されるチェックは、表2-2を参照してください。
表2-2 Oracle Configuration Manager操作により実行されるチェック
| Oracle Configuration Managerの操作 | 実行されるチェック |
|---|---|
|
install |
|
|
upgrade |
|
|
chmod_con |
|
|
config |
|
|
get_info |
|
|
instrument |
|
Mass Deployment Utility(remote_op)を介して入力ファイルを実行した後、結果は出力ファイルに入ります。-out_file引数を指定してファイル名を指定した場合、これがファイル名になります。
ただし、-out_file引数を指定しなかった場合、出力ファイル名は、デフォルトで入力ファイル名の前にoutput-とタイムスタンプを付けた名前(たとえば、output-2009-03-21_10-39-36-AM-account_payables.csv)になり、ocm/md/outディレクトリに格納されます。
出力csvファイルのフィールドは、入力csvファイルのフィールドと同じですが、次のフィールドが更新されます。
Action
アクションが正常終了していると、アクション名は1組の二重引用符("")で置き換えられます。
OCM Version
出力のみ。OracleホームにインストールされているOCMバージョン。
OCM Status
出力のみ。現在のOCMステータス(idle、scheduled collection runningなど)。
OCM Mode
出力のみ。OCMの接続モード(connectedまたはdisconnected)。
Cmd Status(リモート操作のステータス)
リモート操作のステータス。各操作に対するエラー・メッセージの詳細を表示します。
出力CSVファイルとともに、ユーティリティにより、ログ・ファイルも生成されます。このファイルには、リモート・ホストへの出力とともに、コピーされたファイルおよび実行されたコマンドすべての詳細が記録されます。
ログ・ファイルは出力ファイルと同じディレクトリにあります。ログ・ファイルの名前は出力ファイル名の末尾に.logを付けたもの(例: <output_file.csv>.log)です。
Mass Deploymentの実行中、次のエラーが発生する可能性があります。
ユーザーがあるMass Deploymentインストールから別のインストールへパスワードまたは入力ファイルを移動すると、暗号化は(インストールに対して一意であるため)機能せず、出力ファイルには次のエラーが記録されます。
ホスト、MetaLink、プロキシの資格証明の復号化中にエラーが発生しました。このエラーは異なるパスワードを使用して資格証明を暗号化した場合に発生します。資格証明をクリアテキストで入力し、もう一度実行してください。
JAVA_HOMEがjdk1.5に設定されていない場合、次のようなエラーが表示されます。
Java Version 1.4.2_14 is less than minimum required (1.5). JAVA_HOME does not contain a valid JDK/JRE.