(57)【要約】      （修正有）【課題】ディスクレス・コンピューティング装置及び関連するサーバシステムを自動的にプロビジョンするための技術を示す。【解決手段】ディスクレス・コンピューティング装置クライアント１００は、サーバ・コンピューティング装置１４０により与えられる仮想ストレージ装置１６０を用いてローカル・インストレーションを透過的に行う。短いシグネチャ値はブート・イメージに関連し、特定のクライアント・ハードウェア・コンフィギュレーションにブート・イメージを一意的に関連付ける。クライアント装置１００が通常にブートするとき、クライアント装置１００のシグネチャ値がサーバ・コンピューティング装置１４０に与えられ、適切なブート・イメージを自動的に参照する。【選択図】図１
2008112433.tif 000002
【特許請求の範囲】
【請求項１】
ディスクレス・コンピューティング装置にブートオペレーションサービス及びインストレーションサービスを提供するように構成されたサーバ・コンピューティング装置を備え、
前記サーバ・コンピューティング装置は、
ストレージサブシステムと、
プロセッシングユニットと、
ｉＳＣＳＩターゲットと、を備えており、
前記ｉＳＣＳＩターゲットは、
前記ディスクレス・コンピューティング装置のハードウェアコンフィギュレーションを示すシグネチャ値を含むログインコマンドを、前記ディスクレス・コンピューティング装置から受け取り、
前記シグネチャ値が既知のシグネチャ値であるか否かを判定し、
前記シグネチャ値が既知のシグネチャ値であるか否かに基づいて、ブートイメージ又はインストレーションイメージの一部を前記ディスクレス・コンピューティング装置に与えるように構成されているコンピュータネットワーク。
【請求項２】
前記シグネチャ値が既知のシグネチャ値であるときに、前記ｉＳＣＳＩターゲットは、前記シグネチャ値に対応する前記ブートイメージを選択するように更に構成されている請求項１記載のコンピュータネットワーク。
【請求項３】
前記シグネチャ値が既知のシグネチャ値ではないときに、前記ｉＳＣＳＩターゲットは、前記シグネチャ値に対応する新たなブートイメージのために仮想ストレージ装置にメモリ空間を割り当てる請求項１記載のコンピュータネットワーク。
【請求項４】
前記ｉＳＣＳＩターゲットは、前記ディスクレス・コンピューティング装置からコンフィギュレーション情報を受け取り、前記仮想ストレージ装置内において前記新たなブートイメージのために割り当てられた前記メモリ空間に前記コンフィギュレーション情報を格納するように更に構成されている請求項３記載のコンピュータネットワーク。
【請求項５】
前記ｉＳＣＳＩターゲットは、前記新たなブートイメージをキャプチャし永久的に格納するように更に構成されている請求項４記載のコンピュータネットワーク。
【請求項６】
前記ログインコマンドは、ｉＳＣＳＩログインコマンドである請求項１記載のコンピュータネットワーク。
【請求項７】
メモリと、
プロセッシングユニットと、
ファームウェアと、を有する前記ディスクレス・コンピューティング装置を更に備えており、
前記ファームウェアは、
前記シグネチャ値を算出するように構成されたシグネチャジェネレータと、
前記シグネチャ値を含む前記ログインコマンドを前記サーバ・コンピューティング装置に送り、前記シグネチャ値に応答して前記サーバ・コンピューティング装置から前記ブートイメージ又は前記インストレーションイメージの一部を受け取るｉＳＣＳＩイニシエータと、を備える請求項１記載のコンピュータネットワーク。
【請求項８】
前記サーバ・コンピューティング装置がシグネチャ値を認証した場合に、前記ディスクレス・コンピューティング装置は、前記ブートイメージの一部を受け取る請求項７記載のコンピュータネットワーク。
【請求項９】
前記サーバ・コンピューティング装置がシグネチャ値を認証しない場合に、前記ディスクレス・コンピューティング装置は、前記インストレーションイメージの一部を受け取る請求項７記載のコンピュータネットワーク。
【請求項１０】
前記ディスクレス・コンピューティング装置は、前記インストレーションイメージの一部を用いてインストレーション手順を実行するように更に構成されている請求項９記載のコンピュータネットワーク。
【発明の詳細な説明】
【発明の分野】
【０００１】
[0001]本発明の各実施形態は、広くコンピュータプラットフォームのプロビジョニングに関し、より詳しくは、ディスクレスプラットフォームにオペレーションシステムをインストールするシステム及び方法に関する。
【関連技術の説明】
【０００２】
[0002]コンピューティング環境によっては、ディスクレス・コンピューティング装置は、フル機能を有するコンピューティング装置よりもコスト面及び管理面で優れることがある。ディスクレス・コンピューティング装置は、サーバシステムのクライアントとなり、サーバシステムは、ソフトウェアブートイメージをクライアントに提供する。サーバシステムは、一又は複数のハードディスクなどの大量ストレージを含み、ここからオペレーティングシステム（ＯＳ）ブートイメージが一又は複数のクライアント装置に対して供給される。このためサーバシステムは、クライアント装置に示されるハードウェアの独特のコンフィギュレーションそれぞれのために、オペレーティングシステム・ブートイメージを保持する。例えば、あるクライアント装置が特定のデバイスドライバを使用するグラフィックコントローラの特定のタイプを含み、第２のクライアント装置が第２のタイプのデバイスドライバを使用する第２のタイプのグラフィックコントローラを含むようにすることができる。このような場合、サーバシステムは、少なくとも二つの独特のブートイメージを管理することになる。各ブートイメージは、グラフィックコントローラの上記特定のタイプによって定められる、ハードウェアの二つの独特のコンフィギュレーションそれぞれに関するものである。
【０００３】
[0003]典型的なシナリオとして、ある組織は、現在のコンピューティング環境を充足させるために、複数のディスクレス・コンピューティング装置を取得することが考えられる。時を経て、それらの装置の幾つかが故障したり、交換が必要となり得る。同一品の交換は必ずしも可能でないため、古い装置に代わって新しい装置が用いられることがある。また、その組織は成長して多くの新規装置を入手することが考えられ、これらの新規装置は古い装置と同一かもしれないし同一でないかもしれない。更に、組織は「リフレッシュ」プログラムを実行することもあり、これにより古い装置の幾つかは揃って新規装置に交換される。典型的な展開においてディスクレス・コンピューティング装置を交換又は追加する結果として、ディスクレス・コンピューティング装置のオペレーティングセットは、多くの異なる独特のハードウェアコンフィギュレーションを必然的に含むことになる。各独特のハードウェアコンフィギュレーションは、独特のブートイメージからのコンポーネントやブートの独特の組み合わせを含み、その独特のイメージは、中でもとりわけ、独特のハードウェアコンフィギュレーションに必要とされるデバイスドライバを含む。重要な点として、組織内に渡るディスクレス・コンピューティング装置の異なる独特のハードウェアコンフィギュレーションは、ディスクレス・コンピューティング装置が効率的に動作するために、サーバシステムに格納された独特のブートイメージをそれぞれが持たなければならない。
【０００４】
[0004]Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）などのオペレーティングシステムが所与の装置にインストールされたとき、既存のハードウェアコンポーネント及び関連するコンフィギュレーションデータの情報がその装置から抽出され、その装置に存在する様々なハードウェアコンポーネントにとって適切なドライバが選択される。ハードウェアコンフィギュレーションの探索に成功してドライバが選択されると、インストレーションプログラムは、特定のハードウェアコンフィギュレーションのためにオペレーティングシステムの独特のブートイメージを設定する。新たなディスクレス・コンピューティング装置のハードウェアコンフィギュレーションに関する新規のブートイメージを生成するために、オペレーティングシステムは、一般的に、ハードディスク及びオプティカルメディア（すなわちＣＤ又はＤＶＤ）の双方を含むディスクレス・コンピューティング装置の特別なスタンドアローンのインスタンスに手動でインストールされる。インストールが完了すると、ディスクレス・コンピューティング装置の特別なインスタンスに生成されたブートイメージは、手動でキャプチャされ、サーバシステムに転送される。サーバシステムのクライアントとして指定された各ディスクレス・コンピューティング装置は、次いで、サーバシステムの適切なブートイメージを参照するように手動で設定され、これにより、ディスクレス・コンピューティング装置は、これらのブートイメージからブートすることができる。このように、新しいディスクレス・コンピューティング装置のハードウェアコンフィギュレーションが複数のディスクレス・コンピューティング装置を組み合わせたものに導入される場合は、システム管理者は、新規のハードウェアコンフィギュレーションのために新たなブートイメージを手動で生成し、且つ、関連するブートイメージからブートするためにその新たなディスクレス・コンピューティング装置を手動で設定する作業をしなければならない。このプロセスは時間を消費してコストがかかるだけでなく、人間によるエラーを招く傾向もある。
【０００５】
[0005]以上のように、当分野で必要とされるものは、ディスクレス・コンピューティング装置及びこれらの関連するサーバシステムを設定するためのより効率的な技術である。
【発明の概要】
【０００６】
[0006]本発明の一実施形態は、ディスクレス・コンピューティング装置及び関連するサーバシステムを自動的にプロビジョンするための技術を示す。ディスクレス・コンピューティング装置クライアントは、ｉＳＣＳＩターゲットにより与えられるリソースにアクセスするために用いられるｉＳＣＳＩイニシエータを備える。ｉＳＣＳＩターゲットは、サーバ・コンピューティング装置に常駐する。ｉＳＣＳＩイニシエータは、クライアントファームウェアに実装され、ＩＮＴ１３ディスクサービスエントリポイントを与え、ブート時にクライアントが仮想ストレージ装置にユーザが意識することなくアクセスできるようにする。クライアント装置は、サーバ・コンピューティング装置により与えられる仮想ストレージ装置を用いてローカルインストレーションを透過的に行う。短いシグネチャ値はブートイメージに関連し、特定のクライアントハードウェアコンフィギュレーションにブートイメージを一意的に関連付ける。クライアント装置が通常にブートするとき、クライアント装置のシグネチャ値がサーバ・コンピューティング装置に与えられ、適切なブートイメージを自動的に参照する。
【０００７】
[0007]本発明の上記説明された特徴を詳しく理解できるように、本発明のより詳細な説明、簡潔な概要を実施形態を参照して説明し、これらの幾つかは添付図面に示される。しかしながら、添付図面は本発明の典型的な実施形態を図示するにすぎず、このため発明の範囲を制限するものとして考えるべきではなく、他の同等の有効な実施形態も含むことになる。
【詳細な説明】
【０００８】
[0012]典型的なコンピューティング装置は、装置上でローカルに実行されるファームウェアを有する。システムブートコロノロジーは、システムをブートし、実行コントロールをオペレーティングシステムに移すステップを定める。パワーオンセルフテストなどのあるステップは一般的である一方、他のステップは所与のオペレーティングシステムに特有であり得る。電源投入、コンフィギュレーション、セルフテスト、及び診断が完了した後、「ブートローダ」と呼ばれるコードのモジュールが実行される。ブートローダは、「オペレーティングシステムローダ」と呼ばれる他のローダプログラムを、実行のためにシステムメモリにロードするタスクを遂行する。オペレーティングシステムローダは、ブートイメージの一部であり、このブートイメージは、一般的には、ハードディスク、オプティカルディスク、又はフロッピーディスクに常駐する。オペレーティングシステムローダは、ブートイメージに含まれる一連の公知のストレージブロックから読み出される。例えば、オペレーティングシステムローダは、どのオペレーティングがロードされているかに関わらず、常にストレージブロックゼロから開始し、固定サイズ（一般的には５１２バイト）の固定数のディスクブロックを占有するようにできる。
【０００９】
[0013]Ｉｎｔｅｌ（登録商標）×８６プロセッサをベースとする標準的なパーソナルコンピュータ（ＰＣ）アーキテクチャは、ブートローダ、及び、「ＩＮＴ１３ディスクサービスエントリポイント」又は単に「ＩＮＴ１３サービス」と呼ばれる一連のストレージ装置アクセスルーチンを備える。ハードディスクが存在する場合、ＩＮＴ１３サービスは、オペレーティングシステムが実際にブートされる前に、ブロックストレージブート装置にＩＤＥ又はＳＣＳＩディスクドライブなどのインターフェースを提供する。
【００１０】
[0014]ＩＮＴ１３サービスは、コンピュータによって使用される特定のストレージ装置の独特のドライバ要求に関わらずコンピュータをブートする基準キャパビリティを確立する上で重要である。例えば、新たなハードディスクは、コンピュータ内に存在するファームウェアに後に展開される新規の一連の機能に新しいドライバが充分にアクセスできることを要求することがあり得る。その新規な機能にも関わらず、新たなハードディスクドライブはＩＮＴ１３サービスで定められる一連の基礎的なブロックリードオペレーションに依然として応答する。このようにして、ハードドライブディスクは、オペレーティングシステムローダを含む公知のブロックアドレスにベーシックアクセスをすることでコンピュータがブートできるようにする。初期のオペレーティングシステムコードがオペレーティングシステムローダでロードされた後、必要な装置ドライバはロードされ、オペレーティングシステムがコンピュータハードウェアの様々な機能に充分にアクセスできるようになる。
【００１１】
[0015]Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）のようなモダンオペレーティングシステムが最初にインストールされるとき、ハードウェアコンポーネントのある最小のセットが配置されているものとして仮定され、基本的なインストレーション機能を実行できるようにする。インストレーションプロセスには、コンピュータ内に存在する高機能グラフィックコントローラ、ネットワークインターフェースコントローラ（ＮＩＣ）、及び他のＩ／Ｏコントローラなどの追加的なハードウェア要素の存在を探索することが含まれる。追加的なハードウェア要素が発見された場合、これらのコンポーネントのためのドライバが、オペレーティングシステムによって管理されるドライバのライブラリ、或いは、オプティカルディスク又はフロッピィディスクなどのユーザが特定する場所からロードされる。オペレーティングシステムのブートの間にハードウェアが追加又は削除される場合は、オペレーティングシステムはそれに従って調整する。新規に追加されたハードウェアコンポーネントのために新たなドライバがロードされ、既存のドライバは新たに取り外されたハードウェアのためにディスエーブルされる。オペレーティングシステムがコンピュータのハードウェアコンフィギュレーションの変化を検出するたびに、新たなブートイメージが動的に更新され、以前のブートイメージを置き換える。新規にインストールされ又はアップデートされたブートイメージは、キャッシュされた一連のドライバ、インストールされたハードウェア及びコンフィギュレーション情報のマニフェストを含む。
【００１２】
[0016]特定のディスクレス・コンピューティング装置のハードウェアコンフィギュレーションは、ほとんど変化しない。このように、キャッシュされたブートイメージを生成するストラテジは、モダンオペレーティングシステムによって共通して用いられ、ディスクレス・コンピューティング装置をインストールするプロセスを効率的に自動化するように開発される。図１〜４を参照して以下に説明するように、新規にインストールされたブートイメージのそれぞれは、ディスクレス・コンピューティング装置の次のセッションのために、サーバ・コンピューティング装置に保存される。所与のディスクレス・コンピューティング装置と適切なブートイメージの間の接続は、特定の一連のハードウェアシステムコンフィギュレーションデータを用いて算出された比較的短いシグネチャ値を通じて確立される。シグネチャ値は、ｉＳＣＳＩログインコマンドの一部として示され、特定のディスクレス・コンピューティング装置がハードウェアの所与のクラスのメンバであるか否かを判定する。ハードウェアの特定のクラスのすべてのメンバが同一のブートイメージからブートすることができる。
【００１３】
[0017]図１は、本発明に一実施形態に係るディスクレス・コンピューティング装置１１０を含むシステム１００の概念図であり、ディスクレス・コンピューティング装置１１０は、ネットワーク１３０を通じてサーバ・コンピューティング装置１４０に接続されている。ディスクレス・コンピューティング装置１１０は、中央演算処理装置（ＣＰＵ）１１３、グラフィックコントローラ１１５、及び、入力／出力（Ｉ／Ｏ）装置１１４を含み、Ｉ／Ｏ装置１１４は、これらに限定されないが、シリアルポートコントローラ、パラレルポートコントローラ、ＵＳＢコントローラ、キーボード及びマウスを含む。ＣＰＵ１１３は、システムメモリ１１２に接続されており、システムメモリ１１２はダイナミックランダムアクセスメモリ（ＤＲＡＭ）を含み、プログラマラブルリードオンリーメモリ（ＰＲＯＭ）又はフラッシュメモリなどの不揮発性メモリを含んでもよい。詳細は後述するが、ファームウェア１２０がシステムメモリ１１２内に常駐している。動作中に必要に応じて、ファームウェア１２０は、ＰＲＯＭ、フラッシュメモリ、ＤＤＲメモリなどの一又は複数のタイプのメモリから実行することができる。また、ディスクレス・コンピューティング装置１１０は、イーサネットネットワークなどのインターネット１３０とインターフェースするＮＩＣ１１１を含む。
【００１４】
[0018]ファームウェア１２０は、これらには限定されないが、ブートローダ１２５、ＩＮＴ１３サービス１２４、ＮＩＣドライバ１２１、シグネチャジェネレータ１２３、及びｉＳＣＳＩイニシエータ１２２を含む。ＮＩＣドライバ１２１は、ＮＩＣ１１１を設定及び管理する。ブートローダ１２５は、コードのシングルモジュール又はコードのシーケンスモジュールにすることができ、ブートプロセスの一部としてハードディスクなどのブロックストレージデバイスからオペレーティングシステムローダをロードするために用いられる。ＩＮＴ１３サービス１２４は、ブロックストレージにベーシックアクセスを与えることができ、これにより、特定のオペレーティングシステムをロードするための特別の要求に応じたオペレーティングシステム特有のローダコードを、ディスクレス・コンピューティング装置１１０がロード及び実行することが可能となる。ここに詳細に述べるように、ｉＳＣＳＩイニシエータ１２２は、サーバ・コンピューティング装置１４０内に存在する仮想ディスクドライブにログインし、ブートローダ１２５に仮想ディスクドライブ及びそこに含まれるブートイメージへＩＮＴ１３アクセスできるようにする。
【００１５】
[0019]シグネチャジェネレータ１２３は、所与のディスクレス・コンピューティング装置１１０に存在するハードウェアの特定のコンフィギュレーションに独特のシグネチャ値１２６を算出する。シグネチャジェネレータ１２３の機能は、発明の名称が「Ｍｅｔｈｏｄ  ｔｏ  Ａｃｃｅｌｅｒａｔｅ  Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ  ｏｆ  Ｈａｒｄｗａｒｅ  Ｐｌａｔｆｏｒｍ  Ｃｌａｓｓｅｓ」である同時係属中の米国出願に開示されている（アトーニー整理番号ＮＶＤＡ／Ｐ００２３９０）。重要な点として、各シグネチャ値は、ハードウェアの特定のコンフィギュレーションに一意であることが保証されている。すなわち、二つの異なるハードウェアコンフィギュレーションが同一のシグネチャ値を共有することはできない。また、ここの詳細に説明するように、シグネチャ値１２６は、ｉＳＣＳＩログインプロセスにおいてｉＳＣＳＩイニシエータ１２２によって使用され、サーバ・コンピューティング装置１４０に格納されたどのブートイメージが関連するものであり、ディスクレス・コンピューティング装置１１０にダウンロードされるべきかを一意的に確認する。
【００１６】
[0020]サーバ・コンピューティング装置１４０は、これらに限定されないが、ＮＩＣ１４１、大量ストレージサブシステム１４２、ＣＰＵ１４３、オプティカルドライブ１４４、Ｉ／Ｏ装置１４６を含む。ＮＩＣ１４１は、ネットワーク１３０へのインターフェースを提供する。大量ストレージサブシステム１４２は、独立に機能する、又は、一又は複数のＲＡＩＤアレイとして構成された一又は複数のハードディスクを含むことができる。代替的に、大量ストレージサブシステム１４２は、ストレージエリアネットワーク（ＳＡＮ）又はネットワークアタッチトストレージ（ＮＳＡ）サブシステムを用いて実装することもできる。オプティカルドライブ１４４は、例えば、ＣＤ又はＤＶＤを含むことができる。インストレーションＣＤ又はＤＶＤがオプティカルドライブ１４４内に存在するとき、インストレーションイメージ１４５が利用可能になる。Ｉ／Ｏ装置１４６のセットは、これらに限定されないが、グラフィックコントローラ、シリアルポートコントローラ、パラレルポートコントローラ、ＵＳＢコントローラ、キーボード、及びマウスを含むことができる。
【００１７】
[0021]図示のように、サーバ・コンピューティング装置１４０は、また、ソフトウェアデータパス１５３を備え、このソフトウェアデータパス１５３は、ＮＩＣ１４１を管理するように構成されたＮＩＣドライバ１５１と、ディスクレス・コンピューティング装置１１０のｉＳＣＳＩイニシエータ１２２のようなクライアントに、ブートイメージを含む大量ストレージサブシステム１４２内に常駐する仮想ディスクドライブ１６０へのアクセスを与えるｉＳＣＳＩターゲット１５２と、を備えている。ブートイメージ１６１はディスクレス・コンピューティング装置をブートするのに適しており、オペレーティングシステムローダ１６２を含む。仮想ディスクドライブ１６５はまた、大量ストレージサブシステム１４２内で割り当てられ、新たなブートイメージ１６６を格納する。新たなブートイメージ１６６が一旦構成されると、オペレーティングシステムローダ１６７を含むことになる。ｉＳＣＳＩターゲット１５２は、ｉＳＣＳＩイニシエータ１２２からｉＳＣＳＩターゲット１５２に伝送されたｉＳＣＳＩログインコマンド内のシグネチャ値を解析することができる。ここに詳細に説明するように、シグネチャ値１２６が認証された場合、ディスクレス・コンピューティング装置１１０と仮想ディスクドライブ１６０の間の接続が確立され、ブートイメージ１６１はブートのためにディスクレス・コンピューティング装置１１０によってアクセスされ得る。しかしながら、シグネチャ値１２６が認証されない場合は、仮想ディスクドライブ１６５内の新たなブートイメージ１６６へのアクセスがディスクレス・コンピューティング装置１１０に与えられ、シグネチャ値１２６と関連し得るブートイメージが生成される。
【００１８】
[0022]本発明の一実施形態において、ディスクレス・コンピューティング装置１１０は、標準のＰＣアーキテクチャをベースとしており、このため、標準ＰＣファームウェアと実質的に同様に機能し得るファームウェア１２０内に一連のモジュールを有する。そこでブートローダ１２５は、ｉＳＣＳＩイニシエータ１２２により実行されるＩＮＴ１３サービスを通じてオペレーティングシステムローダ１６２をシステムメモリ１１２にロードする。このため、ｉＳＣＳＩイニシエータ１２２は、ＩＮＴ１３サービス１２４へ与えられるブロックデバイスとして機能する。ＴＣＰ／ＩＰプロトコルスタックは、実装制限に示されるように、ｉＳＣＳＩイニシエータ１２２又はＮＩＣドライバ１２１に実装される。代替的な実施形態において、ｉＳＣＳＩプロトコルに関連するＴＣＰ／ＩＰプロトコルスタックは、ＮＩＣ１１１に用いられる。
【００１９】
[0023]上述のように、ｉＳＣＳＩログインプロセスの最中に、ｉＳＣＳＩターゲット１５２は、ｉＳＣＳＩコマンドに含まれるシグネチャ値１２６を、サーバ・コンピューティング装置１４０に格納された既存のブートイメージに対応する既知のシグネチャ値とマッチさせることを試みる。マッチする場合、仮想ディスクドライブ１６０などの適切な仮想ディスクドライブがｉＳＣＳＩイニシエータ１２２に接続され、認証されたシグネチャ値１２６に対応するブートイメージ（例えばブートイメージ１６１）がＩＮＴ１３サービス１２４を介してブートローダ１２５に与えられる。もしシグネチャ値１２６が既知のものとマッチしない場合、ｉＳＣＳＩターゲット１５２はオペレーティングシステムインストーラのインストレーションイメージ１４５をディスクレス・コンピューティング装置１１０へ与える。以下に詳細に述べるように、新たなブートイメージ１６６は、標準インストレーションプロセスに関連するサーバ・コンピューティング装置１４０に備えられたイニシャルディスクドライブ１６５内に生成される。代替的な実施形態では、オプティカルディスクドライブ１４４内に常駐する代わりに、インストレーションイメージ１４５は、大量ストレージサブシステム１４２内の仮想ディスクドライブに常駐するようにしてもよく、例えば、ローブロックの形式、又は、ＩＳＯ  ＣＤイメージファイルとすることができる。
【００２０】
[0024]本発明の一実施形態では、オペレーティングシステムローダ１６２及び完全のブートイメージ１６１の両方が大量ストレージサブシステム１４２内の仮想ディスクドライブ１６０に常駐する。オペレーティングシステムローダ１６２はストレージパーティションとインタラクトできるプログラムであり、また、ブートイメージ１６１内に存在する少なくとも一つのファイルシステムであり、そこでは標準ファイルの形式でオペレーティングシステムの要素が全体的なブートコンフィギュレーションに含まれている。
【００２１】
[0025]他の実施形態では、サーバ・コンピューティング装置１４０のｉＳＣＳＩターゲット１５２は、ｉＳＣＳＩイニシエータ１２２に複数の仮想ディスクドライブ１６０，１６５のうちの一つを与えることができる。例えば、サーバ・コンピューティング装置１４０の大量ストレージサブシステム１４２に常駐する一連のストレージブロックが、スタンドアローンハードドライブのような独立の大量ストレージ装置としてｉＳＣＳＩイニシエータ１２２に与えられる。更に、ＩＳＯ  ＣＤイメージのようなファイルは、例えばロードされたＣＤを有しアクセスの準備ができているＣＤドライブのような独立の大量ストレージ装置としてｉＳＣＳＩイニシエータに付与される。
【００２２】
[0026]更に他の実施形態では、システム１００は、複数のサーバ・コンピューティング装置を備える。そのような実施形態では、ディスクレス・コンピューティング装置の異なるハードウェアクラスのためのブートイメージを含む複数の仮想ディスク装置が、複数の異なるサーバ・コンピューティング装置に渡って分散されるようにできる。
【００２３】
[0027]図２は、本発明の一実施形態に係る、リモートｉＳＣＳＩターゲット１５２からディスクレス・コンピューティング装置１１０をブートする方法ステップのフロー図である。この方法ステップは図１に関連して説明するが、当業者であれば、その方法ステップをどのような順序で実行する如何なるシステムも本発明の範囲に包含されることを理解することができる。
【００２４】
[0028]ディスクレス・コンピューティング装置１１０をブートする方法は、ステップ２１０から開始し、標準システムパワーオンセルフテスト（ＰＯＳＴ）及び初期化ルーチンがディスクレス・コンピューティング装置１１０内のファームウェア１２０によって実行される。ステップ２１０が完了した後、システムハードウェアは、ブートプロセスを開始するように構成及び準備される。ステップ２１１において、シグネチャジェネレータ１２３は、ディスクレス・コンピューティング装置１１０に存在するハードウェアを特定し、そのディスクレス・コンピューティング装置１１０の特定のハードウェアコンフィギュレーションに応じたシグネチャ値１２６を算出する。ステップ２１２において、ファームウェア１２０は、ログインプロセスに備えて、サーバ・コンピューティング装置１４０を発見してコンタクトする。ステップ２１３において、ｉＳＣＳＩイニシエータ１２２は、ｉＳＣＳＩターゲット１５２にｉＳＣＳＩログインし、ここで、ｉＳＣＳＩログインコマンドに関連するイニシエータ情報はシグネチャ値１２６を含む。ステップ２１４において、ｉＳＣＳＩターゲット１５２は、ｉＳＣＳＩログインコマンドの一部として伝送された情報から解析されたシグネチャ値１２６のマッチを試みる。もしシグネチャ値１２６が既知であり、そのため対応するブートイメージ１６１を有するなら、続くステップ２１５において、ディスクレス・コンピューティング装置１１０は、そのシグネチャ値１２６に対応する、サーバ・コンピューティング装置１４０内に格納された予め構成されたブートイメージを用いてブートされる。
【００２５】
[0029]ステップ２１４において、もしシグネチャ値が既知でないなら、方法はステップ２１６に進み、ディスクレス・コンピューティング装置１１０は、ｉＳＣＳＩターゲット１５２に指示されてインストレーションイメージからブートする。ステップ２１７において、ディスクレス・コンピューティング装置１１０は、通常のシステムインストレーションを行う。仮想化されたストレージへのアクセスによって、ディスクレス・コンピューティング装置１１０は、インストレーションプロセスを完了することができ、このプロセスは、オプティカルメディア及びハードディスクがローカルに取り付けられた典型的なインストレーションプロセスが実行される方法と同様に遂行される。重要なことに、インストレーション手順とともに、ｉＳＣＳＩイニシエータ１２２は、ディスクレス・コンピューティング装置１１０の完全なブートを実行するのに必要なデータファイルを含む全てのコンフィギュレーション情報をサーバ・コンピューティング装置１４０にライトバックする（書き戻す）。この情報は新たなブートイメージ１６６を仮想ストレージ装置１６５内に投入され、以前は知られていなかったシグネチャ値１２６に対応するブートイメージが生成される。ステップ２１８において、ディスクレス・コンピューティング装置１１０が停止し、仮想ハードディスク上に生成された新たなインストレーションを含むブートイメージのスナップショットをｉＳＣＳＩターゲット１５２がキャプチャできる機会を与える。
【００２６】
[0030]図３は、本発明の一実施形態に係る、既知のクライアントハードウェアコンフィギュレーションのためのブートディスクイメージを与え、新たなクライアントハードウェアコンフィギュレーションのための新たなオペレーティングシステムブートイメージを生成する方法ステップのフロー図である。この方法ステップは図１に関連して説明するが、当業者であれば、その方法ステップをどのような順序で実行する如何なるシステムも本発明の範囲に包含されることを理解することができる。
【００２７】
[0031]図３の方法は、ステップ３１０から開始し、図２を参照して説明したように、ディスクレス・コンピューティング装置１１０のｉＳＣＳＩイニシエータ１２２はサーバ・コンピューティング装置１４０のｉＳＣＳＩターゲット１５２と共にｉＳＣＳＩログイン手順を実行する。ここで再び、ｉＳＣＳＩイニシエータ１２２からのログインコマンドは、ディスクレス・コンピューティング装置１１０の所与のハードウェアコンフィギュレーションのためにシグネチャジェネレータ１２３によって算出されたシグネチャ値１２６を含んでいる。
【００２８】
[0032]ステップ３１１において、ｉＳＣＳＩターゲット１５２は、シグネチャ値１２６を一連の既知のシグネチャ値と比較して、ディスクレス・コンピューティング装置１１０のハードウェアコンフィギュレーションに対応するサーバ・コンピューティング装置１４０の大量ストレージサブシステム１４２に既に格納されたブートイメージがあるか否かを判断する。もしシグネチャ値１２６が認証された場合は、方法はステップ３２１に進み、そこではログインコマンドは、大量ストレージサブシステム１４２に既に格納されたディスクレス・コンピューティング装置１１０のハードウェアコンフィギュレーションに対応するブートイメージに関連している。ステップ３２２において、現在のログインセッション内でｉＳＣＳＩイニシエータ１２２による全ての後の要求は、シグネチャ値１２６に対応するブートイメージから与えられる。ステップ３２３において、現在のセッションがログアウト要求を受け取ったか、又は、さもなければ終了したかについて判断される。もし現在のセッションが終了していない場合は、方法はステップ３２２に戻り、ｉＳＣＳＩイニシエータ１２２からの要求は、ディスクレス・コンピューティング装置１１０のハードウェアコンフィギュレーションに対応するブートイメージから与えられる。もしログアウト又は他の終了イベントが起こった場合は、ステップ３２４において終了する。
【００２９】
[0033]しかしながら、もしステップ３１１において、シグネチャ値１２６が認証されない場合、方法はステップ３３１に進み、新たなブートイメージ１６６のために仮想ディスクドライブ１６５が大量ストレージサブシステム１４２内に生成される。ステップ３３２において、ｉＳＣＳＩターゲット１５２は、インストレーションイメージ１４５をディスクレス・コンピューティング装置１１０に与え、次いで、上述したように通常のインストレーション手順が行われる。ここで再び、インストレーション手順に関連して、ｉＳＣＳＩイニシエータ１２２は、ディスクレス・コンピューティング装置１１０をブートするのに必要なデータファイルを含む全てのコンフィギュレーション情報をサーバ・コンピューティング装置１４０にライトバックする。この情報は、仮想ディスクドライブ１６５内の新たなブートイメージ１６６に格納され、これにより、先に認証されなかったシグネチャ値１２６に対応するブートイメージを生成する。ステップ３３において、クライアント装置インストレーションプロセスが終了したか否かの判断がされる。インストレーションプロセスが終了していない場合、サーバ・コンピューティング装置１４０は、オプティカルドライブ１４４からインストレーションイメージ１４５を供給し続ける。ステップ３３３の判定の結果、もしインストレーションプロセスが終了している場合、方法はステップ３３４に進み、新たに遭遇するシグネチャ値１２６に関連する新たなブートイメージ１６６がキャプチャされ、将来の参照のために永久的に格納される。新たなブートイメージ１６６が格納されると、方法はステップ３３５で終了する。
【００３０】
[0034]図４は、本発明の一実施形態に係る、クライント装置の独特のシグネチャを取り込むｉＳＣＳＩログインプロセスを示す図である。基本的なｉＳＣＳＩログイン手順は当業界で公知である。ｉＳＣＳＩイニシエータ１２２は、ＴＣＰポート３２６０を用いて、ｉＳＣＳＩターゲット１５２と通常のＴＣＰセッション４１０を確立する。ＴＣＰセッションが確立されると、ｉＳＣＳＩイニシエータ１２２は、ｉＳＣＳＩイニシエータの名称又は他のログインパラメータのような、ベンダ特有のシグネチャパラメータ４２０を含む“０×０３  ログインリクエスト”４１１を送信する。ログインプロセスにおける公知技術との相違には、シグネチャ値１２６を含むようにベンダ特有シグネチャパラメータ４２０をプロビジョニングすることが含まれる。これは、「ｉＳＣＳＩプライベート又はパブリックエクステンションキーフォーマット」として業界で知られるメカニズム及び標準の下で起こり、これは個々の装置がそれらのｉＳＣＳＩ名称の一部を個別に定めることを可能とする。ログインが成功すると、ｉＳＣＳＩターゲット１５２から０×２３  ログイン応答４１２が得られる。追加のログインエクスチェンジは、この点に続き、例えばコマンド４１３、応答４１４が続く。
【００３１】
[0035]本発明では、インストレーション、並びに、一又は複数のサーバ・コンピューティング装置に関連するディスクレス・コンピューティング装置が複合したオペレーションを自動化するために、３つの新規な要素が機能する。第１の要素は、一又は複数のディスクレス・コンピューティング装置に存在するハードウェアコンフィギュレーションの各特定のクラスのための独特のシグネチャ値であり、そのクラスの全てのメンバは、サーバ・コンピューティング装置上に格納された同一のブートイメージからブートすることができる。第２の要素は、ディスクレス・コンピューティング装置内に常駐するファームウェアに組み込まれたｉＳＣＳＩイニシエータであり、これにより、ＩＮＴ１３ディスクサービスエントリポイントをファームウェアブートローダに与えることができる。重要な点として、ｉＳＣＳＩイニシエータは、ｉＳＣＳＩログインコマンドに、ディスクレス・コンピューティング装置クライアントの特別なハードウェアコンフィギュレーションに関連した独特のシグネチャ値をインサートする。これは、標準ｉＳＣＳＩプライベート又はパブリックエクステンションキーフォーマットによって許可されている。第３の要素は、ｉＳＣＳＩコマンドを解析して、シグネチャ値を抽出し、ディスクレス・コンピューティング装置クライアントのための対応するブートイメージを一意に割り当て又は生成することができるｉＳＣＳＩターゲットである。
【００３２】
[0036]以上、本発明の実施形態について説明したが、本発明の他の形態及び更なる形態が本発明の基本的範囲から逸脱することなく明らかであり、発明の範囲は特許請求の範囲に基づいて定められる。
【図面の簡単な説明】
【００３３】
【図１】発明の一実施形態に係る、ネットワークを通じてサーバ・コンピューティング装置に接続されたディスクレス・コンピューティング装置を含むシステムの概念図である。
【図２】発明の一実施形態に係る、リモートｉＳＣＳＩターゲットからディスクレス・コンピューティング装置をブートする方法ステップのフロー図である。
【図３】発明の一実施形態に係る、既知のクライアントハードウェアコンフィギュレーションのためのブートディスクイメージを与え、新たなクライアントハードウェアコンフィギュレーションのための新たなオペレーティングシステムブートイメージを生成する方法ステップのフロー図である。
【図４】発明の一実施形態に係る、クライント装置の独特のシグネチャを取り込むｉＳＣＳＩログインプロセスを示す図である。
【符号の説明】
【００３４】
１１０…ディスクレス・コンピューティング装置、１１２…システムメモリ、１１４…サーバ・コンピューティング装置、１１５…グラフィックコントローラ、１２０…ファームウェア、１２１…ＮＩＣドライバ、１２２…ｉＳＣＳＩイニシエータ、１２３…シグネチャジェネレータ、１２４…ＩＮＴ１３サービス、１２５…ブートローダ、１２６…シグネチャ値、１３０…ネットワーク、１４０…サーバ・コンピューティング装置、１４２…大量ストレージサブシステム、１４４…オプティカルドライブ、１４５…インストレーションイメージ、１４６…Ｉ／Ｏ装置、１５１…ＮＩＣドライバ、１５２…ｉＳＣＳＩターゲット、１５３…ソフトウェアデータパス、１６０，１６５…仮想ディスクドライブ、１６１…ブートイメージ、１６２…オペレーティングシステムローダ、１６６…新ブートイメージ、１６７…オペレーティングシステムローダ。
【図１】
2008112433.tif 000003
【図２】
2008112433.tif 000004
【図３】
2008112433.tif 000005
【図４】
2008112433.tif 000006
【外国語明細書】
2008112433000001.pdf