(57)【要約】【課題】  定期的な保守を必要としない部品によって、誤った抜去によるサービス停止を回避できるようにする。【解決手段】  ブレード１１０がバックプレーン１０１から抜き取られると、抜去検出回路１１４によって、抜き取られたことが検出される。すると、電源切替回路１１５は、大容量キャパシタ１１２から供給される電源を、ブレード１１０内の回路に供給する。また、ＣＰＵ動作周波数制御回路１１６は、ＣＰＵ１１７の動作周波数を、最大値よりも低く設定する。これにより、ＣＰＵ１１７は、大容量キャパシタ１１２に蓄えられている電気を消費しながら、最大周波数よりも低い周波数でデータ処理を実行する。【選択図】  図１
2006260327.tif 000002
【特許請求の範囲】
【請求項１】
複数のスロットが設けられたバックプレーンの前記スロットに接続して使用されるブレード型コンピュータにおいて、
前記バックプレーンを介して供給される電源ラインに接続されたキャパシタと、
前記電源ラインと前記キャパシタとの少なくとも一方から電源供給を受けて動作するＣＰＵと、
を有することを特徴とするブレード型コンピュータ。
【請求項２】
前記バックプレーンから抜き取られたことを検出し、抜去検出信号を出力する抜去検出回路と、
前記抜去検出回路から前記抜去検出信号が出力されると前記ＣＰＵの動作周波数を低下させる動作周波数制御回路と、
をさらに有することを特徴とする請求項１記載のブレード型コンピュータ。
【請求項３】
前記キャパシタに蓄えられている電気量を監視し、前記電気量が所定の閾値未満になるとサスペンド信号を出力するキャパシタ蓄電量監視回路をさらに有し、
前記ＣＰＵは、前記キャパシタ蓄電量監視回路から前記サスペンド信号が出力されると、メモリ内のデータを不揮発性の記録媒体に待避させるサスペンド処理を実行することを特徴とする請求項１記載のブレード型コンピュータ。
【請求項４】
前記バックプレーンから抜き取られたことを検出し、抜去検出信号を出力する抜去検出回路と、
前記抜去検出回路から前記抜去検出信号が出力されると、前記ＣＰＵへの電源供給元を、前記電源ラインから前記キャパシタに切り替える電源切替回路と、
をさらに有することを特徴とする請求項１記載のブレード型コンピュータ。
【請求項５】
前記バックプレーンから抜き取られたことを検出し、抜去検出信号を出力する抜去検出回路をさらに有し、
前記ＣＰＵは、前記抜去検出回路から前記抜去検出信号が出力された場合、オペレーティングシステムが動作中か否かを判断し、前記オペレーティングシステムが動作中であれば警告音をスピーカから出力させることを特徴とする請求項１記載のブレード型コンピュータ。
【請求項６】
前記ＣＰＵは、消費電力が前記電源ラインから供給される電力を超えたとき、前記電源ラインと前記キャパシタとから電源供給を受けることを特徴とする請求項１記載のブレード型コンピュータ。
【請求項７】
前記キャパシタに蓄えられている電気量を監視し、前記電気量を前記ＣＰＵに通知するキャパシタ蓄電量監視回路をさらに有し、
前記ＣＰＵは、前記キャパシタ蓄電量監視回路から通知された前記電気量が所定の値以下になった場合、動作周波数を低下させることを特徴とする請求項１記載のブレード型コンピュータ。
【請求項８】
無線でデータ通信を行う無線通信回路をさらに有し、
前記ＣＰＵは、前記無線通信回路を介した無線通信により接続されたブレード管理装置からの要求に従い、無線通信によるノードマイグレーション処理を実行することを特徴とする請求項１記載のブレード型コンピュータ。
【請求項９】
複数のスロットが設けられたバックプレーンの前記スロットに接続して使用されるブレード型コンピュータを管理するためのブレード管理装置において、
無線によって前記ブレード型コンピュータと通信を行う無線通信回路と、
前記バックプレーンの前記スロットから前記ブレード型コンピュータが抜き取られたことを検出し、割り込み信号を出力するインサート信号検出回路と、
前記インサート信号検出回路から前記割り込み信号が出力されると時間計測を開始し、前記ブレード型コンピュータが再挿入される前に、計測された時間が所定の再挿入タイムアウト時間を超えると、前記無線通信回路を介して前記ブレード型コンピュータと無線通信を行い、前記ブレード型コンピュータで実行されている処理を、前記バックプレーンに接続されたテンポラリ用ブレード型コンピュータに移行するノードマイグレーション処理を実行するＣＰＵと、
を有することを特徴とするブレード管理装置。
【請求項１０】
複数のスロットが設けられたバックプレーンの前記スロットに接続して使用されるブレード型コンピュータを管理するためのブレード管理プログラムにおいて、
コンピュータを、
前記バックプレーンの前記スロットから前記ブレード型コンピュータが抜き取られたことを検出すると、時間計測を開始するタイマ、
前記ブレード型コンピュータが再挿入される前に、前記タイマで計測された時間が所定の再挿入タイムアウト時間を超えたか否かを判断するブレード状態管理手段、
前記ブレード状態管理手段において前記タイマの値が前記再挿入タイムアウト時間を超えたと判断された場合、前記ブレード型コンピュータと無線通信を行い、前記ブレード型コンピュータで実行されている処理を、前記バックプレーンに接続されたテンポラリ用ブレード型コンピュータに移行するノードマイグレーション処理を実行するノードマイグレーション手段、
として機能させることを特徴とするブレード管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は複数のスロットが設けられたバックプレーンに接続して使用されるブレード型コンピュータ、そのブレード型コンピュータを管理するブレード管理装置、及びブレード型コンピュータをコンピュータに管理させるためのブレード管理プログラムに関し、特に保守作業中にも運用を継続するブレード型コンピュータ、ブレード管理装置、及びブレード管理プログラムに関する。
【背景技術】
【０００２】
コンピュータシステムの大規模化により、サーバの高機能化と共にサーバ１台当たりの設置面積の低減が求められている。そこで、ブレードサーバが登場した。ブレードサーバは、１枚の基盤（ブレード）にコンピュータとして必要な要素（ＣＰＵ（Central Processing Unit）やＲＡＭ（Random Access Memory））を実装し、必要な枚数のブレードをシャーシ内に実装したものである。これにより、電源ユニット等の共有化が図れ、処理能力に対する設置面積を少なくすることができる。このようなブレードサーバによって、単位スペース当たりのＣＰＵ密度が向上する。
【０００３】
その一方、ブレードの数が多くなるにつれ、保守管理が困難となってきている。例えばシャーシの保守（電源の交換やファンの交換等）のために、運用中のシャーシを止める必要が生じる場合がある。この場合、シャーシ内の各ブレードで動作している処理を異なるシャーシのブレードに移す作業が必要になる。
【０００４】
なお、電力を消費する負荷ユニットを交換するとき、他の負荷ユニットへ供給される電源電圧が変動する。そのような電源電圧の変動を抑制する技術も考えられている（例えば、特許文献１参照）。
【０００５】
ブレードで動作している機能を移動する場合、通常は移動先のブレードを新規に立ち上げる。その後、移動元のブレードで実行されているユーザの処理を中断し、新規に立ち上げたブレードで処理を再起動する。このようにして、ブレードで動作している機能の移動が可能となる。
【０００６】
ただし、複数のブレードが搭載されているブレードサーバでは、各々のブレードを異なるユーザが使用していることも想定される。そのため、それぞれのユーザの移設作業のスケジュール調整が必要となる。このように新規シャーシへの移設で再起動をすることは、サーバを使用するユーザ及び管理者にとって大きな負担となる。
【０００７】
このような問題を解決する方法として、ノードマイグレーション技術がある。ノードマイグレーションは、移動元のブレードで実行中の処理を移動先のブレードに移行する技術である。ノードマイグレーションを用いて、ユーザの処理を移動先のブレードに移すことで、ユーザの処理に影響を与えずに、保守管理を実行できる。
【０００８】
ノードマイグレーションの応用技術としては、例えば、プログラムのノードマイグレーションの後、データアクセスの速度を低下せずに、データアクセスすることができる計算機システムが提案されている（例えば、特許文献２参照）。
【０００９】
また、システムの仮想化による保守管理を軽減する技術も開発されてきている。これは、スロット／シャーシ単位でユーザ管理を行うのではなく、仮想的にプールされたブレードからユーザは必要な数のブレードを割り当ててもらい、ブレードの処理が不足した場合や、ブレードが故障した場合は、プールされたブレードから新規にブレード割り当てを受けるといった方法である。
【特許文献１】特開２００３−３１６４８９号公報
【特許文献２】特開２００４−２４６７０２号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
ところで、シャーシの保守作業においては、ノードマイグレーション技術を用いれば、ユーザへのサービスを継続しつつ、別のブレードに処理機能を移行することができる。ノードマイグレーションを行う場合、移動先のブレードを確保し、動作環境を整えた後、移動元から移動先へノードマイグレーションを実行し、その後、作業車が保守対象のブレードの抜去作業を行う。このように、ノードマイグレーションによる移設では、移動先のブレードを用意しなければならず、人手による作業が入る。そのため、ヒューマンエラーが発生しやすい。例えば、保守対象のブレードとは異なるブレードが誤って抜かれる場合があり得る。
【００１１】
また、システムの仮想化技術により、ブレードサーバの保守管理技術は向上しているが、故障したブレードの交換や、シャーシの電源やファンの交換などの物理的な保守作業は、最終的に人の手で行うことになる。このため、誤り抜去などの事故も発生しやすくなる。
【００１２】
この問題の解決案としては、ブレードにバッテリを搭載することが考えられる。これにより、抜去してもブレード内の処理を継続させることができる。その結果、ブレードが誤って抜かれても、そのブレードを再度シャーシに挿入すれば、ブレード内の処理が中断されずに済む。また、ブレードのシャーシ間の移動も自由に行うことが可能となる。
【００１３】
しかし、ブレードにバッテリを搭載した場合、バッテリには耐用年数に制限があるため、定期的に保守する必要がある。信頼性が必要なサーバに保守部品を搭載するのは、信頼性維持の観点から問題となる。
【００１４】
本発明はこのような点に鑑みてなされたものであり、定期的な保守を必要としない部品によって、誤った抜去によるサービス停止を回避できるブレード型コンピュータ、ブレード管理装置、及びブレード管理プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１５】
本発明では上記課題を解決するために、図１に示すようなブレード型コンピュータが提供される。このブレード型コンピュータは、複数のスロットが設けられたバックプレーンのスロットに接続して使用されるものであり、バックプレーンを介して供給される電源ラインに接続されたキャパシタと、電源ラインと前記キャパシタとの少なくとも一方から電源供給を受けて動作するＣＰＵとを有している。
【００１６】
このようなブレード型コンピュータによれば、ブレードがバックプレーンに挿入されている間、電源ラインを介してキャパシタに電気が蓄えられる。その後、ブレードがバックプレーンから抜き取られるとキャパシタに蓄えられた電源でＣＰＵが動作する。
【００１７】
また、上記課題を解決するために、複数のスロットが設けられたバックプレーンの前記スロットに接続して使用されるブレード型コンピュータを管理するためのブレード管理装置において、無線によって前記ブレード型コンピュータと通信を行う無線通信回路と、前記バックプレーンの前記スロットから前記ブレード型コンピュータが抜き取られたことを検出し、割り込み信号を出力するインサート信号検出回路と、前記インサート信号検出回路から前記割り込み信号が出力されると時間計測を開始し、前記ブレード型コンピュータが再挿入される前に、計測された時間が所定の再挿入タイムアウト時間を超えると、前記無線通信回路を介して前記ブレード型コンピュータと無線通信を行い、前記ブレード型コンピュータで実行されている処理を、前記バックプレーンに接続されたテンポラリ用ブレード型コンピュータに移行するノードマイグレーション処理を実行するＣＰＵと、を有することを特徴とするブレード管理装置が提供される。
【００１８】
さらに、上記課題を解決するために、複数のスロットが設けられたバックプレーンの前記スロットに接続して使用されるブレード型コンピュータを管理するためのブレード管理プログラムにおいて、コンピュータを、前記バックプレーンの前記スロットから前記ブレード型コンピュータが抜き取られたことを検出すると、時間計測を開始するタイマ、前記ブレード型コンピュータが再挿入される前に、前記タイマで計測された時間が所定の再挿入タイムアウト時間を超えたか否かを判断するブレード状態管理手段、前記ブレード状態管理手段において前記タイマの値が前記再挿入タイムアウト時間を超えたと判断された場合、前記ブレード型コンピュータと無線通信を行い、前記ブレード型コンピュータで実行されている処理を、前記バックプレーンに接続されたテンポラリ用ブレード型コンピュータに移行するノードマイグレーション処理を実行するノードマイグレーション手段、として機能させることを特徴とするブレード管理プログラムが提供される。
【発明の効果】
【００１９】
本発明では電源ラインにキャパシタを接続し、キャパシタからの電源供給を受けてＣＰＵが動作できるようにしたため、ブレード型コンピュータがバックプレーンから抜き取られてもＣＰＵはキャパシタからの電源で処理を続行することができる。しかも、キャパシタは定期的な保守が不要であるため、高い信頼性を維持することができる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明の実施の形態を図面を参照して説明する。
［第１の実施の形態］
図１は、第１の実施の形態のブレードを示すブロック図である。ブレード１１０は、シャーシ内のバックプレーン１０１に接続されている。具体的には、バックプレーン１０１に設けられたコネクタ１０２に、ブレード１１０のコネクタ１１１が接続されている。これにより、それぞれのコネクタ１０２，１１１内に配置された端子によって、ブレード１１０とバックプレーン内に設けられたバスとが電気的に接続される。
【００２１】
ブレード１１０は、大容量キャパシタ１１２を有している。大容量キャパシタ１１２には、コネクタ１１１を介して、バックプレーン１０１からの電源が供給されている。ここで、大容量キャパシタ１１２に蓄えられた電気は、電源切替回路１１５に供給されている。
【００２２】
また、大容量キャパシタ１１２には、キャパシタ蓄電量監視回路１１３が接続されている。キャパシタ蓄電量監視回路１１３は、大容量キャパシタ１１２の端子間の電圧を測定し、キャパシタに蓄えられている電気量を監視する。キャパシタ蓄電量監視回路１１３は、大容量キャパシタ１１２に蓄電されている電気量が所定値以下になると、ＣＰＵ１１７に対してサスペンド信号を出力する。
【００２３】
コネクタ１１１には、さらに抜去検出回路１１４が接続されている。抜去検出回路１１４は、コネクタ１１１がバックプレーン１０１側のコネクタ１０２に接続されているか否かを検出する。すなわち、抜去検出回路１１４は、ブレード１１０がブレードサーバのシャーシに接続されているか否かを検出する。抜去検出回路１１４は、コネクタ１１１がバックプレーン１０１のコネクタ１０２から抜き去られたことを検出すると、抜去検出信号を、電源切替回路１１５とＣＰＵ動作周波数制御回路１１６とに出力する。
【００２４】
電源切替回路１１５は、バックプレーン１０１から供給される電源と、大容量キャパシタ１１２から供給される電源との一方を選択し、ブレード１１０内の各回路に電源を供給する。電源切替回路１１５による電源の選択は、抜去検出回路１１４から入力される抜去検出信号の有無に応じて決定される。具体的には、電源切替回路１１５は、抜去検出信号が入力されていない間は、バックプレーン１０１から供給される電源を選択する。また、電源切替回路１１５は、抜去検出信号が入力された場合、大容量キャパシタ１１２から供給される電源を選択する。
【００２５】
ＣＰＵ動作周波数制御回路１１６は、ＣＰＵ１１７に接続されており、ＣＰＵ１１７の動作周波数を制御する。具体的には、ＣＰＵ動作周波数制御回路１１６は、抜去検出回路１１４からの抜去検出信号が入力されていない場合、ＣＰＵ１１７の動作周波数を所定の最大値とする。また、ＣＰＵ動作周波数制御回路１１６は、抜去検出回路１１４からの抜去検出信号が入力された場合、ＣＰＵ１１７の動作周波数を最大より低い値に下げる。
【００２６】
ＣＰＵ１１７は、ＣＰＵ動作周波数制御回路１１６で設定された周波数で動作する。また、ＣＰＵ１１７は、キャパシタ蓄電量監視回路１１３からサスペンド信号が入力されると、システムをサスペンド状態に移行する。ここで、サスペンド状態への移行とは、揮発性メモリ内のデータの不揮発性記憶媒体への移動等、現在の状態を再現するために必要な情報の待避処理を行い、その後電源を遮断する処理である。
【００２７】
このような構成のブレード１１０において、ブレード１１０がバックプレーン１０１に差し込まれた状態で動作している場合、抜去検出回路１１４は、抜去検出信号を出力しない。すると、電源切替回路１１５は、バックプレーン１０１から供給される電源を、ブレード１１０内の回路に供給する。
【００２８】
このとき、大容量キャパシタ１１２には、バックプレーン１０１から供給される電源により、電気が蓄電される。キャパシタ蓄電量監視回路１１３は、大容量キャパシタ１１２の電気量が所定値以上であると判断し、サスペンド信号の出力は行わない。
【００２９】
また、ＣＰＵ動作周波数制御回路１１６は、抜去検出信号が入力されていないため、ＣＰＵ１１７の動作周波数を、最大の動作周波数に設定する。これにより、ＣＰＵ１１７は、バックプレーン１０１から供給されている電源によって、最大の動作周波数でデータ処理を実行する。
【００３０】
ここで、ブレード１１０がバックプレーン１０１から抜き取られると、抜去検出回路１１４によって、抜き取られたことが検出される。そして、抜去検出回路１１４が抜去検出信号を、電源切替回路１１５とＣＰＵ動作周波数制御回路１１６に対して出力する。
【００３１】
すると、電源切替回路１１５は、大容量キャパシタ１１２から供給される電源を、ブレード１１０内の回路に供給する。また、ＣＰＵ動作周波数制御回路１１６は、ＣＰＵ１１７の動作周波数を、最大値よりも低く設定する。これにより、ＣＰＵ１１７は、大容量キャパシタ１１２に蓄えられている電気を消費しながら、最大周波数よりも低い周波数でデータ処理を実行する。
【００３２】
ブレード１１０が抜き取られてしばらくの間は、大容量キャパシタ１１２には、所定値以上の電気量が蓄えられている。しかし、ＣＰＵ１１７がデータ処理を継続することで、大容量キャパシタ１１２内の電気量が減少する。そして、その電気量が所定値未満になると、キャパシタ蓄電量監視回路１１３によってサスペンド信号がＣＰＵ１１７に対して出力される。サスペンド信号を受け取ったＣＰＵ１１７は、サスペンド処理を行い、ブレード１１０内への電源供給を停止する。
【００３３】
次に、抜去検出回路１１４の詳細について説明する。
図２は、抜去検出回路の内部構造を示す図である。抜去検出回路１１４には、ドライバ１１４ａによって、所定電圧の信号が抜去検出信号出力回路１１４ｂに供給されている。また、ドライバ１１４ａの出力とコネクタ１１１内の接続用のピン１１１ａとを接続する配線１１４ｃが設けられている。
【００３４】
抜去検出信号出力回路１１４ｂは、ドライバ１１４ａからの入力信号の電圧に応じて、抜去検出信号を出力する。具体的には、抜去検出信号出力回路１１４ｂは、入力がハイレベルであれば抜去検出信号を出力し、入力がローレベルであれば抜去検出信号の出力は行わない。また、抜去検出回路１１４には、コネクタ１１１内の接続用のピン１１１ｂを接地させる配線１１４ｄが設けられている。
【００３５】
一方、バックプレーン１０１には、ブレード１１０側のピン１１１ａに合致するソケット１０２ａと、ブレード１１０側のピン１１１ｂに合致するソケット１０２ｂとの間を接続する配線１０１ａが設けられている。
【００３６】
このような構成により、ブレード１１０がバックプレーン１０１に実装されている間は、ドライバ１１４ａの出力端子は、配線１１４ｃ，１０１ａ，１１４ｄを介して、グラウンドに接続される。その結果、抜去検出信号出力回路１１４ｂには、ローレベルの信号が入力される。その結果、抜去検出信号出力回路１１４ｂからは、抜去検出信号は出力されない。
【００３７】
また、ブレード１１０がバックプレーン１０１から抜き取られると、ブレード１１０側のコネクタ１１１内のピン１１１ａとピン１１１ｂとの間の電気的な接続が遮断される。すると、ドライバ１１４ａからの出力端子がグラウンドに接続されず、ドライバ１１４ａの出力信号がハイレベルのまま抜去検出信号出力回路１１４ｂに入力される。その結果、抜去検出信号出力回路１１４ｂから抜去検出信号が出力される。その結果、抜去検出回路１１４によって、ブレード１１０の抜去が検出される。
【００３８】
このように、ブレード１１０に大容量キャパシタ１１２が搭載されことで、ブレード１１０を抜去しても、ブレード１１０が動作を継続することが可能となる。そのため、例えば、シャーシに障害が発生した場合、そのシャーシ内の全てのブレードを動作させたまま、他のシャーシに移動させることが可能となる。
【００３９】
しかも、大容量キャパシタ１１２は、バッテリと異なり、耐用年数は、ほぼ無限である。そのため、大容量キャパシタ１１２は、保守管理の必要はなく、サーバの信頼性を劣化させることはない。
【００４０】
また、ＣＰＵ１１７は、抜去されたことをトリガとして、動作周波数が低下する。これにより、動作時間を延ばすことも可能である。
さらに、キャパシタ蓄電量監視回路１１３により大容量キャパシタ１１２の残電力をモニタすることで、抜去状態が継続し、大容量キャパシタ１１２に蓄えられた電気が完全に枯渇する前に、サスペンド状態とすることができる。その結果、大容量キャパシタ１１２の蓄電量の枯渇によるデータ消失を防ぐことができる。
【００４１】
［第２の実施の形態］
次に第２の実施の形態について説明する。第２の実施の形態は、抜き取るべきではないブレードが抜き取られた場合には、警告音が出力されるものである。
【００４２】
図３は、第２の実施の形態に係るブレードを示すブロック図である。なお、図３に示すブレード１２０の構成要素のうち、コネクタ１２１、大容量キャパシタ１２２、抜去検出回路１２３、および電源切替回路１２４については、図１に示した第１の実施の形態の同名の構成要素と同じ機能を有している。そこで、第１の実施の形態と同じ機能の構成要素については説明を省略し、異なる機能を有している構成要素について説明する。
【００４３】
第２の実施の形態では、抜去検出回路１２３からの抜去検出信号が、ＣＰＵ１２５に割り込み信号として入力される。また、ＣＰＵ１２５は、ＣＰＵ１２５によるシステムの動作状態を示す状態フラグ１２５ａを有している。ＣＰＵ１２５は、ＯＳを起動している間は、状態フラグ１２５ａに動作中を示す値を設定する。また、ＣＰＵ１２５は、ＯＳをシャットダウンした場合、状態フラグ１２５ａに、停止中を示す値を設定する。なお、状態フラグ１２５ａとしては、例えば、ＣＰＵ１２５内の汎用レジスタを利用することができる。
【００４４】
ＣＰＵ１２５は、ＯＳのシャットダウン後も、ＲＯＭベースのプログラムによって動作している。そして、ＣＰＵ１２５は、抜去検出回路１２３から抜去検出信号が割り込み信号として入力されると、状態フラグ１２５ａの値をチェックする。状態フラグ１２５ａに動作中と設定されている場合、ＣＰＵ１２５は、アラーム出力信号をＣＯＤＥＣ（COder-DECoder）１２６に対して出力する。ＣＯＤＥＣ１２６は、ＣＰＵ１２５からのアラーム出力信号を受けると、警告用のアラーム音をスピーカ１２７から出力させる。
【００４５】
このような構成のブレード１２０によれば、ブレードが抜去可能（シャットダウン）状態かそうでないかが、大容量キャパシタ１２２を搭載したブレード１２０内の状態フラグ１２５ａに保持される。そして、ブレード１２０が抜去可能でない状態のときに、バックプレーン１０１からブレード１２０が抜去された場合にも、ＣＰＵ１２５は大容量キャパシタ１２２の電力で動作し続ける。
【００４６】
そして、ブレード１２０がバックプレーン１０１から抜去されたことを、抜去検出回路１２３が検出し、抜去検出信号が出力される。出力された抜去検出信号は、ＣＰＵ１２５に対して割り込み信号として入力される。
【００４７】
割り込み信号を受けたＣＰＵ１２５は、状態フラグ１２５ａを確認し、動作中であれば、ＣＯＤＥＣ１２６に対して、アラーム出力信号を出力する。すると、ＣＯＤＥＣ１２６は、スピーカ１２７を介して警告音を出力する。
【００４８】
このように、ＣＰＵ１２５に状態フラグ１２５ａを設けたことで、システムが動作している場合にのみ警告音を出力し、ブレード１２０の再挿入を促すことが可能となる。具体的には、ブレードサーバの保守等の作業者が誤ったブレードを抜去した場合、間違ったブレードが抜去されたことが、その場で警告音によって告知される。作業者は、警告音が発せられた場合、そのブレード１２０をバックプレーン１０１に差し直すことで、元の状態に戻すことができる。その間、ブレード１２０は、大容量キャパシタ１２２によって動作し続けているため、データが消失することもない。すなわち、誤抜去による、データ消失が防止される。
【００４９】
なお、図３の例では、誤抜去の差異に警告音により、誤抜去であることを作業者に通知しているが、他の方法で通知することもできる。例えば、警告用のＬＥＤを用い、光によって誤抜去を通知することもできる。
【００５０】
［第３の実施の形態］
第３の実施の形態は、ブレードに大容量キャパシタを搭載することで、ブレードサーバ全体の設定消費電力（ブレードサーバの電源で供給可能な消費電力）を低くしたものである。すなわち、ブレードに大容量キャパシタを搭載することで、システムの消費電力が瞬間的に設定消費電力を超えても、その電源負荷変動に耐えることができる。
【００５１】
すなわち、ブレードの消費電力は、処理の内容により変動する。通常、システムの最大消費電力をもとにブレードサーバの電源設計が行われる。しかし、通常状態では、最大値を継続的に消費するわけではない。すなわち、一時的な最大消費電力のための電源容量を有する電源が利用され、無駄な投資が必要となる。そこで、第３の実施の形態では、ブレードに大容量キャパシタを搭載することにより、ブレードの電源設計を最大消費電力値より低い値に設定可能とする。これにより、過剰な電源設備をブレードサーバのシャーシに搭載する必要がなくなり、コストダウンが可能となる。
【００５２】
図４は、消費電力の遷移例を示す図である。図４では、横軸に時間、縦軸に消費電力を示している。図中、消費電力の時間遷移を実線で示し、最大消費電力を点線で示し、設定消費電力を破線で示している。
【００５３】
図４に示すように、ブレードの消費電力が設定消費電力を超える場合がある。その場合、大容量キャパシタから電源を供給することで、ブレードにおける消費電力を賄うことができる。その結果、ブレードサーバにおける電源の最大電力を、各ブレードに対して設定消費電力が供給できるだけの電力とすることができる。
【００５４】
なお、大容量キャパシタからの電源供給を長時間続けると、大容量キャパシタ内の電気が枯渇してしまう。そこで第３の実施の形態では、大容量キャパシタの蓄電量を計測し、その電気量が所定値以下になると、ＣＰＵの動作周波数を低減する。これにより、大容量キャパシタによる電源の供給時間の長期化が可能となる。
【００５５】
図５は、第３の実施の形態に係るブレードを示す図である。第３の実施の形態のブレード１３０は、コネクタ１３１を介してバックプレーン１０１からの電源がブレード１３０内に供給されている。その電源のラインには、大容量キャパシタ１３２が接続されている。大容量キャパシタ１３２は、バックプレーン１０１から消費電力よりも大きな電力が供給されている間は、余った電力により電気を蓄える。そして、大容量キャパシタ１３２は、バックプレーン１０１から供給される電力を消費電力が上回った場合、蓄えていた電気をブレード１３０内の回路に供給する。
【００５６】
また、大容量キャパシタ１３２には、キャパシタ蓄電量監視回路１３３が接続されている。キャパシタ蓄電量監視回路１３３は、大容量キャパシタ１３２に蓄えられている電気量を監視し、その電気量を示すキャパシタ蓄電量（Ｐｃｕｒ）をＣＰＵ１３４に対して出力する。
【００５７】
ＣＰＵ１３４には、動作周波数切替の閾値となる電気量下限値（ＰＬｔｈ）が設定された閾値データ１３４ａが設定されている。ＣＰＵ１３４は、キャパシタ蓄電量監視回路１３３から送られるキャパシタ蓄電量（Ｐｃｕｒ）と電気量下限値（ＰＬｔｈ）を比較する。そして、ＣＰＵ１３４は、キャパシタ蓄電量（Ｐｃｕｒ）が電気量下限値（ＰＬｔｈ）未満になると、ＣＰＵ１３４自身の動作周波数を、定常値よりも低い値に低減する。ここで定常値とは、ＣＰＵ１３４の安定動作が保証されている最も高い周波数である。その後、キャパシタ蓄電量（Ｐｃｕｒ）が電気量下限値（ＰＬｔｈ）以上に回復すると、ＣＰＵ１３４は、ＣＰＵ１３４自身の動作周波数を定常値に戻す。
【００５８】
このようなブレード１３０によれば、ブレード１３０での消費電力がバックプレーン１０１から供給される電力以下であれば、ブレード１３０は、バックプレーン１０１から供給される電力のみで動作する。その間、大容量キャパシタ１３２には、バックプレーン１０１から供給される電力により、電気が蓄えられる。
【００５９】
その後、ブレード１３０での消費電力が上昇し、バックプレーン１０１からの供給電力を超えると、大容量キャパシタ１３２に蓄えられていた電気がブレード１３０内の回路に供給される。
【００６０】
また、大容量キャパシタ１３２に蓄えられている電気量は、キャパシタ蓄電量監視回路１３３で監視され、検出されたキャパシタ蓄電量（Ｐｃｕｒ）がＣＰＵ１３４に渡される。ＣＰＵ１３４は、キャパシタ蓄電量（Ｐｃｕｒ）が電気量下限値（ＰＬｔｈ）以上の間は、定常周波数で動作するが、キャパシタ蓄電量（Ｐｃｕｒ）が電気量下限値（ＰＬｔｈ）未満になると、ＣＰＵ１３４の動作周波数が低減する。
【００６１】
図６は、ＣＰＵの動作周波数制御処理の手順を示すフローチャートである。以下、図６に示す処理をステップ番号に沿って説明する。
［ステップＳ１］ＣＰＵ１３４は、キャパシタ蓄電量監視回路１３３から送られるキャパシタ蓄電量（Ｐｃｕｒ）をチェックする。
【００６２】
［ステップＳ２］ＣＰＵ１３４は、キャパシタ蓄電量（Ｐｃｕｒ）が電気量下限値（ＰＬｔｈ）未満かどうかを判断する。キャパシタ蓄電量（Ｐｃｕｒ）が電気量下限値（ＰＬｔｈ）未満の場合、処理がステップＳ３に進められる。そうでない場合、処理がステップＳ１に進められ、キャパシタ蓄電量Ｐｃｕｒのチェックが繰り返される。
【００６３】
［ステップＳ３］ＣＰＵ１３４は、動作周波数を予め設定された低電力モードでの周波数まで低減する。
［ステップＳ４］ＣＰＵ１３４は、キャパシタ蓄電量監視回路１３３から送られるキャパシタ蓄電量（Ｐｃｕｒ）をチェックする。
【００６４】
［ステップＳ５］ＣＰＵ１３４は、キャパシタ蓄電量（Ｐｃｕｒ）が電気量下限値（ＰＬｔｈ）未満かどうかを判断する。キャパシタ蓄電量（Ｐｃｕｒ）が電気量下限値（ＰＬｔｈ）未満の場合、処理がステップＳ６に進められる。そうでない場合、処理がステップＳ４に進められ、キャパシタ蓄電量Ｐｃｕｒのチェックが繰り返される。
【００６５】
［ステップＳ６］ＣＰＵ１３４は、動作周波数を定常値に戻す。
［ステップＳ７］ＣＰＵ１３４は、シャットダウン処理が行われていなければ、処理をステップＳ１に進める。シャットダウン処理が行われた場合、周波数制御処理を終了する。
【００６６】
このようにして、大容量キャパシタ１３２に蓄えられた電気量に応じてＣＰＵ１３４の動作周波数を変更することができる。
以上のように、第３の実施の形態によれば、通常時には、大容量キャパシタ１３２に電力を保存し、電源消費ピーク時、設定消費電力を超えた電力は、大容量キャパシタ１３２の電力を使用することができる。このような処理は、補助電源として、バッテリではなく大容量キャパシタ１３２を用いたことで実現可能となっている。
【００６７】
すなわち、バッテリの場合、充電に時間がかかるため、一旦放電すると充電完了するまで、次の電源消費ピークに対応できない。一方、大容量キャパシタ１３２を用いることにより、バースト的な電源変動に対しても対応することができる。
【００６８】
また、第３の実施の形態では、設定消費電力を超えた処理が継続する場合のため、大容量キャパシタ１３２の残容量を監視し、残容量が少なくなると、ＣＰＵ１３４の動作周波数を下げる。ＣＰＵ１３４の動作周波数を下げることで消費電力を下げることができ、突然のシステムダウンを防止できる。
【００６９】
［第４の実施の形態］
第４の実施の形態は、抜去されたブレードで実行されている処理を、抜去後に無線通信を用いたノードマイグレーションにより、他のブレードに移行するものである。すなわち、第１〜第３の実施の形態に示したブレード１１０，１２０，１３０では、短時間での抜去に対しては、有効であるが、長時間にわたる抜去では、ユーザへのサービス提供が中断することになる。この問題を解決するために、第４の実施の形態では、ブレードに大容量キャパシタとＵＷＢ（超広帯域無線：Ultra Wide Band）等の無線ＬＡＮモジュールを搭載し、抜去された状態でのノードマイグレーションを可能とする。
【００７０】
図７は、第４の実施の形態に係るブレードサーバの例を示す図である。ブレードサーバ２００には、複数のユーザ用スロット２１１〜２２５とマイグレーションテンポラリスロット２２６とが設けられている。なお、図７示されていないが、複数のユーザ用スロット２１１〜２２５やマイグレーションテンポラリスロット２２６の反対側に、管理用スロットが設けられている。
【００７１】
ユーザ用スロット２１１〜２２５には、ユーザに対してサービスを提供するサーバブレードが実装される。マイグレーションテンポラリスロット２２６には、任意のサーバブレードの機能を、ノードマイグレーションによって移行させるための予備のサーバブレードが実装される。管理用スロットには、ブレードサーバ２００全体を管理するための管理ブレードが実装される。
【００７２】
図８は、第４の実施の形態に係るサーバブレードを示すブロック図である。なお、図８に示すサーバブレード２３０の構成要素のうち、コネクタ２３１、大容量キャパシタ２３２、抜去検出回路２３３、および電源切替回路２３４については、図１に示した第１の実施の形態の同名の構成要素と同じ機能を有している。そこで、第１の実施の形態と同じ機能の構成要素については説明を省略し、異なる機能を有している構成要素について説明する。
【００７３】
第４の実施の形態では、抜去検出回路２３３からの抜去検出信号が、ＣＰＵ２３５に割り込み信号として入力される。ＣＰＵ２３５は、割り込み信号が入力されると、タイマのカウントを開始する。そして、ＣＰＵ２３５は、タイマで示される経過時間が、一定時間を超えたとき、無線ＬＡＮモジュール２３６を介したノードマイグレーション処理を開始する。
【００７４】
ＣＰＵ２３５には無線ＬＡＮモジュール２３６が接続されている。無線ＬＡＮモジュール２３６には、アンテナ２３９が接続されている。無線ＬＡＮモジュール２３６は、アンテナ２３９を介して管理ブレードと無線通信することができる。
【００７５】
また、ＣＰＵ２３５には、ブレードＩＤ記憶部２３７が接続されている。ブレードＩＤ記憶部２３７には、ブレードサーバ２００内でサーバブレード２３０を一意に識別するための識別番号が設定されている。
【００７６】
さらに、ネットワークインタフェース（Ｉ／Ｆ）２３８が、ＣＰＵ２３５に接続されている。ネットワークインタフェース２３８は、コネクタ２３１を介してバックプレーン２０１に接続され、ブレードサーバ２００内の他のブレードと通信を行う。
【００７７】
図９は、管理ブレードを示すブロック図である。管理ブレード２４０は、コネクタ２４１によって、バックプレーン２０１の管理用スロットに設けられたコネクタ２０３に接続されている。コネクタ２４１には、ネットワークインタフェース（Ｉ／Ｆ）２４２がインサート信号検出回路２４３を介して接続されている。ネットワークインタフェース２４２は、バックプレーン２０１内のバスを介して他のブレードと通信する。
【００７８】
また、コネクタ２４１には、インサート信号検出回路２４３が接続されている。インサート信号検出回路２４３は、バックプレーン２０１に設けられたバスを介して、各スロットにブレードが実装されているか否かを検出する。そして、インサート信号検出回路２４３は、サーバブレードがスロットに挿入された場合、および抜去された場合、挿入または抜去を示す割り込み信号をＣＰＵ２４４に対して出力する。その際、インサート信号検出回路２４３は、挿入されたのか、抜去されたのかの情報と、挿入または抜去されたスロットの番号とをＣＰＵ２４４に通知する。
【００７９】
ＣＰＵ２４４は、インサート信号検出回路２４３から割り込み信号を受け取ると、ネットワークインタフェース２４２を介して、ブレードが実装されたスロットの番号を受け取ることで、脱着されたサーバブレードを認識する。そして、ＣＰＵ２４４は、実装されていたサーバブレードが抜去されたことを検出すると、再挿入待ちタイマを起動する。所定時間のうちにそのサーバブレードが再挿入されなかった場合、ＣＰＵ２４４は、そのサーバブレードのノードマイグレーションを実行する。ノードマイグレーションは、ＣＰＵ２４４に接続された無線ＬＡＮモジュール２４５を介した無線通信によって行われる。
【００８０】
無線ＬＡＮモジュール２４５は、アンテナ２４６が接続されており、アンテナ２４６を介して各サーバブレードと通信することができる。
次に、管理ブレード２４０のＣＰＵ２４４が有する処理機能を機能ブロック図を用いて説明する。
【００８１】
図１０は、管理ブレードのＣＰＵが有する処理機能を示すブロック図である。ＣＰＵ２４４は、ブレード状態管理部２４４ａ、タイマ２４４ｂ、ノードマイグレーション部２４４ｃ、およびブレード状態管理テーブル２４４ｄを有している。ブレード状態管理部２４４ａは、インサート信号検出回路２４３からの割り込み信号に応じて、サーバブレードの脱着を検出し、各サーバブレードの状態をブレード状態管理テーブル２４４ｄを用いて管理する。また、ブレード状態管理部２４４ａは、動作中のブレードサーバがバックプレーン２０１から抜去されたことを検出すると、タイマ２４４ｂに時間を計測させる。そして、所定時間以内に抜去されたサーバブレードが何れかのスロットに挿入されない場合、ブレード状態管理部２４４ａは、ノードマイグレーション部２４４ｃに対してノードマイグレーションを依頼する。
【００８２】
タイマ２４４ｂは、ブレード状態管理部２４４ａからの要求に応じて時間を計測する。
ノードマイグレーション部２４４ｃは、ブレード状態管理部２４４ａからの要求に応じて、抜去されたサーバブレードで実行されている機能を、ノードマイグレーションによってマイグレーションテンポラリスロット２２６に挿入されているサーバブレードに移行させる。
【００８３】
具体的には、ノードマイグレーション部２４４ｃは、無線ＬＡＮモジュール２４５を介して、抜去されたサーバブレード内のデータ（サーバブレード内のメモリデータ等）を取得する。そして、ノードマイグレーション部２４４ｃは、抜去されたサーバブレードから取得したデータを、ネットワークインタフェース２４２を介して、マイグレーションテンポラリスロット２２６に挿入されたサーバブレードに転送する。そして、ノードマイグレーション部２４４ｃは、データ転送完了後、マイグレーションテンポラリスロット２２６に挿入されたサーバブレードに対して起動指示を出力する。
【００８４】
ブレード状態管理テーブル２４４ｄは、サーバブレードの状態を管理するためのデータテーブルである。ブレード状態管理テーブル２４４ｄは、ＣＰＵ２４４が制御するメモリ（ＣＰＵ２４４の内蔵メモリまたは外部に接続されたメモリ）に格納されている。
【００８５】
ブレード状態管理テーブル２４４ｄには、スロット（slot）、状態（status）、およびブレードＩＤ（BladeID）の各欄が設けられている。各欄の横方向に並べられたデータ同士が互いに関連づけられ、スロット毎のブレード管理情報を構成している。
【００８６】
スロットの欄には、管理対象のスロットの識別番号が設定される。
状態の欄には、該当するスロットに挿入されたサーバブレードの状態が設定される。状態には、「Mount」、「Pool」、「PullOut」、「Temp」、「UnMount」がある。「Mount」は、そのスロットにサーバブレードが実装され、そのサーバブレードが運用中であることを示している。「Pool」は、予備のサーバブレードが実装されていることを示している。「PullOut」は、実装されていたサーバブレードが抜去されたことを示している。「Temp」は、そのスロットに実装されているサーバブレードは、一時的にサービス提供を行っていることを示している。「UnMount」は、そのスロットに実装されるべきサーバブレードが設定されていないことを示している。
【００８７】
次に、ブレードサーバ２００におけるサーバブレードの抜去時、および再挿入時の動作について説明する。
図１１は、運用中のブレードサーバを示す図である。図１１に示すように、管理ブレード２４０と他のサーバブレード２３０，・・・，２３０ｎとが管理ネットワーク２０９を介して接続されている。この例では、ブレードサーバ２００に１６個のスロットが設けられており、１番目〜１５番目のスロットがユーザ用スロットであり、１６番目のスロットがテンポラリ用スロットである。
【００８８】
サーバブレード２３０は、１番のスロットに挿入されており、ユーザに対するサービスを提供している。また、サーバブレード２３０ｎは、１６番目のスロットに挿入されており、テンポラリ用に用意された物である。
【００８９】
なお、サーバブレード２３０ｎ内の大容量キャパシタ２３２ｎ、抜去検出回路２３３ｎ、ＣＰＵ２３５ｎ、無線ＬＡＮインタフェース（Ｉ／Ｆ）２３６ｎ、ブレードＩＤ記憶部２３７ｎ、およびネットワークインタフェース（Ｉ／Ｆ）２３８ｎは、それぞれサーバブレード２３０内の同名の構成要素と同じ機能を有している。ただし、サーバブレード２３０のブレードＩＤ記憶部２３７には「ｘｘｘ０１」がブレードＩＤとして格納されており、サーバブレード２３０ｎのブレードＩＤ記憶部２３７ｎには「ｘｘｘ１６」がブレードＩＤとして格納されている。
【００９０】
管理ネットワーク２０９は、バックプレーン２０１内に設けられたシステム管理用のネットワークであり、ユーザに対する処理の提供に利用するネットワークとは個別に設けられている。この管理ネットワーク２０９経由で、管理ブレード２４０からサーバブレード２３０，・・・，２３０ｎの設定や、状態の監視が行われる。
【００９１】
ここで、システムからサーバブレードが抜去可能状態でない場合（シャットダウンされていない状態）に抜去されると、管理ブレード２４０は、そのサーバブレードが挿入されていたスロットの状態を「PullOut」に変更する。そして、規定時間以内（キャパシタで安全動作可能な範囲の時間内)に抜去されたブレードが別のスロットに挿入されると、管理ブレード２４０は、元のスロットのブレードステータスを「UnMount」とし、挿入されたスロットのブレードステータスを「Mount」状態とする。
【００９２】
一方、抜去されたまま規定時間を越えた場合、管理ブレード２４０は無線ＬＡＮを介してサーバブレードからのノードマイグレーションデータを受け付けて、テンポラリ用ブレードに処理を移動させる。そして、テンポラリ用として用意されたサーバブレードに処理が引き継がれる。
【００９３】
図１２は、サーバブレードが抜去されたときのブレードサーバを示す図である。図１２の例では、サーバブレード２３０が抜去されている。サーバブレード２３０が抜去されたことにより、ブレード状態管理テーブル２４４ｄの１番目のスロットの状態が「PullOut」に変更されている。
【００９４】
そして、サーバブレード２３０が抜去されたまま再挿入されずに所定時間が過ぎると、管理ブレード２４０の制御によって、サーバブレード２３０からサーバブレード２３０ｎへ、ノードマイグレーションが実行される。このとき、サーバブレード２３０が管理ネットワーク２０９に接続されていないため、サーバブレード２３０から管理ブレード２４０へは、無線ＬＡＮでデータが渡される。そして、管理ブレード２４０からサーバブレード２３０ｎへ、管理ネットワーク２０９を介してサーバブレード２３０内のデータが渡される。
【００９５】
これにより、サーバブレード２３０ｎ内にサーバブレード２３０と同じ処理の実行環境が構築され、サーバブレード２３０ｎがサーバブレード２３０の代わりにユーザに対するサービスを提供する。
【００９６】
その後、再度サーバブレード２３０がスロットに挿入されると、管理ブレード２４０は、管理ネットワーク２０９を介して、サーバブレード２３０のブレードＩＤを収集する。そして、管理ブレード２４０は、取得したブレードＩＤを、ブレード状態管理テーブル２４４ｄに保存されたブレードＩＤと比較する。ここで、ブレードＩＤが一致した場合、管理ブレード２４０は、テンポラリ用のサーバブレード２３０ｎで実行していた処理を、再挿入したサーバブレード２３０に対してノードマイグレーションによって移行し、テンポラリ用のサーバブレード２３０ｎを開放する。
【００９７】
図１３は、サーバブレードが再挿入されたときのブレードサーバを示す図である。図１３に示すように、サーバブレード２３０が再挿入されると、管理ブレード２４０の制御により、テンポラリのサーバブレード２３０ｎから再挿入されたサーバブレード２３０へ、管理ネットワーク２０９経由でノードマイグレーションが行われる。その結果、サーバブレード２３０によるサービスが再開される。
【００９８】
以下、管理ブレード２４０で行われる処理を詳細に説明する。管理ブレードが実行する処理には、システム立ち上げ時に実行する初期化処理、サーバブレード抜去時に実行する抜去検出時処理、およびサーバブレードが挿入された時に実行する挿入検出時処理がある。
【００９９】
まず、初期化処理について説明する。初期化処理は、ブレードサーバ２００起動時に、各スロットに挿入されたサーバブレードの状態をブレード状態管理テーブル２４４ｄに登録する処理である。
【０１００】
図１４は、初期化処理の手順を示すフローチャートである。以下、図１４に示す処理をステップ番号に沿って説明する。この処理は、ブレードサーバ２００に電源が投入され、システムが起動されたときに実行される。
【０１０１】
［ステップＳ１１］ＣＰＵ２４４におけるブレード状態管理部２４４ａは、システム起動時に、例えばスロット番号を指定して、少なくとも１つをテンポラリブレードとして指定する。どのスロットをテンポラリ用に設定するのかは、例えば、システム管理ポリシーに基づいて予め設定された設定情報を参照して判断する。ブレード状態管理部２４４ａは、その設定情報を参照して、テンポラリブレードの枚数や、そのスロット位置などの情報を認識することができる。
【０１０２】
［ステップＳ１２］ブレード状態管理部２４４ａは、インサート信号検出回路２４３から現在実装されているサーバブレードの情報を読み出す。
［ステップＳ１３］ブレード状態管理部２４４ａは、ブレードサーバ２００のスロットを、スロット番号が小さい順に１つずつ選択する。
【０１０３】
［ステップＳ１４］ブレード状態管理部２４４ａは、ステップＳ１３で選択したスロットにサーバブレードが実装されているか否かを判断する。実装されていれば、処理がステップＳ１５に進められる。実装されていなければ、処理がステップＳ１６に進められる。
【０１０４】
［ステップＳ１５］ブレード状態管理部２２４ａは、ネットワークインタフェース２４２を介して、ステップＳ１３で選択したスロットに実装されているサーバブレードのブレードＩＤを読み出す。
【０１０５】
［ステップＳ１６］ブレード状態管理部２４４ａは、ステップＳ１３〜Ｓ１５で調べたスロットの状態を、ブレード状態管理テーブル２４４ｄに設定する。具体的には、ブレード状態管理部２４４ａは、ステップＳ１３で選択したスロットにサーバブレードが実装されていれば、ステップＳ１５で読み出したブレードＩＤを、ブレード状態管理テーブル２４４ｄ内の対応するスロット番号のレコードに登録する。登録したサーバブレードがユーザ用のブレード（テンポラリブレード以外）であればブレード状態管理部２４４ａは、該当するスロットの状態を「Mount」に設定する。また、登録したサーバブレードがテンポラリブレードであればブレード状態管理部２４４ａは、該当するスロットの状態を「Pool」に設定する。
【０１０６】
また、ブレード状態管理部２４４ａは、ステップＳ１４でサーバブレードが実装されていないと判断された場合、該当するスロットの状態を「UnMount」に設定する。
［ステップＳ１７］ブレード状態管理部２４４ａは、ステップＳ１３で選択したスロットが最終スロットか否かを判断する。最終スロットでなければ、処理がステップＳ１３に進められる。最終スロットであれば、初期化処理が終了する。
【０１０７】
このようにして、ブレード状態管理部２４４ａは、システム管理ポリシーに基づく設定情報を読み出し、そこから、テンポラリブレードの枚数や、スロット位置などの情報を認識することができる。また、ブレード状態管理部２４４ａは、インサート信号検出回路２４３からサーバブレードのインサート情報を読み出し、ブレード状態管理テーブル２４４ｄに全てのスロットの状態を示すデータベースを構築できる。
【０１０８】
ブレード状態管理テーブル２４４ｄに各スロットの状態と、挿入されているサーバブレードのブレードＩＤが登録された状態で、ブレードサーバ２００による運用が開始される。そして、運用を継続しながら保守作業が行われる。保守作業中に、任意のサーバブレードが抜き取られると、ＣＰＵ２４４において抜去検出時処理が行われる。
【０１０９】
図１５は、抜去検出時処理の手順を示すフローチャートである。以下、図１５に示す処理をステップ番号に沿って説明する。この処理は、ブレードサーバ２００からサーバブレードの１つが抜去され、インサート信号検出回路２４３から抜去を示す割り込み信号が出力された際に開始される。
【０１１０】
［ステップＳ２１］ブレード状態管理部２４４ａは、インサート信号検出回路２４３からの割り込み信号を検出する。
［ステップＳ２２］ブレード状態管理部２４４ａは、再挿入までの時間を計測するためタイマ２４４ｂを起動し、時間の計測を開始させる。
【０１１１】
［ステップＳ２３］ブレード状態管理部２４４ａは、タイマ２４４ｂでの計測値が所定の再挿入タイムアウト時間に達したか（タイムアウトが発生したか）否かを判断する。タイムアウトが発生した場合、処理がステップＳ２５に進められる。タイムアウトが発生していない場合、処理がステップＳ２４に進められる。
【０１１２】
［ステップＳ２４］ブレード状態管理部２４４ａは、サーバブレードの再挿入によってタイマ２４４ｂが停止されたか否かを判断する。タイマ２４４ｂが停止された場合、処理が終了する。停止されていない場合、処理がステップＳ２３に進められる。
【０１１３】
［ステップＳ２５］ブレード状態管理部２４４ａは、抜去されたサーバブレードのブレードＩＤを指定して、ノードマイグレーション部２４４ｃに対してノードマイグレーションを指示する。すると、ノードマイグレーション部２４４ｃは、抜去されたサーバブレードをブレードＩＤによって特定し、無線ＬＡＮモジュール２４５経由でそのサーバブレードとの間のリンクを確立する。
【０１１４】
［ステップＳ２６］ノードマイグレーション部２４４ｃは、抜去されたサーバブレードの機能を、テンポラリ用に設けられたサーバブレードに移行させるためのノードマイグレーション処理を実行する。ノードマイグレーション部２４４ｃは、ノードマイグレーションが完了すると、その旨をブレード状態管理部２４４ａに通知する。
【０１１５】
［ステップＳ２７］ブレード状態管理部２４４ａは、ブレード状態管理テーブル２４４ｄにアクセスし、スロットの状態を更新する。具体的には、ブレード状態管理部２４４ａは、サーバブレードが抜去されたスロットの状態を「Mount」から「PullOut」に更新する。また、ブレード状態管理部２４４ａは、ノードマイグレーションによって処理が移行された先のスロットの状態を「Pool」から「Temp」に更新する。
【０１１６】
このように、動作中（シャットダウン状態でない）のサーバブレードが抜去された場合、管理ブレードのインサート信号検出回路２４３から、管理ブレード２４０のＣＰＵ２４４に対して割り込みが出力される。これにより、ブレード状態管理部２４４ａは、動作中のサーバブレードが抜去されたことが検出され、再挿入待ちタイマが起動される。そして、タイマがタイムアウトする前に、ブレードが再挿入された場合は、正常動作が継続するので、抜去検出時処理は終了する。
【０１１７】
一方、タイマがタイムアウトした場合、サーバブレードの大容量キャパシタで処理を継続できない可能性があるので、ブレード状態管理部２４４ａにより、抜かれたサーバブレードで動作している処理が、テンポラリ用ブレードに対してノードマイグレーションされる。
【０１１８】
図１６は、再挿入検出時処理の手順を示すフローチャートである。以下、図１６に示す処理をステップ番号に沿って説明する。この処理は、ブレードサーバ２００にサーバブレードが再挿入され、インサート信号検出回路２４３から再挿入を示す割り込み信号が出力された際に開始される。
【０１１９】
［ステップＳ３１］ブレード状態管理部２４４ａは、インサート信号検出回路２４３からの割り込み信号を検出する。
［ステップＳ３２］ブレード状態管理部２４４ａは、再挿入されたサーバブレードのブレードＩＤを読み出す。
【０１２０】
［ステップＳ３３］ブレード状態管理部２４４ａは、ブレード状態管理テーブル２４４ｄを検索し、ステップＳ３２で読み出したブレードＩＤが設定されたスロットを検索する。
【０１２１】
［ステップＳ３４］ブレード状態管理部２４４ａは、ステップＳ３３で検出したスロットの状態が「PullOut」か否かを判断する。状態が「PullOut」であれば、抜去されたサーバブレードが再挿入されたものと判断され、処理がステップＳ３５に進められる。状態が「PullOut」でなければ、新規にサーバブレードが挿入されたものと判断され、処理がステップＳ３７に進められる。
【０１２２】
［ステップＳ３５］ブレード状態管理部２４４ａは、再挿入されたサーバブレードのブレードＩＤを指定して、ノードマイグレーション部２４４ｃに対してノードマイグレーションを指示する。すると、ノードマイグレーション部２４４ｃは、テンポラリ用に設けられたサーバブレードで実行している機能を再挿入されたサーバブレードに移行させるためのノードマイグレーション処理を実行する。ノードマイグレーション部２４４ｃは、ノードマイグレーションが完了すると、その旨をブレード状態管理部２４４ａに通知する。
【０１２３】
［ステップＳ３６］ブレード状態管理部２４４ａは、ブレード状態管理テーブル２４４ｄにアクセスし、状態を更新する。具体的には、ブレード状態管理部２４４ａは、再挿入されたサーバブレードが、元のスロットに戻された場合、挿入されたスロットの状態を「PullOut」から「Mount」に更新する。ブレード状態管理部２４４ａは、再挿入されたサーバブレードが、抜去されたスロットとは異なるスロットに挿入された場合、挿入されたスロットの状態を「UnMount」から「Mount」に更新し、元のスロットの状態を「PullOut」から「UnMount」に更新する。
【０１２４】
また、ブレード状態管理部２４４ａは、テンポラリ用のサーバブレードが実装されたスロットの状態を「Temp」から「Pool」に更新する。その後、処理が終了する。
［ステップＳ３７］ブレード状態管理部２４４ａは、ブレード状態管理テーブル２４４ｄにアクセスし、状態を更新する。具体的には、ブレード状態管理部２４４ａは、新規にサーバブレードが挿入されたと判断すると、そのサーバブレードが挿入されたスロットの状態を「Mount」に変更し、そのスロットに挿入されたサーバブレードのブレードＩＤを登録する。その後、処理が終了する。
【０１２５】
このように、動作中に抜去されたサーバブレードが再度挿入された場合（挿入されるスロットは、同じスロットでも、異なるスロットでもよい）、インサート信号検出回路から、管理ブレード２４０のＣＰＵ２４４に対して割り込みがある。これにより、ブレード状態管理部２４４ａにおいて、「PullOut」状態で挿入されたサーバブレードと同一のブレードＩＤが存在するかが検索される。検索によって同一のブレードが見つかった場合、ブレード状態管理部２４４ａにより、動作中に抜去されたサーバブレードが再挿入されたものと判断される。再挿入と判断されることで、ノードマイグレーション部２４４ｃにより、テンポラリ用ブレードで動作している処理が、再挿入されたサーバブレードにノードマイグレーション処理によって移行される。
【０１２６】
以上説明したように、システム単位でブレード機能を移動するためのテンポラリ用ブレードを用意しておくことで、抜去されたサーバブレードの機能をテンポラリ用ブレードにノードマイグレーションし、ユーザに対するサービスを継続させることができる。すなわち、抜去されて一定時間を越えた場合、無線ＬＡＮを用いてテンポラリ用ブレードにノードマイグレーションが実行される。この時、転送元のブレードＩＤ情報がブレード情報管理テーブルに保存される。ブレードを再度挿入した場合、挿入したブレードのブレードＩＤとデータベースのブレードＩＤ情報を比較して一致した場合、テンポラリ用ブレードで実行していた処理を、再度挿入したブレードにノードマイグレーションが行われる。これらの動作により、保守者がサーバブレードを抜き挿しても、継続してサービスを提供することが可能となる。
【０１２７】
なお、図１０に示すブレード状態管理テーブル２４４ｄでは、図７に示した１つのシャーシ内のブレードを管理しているが、複数のシャーシそれぞれのブレードを１つのブレード状態管理テーブル２４４ｄで管理することもできる。その場合、各シャーシに実装された管理ブレードを管理ネットワークで接続し、所定の１つの管理ブレードにブレードの管理情報を集めればよい。複数のシャーシのブレードを一元管理することで、抜去されたサーバブレードが、抜去元と異なるシャーシに挿入された場合でも、再挿入されたサーバブレードへノードマイグレーションによって処理を移行させることができる。
【０１２８】
なお、上記の管理ブレードが行う処理機能は、ソフトウェアによって提供することができる。その場合、管理ブレードが有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記録装置には、ハードディスク装置（ＨＤＤ）、フレキシブルディスク（ＦＤ）、磁気テープなどがある。光ディスクには、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ（Random Access Memory）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）などがある。光磁気記録媒体には、ＭＯ（Magneto-Optical disk）などがある。
【０１２９】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１３０】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。
【０１３１】
なお、本発明は、上述の実施の形態にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変更を加えることができる。
以上説明した実施の形態の主な技術的特徴は、以下の付記の通りである。
【０１３２】
（付記１）  複数のスロットが設けられたバックプレーンの前記スロットに接続して使用されるブレード型コンピュータにおいて、
前記バックプレーンを介して供給される電源ラインに接続されたキャパシタと、
前記電源ラインと前記キャパシタとの少なくとも一方から電源供給を受けて動作するＣＰＵと、
を有することを特徴とするブレード型コンピュータ。
【０１３３】
（付記２）  前記バックプレーンから抜き取られたことを検出し、抜去検出信号を出力する抜去検出回路と、
前記抜去検出回路から前記抜去検出信号が出力されると前記ＣＰＵの動作周波数を低下させる動作周波数制御回路と、
をさらに有することを特徴とする付記１記載のブレード型コンピュータ。
【０１３４】
（付記３）  前記キャパシタに蓄えられている電気量を監視し、前記電気量が所定の閾値未満になるとサスペンド信号を出力するキャパシタ蓄電量監視回路をさらに有し、
前記ＣＰＵは、前記キャパシタ蓄電量監視回路から前記サスペンド信号が出力されると、メモリ内のデータを不揮発性の記録媒体に待避させるサスペンド処理を実行することを特徴とする付記１記載のブレード型コンピュータ。
【０１３５】
（付記４）  前記バックプレーンから抜き取られたことを検出し、抜去検出信号を出力する抜去検出回路と、
前記抜去検出回路から前記抜去検出信号が出力されると、前記ＣＰＵへの電源供給元を、前記電源ラインから前記キャパシタに切り替える電源切替回路と、
をさらに有することを特徴とする付記１記載のブレード型コンピュータ。
【０１３６】
（付記５）  前記バックプレーンから抜き取られたことを検出し、抜去検出信号を出力する抜去検出回路をさらに有し、
前記ＣＰＵは、前記抜去検出回路から前記抜去検出信号が出力された場合、オペレーティングシステムが動作中か否かを判断し、前記オペレーティングシステムが動作中であれば警告音をスピーカから出力させることを特徴とする付記１記載のブレード型コンピュータ。
【０１３７】
（付記６）  前記ＣＰＵは、消費電力が前記電源ラインから供給される電力を超えたとき、前記電源ラインと前記キャパシタとから電源供給を受けることを特徴とする付記１記載のブレード型コンピュータ。
【０１３８】
（付記７）  前記キャパシタに蓄えられている電気量を監視し、前記電気量を前記ＣＰＵに通知するキャパシタ蓄電量監視回路をさらに有し、
前記ＣＰＵは、前記キャパシタ蓄電量監視回路から通知された前記電気量が所定の値以下になった場合、動作周波数を低下させることを特徴とする付記１記載のブレード型コンピュータ。
【０１３９】
（付記８）  無線でデータ通信を行う無線通信回路をさらに有し、
前記ＣＰＵは、前記無線通信回路を介した無線通信により接続されたブレード管理装置からの要求に従い、無線通信によるノードマイグレーション処理を実行することを特徴とする付記１記載のブレード型コンピュータ。
【０１４０】
（付記９）  複数のスロットが設けられたバックプレーンの前記スロットに接続して使用されるブレード型コンピュータを管理するためのブレード管理装置において、
無線によって前記ブレード型コンピュータと通信を行う無線通信回路と、
前記バックプレーンの前記スロットから前記ブレード型コンピュータが抜き取られたことを検出し、割り込み信号を出力するインサート信号検出回路と、
前記インサート信号検出回路から前記割り込み信号が出力されると時間計測を開始し、前記ブレード型コンピュータが再挿入される前に、計測された時間が所定の再挿入タイムアウト時間を超えると、前記無線通信回路を介して前記ブレード型コンピュータと無線通信を行い、前記ブレード型コンピュータで実行されている処理を、前記バックプレーンに接続されたテンポラリ用ブレード型コンピュータに移行するノードマイグレーション処理を実行するＣＰＵと、
を有することを特徴とするブレード管理装置。
【０１４１】
（付記１０）  前記ＣＰＵは、抜き取られた前記ブレード型コンピュータが前記バックプレーンの何れかのスロットに再挿入されると、前記テンポラリ用ブレード型コンピュータで実行されている処理を再挿入された前記ブレード型コンピュータへ移行するノードマイグレーション処理を実行することを特徴とする付記９記載のブレード管理装置。
【０１４２】
（付記１１）  複数のスロットが設けられたバックプレーンの前記スロットに接続して使用されるブレード型コンピュータを管理するためのブレード管理プログラムにおいて、
コンピュータを、
前記バックプレーンの前記スロットから前記ブレード型コンピュータが抜き取られたことを検出すると、時間計測を開始するタイマ、
前記ブレード型コンピュータが再挿入される前に、前記タイマで計測された時間が所定の再挿入タイムアウト時間を超えたか否かを判断するブレード状態管理手段、
前記ブレード状態管理手段において前記タイマの値が前記再挿入タイムアウト時間を超えたと判断された場合、前記ブレード型コンピュータと無線通信を行い、前記ブレード型コンピュータで実行されている処理を、前記バックプレーンに接続されたテンポラリ用ブレード型コンピュータに移行するノードマイグレーション処理を実行するノードマイグレーション手段、
として機能させることを特徴とするブレード管理プログラム。
【図面の簡単な説明】
【０１４３】
【図１】第１の実施の形態のブレードを示すブロック図である。
【図２】抜去検出回路の内部構造を示す図である。
【図３】第２の実施の形態に係るブレードを示すブロック図である。
【図４】消費電力の遷移例を示す図である。
【図５】第３の実施の形態に係るブレードを示す図である。
【図６】ＣＰＵの動作周波数制御処理の手順を示すフローチャートである。
【図７】第４の実施の形態に係るブレードサーバの例を示す図である。
【図８】第４の実施の形態に係るサーバブレードを示すブロック図である。
【図９】管理ブレードを示すブロック図である。
【図１０】管理ブレードのＣＰＵが有する処理機能を示すブロック図である。
【図１１】運用中のブレードサーバを示す図である。
【図１２】サーバブレードが抜去されたときのブレードサーバを示す図である。
【図１３】サーバブレードが再挿入されたときのブレードサーバを示す図である。
【図１４】初期化処理の手順を示すフローチャートである。
【図１５】抜去検出時処理の手順を示すフローチャートである。
【図１６】再挿入検出時処理の手順を示すフローチャートである。
【符号の説明】
【０１４４】
１１０  ブレード
１１１  コネクタ
１１２  大容量キャパシタ
１１３  キャパシタ蓄電量監視回路
１１４  抜去検出回路
１１５  電源切替回路
１１６  ＣＰＵ動作周波数制御回路
１１７  ＣＰＵ
【図１】
2006260327.tif 000003
【図２】
2006260327.tif 000004
【図３】
2006260327.tif 000005
【図４】
2006260327.tif 000006
【図５】
2006260327.tif 000007
【図６】
2006260327.tif 000008
【図７】
2006260327.tif 000009
【図８】
2006260327.tif 000010
【図９】
2006260327.tif 000011
【図１０】
2006260327.tif 000012
【図１１】
2006260327.tif 000013
【図１２】
2006260327.tif 000014
【図１３】
2006260327.tif 000015
【図１４】
2006260327.tif 000016
【図１５】
2006260327.tif 000017
【図１６】
2006260327.tif 000018