JP2005530240A - 分散計算システムの管理システム及び方法 - Google Patents

分散計算システムの管理システム及び方法 Download PDF

Info

Publication number
JP2005530240A
JP2005530240A JP2004513962A JP2004513962A JP2005530240A JP 2005530240 A JP2005530240 A JP 2005530240A JP 2004513962 A JP2004513962 A JP 2004513962A JP 2004513962 A JP2004513962 A JP 2004513962A JP 2005530240 A JP2005530240 A JP 2005530240A
Authority
JP
Japan
Prior art keywords
resources
view
requested
server
distributed computing
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.)
Pending
Application number
JP2004513962A
Other languages
English (en)
Inventor
ウィリアム ジェイ アール
Original Assignee
アガミ システムズ, インコーポレイテッド
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 アガミ システムズ, インコーポレイテッド filed Critical アガミ システムズ, インコーポレイテッド
Publication of JP2005530240A publication Critical patent/JP2005530240A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5019Ensuring fulfilment of SLA
    • H04L41/5025Ensuring fulfilment of SLA by proactively reacting to service quality change, e.g. by reconfiguration after service quality degradation or upgrade
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5006Creating or negotiating SLA contracts, guarantees or penalties
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/501Performance criteria

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Hardware Redundancy (AREA)

Abstract

【課題】 複数の資源(208)を持つ分散計算システムを管理するためのシステム(200)及び方法を提供する。
【解決手段】 システム(200)は、複数の資源(208)と通信可能に接続された一対のシステム管理サーバー(116)を含む。システム管理サーバー(116)は、ユーザ(202)から計算システムの所望の機能又は特性を表す計算システムの要求されたビューを受取る。さらに、サーバー(116)は、計算システムの実際の状態又は特性を表す計算システムの実現されたビューを監視する。サーバー(116)は、実現されたビューと要求されたビューとを比較して、実現されたビューが一貫して要求されたビューを満足するように複数のシステム資源(208)を自動的且つダイナミックに構成する。

Description

本発明は、一般に、計算システムに関し、より詳細には、高度にスケーラブルな分散計算システムの管理システム及び方法に関する。本発明は、ユーザが選択したある機能及び性能特性に合わせるためにシステム資源を自動的に供給し、そしてユーザが選択した特性の修正及び/又はシステム資源の変化に適合するようにシステム資源を動的に構成して割当てる。
従来の分散計算システムを管理するために、システム管理者は、システムがある機能と性能特性を供給するように、システム資源を特別に構成して割当てることが要求されている。例えば、分散ファイル・システムの管理は、管理インターフェイスを介して新ファイル・システムを定義し、ファイル・システムのための資源を供給し、そしてアクセスのためにファイル・システムを可能化(もし、システムがシャットダウンされたならば、その後のシステム開始時及び供給後の両方)することを含む。また、管理は管理インターフェイスを介してファイル・システムを削除することを要求し、アクセスからファイル・システムを使用不可能にし(例えば、削除が要求された時又はシステム・シャットダウンが要求された時)、そして削除されたファイル・システムに対して供給された資源を解放することを含む。さらに、システム管理者は、故障、システム資源の追加又は修正の際、機能及び性能要求の変化を満足するため及び/又はある機能と性能特性を維持するために、システム資源の再割当て及び再構成を要求される。
従来の計算システムでは、前述の全ての管理機能は典型的にはシステム管理者により実行される。これはシステム管理者の絶え間の無い注意と努力を必要とする。特に、システム管理者は絶えず、所望の結果を達成して維持するためにシステム資源を監視し、供給し、構成し、そして修正しなければならない。これは計算システムを管理し維持するために必要な費用と時間を好ましくなく増加させる。
従って、システム管理者にある機能及び性能特性(例えば、所望の結果)を指定又は選択することのみを要求し、管理者に所望の結果を達成及び維持するためにシステム資源の供給と構成を要求しない、分散計算システムの維持のためのシステムを提供することが望まれる。従って、本発明は、ユーザが選択したある機能及び性能特性に合わせるためにシステム資源を自動的に構成し、そしてユーザが選択した特性の修正に適合するように及び/又はシステム資源の状態の変化に適合するようにシステム資源を動的に構成して割当てる、分散計算システムを管理するためのシステムを提供する。
本発明の限定的ではない1つの長所は、システム管理者がある機能及び性能特性を入力することを可能にして、所望の結果を達成するために自動的にシステム資源を供給する分散計算システムを管理するためのシステムを提供する。
本発明の別の限定的ではない1つの長所は、所望の機能の修正に適合するため及び/又はシステム資源の状態の変化に適合するために、自律的にシステム資源を再構成する分散計算システムを管理するためのシステムを提供する。
本発明の別の限定的ではない1つの長所は、所望の結果を達成するためにシステム管理者が単にある機能及び性能特性を入力することを可能にして、管理者が結果を得るためにシステム資源を特に供給することを必要としない。システムは、資源がどのように使用されているかを報告し視覚化することを提供できるが(例えば、システム開発及び監視目的のため、及び/又はカスタマー視認のため)、このような報告及び視覚化は、システムの管理及び通常の使用を必要としない。
本発明の別の限定的ではない長所は、ファイル・システムの資源を管理するシステム及び方法を提供することである。システムは、広い範囲の処理能力要件を持ち、広い範囲の平均ファイル・サイズを持ち、潜在的に大きい及び小さいのが混合した多数のファイル・システムを支援する。システムはさらに、管理者がサービス・レベル契約で普通に使用される性能特性(容量、処理能力及び応答時間など)の値を選択できるように、サービスの指定された品質の支援を供給する。
本発明の別の限定的ではない長所は、管理者に指定されるようなシステムの所望の状態又は性能を表す要求されたビューをシステム管理者が入力できるインターフェイスを提供する。インターフェイスはさらに、システムの実際の状態又は性能を反映する実現されたビューを表示できる。実現されたビューは、新規に生成されたファイル・システムの供給など、進行中であるがまだ完了していない変化を反映できる。また、それは、要求されたビューが変化しない場合でも、資源が負荷をシステム上でより良くバランスするためにそして部品の故障から回復するために再割当て又は移動される時、時々に変化する。システムは絶えず自動的に実現されたビューが要求されたビューに最良に一致するようにシステム資源を駆動する。
本発明の1つの観点によると、複数の資源を持つ分散計算システムを管理するためのシステムが提供される。システムは、複数の資源に通信可能に接続された少なくとも1つのサーバーを含み、ユーザからの分散計算システムの要求された特性を受取ることができるように構成されていて、そして要求された特性を満足するために自動的及び動的に複数の資源を構成する。
本発明の第2の観点によると、複数の資源を持つ分散ファイル・システムを管理するためのシステムが提供される。システムは、ユーザが、ファイル・システムの少なくとも1つの所望の特性を表す、ファイル・システムの要求されたビューを入力できるように構成されたインターフェイスと、第1部分はファイル・システムの少なくとも1つの実際の特性を表すファイル・システムの実現されたビューを監視するために構成され、第2部分は要求されたビューと実現されたビューとを記憶するように構成され、第1部分と第2部分と複数の資源に通信可能に接続された少なくとも1つのサーバーとを含み、少なくとも1つのサーバーは要求されたビューと実現されたビューとを比較して、実現されたビューが要求されたビューと一致するように複数の資源を自動的且つ動的に修正するように構成されている。
本発明の第3の観点によると、分散計算システム中の複数の資源を管理するための方法が提供される。方法は、分散計算システムの少なくとも1つの要求された特性を表す、分散計算システムの要求されたビューを受取り、分散計算システムの少なくとも1つの実際の特性を表す、分散計算システムの実現されたビューを監視し、要求されたビューと実現されたビューを比較し、そして、実現されたビューが要求されたビューを首尾一貫して満足することを確保するように複数の資源を自動的且つ動的に構成する、各ステップを含む。
本発明のこれらと他の長所及び特徴は、添付図面を参照した以下の説明から明らかとなる。
〔実施の形態の詳細な説明〕
当業者が本発明を実施できるように、本発明の例を示した添付図面を参照して、本発明を詳細に説明する。本発明は、当業者には明らかなように、ソフトウェア、ハードウェア、及び/又はファームウェア、又はそれらのどんな組合わせを使用して実現できる。本発明の好適な実施の形態を、分散計算システムのファイル・システムの例示的な実現を参照してここに詳細に説明する。しかし、本発明は、この例示的な実現に限定されるものではなく、ある機能、性能特性及び/又は結果を提供するために供給されて構成される複数の資源を含んだいずれの計算システムにおいて実現できる。
I.一般システム・アーキテクチャ
図1を参照すると、本発明の1つの実施の形態による、システム資源を管理する方法及びシステムを組み込んだ、例示的に高度にスケーラブルな、分散計算システム100が示されている。分散計算システム100は、サービス・ノード130a−130n及びシステム管理サーバー(SMS)/ブート・サーバー対116a、116bを含む、複数の資源を有する。また、システム100は、複数の分配されず割当てられていない資源(図示しない)を含むことができる。各SMSサーバー116a、116bは、通常のサーバー、計算システム又はこれらの装置の組合わせを含むことができる。各SMSサーバー116a、116bは、以下により詳しく完全に説明されるファイル・システムの要求された及び実現されたビューを含む、システム100に関する状態及び構成情報を記憶する構成データベース(CDB)114a、114bを含む。SMSサーバー対116a、116bの1つは(例えば、SMSサーバー116a)、主SMSサーバーとして機能し、他は(例えば、SMSサーバー116b)、バックアップとして機能し、主SMSサーバーが利用不可能な場合に主SMSサーバーと同じ機能を実行するように構成されている。SMSサーバー対116a、116bの各々は、システム管理サービスを実行するように構成されたSMSサーバー対の上に搭載されたハードウェア、ソフトウェア及び/又はファームウェアを含んだSMSモニターを含む。これらのサービスは、ユーザの選択したある性能特性及び機能を提供することを確保するためにシステムがシステム資源を自律的且つ動的に供給して修正することを含む。さらに、SMSサーバー対116a、116bは、サービスノードの開始、停止、及び再ブートなどの他の管理サービス、及び新規に活性化されたノードへのソフトウェアのローデイングについて責任を持つ。別の実施の形態では、SMSサーバー対116a、116bは、前述した機能の1つ又は複数を実行する追加の別個の装置を含むことができる(例えば、別個のブート専用サーバー)ことが理解される。以下の説明では、SMSサーバー対116a、116bは集合的にSMSモニター116と呼ばれ、そしてCDB対114a、114bは集合的にCDB114と呼ばれる。さらに、1つのコンポーネントを指す数“n”が異なるコンポーネントの数“n”とは必ずしも等しくないため、“n”項はここでは不定の複数を指すために使用される。例えば、サービスノード130a−130nの数は、サービス120a−120nの数と等しい必要はないが、等しくても良い。
システム100内の各サービスノードは、インターフェイス(例えば、160a1−160an、160b1−160bn、160n1−160nn)を用いて、例えば、限定的ではなく、スイッチド・インターネット・プロトコル(IP)ベース・ネットワーク、バス、無線ネットワーク、又は、他の適当な相互接続機構を含んだ、少なくとも一対のスイッチング・ファブリック110a−110nに接続される。スイッチング・ファブリック110a−110nは、どんな数のサービスノード、ブートサーバー、及び/又はSMSモニター116、管理エンティテイなどの機能専用サーバーへの接続を提供する。
さらに、システム100は、システムのさまざまなノードに接続されて(例えば、サービスノード130a−130n及びSMSサーバー116a、116bへ)、ノードへ「ハード故障」及びリセット制御と共に外部電力接続を供給する複数の遠隔電力制御ユニット115を含む。特に、遠隔電力制御ユニット115は、SMSモニター116が、各コンポーネントの外側の位置から、選択的にノードを停止させ、又は、ノードを開始又はリセットすることを可能にする。特に、SMSモニター116は、選択的に制御信号を電力制御ユニット115へ通信して、ユニットがそれぞれのノードを選択的に停止又はリセットさせる。各電力制御ユニット115は、冗長経路を介してスイッチング・ファブリック110a−110nへ接続されて、これにより、単一経路が故障した場合でも、SMSモニター116がノードを制御することを可能にする。
好適な実施の形態では、システム100内の各サービス・ノード130a−130nは、例えば、限定的ではなく、ゲートウェイ・プロセス、メタデータ・プロセス、又は、ファイル・システムの記憶プロセスであってよい、少なくとも1つのサービス・プロセス103a−103nを含むことができる。各サービスノード130a−130nは、単一サービス・インスタンス(例えば、サービスノード130a又は130b)、又は主サービス・インスタンス(例えば、サービスノード130c1又は130d1)及び1つ又は複数のバックアップ・サービス・インスタンス(例えば、サービスノード130c2又は130d2)であることができる。主サービス・インスタンス及びその1つ又は複数のバックアップ・サービス・インスタンスは大抵の場合、独立の故障を確保するために物理的に別個のマシーンに存在し、これにより、主サービス・インスタンス及びその1つ又は複数のバックアップ・サービス・インスタンスが一緒に故障することを防止する。単一サービス・インスタンス又は主及びバックアップ・サービス・インスタンスを提供するかどうかに関わらず、サービス120a−120nは典型的に、分散計算システム内で異なる機能を提供する。例えば、限定的ではなく、1つのサービスは、分散されたスケーラブルな耐故障メタデータ・サービス(MDS)を提供し、別のは、分散されたスケーラブルなゲートウェイ・サービス(GS)、分散されたスケーラブルなビットファイル記憶サービス(BSS)、又はいくつかの他のサービスを提供する。メタデータ、ゲートウェイ、及び記憶サービスの例が、本出願人に譲渡され、ここに参照により全体が組み込まれた、米国特許出願シリアル番号09/709,187、発明の名称「スケーラブルな記憶システム」、に記載されている。
また、システム100中の各サービス・ノード130a−130nは、ライフ・サポートサービス(LSS)プロセス102a−102nを含むことができる。LSSプロセスは、分散計算システム100のサービス及びコンポーネントの状態及び動作を監視する。この状態及び動作の情報は、SMSモニター16へ通信されて、この情報をユーザが選択した性能特性及び機能を達成するためにどのようにシステム資源を割当てて修正すべきかを決定するために使用される。LSSシステムの機能は、本出願人に譲渡され、ここに参照により全体が組み込まれた、同時係属の米国特許出願、発明の名称「分散計算システム中のコンポーネントの状態及び動作を監視するためのシステム及び方法」、に記載されている。
また、システム100中の各サービスノード130a−130nは、サービスノードを遠隔的に管理するため(例えば、サービスノードの開始、停止、及び再ブート)、SMSモニター116により使用される管理エンティテイである、SMSエイジェント・プロセス101a−101nを含む。各エイジェントは、ノードへソフトウェアをロードするためにSMSモニター116により遠隔的に指示できる耐故障ソフトウェア・ローディング機構を含むことができる。1つの実施の形態では、全ノードについてのソフトウェアは、SMSモニター116の2つの別個のブートサーバー部分中に記憶されている。
本発明は、サービスノードのコンポーネントがSMSモニター116及びスイッチング・ファブリック110a−110nを介して他のコンポーネントから直接にメッセージを受取ることを可能にする。又は、代替的に、このようなメッセージは、既知の又は適当な仲介スキームにより、通信ソフトウェア104a−104nの別の層により仲介される。
本発明の原理によると、前述のノード及びサービスは、説明の目的のためにのみ与えられたものであり、限定するものではない。システム100の資源は、どんな機能又はサービスに対して使用できる。例えば、限定的ではなく、高度にスケーラブルなサービス及び耐故障サービスである。さらに、3つのサービス(すなわち、サービス120a、120b、120n)及び2つのSMS/ブートサーバー(すなわち、サーバー116a、116b)のみが示されたが、本発明によりより多くのこれらのサービス及びサーバーの各々がスイッチング・ファブリックを経由して互いに接続されることができる。
II.システムの操作
図2を参照すると、本発明の1つの実施の形態による、システム100などの分散計算システム内の資源を管理するためのシステム200の一般的な操作を説明するブロック図が示されている。システム200のユーザ202は、システム管理者であってよい。図2に示すように、ユーザ202は、インターフェイス204を使用することにより、計算システムの所望及び/又は必要なある機能及び/又は性能特性をSMSモニター116中に入力する。ユーザ202は、単にある機能及び性能特性を入力し(例えば、所望の結果)、そして従来のシステムで結果を得るためにシステム資源を供給するために必要とされる特定の手順又は命令を入力しない。例えば、ファイル・システム応用では、ユーザ202は、平均ファイル大きさ、ファイル数、スペース制限、帯域幅、及び/又は、秒当たりの操作などの特性を入力できる。SMSモニター116は、これらの所望の特性を反映又は表す、ファイル・システムの要求されたビューを生成するためにこれらの特性を使用する。
さらに、SMSモニター116は、ファイル・システムが所望の結果を達成するために、自動的にシステム資源208を供給する。さらに、SMSモニター116は、システムの実際の状態又は性能を反映するファイル・システムの実現されたビューを生成する。一般に、実現されたビューは、新規に生成されたファイル・システムの供給など、進行中であるがまだ完了していない変化を反映する。また、要求されたビューが変化しない場合でも、システム上での負荷のより良いバランスのため及びコンポーネントの故障からの回復のために、資源が再割当て又は移動される時、実現されたビューは、時々に変化する。
SMSモニター116は、絶えず、ファイル・システムの実現されたビューを要求されたビューと比較して、実質的に実現されたビューが要求されたビューと一致又はミラーするように、システム資源208を再割当て及び/又は再構成する。例えば、もし、ユーザ202が要求されたビューを変えると、SMSモニター116は更新された所望の結果を与えるためにシステム資源208を修正、再割当て及び/又は再構成する(もし、必要ならば)。同様に、もし、システム資源208の修正、追加、問題又は故障があると、SMSモニター116は実現されたビューが絶えず実質的に要求されたビューと一致又は満足するように、システム資源208を修正、再割当て、及び/又は再構成する(もし、必要ならば)。
この自動的「再供給」機能を提供するため、SMSモニター116は資源の割当てと状態とを識別する記録を維持する(例えば、CDB114内に)。SMSモニター116が、1つ又は複数のシステム資源中の状態の変化の通知を受取る時(例えば、LSSプロセスから)、SMSモニター16は関連の割当てを見て、所望の状態が現在の状態に一致するかどうかを決定する。もし、状態の変化がシステム資源の故障を表している場合、SMSモニター116は資源を再開始又は再ブートすることを試みる。もし、資源がまだ適当に機能しなければ、SMSモニター116は、実現されたビューが再び実質的に要求されたビューと一致するようにシステム資源を修正及び/又は再割当てするための修正サブルーチンを開始する。システム資源を修正するためにSMSモニター116により実行されるさまざまな手順は、下のII.E.3節により詳細に記載されている。
要求されたビューと実現されたビューとは、別々であるが、並列に記録の組に記憶される(例えば、CDB114内に)。最初の生成時の実現されたビューは要求されたビューのコピーであり、オブジェクト・タイプに依存して満たされるいくつかの追加のフィールドを持つ。更新に対しては、特定のフィールドがコピーされるが、実行可能と決定されたシステムの実行状態への更新に必要なもののみである。
A.ユーザ・インターフェイス
システム200は、システム管理者などのユーザがファイル・システム及びそれらのそれぞれの性能パラメータを生成して修正できる通常のユーザ・インターフェイスを使用する。また、インターフェイス204は、システム開発及び監視目的のため及びカスタマ視認のために、資源がどのように使用されているかの視覚化及び報告を提供する。しかし、このような報告及び視覚化は、システムの通常の使用と管理には必要でない。ユーザ・インターフェイス204は、コマンドライン・インターフェイス(CLI)、ウェブサーバー・インターフェイス、SNMPサーバー・インターフェイス、及び/又はグラフィカル・ユーザ・インターフェイス(GUI)を含む。図3は、本発明に使用できるグラフィカル・ユーザ・インターフェイスの修正画面300の例示的な実施の形態を示す。インターフェイス画面300は、ユーザがファイル・システム・パラメータを更新又は修正することを可能にする。例えば、インターフェイス画面300は、ユーザが名前、仮想IPアドレス、スペース制限、平均ファイル大きさ、ファイル数、帯域幅、及び、ファイル・システムの一秒当たりの操作を変更することを可能にするフィールドを含む。図4は、ユーザがファイル・システムの実際の性能を見ることができる画面400の例示的な実施の形態を示す。ユーザは、容量、自由スペース、使用、一秒当たりの操作(NFS Ops/秒)、一秒当たりの平均読出し及び書込み操作(例えば、KB/Sec)、及び他の関連の性能パラメータなどの性能パラメータを見ることを要求できる。代替的な実施の形態では、その他の適当な性能パラメータを表示できる。好適な実施の形態では、グラフィカル・ユーザ・インターフェイスが、ユーザにファイル・システムの生成、可能化、不可能化、及び削除を可能にし、システムの使用と他の報告の生成を可能にし、そして、その他の適当な管理機能の実行を可能にするための追加の画面も含むことができる。
B.ファイル・システムの要求されたビュー
好適な実施の形態では、ファイル・システムの要求されたビューは、システム性能及び機能情報など、ユーザにより管理可能な情報を含むことができる。もし、特性がユーザにより管理できなければ、ユーザに見える必要がなく(しかし、見えても良く)、CDBの「要求されたビュー」の部分の一部である必要がない(しかし、あっても良い)。
好適な実施の形態では、要求されたビューは、完全なファイル・システムを表す“filesystem”エンティテイを含む。“filesystem”エンティテイが完了したと見なされる前に、全ての必要な特性が設定されなければならない。ユーザは、要求されたビュー内の“filesystem”エンティテイを生成、修正、開始、停止、及び、削除できる。“filesystem”エンティテイを削除することは、エンティテイにより定義されるファイル・システムの削除の要求を表す。要求は、ファイル・システムがファイル・システムの実現されたビューから消滅するまでは完了しない。
また、“filesystem”エンティテイは、作成、削除、開始、停止、及び修正の各々について、対応する状態特性と進行及び故障情報報告特性を持つ。状態特性は、「開始されていない」、「進行中」、「完了」、又は、「故障」を示し、そして、進行及び故障情報報告特性はこれらの状態値に利用可能などんな理由を示すことができる。特に、「進行中」状態は、その活動の段階を示す情報報告を持つことができる。「故障」状態は、普通は、資源の制限又は割当ての枯渇である、理由を示す情報報告を持つことができる。
要求されたビューは、状態特性の更新を除き、システムによりそれ自身で変更されることはない。もし、更新が実現できなければ(例えば、所望のサービスレベル契約(SLA)が資源の不足のために満たすことができないため)、これは状態に示される(及び、長いメッセージに基づいた警告により)。
たとえ、更新が最初は成功したとしても、資源が後で失われて、サービスレベル契約(SLA)に合うことがもはや実行不可能となることもあり得る。両方の場合において、システムは、現在実現されたビューが、ある程度、要求されたビューを反映していないことを示す。管理インターフェイスによる要求されたビューに対する同期的更新は、いくつかの一貫性及び実現可能性検査を実行できるが、検査は非同期事象(資源の予期されない損失など)により常に無効化されることに注意する。すなわち、SMSモニター116は、不可能な要求を拒絶することを試みるが、全ての場合で後の非同期故障を回避することはできないため、アーキテクチャは両方の故障モデルを支援しなければならない。
顧客(例えば、ユーザ又はシステム管理者)、ユーザ設定、及び、ファイル・システムは、管理ソフトウェアにより最初に処理される時、独特な識別子を割当てられることができる。もし、ファイル・システムが、要求されたビューから削除され、そして同じ名前を持つ新規なファイル・システムが要求されたビュー内に生成された場合、2つのファイル・システムは異なる(そして、第1のファイル・システム内のいずれのデータは削除時に失われる)。
C.ファイル・システムの実現されたビュー
好適な実施の形態では、ファイル・システムの実現されたビューは、例えば、ユーザ又は顧客には見えない領域中の、CDB114のシステム・プライベート領域中に記憶できる。ファイル・システムの実現されたビュー・エンティテイは、CDB114のトップ・レベル“_filesystems”の下に記憶できる。実現されたビュー内の各ファイル・システム・エンティテイは、ファイル・システムの顧客/ユーザ独特IDを指定する属性を含むことができる。もしあれば、ファイル・システムに対する要求されたビューを見るために顧客独特ID及びファイル・システム独特IDを使用できる。
実現されたビューは、生成、修正、開始、停止、及び、シャットダウンに関するファイル・システムの状態を表すために使用される追加の属性を含むことができる。もしあれば、それは供給された資源を記録する属性も含むことができる。
D.状態マシーン管理
好適な実施の形態では、システム200は、与えられた操作中のさまざまなステップを内在的に順序付ける状態マシーンとして、ファイル・システム(例えば、システム100)上のさまざまな操作をモデルする。好適な実施の形態では、SMSモニター116は、限定的ではなく、ファイル・システム生成、修正、削除、開始及び停止などの全ての必要なファイル・システム機能に対して状態マシーンを含む。いくつかの場合、故障の発生など、ある状態マシーンは中間状態で別の状態マシーンを開始後に終了する。例えば、もし、ファイル・システム生成中のいくつかのステップの第2が故障した場合、それは生成状態マシーンを終了して、その最終状態から2つのステップの状態マシーンの削除を開始する(既に生成が完了しているそれらのステップを単に反転するため)。また、ファイル・システムが最初にシャット・ダウンされることが必要な、削除などの状態マシーンがシャット・ダウン状態マシーンを開始して、そしてその状態マシーンの完了をトリガーする。
SMSモニター116は、状態マシーンを管理して、あるエラー及び早熟な終了状態に対する動作を含む、それを状態シーケンスに組み込む。状態値はシンボリック形式で報告でき、2進形式で記憶される。ファイル・システムに対する状態特性は実現された及び要求されたビューの両方において繰返される(要求されたビュー中に状態特性を設定する試みは無視されることに注意する)。
状態マシーンは、2つの状態、「準備」及び「動作」において実行できる。「準備」状態は、外部事象に対する同期点としての機能を果たし、そして、「動作」状態は所望のファイル・システム機能(例えば、生成、修正、開始、停止等)を実行する。「準備」クラスの状態に対して、SMSモニター16は、状態マシーンの早熟な終了を導く状態を検査し(生成、開始、又は修正されている最中のファイル・システムの削除の要求など)、状態を適当に変更する(例えば、生成時に削除が要求された場合には「SMS故障」状態へ)。このような状態が存在しない場合、それは自動的に状態を「動作」クラスの対応する状態へ進めて、そして、どんな外部動作にもかかわらず、完了を実行する。この時点で、状態は次の状態の「準備」クラスへ進む。この「準備」及び「動作」クラスの使用は、操作が最終的に失敗する場合に時間と資源を節約する、ファイル・システム操作からの早期の終了機会を与える。
SMSモニター116は、状態マシーンを管理するためのさまざまな機能を含むことができる。これらの状態マシーンのさまざまな状態を列挙するために、状態マシーンの列挙のための定義された記号が存在する。この方法では、SMSモニター116は、各状態マシーンについて状態のシーケンス、そして、各状態に対して、その状態のエラーの場合に強制される状態マシーン値、及び、非標準状態遷移を強制するその他の特性を定義する内部テーブルを維持できる。
SMSモニター状態マシーン・エンジンは、SMSモニター116のトップレベル・ループの一部として実行され、さまざまなサービス・マスターに特有なハンドラー・ルーチンを呼出す。SMSモニター116において、サービス・マスターは、別々のプロセス又はスレッドではなく、関連した機能の集まりである。エンジンは、状態特性値を自動的に設定することにより、状態マシーンを新しい状態へ進める。
状態マシーンと共に各エンティテイは、要求された及び実現されたビューの両方において、各状態マシーンについて状態特性を持つことができる。状態特性は、ストリング値、その現在状態を提供する。
また、SMSモニター状態マシーン・エンジンは、一致しないCDBデータを一致する状態に強制するように構成できる。エンジンは、どんなCDB更新エラーをサーバーについて致命的であるとして取扱うことができる。バックアップ・システム上の回復が可能ならば進行するように、ローカルCDBコピーをサスペクトとしてフラグすることを試みる。もし、全てのCDBコピーがサスペクトと印を付けられたならば、SMSモニター116は最新のコピーと共に進むことを試みる。もし、その試みが失敗した場合、SMSモニター116は故障通知を配達することを試みて、それ以上の更新の試みを終える。1つの実施の形態では、システム200は、冗長CDB情報をメタデータ・サービス(MDS)とビットファイル記憶システム(BSS)インスタンスと共に記憶し、この情報をCDB114を再構築するために使用する。代替的に、CDB114は手動で再構築される。
E.資源管理
ファイル・システム又はその他の計算システムを供給するため、SMSモニター116は、与えられたクラスの利用可能な資源を決定して、そして与えられた資源を与えられたエンティテイ又はサービスへ割当てる(例えば、ファイル・システムは、MDS、BSS及びゲートウェイ・サービス又はエンティテイを持つ)。例えば、生成されるファイル・システムにMDSパーティションを供給するために、SMSモニターは、各々が十分な余裕の処理能力と、メインメモリと、MDSパーティションの要件を収容するためのディスク空間とを持つゲートウェイ/MDSクラス・マシーンの一対を見つけるためにMDSサービス・マスタを使用する。
大きな数のゲートウェイ/MDSマシーンを必要とせずにいくつかの小さなファイル・システムを処理するために、一般に、SMSモニター116は、マシーン全体よりも少なく割当てる。一方、システムはあるエンティテイの資源要求について制限された知識だけを持つことができ、資源測定のために小さな範囲の値を使用することができる。
1.割当て単位
SMSモニター116は、システム性能特性又は資源値が認定できる測定可能単位を定義する。単位のタイプと大きさは、実現されるシステムのタイプとシステムの機能及び性能特性に基づき、変化する。好適な実施の形態では、SMSモニター116は、処理能力(CPU)、メモリ、容量、一秒当たりの操作、応答時間、スループットなどの特性を測定するために、単位を定義する。これらの単位の限定的でない例のいくつかが以下にリストされる。
CPU単位:1GHZx86タイプ・プロセッサの0.001(“1MHZ”)
メモリ単位:1MB
ディスク容量単位:1MB
ディスク操作単位:一秒当たり1ランダムI/O
ディスク・スループット単位:一秒当たり1MB
上述の単位は任意であり、CPUやディスク装置などの特定のシステム資源に割当てられた値は、近似である。資源の断片化を最小にするために、割当ては、重要な数ビットへ割当てユーティリテイ・ルーチンにより丸められる。
SMSモニター116はさらに、論理的及び物理的スイッチポート及びゲートウェイの帯域幅を測定して管理するように構成されている。ある実施の形態では、これはさまざまなアップリンクの既知の性能に基づいた手動のプロセスである。
2.資源要件
好適な実施の形態では、上述の単位で測定され認定されるさまざまなサービスの測定は、要求されたビュー及び実現されたビューの特性として含まれる。例えば、ファイル・システム特性は、平均ファイル大きさ推定(バイトで)、一秒当たりのネットワーク・ファイル・システム(“NFS”)操作推定、典型的応答時間推定(マイクロ秒で)、及び、一秒当たりのバイト推定が含まれ、これらの全ては全体としてシステム又は顧客から受け継がれるデフォルトを含む。これらの資源に対する実現されたビューが要求されたビューに実質的に一致さない時(例えば、要求されたビューの資源要件がもはや合わない時)、SMSモニター16は実現されたビューが要求されたビューと一致するように自動的にシステム資源を再構成する。特に、SMSモニター116は、実現されたビューの特性が要求されたビューの要件を満足することを確保するために、ファイル・システムを再構成する修正状態マシーンを開始する。
3.システム資源の修正
SMSモニター16は、実現されたビューが要求されたビューの要件を満足することを確保するため、システム資源を自動的に修正する。修正活動又は状態マシーンは、いくつかの異なる環境下でSMSモニター116により開始される。例えば、限定的ではなく、修正状態マシーンは、ユーザが要求されるビューを変更する時、システム資源の状態が変化する時(例えば、資源が故障又は動作不能になる時)、SMSモニター116がシステム上で好ましくない負荷のバランスの乱れを検出した時、そして、資源がシステムに加えられた時、に修正状態マシーンが開始される。
図5は、本発明の1つの実施の形態により、ユーザがシステムの要求されたビューを変更した時、修正状態マシーンを開始するために使用される例示的な方法500を示す。方法500は、ステップ510に示すように、ユーザが入力パラメータを変更した時に開始する(例えば、インタフェイス204を使用して)。変更された入力パラメータは、SMSモニター116へ送られて、ステップ520に示すように、所望の変更に対応するように要求されたビューを改訂する。そして、SMSモニター116は、ステップ530に示すように、改訂された要求されたビューを実現されたビューと比較する。次に、SMSモニター116は、ステップ540に示すように、現在実現されたビュー(すなわち、システムの現在の状態又は性能)が要求されたビュー(すなわち、システムの所望の状態又は性能)に実質的に一致するか又は満足するかを決定する。システムの現実の構成が性能標準又は使用の増加を実現及び満足するために設計されているため、要求されたビューのある変化はシステム資源の修正を開始又はトリガーしないかもしれない。したがって、もし、実現されたビューが改訂された要求されたビューと一致又は満足する場合、ステップ550に示すように、方法は終了する。もし、実現されたビューが改訂された要求されたビューと一致又は満足しない場合、ステップ560に示すように、SMSモニター116は修正状態マシーンを開始する。
図6は、本発明の1つの実施の形態による、システム資源が故障又は動作不能になった時など、システム資源の状態が変化した時に修正状態マシーンを開始するために使用される例示的な方法600を示す。方法600は、ステップ610に示すように、SMSモニター116がLSSから故障通知を受取る時に開始する(LSSからの1つ又は複数のシステム資源の故障状態を示すメッセージ)。また、SMSモニター116は再開始の際に故障通知を得ることができる。特に、再開始の際、SMSモニター116はそれが割当てたいずれの資源が故障したか又はもはや利用可能でないかどうかを検査する。故障通知(又は、その他の割当てられた資源が故障したことを発見した際)の受信の際、ステップ620に示されるように、SMSモニター116は故障資源の再開始を試みる。例えば、SMSモニター116は対応する遠隔電源ユニット115へ信号を送信して、影響を受けた資源の再開始を電源ユニット115へ指示する。そして、SMSモニター116は、再開始が成功して資源が適正に動作しているかどうかを判断するために資源の動作を観察する。例えば、SMSモニター116は資源が適正に動作しているかを判断するためにLSSを使用する。もし、再開始が成功したならば、ステップ640に示すように、方法600は終了する。もし、再開始が成功しなければ、ステップ650に示すように、SMSモニター116は修正状態マシーンを開始する。システムが修正されて、そして問題のある資源が交換された後、ステップ660に示すように、SMSモニター116は交換された資源を削除してそれを実現されたビューから取り除く。
図7は、本発明の1つの実施の形態による、システム上に負荷のバランスが失われた時に修正状態マシーンを開始するために使用される例示的な方法700を示す。方法700は、ステップ710で、SMSモニター116がさまざまなシステム資源上にある負荷を監視するところから開始する。ステップ720で、SMSモニター116が観測された使用について許容できない負荷のバランスのくずれがあるかどうかを判断する。特に、SMSモニター116は、使用がある所定の許容レベル又は量を越えたかどうかを判断するためにさまざまシステム資源の使用を観測する(又は、代替的に、使用がある所定の許容レベル又は量の下に落ちたかどうか)。もし、許容できない負荷のバランスのくずれがある場合、SMSモニター116は、ステップ730に示すように、修正状態マシーンを開始する。
好適な実施の形態では、修正状態マシーンが開始される時、SMSモニター116は、ファイル・システム(例えば、メタデータ・サービス(MDS)、ビットファイル記憶サービス(BSS)、及び、ゲートウェイ・サービス(GS))のエンティテイ又は各部分についての修正ルーチンを個別に実行できる。図8は、本発明の1つの実施の形態による、例示的な修正ルーチン又は方法800を示す。修正方法800は、ステップ810で、SMSモニター116が必要とされる資源を決定するところで開始される(例えば、割当ての所定の単位で)。SMSモニター116は、現在の要求されたビュー及び/又はシステム上の負荷のバランスのくずれの存在と大きさに基づいて、必要とされる資源を決定してもよい。例えば、SMSモニター116は、所望の容量又は性能要件が超過している程度を決定するために現在の入力パラメータと実際のシステム性能をレビューする。SMSモニター116は、割当ての所定の単位を用いて、この観測を測定可能な値に定量化する。SMSモニター116は、1つ又は複数のマッピング関数を用いてこの定量化を実行できる。これらのマッピング関数は、例えば、同様な資源を持つ同様な計算システム(例えば、ファイル・システム)の性能及び動作の前もっての測定及び解析などによる、前もっての試験と実験とにより決定できる。必要な性能及び/又は超過している必要な性能の量を入力することにより、記憶されたマッピング関数は割当ての所定の単位で必要とされる資源の量を出力できる。例えば、関数はファイル・システム・サービス又はコンポーネントに必要とされる性能特性を与えるために必要な単位数を与えることができる。
ステップ820で、SMSモニター116は、システム中で現在利用可能な資源を決定する。特に、SMSモニター116は、利用可能な割当ての単位量及びこれらの単位の分配を決定するために利用可能な資源を走査する。この走査は、システムに追加されたかもしれないどんな新資源又はホスト・エンティテイを含む。好適な実施の形態では、SMSモニター116は、1つ又は複数のリレーショナル・テーブル(例えば、CDB114中に)中に全ての資源情報を記憶して更新する。例えば、マシーンがシステムに追加された時、SMSモニター116は、そのマシーンの各特性の量又は資源値を判定した後、マシーンを「ホスト」リストへ追加して、CDB114中に特性について適正な値(割当ての単位で)を記憶する。資源の部分が割当てられる時、SMSモニター116は、そのマシーンについて使用及び未使用の資源値又は特性の現在の状態を反映するためにリスト又はテーブルを改訂する。図9は、限定的ではない1つの例の、異なる大きさ及び異なる使用の資源910−960を持つ、分散計算システム900のブロック図である。この例では、SMSモニター116は、資源910−960を走査して、各資源について使用済み(斜線ハッチで示される)の割当ての単位量と利用可能な(空白で示される)割当ての単位量を決定する。また、SMSモニター116は、各ホスト・エンティテイについて、メンバーが1つ又は複数のサービス・クラスを含んだ「割当て組」特性を記憶する。例えば、MDS割当てを作る時、MDSサービスの使用のためにラベルが付けられたマシーンのみが考慮される。マシーンがシステムに追加される時、SMSモニター116は、マシーンをそれが使用できるサービスのタイプに関して分類するためにハード符号化規則を使用する。ファイル・システムの限定的ではない例では、SMSモニター116は、次のイニシャルのクラスを定義する。“SMS”、“MDS”、“GS”及び“BSS”である。“SMS”は、ブート・サーバー、ホスト・ロギング、LSSモニター・ホスト、ウェブ・サーバー管理ホスト、及びSMSモニター・ホストを含む。
図8を再び参照すると、ステップ830で、SMSモニター116は、必要な資源を利用可能な資源に割当てるための最適化戦略を実行する。好適な実施の形態では、SMSモニター116の最適化戦略は2つの考察を含む。最初に、戦略は、必要とされる資源が単一の利用可能な資源(例えば、マシーン)に適合するかどうかを決定することにより、オーバーヘッドを最小にすることを試みる。もし、必要とされる資源が単一の利用可能な資源に適合できる場合、SMSモニター116は、必要とされる資源をその資源へ割当てる。そうでなければ、SMSモニター116は、必要な資源を最小の数の利用可能な資源へ割当てることを試みる。例えば、もし、必要とされる資源が、2000単位のMDSを表す場合、最適化ルーチンは、MDSを2つの部分に分割して各部分を利用可能な1500単位を持つ別々の資源へ割当てるよりは、利用可能な3000単位を持つホストへMDSを割当てることを「好む」であろう。ファイル・システム・コンポーネントが分割される数を減少することにより、当業者には理解されるように、システム内の全オーバーヘッド(又は、使用不可能空間)を減少する。もし、新しい資源がシステムに付け加えられた場合、SMSモニター116は、全オーバーヘッドを減少するために、前に分割されたファイル・システム・コンポーネント(すなわち、2つ又はそれ以上の資源内に存在するコンポーネント)を新資源内に統合することを選択するであろう。従って、SMSモニター116により実行される修正は、あるコンポーネント又はサービスを異なる又は新しい資源へ移動及び/又は統合することを含むことが理解される。第2に、戦略は、必要とされる資源に対して最良の場所を決定するために「最良適合」分析を実行する。すなわち、戦略は、小さすぎて別の目的又はコンポーネントのために効率的に使用できない未使用空間の相対的に小さい部分が生成されることを防止するために、必要とされる資源を最も近く一致した利用可能な資源又は資源の組に置くことを試みる。
最後に、SMSモニター116が必要とされる資源について最適な割当てを決定した後、ステップ840で示されるように、SMSモニター116は、割当てと合うように対応する資源を割当て、修正し、及び/又は、解放する。SMSモニター116は、システム資源の使用及び未使用部分の現在状態を反映するためにCDB114のリレーショナル・テーブル中に、対応する更新を記録する。ファイル・システムが修正又は生成された後、SMSモニター116は、システムをアクセスのために使用可能にする。
このようにして、SMSモニター116は、実現されたビューが一貫して要求されたビューの要件を満足することを保証するために、自動的にシステム資源を修正する。
4.ファイル・システムの生成
前述したように、ユーザは、インターフェイス204を使用して(例えば、ファイル・システム又はコンポーネントの名前を付けて、そして所望の機能又は性能特性を割当てることにより)、新ファイル・システム又はコンポーネントを生成できる。新ファイル・システムを生成するためにSMSモニター116により行われるステップは、ファイル・システムが修正される時に取られるステップと実質的に同一である。特に、SMSモニター116は、(i)マッピング関数を使用してファイル・システムについて必要な資源を決定し、(ii)利用可能な割当ての単位の量及びそれらの単位の分配を決定するために、利用可能な資源を走査し、(iii)ファイル・システムについて最良の場所を決定するために最適化ルーチンを実行し、(iv)ファイル・システムを生成するためにシステム資源を割当て、そして(v)アクセスのためにファイル・システムを使用可能にする。好適な実施の形態では、SMSモニター116は、各ファイル・システム・コンポーネント又はエンティテイ(例えば、MDS、BSS及びゲートウェイ・コンポーネントに対して)に対して、この方法を別々に実行する。
5.他のファイル・システム操作
本発明の好適な実施の形態では、3節及び4節においてそれぞれ上述されたファイル・システムの修正と生成に加えて、SMSモニター116は、ファイル・システムについて開始、停止、及び削除操作も実行できる。SMSモニター116は、これらの操作を実行するために状態マシーンを実行する。ファイル・システム開始状態マシーンは、選択されたファイル・システム又はファイル・システム・コンポーネントを活動化するように構成されている。ファイル・システム停止状態マシーンは、選択されたファイル・システム又はファイル・システム・コンポーネントを非活動化するように構成されている。そして、ファイル・システム削除状態マシーンは、選択されたファイル・システム又はファイル・システム・コンポーネントを削除するように構成されている。これらの状態マシーンの要素と機能は、業界で既知の開始、停止、及び、削除マシーンと実質的に類似している。
全ての記載された状態マシーン(例えば、生成、修正、開始、停止及び削除)の内、ファイル・システム停止及びファイル・システム削除状態マシーンは故障できない。もし、ファイル・システム生成状態マシーンが故障すると、SMSモニター116は、ファイル・システム削除状態マシーンへ変移して、部分的に生成されたファイル・システムを削除する。もし、ファイル・システム開始状態マシーンが故障すると、SMSモニター116は、ファイル・システム停止状態マシーンへ変移して、操作を停止する。もし、ファイル・システム修正状態マシーンが故障すると、SMSモニター116は、操作を終了して、ファイル・システムを要求されたビューと必ずしも一致しないが、自己矛盾がない安定な状態に残す。
上述したように、ファイル・システム操作(例えば、準備部分の間)から早期に終了する機会を与えるために、状態マシーンは「準備」及び「動作」部分に分割できる。この方法では、SMSモニターは、操作が最終的に故障した場合に時間と資源を節約する。さらに、状態マシーンは各ファイル・システム・サービス・エンティテイ(例えば、MDS、BSS、及びGS部分)について、別々の部分に分割できる。
全てのファイル・システム操作に対して、状態変化は「実現されたビュー」内の状態の更新と同じトランザクション中で「要求されたビュー」内に反映される。上述したように、状態の原因を明確にするため(特に、故障の場合)、「要求されたビュー」内に利用可能な状態結果がある。この状態報告は、状態値を更新する同じトランザクションにおいて、実現された及び要求されたビューの両方に記憶できる。
このようにして、本発明は、要求された性能要件又は特性を満足するため及び/又は適合するために自動的及びダイナミックにシステム資源を構成する分散計算システムを管理するシステム及び方法を提供する。このシステム及び方法は、所望の結果を達成するために、管理者が単にある機能及び性能特性を入力することを可能にし、結果を得るためにシステム資源を特に供給する必要が無い。システムは、要求された特性中に形成された変化、システム資源の状態の変化、システム中に発生する負荷のバランスのくずれを満足するために、システム資源を自律的及び動的に修正する。システムは、広い範囲の処理能力要件を持ち、広い範囲のファイル平均ファイル大きさを持ち、潜在的に大きいものと小さいものとが混合した、多数のファイル・システムを支援する。さらに、システムは、管理者がサービス・レベル契約書で普通に使用されるポリシー特性(処理能力や応答時間など)を指定できるように、サービスの指定された品質を支援する設備をサポートする。
本発明が好適な実施の形態を参照して特に説明されたが、当業者には本発明の範囲と精神から逸脱することなく、変形と修正が詳細と形式において可能なことが明らかである。例えば、本発明は図5、6、7及び8に説明された例示的な方法に限定されるものではない。追加の又は異なるステップと手順を方法に含ませることができる。そして、方法のステップはいかなる適当な順番で実行できる。さらに、さまざまな実施の形態は必ずしも排他的ではなく、ある実施の形態の特徴は他の実施の形態の特徴と組合わせられても、本発明の範囲と精神の中に留まることが、当業者に明らかである。
1つの実施の形態の管理システムのシステムと方法を組み込んだ例示的な分散計算システムのブロック図。 図1に示された管理システムの一般的な動作を示すブロック図。 本発明に使用されるグラフィカル・ユーザ・インターフェイスの更新された画面の例示的な実施の形態を示す図。 本発明に使用されるグラフィカル・ユーザ・インターフェイスの監視画面の例示的な実施の形態を示す図。 本発明の1つの実施の形態による要求されたビュー中の変化に応答して修正状態マシーンを開始するための例示的な方法を示すブロック図。 本発明の1つの実施の形態によるシステム資源の状態中の変化に応答して修正状態マシーンを開始するための例示的な方法を示すブロック図。 本発明の1つの実施の形態によるシステム上の負荷のバランスの変化に応答して修正状態マシーンを開始するための例示的な方法を示すブロック図。 本発明の1つの実施の形態による例示的な修正ルーチン又は方法を示すブロック図。 資源の使用の大きさが変化することを示す、分散計算システムの資源のブロック図。

Claims (21)

  1. 複数の資源を持つ分散計算システムを管理するシステムであって、
    複数の資源に通信可能に接続され、ユーザから分散計算システムの要求された特性を受取るように構成され、そして、要求された特性を満足するために自動的且つダイナミックに複数のシステム資源を構成する少なくとも1つのサーバーを含むシステム。
  2. 少なくとも1つのサーバーが、分散計算システムの実際の性能を要求された特性と比較するため分散計算システムの実際の性能を監視し、そして、実際の性能が一貫して要求された性能を満足することを保証するように複数の資源を自律的且つ動的に修正するようにさらに構成されている請求項1に記載のシステム。
  3. 分散計算システムが、ファイル・システムを含む請求項1に記載のシステム。
  4. 要求された特性が、ファイル・システムの性能特性を含む請求項3に記載のシステム。
  5. 少なくとも1つのサーバーが、主サーバーとバックアップ・サーバーとを含む請求項1に記載のシステム。
  6. 複数の資源上にそれぞれ配置されて、少なくとも1つのサーバーの遠隔制御により資源を局地的に管理するように構成された複数のエイジェントをさらに含む請求項1に記載のシステム。
  7. 少なくとも1つのサーバーが、少なくとも1つのスイッチング・ファブリックを介して複数の資源に通信可能に接続されている請求項1に記載のシステム。
  8. 少なくとも1つのサーバーと複数の資源とに通信可能に接続された複数の遠隔電力制御ユニットをさらに含み、この電力制御ユニットは少なくとも1つのサーバーから受信した制御信号に応答して複数の資源を選択的に停止及びリセットするように構成されている請求項1に記載のシステム。
  9. ユーザが分散計算システムの要求された特性を入力及び修正して、少なくとも1つのサーバーに要求された特性を通信することを可能にするように構成されたインターフェイスをさらに含む請求項1に記載のシステム。
  10. インターフェイスが、グラフィカル・ユーザ・インターフェイスを含む請求項9に記載のシステム。
  11. 複数の資源を持つ分散ファイル・システムを管理するためのシステムであって、
    ユーザが、ファイル・システムの少なくとも1つの所望の特性を表す、ファイル・システムの要求されたビューを入力できるように構成されたインターフェイスと、
    ファイル・システムの少なくとも1つの実際の特性を表す、ファイル・システムの実現されたビューを監視するように構成された第1部分と、
    実現されたビューと要求されたビューとを記憶するように構成された第2部分と、
    第1部分と第2部分と複数の資源とに通信可能に接続されて、要求されたビューと実現されたビューとを比較し、そして、実現されたビューが要求されたビューと一致するように複数の資源を自動的且つダイナミックに修正するように構成された少なくとも1つのサーバーと、
    を含むシステム。
  12. 少なくとも1つの所望の特性及び少なくとも1つの実際の特性が、性能特性を含む請求項11に記載のシステム。
  13. 性能特性が、処理能力、メモリー、容量、一秒あたりの動作、応答時間、及び、スループットからなるグループから選択されている請求項12に記載のシステム。
  14. 第2部分が、少なくとも1つのサーバー内に記憶された構成データベースを含む請求項11に記載のシステム。
  15. 第1部分が、ライフ支援サービスを含む請求項11に記載のシステム。
  16. 少なくとも1つのサーバーと複数の資源とに通信可能に接続されて、少なくとも1つのサーバーから受信した制御信号に応答して複数の資源を選択的に停止及びリセットするように構成された複数の遠隔電力制御ユニットをさらに含む請求項11に記載のシステム。
  17. インターフェイスが、グラフィカル・ユーザ・インターフェイスを含む請求項11に記載のシステム。
  18. 分散計算システム中で複数の資源を管理する方法であって、
    分散計算システムの少なくとも1つの要求された特性を表す、分散計算システムの要求されたビューを受取るステップと、
    分散計算システムの少なくとも1つの実際の特性を表す、分散計算システムの実現されたビューを監視するステップと、
    要求されたビューと実現されたビューとを比較するステップと、
    実現されたビューが一貫して要求されたビューを満足することを保証するように複数の資源を自動的且つダイナミックに構成するステップと、
    を含む方法。
  19. 複数の資源を自動的且つダイナミックに構成するステップが、
    実現されたビューが要求されたビューを満足するために必要な資源をマッピング関数を用いて決定するステップと、
    利用可能な資源の量及び利用可能な資源の分配を決定するために複数の資源を走査するステップと、
    最適化ルーチンを実行するステップと、
    最適化ルーチンに基づいて複数のシステム資源を構成するステップと、
    をさらに含む請求項18に記載の方法。
  20. 最適化ルーチンが、オーバーヘッドを減少するように構成されている請求項19に記載の方法。
  21. 最適化ルーチンが、最良適合分析を含む請求項20に記載の方法。
JP2004513962A 2002-06-12 2003-06-11 分散計算システムの管理システム及び方法 Pending JP2005530240A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/170,880 US20030233446A1 (en) 2002-06-12 2002-06-12 System and method for managing a distributed computing system
PCT/US2003/018618 WO2003107214A1 (en) 2002-06-12 2003-06-11 System and method for managing a distributed computing system

Publications (1)

Publication Number Publication Date
JP2005530240A true JP2005530240A (ja) 2005-10-06

Family

ID=29732620

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004513962A Pending JP2005530240A (ja) 2002-06-12 2003-06-11 分散計算システムの管理システム及び方法

Country Status (6)

Country Link
US (1) US20030233446A1 (ja)
EP (1) EP1552410A4 (ja)
JP (1) JP2005530240A (ja)
AU (1) AU2003239997A1 (ja)
CA (1) CA2489363A1 (ja)
WO (1) WO2003107214A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8490104B2 (en) 2005-10-31 2013-07-16 Sony Corporation Method and apparatus for reservation and reallocation of surplus resources to processes in an execution space by a local resource manager after the execution space is generated succeeding the initialization of an application for which the execution space is created and the resources are allocated to the execution space by a global resource manager prior to application execution

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE0200417D0 (sv) * 2002-02-13 2002-02-13 Ericsson Telefon Ab L M A method and apparatus for reconfiguring a server system
US20040186905A1 (en) * 2003-03-20 2004-09-23 Young Donald E. System and method for provisioning resources
US8782654B2 (en) 2004-03-13 2014-07-15 Adaptive Computing Enterprises, Inc. Co-allocating a reservation spanning different compute resources types
WO2005089245A2 (en) 2004-03-13 2005-09-29 Cluster Resources, Inc. System and method of co-allocating a reservation spanning different compute resources types
CA2559584A1 (en) 2004-03-13 2005-09-29 Cluster Resources, Inc. System and method of providing a self-optimizing reservation in space of compute resources
EP1725947A4 (en) 2004-03-13 2008-08-06 Cluster Resources Inc SYSTEM AND METHOD FOR ADVANCED RESERVATIONS IN A CALCULATION ENVIRONMENT
US7890629B2 (en) * 2004-03-13 2011-02-15 Adaptive Computing Enterprises, Inc. System and method of providing reservation masks within a compute environment
GB2412754B (en) * 2004-03-30 2007-07-11 Hewlett Packard Development Co Provision of resource allocation information
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
US7627099B2 (en) * 2004-10-08 2009-12-01 At&T Intellectual Property I, L.P. System and method for providing a backup-restore solution for active-standby service management systems
US8271980B2 (en) 2004-11-08 2012-09-18 Adaptive Computing Enterprises, Inc. System and method of providing system jobs within a compute environment
US7996455B2 (en) 2005-06-17 2011-08-09 Adaptive Computing Enterprises, Inc. System and method for providing dynamic roll-back reservations in time
US8863143B2 (en) 2006-03-16 2014-10-14 Adaptive Computing Enterprises, Inc. System and method for managing a hybrid compute environment
WO2006098725A2 (en) 2005-03-11 2006-09-21 Cluster Resources, Inc. System and method for enforcing future policies in a compute environment
US8631130B2 (en) 2005-03-16 2014-01-14 Adaptive Computing Enterprises, Inc. Reserving resources in an on-demand compute environment from a local compute environment
US9225663B2 (en) 2005-03-16 2015-12-29 Adaptive Computing Enterprises, Inc. System and method providing a virtual private cluster
US9231886B2 (en) 2005-03-16 2016-01-05 Adaptive Computing Enterprises, Inc. Simple integration of an on-demand compute environment
EP1872249B1 (en) 2005-04-07 2016-12-07 Adaptive Computing Enterprises, Inc. On-demand access to compute resources
US20070055740A1 (en) * 2005-08-23 2007-03-08 Luciani Luis E System and method for interacting with a remote computer
EP1798934A1 (en) * 2005-12-13 2007-06-20 Deutsche Thomson-Brandt Gmbh Method and apparatus for organizing nodes in a network
US20080126325A1 (en) * 2006-06-26 2008-05-29 William Pugh Process for making software diagnostics more efficient by leveraging existing content, human filtering and automated diagnostic tools
US8041773B2 (en) 2007-09-24 2011-10-18 The Research Foundation Of State University Of New York Automatic clustering for self-organizing grids
US8090833B2 (en) * 2009-08-31 2012-01-03 Red Hat, Inc. Systems and methods for abstracting storage views in a network of computing systems
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
US8732286B2 (en) * 2010-03-31 2014-05-20 Honeywell International Inc. Health management systems with shadow modules
US9240931B2 (en) * 2010-07-30 2016-01-19 Hewlett Parkard Enterprise Development LP Information technology service management
US8621052B2 (en) 2010-08-20 2013-12-31 International Business Machines Corporation Performance tuning for software as a performance level service
KR101781063B1 (ko) * 2012-04-12 2017-09-22 한국전자통신연구원 동적 자원 관리를 위한 2단계 자원 관리 방법 및 장치
KR101430570B1 (ko) * 2012-08-29 2014-08-18 삼성에스디에스 주식회사 분산 컴퓨팅 시스템 및 상기 분산 컴퓨팅 시스템에서의 장애 복구 방법
CN102983990A (zh) * 2012-11-07 2013-03-20 曙光云计算技术有限公司 虚拟机的管理方法和装置
US10592475B1 (en) * 2013-12-27 2020-03-17 Amazon Technologies, Inc. Consistent data storage in distributed computing systems

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5857190A (en) * 1996-06-27 1999-01-05 Microsoft Corporation Event logging system and method for logging events in a network system
US5768255A (en) * 1996-06-28 1998-06-16 Mci Communications Corporation System and method for monitoring point identification
US6298120B1 (en) * 1996-06-28 2001-10-02 At&T Corp. Intelligent processing for establishing communication over the internet
US6324654B1 (en) * 1998-03-30 2001-11-27 Legato Systems, Inc. Computer network remote data mirroring system
US6757681B1 (en) * 1998-06-02 2004-06-29 International Business Machines Corporation Method and system for providing performance data
US6259448B1 (en) * 1998-06-03 2001-07-10 International Business Machines Corporation Resource model configuration and deployment in a distributed computer network
US6192470B1 (en) * 1998-07-29 2001-02-20 Compaq Computer Corporation Configuration sizer for selecting system of computer components based on price/performance normalization
US6339803B1 (en) * 1999-02-19 2002-01-15 International Business Machines Corporation Computer program product used for exchange and transfer of data having a queuing mechanism and utilizing a queued direct input-output device
US6345327B1 (en) * 1999-02-19 2002-02-05 International Business Machines Corporation Queuing method and apparatus for providing direct data processing access using a queued direct input-output device
US6470464B2 (en) * 1999-02-23 2002-10-22 International Business Machines Corporation System and method for predicting computer system performance and for making recommendations for improving its performance
US6543047B1 (en) * 1999-06-15 2003-04-01 Dell Usa, L.P. Method and apparatus for testing custom-configured software/hardware integration in a computer build-to-order manufacturing process
US6460082B1 (en) * 1999-06-17 2002-10-01 International Business Machines Corporation Management of service-oriented resources across heterogeneous media servers using homogenous service units and service signatures to configure the media servers
US6449739B1 (en) * 1999-09-01 2002-09-10 Mercury Interactive Corporation Post-deployment monitoring of server performance
US7127518B2 (en) * 2000-04-17 2006-10-24 Circadence Corporation System and method for implementing application functionality within a network infrastructure
US7209473B1 (en) * 2000-08-18 2007-04-24 Juniper Networks, Inc. Method and apparatus for monitoring and processing voice over internet protocol packets
US7082521B1 (en) * 2000-08-24 2006-07-25 Veritas Operating Corporation User interface for dynamic computing environment using allocateable resources
US6700971B1 (en) * 2000-11-27 2004-03-02 Avaya Technology Corp. Arrangement for using dynamic metrics to monitor contact center performance
ATE379807T1 (de) * 2000-12-11 2007-12-15 Microsoft Corp Verfahren und system zur verwaltung von mehreren netzwerk-betriebsmitteln

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8490104B2 (en) 2005-10-31 2013-07-16 Sony Corporation Method and apparatus for reservation and reallocation of surplus resources to processes in an execution space by a local resource manager after the execution space is generated succeeding the initialization of an application for which the execution space is created and the resources are allocated to the execution space by a global resource manager prior to application execution

Also Published As

Publication number Publication date
US20030233446A1 (en) 2003-12-18
AU2003239997A1 (en) 2003-12-31
WO2003107214A1 (en) 2003-12-24
CA2489363A1 (en) 2003-12-24
EP1552410A4 (en) 2007-12-19
EP1552410A1 (en) 2005-07-13

Similar Documents

Publication Publication Date Title
JP2005530240A (ja) 分散計算システムの管理システム及び方法
US11212286B2 (en) Automatically deployed information technology (IT) system and method
US8434078B2 (en) Quick deployment method
CN106716360B (zh) 支持多租户应用服务器环境中的补丁修补的系统和方法
US8386830B2 (en) Server switching method and server system equipped therewith
US8387037B2 (en) Updating software images associated with a distributed computing system
US9817721B1 (en) High availability management techniques for cluster resources
JP4462024B2 (ja) ディスク引き継ぎによるフェイルオーバ方法
US7383327B1 (en) Management of virtual and physical servers using graphic control panels
US20030233648A1 (en) System and method for managing software upgrades in a distributed computing system
US11442904B2 (en) Systems and methods for tuning a storage system
US20060173993A1 (en) Management of software images for computing nodes of a distributed computing system
JP2005276177A (ja) ネットワーク構成のチェックおよび修理のための方法、システムおよびプログラム
CN106657167B (zh) 管理服务器、服务器集群、以及管理方法
JP2007079885A (ja) データ入出力負荷分散方法、データ入出力負荷分散プログラム、計算機システムおよび管理サーバ
CN112395047A (zh) 虚拟机故障疏散方法、系统及计算机可读介质
JPWO2012168995A1 (ja) I/oスイッチの制御方法、仮想計算機の制御方法及び計算機システム
JP2012133824A (ja) サーバ切り替え方法、およびサーバシステム
EP1644825A1 (en) Apparatus and method for self management of information technology component
JP4877368B2 (ja) ディスク引き継ぎによるフェイルオーバ方法
De Palma et al. Autonomic Administration of Clustered J2EE Applications.
CN117149095A (zh) 基于nas的集群管理方法、装置、计算机设备及介质
JP5043212B2 (ja) デプロイ方法、プログラム及びサーバシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060605

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081117

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090511