この章の内容は次のとおりです。
Enterprise Managerには、ターゲットまたはターゲットのグループに対して実行される管理タスクの自動化を管理するジョブ・フレームワークがあります。自動化フレームワークは、ターゲット、資格証明、イベントなどの他のEnterprise Managerサブシステムと緊密に統合されているため、顧客は1つのコンソールからターゲットを監視および管理できます。
ジョブ・フレームワークによって提供されるインタフェースを使用すると、プラグインに定義されているターゲット・タイプの自動化要件をサポートできます。重要な管理機能の自動サポートを提供して、ジョブ・タイプをプラグインの一部として定義できます。
その結果、Enterprise Manager管理者は、プラグインでサポートされるターゲットを管理するために、それらのジョブをスケジュール、実行および監視できます。これらのジョブは、管理ベスト・プラクティスを施行する、修正処理としてアラートに対処する、あるいは企業の管理全般を自動化するために使用できます。Enterprise Managerには、ジョブ・コンソールが組み込まれており、管理者はジョブの実行を発行および監視できます。
ジョブは、ジョブ・システムによって実行される作業単位です。管理者は、ジョブを作成し、ジョブの実行時期について日曜午前0時システムBにパッチ適用
などのスケジュールを指定します。管理サーバーにより、ジョブはスケジュールおよび実行されます。
ジョブは、ジョブを構成するステップを定義するジョブ・タイプ定義の他、ジョブの実行に入力として必要なパラメータおよびジョブでアクセスするターゲットへのアクセスに必要な資格証明に基づいています。ジョブの発行時、パラメータおよび資格証明の値は発行者によって指定されます。
ジョブの実行は、相互に関連するジョブ・ステップの集合です。ステップは、ステップセットにグループ化できます。ステップセット内のステップは、シリアル(1つずつ)またはパラレル(同時)に実行できますが、両方で実行することはできません。ステップ(およびステップセット)は、他のステップの成否に基づいて実行することもできます。これらの概念の詳細は、Enterprise Managerプログラマーズ・リファレンスを参照してください。
ジョブ内のステップでは、管理エージェントでコマンド、スクリプトなどを処理できます。Enterprise Managerには、作成するジョブ・タイプ定義に含めることができる共通コマンドがいくつか用意されています。これには、(スクリプトの実行を可能にする)リモート操作などのコマンドと、put
やget
などのファイル転送コマンドが含まれます。
各ステップに関連付けられたコマンドは通常、管理エージェントによってリモート・ノードに対して実行されます。ジョブの調整および全体ステータスは、管理サーバーによって保持され、管理リポジトリに格納されます。
図6-1 ジョブの概要
ジョブは、1つ以上のターゲット・リストを持っていることがあります。しかし、一部のジョブはターゲットを持たず、このようなジョブの場合、ターゲット・リストは空またはnullです。ターゲット・リストは、ジョブの1回の実行に必要なターゲットのセットです。ターゲット・リストを解析するかどうかはジョブ・タイプによります。たとえば、OSCommandジョブ・タイプは、指定パラメータで指定コマンドをリストのすべてのターゲットに対してパラレルに実行します。データベースのスキーマをクローニングするジョブは、若干異なる方法でターゲット・リストを解析します。たとえば、最初のターゲットをクローニング元のソース・データベースとみなします。2番目の引数をクローニングされたスキーマを移入するターゲット・データベースとみなします。ジョブは複数のターゲット・リストを指定して発行でき、それぞれが別個の実行になります。
最後に、すべてのジョブにはスケジュールが必要です。スケジュールでは、ジョブの実行時期を指定します。ジョブ・システムには、即時実行のジョブを発行する機能、多種多様なスケジューリング・オプションに従って繰り返し実行するジョブを発行する機能など、豊富なスケジューリング機能があります。
ジョブ・タイプは、特定のジョブ・カテゴリで、明確に定義された作業単位を実行します。ジョブ・タイプは名前によって一意に識別されます。たとえば、AppPatchは、Oracleアプリケーション・インストールにパッチを適用するジョブ・タイプです。OSCommandは、リモート・コマンドなどを実行するジョブ・タイプです。
ジョブ・タイプは、ジョブ内のステップ、各ステップで実行する作業(コマンド)およびステップ間の関係を指定するXMLドキュメントによって定義できます。jobType
メタデータ・サービスを使用して、プラグインにジョブ・タイプを含めます。
ジョブ・タイプ定義に加えて、管理エージェントのデプロイの一環として、ジョブ・タイプで参照されるスクリプトをプラグインにパッケージ化する必要があります。
ジョブの定義およびパッケージ化の詳細は、Enterprise Managerプログラマーズ・リファレンスを参照してください。