JP4954089B2 - グリッド・アクティビティのモニタリングおよび振り分けによる総合的グリッド環境管理を促進する方法、システム、およびコンピュータ・プログラム - Google Patents

グリッド・アクティビティのモニタリングおよび振り分けによる総合的グリッド環境管理を促進する方法、システム、およびコンピュータ・プログラム Download PDF

Info

Publication number
JP4954089B2
JP4954089B2 JP2007549849A JP2007549849A JP4954089B2 JP 4954089 B2 JP4954089 B2 JP 4954089B2 JP 2007549849 A JP2007549849 A JP 2007549849A JP 2007549849 A JP2007549849 A JP 2007549849A JP 4954089 B2 JP4954089 B2 JP 4954089B2
Authority
JP
Japan
Prior art keywords
grid
activity
real
workload
environment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2007549849A
Other languages
English (en)
Other versions
JP2008527514A (ja
JP2008527514A5 (ja
Inventor
フェレンスタイン、クレイグ、ウィリアム
ハミルトン、リック、アレン、セカンド
ジョセフ、ジョシー
シーマン、ジェイムス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2008527514A publication Critical patent/JP2008527514A/ja
Publication of JP2008527514A5 publication Critical patent/JP2008527514A5/ja
Application granted granted Critical
Publication of JP4954089B2 publication Critical patent/JP4954089B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3433Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3495Performance evaluation by tracing or monitoring for systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3442Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for planning or managing the needed capacity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、一般に、改良されたグリッド・コンピューティングに関し、特に、グリッド・コンピューティング環境の中の自動ワークロード・パフォーマンス・コントローラの調整に関する。さらに詳細には、本発明は、異種のグリッド資源グループから収集されたグリッド・アクティビティに基づいて決定を行う複数の決定グリッド・モジュールによる自動グリッド・ワークロード・パフォーマンス保守の促進に関する。
初めて2つのコンピュータ・システムの間で接続が行われて以来、接続を介して2つのコンピュータ・システム間のデータ、資源、および他の情報を送受信する新しい方法が開発され続けている。典型的なネットワーク・アーキテクチャでは、2つのコンピュータ・システムが、接続を介してデータを交換しているとき、コンピュータ・システムの一方は、要求を送出するクライアントとみなされ、もう片方は、要求を処理して、結果を返すサーバとみなされる。要求の処理速度を向上させる取り組みにおいて、サーバ・システムの規模および速度は、拡大し続けている。さらに、複数の要求が刻々と到来してくる最高使用期間を処理する取り組みにおいて、サーバ・システムは、多くの場合グループとして結合され、要求は、グループ化されたサーバ間で振り分けられる。クラスタリング、マルチ・システム共用データ(シスプレックス)環境、および企業システムのようなサーバをグループ化する複数の方法が開発された。サーバのクラスタでは、通常、入ってくる要求および出て行く応答の振り分けを管理するために1つのサーバが指定される。通常、他のサーバは、クライアントから振り分けられた要求を処理するために並行して作動する。その結果、サーバのクラスタが要求を処理していることをクライアントが検知することなしに、クラスタ内の複数のサーバのうちの1つが、クライアント要求を提供することができる。
通常、サーバ、またはサーバのグループは、Unix(登録商標)、またはUnixの何らかの変形のような特定のネットワーク・プラットフォーム上で作動し、アプリケーションを実行するホスティング環境を提供する。各ネットワーク・プラットフォームは、データベース統合、クラスタリング・サービス、およびセキュリティから、作業負荷管理および問題判別まで多岐にわたる機能を提供できる。通常、各ネットワーク・プラットフォームは、異なった実装方法、意味論的振る舞い(semantic behaviors)、およびアプリケーション・プログラミング・インタフェース(API)を提供する。
しかしながら、処理能力を拡張するために単にサーバを共にグループ化することは、ネットワーク内の応答時間の効率を向上させる限定的な方法である。その結果、会社のネットワークの中において、サーバをただ単にグループ化するよりむしろ、サーバ、およびサーバ・システムのグループが、ますます分散資源として組織化されることになる。協働し、データを共有し、サイクルを共有し、会社のネットワークの中のサーバ間の、および会社のネットワークの外のサーバ間の他の形態のインタラクションを改善する取り組みが高まっている。さらに、本質的でない要素を1つの会社のネットワークからサービス・プロバイダ・ネットワークへとアウトソーシングする取り組みが増えている。さらに、同じ管理システムに従ってはいないが、セキュリティ、ポリシー、ペイメント、およびメンバーシップの問題に対処する資源の間で、資源共有を調整する動きがある。例えば、通常、個人のデスクトップ上の資源は、会社のサーバのクラスタの資源と同じ管理システムには従わない。会社のネットワークの中の異なった管理グループでさえ、異なった管理システムを実行できる。
異なったネットワーク・プラットフォーム上で作動するサーバおよび他のコンピューティング・システムから利用可能であり、異なった領域内にあり、異なったセキュリティ・プロトコルを有し、かつそれぞれ異なった管理システムにより制御される資源の分散化に関連する問題は、グリッド環境を作動させるオープン・スタンダードを用いたグリッド技術の開発につながった。グリッド環境は、動的な分散型のバーチャル・オーガニゼーション内の多様な資源の共用および連携使用をサポートする。異なったポリシーおよび管理システムを有する異なったオーガニゼーションで作動される地域的に分散されたシステムからの資源の選択が、ジョブ要求を処理するために組織化されるとき、バーチャル・オーガニゼーションが、グリッド環境の中に作成される。
サーバのクラスタ、または他のグループを、グリッド環境の中に分類できるが、グリッド技術は、異なった規格を有する異なった管理システムで管理される資源のグループ間の通信を提供するためのすべての問題を解決するわけではない。特に、グリッド技術に関連する現在の問題は、システムの各グループを既にモニタするツールおよびシステムの制限である。特に、標準のパフォーマンス・モニタの制限は、これらのモニタがハードウェア資源の種類に基づいて資源を分類することである。例えば、第1の監視ツールは、pSeries(登録商標)・マシンをモニタでき、第2の監視ツールは、zSeries(登録商標)・マシンとして分類されたシステムをモニタする(pSeriesおよびzSeriesは、インターナショナル・ビジネス・マシーンズ・コーポレーション(International Business Machines Corporation)社の登録商標である)。ハードウェア資源に基づいて資源を分類する結果、これらの監視ツールは、ハードウェア・レベルのパフォーマンスのモニタ結果に限定される。さらに、ハードウェア資源に基づいて資源を分類する結果、これらの監視ツールは、ハードウェア資源上で実行されるプロトコルの使用に制約されるため、通常、監視ツール間の通信を直接的にはサポートしていない。
システムのクラスタおよび他のグループが、グリッド環境に分散されるため、単にハードウェア・レベルよりむしろ、アプリケーション・レベルにおける異種のハードウェアおよびソフトウェア・プラットフォーム全体にわたってグリッド・ベース・アクティビティを追跡することと、単に特定のハードウェア環境よりむしろ、ハードウェア、ソフトウェア、およびネットワーク資源を含む全体のグリッド環境にわたってグリッド・ジョブおよびグリッド・ワークロードのバランスをとることとが有利であろう。その結果、グリッド環境の中で、全体のグリッド環境にわたってパフォーマンスおよび他のアクティビティをモニタすることと、現在のグリッド・アクティビティで影響を受けるモジュールに対して、そのグリッド・アクティビティの振り分けを調整することとが有利であろう。
上記に照らして、本発明は、一般に、グリッド・コンピューティングを改良し、特に、グリッド・コンピューティング環境の中の自動ワークロード・パフォーマンス・コントローラを調整する。さらに詳細には、本発明は、異種のグリッド資源グループから収集されたグリッド・アクティビティに基づく複数の決定グリッド・モジュールによる自動グリッド・ワークロード・パフォーマンスの調整に関する。
一実施形態に基づいて、コンピュータ・グリッド環境の中のグリッド・ワークロード・コントローラは、複数の異種のグリッド・アプリケーション環境からのアプリケーション・レベルにおけるリアルタイム・グリッド・アクティビティをモニタする。その後、グリッド・ワークロード・コントローラは、コンピュータ・グリッド環境の管理についての決定を行うためにリアルタイム・グリッド・アクティビティを要求するコンピュータ・グリッド環境の中のグリッド・モジュールの選択を決定する。グリッド・ワークロード・コントローラは、グリッド・モジュールの選択に対してリアルタイム・グリッド・アクティビティを振り分け、その後、グリッド・モジュールの選択がグリッド環境の中で自動決定を行い、パフォーマンス要件を保持する。
リアルタイム・グリッド・アクティビティは、新たに予定されたグリッド・ジョブ、現在実行処理中のグリッド・ジョブ、将来のジョブ・スケジュール、現在の価格設定スケジュール、将来の価格設定スケジュール、現在の資源利用性、および予測される資源利用性のようなデータを含みうる。さらに、リアルタイム・グリッド・アクティビティは、決定グリッド・モジュールにより決定されたコマンドまたは命令を含みうる。グリッド・モジュールは、例えば、グリッド資源割り当てモジュール、グリッド資源マネージャ・モジュール、グリッド処分モジュール、グリッド・ディスカウンタ・モジュール、グリッド課金処理モジュール、およびグリッド価格設定モジュールを含みうる。
複数の異種のグリッド・アプリケーション環境からのリアルタイム・グリッド・アクティビティをモニタする際に、グリッド・ワークロード・コントローラは、グリッド・ワークロード・コントローラにより使用される特定のプロトコルに適合することを要求する複数のプロトコル内にグリッド・アクティビティを受信できる。グリッド・アクティビティを適合させることに加えて、グリッド・ワークロード・コントローラは、グリッド・アクティビティの中のグリッド特性の種類に基づいて、およびどのグリッド・アプリケーション環境またはモジュールがグリッド・アクティビティを送出するかに基づいて、グリッド・アクティビティを除外できる。さらに、グリッド・ワークロード・コントローラは、自動的にグリッド・アクティビティを受信でき、またはグリッド・ワークロード・コントローラは、リアルタイム・グリッド・アクティビティについて資源マネージャ・モジュールに問い合わせることができ、各資源マネージャ・モジュールは、複数の異種のグリッド・アプリケーション環境の中の1つに対して割り当てられた資源ノードの分類の少なくとも1つのリアルタイム・パフォーマンス特性を追跡する。
リアルタイム・グリッド・アクティビティを要求するグリッド・モジュールの選択を決定する際に、グリッド・ワークロード・コントローラは、どの種類のグリッド・アクティビティが、どの種類のグリッド・モジュールに影響を及ぼしうるかを示す振り分け規則に基づいてグリッド・アクティビティをフィルタリングできる。振り分け規則は、例えば、システム管理者または自動決定コントローラにより設定されうる。
第1の態様から見ると、本発明は、グリッド・ワークロード・コントローラで、コンピュータ・グリッド環境の中の複数の異種のグリッド・アプリケーション環境からのアプリケーション・レベルにおけるリアルタイム・グリッド・アクティビティをモニタするステップと、前記コンピュータ・グリッド環境の管理についての決定を行うために前記リアルタイム・グリッド・アクティビティを要求するグリッド・モジュールの選択を決定するステップと、前記グリッド・ワークロード・コントローラから、前記リアルタイム・グリッド・アクティビティを、グリッド・モジュールの前記選択に振り分けるステップとを含み、グリッド・モジュールの前記選択が前記グリッド環境の中で自動決定を行い、前記コンピュータ・グリッド環境の中のワークロード・パフォーマンス要件を保持する、グリッド環境の中の作業負荷を管理するコンピュータで実行される方法を提供する。
本発明は、グリッド・ワークロード・コントローラで、コンピュータ・グリッド環境の中の複数の異種のグリッド・アプリケーション環境からのアプリケーション・レベルにおけるリアルタイム・グリッド・アクティビティをモニタするステップが、さらに、前記グリッド・ワークロード・コントローラで、前記グリッド・ワークロード・コントローラにより使用される特定のプロトコルに適合することを要求する複数のプロトコル内に受信される前記リアルタイム・グリッド・アクティビティをモニタするステップを含む、作業負荷を管理する方法を提供することが好ましい。
本発明は、グリッド・ワークロード・コントローラで、コンピュータ・グリッド環境の中の複数の異種のグリッド・アプリケーション環境からのアプリケーション・レベルにおけるリアルタイム・グリッド・アクティビティをモニタするステップが、さらに、前記グリッド・ワークロード・コントローラで、前記リアルタイム・グリッド・アクティビティの中の複数の種類のグリッド特性を受信するステップと、複数のモニタ規則に基づいて、前記リアルタイム・グリッド・アクティビティの中の前記複数の種類のグリッド特性をフィルタリングするステップとを含み、前記複数のモニタ規則が、前記複数の種類のグリッド特性の選択と、前記複数の異種のグリッド・アプリケーション環境の選択とを規定し、この前記複数の異種のグリッド・アプリケーション環境から前記リアルタイム・グリッド・アクティビティが収納される、作業負荷を管理するコンピュータで実行される方法を提供することが好ましい。
本発明は、グリッド・ワークロード・コントローラで、コンピュータ・グリッド環境の中の複数の異種のグリッド・アプリケーション環境からのアプリケーション・レベルにおけるリアルタイム・グリッド・アクティビティをモニタするステップが、さらに、前記リアルタイム・グリッド・アクティビティについて複数のマネージャ・モジュールに問い合わせるステップを含み、前記複数のマネージャ・モジュールの各々が、前記コンピュータ・グリッド環境の中の前記複数の異種のグリッド・アプリケーション環境のうちの1つに割り当てられた資源ノードの分類の少なくとも1つのリアルタイム・パフォーマンス特性を追跡する、作業負荷を管理するコンピュータで実行される方法を提供することが好ましい。
本発明は、前記コンピュータ・グリッドの管理についての決定を行うために前記リアルタイム・グリッド・アクティビティを要求するグリッド・モジュールの選択を決定するステップが、さらに、システム管理者および自動決定コントローラの中の少なくとも1つにより設定される複数の振り分け規則を介して、前記リアルタイム・グリッド・アクティビティをフィルタリングするステップを含む、作業負荷を管理するコンピュータで実行される方法を提供することが好ましい。
本発明は、前記リアルタイム・グリッド・アクティビティが、ジョブ要求の受信、保留中のジョブ提供、新たに予定されたグリッド・ジョブ、現在実行処理中のグリッド・ジョブ・パフォーマンス、将来のジョブ・スケジュール、現在の価格設定スケジュール、将来の価格設定スケジュール、現在の資源利用性、および予測される資源利用性の中の少なくとも1つについてのデータを含む、作業負荷を管理するコンピュータで実行される方法を提供することが好ましい。
本発明は、グリッド・モジュールの前記選択が、グリッド資源割り当てモジュール、グリッド処分モジュール、グリッド・ディスカウンタ・モジュール、グリッド課金処理モジュール、およびグリッド価格設定モジュールの中の少なくとも1つを含む、作業負荷を管理するコンピュータで実行される方法を提供することが好ましい。
本発明は、前記グリッド・ワークロード・コントローラがグリッド・サービスである、作業負荷を管理する方法を提供することが好ましい。
第2の態様から見ると、本発明は、コンピュータ・グリッド環境の中に実現されるグリッド・ワークロード・コントローラを含み、前記グリッド・ワークロード・コントローラは、前記コンピュータ・グリッド環境の中の複数の異種のグリッド・アプリケーション環境からのアプリケーション・レベルにおけるリアルタイム・グリッド・アクティビティをモニタする手段と、前記コンピュータ・グリッド環境の管理についての決定を行うために前記リアルタイム・グリッド・アクティビティを要求するグリッド・モジュールの選択を決定する手段と、前記リアルタイム・グリッド・アクティビティを、グリッド・モジュールの前記選択に振り分ける手段とを含み、グリッド・モジュールの前記選択が前記グリッド環境の中で自動決定を行い、前記コンピュータ・グリッド環境の中のワークロード・パフォーマンス要件を保持する、グリッド環境の中の作業負荷を管理するシステムを提供する。
本発明は、前記コンピュータ・グリッド環境の中の複数の異種のグリッド・アプリケーション環境からのアプリケーション・レベルにおけるリアルタイム・グリッド・アクティビティをモニタする前記手段が、さらに、前記グリッド・ワークロード・コントローラにより使用される特定のプロトコルに適合することを要求する複数のプロトコル内に受信される前記リアルタイム・グリッド・アクティビティをモニタする手段を含む、作業負荷を管理するシステムを提供することが好ましい。
本発明は、前記コンピュータ・グリッド環境の中の複数の異種のグリッド・アプリケーション環境からのアプリケーション・レベルにおけるリアルタイム・グリッド・アクティビティをモニタする前記手段が、さらに、前記グリッド・ワークロード・コントローラで、前記リアルタイム・グリッド・アクティビティの中の複数の種類のグリッド特性を受信する手段と、複数のモニタ規則に基づいて、前記リアルタイム・グリッド・アクティビティの中の前記複数の種類のグリッド特性をフィルタリングする手段とを含み、前記複数のモニタ規則が、前記複数の種類のグリッド特性の選択と、前記複数の異種のグリッド・アプリケーション環境の選択とを規定し、この前記複数の異種のグリッド・アプリケーション環境から前記リアルタイム・グリッド・アクティビティが収納される、作業負荷を管理するシステムを提供することが好ましい。
本発明は、前記コンピュータ・グリッド環境の中の複数の異種のグリッド・アプリケーション環境からのアプリケーション・レベルにおけるリアルタイム・グリッド・アクティビティをモニタする前記手段が、さらに、前記リアルタイム・グリッド・アクティビティについて複数のマネージャ・モジュールに問い合わせる手段を含み、前記複数のマネージャ・モジュールの各々が、前記コンピュータ・グリッド環境の中の前記複数の異種のグリッド・アプリケーション環境のうちの1つに割り当てられた資源ノードの分類の少なくとも1つのリアルタイム・パフォーマンス特性を追跡する、作業負荷を管理するシステムを提供することが好ましい。
本発明は、前記コンピュータ・グリッドの管理についての決定を行うために前記リアルタイム・グリッド・アクティビティを要求するグリッド・モジュールの選択を決定する前記手段が、さらに、システム管理者および自動決定コントローラの中の少なくとも1つにより設定される複数の振り分け規則を介して、前記リアルタイム・グリッド・アクティビティをフィルタリングする手段を含む、作業負荷を管理するシステムを提供することが好ましい。
本発明は、前記リアルタイム・グリッド・アクティビティが、ジョブ要求の受信、保留中のジョブ提供、新たに予定されたグリッド・ジョブ、現在実行処理中のグリッド・ジョブ・パフォーマンス、将来のジョブ・スケジュール、現在の価格設定スケジュール、将来の価格設定スケジュール、現在の資源利用性、および予測される資源利用性の中の少なくとも1つについてのデータを含む、作業負荷を管理するシステムを提供することが好ましい。
本発明は、グリッド・モジュールの前記選択が、グリッド資源割り当てモジュール、グリッド処分モジュール、グリッド・ディスカウンタ・モジュール、グリッド課金処理モジュール、およびグリッド価格設定モジュールの中の少なくとも1つを含む、作業負荷を管理するシステムを提供することが好ましい。
本発明は、前記グリッド・ワークロード・コントローラがグリッド・サービスである、作業負荷を管理するシステムを提供することが好ましい。
第3の態様から見ると、本発明は、コンピュータ上で実行されるとき、上述したような本発明を達成するために実行するソフトウェア・コード部を含む、デジタル・コンピュータの内部メモリにロードできるコンピュータ・プログラムを提供する。
ここで図面、特に図1を参照すると、グリッド環境内で実施されうるコンピュータ・システムの一実施形態が示されており、このコンピュータ・システムの一実施形態において、本発明は実現されうる。さらに説明するように、グリッド環境は、資源を提供するために管理される複数のコンピュータ・システムを含む。加えて、さらに説明するように、本発明は、様々なコンピューティング・システム、移動システム、およびグリッド環境の中で管理された多くの異なるオペレーティング・システムの下で作動する電子デバイスを含む様々なコンピュータ・システムで実行されうる。
一実施形態では、コンピュータ・システム100は、コンピュータ・システム100の中で情報を伝えるバス122または他のデバイス、および情報を処理するためにバス122に結合されたプロセッサ112のような少なくとも1つの制御演算装置を含む。バス122は、ブリッジおよびアダプタにより接続され、かつコンピュータ・システム100の中で複数のバス・コントローラにより制御される低レイテンシおよび高レイテンシ・パスを含みうる。サーバ・システムとして実行されるとき、通常、コンピュータ・システム100は、ネットワーク・サービス能力を改善するように設計されたマルチ・プロセッサを含む。
プロセッサ112は、正常動作時に、ランダム・アクセス・メモリ(RAM)114のような動的記憶デバイスおよび読み出し専用メモリ(ROM)116のような静的記憶デバイスからアクセス可能なオペレーティング・システムおよびアプリケーション・ソフトウェアの制御の下にデータを処理するIBM(インタナショナル・ビジネス・マシーンズ・コーポレーション)社のPowerPC(登録商標)プロセッサのような汎用プロセッサでありうる。オペレーティング・システムは、利用者に対してグラフィカル・ユーザ・インタフェース(GUI)を提供できる。一実施形態では、アプリケーション・ソフトウェアは、プロセッサ112上で実行処理されるとき、図7のフローチャートに示した動作、および本明細書に説明した他の動作を実行する機械実行可能命令を含む。あるいは、本発明のステップは、ステップを実行する配線論理を含む特定のハードウェア・コンポーネントで、またはプログラムされたコンピュータ・コンポーネント、およびカスタム・ハードウェア・コンポーネントの任意の組み合わせで実行されうる。
本発明は、コンピュータ・システム100をプログラミングして、本発明に基づくプロセスを実行するために使用される機械実行可能命令を保存した機械可読媒体上に含まれるコンピュータ・プログラムとして提供されうる。本明細書に使用したような用語「機械可読媒体」は、プロセッサ112または実行処理用のコンピュータ・システム100の他のコンポーネントに命令を提供することに関係する任意の媒体を含む。このような媒体は、不揮発性媒体、揮発性媒体、および伝送媒体を含む多数の形態を取りうるが、これらに限らない。不揮発性媒体の一般的な形態としては、例えば、フロッピー・ディスク、フレキシブル・ディスク、ハード・ディスク、磁気テープまたは他の任意の磁気媒体、コンパクト・ディスクROM(CD−ROM)または他の任意の光学媒体、パンチ・カードまたは穿孔パターンを有する他の任意の物理的媒体、プログラマブルROM(PROM)、消去可能PROM(EPROM)、電気的EPROM(EEPROM)、フラッシュ・メモリ、他の任意のメモリ・チップまたはカートリッジ、もしくはコンピュータ・システム100が読み取ることができ、かつ命令の保存に適した他の任意の媒体などがある。本実施形態では、不揮発性媒体の例は、図示したようなコンピュータ・システム100の内部コンポーネントである大容量記憶デバイス118であるが、また、外部デバイスにより提供されることも理解されるであろう。揮発性媒体は、RAM114のような動的メモリを含む。伝送媒体は、バス122を有する電線を含む、同軸ケーブル、銅線、または光ファイバを含む。また、伝送媒体は、無線周波数または赤外線通信時に生成されるような音波または光波の形態を取りうる。
さらに、本発明は、コンピュータ・プログラムとしてダウンロードされることも可能であり、プログラム命令が、バス122に結合された通信インタフェース132へのネットワーク・リンク134(例えば、モデムまたはネットワーク接続など)を介して、搬送波または他の伝搬媒体内に具現されたデータ信号により、仮想リソース160のようなリモート仮想リソースから、要求元のコンピュータ・システム100に転送されうる。仮想リソース160は、単一システムまたはシステムからアクセス可能な資源の仮想表示を含むことができ、複数システムは、それぞれ独自のプラットフォーム上で作動する個々の資源の集合とみなされうるが、グリッド・マネージャにより仮想リソースとして調整されうる。通信インタフェース132は、例えば、ネットワーク102へのアクセスを提供するローカル・エリア・ネットワーク(LAN)、広域ネットワーク(WAN)、またはインターネット・サービス・プロバイダ(ISP)に接続されうるネットワーク・リンク134に対する双方向データ通信カップリングを提供する。特に、ネットワーク・リンク134は、ネットワーク102のような1つ以上のネットワークに対する有線および無線ネットワーク通信、もしくは、有線または無線ネットワーク通信を提供でき、このネットワーク102を介して、仮想リソース160のような仮想リソースの使用が、グリッド環境150の中に与えられているように、利用しやすくなる。グリッド環境150は、ピア・ツー・ピア・ネットワークを含む複数の種類のネットワークの一部、またはコンピュータ・システム100のような単一のコンピュータ・システムの一部でありうる。
一実施例として、ネットワーク102は、相互に通信するために、伝送制御プロトコル(TCP)およびインターネット・プロトコル(IP)のような特定のプロトコルを使用するネットワークおよびゲートウェイの世界的な集合を示しうる。ネットワーク102は、デジタル・データ・ストリームを運ぶ電気信号、電磁信号、または光信号を使用する。デジタル・データを、コンピュータ・システム100へ運ぶ、およびコンピュータ・システム100から運ぶ、様々なネットワークを介する信号、ならびにネットワーク・リンク134上にあり、かつ通信インタフェース132を介する信号は、情報を搬送する搬送波の模範的形態である。他の種類のネットワーク、他の組み合わせのネットワーク、および他のインフラストラクチャのネットワークを実行できることが理解されるであろう。
サーバ・システムとして実行されるとき、通常、コンピュータ・システム100は、入出力制御装置に接続される複数の周辺コンポーネント相互接続(PCI)バス・ブリッジを介してアクセス可能な複数の通信インタフェースを含む。このように、コンピュータ・システム100は、複数のネットワーク・コンピュータに対する接続を可能とする。
さらに、図示されていないが、複数のコントローラと、アダプタと、バス122の複数のレベルのうちの1つに結合される拡張スロットとに接続される複数の周辺コンポーネント、および内部/外部デバイスが、コンピュータ・システム100に付加されうる。例えば、表示装置、オーディオ・デバイス、キーボード、またはカーソル制御デバイスが、周辺コンポーネントとして付加されうる。
当業者は、図1に示したハードウェアが変化しうることを理解するであろう。さらに、当業者は、図示した例は、本発明についてのアーキテクチャの制限を示すものではないことを理解するであろう。
ここで図2を参照すると、ブロック図は、グリッド環境の中の一般型のコンポーネントの一実施形態を示す。本実施例では、グリッド環境150のコンポーネントは、グリッド管理システム240と連動するクライアント・システム200を含み、このグリッド管理システム240は、サーバ・クラスタ222、サーバ224、ワークステーションおよびデスクトップ226、データ記憶システム228、およびネットワーク230と連動する。例示の目的上、グリッド環境150の中のコンポーネントを接続するネットワーク位置およびネットワークの種類は、図示されていない。しかしながら、グリッド環境150の中のコンポーネントは、相互に重なり合った複数の種類のネットワークで実現されうるネットワーク・インフラストラクチャ・アーキテクチャの上に存在しうることが理解されるであろう。ネットワーク・インフラストラクチャは、複数の大企業システムから、単一のコンピュータ・システムに対するピア・ツー・ピア・システムまで多岐にわたりうる。さらに、グリッド環境150の中のコンポーネントは、単にグリッド環境の中のコンポーネントの種類の説明に過ぎないことが理解されるであろう。グリッド環境は、単純に、単一のコンピュータ・システム内に含まれる場合もあり、または複数の企業のシステムを含む場合もある。さらに、グリッド・ベンダーは、グリッド環境150を提供でき、グリッド・ベンダーは、例えば、グリッド・ジョブを実行するために要する時間、または使用される資源の実際の量に基づいて、グリッド環境150の中の資源の使用の費用を計算できることが理解されるであろう。
グリッド環境150のようなグリッド環境の主要な目標は、仮想リソース160とみなされる複数の離散的システムからの資源の組織化および配信である。クライアント・システム200、サーバ・クラスタ222、サーバ224、ワークステーションおよびデスクトップ226、データ記憶システム228、ネットワーク230、およびグリッド管理システム240を作るシステムは、異種であり、独自の管理システムと共に地域に振り分けられうるが、グリッド管理システム240により可能にされたグリッド・インフラストラクチャを介して、情報、資源、およびサービスを交換できるようにされうる。さらに、サーバ・クラスタ222、サーバ224、ワークステーションおよびデスクトップ226、データ記憶システム228、およびネットワーク230は、国および大陸全体にわたって地理的に分散されたり、または局所的に相互にアクセス可能な場合もある。仮想リソース160の中のグリッド資源の発見の機構については、本明細書に記述されていないが、グリッド環境150の中で利用可能な小域的および世界的規模のディレクトリで公示されるため、クライアント・システム200は、仮想リソース160の中の資源を発見できることが理解されるであろう。
本実施例では、クライアント・システム200は、グリッド管理システム240と連動する。クライアント・システム200は、グリッド管理システム240に要求を送出する任意のコンピューティング・システムを代表することができる。特に、クライアント・システム200は、グリッド管理システム240に対して仮想ジョブ要求およびジョブを送出でき、グリッド管理システム240は、グリッド提供で呼応でき、かつグリッド・ジョブの処理を制御する。さらに、本実施形態では、クライアント・システム200は、要求によりグリッド環境150にアクセスするように示されているが、他の実施形態では、クライアント・システム200は、グリッド環境150の中でも作動できる。
仮想リソース160の中のシステムは、並列に図示されているが、実際には、システムは、システムの階層の一部であってもよく、仮想リソース160の中のいくつかのシステムは、クライアント・システム200に対してローカルであり、一方、他のシステムは、外部ネットワークへのアクセスを要する場合もある。さらに、クライアント・システム200は、物理的に、仮想リソース160の中に示したシステムを含みうることに注意することが重要である。
グリッド環境150を実行するために、グリッド管理システム240は、グリッド・サービスを促進する。グリッド・サービスは、オープン・グリッド・サービス・アーキテクチャ(OGSA)を含むが、これに限定されない複数のアーキテクチャに基づいて設計されうる。特に、グリッド管理システム240は、グリッド・サービスを介して資源を共有することを特徴とする異種ネットワーク環境にコンピューティング・システムをリンクすることによりグリッドを作成する管理環境を示す。
一実施例では、グリッド管理システム240は、グリッド環境150の中のグリッド・アクティビティをモニタするグリッド・サービスを実行する複数のグリッド・モジュールを含みうる。グリッド・アクティビティは、グリッド・ジョブ要求の受信、クライアントに送出されたグリッド・ジョブ提供、新たに予定されたグリッド・ジョブ、現在実行処理中のグリッド・ジョブ、現在および将来のグリッド価格設定、グリッド価格設定の調整、仮想リソース160の中の現在および将来予測される作業負荷、ならびに仮想リソース160の中の資源の現在および将来の割り当ておよび割り当て解除を含みうるが、これらに限らない。一実施形態では、グリッド・アクティビティは、グリッド環境150のリアルタイムの状態を示すが、他の実施形態では、グリッド・アクティビティをモニタして、報告するグリッド・モジュールは、報告を遅らせることがありうる。グリッド・モジュールは、現在および将来のパフォーマンスをモニタするモニタ・サービス、作業負荷、およびパフォーマンス要件を保持するためにグリッド環境150の中の意志決定を自動化する価格設定および決定サービスを含みうるが、これらに限らない。
本発明の利点に基づいて、グリッド管理システム240は、複数のグリッド・モジュール全体からグリッド・アクティビティを収集し、その後、グリッド・アクティビティの影響を受けるそれらのグリッド・モジュールに対して、グリッド・アクティビティを振り分ける集中されたグリッド・ワークロード・エージェントを含みうる。例えば、グリッド・ワークロード・エージェントは、ハードウェア資源の選択の全体にわたる現在の作業負荷を示すデータを1つのモニタ・モジュールから収集するとともに、現在の作業負荷を、現在の作業負荷に基づいて資源の価格設定および利用性を決定するグリッド・モジュールに振り分けることができる。
ここで図3を参照すると、ブロック図は、グリッド環境内で実施されうるアーキテクチャの一例を示す。図示したように、アーキテクチャ300は、複数の機能レイヤーを含む。さらに説明するように、本発明は、アーキテクチャ300のようなアーキテクチャの1つ以上のレイヤー内で実行されうるプロセスであり、このアーキテクチャ300は、図2に説明したグリッド環境のようなグリッド環境内で実施される。アーキテクチャ300は、グリッド環境内で実施されうるアーキテクチャの一例に過ぎず、このアーキテクチャ300において、本発明が実現されうることに注意することが重要である。さらに、複数のアーキテクチャがグリッド環境の中で実施されうることに注意することが重要である。
アーキテクチャ300のレイヤーの中で、最初に、物理および論理資源レイヤー330は、グリッド内のシステムの資源を組織化する。物理資源は、サーバ、記憶媒体、およびネットワークを含むが、これらに限らない。論理資源は、物理レイヤーを、オペレーティング・システム、処理能力、メモリ、I/O処理、ファイル・システム、データベース・マネージャ、ディレクトリ、メモリ・マネージャ、および他の資源のような使用可能な資源に仮想化し、統合する。
次に、ウェブ・サービス・レイヤー320は、グリッド・サービス310と物理および論理資源330との間のインタフェースを提供する。ウェブ・サービス・レイヤー320は、ウェブ・サービス記述言語(WSDL)、シンプル・オブジェクト・アクセス・プロトコル(SOAP)、およびインターネット・プロトコル(IP)または他のネットワーク・トランスポート・レイヤーの上で実行する拡張マークアップ言語(XML)を含むサービス・インタフェースを実行するが、これらに限らない。さらに、オープン・グリッド・サービス・インフラストラクチャ(OGSI)規格322は、グリッドの資源をモデル化するために要求される動的で管理しやすいウェブ・サービスの能力を提供するために、ウェブ・サービス320を拡張することにより現在のウェブ・サービス320をベースに構築される。特に、ウェブ・サービス320と共にOGSI規格322を実行することにより、OGSAを用いて設計されたグリッド・サービス310を共同利用できる。他の実施形態では、他のインフラストラクチャまたは付加的なインフラストラクチャが、ウェブ・サービス・レイヤー320の上に実装されうる。
グリッド・サービス・レイヤー310は、グリッド管理システム240の少なくとも1つの管理機能を一体となって提供する複数のサービスを含む。例えば、グリッド・サービス・レイヤー310は、OGSAを用いて設計されたグリッド・サービスを含み、グリッド・サービスを作る際に一律の規格が実施されるようになされうる。あるいは、グリッド・サービスは、複数のアーキテクチャの下で設計されうる。グリッド・サービスを4つの主要機能に分類できる。しかしながら、他の機能がグリッド・サービスで実行されうることが理解されるであろう。
第1に、資源管理サービス302は、物理および論理資源の使用を管理する。資源は、処理リソース、メモリ資源、および記憶リソースを含みうるが、これらに限らない。これらの資源の管理は、ジョブのスケジューリング、ジョブの振り分け、およびジョブの結果の検索の管理を含む。資源管理サービス302は、資源負荷のバランスをとって、予想外のアクティビティのピークを吸収するために、資源負荷をモニタし、あまり混んでいないグリッドの部分にジョブを振り分ける。特に、利用者は、好ましいパフォーマンス・レベルを指定して、資源管理サービス302がグリッドの中の好ましいパフォーマンス・レベルを保持するためにジョブを振り分けるようにできる。
第2に、情報サービス304は、グリッドの中のコンピューティング・システム間の情報伝達および通信を管理する。複数の通信プロトコルが実行されうるため、情報サービス304は、複数の種類の通信プロトコルを利用して、多重ネットワーク全体にわたって通信を管理する。
第3に、データ管理サービス306は、グリッドの中のデータ転送および記憶を管理する。特に、データ管理サービス306は、データを要求しているジョブが実行処理されるであろうグリッドの中のノードにデータを移動させることができる。グリッド・ファイル転送プロトコル(GridFTP)のような特定の種類の転送プロトコルが実行されうる。
最後に、セキュリティ・サービス308は、グリッドの中で作動する各システムの接続レイヤーにおけるセキュリティのためにセキュリティ・プロトコルを適用する。セキュリティ・サービス308は、安全な伝送を提供するために、オープン・セキュア・ソケット・レイヤー(SSL)のようなセキュリティ・プロトコルを実行できる。さらに、セキュリティ・サービス308は、シングル・サインオン機構を提供し、利用者が一度認証されると、利用者に対してグリッドの中でアクションを実行するとき、プロキシ証明書が作成され、使用されるようになされうる。
複数のサービスは、グリッド・コンピューティング・システムのいくつかの主要な機能を提供するために一体となって働きうる。第1の実施例では、計算タスクが、グリッドの中で振り分けられる。データ管理サービス306は、計算タスクを、個々のグリッド・サービス要求のデータのパケットに分割することができ、その後、これらの個々のグリッド・サービス要求のデータのパケットは、資源管理サービス302により振り分けられ、かつ管理される。結果は、データ管理システム306により収集され、かつ統合される。第2の実施例では、グリッド内の複数のコンピューティング・システム全体の中の記憶リソースは、データ管理サービス306により管理され、かつ資源管理サービス302によりモニタされる単一の仮想データ記憶システムとみなされる。
アプリケーション・レイヤー340は、グリッド・サービス・レイヤー310内で利用可能な1つ以上のグリッド・サービスを使用するアプリケーションを含む。アプリケーションは、複数の異種システムが相互作用し、かつ共同利用できるように、グリッド・サービス・レイヤー310およびウェブ・サービス320を介して物理および論理資源330と連動することが好都合である。
ここで図4を参照すると、複数の異種のグリッド・モジュールからのグリッド・アクティビティのモニタリングを調整し、かつ潜在的にグリッド・アクティビティの影響を受けるコンピュータ・グリッド環境の中のそれらの決定グリッド・モジュールに対して、グリッド・アクティビティを振り分けるグリッド・ワークロード・エージェントのコンポーネントのブロック図が示されている。図示したように、グリッド・ワークロード・エージェント400は、グリッド環境150の中の、複数の異種のサーバ・システム全体の中のハードウェアおよびソフトウェアの中、または単一サーバ・システムの中に実装されうる複数のコンポーネントを含む。
本実施例では、グリッド・ワークロード・エージェント400は、モジュール・データベース404を含む。モジュール・データベース404は、グリッド・ワークロード・エージェント400がグリッド・アクティビティに対してモニタできる各グリッド・モジュールについての情報、またはグリッド・ワークロード・エージェント400がグリッド・アクティビティを振り分けることができる各グリッド・モジュールについての情報を保存する。特に、モジュール・データベース404は、グリッド・モジュールの選択、およびモニタするグリッド・アクティビティの種類を指定するモニタ規則405を含みうる。さらに、モジュール・データベース404は、どのグリッド・モジュールがグリッド・アクティビティを受信するべきか、および各グリッド・モジュールに振り分けるグリッド・アクティビティの種類を指定する振り分け規則406を含みうる。モニタ規則405および振り分け規則406は、システム管理者により提供されてもよく、またはグリッド環境150の中で決定を行うグリッド・モジュールで使用されるグリッド・アクティビティ情報の種類に基づいて自動的に決定されてもよいことが理解されるであろう。
さらに、本実施例では、グリッド・ワークロード・エージェント400は、グリッド・ワークロード・エージェント400により収集されたリアルタイム・グリッド・アクティビティを保存し、かつ他のグリッド・モジュールに対するグリッド・アクティビティの振り分けの記録を保存するグリッド・アクティビティ・データベース410を含む。また、グリッド・アクティビティ・データベース410は、ジョブ費用を計算するグリッド課金処理モジュールにより参照されうることが理解されるであろう。
本実施例では、グリッド・ワークロード・エージェント400は、グリッド・アクティビティに対するグリッド・モジュールへの質問、およびグリッド・モジュールからのグリッド・アクティビティの受信を管理するモジュール・モニタ・コントローラ402を含む。特に、モジュール・モニタ・コントローラ402は、モニタ規則405で指定されたそれらのグリッド・モジュールに照会することができ、モニタ規則405に基づいて受信されたグリッド・アクティビティをフィルタリングできる。一実施例では、モジュール・モニタ・コントローラ402は、グリッド・アクティビティの受信および振り分けを管理するために待ち行列システムを含みうる。例えば、MQSeries(登録商標)のような待ち行列システム(MQSeriesは、IBM社の登録商標である)は、複数の異種の通信プロトコルを用いてパッケージされたグリッド・アクティビティの受信を管理し、かつそれぞれのパッケージされたメッセージの、アダプタに対する振り分けを制御することができ、このアダプタは、グリッド・ワークロード・エージェント400により使用される一般的なプロトコルにメッセージをマッピングすることを可能にされる。
一実施例では、モジュール・モニタ・コントローラ402は、特定のジョブに対する資源利用を要求するクライアント・システムに対して行われたグリッド提供を示すグリッド・アクティビティについてジョブ提供コントローラに照会する。他の実施例では、モジュール・モニタ・コントローラ402は、資源マネージャで管理される資源のグループに対する現在の作業負荷およびパフォーマンス特性を示すグリッド・アクティビティについて資源マネージャに照会する。さらに他の実施例では、モジュール・モニタ・コントローラ402は、グリッド資源の特定の選択に対する現在の価格設定を示すグリッド・アクティビティについて価格設定コントローラに照会する。
さらに、本実施例では、グリッド・ワークロード・エージェント400は、グリッド・モジュールに対するグリッド・アクティビティの振り分けを管理する振り分けコントローラ408を含む。特に、振り分けコントローラ408は、振り分け規則406に基づいてグリッド・アクティビティを振り分けることができる。さらに、振り分けコントローラ408は、グリッド・アクティビティを受信するグリッド・モジュールにより把握されるプロトコルにグリッド・アクティビティをマッピングするためにマッピング・コントローラを含みうる。
ここで図5を参照すると、本発明の方法、システム、およびプログラムに基づいて、グリッド環境の中の他のグリッド・モジュールと相互作用するグリッド・ワークロード・エージェントの例のブロック図が示されている。図示したように、全体のグリッド環境150のグリッド管理システム240は、グリッド・ワークロード・エージェント400を含む複数のグリッド・モジュールを含みうる。グリッド・ワークロード・エージェント400は、グリッド環境150の中のモニタおよび決定グリッド・モジュールから受信されるリアルタイム・グリッド・アクティビティを追跡するとともに、グリッド・アクティビティの影響を受けたり、または決定を行うためにグリッド・アクティビティを要求する可能性が高いグリッド管理システム240の中の決定モジュールの選択に対して、グリッド・アクティビティを振り分ける。
一実施例では、グリッド・ワークロード・エージェント400は、グリッド・マネージャ・モジュール504からの資源パフォーマンスおよび作業負荷を示すリアルタイム・グリッド・アクティビティを受信する。グリッド・マネージャ・モジュール504は、同じ種類、または同様の種類の資源を含むグリッド・アプリケーション環境に対するグリッド・アクティビティをモニタするとともに、グリッド・アプリケーション環境の中のノードを管理する。特に、グリッド・マネージャ・モジュール504は、グリッド資源の選択の資源利用、ならびにグリッド資源の選択に対するグリッド・ジョブおよび作業負荷の状態を示すグリッド・アクティビティをサブミットできる。グリッド・ワークロード・エージェント400は、グリッド・マネージャ・モジュール504からグリッド・アクティビティを受信するとともに、ジョブの現在の費用を計算するグリッド課金処理モジュール510、現在の作業負荷およびパフォーマンスに基づいて、追加の資源ノードを特定の目的に対して割り当てるべきか、または割り当て解除するべきかを決定するグリッド資源割り当てモジュール502、または現在または将来予測される作業負荷が現在のグリッド資源に対して過剰であるとき、グリッド・ジョブを処分しようとするグリッド処分モジュール506のような他の決定グリッド・モジュールに対して、このパフォーマンスおよび作業負荷データを振り分けることができる。
他の実施例では、グリッド資源割り当てモジュール502は、グリッド環境150の外部のグリッド環境からアクセスされるオンデマンドのグリッド資源の割り当ておよび割り当て解除を含む資源ノード割り当ておよび割り当て解除をモニタする。グリッド・ワークロード・エージェント400は、グリッド資源割り当てモジュール502から、このグリッド・アクティビティを受信するとともに、グリッド負荷が重過ぎるかどうか、およびグリッド・ジョブが、グリッド環境150の外のグリッド・ファームまたはグリッド・ベンダーに転送される必要があるかどうかを決定するグリッド処分モジュール506に、割り当てアクティビティ情報を振り分けることができる。
さらに他の実施例では、グリッド・ワークロード・エージェント400は、グリッド・ディスカウンタ・モジュール508に対して、現在または将来予測される低資源利用レベルを示す任意のグリッド・アクティビティを振り分ける。グリッド・ディスカウンタ・モジュール508は、割り引き価格としてグリッド資源に提供してよいかどうかを決定する。グリッド・ディスカウンタ・モジュール508による価格割り引きの決定は、グリッド・ワークロード・エージェント400により受信されるとともに、例えば、グリッド管理システム240により受信されるグリッド・ジョブ要求に対する価格設定提供を決定するグリッド価格設定モジュール512に振り分けられる。
グリッド管理システム240の中に示したグリッド・モジュールは、あくまでグリッド資源全体のアプリケーション、ハードウェア、およびネットワーク・レベルでグリッド・アクティビティをモニタできるグリッド・モジュールの種類の例に過ぎず、かつグリッド管理システム240の中の自動決定サービスを提供するグリッド・モジュールの種類の例に過ぎないことが理解されるであろう。特に、現在の作業負荷要件、さらなる作業負荷要件、およびグリッド環境の中の潜在的変化を予測する付加的な決定モジュールは、グリッド・アクティビティを受信できる。
ここで図6を参照すると、本発明の方法、システム、およびプログラムに基づいて、ノードとして割り当てられたグリッド資源の異種グループを管理する複数のグリッド・マネージャ・モジュールのブロック図が示されている。図示したように、複数のグリッド・マネージャ・モジュール602、604、606、および608は、それぞれグリッド資源610、612、614、および616のグループの利用を管理する。
グリッド資源の各グループは、複数のノードを含むことができ、ノードは、特定の目的に対して割り当てられたハードウェア、ソフトウェア、またはネットワーク資源の論理的表現である。例えば、グループ610は、グリッド環境150の中でグリッド・マネージャ・モジュール602によりモニタされ、かつ管理されるDB2EEEノード620、622、624、および626を含む(DB2は、IBM社の登録商標である)。グリッド資源のグループは、同じ種類の資源のノード、または異種の資源のノードを含みうることが理解されるであろう。
本実施例では、グリッド資源610、612、614、および616の各グループは、異種のプラットフォーム上で、または異なる目的のために作動する資源のノードを含む。例示の目的上、グリッド資源の各グループは、異なるグリッド・アプリケーション環境を表す。例えば、グループ610は、DB2EEEグリッドノード620、622、624、および626、ならびに並列DB2データベース環境を要求されるジョブの実行処理専用の他の関連資源を含む。他の実施例では、グループ612は、DB2EEグリッドノード630、632、634、および636、ならびに現時点では標準DB2データベース環境を要求するジョブの実行処理専用の他の関連資源を含む。さらに、他の実施例では、グループ614は、特定のアプリケーションまたはデータを必要としないが、むしろ単に強力なCPU、およびハイ・コンパイラ型Cコード・モードを必要とするロジックの実行処理専用の6つの計算ノードを含む。さらに、他の実施例では、グループ616は、現時点では計算タスクの実行処理に割り当てられておらず、かつグループ610のような他のグリッド・アプリケーション環境への組み込み可能な資源のプール内に含まれているアイドル・ノード640および642を含む。
本実施例では、グリッド・ワークロード・エージェント400は、グリッド・マネージャ・モジュール602、604、606、および608と通信することにより4つの個別のグリッド・アプリケーション・システム環境に対するアプリケーション・レベルのグリッド・アクティビティを追跡できる。各グリッド・マネージャ・モジュール602、604、606、および608により報告されたグリッド・アクティビティは、他のグリッド・マネージャ・モジュールにより行われた決定、およびグリッド・ワークロード・エージェント400がグリッド・アクティビティを振り分ける他のグリッド・モジュールにより行われた決定を実行できる。
一実施例では、グリッド・マネージャ・モジュール602は、グリッド・ワークロード・エージェント400に対して、グループ610の中のDB2EEEノードが、グループ610の中の利用可能なCPU資源の50%だけを使用しているに過ぎないこと、および並列DB2データベース環境を必要とする将来のデータベース・ジョブが予定されていないことを示すグリッド・アクティビティを報告できる。グリッド・マネージャ・モジュール602は、このグリッド・アクティビティをグリッド割り引きモジュール508に振り分けることができ、その後、このグリッド割り引きモジュール508が、データベース・ジョブに対して割り引き価格を提供してよいかどうかを決定する。さらに、グリッド・マネージャ・モジュール602は、このグリッド・アクティビティをグリッド資源割り当てモジュール502に振り分けることができ、その後、このグリッド資源割り当てモジュール502は、グループ610の中のノードを割り当て解除してよいかどうか、およびより重いジョブ負荷を有する他のグループの中のノードに再割り当てしてよいかどうかを決定する。特に、グリッド・ワークロード・エージェント400は、グリッド・マネージャ・モジュール602とグリッド資源割り当てモジュール502の間のグリッド・アクティビティの通信を管理し、ノードがデータベース・ジョブ用の使用から排除されるであろうこと、ノードに対して予定されている作業が、グループ610の中の他のノードに変更されるであろうこと、および現在のすべてのトランザクションが終了されるであろうことをグリッド・マネージャ・モジュール602に知らせるであろう。例えば、ノード622がDB2EEEトランザクションで使用されていないと、グリッド・ワークロード・エージェント400は、ノード622が使用されていないことを示すグリッド・アクティビティでグリッド・モジュールを更新するであろうとともに、グリッド・マネージャ・モジュール608は、ノード622のモニタおよび管理を開始するであろう。
他の実施例では、グリッド・マネージャ・モジュール604は、グループ612内のノードが100%の能力で稼働していることを検出し、グリッド・ワークロード・エージェント400を現在の能力で更新する。グリッド・ワークロード・エージェント400は、能力割合が、グリッド資源割り当てモジュール502、およびグリッド価格設定モジュール512に対して振り分けられるべきであることを決定する。グリッド資源割り当てモジュール502は、グリッド・ワークロード・エージェント400に対して、新しいノードがグリッド・グループ612に割り当てられているかどうかを示すグリッド・アクティビティ情報を返す。グリッド・ワークロード・エージェント400は、グリッド・マネージャ・モジュール602に対して新しいデータベース・ノードのグリッド・アクティビティを振り分ける。さらに、グリッド価格設定モジュール512は、次の10時間に対してデータベース・ジョブの料金の増額が必要であることを決定でき、グリッド・ワークロード・エージェント400に対して値上げを返す。グリッド・ワークロード・エージェント400は、グリッド課金処理モジュール510に値上げを振り分けることを決定し、グリッド課金処理モジュール510が、次の10時間に対するグリッド・グループ612を用いて、データベース・ジョブの費用を適正に計算できるようになされうる。
本実施例は、アプリケーション環境に基づいて分類されたノードに関して説明されるが、他の実施例では、ノードが、ハードウェア環境、ネットワーク環境、および他のグループ分けのような他の機能的な基準に基づいて分類されうることに注意することは重要である。さらに、グループ分けの中の資源ノードは、物理的に一緒に分類されたり、または異種の物理的な場所に位置しうることが理解されるであろう。
ここで図7を参照すると、本発明の方法、システム、およびプログラムに基づいて、グリッド環境の中の異種のモニタおよび決定グリッド・モジュール全体にわたって、グリッド・アクティビティのモニタリングおよび振り分けを調整するプロセスおよびプログラムの高レベルの論理流れ図が示されている。図示したプロセスは、適切なポリシーおよび規則で制御されながら、グリッド・ワークロード・エージェント400の中で実行処理されうるが、手動の、または自動化された付加的な管理的意思決定が、グリッド・アクティビティのモニタリングおよび振り分けを調整するために必要とされうることが理解されるであろう。
図示したように、プロセスは、ブロック700で始まり、その後、ブロック702に進む。ブロック702は、グリッド・アクティビティ指標が検出されるかどうかの判断を示す。グリッド・アクティビティ指標が検出されないとき、プロセスは、ブロック704に進む。ブロック704は、統計的分析および課金処理アクティビティの履歴を保持するために、グリッド課金処理モジュールに対するグリッド・アクティビティを定期的にアーカイブするステップを示す。次に、ブロック706は、現在実行処理中および予定されているジョブ、ならびにグリッド・パフォーマンスをモニタする他のグリッド・モジュールについてグリッド・マネージャ・モジュールに問い合わせるステップを示し、プロセスは、ブロック702に戻る。
他方、ブロック702で、グリッド・アクティビティが検出されるとき、プロセスは、ブロック708に進む。ブロック708は、モニタ規則に基づいてグリッド・アクティビティをフィルタリングするステップを示す。次に、ブロック710は、新しい特定アプリケーション向けジョブが予定されていることをアクティビティが示すかどうかの判断を示す。新しい特定アプリケーション向けジョブが予定されていることをアクティビティが示さないとき、プロセスは、ブロック714に進む。ブロック714は、現在の作業負荷統計についてアプリケーション環境に問い合わせるステップ、またはグリッド・アクティビティの現在のアーカイブされたスナップショットを読み出すステップを示し、プロセスは、ブロック716に進む。他方、ブロック710で、新しい特定アプリケーション向けジョブがグリッド環境の中で実行される予定があることをグリッド・アクティビティが示すとき、プロセスは、ブロック712に進む。ブロック712は、現在の作業負荷統計について一般的なグリッド・プラットフォームに問い合わせるステップ、またはグリッド・アクティビティの現在のアーカイブされたスナップショットを読み出すことを示し、プロセスは、ブロック716に進む。
ブロック716は、グリッド環境の中のジョブ・サブミッションの影響を推定するために予測的解析を実行するステップを示す。次に、ブロック718は、将来のより正確な予測に向けて実際のジョブ影響と比較するために予測データを保存するステップを示す。その後、ブロック720は、潜在的に影響を受ける決定グリッド・モジュールに対してグリッド・アクティビティ・データを振り分けるステップを示し、プロセスは終了する。
発明の態様と考えられる新規な特徴について、添付特許請求の範囲で詳述される。しかしながら、本発明自体、ならびに本発明の好ましい使用形態、さらなる目的、および利点は、添付図面とともに、本発明の実施形態についての以下の詳細な説明を参照することにより、最も良く理解されるであろう。
グリッド環境内で実施されうるコンピュータ・システムの一実施形態を示し、このコンピュータ・システムの一実施形態において、本発明は実現されうる。 グリッド環境の中の一般型のコンポーネントの一実施形態を示すブロック図である。 グリッド環境内で実施されうるアーキテクチャの一実施例を示すブロック図である。 複数の異種のグリッド・モジュールからのグリッド・アクティビティのモニタリングを調整し、かつ潜在的にグリッド・アクティビティの影響を受けるコンピュータ・グリッド環境の中のそれらの決定グリッド・モジュールに対して、グリッド・アクティビティを振り分けるグリッド・ワークロード・エージェントのコンポーネントを示すブロック図である。 本発明の方法、システム、およびプログラムに基づいて、グリッド環境の中の他のグリッド・モジュールと相互作用するグリッド・ワークロード・エージェントの例を示すブロック図である。 本発明の方法、システム、およびプログラムに基づいて、ノードとして割り当てられたグリッド資源の異種グループを管理する複数のグリッド・マネージャ・モジュールを示すブロック図である。 本発明の方法、システム、およびプログラムに基づいて、グリッド環境の中の異種のモニタおよび決定グリッド・モジュール全体にわたって、グリッド・アクティビティのモニタリングおよび振り分けを調整するプロセスおよびプログラムの高レベルの論理流れ図である。

Claims (8)

  1. グリッド・ワークロード・コントローラで、コンピュータ・グリッド環境の中の複数の異種のグリッド・アプリケーション環境からのアプリケーション・レベルにおけるリアルタイム・グリッド・アクティビティをモニタするステップと、
    グリッド・ワークロード・コントローラで、前記リアルタイム・グリッド・アクティビティを複数のグリッド・モジュールのうちどのグリッド・モジュールが受信すべきか、及び各グリッド・モジュールに振り分ける前記リアルタイム・グリッド・アクティビティの種類を指定する振り分け規則を参照して、前記リアルタイム・グリッド・アクティビティを前記各グリッド・モジュールに振り分けるステップとを含み
    前記複数のグリッド・モジュールは、前記グリッド・ワークロード・コントローラより振り分けられた現在または将来予測される低資源利用レベルを示すリアルタイム・グリッド・アクティビティに基づいて、該リアルタイム・グリッド・アクティビティを示したグリッド・アプリケーション環境を必要とするジョブに対し割引価格を提供してよいかどうかを決定するグリッド・ディスカウント・モジュールを含む
    グリッド環境の中の作業負荷を管理する方法。
  2. 前記複数のグリッド・モジュールは、前記グリッド・ワークロード・コントローラによって振り分けられた前記グリッド・ディスカウント・モジュールによる割引価格を提供してよいとの決定に基づき、前記コンピュータ・グリッド環境に対するジョブの要求に対する価格設定を行うグリッド価格設定モジュールを含む、請求項1に記載の作業負荷を管理する方法。
  3. 前記複数のグリッド・モジュールは、前記グリッド・ワークロード・コントローラにより振り分けられた前記現在または将来予測される低資源利用レベルを示す前記リアルタイム・グリッド・アクティビティに基づいて、該リアルタイム・グリッド・アクティビティを示した前記グリッド・アプリケーション環境に対する資源割り当てを解除して他のグリッド・アプリケーション環境に対して再割り当てしてよいかどうかを決定するグリッド資源割り当てモジュールを含む、請求項1に記載の作業負荷を管理する方法。
  4. 前記グリッド資源割り当てモジュールは、前記グリッド・ワークロード・コントローラにより振り分けられた現在または将来予測される高資源利用レベルを示すリアルタイム・グリッド・アクティビティに基づいて、該リアルタイム・グリッド・アクティビティを示した前記グリッド・アプリケーション環境に対して追加の資源割り当てるべきかを決定し、前記グリッド価格設定モジュールは、前記高資源利用レベルを示すリアルタイム・グリッド・アクティビティを示した前記グリッド・アプリケーション環境に対するジョブの要求に対する増額を決定する、請求項3に記載の作業負荷を管理する方法。
  5. グリッド・ワークロード・コントローラで、コンピュータ・グリッド環境の中の複数の異種のグリッド・アプリケーション環境からのアプリケーション・レベルにおけるリアルタイム・グリッド・アクティビティをモニタするステップが、
    前記リアルタイム・グリッド・アクティビティについて複数のマネージャ・モジュールに問い合わせるステップであって、前記複数のマネージャ・モジュールの各々が、並列データベース環境を要求されるジョブの実行処理専用の資源を含むグループ、標準データベース環境を要求されるジョブの実行処理専用の資源を含むグループ、強力なCPU及びハイ・コンパイラ型Cコード・モードを必要とするロジックの実行処理専用の資源を含むグループ、及び未だ割り当てられていないアイドル資源を含むグループのいずれかを管理し、リアルタイム・パフォーマンス特性を追跡す、請求項1に記載の作業負荷を管理する方法。
  6. 前記グリッド・ワークロード・コントローラがグリッド・サービスである、請求項1に記載の作業負荷を管理する方法。
  7. コンピュータ・グリッド環境の中に実現されるグリッド・ワークロード・コントローラを含み、
    前記グリッド・ワークロード・コントローラは、
    前記コンピュータ・グリッド環境の中の複数の異種のグリッド・アプリケーション環境からのアプリケーション・レベルにおけるリアルタイム・グリッド・アクティビティをモニタする手段と、
    グリッド・ワークロード・コントローラで、前記リアルタイム・グリッド・アクティビティを複数のグリッド・モジュールのうちどのグリッド・モジュールが受信すべきか、及び各グリッド・モジュールに振り分ける前記リアルタイム・グリッド・アクティビティの種類を指定する振り分け規則を参照して、前記リアルタイム・グリッド・アクティビティを前記各グリッド・モジュールに振り分ける手段とを含み
    前記複数のグリッド・モジュールは、前記グリッド・ワークロード・コントローラより振り分けられた現在または将来予測される低資源利用レベルを示すリアルタイム・グリッド・アクティビティに基づいて、該リアルタイム・グリッド・アクティビティを示したグリッド・アプリケーション環境を必要とするジョブに対し割引価格を提供してよいかどうかを決定するグリッド・ディスカウント・モジュールを含む
    グリッド環境の中の作業負荷を管理するシステム。
  8. コンピューターに、請求項1〜6のいずれかに記載の各ステップを実行させるためのコンピュータ・プログラム。
JP2007549849A 2005-01-06 2005-12-19 グリッド・アクティビティのモニタリングおよび振り分けによる総合的グリッド環境管理を促進する方法、システム、およびコンピュータ・プログラム Expired - Fee Related JP4954089B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/031,490 2005-01-06
US11/031,490 US7761557B2 (en) 2005-01-06 2005-01-06 Facilitating overall grid environment management by monitoring and distributing grid activity
PCT/EP2005/056931 WO2006072547A1 (en) 2005-01-06 2005-12-19 Facilitating overall grid environment management by monitoring and distributing grid activity

Publications (3)

Publication Number Publication Date
JP2008527514A JP2008527514A (ja) 2008-07-24
JP2008527514A5 JP2008527514A5 (ja) 2008-10-23
JP4954089B2 true JP4954089B2 (ja) 2012-06-13

Family

ID=36216908

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007549849A Expired - Fee Related JP4954089B2 (ja) 2005-01-06 2005-12-19 グリッド・アクティビティのモニタリングおよび振り分けによる総合的グリッド環境管理を促進する方法、システム、およびコンピュータ・プログラム

Country Status (4)

Country Link
US (1) US7761557B2 (ja)
JP (1) JP4954089B2 (ja)
CN (1) CN100530133C (ja)
WO (1) WO2006072547A1 (ja)

Families Citing this family (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8019870B1 (en) * 1999-08-23 2011-09-13 Oracle America, Inc. Approach for allocating resources to an apparatus based on alternative resource requirements
US7406691B2 (en) 2004-01-13 2008-07-29 International Business Machines Corporation Minimizing complex decisions to allocate additional resources to a job submitted to a grid environment
US7562143B2 (en) 2004-01-13 2009-07-14 International Business Machines Corporation Managing escalating resource needs within a grid environment
US7552437B2 (en) 2004-01-14 2009-06-23 International Business Machines Corporation Maintaining application operations within a suboptimal grid environment
US8782654B2 (en) 2004-03-13 2014-07-15 Adaptive Computing Enterprises, Inc. Co-allocating a reservation spanning different compute resources types
WO2005089236A2 (en) 2004-03-13 2005-09-29 Cluster Resources, Inc. System and method for providing intelligent pre-staging of data in a compute environment
US7266547B2 (en) 2004-06-10 2007-09-04 International Business Machines Corporation Query meaning determination through a grid service
US20070266388A1 (en) 2004-06-18 2007-11-15 Cluster Resources, Inc. System and method for providing advanced reservations in a compute environment
US8176490B1 (en) 2004-08-20 2012-05-08 Adaptive Computing Enterprises, Inc. System and method of interfacing a workload manager and scheduler with an identity manager
US8271980B2 (en) 2004-11-08 2012-09-18 Adaptive Computing Enterprises, Inc. System and method of providing system jobs within a compute environment
US7590623B2 (en) 2005-01-06 2009-09-15 International Business Machines Corporation Automated management of software images for efficient resource node building within a grid environment
US7562035B2 (en) 2005-01-12 2009-07-14 International Business Machines Corporation Automating responses by grid providers to bid requests indicating criteria for a grid job
US8863143B2 (en) 2006-03-16 2014-10-14 Adaptive Computing Enterprises, Inc. System and method for managing a hybrid compute environment
US9231886B2 (en) 2005-03-16 2016-01-05 Adaptive Computing Enterprises, Inc. Simple integration of an on-demand compute environment
US9015324B2 (en) 2005-03-16 2015-04-21 Adaptive Computing Enterprises, Inc. System and method of brokering cloud computing resources
WO2006107531A2 (en) 2005-03-16 2006-10-12 Cluster Resources, Inc. Simple integration of an on-demand compute environment
US8856309B1 (en) * 2005-03-17 2014-10-07 Oracle America, Inc. Statistical tool for use in networked computer platforms
US8782120B2 (en) * 2005-04-07 2014-07-15 Adaptive Computing Enterprises, Inc. Elastic management of compute resources between a web server and an on-demand compute environment
ES2614751T3 (es) 2005-04-07 2017-06-01 Iii Holdings 12, Llc Acceso bajo demanda a recursos informáticos
FI20055429L (fi) * 2005-08-08 2007-02-09 Rainer Wehkamp Hilalaskentaverkon hallinta
US20080077667A1 (en) * 2006-09-26 2008-03-27 Chong-Sun Hwang Method for adaptive group scheduling using mobile agents in peer-to-peer grid computing environment
US8555335B2 (en) * 2006-11-01 2013-10-08 Microsoft Corporation Securing distributed application information delivery
US8027817B2 (en) * 2007-05-10 2011-09-27 International Business Machines Corporation Simulation management within a grid infrastructure
DE102007041092A1 (de) * 2007-08-30 2009-03-05 Vodafone Holding Gmbh Elektronisches Endgerät, externes Speichersystem und Verfahren zum Betrieb eines externen Speichersystems
US8041773B2 (en) 2007-09-24 2011-10-18 The Research Foundation Of State University Of New York Automatic clustering for self-organizing grids
US20090158276A1 (en) * 2007-12-12 2009-06-18 Eric Lawrence Barsness Dynamic distribution of nodes on a multi-node computer system
US8903973B1 (en) 2008-11-10 2014-12-02 Tanium Inc. Parallel distributed network management
US8086729B1 (en) * 2008-11-10 2011-12-27 Tanium Inc. Distributed statistical detection of network problems and causes
US8904039B1 (en) 2008-11-10 2014-12-02 Tanium Inc. Large-scale network querying and reporting
US8386930B2 (en) * 2009-06-05 2013-02-26 International Business Machines Corporation Contextual data center management utilizing a virtual environment
TWI388979B (zh) * 2009-09-18 2013-03-11 Asustek Comp Inc 電腦系統及監控裝置
US11720290B2 (en) 2009-10-30 2023-08-08 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US10877695B2 (en) 2009-10-30 2020-12-29 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US20110161495A1 (en) * 2009-12-26 2011-06-30 Ralf Ratering Accelerating opencl applications by utilizing a virtual opencl device as interface to compute clouds
US9058210B2 (en) * 2010-03-23 2015-06-16 Ebay Inc. Weighted request rate limiting for resources
US9015708B2 (en) * 2011-07-28 2015-04-21 International Business Machines Corporation System for improving the performance of high performance computing applications on cloud using integrated load balancing
KR20130088512A (ko) * 2012-01-31 2013-08-08 한국전자통신연구원 클러스터 컴퓨팅 환경에서의 자원 관리 장치 및 방법
US11172470B1 (en) 2012-12-21 2021-11-09 Tanium Inc. System, security and network management using self-organizing communication orbits in distributed networks
US9246977B2 (en) 2012-12-21 2016-01-26 Tanium Inc. System, security and network management using self-organizing communication orbits in distributed networks
US9373960B2 (en) * 2013-03-13 2016-06-21 Oracle International Corporation Computerized system and method for distributed energy resource scheduling
US9769037B2 (en) 2013-11-27 2017-09-19 Tanium Inc. Fast detection and remediation of unmanaged assets
US10873645B2 (en) 2014-03-24 2020-12-22 Tanium Inc. Software application updating in a local network
US9769275B2 (en) 2014-03-24 2017-09-19 Tanium Inc. Data caching and distribution in a local network
US9667738B2 (en) 2014-03-24 2017-05-30 Tanium Inc. Local data caching for data transfers on a network of computational devices
US10447040B2 (en) 2014-10-15 2019-10-15 Cummins Power Generation Ip, Inc. Programmable inverter for controllable grid response
US11461208B1 (en) 2015-04-24 2022-10-04 Tanium Inc. Reliable map-reduce communications in a decentralized, self-organizing communication orbit of a distributed network
US9910752B2 (en) 2015-04-24 2018-03-06 Tanium Inc. Reliable map-reduce communications in a decentralized, self-organizing communication orbit of a distributed network
GB2540945B (en) * 2015-07-31 2017-12-06 Avanti Communications Group Plc Satellite operations support system
US10095864B2 (en) 2016-03-08 2018-10-09 Tanium Inc. System and method for performing event inquiries in a network
US11886229B1 (en) 2016-03-08 2024-01-30 Tanium Inc. System and method for generating a global dictionary and performing similarity search queries in a network
US11609835B1 (en) 2016-03-08 2023-03-21 Tanium Inc. Evaluating machine and process performance in distributed system
US10498744B2 (en) 2016-03-08 2019-12-03 Tanium Inc. Integrity monitoring in a local network
US11372938B1 (en) 2016-03-08 2022-06-28 Tanium Inc. System and method for performing search requests in a network
US11153383B2 (en) 2016-03-08 2021-10-19 Tanium Inc. Distributed data analysis for streaming data sources
US10929345B2 (en) 2016-03-08 2021-02-23 Tanium Inc. System and method of performing similarity search queries in a network
US10824729B2 (en) 2017-07-14 2020-11-03 Tanium Inc. Compliance management in a local network
US11343355B1 (en) 2018-07-18 2022-05-24 Tanium Inc. Automated mapping of multi-tier applications in a distributed system
US10841365B2 (en) 2018-07-18 2020-11-17 Tanium Inc. Mapping application dependencies in a computer network
CN111143050B (zh) * 2018-11-02 2023-09-19 中移(杭州)信息技术有限公司 一种容器集群调度的方法和设备
US11799952B2 (en) * 2019-01-07 2023-10-24 Intel Corporation Computing resource discovery and allocation
CN110838041B (zh) * 2019-10-15 2022-11-25 苏宁云计算有限公司 虚拟资源活动处理方法、装置、计算机设备和存储介质
US11831670B1 (en) 2019-11-18 2023-11-28 Tanium Inc. System and method for prioritizing distributed system risk remediations
US20220058727A1 (en) * 2020-08-18 2022-02-24 Core Scientific, Inc. Job based bidding
US11563764B1 (en) 2020-08-24 2023-01-24 Tanium Inc. Risk scoring based on compliance verification test results in a local network

Family Cites Families (129)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US727232A (en) * 1902-11-29 1903-05-05 Francis H Wadsworth Stowing and lowering or raising boats.
US4591980A (en) 1984-02-16 1986-05-27 Xerox Corporation Adaptive self-repairing processor array
US5220674A (en) 1987-07-17 1993-06-15 Digital Equipment Corporation Local area print server for requesting and storing required resource data and forwarding printer status message to selected destination
US6389010B1 (en) 1995-10-05 2002-05-14 Intermec Ip Corp. Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
WO1992005485A2 (en) 1990-09-17 1992-04-02 Cabletron Systems, Inc. Network management system using model-based intelligence
US5325525A (en) 1991-04-04 1994-06-28 Hewlett-Packard Company Method of automatically controlling the allocation of resources of a parallel processor computer system by calculating a minimum execution time of a task and scheduling subtasks against resources to execute the task in the minimum time
FR2698461B1 (fr) 1992-11-23 1995-01-13 Bull Sa Dispositif de traitement de l'information permettant la gestion d'une ressource informatique par un système d'administration.
FR2711436B1 (fr) 1993-10-18 1996-01-05 France Telecom Procédé perfectionné de fonctionnement en parallèle de plusieurs unités de calcul, notamment en traitement d'images, et architecture correspondante.
US5640569A (en) 1995-04-28 1997-06-17 Sun Microsystems, Inc. Diverse goods arbitration system and method for allocating resources in a distributed computer system
US5978583A (en) 1995-08-07 1999-11-02 International Business Machines Corp. Method for resource control in parallel environments using program organization and run-time support
US5905975A (en) 1996-01-04 1999-05-18 Ausubel; Lawrence M. Computer implemented methods and apparatus for auctions
EP0790559B1 (en) 1996-02-14 2002-05-15 Hitachi, Ltd. Method of monitoring a computer system, featuring performance data distribution to plural monitoring processes
JP3881739B2 (ja) * 1996-02-14 2007-02-14 株式会社日立製作所 計算機システムの性能モニタリング方法およびシステム
US5729472A (en) 1996-05-17 1998-03-17 International Business Machines Corporation Monitoring architecture
US6552813B2 (en) 1996-06-11 2003-04-22 Sun Microsystems, Inc. Directing print jobs in a network printing system
US6055418A (en) 1996-07-05 2000-04-25 Thomcast Communications, Inc. Computer program product configured to control modular transmission system components
US5884046A (en) 1996-10-23 1999-03-16 Pluris, Inc. Apparatus and method for sharing data and routing messages between a plurality of workstations in a local area network
US6452692B1 (en) 1996-12-02 2002-09-17 Sun Microsystems, Inc. Networked printer server
US6067580A (en) 1997-03-11 2000-05-23 International Business Machines Corporation Integrating distributed computing environment remote procedure calls with an advisory work load manager
US6119186A (en) 1997-05-30 2000-09-12 Texas Instruments Incorporated Computer system with environmental manager for detecting and responding to changing environmental conditions
US6003075A (en) 1997-07-07 1999-12-14 International Business Machines Corporation Enqueuing a configuration change in a network cluster and restore a prior configuration in a back up storage in reverse sequence ordered
US6915265B1 (en) 1997-10-29 2005-07-05 Janice Johnson Method and system for consolidating and distributing information
US6310889B1 (en) 1998-03-12 2001-10-30 Nortel Networks Limited Method of servicing data access requests from users
JP3065053B2 (ja) 1998-01-06 2000-07-12 セイコーエプソン株式会社 機器監視システム、ローカル監視装置、統合監視装置、機器監視方法、及び、プログラムを格納したコンピュータ可読媒体
US6154787A (en) 1998-01-21 2000-11-28 Unisys Corporation Grouping shared resources into one or more pools and automatically re-assigning shared resources from where they are not currently needed to where they are needed
US6185598B1 (en) 1998-02-10 2001-02-06 Digital Island, Inc. Optimized network resource location
JP3884862B2 (ja) 1998-04-30 2007-02-21 キヤノン株式会社 データ転送装置、データ転送装置の制御方法、記憶媒体
US6606602B1 (en) 1998-07-20 2003-08-12 Usa Technologies, Inc. Vending machine control system having access to the internet for the purposes of transacting e-mail, e-commerce, and e-business, and for conducting vending transactions
US6717694B1 (en) 1998-07-31 2004-04-06 Canon Kabushiki Kaisha Data transmission apparatus, system and method, and recording medium
US6167445A (en) 1998-10-26 2000-12-26 Cisco Technology, Inc. Method and apparatus for defining and implementing high-level quality of service policies in computer networks
US6625643B1 (en) 1998-11-13 2003-09-23 Akamai Technologies, Inc. System and method for resource management on a data network
US7451106B1 (en) 1998-11-30 2008-11-11 E-Lynxx Corporation System and method for competitive pricing and procurement of customized goods and services
US6647373B1 (en) 1998-12-24 2003-11-11 John Carlton-Foss Method and system for processing and transmitting electronic reverse auction information
US20040095237A1 (en) 1999-01-09 2004-05-20 Chen Kimball C. Electronic message delivery system utilizable in the monitoring and control of remote equipment and method of same
US6748416B2 (en) 1999-01-20 2004-06-08 International Business Machines Corporation Client-side method and apparatus for improving the availability and performance of network mediated services
US6438704B1 (en) 1999-03-25 2002-08-20 International Business Machines Corporation System and method for scheduling use of system resources among a plurality of limited users
JP2000332750A (ja) * 1999-05-24 2000-11-30 Fujitsu Ltd ネットワークアクセスエージェントによる集中課金・精算システム
US6560609B1 (en) 1999-06-14 2003-05-06 International Business Machines Corporation Delegating instance management functions to underlying resource managers
US6463454B1 (en) 1999-06-17 2002-10-08 International Business Machines Corporation System and method for integrated load distribution and resource management on internet environment
US6480955B1 (en) 1999-07-09 2002-11-12 Lsi Logic Corporation Methods and apparatus for committing configuration changes to managed devices prior to completion of the configuration change
US6356909B1 (en) 1999-08-23 2002-03-12 Proposal Technologies Network, Inc. Web based system for managing request for proposal and responses
US6453376B1 (en) 1999-10-21 2002-09-17 Sony Corporation Method for implementing scheduling mechanisms with selectable resource modes
US6470384B1 (en) 1999-10-28 2002-10-22 Networks Associates, Inc. Modular framework for configuring action sets for use in dynamically processing network events in a distributed computing environment
US6714987B1 (en) 1999-11-05 2004-03-30 Nortel Networks Limited Architecture for an IP centric distributed network
US6546387B1 (en) 1999-11-15 2003-04-08 Transcom Software Inc. Computer network information management system and method using intelligent software agents
US6954739B1 (en) 1999-11-16 2005-10-11 Lucent Technologies Inc. Measurement-based management method for packet communication networks
US6681251B1 (en) 1999-11-18 2004-01-20 International Business Machines Corporation Workload balancing in clustered application servers
FR2801697B1 (fr) 1999-11-26 2002-01-25 Bull Sa Procede d'acces selon divers protocoles a des objets d'un arbre representatif d'au moins une ressource de systeme
US6701342B1 (en) 1999-12-21 2004-03-02 Agilent Technologies, Inc. Method and apparatus for processing quality of service measurement data to assess a degree of compliance of internet services with service level agreements
WO2001050708A2 (en) 1999-12-31 2001-07-12 Realscale Technologies Inc. A server module and a distributed server-based internet access scheme and method of operating the same
US7146233B2 (en) 2000-02-11 2006-12-05 Sun Microsystems, Inc. Request queue management
US20020152305A1 (en) 2000-03-03 2002-10-17 Jackson Gregory J. Systems and methods for resource utilization analysis in information management environments
WO2001075743A1 (en) 2000-04-03 2001-10-11 The Pugliese Company System and method for displaying and selling goods and services
US7123622B2 (en) 2000-04-13 2006-10-17 International Business Machines Corporation Method and system for network processor scheduling based on service levels
US6671676B1 (en) 2000-05-04 2003-12-30 Metreo Markets, Inc. Method and apparatus for analyzing and allocating resources of time-varying value using recursive lookahead
US7181743B2 (en) 2000-05-25 2007-02-20 The United States Of America As Represented By The Secretary Of The Navy Resource allocation decision function for resource management architecture and corresponding programs therefor
US6578160B1 (en) 2000-05-26 2003-06-10 Emc Corp Hopkinton Fault tolerant, low latency system resource with high level logging of system resource transactions and cross-server mirrored high level logging of system resource transactions
US7080077B2 (en) 2000-07-10 2006-07-18 Oracle International Corporation Localized access
US6816905B1 (en) 2000-11-10 2004-11-09 Galactic Computing Corporation Bvi/Bc Method and system for providing dynamic hosted service management across disparate accounts/sites
JP2002200828A (ja) 2000-10-23 2002-07-16 Canon Inc 情報処理装置、制御方法及び記憶媒体
US7403482B2 (en) 2000-10-30 2008-07-22 Nec Corporation Path provisioning for service level agreements in differentiated service networks
US7027412B2 (en) 2000-11-10 2006-04-11 Veritas Operating Corporation System for dynamic provisioning of secure, scalable, and extensible networked computer environments
US20040213220A1 (en) 2000-12-28 2004-10-28 Davis Arlin R. Method and device for LAN emulation over infiniband fabrics
US20020103904A1 (en) 2001-01-31 2002-08-01 Hay Russel C. Method and apparatus for controlling access to files associated with a virtual server
US20020116488A1 (en) 2001-02-09 2002-08-22 Subramanian Harihara Rama System and method for delivery and usage based billing for data services in telecommunication networks
JP2002307783A (ja) 2001-04-10 2002-10-23 Seiko Epson Corp プリンタ、posシステム、無線通信制御方法および情報記録媒体
US6832248B1 (en) 2001-05-10 2004-12-14 Agami Systems, Inc. System and method for managing usage quotas
US20020171864A1 (en) 2001-05-16 2002-11-21 Robert Sesek Methods and apparatus for printing around a job in a printer queue
US7761319B2 (en) 2001-06-08 2010-07-20 Click Acqusitions, Inc. Supply chain management
FI110976B (fi) 2001-06-15 2003-04-30 Wts Wireless Technology System Menetelmä ja järjestelmä palvelujen ja laitteiden hallitsemiseksi tietoverkossa
US7113299B2 (en) 2001-07-12 2006-09-26 Canon Development Americas, Inc. Printing with credit card as identification
US6823382B2 (en) 2001-08-20 2004-11-23 Altaworks Corporation Monitoring and control engine for multi-tiered service-level management of distributed web-application servers
US20030041010A1 (en) 2001-08-23 2003-02-27 Mark Yonao-Cowan Online bidding for contracts
WO2003019870A2 (en) 2001-08-24 2003-03-06 Peribit Networks, Inc. Dynamic multi-point meshed overlay network
US20030115099A1 (en) 2001-11-01 2003-06-19 Burns Stanley S. Method of automated online media planning and buying
US7222190B2 (en) 2001-11-02 2007-05-22 Internap Network Services Corporation System and method to provide routing control of information over data networks
EP1320217B1 (en) 2001-12-14 2004-10-13 Hewlett-Packard Company, A Delaware Corporation Method of installing monitoring agents, system and computer program for monitoring objects in an IT network
US7093259B2 (en) 2001-12-20 2006-08-15 Cadence Design Systems, Inc. Hierarchically structured logging for computer work processing
US7356592B2 (en) 2002-01-24 2008-04-08 International Business Machines Corporation Method and apparatus for web farm traffic control
US20030145084A1 (en) 2002-01-25 2003-07-31 Mcnerney Shaun Charles System and method for decentralized system and network performance assessment and verification
US7103628B2 (en) 2002-06-20 2006-09-05 Jp Morgan Chase & Co. System and method for dividing computations
US7280752B2 (en) 2002-02-22 2007-10-09 Intel Corporation Network address routing using multiple routing identifiers
US7324969B2 (en) 2002-04-11 2008-01-29 Intel Corporation System and method for automated auctioning of web services
EP1357711A1 (en) 2002-04-25 2003-10-29 Alcatel Method for managing communication services in a communications network, network element and service agreements management centre for its implementation
US7222245B2 (en) 2002-04-26 2007-05-22 Hewlett-Packard Development Company, L.P. Managing system power based on utilization statistics
JP4133068B2 (ja) 2002-07-23 2008-08-13 株式会社日立製作所 計算機システム
US7765299B2 (en) * 2002-09-16 2010-07-27 Hewlett-Packard Development Company, L.P. Dynamic adaptive server provisioning for blade architectures
US6963285B2 (en) 2002-09-30 2005-11-08 Basic Resources, Inc. Outage notification device and method
US7200657B2 (en) 2002-10-01 2007-04-03 International Business Machines Corporation Autonomic provisioning of network-accessible service behaviors within a federated grid infrastructure
US20040078471A1 (en) 2002-10-18 2004-04-22 Collatus Corporation, A Delaware Corportion Apparatus, method, and computer program product for building virtual networks
US20040098606A1 (en) 2002-11-18 2004-05-20 International Business Machines Corporation System, method and program product for operating a grid of service providers based on a service policy
US7245584B2 (en) 2002-11-18 2007-07-17 Avaya Technology Corp. Method and apparatus for auditing service level agreements by test packet insertion
US8489741B2 (en) 2002-11-21 2013-07-16 International Business Machines Corporation Policy enabled grid architecture
US7055052B2 (en) 2002-11-21 2006-05-30 International Business Machines Corporation Self healing grid architecture for decentralized component-based systems
US7243147B2 (en) 2002-12-30 2007-07-10 Bellsouth Ip Corporation Systems and methods for the detection and management of network assets
US7437675B2 (en) 2003-02-03 2008-10-14 Hewlett-Packard Development Company, L.P. System and method for monitoring event based systems
WO2004090684A2 (en) 2003-03-31 2004-10-21 System Management Arts, Inc. Method and apparatus for multi-realm system modeling
US7644408B2 (en) 2003-04-25 2010-01-05 Spotware Technologies, Inc. System for assigning and monitoring grid jobs on a computing grid
US20040225711A1 (en) 2003-05-08 2004-11-11 Spotware Technologies, Inc. System for administering computers on a computing grid
US8055753B2 (en) 2003-06-11 2011-11-08 International Business Machines Corporation Peer to peer job monitoring and control in grid computing systems
US8935401B2 (en) 2003-06-20 2015-01-13 Hewlett-Packard Development Company, L.P. Method and system using admission control in interactive grid computing systems
US7472112B2 (en) 2003-06-23 2008-12-30 Microsoft Corporation Distributed query engine pipeline method and system
US7272732B2 (en) 2003-06-30 2007-09-18 Hewlett-Packard Development Company, L.P. Controlling power consumption of at least one computer system
US20050021349A1 (en) 2003-07-23 2005-01-27 International Business Machines Corporation Method and system for providing a computing resource service
US8856163B2 (en) 2003-07-28 2014-10-07 Google Inc. System and method for providing a user interface with search query broadening
US7594015B2 (en) 2003-07-28 2009-09-22 Sap Ag Grid organization
US8776050B2 (en) 2003-08-20 2014-07-08 Oracle International Corporation Distributed virtual machine monitor for managing multiple virtual resources across multiple physical nodes
US7877754B2 (en) 2003-08-21 2011-01-25 International Business Machines Corporation Methods, systems, and media to expand resources available to a logical partition
US7426267B1 (en) 2003-09-04 2008-09-16 Contactual, Inc. Declarative ACD routing with service level optimization
US7533168B1 (en) 2003-09-11 2009-05-12 Sun Microsystems, Inc. Autonomic grid computing mechanism
US7472184B2 (en) 2003-09-19 2008-12-30 International Business Machines Corporation Framework for restricting resources consumed by ghost agents
US7181302B2 (en) 2003-10-03 2007-02-20 Meta Command Systems, Inc. Method and system for network-based, distributed, real-time command and control of an enterprise
US20050108394A1 (en) 2003-11-05 2005-05-19 Capital One Financial Corporation Grid-based computing to search a network
US7454496B2 (en) 2003-12-10 2008-11-18 International Business Machines Corporation Method for monitoring data resources of a data processing network
US7124062B2 (en) 2003-12-30 2006-10-17 Sap Ag Services search method
US7562143B2 (en) 2004-01-13 2009-07-14 International Business Machines Corporation Managing escalating resource needs within a grid environment
US7552437B2 (en) 2004-01-14 2009-06-23 International Business Machines Corporation Maintaining application operations within a suboptimal grid environment
TW200532466A (en) 2004-02-03 2005-10-01 Sony Corp Information processing device, information processing method, information processing system and information processing program of accessible media
WO2005098655A2 (en) 2004-02-21 2005-10-20 Datallegro, Inc. Ultra-shared-nothing parallel database
US20050257079A1 (en) 2004-04-27 2005-11-17 Andrea Arcangeli System for the creation of a supercomputer using the CPU of the computers connected to internet
US7584274B2 (en) 2004-06-15 2009-09-01 International Business Machines Corporation Coordinating use of independent external resources within requesting grid environments
US7340654B2 (en) 2004-06-17 2008-03-04 Platform Computing Corporation Autonomic monitoring in a grid environment
US7421402B2 (en) 2004-08-19 2008-09-02 International Business Machines Corp. Tier-based dynamic incentive arbitration in an on-demand computing environment
US7765552B2 (en) 2004-09-17 2010-07-27 Hewlett-Packard Development Company, L.P. System and method for allocating computing resources for a grid virtual system
US20060075042A1 (en) 2004-09-30 2006-04-06 Nortel Networks Limited Extensible resource messaging between user applications and network elements in a communication network
US7640308B2 (en) 2004-09-30 2009-12-29 Microsoft Corporation Systems and methods for detection and removal of metadata and hidden information in files
US7433931B2 (en) 2004-11-17 2008-10-07 Raytheon Company Scheduling in a high-performance computing (HPC) system
US7996455B2 (en) 2005-06-17 2011-08-09 Adaptive Computing Enterprises, Inc. System and method for providing dynamic roll-back reservations in time
US7283935B1 (en) 2006-10-30 2007-10-16 Bank Of America Corporation Method and apparatus for monitoring grid-based computing resources

Also Published As

Publication number Publication date
JP2008527514A (ja) 2008-07-24
US20060150158A1 (en) 2006-07-06
CN100530133C (zh) 2009-08-19
CN101095118A (zh) 2007-12-26
US7761557B2 (en) 2010-07-20
WO2006072547A1 (en) 2006-07-13

Similar Documents

Publication Publication Date Title
JP4954089B2 (ja) グリッド・アクティビティのモニタリングおよび振り分けによる総合的グリッド環境管理を促進する方法、システム、およびコンピュータ・プログラム
US7788375B2 (en) Coordinating the monitoring, management, and prediction of unintended changes within a grid environment
US7406691B2 (en) Minimizing complex decisions to allocate additional resources to a job submitted to a grid environment
US7707288B2 (en) Automatically building a locally managed virtual node grouping to handle a grid job requiring a degree of resource parallelism within a grid environment
US7562143B2 (en) Managing escalating resource needs within a grid environment
US8396757B2 (en) Estimating future grid job costs by classifying grid jobs and storing results of processing grid job microcosms
US7712100B2 (en) Determining a capacity of a grid environment to handle a required workload for a virtual grid job request
US20060149652A1 (en) Receiving bid requests and pricing bid responses for potential grid job submissions within a grid environment
US7793308B2 (en) Setting operation based resource utilization thresholds for resource use by a process
US7287179B2 (en) Autonomic failover of grid-based services
US7590623B2 (en) Automated management of software images for efficient resource node building within a grid environment
US7584281B2 (en) Method for allocating shared computing infrastructure for application server-based deployments
US7472079B2 (en) Computer implemented method for automatically controlling selection of a grid provider for a grid job
US7552437B2 (en) Maintaining application operations within a suboptimal grid environment
US8346909B2 (en) Method for supporting transaction and parallel application workloads across multiple domains based on service level agreements
WO2007031394A9 (en) Method and apparatus for a grid network throttle and load collector
Lenica et al. Agent-based grid resource management
Vasques A Decentralized Utility-based Scheduling Algorithm for Grids

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080902

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080902

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110516

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110531

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110826

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120221

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120313

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150323

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees