JP2008524682A - 均質化されたリソース・プールに対するコンピュータの迅速なプロビジョニング - Google Patents

均質化されたリソース・プールに対するコンピュータの迅速なプロビジョニング Download PDF

Info

Publication number
JP2008524682A
JP2008524682A JP2007546041A JP2007546041A JP2008524682A JP 2008524682 A JP2008524682 A JP 2008524682A JP 2007546041 A JP2007546041 A JP 2007546041A JP 2007546041 A JP2007546041 A JP 2007546041A JP 2008524682 A JP2008524682 A JP 2008524682A
Authority
JP
Japan
Prior art keywords
file
data processing
processing system
nodes
files
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
JP2007546041A
Other languages
English (en)
Other versions
JP2008524682A5 (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 JP2008524682A publication Critical patent/JP2008524682A/ja
Publication of JP2008524682A5 publication Critical patent/JP2008524682A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques

Abstract

【課題】データ処理システム上にソフトウェアをインストールするための改良された方法、装置、およびコンピュータ命令を提供すること。
【解決手段】プロビジョニングされるデータ処理システムのためのファイルを識別して、識別されたファイルを形成する。これらの識別されたファイルは、ロケーション・マップを使用して探索される。ロケーション・マップは、一式のファイルを識別し、それらの一式のファイルのうちの1つのファイルが配置されているネットワーク・データ処理システム内のそれぞれのノードを識別する。識別されたファイルは、ロケーション・マップを使用してネットワーク・データ処理システム内の複数のノードからデータ処理システムへ転送されて、インストレーション・ファイルを形成する。それらのインストレーション・ファイルを使用して、データ処理システムがプロビジョニングされる。
【選択図】図1

Description

本発明は、一般に改良されたデータ処理システムに関し、詳細には、データを処理するための方法および装置に関する。より詳細には、本発明は、ソフトウェアをインストールするための方法、装置、およびコンピュータ命令に関する。
ネットワーク・データ処理システムが、ビジネスおよびその他のエンティティによって幅広く使用されている。これらのネットワークとしては、たとえばLAN(local area network)およびWAN(wide area network)が含まれる。ネットワーク・データ処理システムは、単一のフロアまたは建物内に配置することができる。その他の場合として、1つのネットワーク・データ処理システムが、複数の建物に、あるいは別々の都市または国においてさえ配置されることもある。
このようなネットワーク・データ処理システムは、ビジネスを実施するため、およびエンティティ内でその他の作業を実施するために使用される。ネットワーク管理者およびその他のITプロフェッショナルは、ネットワーク・データ処理システムを保持し、拡張する。これらの管理者およびプロフェッショナルは、ネットワーク・データ処理システム内におけるデータの冗長性を保証するためのバックアップ・システムを維持する。バックアップ・データは、テープ、ディスク・ドライブ、光ディスク、あるいはネットワークに接続されたデバイスなど、さまざまなメディア上に保存することができる。このバックアップ・データは、ネットワーク・データ処理システム上で損傷を受けたファイルや紛失したファイルをリストアするために使用することができる。ネットワーク・データ処理システムを維持し拡張する際に、そのネットワーク・データ処理システム内で使用するために新たなコンピュータをプロビジョニングし、あるいはアプリケーションをコンピュータ上にプロビジョニングすることができる。コンピュータは、そのコンピュータをネットワーク・データ処理システム内で使用できるように必要なファイルをそのコンピュータ上にインストールすることによってプロビジョニングされる。プロビジョニングは、たとえばオペレーティング・システムとアプリケーションとを含むコンピュータ全体のセットアップを含むことができるし、あるいは単一のアプリケーションのインストールを含むこともできる。
プロビジョニングは、サーバなどのソースからファイルをダウンロードすること、およびそれらのファイルをコンピュータ上にインストールすることを含んでいる。新たなコンピュータがプロビジョニングされる場合には、ユーザにとって必要なすべてのプログラムやアプリケーションに加えて、オペレーティング・システムが、その新たなコンピュータ上にインストールされる。これらのファイルが数多く要求されると、それらのファイルを提供するサーバがボトルネックとなって、処理が遅延するおそれがある。たとえば特定のタイプのオペレーティング・システムが100台の異なるコンピュータ上に同時にインストールされている状況では、サーバはコンピュータをプロビジョニングするために使用されるファイルを迅速に提供できない可能性がある。
したがって、データ処理システムをプロビジョニングするための改良された方法、装置、およびコンピュータ命令があれば、有利であろう。
本発明は、データ処理システム上にソフトウェアをインストールするための改良された方法、装置、およびコンピュータ命令を提供する。このプロセスは、プロビジョニングされるデータ処理システムのためのファイルを識別して、識別されたファイルを形成する。これらの識別されたファイルは、ロケーション・マップ(location map)を使用して探索される。このロケーション・マップは、一式のファイルを識別し、それらの一式のファイルのうちの1つのファイルが配置されているネットワーク・データ処理システム内のそれぞれのノードを識別する。識別されたファイルは、ロケーション・マップを用いてネットワーク・データ処理システム内の複数のノードからデータ処理システムへ転送されて、インストレーション・ファイルを形成する。それらのインストレーション・ファイルを使用して、データ処理システムがプロビジョニングされる。
第1の態様によれば、データ処理システム上にソフトウェアをインストールする方法が提供される。方法は、プロビジョニングされるデータ処理システムのためのファイルを識別して、識別されたファイルを形成するステップと、一式のファイルと、一式のファイルのうちの1つのファイルが配置されているネットワーク・データ処理システム内の複数のノードのそれぞれを識別するためのロケーション・マップを使用して、識別されたファイルを探索するステップであって、一式のファイルのうちの1つが、複数のノードのうちのいくつかのノードに配置されているステップと、ロケーション・マップを使用して、識別されたファイルをネットワーク・データ処理システム内の複数のノードからデータ処理システムへ転送して、インストレーション・ファイルを形成するステップと、インストレーション・ファイルを使用して、データ処理システムをプロビジョニングするステップを含む。
第2の態様によれば、データ処理システム上にソフトウェアをインストールするためのデータ処理システムが提供される。データ処理システムは、プロビジョニングされるデータ処理システムのためのファイルを識別して、識別されたファイルを形成する手段と、一式のファイルと、一式のファイルのうちの1つのファイルが配置されているネットワーク・データ処理システム内の複数のノードのそれぞれを識別するためのロケーション・マップを使用して、識別されたファイルを探索する手段であって、一式のファイルのうちの1つが、複数のノードのうちのいくつかのノードに配置されている手段と、ロケーション・マップを使用して、識別されたファイルをネットワーク・データ処理システム内の複数のノードからデータ処理システムへ転送して、インストレーション・ファイルを形成する手段と、インストレーション・ファイルを使用して、データ処理システムをプロビジョニングする手段を含む。
第3の態様によれば、データ処理システム上にソフトウェアをインストールするためのコンピュータ・プログラム製品が提供される。コンピュータ・プログラム製品は、プロビジョニングされるデータ処理システムのためのファイルを識別して、識別されたファイルを形成するための第1の命令と、一式のファイルと、一式のファイルのうちの1つのファイルが配置されているネットワーク・データ処理システム内の複数のノードのそれぞれを識別するためのロケーション・マップを使用して、識別されたファイルを探索するための第2の命令であって、一式のファイルのうちの1つが、複数のノードのうちのいくつかのノードに配置されている第2の命令と、ロケーション・マップを使用して、識別されたファイルをネットワーク・データ処理システム内の複数のノードからデータ処理システムへ転送して、インストレーション・ファイルを形成するための第3の命令と、インストレーション・ファイルを使用して、データ処理システムをプロビジョニングするための第4の命令を含む。
データを管理してリストアするための方法、装置、およびコンピュータ命令が提供されることが好ましい。
以下、本発明の好ましい実施形態について、例示のみを目的として、添付の図面を参照して説明する。
図面を参照すると、図1は、好ましい一実施形態に従って本発明を実装できるデータ処理システムのネットワークの絵図を示している。ネットワーク・データ処理システム100は、コンピュータのネットワークである。ネットワーク・データ処理システム100は、ネットワーク102を含み、このネットワーク102は、ネットワーク・データ処理システム100内で共に接続されているさまざまなデバイスおよびコンピュータ同士の間で通信リンクを提供するために使用されるメディアである。ネットワーク102は、有線通信リンク、無線通信リンク、あるいは光ファイバー・ケーブルなどの接続を含むことができる。
図示されている例においては、サーバ104は、ストレージ・ユニット106と共にネットワーク102に接続されている。さらにクライアント108、110、および112が、ネットワーク102に接続されている。これらのクライアント108、110、および112は、たとえばパーソナル・コンピュータやネットワーク・コンピュータとすることができる。図示されている例においては、サーバ104は、ブート・ファイル、オペレーティング・システム・イメージ、アプリケーションなどのデータをクライアント108〜112に提供する。クライアント108、110、および112は、サーバ104にとってのクライアントである。ネットワーク・データ処理システム100は、図示されていないさらなるサーバ、クライアント、およびその他のデバイスを含むことができる。
図示されている例においては、ネットワーク・データ処理システム100は、ネットワーク102を伴うインターネットであり、プロトコルのTCP/IP(Transmission Control Protocol/Internet Protocol)を使用して相互に通信するネットワークおよびゲートウェイの世界的な規模の集合体に相当する。インターネットの中心には、データおよびメッセージを回送する数千の商用、政府用、教育用、およびその他のコンピュータ・システムから構成されている主要なノードやホスト・コンピュータどうしの間における高速データ通信回線という基幹回線がある。もちろんネットワーク・データ処理システム100は、たとえばイントラネット、LAN(localarea network)、あるいはWAN(wide area network)など、複数の異なるタイプのネットワークとして実装することもできる。ネットワーク・データ処理システム100は、これらの例においてはピアツーピア・ネットワークとしてセットアップすることができる。図1は、一例として意図されており、本発明のアーキテクチャ面での限定を意図するものではない。
図2を参照すると、図1のサーバ104などのサーバとして実装できるデータ処理システムのブロック図が、本発明の好ましい一実施形態に従って示されている。データ処理システム200は、システム・バス206に接続されている複数のプロセッサ202および204を含むSMP(symmetric multiprocessor)システムとすることができる。あるいは、シングル・プロセッサ・システムを採用することもできる。メモリ・コントローラ/キャッシュ208も、システム・バス206に接続されており、このメモリ・コントローラ/キャッシュ208は、ローカル・メモリ209へのインターフェースを提供する。I/Oバス・ブリッジ210が、システム・バス206に接続されており、I/Oバス212へのインターフェースを提供する。メモリ・コントローラ/キャッシュ208とI/Oバス・ブリッジ210は、図示されているように一体化することができる。
I/Oバス212に接続されているPCI(Peripheral componentinterconnect)バス・ブリッジ214が、PCIローカル・バス216へのインターフェースを提供する。複数のモデムをPCIローカル・バス216に接続することができる。典型的なPCIバスの実装形態は、4つのPCI拡張スロットまたはアドイン・コネクタをサポートする。図1のクライアント108〜112への通信リンクを、アドイン・コネクタを通じてPCIローカル・バス216に接続されているモデム218およびネットワーク・アダプタ220を通じて提供することができる。
さらなるPCIバス・ブリッジ222および224が、さらなるPCIローカル・バス226および228のためのインターフェースを提供し、そのさらなるPCIローカル・バス226および228から、さらなるモデムまたはネットワーク・アダプタをサポートすることができる。この方法においては、データ処理システム200は、複数のネットワーク・コンピュータへの接続を可能にする。図示されているように、メモリにマップされたグラフィックス・アダプタ230およびハード・ディスク232をI/Oバス212に直接または間接的に接続することもできる。
図2に示されているハードウェアは、さまざまなものとすることができるという点を当業者なら理解できるであろう。たとえば、図示されているハードウェアに加えて、または図示されているハードウェアの代わりに、光ディスク・ドライブなどのその他の周辺デバイスを使用することもできる。図示されている例は、本発明に関するアーキテクチャ面での限定を意味することを意図するものではない。
図2に示されているデータ処理システムは、たとえばAIX(AdvancedInteractive Executive)(R)オペレーティング・システムやLINUX(TM)オペレーティング・システムを実行するIBM(R)eServer(TM)pSeries(R)システム(ニューヨーク州アーモンクのInternationalBusiness Machines Corporationの製品)とすることができる(IBM、eServer、pSeries、およびAIXは、米国、その他の国々、またはその双方におけるInternationalBusiness Machines Corporationの商標であり、Linuxは、米国、その他の国々、またはその双方におけるLinus Torvaldsの商標である)。
次いで図3を参照すると、好ましい一実施形態に従って本発明を実装できるデータ処理システムを示すブロック図が示されている。データ処理システム300は、クライアント・コンピュータの一例である。データ処理システム300は、PCI(Peripheral component interconnect)ローカル・バス・アーキテクチャを採用している。図示されている例は、PCIバスを採用しているが、AGP(AcceleratedGraphics Port)およびISA(Industry Standard Architecture)など、その他のバス・アーキテクチャを使用することもできる。プロセッサ302およびメイン・メモリ304は、PCIブリッジ308を通じてPCIローカル・バス306に接続されている。PCIブリッジ308は、プロセッサ302のための一体化されたメモリ・コントローラおよびキャッシュ・メモリを含むこともできる。直接コンポーネントを相互接続することを通じて、またはアドイン・ボードを通じて、PCIローカル・バス306へのさらなる接続を行うことができる。図示されている例においては、直接コンポーネントを接続することによって、LAN(localarea network)アダプタ310、SCSI(small computer system interface)ホスト・バス・アダプタ312、および拡張バス・インターフェース314が、PCIローカル・バス306に接続されている。対照的に、拡張スロット内に挿入されたアドイン・ボードによって、オーディオ・アダプタ316、グラフィックス・アダプタ318、およびオーディオ/ビデオ・アダプタ319が、PCIローカル・バス306に接続されている。拡張バス・インターフェース314は、キーボード/マウス・アダプタ320、モデム322、およびさらなるメモリ324のための接続を提供する。SCSIホスト・バス・アダプタ312は、ハード・ディスク・ドライブ326、テープ・ドライブ328、およびCD−ROMドライブ330のための接続を提供する。典型的なPCIローカル・バスの実装形態は、3つまたは4つのPCI拡張スロットまたはアドイン・コネクタをサポートする。
オペレーティング・システムは、プロセッサ302上で実行され、図3のデータ処理システム300内におけるさまざまなコンポーネントのコントロールを調整および提供するために使用される。このオペレーティング・システムは、Microsoft(R)Corporationから入手できるWindows(登録商標)XPなどの市販のオペレーティング・システムとすることができる。Java(登録商標)(TM)などのオブジェクト指向プログラミング・システムをオペレーティング・システムと共に実行することができ、こうしたオブジェクト指向プログラミング・システムは、データ処理システム300上で実行されているJava(登録商標)(TM)プログラムまたはアプリケーションからオペレーティング・システムへの呼び出しを提供することができる。「Java(登録商標)」は、SunMicrosystems, Incの商標である。オペレーティング・システム、オブジェクト指向プログラミング・システム、およびアプリケーションまたはプログラムのための命令は、ハード・ディスク・ドライブ326などのストレージ・デバイス上に配置され、プロセッサ302によって実行するためにメイン・メモリ304内にロードすることができる(MicrosoftおよびWindows(登録商標)は、米国、その他の国々、またはその双方におけるMicrosoftCorporationの商標である)。
図3のハードウェアは、実装形態に応じてさまざまなものとすることができるという点を当業者なら理解できるであろう。図3に示されているハードウェアに加えて、または図3に示されているハードウェアの代わりに、フラッシュROM(read-only memory)、同等の不揮発性メモリ、あるいは光ディスク・ドライブなど、その他の内蔵ハードウェアや周辺デバイスを使用することができる。また本発明のプロセスは、マルチプロセッサ・データ処理システムに適用することもできる。
別の例としては、データ処理システム300は、何らかのタイプのネットワーク通信インターフェースに依存することなくブートできるように構成されたスタンドアロンのシステムとすることができる。さらなる例としては、データ処理システム300は、PDA(personal digital assistant)デバイスとすることができ、このPDAデバイスは、オペレーティング・システム・ファイルまたはユーザが作成したデータあるいはその両方を保存するための不揮発性メモリを提供するために、ROMまたはフラッシュROMあるいはその両方を備えて構成されている。
図3に示されている例および上述の例は、アーキテクチャ面での限定を意味することを意図するものではない。たとえばデータ処理システム300は、PDAの形態をとることに加えて、ノート型コンピュータやハンド・ヘルド・コンピュータとすることもできる。データ処理システム300は、キオスクやウェブ機器(Web appliance)とすることもできる。
本発明は、好ましい一実施形態に従って、バックアップ・データを管理するための改良された方法、装置、およびコンピュータ命令を提供する。このメカニズムは、ネットワーク・データ処理システム内でファイルを効率よくバックアップしリストアする機能を提供する。この好ましい実施形態のメカニズムは、さまざまなノード上のファイルを識別して、初期マップを作成する。このマップは、ファイルによってインデックス付けされているインデックスへと変換される。かかるインデックスでは、それぞれの項目が、ネットワーク・データ処理システム上のファイルの場所を含んでいる。この第2のマップは、ファイル・マップとも呼ばれ、ファイルをバックアップしてリストアする際に使用される。このファイル・マップは、ロケーション・マップと呼ぶこともできる。
このファイル・マップは、さらに、ネットワーク・データ処理システムを用いてデータ処理システムをプロビジョニングする際に使用することもできる。インストールに必要なファイルは、さまざまなノード上で探索することができ、これらのファイルは、それらのノードから対象のデータ処理システムへ転送される。そして、それらのファイルを対象のノード上にインストールすることができる。
次いで図4を参照すると、データをバックアップしてリストアするために使用されるコンポーネントを示す図が、本発明の好ましい一実施形態に従って示されている。この例においては、マスター・ノード400が、バックアップ・プロセスの一環として、ノード402およびノード404と通信して、バックアップ情報を作成する。これらのノードは、図1のネットワーク・データ処理システム100において見られるようなコンピュータである。ノード404は、図3のデータ処理システム300などのコンピュータを使用して実装することができる。マスター・ノード400は、図2のデータ処理システム200などのコンピュータを使用して実装することができる。
詳細には、エージェント・バックアップ・プロセス406が、ノード404上に配置されているファイル408を識別する。同様にして、エージェント・バックアップ・プロセス410が、ノード402上に配置されているファイル412を識別する。この情報は、マスター・ノード400上のマスター・バックアップ/プロビジョニング・プロセス414に送信される。
この情報は、ノード・マップ416を作成するために使用される。このマップは、ノードおよびそれぞれのノード上のファイルのIDを含む。それぞれの項目は、ネットワーク・データ処理システム上の1つのノードに関するものであり、そのノード上のファイルを識別する。すべてのノードから情報が受信されると、マスター・バックアップ/プロビジョニング・プロセス414は、ファイル・マップ418を作成する。ファイル・マップ418内のそれぞれの項目は、それらのノード内で識別された特定のファイルに関するものである。この項目は、そのファイルのそれぞれのインスタンスの場所を識別する情報を含む。たとえばこの項目は、そのファイルが探索されるそれぞれのノードごとに、そのファイルのIP(Internet Protocol)アドレスおよびパスを含むことができる。この項目は、アプリケーション用のファイルがライセンスによってコントロールされている(licensedcontrolled)かどうかに関する情報を含むこともできる。ライセンスによってコントロールされるファイルとは、ライセンス番号(license count)を更新する際にサーバまたは特定のシステムを参照することを必要とするファイルである。
さらにマスター・バックアップ/プロビジョニング・プロセス414は、このバックアップ・プロセスの一環として、ファイル・マップ418を分析して、単一のノードしか存在しないファイルに関するすべての項目を識別する。そのようなそれぞれの項目ごとに、マスター・バックアップ/プロビジョニング・プロセス414は、ファイル・マップ内の項目にストレージ・ロケーション(storage location)を追加し、ファイルをそのストレージ・ロケーションにコピーする。この図示されている例においては、ストレージ・ロケーションは、マスター・ノード400内のバックアップ・ストレージ420である。結果として、ネットワーク・データ処理システム内のこれらの固有のファイルは、バックアップ・ストレージ420内にバックアップを有する。さらに、マスター・ノード400上で探索される固有のファイルはすべて、バックアップ・ストレージ422などのリモート・デバイス上に保存することができる。このようにして、この好ましい実施形態のメカニズムは、ネットワーク・データ処理システム上のファイルのバックアップを行う。
ノード402および404からファイル情報を受信し、それらのノードを最後にスキャンして以降のファイル内の差分すなわち変更点を識別することによって、増分バックアップを行うことができる。識別される新たなファイルは、ファイル・マップ418に追加される。たとえば、あるファイルが別のノードに追加された場合には、このノードは、そのファイル用の項目に追加される。あるファイルがあるノードから除去された場合には、そのファイル用の項目は、そのファイルがそのノードから除去されたことを反映するように更新される。これらの変更の履歴は、ファイル履歴424内に保存することができる。
あるファイルが、ノード404などのノード上で紛失した場合や、破損した場合には、エージェント・バックアップ・プロセス406は、マスター・バックアップ/プロビジョニング・プロセス414と通信して、ファイル・マップ418を用いてそのファイルを探索することができる。そのファイルは、ファイル・マップ418から識別された場所からノード404へとリストアすることができる。そのファイルは、ノード402などの別のノード上で、あるいはバックアップ・ストレージ420やバックアップ・ストレージ422などの別のバックアップ・ストレージ・デバイス上で探索される可能性がある。
さらにファイル・マップ418は、その他の目的で使用することもできる。たとえば、このマップ上の情報は、新たなデータ処理システムをプロビジョニングする際に使用することができる。この例においては、マスター・バックアップ/プロビジョニング・プロセス414は、ファイル・マップ418を通じて探索されたファイルを使用して、ノード426などの新たなノードをプロビジョニングすることができる。そして、探索されたファイルをノード426へ転送またはコピーし、インストレーション・プロセス428によってインストールすることができる。この方法においては、インストール用のファイルは、中央の場所を必要とするのではなく、さまざまなノード上で探索することができる。結果として、共通のファイルは、ネットワーク・データ処理システム内のノードによってノード426へ送信することができる。固有のファイルは、マスター・ノード400からノード426へ送信することができる。プロビジョニングを行うためのこのような機能は、ピアツーピア・ネットワーク・データ処理システムにとって特に有用である。
ファイルを検索するために特定のノードを選択する際には、さまざまなパラメータを考慮に入れることができる。たとえば、ノードをプロビジョニングするために必要とされるファイルがライセンスによってコントロールされている場合には、プロビジョニング・プロセスは、ライセンス番号が確実に更新されるように、そのファイルを特定のサーバまたはシステムから入手する。プロビジョニング・プロセスにおいて特定のノードを選択するために、その他のポリシーを使用することもできる。たとえばエージェントやその他のモニタリング・プロセスは、さまざまなノード上におけるファイルの場所などの要因に基づいて、プロビジョニングの決定を行うことができる。たとえば、プロビジョニングされているノードの近くに位置するノードを、同じファイルを含むが遠くに位置する別のノードよりも優先して選択することができる。プロビジョニングされているノードと、必要とされるファイルを含む他のノードとの間におけるトラフィックなど、その他の要因を使用して、そのファイルの検索元となる特定のノードを選択することもできる。
さらに、ファイルを検索して、それらのファイルが固有または特別なものとみなされた場合に、あるノードを別のピアに優先してプロビジョニングする上で使用するために、マスター・ノードまたはサーバを選択することができる。たとえばSAP AGのR/3など、オペレーティング・システム用または基本的なアプリケーション用のファイルが、これらのタイプのファイルをプロビジョニングするためにサーバの設定から検索される。R/3は、ドイツのアプリケーション・プロバイダであるSAP AGによるビジネス・アプリケーションである。これらのポリシーは、プロビジョニング・プロセス内で実施することができる。
次いで図5においては、ノード・マップが、本発明の好ましい一実施形態に従って示されている。ノード・マップ500は、図4のノード・マップ416のさらに詳細な例である。この例においては、ノード・マップ500は、項目502、504、506、508、510、および512を含む。それぞれの項目は、特定のノード上に配置されているファイルのIDを含む。たとえばノード502は、ファイル514、516、518、520、522、および524を含む。
次いで図6を参照すると、ファイル・マップの図が、本発明の好ましい一実施形態に従って示されている。ファイル・マップ600は、図4のファイル・マップ418のさらに詳細な図解である。ファイル・マップ600は、項目602、604、606、608、610、および612を含む。それぞれの項目は、ファイルが探索されるノードのIDを含む。たとえば項目602は、ノード614、616、618、620、622、および624を、項目602用のファイルを探索することができる場所として識別する。
この例においては、項目610のみが、ファイルの場所として単一のノードを有する。このファイルは、中央のサーバ上に配置されている固有のファイルかもしれない。一方、このファイルが中央のサーバ上の固有のファイルでない場合には、バックアップ・プロセスの一環として、このファイルのさらなるバックアップを中央のサーバまたはその他の何らかのバックアップ用の場所に作成することができる。そして、このバックアップ用の場所を項目610に追加することができる。
ファイル・マップ600内の項目は、ファイルによってインデックス付けされている。このインデックスは、具体的な実装形態に応じて異なる形式をとることができる。たとえば、それらのインデックス用にファイル・ノードを使用することができる。より固有の識別子を提供するために、実際のファイルそのもののハッシュ(hash)をインデックスとして使用することができる。MD5ハッシング・アルゴリズム(MD5 hashing algorithm)などのアルゴリズムを使用して、ファイルをハッシュすることができる。
さらにファイル・マップ600は、コンピュータをプロビジョニングする際に採用することもできる。往々にして、特定のコンピュータまたはアプリケーションに必要とされるファイルのすべてが、ネットワーク・データ処理システム上の一式のノード上で探索される可能性がある。ファイル・マップ600を使用して、これらのファイルを探索することができる。必要とされるファイルが探索された複数のノードは、これらのファイルを、プロビジョニングが行われるノードへ送信することができる。
さらにファイル・マップ600は、ノードの好ましい階層を含むことができ、プロビジョニング・プロセスにおいては、その階層からファイルが検索される。プロビジョニング・プロセスは、アプリケーションをプロビジョニングするために使用される特定のファイルに関して、その階層上で最も高いノードを選択する。そのノードが利用できない場合や、そのファイルがそのノード上で探索されない場合には、階層内の次のノードが選択される。たとえばファイル・マップ600内の項目602においては、ノード614が、そのファイルに関する階層内で最も高いノードになることができる。ノード616、618、620、622、および624は、プロビジョニング・プロセスの間に項目602において識別されるファイルを検索するための階層内では、より低いノードである。
さらに、ファイル・マップ600が誤っている場合や、古い場合には、エラーを作成することができ、このエラーは、エージェントまたはサーバへ送信される。たとえば、ファイルに関して識別された詳細に辿り着くことができたものの、そのファイルが紛失している場合や、破損している場合には、エラーが作成される。この場合には、上述のプロセスを通じてノード・マップ600を更新することができる。
そしてノード上のインストレーション・プログラムは、ファイルをインストールして、コンピュータをプロビジョニングすることができる。このようにして、コンピュータ全体をプロビジョニングすることもでき、あるいはこれらの図示されている例においては、単一のアプリケーションをプロビジョニングすることもできる。
次いで図7および8を参照すると、ファイルを管理することができるノードの図が、本発明の好ましい一実施形態に従って示されている。この例においては、ネットワーク・データ処理システム700は、図7のノード702、704、706、708、および710を含む。マスター・ノード712は、バックアップ・プロセスの一環として、これらのノードをスキャンする。受信した情報に基づいて、ファイル・マップが、履歴およびマップ714内に作成される。
この例においては、ノード710は、図8の不成功のファイル716および718を含む。ノード710用の代替ファイルは、履歴およびマップ714内に配置されているファイル・マップ内で探索することができる。この例においては、ノード704が、ファイル720を含み、このファイル720は、ファイル716の代替となる。ノード708が、ファイル722を含み、このファイル722は、ファイル718の代替となる。これらのファイルは、この例においては、ノード704および708から転送される。
同様にして、ノード704、ノード708、およびマスター・ノード712上で探索されたファイルを使用して、ノード702をプロビジョニングすることができる。この例においては、ファイル720、722、および724が、ノード702へ転送されて、ネットワーク・データ処理システム700内で使用するためにこのノードをプロビジョニングする。この時点で、インストレーション・プログラムまたはユーティリティは、それらのファイルをインストールして、ノード702用の構成情報を作成することができる。具体的な実装形態に応じて、構成ファイルは、ノード702へ転送またはコピーされるファイル内に含めることができる。
図9を参照すると、ファイル情報をマスター・ノードへ送信するためのプロセスのフローチャートが、本発明の好ましい一実施形態に従って示されている。図9に示されているプロセスは、図4のエージェント・バックアップ・プロセス406などのプロセス内で実施することができる。
このプロセスは、ノードをスキャンすることによって開始する(ステップ800)。ステップ800は、ノード上に配置されているファイルを識別するために使用される。ファイル一覧(file inventory)が、スキャンから作成される(ステップ802)。そして、ファイル情報がマスター・バックアップ・プロセスへ送信され(ステップ804)、ひいてはプロセスが終了する。この例においては、マスター・バックアップ・プロセスは、リモート・ノード上に配置されている。
図10を参照すると、データをバックアップするためのプロセスのフローチャートが、本発明の好ましい一実施形態に従って示されている。マスター・ノード400上のマスター・バックアップ/プロビジョニング・プロセス414など、図10に示されているプロセスは、ノード上で実施することができる。
このプロセスは、ノードからファイル一覧を受信することによって開始する(ステップ900)。ノード・マップが、ファイル一覧から構築される(ステップ902)。このノード・マップは、図5のノード・マップ500と同様のものである。ファイル・マップが、ノード・マップから構築される(ステップ904)。ステップ904においては、ファイル・マップは、図6のファイル・マップ600と同様のものである。
次いで、ノードを1つだけ伴うファイル・マップ内の未処理の項目が存在するかどうかが判定される(ステップ906)。このステップは、ネットワーク・データ処理システム内のその他のノード上では探索されないファイルを含むノードを識別するために使用される。このステップは、中央のサーバの固有のファイルのために実行されるものではない。このステップは、一般にネットワーク・データ処理システム内のノード上で探索されるファイルを対象としている。項目内にノードが1つだけ存在する場合には、そのノードが、保存用として追加される(ステップ908)。プロセスは、保存用として追加されるノードにファイルをコピーすることを開始し(ステップ910)、プロセスは、ステップ906に戻って、ノードを1つだけ伴うファイル・マップ内の未処理の項目がほかにないかチェックする。
ステップ906に戻って、ノードを1つだけ伴うファイル・マップ内の未処理の項目が存在しない場合には、プロセスは終了する。
図11を参照すると、増分バックアップを行うためのプロセスのフローチャートが、本発明の好ましい一実施形態に従って示されている。マスター・ノード400上のマスター・バックアップ・プロセス414など、図11に示されているプロセスは、ノード上で実施することができる。このプロセスは、これらの例においては、図10に示されているプロセスの後で開始される。
このプロセスは、ノードのスキャンにおいて未処理の差分を識別することによって開始する(ステップ1000)。このステップは、処理のためにノードのスキャンにおいて一式の変更点から1つの変更点すなわち差分を選択する。差分とは、これらの例においては、ファイルまたはノード内の変更点である。差分内のアクションが識別される(ステップ1002)。そのアクションがファイルの除去である場合には、ファイルを除去されたノードは、ファイル・マップ内のそのファイルに関する項目から除去される(ステップ1004)。
次いでノードのすべてが、そのファイルに関する項目から除去されているかどうかが判定される(ステップ1006)。それらの項目のすべてが除去されている場合には、その項目自体が、ファイル・マップから除去される(ステップ1008)。その後、さらなる未処理の差分がスキャン内に存在するかどうかが判定される(ステップ1010)。さらなる差分が存在しない場合には、プロセスは終了する。
再びステップ1010を参照すると、さらなる未処理の差分が存在する場合には、プロセスは、上述のステップ1000に戻る。ステップ1006に戻って、すべてのノードが項目から除去されていない場合には、プロセスは、ステップ1010に進む。
再びステップ1002を参照すると、アクションが新たなファイルの追加である場合には、そのファイルに関する項目がファイル・マップ内に存在するかどうかが判定される(ステップ1012)。新たなファイルに関する項目がファイル・マップ内に存在しない場合には、この新たなファイルに関する項目がファイル・マップに追加される(ステップ1014)。次いで、その項目にノードが追加される(ステップ1016)。そしてプロセスは、上述のステップ1010に進む。ステップ1012に戻って、項目がファイル・マップ内に存在する場合には、プロセスは、前述のステップ1016に進む。
次いで図12を参照すると、データ処理システムをプロビジョニングするためのプロセスのフローチャートが、本発明の好ましい一実施形態に従って示されている。図12に示されているプロセスは、図4のマスター・バックアップ/プロビジョニング・プロセス414などのプロビジョニング・プロセス内で実施することができる。
このプロセスは、ノードをプロビジョニングするために必要とされるファイルを識別することによって開始する(ステップ1100)。これらのファイルは、オペレーティング・システムおよびアプリケーションなど、ノードが機能するのに必要とされるファイルのすべてかもしれない。その他の例においては、これらのファイルは、ノード上にインストールされる単一のアプリケーションまたは一式のアプリケーションのためのものかもしれない。これらのファイルの場所は、ファイル・マップを使用して特定される(ステップ1104)。そして必要とされるファイルは、プロビジョニングされるノードにコピーされ(ステップ1106)、その後、プロセスは終了する。それらのファイルがノードに到着すると、そのノード上のインストレーション・プログラムは、プログラムのインストールを完了することができる。場合によっては、構成を含む適切なファイルがノード内の適切なファイル・パスにコピーされるのであれば、インストレーション・プログラムは不要とすることができる。
このように、本発明は、ネットワーク・データ処理システム内でデータをバックアップしてリストアするための改良された方法、装置、およびコンピュータ命令を、好ましい実施形態に従って提供する。このメカニズムは、ネットワーク・データ処理システム内で使用するためのコンピュータをプロビジョニングする目的でソフトウェアをそのコンピュータ上にインストールするために採用することもできる。本発明のメカニズムは、データをバックアップしてリストアする目的でファイルの場所を識別するために、ならびにコンピュータをプロビジョニングするためにファイル・マップを採用することが好ましい。
このメカニズムは、テープ・ストレージ・ライブラリ(tape storagelibrary)およびストレージ・エリア・ネットワーク・システム(storage area network system)など、コストのかかるストレージ・システムを必要としない方法でデータを分散式にバックアップすることができる。このメカニズムによって、ネットワーク・データ処理システムは、ネットワーク・データ処理システム内の複数のノードに保存されているファイルを利用することができる。さらに、このファイル・マップを使用することによって、分散した場所からインストール用のノードへファイルを転送またはコピーすることができる。
完全に機能するデータ処理システムというコンテキストで本発明について説明したが、本発明のプロセスは、命令のコンピュータ可読メディアの形態およびさまざまな形態で配布することができるということ、および本発明は、その配布を実行するために実際に使用される特定のタイプの信号を運ぶメディアを問わずに等しく適用されるということを当業者なら理解できるであろうという点に留意することが重要である。コンピュータ可読メディアの例としては、フロッピー(登録商標)・ディスク、ハード・ディスク・ドライブ、RAM、CD−ROM、DVD−ROMなどの記録できるタイプのメディアと、デジタル通信リンクおよびアナログ通信リンク、たとえば無線周波数および光波による伝送などの伝送形式を使用する有線通信リンクや無線通信リンクなどの伝送タイプのメディアとが含まれる。これらのコンピュータ可読メディアは、コード化されたフォーマットの形式をとることができ、特定のデータ処理システムにおいて実際に使用する際にデコードされる。
本発明の説明は、例示および説明の目的で提示されたものであり、網羅的であることや、開示された形態の発明に限定することを意図するものではない。当業者にとっては、多くの修正形態および変形形態が明らかであろう。実施形態は、本発明の原理、実際の応用を最もよく説明するために、および他の当業者が、考えられる具体的な使用に適したさまざまな修正を伴うさまざまな実施形態のために本発明を理解できるようにするために、選択され説明されたものである。
好ましい一実施形態に従って本発明を実装できるデータ処理システムのネットワークを示す絵画図である。 本発明の好ましい一実施形態に従ってサーバとして実装できるデータ処理システムを示すブロック図である。 好ましい一実施形態に従って本発明を実装できるデータ処理システムを示すブロック図である。 本発明の好ましい一実施形態に従ってデータをバックアップし、データをリストアし、プロビジョニングを行うために使用されるコンポーネントを示す図である。 本発明の好ましい一実施形態によるノード・マップ(node map)である。 本発明の好ましい一実施形態によるファイル・マップ(file map)を示す図である。 本発明の好ましい一実施形態に従ってファイルを管理することができるノードを示す図である。 本発明の好ましい一実施形態に従ってファイルを管理することができるノードを示す図である。 本発明の好ましい一実施形態に従ってファイル情報をマスター・ノードへ送信するためのプロセスを示すフローチャートである。 本発明の好ましい一実施形態に従ってデータをバックアップするためのプロセスを示すフローチャートである。 本発明の好ましい一実施形態に従って増分バックアップを行うためのプロセスを示すフローチャートである。 本発明の好ましい一実施形態に従ってデータ処理システムをプロビジョニングするためのプロセスを示すフローチャートである。

Claims (35)

  1. データ処理システム上にソフトウェアをインストールする方法であって、
    プロビジョニングされる前記データ処理システムのためのファイルを識別して、識別されたファイルを形成するステップと、
    一式のファイルと、前記一式のファイルのうちの1つのファイルが配置されているネットワーク・データ処理システム内の複数のノードのそれぞれを識別するためのロケーション・マップを使用して、前記識別されたファイルを探索するステップであって、前記一式のファイルのうちの1つが、前記複数のノードのうちのいくつかのノードに配置されているステップと、
    前記ロケーション・マップを使用して、識別されたファイルを前記ネットワーク・データ処理システム内の前記複数のノードから前記データ処理システムへ転送して、インストレーション・ファイルを形成するステップと、
    前記インストレーション・ファイルを使用して、前記データ処理システムをプロビジョニングするステップと、
    を含む、方法。
  2. 前記複数のノード上のファイルの一覧の作成を実行するステップと、
    前記複数のノードのうちの1つのノード上に配置されているそれぞれのファイルのIDを含む初期マップを前記一覧から作成するステップと、
    データ処理システムをプロビジョニングするためのファイルを探索するために使用されるロケーション・マップを前記初期マップから構築するステップと、
    をさらに含む、請求項1に記載の方法。
  3. 前記ロケーション・マップが古くなったことに応答して、前記実行するステップ、前記作成するステップ、および前記構築するステップを開始するステップをさらに含む、請求項2に記載の方法。
  4. 前記一式のファイルのうちの固有のファイルが、前記複数のノードのうちの1つのサーバ上に保存されている、請求項1、2、または3に記載の方法。
  5. 前記転送するステップが、
    前記識別されたファイルのうちの特定のファイルを識別するステップと、
    前記ファイルを含むノードのうち、そこからの転送時間が最短となるノードを選択するステップと、
    前記特定のファイルを前記ノードから前記データ処理システムへ転送するステップと、
    を含む、請求項1、2、3、または4に記載の方法。
  6. ファイルが、アプリケーション、オペレーティング・システム、バーチャル・マシン、および構成情報のうちの少なくとも1つのためのものである、請求項1ないし5のいずれかに記載の方法。
  7. 前記識別するステップ、前記探索するステップ、前記転送するステップ、および前記プロビジョニングするステップが、インストレーション・プログラムによって実行される、請求項1ないし6のいずれかに記載の方法。
  8. 前記プロビジョニングするステップが、アプリケーションおよびオペレーティング・システムのうちの少なくとも1つを前記データ処理システム上にインストールする、請求項1ないし7のいずれかに記載の方法。
  9. 前記探索するステップが、
    前記ファイルの検索元となる1つのノードを前記複数のノードから選択するステップであって、前記ノードが、ポリシーを使用して選択されるステップを含む、請求項1ないし8のいずれかに記載の方法。
  10. 前記ポリシーが、前記いくつかのノードに割り当てられた階層から前記ノードを選択することを指定する、請求項9に記載の方法。
  11. 前記ファイルが、オペレーティング・システム・ファイルおよびライセンスによってコントロールされるファイルのうちの少なくとも1つである場合に、前記ポリシーが、前記いくつかのノードのうちの1つのサーバを選択することを指定する、請求項9または10に記載の方法。
  12. データ処理システム上にソフトウェアをインストールするためのデータ処理システムであって、
    プロビジョニングされる前記データ処理システムのためのファイルを識別して、識別されたファイルを形成するための識別手段と、
    ロケーション・マップを使用して前記識別されたファイルを探索するための発見手段であって、前記ロケーション・マップが、一式のファイルを識別し、前記一式のファイルのうちの1つのファイルが配置されているネットワーク・データ処理システム内の複数のノードのうちのそれぞれのノードを識別し、前記一式のファイルのうちの1つのファイルが、前記複数のノードのうちのいくつかのノード上に配置されている発見手段と、
    前記ロケーション・マップを用いて、識別されたファイルを前記ネットワーク・データ処理システム内の前記複数のノードから前記データ処理システムへ転送して、インストレーション・ファイルを形成するための転送手段と、
    前記インストレーション・ファイルを使用して前記データ処理システムをプロビジョニングするためのプロビジョニング手段と、を含むデータ処理システム。
  13. 前記複数のノード上のファイルの一覧作成を実行するための実行手段と、
    前記一覧から最初のマップを作成するための作成手段であって、前記第1の最初のマップが、前記複数のノードのうちの1つのノード上に配置されているそれぞれのファイルのIDを含む作成手段と、
    前記最初のマップからロケーション・マップを構築するための構築手段であって、前記ロケーション・マップが、データ処理システムをプロビジョニングするためのファイルを探索するために使用される構築手段とをさらに含む、請求項12に記載のデータ処理システム。
  14. 前記ロケーション・マップが古くなったことに応答して、前記実行手段、作成手段、および構築手段を始動するための手段を含む、請求項13に記載のデータ処理システム。
  15. 前記一式のファイルのうちの固有のファイルが、前記複数のノードのうちの1つのサーバ上に保存されている、請求項12、13、または14に記載のデータ処理システム。
  16. 前記転送手段が、
    前記識別されたファイルのうちの特定のファイルを識別するための第1の手段と、
    前記ファイルを含むノードのうち、そこからの転送時間が最短となるノードを選択するための第2の手段と、
    前記特定のファイルを前記ノードから前記データ処理システムへ転送するための第3の手段と、
    を含む、請求項12、13、14、または15に記載のデータ処理システム。
  17. ファイルが、アプリケーション、オペレーティング・システム、バーチャル・マシン、および構成情報のうちの少なくとも1つのためのものである、請求項12ないし16のいずれかに記載のデータ処理システム。
  18. 前記識別手段、前記発見手段、前記転送手段、および前記プロビジョニング手段が、インストレーション・プログラムによって実行される、請求項12ないし17のいずれかに記載のデータ処理システム。
  19. 前記プロビジョニング手段が、アプリケーションおよびオペレーティング・システムのうちの少なくとも1つを前記データ処理システム上にインストールする、請求項12ないし18のいずれかに記載のデータ処理システム。
  20. 前記発見手段が、
    前記ファイルの検索元となる1つのノードを前記複数のノードから選択するための手段であって、前記ノードが、ポリシーを使用して選択される手段を含む、請求項12ないし19のいずれかに記載のデータ処理システム。
  21. 前記ポリシーが、前記いくつかのノードに割り当てられた階層から前記ノードを選択することを指定する、請求項20に記載のデータ処理システム。
  22. 前記ファイルが、オペレーティング・システム・ファイルおよびライセンスによってコントロールされるファイルのうちの少なくとも1つである場合に、前記ポリシーが、前記いくつかのノードのうちの1つのサーバを選択することを指定する、請求項20または21に記載のデータ処理システム。
  23. データ処理システム上にソフトウェアをインストールするためのコンピュータ・プログラム製品であって、
    プロビジョニングされる前記データ処理システムのためのファイルを識別して、識別されたファイルを形成するための第1の命令と、
    ロケーション・マップを使用して前記識別されたファイルを探索するための第2の命令であって、前記ロケーション・マップが、一式のファイルを識別し、前記一式のファイルのうちの1つのファイルが配置されているネットワーク・データ処理システム内の複数のノードのうちのそれぞれのノードを識別し、前記一式のファイルのうちの1つのファイルが、前記複数のノードのうちのいくつかのノード上に配置されている命令と、
    前記ロケーション・マップを用いて、識別されたファイルを前記ネットワーク・データ処理システム内の前記複数のノードから前記データ処理システムへ転送して、インストレーション・ファイルを形成するための第3の命令と、
    前記インストレーション・ファイルを使用して前記データ処理システムをプロビジョニングするための第4の命令と、を含むコンピュータ・プログラム製品。
  24. 前記複数のノード上のファイルの一覧作成を実行するための第5の命令と、
    前記一覧から最初のマップを作成するための第6の命令であって、前記第1の最初のマップが、前記複数のノードのうちの1つのノード上に配置されているそれぞれのファイルのIDを含む命令と、
    前記最初のマップからロケーション・マップを構築するための第7の命令であって、前記ロケーション・マップが、データ処理システムをプロビジョニングするためのファイルを探索するために使用される命令とをさらに含む、請求項23に記載のコンピュータ・プログラム製品。
  25. 前記ロケーション・マップが古くなったことに応答して、前記第5の命令、前記第6の命令、および前記第7の命令の実行を開始するための第8の命令をさらに含む、請求項24に記載のコンピュータ・プログラム製品。
  26. 前記一式のファイルのうちの固有のファイルが、前記複数のノードのうちの1つのサーバ上に保存されている、請求項23、24、または25に記載のコンピュータ・プログラム製品。
  27. 第3の命令が、
    前記識別されたファイルのうちの特定のファイルを識別するための第1の下位命令と、
    前記ファイルを含むノードのうち、そこからの転送時間が最短となるノードを選択するための第2の下位命令と、
    前記特定のファイルを前記ノードから前記データ処理システムへ転送するための第3の下位命令と、を含む、請求項23、24、25、または26に記載のコンピュータ・プログラム製品。
  28. ファイルが、アプリケーション、オペレーティング・システム、バーチャル・マシン、および構成情報のうちの少なくとも1つのためのものである、請求項23ないし28のいずれかに記載のコンピュータ・プログラム製品。
  29. 前記第1の命令、前記第2の命令、前記第3の命令、および前記第4の命令が、インストレーション・プログラム内に配置されている、請求項23ないし28のいずれかに記載のコンピュータ・プログラム製品。
  30. 前記第4の命令が、アプリケーションおよびオペレーティング・システムのうちの少なくとも1つを前記データ処理システム上にインストールする、請求項23ないし29のいずれかに記載のコンピュータ・プログラム製品。
  31. 前記第2の命令が、
    前記ファイルの検索元となる1つのノードを前記複数のノードから選択するための下位命令であって、前記ノードが、ポリシーを使用して選択される下位命令を含む、請求項23ないし30のいずれかに記載のコンピュータ・プログラム製品。
  32. 前記ポリシーが、前記いくつかのノードに割り当てられた階層から前記ノードを選択することを指定する、請求項31に記載のコンピュータ・プログラム製品。
  33. 前記ファイルが、オペレーティング・システム・ファイルおよびライセンスによってコントロールされるファイルのうちの少なくとも1つである場合に、前記ポリシーが、前記いくつかのノードのうちの1つのサーバを選択することを指定する、請求項31または32に記載のコンピュータ・プログラム製品。
  34. バスと、
    前記バスに接続されている通信ユニットと、
    前記バスに接続されているメモリであって、一式の命令を含むメモリと、
    前記バスに接続されているプロセッサ・ユニットであって、プロビジョニングの対象である前記データ処理システムのためのファイルを識別して、識別されたファイルを形成するステップと、ロケーション・マップを使用して前記識別されたファイルを探索するステップであって、前記ロケーション・マップが、一式のファイルを識別し、前記一式のファイルのうちの1つのファイルが配置されているネットワーク・データ処理システム内の複数のノードのうちのそれぞれのノードを識別し、前記一式のファイルのうちの1つのファイルが、前記複数のノードのうちのいくつかのノード上に配置されているステップと、前記ロケーション・マップを用いて、識別されたファイルを前記ネットワーク・データ処理システム内の前記複数のノードから前記データ処理システムへ転送して、インストレーション・ファイルを形成するステップと、前記インストレーション・ファイルを使用して前記データ処理システムをプロビジョニングするステップとを行うために前記一式の命令を実行するプロセッサ・ユニットとを含むデータ処理システム。
  35. コンピュータ上で実行されると請求項1ないし11のいずれかに記載の方法を実行するように適合されているプログラム・コード手段を含むコンピュータ・プログラム。
JP2007546041A 2004-12-16 2005-12-13 均質化されたリソース・プールに対するコンピュータの迅速なプロビジョニング Pending JP2008524682A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/014,562 US20060136526A1 (en) 2004-12-16 2004-12-16 Rapid provisioning of a computer into a homogenized resource pool
PCT/EP2005/056745 WO2006064000A1 (en) 2004-12-16 2005-12-13 Rapid provisioning of a computer into a homogenized resource pool

Publications (2)

Publication Number Publication Date
JP2008524682A true JP2008524682A (ja) 2008-07-10
JP2008524682A5 JP2008524682A5 (ja) 2008-10-09

Family

ID=36087703

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007546041A Pending JP2008524682A (ja) 2004-12-16 2005-12-13 均質化されたリソース・プールに対するコンピュータの迅速なプロビジョニング

Country Status (6)

Country Link
US (1) US20060136526A1 (ja)
EP (1) EP1828888A1 (ja)
JP (1) JP2008524682A (ja)
CN (1) CN101044456A (ja)
TW (1) TW200636499A (ja)
WO (1) WO2006064000A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013544402A (ja) * 2010-11-23 2013-12-12 インターナショナル・ビジネス・マシーンズ・コーポレーション ソフトウェア製品のあらかじめ必要なソフトウェアをインストールするための方法、システム、およびコンピュータ・プログラム

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9250972B2 (en) * 2006-06-19 2016-02-02 International Business Machines Corporation Orchestrated peer-to-peer server provisioning
US7900088B1 (en) * 2006-09-29 2011-03-01 Emc Corporation System for performing incremental file system check
US8312449B2 (en) * 2006-10-31 2012-11-13 International Business Machines Corporation Viral installation of operating systems in a network
JP4979414B2 (ja) 2007-02-28 2012-07-18 インターナショナル・ビジネス・マシーンズ・コーポレーション 複数ロケール混在環境におけるプロビジョニング用の管理サーバ、コンピュータプロブラム、及び方法
US8667096B2 (en) * 2009-02-27 2014-03-04 Red Hat, Inc. Automatically generating system restoration order for network recovery
WO2011043892A2 (en) * 2009-10-06 2011-04-14 Motorola Mobility, Inc. Method and system for restoring a server interface for a mobile device
CN108349278B (zh) * 2015-11-19 2020-04-14 惠普发展公司有限责任合伙企业 用于测量管芯调准的方法、打印机和管芯调准系统
US11449198B2 (en) * 2020-05-11 2022-09-20 Sap Se User interface support for large hierarchies
US11599365B2 (en) * 2020-10-23 2023-03-07 Hewlett Packard Enterprise Development Lp Sharing image installation image streams

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004055669A2 (en) * 2002-12-17 2004-07-01 International Business Machines Corporation System and method for restoring desktop components using distributed desktop packages
WO2004079525A2 (en) * 2003-03-03 2004-09-16 Computer Associates Think, Inc. System and method for single transparent deployment flow

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6049671A (en) * 1996-04-18 2000-04-11 Microsoft Corporation Method for identifying and obtaining computer software from a network computer
US6771604B1 (en) * 1997-09-22 2004-08-03 Lucent Technologies Inc. Method for location management in a communication network
US6065062A (en) * 1997-12-10 2000-05-16 Cisco Systems, Inc. Backup peer pool for a routed computer network
US7080371B1 (en) * 1998-03-03 2006-07-18 Siebel Systems, Inc. Method, system, apparatus and program product for distribution and instantiation of software upgrades
US6571286B2 (en) * 1998-07-07 2003-05-27 International Business Machines Corporation Method and system for enhancing communications efficiency in data communications networks
US6675205B2 (en) * 1999-10-14 2004-01-06 Arcessa, Inc. Peer-to-peer automated anonymous asynchronous file sharing
US6647399B2 (en) * 1999-11-29 2003-11-11 International Business Machines Corporation Method, system, program, and data structures for naming full backup versions of files and related deltas of the full backup versions
JP2001273122A (ja) * 2000-03-23 2001-10-05 Hitachi Ltd 並列計算システムのプログラムインストール方法及び装置
US20020049760A1 (en) * 2000-06-16 2002-04-25 Flycode, Inc. Technique for accessing information in a peer-to-peer network
DE10044032A1 (de) * 2000-09-06 2002-03-14 Deutsche Telekom Ag 3-D Sehen
US20020083170A1 (en) * 2000-10-26 2002-06-27 Metilinx System-wide optimization integration model
US7124289B1 (en) * 2000-10-31 2006-10-17 Opsware Inc. Automated provisioning framework for internet site servers
AU2002234258A1 (en) * 2001-01-22 2002-07-30 Sun Microsystems, Inc. Peer-to-peer network computing platform
US20040122741A1 (en) * 2002-01-25 2004-06-24 David Sidman Apparatus, method and system for effecting information access in a peer environment
US20030115251A1 (en) * 2001-02-23 2003-06-19 Fredrickson Jason A. Peer data protocol
WO2002076003A2 (en) * 2001-03-19 2002-09-26 Imesh Ltd. System and method for peer-to-peer file exchange mechanism from multiple sources
US7272645B2 (en) * 2001-05-25 2007-09-18 Sbc Technology Resources, Inc. Method of improving the reliability of peer-to-peer network downloads
US7509372B2 (en) * 2001-09-13 2009-03-24 International Business Machines Corporation Method and system for redirecting data requests in peer-to-peer data networks
US7120690B1 (en) * 2001-09-27 2006-10-10 Emc Corporation Managing a distributed directory database
US7117264B2 (en) * 2002-01-10 2006-10-03 International Business Machines Corporation Method and system for peer to peer communication in a network environment
US7747576B2 (en) * 2002-02-20 2010-06-29 International Business Machines Corporation Incremental update control for remote copy
US20040006586A1 (en) * 2002-04-23 2004-01-08 Secure Resolutions, Inc. Distributed server software distribution
US7343418B2 (en) * 2002-06-03 2008-03-11 Microsoft Corporation Peer to peer network
US20040006622A1 (en) * 2002-07-03 2004-01-08 Burkes Don L. Optimized process for balancing load for data mirroring
US7263560B2 (en) * 2002-08-30 2007-08-28 Sun Microsystems, Inc. Decentralized peer-to-peer advertisement
US7206934B2 (en) * 2002-09-26 2007-04-17 Sun Microsystems, Inc. Distributed indexing of identity information in a peer-to-peer network
US7451217B2 (en) * 2002-12-19 2008-11-11 International Business Machines Corporation Method and system for peer-to-peer authorization
GB0303192D0 (en) * 2003-02-12 2003-03-19 Saviso Group Ltd Methods and apparatus for traffic management in peer-to-peer networks
JP4453323B2 (ja) * 2003-10-02 2010-04-21 株式会社日立製作所 複製データの管理方法、装置、及びプログラム
US7426574B2 (en) * 2003-12-16 2008-09-16 Trend Micro Incorporated Technique for intercepting data in a peer-to-peer network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004055669A2 (en) * 2002-12-17 2004-07-01 International Business Machines Corporation System and method for restoring desktop components using distributed desktop packages
WO2004079525A2 (en) * 2003-03-03 2004-09-16 Computer Associates Think, Inc. System and method for single transparent deployment flow

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013544402A (ja) * 2010-11-23 2013-12-12 インターナショナル・ビジネス・マシーンズ・コーポレーション ソフトウェア製品のあらかじめ必要なソフトウェアをインストールするための方法、システム、およびコンピュータ・プログラム

Also Published As

Publication number Publication date
US20060136526A1 (en) 2006-06-22
WO2006064000A1 (en) 2006-06-22
EP1828888A1 (en) 2007-09-05
TW200636499A (en) 2006-10-16
CN101044456A (zh) 2007-09-26

Similar Documents

Publication Publication Date Title
JP2008524682A (ja) 均質化されたリソース・プールに対するコンピュータの迅速なプロビジョニング
US7586839B2 (en) Peer to peer backup and recovery
KR101278743B1 (ko) 서버 팜에서의 솔루션 배치
JP5239075B2 (ja) 複数のサービスステップを含むサービスプロセスを管理するためのコンピュータ・システム、並びにその方法及びコンピュータ・プログラム
US8103640B2 (en) Method and apparatus for role mapping methodology for user registry migration
JP4647234B2 (ja) ネットワーク装置をディスカバリするための方法および装置
RU2357283C2 (ru) Схема обновления соединений с сетевым печатающим устройством для клиентов печатающего устройства
JP5328177B2 (ja) 情報処理装置、情報処理装置のデータ処理方法、記憶媒体及びプログラム
US8620926B2 (en) Using a hashing mechanism to select data entries in a directory for use with requested operations
JP5340610B2 (ja) 複数の構成要素を管理するためのコンピュータ・システム、並びにその方法及びコンピュータ・プログラム
JPH11167510A (ja) レプリケーション方法、レプリケーションツール、および、レプリケーションサーバ
JP2015142167A (ja) 管理装置、管理プログラムおよびネットワーク装置の設定情報管理方法
CN103119551A (zh) 优化的恢复
JP2008524682A5 (ja)
US8495623B2 (en) System and method for network image propagation without a predefined network
JP2006099307A (ja) 分散サーバへのアプリケーションセットのインストール方法
US20090019438A1 (en) Method and apparatus for selecting a system management product for performance of system management tasks
US8583600B2 (en) Deploying directory instances
JP5111153B2 (ja) サーバ、デバイス管理方法、プログラム
US20110088013A1 (en) Method and system for synchronizing software modules of a computer system distributed as a cluster of servers, application to data storage
JP5239072B2 (ja) 構成要素を管理するためのコンピュータ・システム、並びにその方法及びコンピュータ・プログラム
WO2011117921A1 (en) Method for concurrency control in a file versioning system
JPH10105406A (ja) ソフトウェアのインストールおよび更新システム
JP5218820B2 (ja) ソフトウェアのインストールシステム及びその方法
JP2009211413A (ja) ファイル管理システム、ファイル管理方法、及びファイル管理プログラム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080819

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080819

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110809

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120110