(57)【特許請求の範囲】
【請求項１】
ＣＰＵとメモリとを論理分割して仮想計算機に割り当てる仮想化機構を備えた計算機であって、
前記仮想化機構は、
前記仮想計算機と前記仮想計算機の起動可否を制御する起動抑止の設定とを対応付けて記憶する仮想計算機管理情報と、
前記仮想計算機管理情報の前記起動抑止の設定をする仮想計算機管理部と、
前記仮想計算機の起動要求を受付けた際、前記仮想計算機管理情報に基づいて前記起動を要求された仮想計算機に対応づけられた前記起動抑止の設定を参照し、起動抑止されているか否かを判定する第１の判定を行い、前記起動抑止が有効と設定されている場合、前記起動を要求された仮想計算機の起動を抑止する仮想計算機起動部と、
を有し、
前記仮想化機構は、前記仮想計算機に割り付け可能な論理Ｉ／Ｏアダプタ装置と識別子とを対応付けて記憶する装置識別管理情報を有し、
前記仮想計算機起動部は、前記仮想計算機の起動要求を受付けた際、前記装置識別管理情報に基づいて前記仮想計算機に割り当てた論理Ｉ／Ｏアダプタ装置に対応する識別子を調べ、前記起動を要求された仮想計算機に割り当てた論理Ｉ／Ｏアダプタ装置の有する識別子が無効であるか否かを判定する第２の判定を行い、前記識別子が無効な識別子であると登録されているとき、前記仮想計算機の起動を抑止することを特徴とする計算機。
【請求項２】
請求項１記載の計算機において、
前記仮想計算機起動部は、前記第１の判定で前記起動抑止が有効でない場合、前記起動を要求された仮想計算機を起動することを特徴とする計算機。
【請求項３】
請求項１または２記載の計算機において、
前記仮想化機構は、前記第１の判定で前記起動抑止が有効と設定されている場合、エラー情報を出力することを特徴とする計算機。
【請求項４】
請求項１乃至３のいずれか１項に記載の計算機において、
前記仮想計算機管理情報は、第一の仮想計算機に対応づけられた起動抑止は有効と設定され、第二の仮想計算機に対応づけられた起動抑止は有効でないと設定されることを特徴とする計算機。
【請求項５】
請求項１記載の計算機において、
前記識別子として、前記論理Ｉ／Ｏアダプタ装置に対応付けて登録されたワールドワイドネームを用いることを特徴とする計算機。
【請求項６】
請求項１または５記載の計算機において、
前記第１の判定により、前記起動を要求された仮想計算機が起動を抑止されている場合、前記仮想計算機を起動せず、前記起動を要求された仮想計算機が起動を抑止されていない場合、前記第２の判定を行い、
前記第２の判定により、前記起動を要求された仮想計算機に割り当てた論理Ｉ／Ｏアダプタ装置の有する識別子が無効である場合、前記仮想計算機を起動せず、前記起動を要求された仮想計算機に割り当てた論理Ｉ／Ｏアダプタ装置の有する識別子が無効でない場合、前記仮想計算機を起動することを特徴とする計算機。
【請求項７】
ＣＰＵとメモリとを論理分割して仮想計算機に割り当てる仮想化機構であって、
前記仮想計算機と前記仮想計算機の起動可否を制御する起動抑止の設定とを対応付けて記憶する仮想計算機管理情報と、
前記仮想計算機管理情報の前記起動抑止の設定をする仮想計算機管理部と、
前記仮想計算機の起動要求を受付けた際、前記仮想計算機管理情報に基づいて前記起動を要求された仮想計算機に対応づけられた前記起動抑止の設定を参照し、起動抑止されているか否かを判定する第１の判定を行い、前記起動抑止が有効と設定されている場合、前記起動を要求された仮想計算機の起動を抑止する仮想計算機起動部と、
を有し、
前記仮想計算機に割り付け可能な論理Ｉ／Ｏアダプタ装置と識別子とを対応付けて記憶する装置識別管理情報を有し、
前記仮想計算機起動部は、仮想計算機の起動要求を受付けた際、前記装置識別管理情報に基づいて前記仮想計算機に割り当てた論理Ｉ／Ｏアダプタ装置に対応する識別子を調べ、前記起動を要求された仮想計算機に割り当てた論理Ｉ／Ｏアダプタ装置の有する識別子が無効であるか否かを判定する第２の判定を行い、前記識別子が無効な識別子であると登録されているとき、前記仮想計算機の起動を抑止することを特徴とする仮想化機構。
【請求項８】
請求項７記載の仮想化機構において、
前記仮想計算機起動部は、前記第１の判定で前記起動抑止が有効でない場合、前記起動を要求された仮想計算機を起動することを特徴とする仮想化機構。
【請求項９】
請求項７または８記載の仮想化機構において、
前記仮想計算機起動部は、前記第１の判定で前記起動抑止が有効と設定されている場合、エラー情報を出力することを特徴とする仮想化機構。
【請求項１０】
請求項７乃至９のいずれか１項に記載の仮想化機構において、
前記仮想計算機管理情報は、第一の仮想計算機に対応づけられた起動抑止は有効と設定され、第二の仮想計算機に対応づけられた起動抑止は有効でないと設定されることを特徴とする仮想化機構。
【請求項１１】
請求項７記載の仮想化機構において、
前記識別子として、前記論理Ｉ／Ｏアダプタ装置に対応付けて登録されたワールドワイドネームを用いることを特徴とする仮想化機構。
【請求項１２】
請求項７または１１記載の仮想化機構において、
前記第１の判定により、前記起動を要求された仮想計算機が起動を抑止されている場合、前記仮想計算機を起動せず、前記起動を要求された仮想計算機が起動を抑止されていない場合、前記第２の判定を行い、
前記第２の判定により、前記起動を要求された仮想計算機に割り当てた論理Ｉ／Ｏアダプタ装置の有する識別子が無効である場合、前記仮想計算機を起動せず、前記起動を要求された仮想計算機に割り当てた論理Ｉ／Ｏアダプタ装置の有する識別子が無効でない場合、前記仮想計算機を起動することを特徴とする仮想化機構。
【請求項１３】
ＣＰＵとメモリとを論理分割して仮想計算機に割り当てる仮想化機構を備えた計算機における仮想計算機の起動管理方法であって、
前記仮想化機構は、前記仮想計算機と前記仮想計算機の起動可否を制御する起動抑止の設定とを対応付けて記憶する仮想計算機管理情報を有し、
前記仮想化機構の仮想計算機管理部により、前記仮想計算機管理情報の前記起動抑止の設定をし、
前記仮想化機構の仮想計算機起動部により、前記仮想計算機の起動要求を受付けた際、前記仮想計算機管理情報に基づいて前記起動を要求された仮想計算機に対応づけられた前記起動抑止の設定を参照し、起動抑止されているか否かを判定する第１の判定を行い、前記起動抑止が有効と設定されている場合、前記起動を要求された仮想計算機の起動を抑止し、
前記仮想化機構は、前記仮想計算機に割り付け可能な論理Ｉ／Ｏアダプタ装置と識別子とを対応付けて記憶する装置識別管理情報を有し、
前記仮想化機構の仮想計算機起動部により、仮想計算機の起動要求を受付けた際、前記装置識別管理情報に基づいて前記仮想計算機に割り当てた論理Ｉ／Ｏアダプタ装置に対応する識別子を調べ、前記起動を要求された仮想計算機に割り当てた論理Ｉ／Ｏアダプタ装置の有する識別子が無効であるか否かを判定する第２の判定を行い、前記識別子が無効な識別子であると登録されているとき、前記仮想計算機の起動を抑止することを特徴とする仮想計算機の起動管理方法。
【請求項１４】
請求項１３記載の仮想計算機の起動管理方法において、
前記仮想計算機起動部により、前記第１の判定で前記起動抑止が有効でない場合、前記起動を要求された仮想計算機を起動することを特徴とする仮想計算機の起動管理方法。
【請求項１５】
請求項１３または１４記載の仮想計算機の起動管理方法において、
前記仮想化機構により、前記第１の判定で前記起動抑止が有効と設定されている場合、エラー情報を出力することを特徴とする仮想計算機の起動管理方法。
【請求項１６】
請求項１３乃至１５のいずれか１項に記載の仮想計算機の起動管理方法において、
前記仮想計算機管理情報は、第一の仮想計算機に対応づけられた起動抑止は有効と設定され、第二の仮想計算機に対応づけられた起動抑止は有効でないと設定されることを特徴とする仮想計算機の起動管理方法。
【請求項１７】
請求項１３記載の仮想計算機の起動管理方法において、
前記識別子として、前記論理Ｉ／Ｏアダプタ装置に対応付けて登録されたワールドワイドネームを用いることを特徴とする仮想計算機の起動管理方法。
【請求項１８】
請求項１３または１７記載の仮想計算機の起動管理方法において、
前記計算機は、前記第１の判定で、前記起動を要求された仮想計算機が起動を抑止されていると判定すると前記仮想計算機を起動せず、前記起動を要求された仮想計算機が起動を抑止されていないと判定すると前記第２の判定を行い、前記第２の判定により、前記起動を要求された仮想計算機に割り当てた論理Ｉ／Ｏアダプタ装置の有する識別子が無効である場合、前記仮想計算機を起動せず、前記起動を要求された仮想計算機に割り当てた論理Ｉ／Ｏアダプタ装置の有する識別子が無効でない場合、前記仮想計算機を起動することを特徴とする仮想計算機の起動管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機システムおよび仮想計算機システムの計算機起動管理方法に関し、特に、計算機の起動を抑止する技術に関する。
【背景技術】
【０００２】
１台の計算機上に複数業務を集約する仮想化技術では、プロセッサやメモリ、入出力装置などのハードウェアリソースの利用効率を上げるとともに、処理量に応じてリソース割当を変更することが可能である。
【０００３】
一方、複数の計算機が同一ストレージボリュームからＯＳを計算機に読み込み、起動するように構成することで、業務を実行する計算機を変更することが可能である。複数の計算機で共有可能なストレージ装置の構成はストレージネットワーク（ＳＡＮ）と呼び、ストレージ装置と計算機はファイバチャネルスイッチやストレージスイッチを介して接続する。
【０００４】
共有可能なストレージ装置では、接続された全ての計算機からストレージボリュームを参照あるいは更新することができるため、セキュリティにおける課題があった。この課題に対し、ストレージ装置は、計算機が有するファイバチャネル（ＦＣ）のＩ／Ｏアダプタであるホストバスアダプタ（ＨＢＡ）内に格納されているユニークな装置識別情報であるワールドワイドネーム（ＷＷＮ）を用いて、ある特定の計算機とストレージ装置内のストレージボリュームとの対応付けを行っている。
【０００５】
この対応付けの機能をホストグループと呼び、ホストグループを用いることで、ストレージボリュームへのアクセスを、そのストレージボリュームに登録されたＷＷＮを登録しているＨＢＡを有する計算機からのみに限定する。
【０００６】
業務を実行する計算機を複数用意するときには、ホストグループに業務を実行する計算機のＷＷＮを、計算機を切り替えるたびに登録し直すか、あらかじめホストグループに複数計算機のＷＷＮを登録しておく。ホストグループへ登録し直す場合には、運用に手間がかかる。
【０００７】
また、ホストグループに複数計算機のＷＷＮを登録しておく場合には、複数計算機から同一ストレージボリュームにアクセス可能なため、セキュリティ対策にはならない。
【０００８】
そこで、特開２００７−１６４３０５号公報（特許文献１）には、ホストグループの設定変更を不要にして運用を簡易にする管理サーバが開示されている。これは、業務を実行する計算機が変更になったときには、ＷＷＮを変更先の計算機に引き継ぎ、あらかじめ複数の計算機に割り付け可能なＷＷＮとストレージエリア識別情報を対応付けて管理サーバに記憶しておき、管理サーバから業務を実行する計算機にＷＷＮとストレージエリア識別情報を送り、業務を実行する計算機はＷＷＮを設定し、ストレージエリア識別情報が示すエリアからブートするものである。
【０００９】
また、このような計算機が仮想計算機の場合には、仮想化機構が仮想Ｉ／Ｏアダプタを定義し、そこにユニークな仮想装置識別情報を格納する。米国特許出願公開第２００６／０１９５６１７号明細書（特許文献２）には、計算機のＩ／Ｏアダプタ内に複数の装置識別情報を登録できる技術を用いて、仮想計算機にユニークな仮想装置識別情報をＩ／Ｏアダプタに設定するシステムが開示されている。これにより、ストレージ装置のホストグループに登録するＷＷＮと仮想計算機の仮想Ｉ／ＯアダプタのＷＷＮを一致させることができるため、ストレージボリュームにアクセスする計算機を特定の仮想計算機に限定することができる。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２００７−１６４３０５号公報
【特許文献２】米国特許出願公開第２００６／０１９５６１７号明細書
【発明の概要】
【発明が解決しようとする課題】
【００１１】
従来、業務を実行する計算機を、仮想計算機から計算機へ、あるいは異なる計算機上の仮想計算機に切り替えるとき、Ｉ／Ｏアダプタに設定する装置識別情報を切り替え先の計算機に引き継ぐことで、ホストグループの登録変更や多重登録を回避することができるようになっていた。
【００１２】
ここで、例えば、管理サーバが使用できなくなった、あるいは管理サーバ以外からの操作介入があった、あるいは元々重複する装置識別情報を設定しておく運用があったことにより、複数の計算機が同じ装置識別情報を持つ可能性がある。
【００１３】
このように、同じ装置識別情報を持つ複数の計算機が起動されると、ストレージ装置のアクセス制御機構が有効に働かず、複数の計算機から同一ストレージボリュームをアクセスできてしまうという課題がある。また、Ｉ／Ｏアダプタがネットワークインタフェースのとき、ＭＡＣアドレスなどのネットワーク装置識別情報が同一な計算機が複数ある場合には、通信エラーが発生するという課題がある。
【００１４】
そこで、本発明の目的は、業務を実行する計算機を切り替えるために装置識別情報を変更可能な仮想計算機または計算機に、ユーザが意図しないタイミングで起動がかかってしまったときでも、計算機が起動しないように制御することができる計算機起動管理方法を提供することにある。
【００１５】
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１６】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。
【００１７】
すなわち、代表的なものの概要は、仮想計算機の起動要求を受付けた際、前記起動を要求された仮想計算機が起動を抑止されているか否かを判定する第１の判定、および前記起動を要求された仮想計算機に割り当てた論理Ｉ／Ｏアダプタ装置の有する識別子が無効であるか否かを判定する第２の判定のうち、少なくとも何れか一方の判定を行い、前記起動を要求された仮想計算機を起動する際、前記行った判定に基づき、前記仮想計算機の起動を抑止することを特徴とする仮想化機構を備えたものである。
【発明の効果】
【００１８】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。
【００１９】
すなわち、代表的なものによって得られる効果は、ユーザが意図しないタイミングで仮想計算機または計算機に起動がかかってしまったときでも、計算機が起動しないように制御することができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の実施の形態１に係る計算機システムの構成を示す構成図である。
【図２】本発明の実施の形態１に係る計算機システムの計算機の詳細な構成を示す構成図である。
【図３】本発明の実施の形態１に係る計算機システムの起動管理部の動作を示すフローチャートである。
【図４】本発明の実施の形態２に係る仮想計算機システムの計算機の構成を示す構成図である。
【図５】本発明の実施の形態２に係る仮想計算機システムで使用されるコマンドの型式を示す図である。
【図６】本発明の実施の形態２に係る仮想計算機システムで使用されるＷＷＮ管理テーブルの詳細を示す図である。
【図７】本発明の実施の形態２に係る仮想計算機システムで使用される装置管理テーブルの詳細を示す図である。
【図８】本発明の実施の形態２に係る仮想計算機システムで使用されるＬＰＡＲ管理テーブルの詳細を示す図である。
【図９】本発明の実施の形態２に係る仮想計算機システムの計算機のＷＷＮ管理部の処理を示すフローチャートである。
【図１０】本発明の実施の形態２に係る仮想計算機システムの計算機のＬＰＡＲ管理部の処理を示すフローチャートである。
【図１１】本発明の実施の形態２に係る仮想計算機システムの計算機のＭＡＣ要素変更処理の詳細を示すフローチャートである。
【図１２】本発明の実施の形態２に係る仮想計算機システムの計算機のＬＰＡＲ起動部の処理を示すフローチャートである。
【発明を実施するための形態】
【００２１】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００２２】
（実施の形態１）
図１により、本発明の実施の形態１に係る計算機システムの構成について説明する。図１は本発明の実施の形態１に係る計算機システムの構成を示す構成図である。
【００２３】
図１において、計算機システムは、複数の計算機１００、ストレージシステム１６０、複数の計算機１００とストレージシステム１６０を接続するストレージスイッチ１４０およびネットワークスイッチ１５０から構成されている。また、ネットワークスイッチ１５０には、端末１９０が接続され、各種設定などを行っている。
【００２４】
複数の計算機１００は、ファイバチャネルのホストバスアダプタ（ＨＢＡ）１１０を介してストレージスイッチ１４０に接続され、ネットワークインタフェースカード（ＮＩＣ）１２０を介してネットワークスイッチ１５０に接続されている。
【００２５】
また、ストレージスイッチ１４０およびネットワークスイッチ１５０はストレージシステム１６０にもＨＢＡ１６１、ＮＩＣ１６２を介して接続され、複数の計算機１００からアクセスすることができるようになっている。
【００２６】
計算機１００にはＢＭＣ（Ｂａｓｅｂｏａｒｄ  Ｍａｎａｇｅｍｅｎｔ  Ｃｏｎｔｒｏｌｌｅｒ）１３０が内蔵されていて、ネットワークを介してハードウェアの電源制御が可能である。
【００２７】
ストレージシステム１６０内のディスク管理部１７０は、ディスクボリューム１８０にアクセス可能な計算機１００を制限するホストグループ設定の機能を有し、計算機１００に搭載のＨＢＡ１１０とディスクボリューム１８０との関係付けを行い、ホスト管理情報１７５として記憶する。ホスト管理情報１７５の設定は、端末１９０から行う。
【００２８】
計算機１００には、ブレードシステムにおけるブレードを利用することも可能である。端末１９０は、そのブレードの１つを割り当ててもよい。また、複数の計算機１００は、互いに離れた場所に設置されていてもよい。
【００２９】
次に、図２により、本発明の実施の形態１に係る計算機システムの計算機の詳細な構成について説明する。図２は本発明の実施の形態１に係る計算機システムの計算機の詳細な構成を示す構成図である。
【００３０】
計算機１００は、計算機の状態やプログラム実行結果を表示する表示装置３１０、プログラムにデータを与える入力装置３２０、業務処理プログラムやデータを保持するメモリ３３０、プログラムを実行するＣＰＵ３４０、ＨＢＡ１１０、ＮＩＣ１２０、ＢＭＣ１３０から構成されている。
【００３１】
ＨＢＡ１１０は、ファイバチャネル通信において通信相手を特定するために必要となるＷＷＮと呼ばれるユニークな識別子を保持している。ＢＭＣ１３０は、主に計算機１００のハードウェアの監視や制御を行う。ＢＭＣ１３０は起動管理部１３５を有し、端末１９０からの要求に応じて計算機１００の電源のＯＮ／ＯＦＦが可能である。
【００３２】
次に、図３により、本発明の実施の形態１に係る計算機システムの起動管理部の動作について説明する。図３は本発明の実施の形態１に係る計算機システムの起動管理部の動作を示すフローチャートである。
【００３３】
計算機１００の起動は、ＢＭＣ１３０の起動管理部１３５で実行する。
【００３４】
まず、ステップ１２１０では、計算機１００への電源投入要求を受付ける。なお、ＢＭＣ１３５は、計算機１００が起動される前に、別電源にて始動することができる。
【００３５】
続いて、ステップ１２１５では、無効ＷＷＮの定義情報を取得する。
【００３６】
ステップ１２１５で取得する無効ＷＷＮの定義情報は、例えば、起動管理部１３５に、外部からのコマンドや操作によりあらかじめ設定してある値か、ＢＭＣ１３０内に記憶し、後からインタフェースを介して変更可能な値か、あるいはＢＳＭ１３０では保持せずに、外部の計算機からステップ１２１５の処理を行う際に入力する値のことである。
【００３７】
次に、ステップ１２２０に進み、ＨＢＡ１１０のＷＷＮを読み出し、それがステップ１２１５で取得した無効ＷＷＮの定義情報に一致するかどうか判定する。
【００３８】
ステップ１２２０で無効ＷＷＮが登録されていると判定すると、ステップ１２３０において、電源を投入して計算機１００を起動することができないというエラー情報を生成する。
【００３９】
一方、ステップ１２２０で無効ＷＷＮが登録されていないと判定すると、ステップ１２４０において計算機１００に電源を入れて起動する。
【００４０】
最後に、ステップ１２５０において、計算機の起動に成功したことを示す情報か、電源投入不可というエラー情報といった処理結果を起動操作元に出力する。
【００４１】
以上説明したように、本実施の形態では、ＢＭＣ１３０により、計算機１００の起動を要求されても起動を抑止することができる。異なる計算機１００間で同一のＩ／Ｏアダプタ識別子を設定しても、少なくとも１つのＨＢＡ１１０へ無効ＷＷＮを登録することにより、そのＨＢＡ１１０を有する計算機の起動を抑止することができる。
【００４２】
以上のように、本実施の形態では、異なる計算機、または異なる計算機上のＬＰＡＲ間で同一のＩ／Ｏアダプタ識別子を設定しても、少なくとも１つのＨＢＡ１１０へ無効ＷＷＮを登録することにより、そのＨＢＡ１１０を有する計算機の起動を抑止する。
【００４３】
このように処理することにより、ユーザが意図しないタイミングで計算機に起動がかかってしまったときでも、計算機が起動しないように制御することができる。
【００４４】
（実施の形態２）
実施の形態２は、実施の形態１の計算機１００が仮想化機構を有し、仮想化機構により管理されるＬＰＡＲで動作する仮想計算機システムにおいて計算機起動管理を行うものである。
【００４５】
図４により、本発明の実施の形態２に係る仮想計算機システムの計算機の構成について説明する。図４は本発明の実施の形態２に係る仮想計算機システムの計算機の構成を示す構成図であり、仮想計算機システムとしての構成は、図１に示す実施の形態１の構成と同様である。
【００４６】
図４において、計算機１００は、図２に示すような計算機１００の構成である、ＨＢＡ１１０、ＮＩＣ１２０、ＢＭＣ１３０や、図示しない表示装置３１０、入力装置３２０、メモリ３３０、ＣＰＵ３４０の他に、仮想化機構２２０を備えており、仮想化機構２２０は物理的な１台の計算機を、ＣＰＵ３４０やメモリ３３０を分割してＬＰＡＲ（Ｌｏｇｉｃａｌ  Ｐａｒｔｉｔｉｏｎ）２００に割り当てている。このＬＰＡＲ２００は、仮想計算機となる。
【００４７】
これにより、１台の計算機１００を論理的な複数の計算機ＬＰＡＲ２００に見せる。ＬＰＡＲ２００は、計算機１００と同様に、仮想ＨＢＡ２１０と仮想ＮＩＣ２１５を有する。仮想ＨＢＡ２１０のポートには固有のＷＷＮが付与される。
【００４８】
また、計算機１００のＨＢＡ１１０は複数のポート識別情報（ＮポートＩＤ）をＷＷＮ管理部１１５に持ち、仮想ＨＢＡ２１０のＷＷＮをＨＢＡ１１０の仮想ポートに登録することができる。
【００４９】
仮想化機構２２０はＷＷＮ管理部２３０、装置管理部２４０、ＬＰＡＲ管理部２５０、ＬＰＡＲ起動部２６０、メモリ２７０を有している。
【００５０】
メモリ２７０は、計算機識別情報２３５、装置識別管理テーブルであるＷＷＮ管理テーブル４００、装置管理テーブル５００、仮想化機構識別情報２５５、ＬＰＡＲ管理テーブル７００を記憶している。仮想化機構２２０は、端末１９０から操作要求を入力し、メモリ２７０に記憶したデータを用いてＬＰＡＲ２００を操作し、操作結果を端末１９０に出力する。
【００５１】
次に、図５〜図８により、本発明の実施の形態２に係る仮想計算機システムで使用されるコマンドおよびテーブルについて説明する。図５〜図８は本発明の実施の形態２に係る仮想計算機システムで使用されるコマンドおよびテーブルを示す図であり、図５はコマンドの型式を示す図、図６はＷＷＮ管理テーブルの詳細を示す図、図７は装置管理テーブルの詳細を示す図、図８はＬＰＡＲ管理テーブルの詳細を示す図である。
【００５２】
図５において、仮想化機構２２０が入力するコマンド６００の形式は、コマンド６１０、コマンドの詳細要求内容を示す要求コード６２０、コマンドに必要なパラメタ６３０からなる。パラメタ６３０はコマンド６１０と要求コード６２０に依存し、２つ以上連なる場合がある。
【００５３】
例えば、図５に示すように、ＷＮＮ登録コマンド６０１、ＬＰＡＲ管理コマンド６０２〜６０４などのコマンドがあり、無効／リセット／更新、変更属性、ＭＡＣ要素、起動抑止などが、要求コード６２０であり、要求コード以降の情報が、パラメタ６３０である。
【００５４】
図６において、ＷＷＮ管理テーブル４００は、ＬＰＡＲ２００に割り当て可能な仮想ＨＢＡ２１０一覧を記憶する。
【００５５】
カラム４１０は、ＨＢＡ１１０の搭載位置を示すスロット情報を示す。計算機１００がブレードのときには、スロット情報としてブレード毎のスロット搭載順序情報を用いてもよい。
【００５６】
カラム４２０は、ＨＢＡ１１０が保持するポート情報を示す。カラム４３０は、１つのポートを複数のＬＰＡＲ２００で共有するための共有番号である。図６の例では、ＨＢＡ１１０がＶＦＣ１からＶＦＣ４を保持できるので、ポート毎に４つのＬＰＡＲ２００から共有できることを示す。
【００５７】
カラム４４０は、カラム４１０とカラム４２０とカラム４３０とで示す仮想ＨＢＡ２１０に与えるＷＷＮを示している。カラム４４０のＷＷＮを変更すると、そのポートを割り当てたＬＰＡＲ２００の仮想ＨＢＡ２１０は変更後のＷＷＮを使用する。カラム４５０は、ＬＰＡＲ２００に仮想ＨＢＡ２１０のポートを割り当てたとき、ＬＰＡＲ２００のＬＰＡＲ情報を記憶する。
【００５８】
図７において、装置管理テーブル５００は、ＬＰＡＲ２００に割り当てる仮想ＨＢＡ２１０や仮想ＮＩＣ２１５といったＩ／Ｏアダプタ装置の情報を記憶する。
【００５９】
カラム５１０は、ＬＰＡＲ２００の識別情報を示す。カラム５２０は、ＬＰＡＲ２００が使用するＩ／Ｏアダプタ装置のスロット情報を示す。カラム５３０は、ＬＰＡＲが使用するＩ／Ｏアダプタ装置のポート情報を示す。
【００６０】
カラム５４０は、管理番号を示している。Ｉ／Ｏアダプタ装置が仮想ＮＩＣ２１５の場合には、管理番号はＬＰＡＲ２００内でユニークなＶＮＩＣ番号である。Ｉ／Ｏアダプタ装置が仮想ＨＢＡ２１０の場合には、管理番号はＷＷＮ管理テーブル４００で使用する共有番号である。
【００６１】
カラム５５０は、Ｉ／Ｏアダプタが仮想ＮＩＣ２１５なのか仮想ＨＢＡ２１０なのかを現す情報を示す。装置管理テーブル５００は、装置管理部２４０によって、ＬＰＡＲ２００にＩ／Ｏアダプタを割り当てるときに行を追加し、Ｉ／Ｏアダプタ装置の割り当てを解除するときに行を削除したり登録内容を変更することができる。カラム５６０は、アダプタ種別を示す。
【００６２】
仮想ＨＢＡ２１０をＬＰＡＲ２００に割り当てたときには、ＷＷＮ管理テーブル４００のカラム４５０にＬＰＡＲ２００の識別情報を記憶する。反対に割り当てを解除したときには、カラム４５０が記憶する情報を削除する。
【００６３】
ＬＰＡＲ２００で実行する業務処理プログラムは、仮想ＨＢＡ２１０の識別情報としてＷＷＮを用いる。ここで用いるＷＷＮは、ＷＷＮ管理テーブル４００において、ＬＰＡＲ２００に割り当てた仮想ＨＢＡ２１０に該当する行のカラム４４０を用いる。異なる計算機１００の仮想化機構２２０がそれぞれのＷＷＮ管理テーブルのカラム４４０に同一のＷＷＮを登録すると、同一ＷＷＮ構成のＬＰＡＲ２００を構築できる。このような同一ＷＷＮ構成のＬＰＡＲ２００間では、ストレージシステム１６０のホストグループの設定を変更しなくても、業務処理プログラムを再配置することができる。
【００６４】
図８において、ＬＰＡＲ管理テーブル７００は、仮想化機構２２０の初期起動時に生成され、ＬＰＡＲを管理するために必要な定義やＬＰＡＲ動作状況を記憶する。
【００６５】
カラム７１０は、ＬＰＡＲ２００を識別する情報を示す。カラム７２０とカラム７３０は、仮想ＮＩＣ２１５を識別するＭＡＣアドレスの生成に使用する情報を記憶する。カラム７２０は、計算機システムでユニークなＭＡＣアドレスを生成するために、仮想化機構識別情報２５５の値を用いるのか、用いないとしたらどのような値を使用するのか、といった情報を記憶する。
【００６６】
カラム７３０は、同じくＭＡＣアドレスを生成する要素として、仮想ＮＩＣ２１５を用いるＬＰＡＲ２００の識別情報を使うのか、使わないとしたらどのような値を使用するのか、といった情報を記憶する。カラム７４０は、ＬＰＡＲ２００の定義情報の変更を禁止するか否かの情報を示す。ここでＬＰＡＲの定義情報とは、例えばテーブル５００で管理するＬＰＡＲに割り当てたＩ／Ｏアダプタ装置の情報である。
【００６７】
カラム７５０は、ＬＰＡＲ２００を起動してよいか否かの情報を示す。ここで起動抑止をＯＮにしたＬＰＡＲに起動要求が入っても、仮想化機構２２０はそのＬＰＡＲを起動しないように制御する。カラム７６０は、ＬＰＡＲ２００が起動中か否かの状態を示す。
【００６８】
次に、図９により、本発明の実施の形態２に係る仮想計算機システムの計算機のＷＷＮ管理部の処理について説明する。図９は本発明の実施の形態２に係る仮想計算機システムの計算機のＷＷＮ管理部の処理を示すフローチャートであり、仮想化機構２２０が管理する仮想ＨＢＡ２１０の一覧のＷＷＮを登録する処理を示している。
【００６９】
まず、ステップ８１０では、ＷＷＮ管理テーブル４００更新要求を受付ける。ここで受付ける要求は、図５の６０１で示す形式のＷＷＮ登録コマンドである。要求コード６２０は、無効ＷＷＮ登録を意味するコードか、ＷＷＮを初期値に戻すことを意味するコードか、ＷＷＮ変更を意味するコードである。パラメタ６３０は、スロット番号とポート番号と共有番号とがある。ＷＷＮ変更を意味する要求コードのときには、変更後のＷＷＮの値もパラメタ６３０で受け取る。
【００７０】
続いてステップ８２０では、ＷＷＮ管理テーブル４００がメモリ２７０にあるか否かを調べる。ステップ８２０で、ＷＷＮ管理テーブル４００がないと判定すると、ステップ８２５において、ＷＷＮ管理テーブル４００の領域をメモリ２７０に確保し、ＨＢＡ１１０の搭載数を元に、スロット情報とポート情報と共有番号の全組合せ数に相当する行を生成する。また、ステップ８２７において、各行のカラム４４０にＷＷＮ初期値を格納する。
【００７１】
ＷＷＮ初期値とは、例えば、スロット番号とポート番号と共有番号と計算機識別情報２３５とを用いて生成する６４ビットのユニークな値である。計算機識別情報２３５には、計算機１００が搭載されているブレードの識別子とブレードを収めるシャーシの識別子を用いることができる。
【００７２】
ステップ８２０で、ＷＷＮ管理テーブル４００があると判定すると、ステップ８３０では、要求コード６２０が無効ＷＷＮ設定要求を意味するコードであるか判定し、ステップ８３０で無効ＷＷＮ設定を意味するコードであると判定すると、ステップ８３５では、ＷＷＮ管理テーブル４００の、スロット番号とポート番号と共有番号とを示すパラメタ６３０から特定できる行のカラム４４０に、無効ＷＷＮ情報を格納し、ステップ８８０に進む。
【００７３】
ここで無効ＷＷＮ情報とは、あらかじめ仮想化機構２２０で定義された６４ビットの情報であり、例えば１６進数の２０００００００００００００００のような値である。
【００７４】
ステップ８３０で判定が一致しないと判定するとステップ８４０に進む。ステップ８４０では、要求コード６２０がＷＷＮを初期値に戻すリセット設定要求を意味するか判定し、ステップ８４０でリセット設定要求を意味すると判定すると、ステップ８４５にて、スロット番号とポート番号と共有番号とを示すパラメタ６３０の値と、計算機識別情報２３５とからＷＷＮ初期値を生成する。
【００７５】
ステップ８４０で判定が一致しないと判定すると、ステップ８５０では、要求コード６２０がＷＷＮ更新要求を意味するコードであるか判定し、ステップ８５０でＷＷＮ更新要求を意味するコードであると判定すると、ステップ８６０に進み、ステップ８５０で判定が一致しないと判定すると、ステップ８８０に進む。
【００７６】
ステップ８６０では、ステップ８４５で生成したＷＷＮ初期値か、あるいはパラメタ６３０で受け取った変更ＷＷＮが、ＷＷＮ管理テーブル４００の当該行以外の行に登録されているか否かを判定する。ステップ８６０で、重複ＷＷＮがあり、すでに登録されていると判定すると、ステップ８６５では、変更ＷＷＮが既存ＷＷＮと重複するというエラー情報を生成し、ステップ８６０で重複ＷＷＮがないと判定すると、ステップ８７０では、当該行のカラム４４０をＷＷＮ初期値か、あるいはパラメタ６３０で受け取った変更ＷＷＮに変更する。
【００７７】
最後にステップ８８０では、ＷＷＮ管理テーブル４００への登録に失敗したか、あるいは変更前後のＷＷＮ情報か、あるいは何も登録しなかったかといった処理結果を要求元に送る。
【００７８】
なお、ステップ８７０でＷＷＮを変更する際、ＬＰＡＲ管理テーブル７００のカラム７４０を調べ、定義変更禁止を登録されたＬＰＡＲの仮想ＨＢＡ２１０のときには変更不可としてもよい。
【００７９】
このように、仮想化機構２２０では、仮想ＨＢＡ２１０が使用するＷＷＮを変更できる。これにより、異なる計算機１００のＬＰＡＲ２００で使用していたＷＷＮに変更したとき、異なる計算機１００のＬＰＡＲ２００で使用していたディスクボリューム１８０を、ホスト管理情報１７５を変更することなくＷＷＮを変更したＬＰＡＲ２００からアクセスすることができる。
【００８０】
次に、図１０および図１１により、本発明の実施の形態２に係る仮想計算機システムの計算機のＬＰＡＲ管理部の処理について説明する。図１０は本発明の実施の形態２に係る仮想計算機システムの計算機のＬＰＡＲ管理部の処理を示すフローチャートであり、ＬＰＡＲ管理部２５０がＬＰＡＲ管理テーブル７００にＬＰＡＲ管理情報を登録する処理を示している。図１１は本発明の実施の形態２に係る仮想計算機システムの計算機のＭＡＣ要素変更処理の詳細を示すフローチャートである。
【００８１】
まず、ステップ１０１０では、ＬＰＡＲ管理テーブル７００更新要求を受付ける。ここで受付ける要求は、図６の６０２、６０３または６０４で示す形式のＬＰＡＲ管理コマンドである。
【００８２】
要求コード６２０が定義変更属性を変更する要求のときは６０２の形式で、パラメタ６３０はＬＰＡＲ情報と定義変更を禁止するか禁止を解除するかを示す値からなる。要求コード６２０がＭＡＣ要素を変更する要求のときは６０３の形式で、パラメタ６３０はＬＰＡＲ情報とＭＡＣ要素を初期値に戻すかあるいは変更するかを示す値と、変更ならば仮想化機構情報として用いる値とＭＡＣ要素として用いるＬＰＡＲ情報の値を示す値からなる。要素コード６２０がＬＰＡＲの起動抑止の設定要求のときは６０４の形式で、パラメタ６３０はＬＰＡＲ情報と起動抑止をＯＮにするかＯＦＦにするかを示す値からなる。
【００８３】
続いて、ステップ１０２０では、要求コード６２０が定義変更属性登録要求を意味するコードであるか否かを判定し、ステップ１０２０で定義変更属性登録要求を意味するコードであると判定すると、ステップ１０２５において、パラメタ６３０のＬＰＡＲ情報に対応する行のカラム７４０にパラメタ６３０の禁止あるいは禁止解除情報を格納し、ステップ１０８０に進む。
【００８４】
ステップ１０２０で定義変更属性登録要求を意味するコードでないと判定すると、ステップ１０３０では、パラメタ６３０のＬＰＡＲ情報に対応する行のカラム７４０が定義変更可能であるか判定し、ステップ１０３０で変更禁止を示す値が格納されていると判定すると、ステップ１０３５では、定義変更禁止エラー情報を生成し、ステップ１０８０に進む。
【００８５】
ステップ１０３０で定義変更が可能であると判定すると、ステップ１０４０に進み、要求コード６２０がＭＡＣ要素変更要求を意味するか否かを判定し、ステップ１０４０でＭＡＣ要素変更要求を意味すると判定すると、ステップ１０４５に進む。
【００８６】
ここで、図１１のフローチャートにより、ステップ１０４５の処理の詳細を説明する。
【００８７】
まず、ステップ１０４５のＭＡＣアドレス要素変更処理は、ステップ９１０では、パラメタ６３０の中にＭＡＣアドレス生成要素をリセットする意味の値があるか否かを判定し、ステップ９１０でＭＡＣアドレス生成要素をリセットする意味の値があると判定すると、ステップ９１５では、リセット後のＭＡＣ要素を仮生成する。それはＬＰＡＲ管理テーブル７００を初期生成するときにカラム７２０とカラム７３０に記憶する値であり、仮想化機構識別情報２５５の値を使うことを示す値と、パラメタ６３０で指定されたＬＰＡＲ情報が示す値である。
【００８８】
また、ステップ９１０で、パラメタ６３０の中にＭＡＣアドレス生成要素をリセットではなく変更する意味の値があると判定すると、ステップ９２０に進み、パラメタ６３０で指定されたＬＰＡＲ情報に対応するカラム７２０とカラム７３０の値を取得する。
【００８９】
次に、ステップ９３０では、リセット後のＭＡＣ要素か、またはパラメタ６３０で渡された仮想化機構情報と要素ＬＰＡＲの値が、当該ＬＰＡＲの行以外のＬＰＡＲですでに記憶している値であるか否かを判定する。
【００９０】
ステップ９３０で、すでに登録されていると判定すると、ステップ９３５では、変更後のＭＡＣ要素が別のＬＰＡＲと重複するというエラー情報を生成し、ステップ９６０に進む。
【００９１】
また、ステップ９３０で登録されていないと判定するとステップ９４０において当該行のカラム７２０とカラム７３０を指定の値に変更し、ステップ９６０に進む。
【００９２】
最後に、ステップ９６０では、ＭＡＣ要素の登録に成功したことを示す情報かまたはエラー情報を図１０のステップ１０８０に送る。
【００９３】
一方、ステップ１０４０でＭＡＣ要素変更要求でないと判定するとステップ１０５０に進む。ステップ１０５０では、要求コード６２０がＬＰＡＲ起動抑止属性を登録する要求を意味するか否かを判定し、ステップ１０５０でＬＰＡＲ起動抑止属性を登録する要求を意味であると判定するとステップ１０６０に進み、ステップ１０５０でＬＰＡＲ起動抑止属性を登録する要求を意味でないと判定すると、ステップ１０８０に進む。
【００９４】
ステップ１０６０では、パラメタ６３０で渡されたＬＰＡＲ情報に該当する行のカラム７６０が起動中を示す値になっているか否かを判定する。ステップ１０６０で起動中を示す値になっていると判定すると、ステップ１０６５において、ＬＰＡＲ起動中による変更エラーの情報を生成する。
【００９５】
また、ステップ１０６０でＬＰＡＲが起動中ではないと判定すると、ステップ１０７０に進み、カラム７５０にパラメタ６３０で渡された起動抑止属性のＯＮかＯＦＦを登録する。
【００９６】
最後に、ステップ１０８０にて、ＬＰＡＲ管理テーブル７００への登録に成功したことを示す情報か、またはエラー情報をコマンド要求元に出力する。
【００９７】
ＬＰＡＲ２００で実行する業務処理プログラムは、仮想ＮＩＣ２１５の識別情報として仮想ＭＡＣアドレスを用いることがある。仮想化機構２２０では、仮想ＮＩＣ２１５が使用するＭＡＣアドレスの値を生成するときに用いるＭＡＣ要素を変更できる。
【００９８】
ここで、異なる計算機１００のＬＰＡＲ２００で使用していたＭＡＣ要素に変更すると、異なる計算機１００のＬＰＡＲ２００と同様のネットワーク通信が可能になる。すなわち、装置管理テーブル５００や業務処理プログラムの通信設定を変更することなく、業務処理プログラムをＬＰＡＲ２００間で再配置することができる。
【００９９】
次に、図１２により、本発明の実施の形態２に係る仮想計算機システムの計算機のＬＰＡＲ起動部の処理について説明する。図１２は本発明の実施の形態２に係る仮想計算機システムの計算機のＬＰＡＲ起動部の処理を示すフローチャートである。
【０１００】
まず、ステップ１１１０では、ＬＰＡＲ起動要求を受付ける。
【０１０１】
続いて、ステップ１１２０では、ＬＰＡＲ管理テーブル７００により、起動を要求されたＬＰＡＲに該当する行のカラム７６０が起動中を示す値になっているか否かを判定する。ステップ１１２０で、ＬＰＡＲ起動中でないと判定すると、ステップ１１３０に進み、ステップ１１２０で、ＬＰＡＲ起動中であると判定するとステップ１１６０に進む。
【０１０２】
ステップ１１３０では、ＬＰＡＲ管理テーブル７００により、起動を要求されたＬＰＡＲに該当する行のカラム７５０が起動抑止中を示すＯＮの値であるか否かを判定する。
【０１０３】
ステップ１１３０で、ＯＮでないと判定すると、ステップ１１４０に進み、ステップ１１３０で、ＯＮであると判定すると、ステップ１１６０に進む。
【０１０４】
ステップ１１４０では、無効ＷＷＮを登録された仮想ＨＢＡ２１０を割り当てているＬＰＡＲであるか否かを判定する。この判定は、ＷＷＮ管理テーブル４００を用い、起動しようとしているＬＰＡＲの識別子がカラム４５０に登録されている全ての行について、カラム４４０が記憶している値が無効ＷＷＮに一致するかどうかを判定する。
【０１０５】
ステップ１１４０で、無効ＷＷＮが登録されていると判定すると、ステップ１１６０では、ＬＰＡＲを起動できないというエラー情報を生成する。
【０１０６】
一方、ステップ１１４０で、無効ＷＷＮが登録されていないと判定すると、ステップ１１５０では、ＬＰＡＲを起動する。このとき、ＬＰＡＲ管理テーブル７００の該当ＬＰＡＲの行のカラム７６０に、ＬＰＡＲ起動中あることを示す値を登録する。さらに、装置管理テーブル５００のカラム５６０に、Ｉ／Ｏアダプタ装置を識別する情報を記憶する。
【０１０７】
ここで、カラム５５０の装置種別がＮＩＣのときは、ＬＰＡＲ管理テーブル７００のカラム７２０と７３０のＭＡＣ要素と、装置管理テーブル５００のカラム５４０の値を組み合わせて生成したＭＡＣアドレスを識別情報として用いる。一方、カラム５５０の装置種別がＨＢＡのときは、ＷＷＮ管理テーブル４００のカラム４４０に記憶しているＷＷＮを用いる。
【０１０８】
最後にステップ１１７０では、ＬＰＡＲの起動に成功したことを示す情報か、失敗したときはエラー情報といった処理結果を要求元に出力する。
【０１０９】
以上のように、本実施の形態では、仮想化機構２２０では、起動を要求されても起動を抑止するＬＰＡＲを用意することができる。異なる計算機上のＬＰＡＲに同一のＩ／Ｏアダプタ識別子を設定しても、不用意なＬＰＡＲ操作によるそれら複数ＬＰＡＲの同時起動を抑止できる。
【０１１０】
このように処理することにより、ユーザが意図しないタイミングで仮想計算機に起動がかかってしまったときでも、仮想計算機が起動しないように制御することができる。
【０１１１】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【産業上の利用可能性】
【０１１２】
本発明は、計算機システムおよび仮想計算機システムの計算機起動管理方法に関し、計算機や仮想計算機の起動を抑止する制御を行うシステムなどに広く適用可能である。
【符号の説明】
【０１１３】
１００…計算機、１１０、１６１…ＨＢＡ、１１５…ＷＷＮ管理部、１２０、１６２…ＮＩＣ、１３０…ＢＭＣ、１４０…ストレージスイッチ、１５０…ネットワークスイッチ、１６０…ストレージシステム、１７０…ディスク管理部、１８０…ディスクボリューム、２００…ＬＰＡＲ、２１０…仮想ＨＢＡ、２１５…仮想ＮＩＣ、２２０…仮想化機構、２３０…ＷＷＮ管理部、２３５…計算機識別情報、２４０…装置管理部、２５０…ＬＰＡＲ管理部、２５５…仮想化機構識別情報、２６０…ＬＰＡＲ起動部、２７０…メモリ、４００…ＷＷＮ管理テーブル、５００…装置管理テーブル、７００…ＬＰＡＲ管理テーブル。
【図１】
0005553851.tif 000002
【図２】
0005553851.tif 000003
【図３】
0005553851.tif 000004
【図４】
0005553851.tif 000005
【図５】
0005553851.tif 000006
【図６】
0005553851.tif 000007
【図７】
0005553851.tif 000008
【図８】
0005553851.tif 000009
【図９】
0005553851.tif 000010
【図１０】
0005553851.tif 000011
【図１１】
0005553851.tif 000012
【図１２】
0005553851.tif 000013