(57)【要約】【課題】  自動資源プロビジョニング管理システムを管理するための方法、システム、およびコンピュータ・プログラムを提供することにある。【解決手段】  本発明の実施例における方法は、資源プロビジョニング管理システムから複数のプロビジョニング・オペレーションを受けることによって開始する。これらのプロビジョニング・オペレーションの各々は特定のジョブにリンクされる。どのジョブが管理されるべきかに関する決定が行われる。次に、ジョブはグループ化され、ジョブ従属関係が識別される。そこで、ジョブは実行をスケジュールされる。適切な時間に、それらのジョブが呼び出される。ジョブは、それらが実行されているときに監査される。【選択図】  図４
2006313545.tif 000002
【特許請求の範囲】
【請求項１】
データ処理システムにおいて、自動リソース・プロビジョニング管理システムを管理するための方法であって、
リソース・プロビジョニング管理システムから複数のプロビジョニング・オペレーションを受けるステップと、
前記複数のプロビジョニング・オペレーションの各特定のプロビジョニング・オペレーションを複数のワークロード・ジョブにおける対応する特定のワークロード・ジョブにリンクするステップと、
管理されるワークロード・ジョブのセットを前記複数のワークロード・ジョブから指定するステップと、
管理されるワークロード・ジョブの前記セットをグループ化するステップと、
管理されるワークロード・ジョブの前記セットの各ジョブのジョブ従属関係を識別するステップと、
管理されるワークロード・ジョブの前記セットの各ジョブをスケジュールするステップと、
管理されるワークロード・ジョブの前記セットの各ジョブを呼び出すステップと、
管理されるワークロード・ジョブの前記セットの各ジョブを監査するステップと
を含む方法。
【請求項２】
管理されるワークロード・ジョブの前記セットの実時間ステータスを提供するステップを更に含む、請求項１に記載の方法。
【請求項３】
管理されるワークロード・ジョブの前記セットを前記複数のワークロード・ジョブから指定する前記ステップ、管理されるワークロード・ジョブの前記セットをグループ化する前記ステップ、および管理されるワークロード・ジョブの前記セットの各ジョブをスケジュールする前記ステップが管理者によって手操作で修正され得る、請求項１に記載の方法。
【請求項４】
前記管理者が、管理されるワークロード・ジョブの前記セットを前記複数のワークロード・ジョブから指定する前記ステップ、管理されるワークロード・ジョブの前記セットをグループ化する前記ステップ、および管理されるワークロード・ジョブの前記セットの各ジョブをスケジュールする前記ステップを、ジョブ・スケジューラ・コンソールを使用して修正する、請求項３に記載の方法。
【請求項５】
管理されるワークロード・ジョブの前記セットを前記複数のワークロード・ジョブから指定する前記ステップ、管理されるワークロード・ジョブの前記セットをグループ化する前記ステップ、管理されるワークロード・ジョブの前記セットの各ジョブのジョブ従属関係を識別する前記ステップ、管理されるワークロード・ジョブの前記セットの各ジョブをスケジュールする前記ステップ、管理されるワークロード・ジョブの前記セットの各ジョブを呼び出す前記ステップ、および管理されるワークロード・ジョブの前記セットの各ジョブを監査する前記ステップがワークロード・スケジューラによって実行される、請求項１に記載の方法。
【請求項６】
ワークロード・ジョブが失敗したことに応答して、回復ジョブを読み出すステップを更に含む、請求項１に記載の方法。
【請求項７】
請求項１から６のいずれかに記載の方法のステップをコンピュータに実行させるためのコンピュータ・プログラム。
【請求項８】
自動リソース・プロビジョニング管理システムを管理するためのデータ処理システムであって、
リソース・プロビジョニング管理システムから複数のプロビジョニング・オペレーションを受けるための受領機構と、
前記複数のプロビジョニング・オペレーションの各特定のプロビジョニング・オペレーションを複数のワークロード・ジョブにおける対応する特定のワークロード・ジョブにリンクするためのリンク機構と、
管理されるワークロード・ジョブのセットを前記複数のワークロード・ジョブから指定するための指定機構と、
管理されるワークロード・ジョブの前記セットをグループ化するためのグループ化機構と、
管理されるワークロード・ジョブの前記セットの各ジョブのジョブ従属関係を識別するための識別機構と、
管理されるワークロード・ジョブの前記セットの各ジョブをスケジュールするためのスケジュール機構と、
管理されるワークロード・ジョブの前記セットの各ジョブを呼び出すための呼出機構と、
管理されるワークロード・ジョブの前記セットの各ジョブを監査するための監査機構と
を含むデータ処理システム。
【請求項９】
管理されるワークロード・ジョブの前記セットの実時間ステータスを提供するためのステータス機構を更に含む、請求項１３に記載のデータ処理システム。
【請求項１０】
管理されるワークロード・ジョブの前記セットを前記複数のワークロード・ジョブから指定するための前記指定機構、管理されるワークロード・ジョブの前記セットをグループ化するための前記グループ化機構、および管理されるワークロード・ジョブの前記セットの各ジョブをスケジュールするためのスケジュール機構が管理者によって手操作で修正され得る、請求項１３に記載のデータ処理システム。
【請求項１１】
前記管理者が、管理されるワークロード・ジョブの前記セットを前記複数のワークロード・ジョブから指定するための前記指定機構、管理されるワークロード・ジョブの前記セットをグループ化するための前記グループ化機構、および管理されるワークロード・ジョブの前記セットの各ジョブをスケジュールする前記スケジュール機構のオペレーションを、ジョブ・スケジューラ・コンソールを使用して修正する、請求項１５に記載のデータ処理システム。
【請求項１２】
前記指定機構、前記グループ化機構、前記識別機構、前記スケジュール機構、前記呼出機構、および前記監査機構がワークロード・スケジュールの一部である、請求項１３に記載のデータ処理システム。
【請求項１３】
ワークロード・ジョブが失敗したことに応答して、回復ジョブを読み出すための呼出機構を更に含む、請求項１３に記載のデータ処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、総体的には、リソース・プロビジョニング管理（ResourceProvisioning Management : ＲＰＭ）システムに関し、詳しく言えば、自動ＲＭＰシステムを管理するための方法、システム、及びコンピュータ・プログラムに関するものである。
【背景技術】
【０００２】
今日のビジネス環境では、ビジネスは、大量のデータを収集し、それを効率的に使用しなければならない。これは、データ・センタの発展に通じている。データ・センタは、ここ数年にわたって大いに発展してきた。それらは、規模が成長してきたし、ビジネス環境における重要性を獲得してきた。この成長によって、情報技術（ＩＴ）機構が、ベンダ、ハードウェア、ソフトウェア、オペレーティング・システム、構成、及びパッチの複雑な混合体を管理しようとしている。その結果、システムのダウン時間を最小にし且つスタッフの生産性を最大にしながら、構成の変化と足並みを揃えることは益々困難になっている。これらの資源を手操作で管理するためのＩＴ機構及びその担当員における負担は、一般に、その機構のサイズ(ユーザの数)、及びユーザがその機構を結合または残す割合あるいは役割を変更する割合に依存する。効率を改良し、ＩＴ機構及びその担当員における負担を減らすために、ある機構は、タスクのうちのあるものを自動化または部分的に自動化するソフトウェア・アプリケーションを使用している。
【０００３】
ある限定されたタイプの資源をユーザにプロビジョニングすることに関するタスクのあるものを自動化又は部分的に自動化するソフトウェア・アプリケーションが、設定された基準に従って資源をユーザにプロビジョニングするために通信ネットワーク上で動作可能である。そのようなソフトウェア・アプリケーションを使用するシステムを、本願ではＲＰＭシステムと一般的に呼ぶことにする。
【０００４】
しかし、資源をユーザにプロビジョニングするという問題は、要求された変更およびデータ・センタを維持するために必要な更新を手操作で行うことからＩＴ管理者を解放することによって、そのＩＴ管理者を助ける自動リソース・プロビジョニングツールを使っても部分的にしか解決されない。データ・センタ・オペレーションにおける予想されてない成長によって、データ・センタにより管理される種々のターゲット・エンド・ポイントの数が増加している。種々のハードウェアおよびソフトウェア構成に起因する種々の自動プロビジョニング・オペレーションの数も増加している。この増加は、ＩＴ管理者が提供するサービス効率的に改善し、益々複雑なコンピューティング環境におけるコストを下げるために、ＩＴ管理者がこれらのエンド・ポイントおよびプロビジョニング・オペレーションを効率的に管理するという更なる必要性を作り出している。従って、自動ＲＰＭシステムを管理するための方法、システム、およびコンピュータ・プログラムを提供することは有益なことである。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、自動リソース・プロビジョニング管理システムを管理するための方法、システム、およびコンピュータ・プログラムを提供することにある。
【課題を解決するための手段】
【０００６】
本発明の実施例では、その方法は、リソース・プロビジョニング管理システムから複数のプロビジョニング・オペレーションを受けることによって開始する。これらのプロビジョニング・オペレーションの各々は特定のジョブに連携する。どのジョブが管理されるかに関する決定が行われる。次に、ジョブはグループ化され、ジョブ依存性が識別される。そこで、ジョブは実行をスケジュールされる。適切な時間に、それらのジョブが呼び出される。ジョブは、それらが実行されつつあるときに関さされる。
【発明を実施するための最良の形態】
【０００７】
図面を参照すると、図１は、本発明の実施例を実装し得るデータ処理システムのネットワークの概略図を示す。ネットワーク・データ処理システム１００は、本発明の実施例を実装し得るコンピュータのネットワークである。ネットワーク・データ処理システム１００はネットワーク１０２を含み、ネットワーク１０２は、ネットワーク・データ処理システム１００内で接続される種々の装置及びコンピュータの間で通信リンクを提供するために使用される媒体である。ネットワーク１０２は、有線通信リンク、無線通信リンク、または光ファイバ・ケーブルのような接続回線を含み得る。
【０００８】
図示の例では、サーバ１０４が記憶装置１０６と共にネットワーク１０２に接続される。更に、クライアント１０８、１１０、および１１２がネットワーク１０２に接続される。これらのクライアント１０８、１１０、及び１１２は、例えば、個人コンピュータ又はネットワーク・コンピュータであってもよい。図示の例では、サーバ１０４は、ブート・ファイル、オペレーティング・システム・イメージ、及びアプリケーションのようなデータをクライアント１０８〜１１２に提供する。ネットワーク・データ処理システム１００は、更なるサーバ、クライアント、及び図示されてない他の装置を含み得る。図示の例では、ネットワーク・データ処理システム１００は、ネットワーク１０２を用いたインターネットであり、相互に通信するためにプロトコルの伝送制御プロトコル／インターネット・プロトコル（ＴＣＰ／ＩＰ）スウィートを使用するネットワーク及びゲートウェイの世界的な集合体を表す。インターネットの中心には、データ及びネットワークを経路指定する数千の商業コンピュータ・システム、政府機関コンピュータ・システム、教育コンピュータ・システム、および他のコンピュータ・システムを含む、主要ノード又はホスト・コンピュータ相互間の高速度データ通信回線のバックボーンがある。もちろん、ネットワーク・データ処理システム１００は、例えば、イントラネット、ローカル・エリア・ネットワーク（ＬＡＮ）、または広域ネットワーク（ＷＡＮ）のような多くの種々なタイプのネットワークとして実現することも可能である。図１は、１つの例として意図され、本発明の実施例に対する体系上の限定として意図されるものではない。
【０００９】
図２を参照すると、図１におけるサーバ１０４のようなサーバとして実現可能なデータ処理システムのブロック図が、本発明の実施例に従って示される。データ処理システム２００は、システム・バス２０６に接続された複数のプロセッサ２０２及び２０４を含む対称型マルチプロセッサ（ＳＭＰ）システムであってもよい。その代替として、単一プロセッサ・システムを使用することも可能である。更に、ローカル・メモリ２０９に対するインターフェースを提供するメモリ・コントローラ／キャッシュ２０８がシステム・バス２０６に接続される。Ｉ／Ｏバス・ブリッジ２１０がシステム・バス２０６に接続され、Ｉ／Ｏバス２１２に対するインターフェースを提供する。メモリ・コントローラ／キャッシュ２０８およびＩ／Ｏバス・ブリッジ２１０は図示のように統合することも可能である。
【００１０】
Ｉ／Ｏバス２１２に接続されたペリフェラル・コンポーネント・インターコネクト（ＰＣＩ）バス・ブリッジ２１４がＰＣＩローカル・バス２１６に対するインターフェースを提供する。ＰＣＩローカル・バス２１６に、多数のモデムが接続可能である。代表的なＰＣＩバスの実装態様は、４つのＰＣＩ拡張スロット又はアドイン・コネクタをサポートするであろう。図１におけるクライアント１０８〜１１２に対する通信リンクは、アドイン・コネクタを介してＰＣＩローカル・バス２１６に接続されたモデム２１８およびネットワーク・アダプタ２２０によって提供することが可能である。
【００１１】
更なるＰＣＩバス・ブリッジ２２２及び２２４は、更なるモデムまたはネットワーク・アダプタをサポートし得る更なるＰＣＩローカル・バス２２６及び２２８に対するインターフェースを提供する。このように、データ処理システム２００は、複数のネットワーク・コンピュータにへの接続を可能にする。メモリ・マップされたグラフィック・アダプタ２３０及びハード・ディスク２３２も、図示のようにＩ／Ｏバス２１２に直接的に又は間接的に接続することが可能である。
【００１２】
図２に示されたハードウェアが変更可能であることは当業者には明らかであろう。例えば、光ディスク・ドライブ等のような他の周辺装置も、図示のハードウェアのほかに、またはそれの代わりに使用可能である。図示の例は、本発明の実施例に関して体系上の限定を暗示することを意味するものではない。
【００１３】
図２に示されたデータ処理システムは、例えば、アドバンスト・インタラクティブ・エグゼクティブ（ＡＩＸ（商標））オペレーティング・システムまたはＬＩＮＵＸ（商標）オペレーティング・システムを実行する、米国ニューヨーク州アーモンクにおけるインターナショナル・ビジネス・マシーンズ・コーポレーションの製品である IBM eServer pSeries であってもよい。
【００１４】
図３を参照すると、本発明の実施例を実装し得るデータ処理システムを表すブロック図が示される。データ処理システム３００は、クライアント・コンピュータの一例である。データ処理システム３００は、ＰＣＩローカル・バス・アーキテクチャを使用する。図示の例は、アクセラレーテッド・グラフィックス・ポート（ＡＧＰ）及びインダストリ・スタンダード・アーキテクチャ（ＩＳＡ）のような他のバス・アーキテクチャを使用することも可能である。プロセッサ３０２及びメイン・メモリ３０４がＰＣＩブリッジ３０８を介してＰＣＩローカル・バス３０６に接続される。ＰＣＩブリッジ３０８は、プロセッサ３０２に対する統合メモリ・コントローラ及びキャッシュ・メモリも含み得る。直接コンポーネント相互接続またはアドイン・ボードを介してＰＣＩローカル・バス３０６への更なる接続を行うことも可能である。図示の例では、ローカル・エリア・ネットワーク（ＬＡＮ）アダプタ３１０、小型コンピュータ・システム・インターフェース（ＳＣＳＩ）ホスト・バス・アダプタ３１２、および拡張バス・インターフェース３１４が直接コンポーネント接続によってＰＣＩローカル・バス３０６に接続される。対照的に、オーディオ・アダプタ３１６、グラフィックス・アダプタ３１８、及びオーディオ／ビデオ・アダプタ３１９が、拡張スロットに挿入されたアドイン・ボードによってＰＣＩローカル・バス３０６に接続される。拡張バス・インターフェース３１４は、キーボード及びマウス・アダプタ３２０、モデム３２２、及び追加のメモリ３２４に対する接続を提供する。ＳＣＳＩホスト・バス・アダプタ３１２は、ハード・ディスク・ドライブ３２６、テープ・ドライブ３２８、およびＣＤ−ＲＯＭドライブ３３０に対する接続を提供する。代表的なＰＣＩローカル・バス実施態様は、３つ又は４つのＰＣＩ拡張スロット又はアドイン・コネクタをサポートするであろう。
【００１５】
オペレーティング・システムがプロセッサ３０２において稼動し、図３におけるデータ処理システム３００内の種々のコンポーネントの制御を調整および提供するために使用される。オペレーティング・システムは、マイクロソフト・コーポレーションから得られる Windows XP のような商業的に入手可能なオペレーティング・システムであってもよい。Java のようなオブジェクト指向プログラミング・システムがオペレーティング・システムに関連して稼動することも可能であり、データ処理システム３００において実行するJava プログラムまたはアプリケーションからオペレーティング・システムにコールを行うことも可能である。「Java」は、オペレーティング・システムに関するSun Microsystems Inc. の商標であり、オブジェクト指向プログラミング・システム、およびアプリケーション又はプログラムは、ハード・ディスク・ドライブ３２６のような記憶装置に設けられ、プロセッサ３０２による実行のためにメイン・メモリ３０４にロードすることが可能である。
【００１６】
図３におけるハードウェアが実装態様に従って変更可能であることは当業者には明らかであろう。図３に示されたハードウェアに加えて、またはそれの代わりに、フラッシュ・リード・オンリ・メモリ（ＲＯＭ）のような他の内部ハードウェアまたは周辺装置を使用することも可能である。更に、本発明の実施例のプロセスは、マルチプロセッサ・データ処理システムに適用することも可能である。
【００１７】
別の例として、データ処理システム３００が、或るタイプのネットワーク通信インターフェースに依存することなくブート可能であるように構成された独立型システムであってもよい。更なる例として、データ処理システム３００が、オペレーティング・システム・ファイルおよび／またはユーザ生成のデータを記憶するための不揮発性メモリを提供するために、ＲＯＭおよび／またはフラッシュＲＯＭでもって構成されたパーソナル・デジタル・アシスタント（ＰＤＡ）であってもよい。
【００１８】
図３における図示の例および上記の例は、体系的な限定を暗示することを意味するものでない。例えば、データ処理システム３００は、ＰＤＡの形体を取ることに加えて、ノートブック・コンピュータまたはハンド・ヘルド・コンピュータであってもよい。データ処理システム３００は、キオスクまたはウェブ・アプライアンスであってもよい。
【００１９】
本発明の実施例の機構は、データ・センタを自動化する過程で管理されなければならない大量の仕事およびターゲットを処理するために、商業的なワークロード・スケジューリング製品によって使用される技術をてこにしている。プロビジョニング管理は、適切な時間に仕事をディスパッチし、ワークロード間の従属関係、前提条件、および相互必要条件、並びに資源制約を含むエンドポイントに関する制限を識別および管理するために、スケジューラを使用して分散型システムにおいて実行すべき仕事を割り当てることを含む。終了時に、ワークフロー・ステップを形成する分散したプロセスは、それらがタスク所有者による検査を可能にするために実行された、タスクまたはトップ・レベルに戻って相関させる。
【００２０】
データ・センタを操作するとき、多数のオペレーション（動作や動作指示など）が、多種の分散したターゲットに関連して開始および管理される。伝統的なワークロード・マネージャは、制約された資源を用いてあるいは時間制約内でビジネス・タスクを遂行するために、複数の分散したコンピューティング・オペレーションを管理することによって同様の問題セットを処理する。データ・センタの自動化は、分散したワークロード管理のこれら既知の手法を、自動化されているデータ・センタ・タスクの管理に応用することによって達成することが可能である。これらの手法は、複数のパッチを多数の同種のサーバ・ターゲットに適用するタスクおよびそのパッチ適用の結果を相関させるタスクのようなデータ・センタ管理の問題を動的に単純化する。セキュリティ・パッチ管理が益々クリティカルになるので、操作員が各関連のステップの進行、成功、または失敗を決定することができることは不可欠である。
【００２１】
多くの種々のプロビジョニング活動はデータ・センタにおいて行われる。これらは、下記のものを含むことが可能である。
・ターゲットにおいてエージェントをインストールおよび更新する。
・  ソフトウェアをインストール、アンインストール、バックアップ、および回復する。
・  パッチをディスパッチし、更新を適用する。
・  多数のターゲットに対してオペレーティング・システム・イメージをインストール、バックアップ、および回復する。
・  記憶装置の容量を割り当てる。
・  新たなターゲットを見つける。
・  アプリケーションを配置し、テスト環境を設定する。
・  他のプロビジョニング活動。
これらのプロビジョニング活動は自動化されるが、多数のターゲットが管理される一般的なデータ・センタでは、これらの活動すべてを管理および監視することは、特にプロビジョニング順序の従属関係およびワークロードが考慮事項であるときには難しい。
【００２２】
データ・センタによって管理された多くの種類の分散したターゲットに対して多数のプロビジョニング・オペレーションを開始および管理するための手法が使用可能である。これらの手法は、上記のデータ・センタ管理問題をかなり単純化することができ、多数のターゲットを扱うプロビジョニング・オペレーションを管理するための効果的な方法を提供する。分散型ワークロード・スケジューリング・システムは、仕事の処理を自動化し、計画し、そして制御することができる。それは、下記のことができる。
・  ワークロード・プランを可能にする。
・  活動をスケジュールする。
・  ワークロード従属関係性を解決する。
・  仕事を起動し、追跡する。
・  実働ワークロード処理における人的エラーを最小にするためにワークロードの管理を自動化する。
・  ワークロード監視を容易にする。
・  制御の単一点からのローカル・システムおよびリモート・システムにおける作業の流れをじどうかし、監視し、そして制御するように集中システム管理をサポートする。
・  作業の状態、進行、および結果をレポートする。
・  別の方法で作業を処理する。
このような分散型ワークロード・システムは、ＲＰＭと統合された市販のシステムであってもよい。別の実施例では、一般的なワークロード管理アルゴリズムおよび分散型タスク・スケジューラをＲＰＭに直接に統合することも可能である。
【００２３】
ワークロード・スケジューラは、ユーザ、ジョブ・ストリーム、ジョブ、従属関係、時間制限、ターゲット・資源、カレンダ、ワークステーション管理ドメイン、およびデータ・センタプロビジョニング・オペレーションに基づいたビジネス・プロセス・サイクルを含むワークロード・プランを作成する。ワークロード・プランを管理するために、ワークロード・スケジューラは多くのタスクを含み、そのタスクのほとんどが、データ・センタが従属する日常のプロビジョニングタスクである。これらの日常のタスクを管理するために、ワークロード・スケジューラは、ワークロード・プランに関連して作業するタスク・フローも作成する。
【００２４】
例えば、ワークロード・スケジューラは、ネットワークを介したジョブのプロビジョニングをスケジュールしなければならない。プロビジョニングするジョブの１つは、幾つかの前提条件を有するセキュリティ・パッチをＧＲＩＤ（Ｐ２Ｐ）環境における多数のコンピュータ上にディスパッチおよび適用を必要とするものと仮定する。この特定のジョブプロビジョニングは、ターゲット・マシンの現在のパッチ・レベルを検証する他のジョブプロビジョニングに関する従属関係を有する。従って、ワークロード・スケジューラは、指定された日時に基づきネットワーク介してこれらのジョブをスケジュールするために使用することが可能である。ジョブは、機能、アプリケーション、またはターゲットのタイプに従って、グループ化することも可能である。同時に実行可能なジョブの数に関する制限を設定することも可能である。ワークロード・スケジューラは、パッチ・レベル検証ジョブの成功裏の完了、新たなパッチ・ファイルの存在、およびこのプロビジョニングのために必要なすべての関連資源の可用性のような従属関係を識別することによって正しい処理順序を保証する。不成功のプロビジョニング・オペレーションのための自動回復手順も設定することが可能である。例えば、幾つかのＧＲＩＤコンピュータに関する新たなパッチの配置が失敗する場合、非プロビジョニングとなるように設定されたステップがワークロード・スケジューラによって自動的に呼び出されるであろう。
【００２５】
１つの実施例では、ワークロード・スケジューラが作業の状態に関する実時間表示を行う。データ・センタ管理者は、状態に関して照会するためにおよびプロビジョニング・オペレーションにおけるすべての問題を識別するために、この機構を利用することが可能である。
【００２６】
図４は、本発明の実施例に従って、自動化されたＲＰＭシステムを管理するためにワークロード・スケジューラを組み込んだシステムの概略図である。複雑なプロビジョニングプランを実行するために、ワークロード・スケジューラ４０２がデータ・センタ４３０のすべてのプロビジョニング要件に対するワークロード・プラン４０４を作成する。ワークロード・プランは、ユーザ、ジョブ・ストリーム、ジョブ、従属関係、時間制限、ターゲット・資源、カレンダ、ワークステーション、管理ドメイン、ビジネス・プロセス・サイクル、および他の作業関連タスクを含むことが可能である。ワークロード・スケジューラ４０２は、ワークロード・プランを実行するためにタスク・フロー４０６も作成する。図６は、タスク・フローの一例である。タスク・フローは、データ・センタの日常のプロビジョニング要件を管理する場合に非常に有用である。タスク・フロー４０６は、ジョブ・ストリーム４０８を生成する。ジョブ・ストリーム４０８は、ワークロード・ジョブ４１０、４４０、および４５０のような複数のワークロード・ジョブを含むことができる。ワークロード・ジョブの定義は、コマンド・スクリプト、操作員のセキュリティ役割、回復オプション、回復ジョブ、監査ジョブ、現在の状態、資源情報、実行の履歴、およびジョブ定義を含む。ワークロード・ジョブ４１０のような各ワークロード・ジョブは、ＲＰＭ４１４におけるプロビジョニング・オペレーション４１２のようなプロビジョニング・オペレーションに連携される。ＲＰＭシステム４１４は、データ・センタ４３０のための自動化されたリソース・プロビジョニングシステムである。
【００２７】
１つの実施例では、ワークロード操作員または管理者は、ジョブ・ストリームを構成すること、１つまたは複数のジョブを追加または削除すること、カレンダをカスタマイズすること、セキュリティの役割を管理すること、構成パラメータを管理すること、従属関係および資源を管理すること、並びに他の管理オペレーションを実行することによってタスク・フローを管理する。
【００２８】
スケジュールされた時間になると、タスク・フロー４０６が、システム・モニタの制御の下に直接に呼び出される。プロビジョニング・オペレーション４１２を呼び出すコマンドが、この例において表されるように、ライン４１６によってＲＰＭ４１４に送られる。ライン４１６は、プロビジョニング・オペレーション４１２を呼び出しそして実行させる。プロビジョニング・オペレーション４１２が失敗する場合、回復ジョブが、この例において表されるように、ライン４２０によってタスク・フローから呼び出されてＲＰＭシステムにおいて回復活動を実行する。ワークロード・スケジューラ４０２において定義された監査ジョブが、この例において表されるように、ライン４１８によってプロビジョニング・オペレーション４１２の結果を監視及び監査する。その結果はログ４２２に保存される。ジョブ・スケジューラ・コンソール４２４は、すべてのイベントが管理者によって管理されることを可能にする。
【００２９】
図５は、本発明の実施例に従って、図４におけるＲＰＭシステム４１４のような複数の自動化されたＲＰＭシステムを管理するための、図４におけるワークロード・スケジューラ４０２のようなワークロード・スケジューラを組み込んだシステムの概略図である。ワークロード・スケジューラ５０２は、すべてのデータ・センタ５３０、５３２、および５３４のプロビジョニング要件をすべて包含した１つのワークロード・プラン５０４を作成する。ワークロード・スケジューラ５０２は、ワークロード・プラン５０４を実行するためにタスク・フロー５０６も作成する。タスク・フロー５０６は、ジョブ・ストリーム５０８を生じる。ジョブ・ストリーム５０８は、ワークロード・ジョブ５１０、５４０、および５５０のような複数のワークロード・ジョブを含むことが可能である。ワークロード・ジョブ５１０のような各ワークロード・ジョブが、ＲＰＭシステム５１４、５２４、および５２８に対するプロビジョニング・オペレーション５１２、５２２、および５２６のような特定のＲＰＭシステムに対する特定のプロビジョニング・オペレーションに連携する。ＲＰＭシステム５１４、５２４、および５２８は、それぞれ、データ・センタ５３０、５３２、および５３４に対する字土井かされたリソース・プロビジョニングシステムである。
【００３０】
スケジュールされた時間になると、システム・モニタの制御の下に、タスク・フロー５０６が直接に呼び出される。プロビジョニング・オペレーション５１２のようなプロビジョニング・オペレーションを呼び出すコマンドは、ＲＰＭシステム５１４，５２４、および５２８にそれぞれ接続しているライン５１６、５４２、および５４４によって表されるように、ワークロード・ジョブがリンクされた、プロビジョニング・オペレーション５１２を呼び出して実行させる、特定のＲＰＭシステムに送られる。プロビジョニング・オペレーションが失敗した場合、ＲＰＭシステムにおいて回復活動を行うように、この例ではライン５２０によって表されたタスク・フローから、回復ジョブが呼び出される。ワークロード・スケジューラ５０２において定義された監査ジョブが、この例ではライン５１８によって表されるように、プロビジョニング・オペレーションの結果を監視及び監査する。それらの結果はログ５３８に保存される。ジョブ・スケジューラ・コンソール５３６は、すべてのイベントが管理者によって管理されることを可能にする。
【００３１】
別の実施例では、すべてのＲＰＭシステムに対してすべてのタスクを処理する１つタスク・フローを有するのではなく、ワークロード・スケジューラが、各ＲＰＭシステムに対して１つがターゲットにされるような、個別のタスク・フローを生成することも可能である。
【００３２】
次に図６を参照すると、図６は、本発明の実施例に従って、図４におけるタスク・フロー４０４のようなワークロード・スケジューラのタスク・フローのフローチャートである。タスク・フローにおいて取られる正確なステップは、特定に実施態様および使用される特定のワークロード・スケジューラによって変化する。次の例は、インターナショナル・ビジネス・マシーンズ・コーポレーションの製品である Tivoli Workload Scheduler のためのタスク・フローである。その方法は、参照番号６００によって指定され、物理サーバのようなワークステーションを作成することによって開始する（ステップ６０２）。次に、いずれかの必要なユーザが作成される（ステップ６０４）。次に、パラメータが作成される（ステップ６０６）。パラメータは、ユーザとペアにされる必要があり、実施態様によって変化するいずれの属性であってもよい。次に、ジョブをスケジュールするためのカレンダが作成される（ステップ６０８）。ドメインが作成される（ステップ６１０）。ドメインの概念は装置を管理するために使用される。ドメインは装置のグループである。次に、ワークステーションのクラスが作成される（ステップ６１２）。ワークステーションのクラスはワークステーションの活動を制御する。ワークステーションのクラスは、ワークロード・スケジューラによって制御された、データ・センタ、ワークステーションの物理オブジェクトにマップした論理クラス・オブジェクトである。ジョブ定義が作成される（ステップ６１４）。ジョブ定義は、実行される必要がある任意のワークフロー・オペレーションである。ジョブ・ストリームが作成される（ステップ６１６）。ジョブ・ストリームは、ワークフロー・オペレーションを実行するために必要なジョブの集合体である。ジョブ・ストリームは、ジョブおよびそのジョブに対する従属関係を含む。論理的資源・パンフレットが作成される（ステップ６１８）。論理的資源・パンフレットは、どのような資源が使用されようとしているかを示す。ターゲット・オブジェクトが作成される（ステップ６２０）。ターゲット・オブジェクトはジョブを実行しようとしているシステムである。上記のステップは、データ・センタの特定の実施態様およびすべてのプロビジョニングポリシとともに変化する。
【００３３】
ステップ６０４〜６０１４は分散タスクである。ステップ６０２および６１６〜６２０は共通タスクである。共通タスクは、環境および特定資源に従属するタスクである。分散タスクは一般的タスクであり、特定の資源または環境には依存しない。
【００３４】
本発明の実施例は、多くの種類の分散ターゲットに対するプロビジョニング・オペレーションを管理するというような、およびその結果を相関させるような、データ・センタ管理の多くの問題を劇的に簡素化する。本発明の実施例は、多数のターゲットを扱うプロビジョニング・オペレーションを管理するための効率的な方法を提供する。
【００３５】
十分に機能するデータ処理システムに関連して本発明の実施例を説明したが、本発明の実施例のプロセスがコンピュータ使用可能な命令媒体の形式で及び種々の形式で分配され得ること、および本発明の実施例が、その分配を実行するために実際に使用される特定のタイプの信号保持媒体に関係なく等しく適用することが当業者には明らかであろう、ということに留意することが重要である。コンピュータが使用し得る媒体の例は、フロッピ・ディスク、ハード・ディスク・ドライブ、ＲＡＭ、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭのような記録可能タイプの媒体、および、デジタル／アナログ通信リンク、例えば無線周波数伝送および光波伝送のような伝送形式を使用する有線または無線通信リンクのような伝送タイプの媒体を含む。コンピュータ使用可能媒体は、特定のデータ処理システムにおいて実際に使用するためにデコードされるコード化フォーマットの形式を取り得る。
【００３６】
例示及び説明の目的で本発明の実施例を開示したが、それは、網羅的であること、及び開示された形式の実施例に限定することを意図するものではない。当業者にとっては、多くの修正及び変更が明らかであろう。この実施例は、本発明の原理及び実用的な応用を最もよく説明するために、及び当業者が、特定の意図した用途に適するよう、種々の修正を伴った種々の実施例に関して本発明を理解することを可能にするために、選択及び開示された。
【図面の簡単な説明】
【００３７】
【図１】本発明の実施例を実装し得るデータ処理システムのネットワークの概略図である。
【図２】本発明の実施例に従って、サーバとして実装し得るデータ処理システムのブロック図である。
【図３】本発明を実装し得るデータ処理システムを示すブロック図である。
【図４】本発明の実施例に従って、自動ＲＰＭシステムを管理するためにワークロード・スケジューラを組み込んだシステムの概略図である。
【図５】本発明の実施例に従って、複数の自動ＲＰＭシステムを管理するためにワークロード・スケジューラを組み込んだシステムの概略図である。
【図６】本発明の実施例によるワークロード・スケジューラのタスク・フローのフローチャートである。
【図１】
2006313545.tif 000003
【図２】
2006313545.tif 000004
【図３】
2006313545.tif 000005
【図４】
2006313545.tif 000006
【図５】
2006313545.tif 000007
【図６】
2006313545.tif 000008