図面 (/)

技術 仮想計算機制御方法

出願人 株式会社日立製作所
発明者 播磨良洋篠原真木子菅野孝司
出願日 2004年9月1日 (16年2ヶ月経過) 出願番号 2004-253729
公開日 2006年3月16日 (14年8ヶ月経過) 公開番号 2006-072591
状態 拒絶査定
技術分野 マルチプログラミング ハードウェアの冗長性 エラー時の再試行 デバッグ/監視
主要キーワード 接合機器 継続稼動 マネジメントコントローラ ベースボード 割り込み待ち 採取要求 割り当てデータ 論理プロセッサ
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2006年3月16日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (4)

課題

仮想計算機移動の際の構成の再設定の煩雑さを解消するとともに、仮想計算機および仮想計算機制御プログラムの移動、複製あるいは保存を行うことによってシステム可用性を向上する。

解決手段

実計算機稼動中の仮想計算機および仮想計算機制御プログラムを一時停止させ、一時停止させた仮想計算機および仮想計算機制御プログラムの状態をデータ情報としてデータ化し、データ化された仮想計算機および仮想計算機制御プログラムの状態に関するデータ情報を情報伝達手段を介して他の実計算機に転送し、他の実計算機において転送された仮想計算機および仮想計算機制御プログラムの状態に関するデータ情報に基づいて仮想計算機および仮想計算機制御プログラムを構築する。

概要

背景

図3は仮想計算機実計算機間の移動の例を示す。仮想計算機システムとは1つの実計算機上仮想計算機制御プログラムを動作させることにより、あたかも複数の計算機が存在するように動作するシステムである。図3の例においては仮想計算機制御プログラム1(203)と仮想計算機制御プログラム2(206)が情報伝達手段207で接続されており、仮想計算機制御プログラムの制御下で情報伝達手段を通じて他の実計算機内に仮想計算機を移動させるものである。

仮想計算機の移動を行う場合、例えば、実計算機1(200)上の仮想計算機1(201)を実計算機2(204)上に移動させるには、実計算機2(204)上であらかじめ制御プログラム2(206)を起動し、仮想計算機1(205)の構成を設定しておく。その上で仮想計算機の情報、データを情報伝達手段を介して実計算機2(204)上の仮想計算機制御プログラム2(206)に転送し、すべてのデータ転送が終わった後、仮想計算機制御プログラム2(206)は記憶媒体再接続等を行い、仮想計算機1(205)を再開する。

このような仮想計算機の移動方式の例としては特開平10−283210号公報において示されている。

特開平10−283210号

概要

仮想計算機移動の際の構成の再設定の煩雑さを解消するとともに、仮想計算機および仮想計算機制御プログラムの移動、複製あるいは保存を行うことによってシステムの可用性を向上する。実計算機で稼動中の仮想計算機および仮想計算機制御プログラムを一時停止させ、一時停止させた仮想計算機および仮想計算機制御プログラムの状態をデータ情報としてデータ化し、データ化された仮想計算機および仮想計算機制御プログラムの状態に関するデータ情報を情報伝達手段を介して他の実計算機に転送し、他の実計算機において転送された仮想計算機および仮想計算機制御プログラムの状態に関するデータ情報に基づいて仮想計算機および仮想計算機制御プログラムを構築する。

目的

また、実計算機上で複数の仮想計算機が動作し、それらの仮想計算機の全てを移動させようとする場合、複数回の移動オペレーションおよび仮想計算機構成設定を行う必要があり、煩雑である。
さらに実計算機上でハードウェア障害が発生し、仮想計算機制御プログラムが障害を検出し、その影響でそれ以上の仮想計算機制御処理ができなくなる要因が発生した場合、仮想計算機の移動やシステムの継続稼動が行えなくなるといった問題点も存在する
本発明は仮想計算機移動の際の構成の再設定の煩雑さを解消することを目的とするとともに、仮想計算機および仮想計算機制御プログラムの移動、複製あるいは保存を行うことによってシステムの可用性向上を目的とする。

効果

実績

技術文献被引用数
5件
牽制数
8件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

複数の実計算機が互に情報の伝達を行う情報伝達手段を有し、それぞれの実計算機において仮想計算機制御プログラムにより仮想計算機を動作させる仮想計算機システムにおいて、一つの実計算機で稼動中の仮想計算機および仮想計算機制御プログラムを一時停止させ、該一時停止させた仮想計算機および仮想計算機制御プログラムの状態をデータ情報としてデータ化し、該データ化された仮想計算機および仮想計算機制御プログラムの状態に関するデータ情報を前記情報伝達手段を介して他の実計算機に転送し、該他の実計算機において前記転送された仮想計算機および仮想計算機制御プログラムの状態に関するデータ情報に基づいて仮想計算機および仮想計算機制御プログラムを構築することを特徴とする仮想計算機制御方法

請求項2

前記データ情報の転送先実計算機に構築された仮想計算機および仮想計算機制御プログラムの稼動を開始後、前記データ情報の転送元実計算機上の仮想計算機および仮想計算機制御プログラムを再稼動することにより仮想計算機および仮想計算機制御プログラムの複製を実現することを特徴とする請求項1記載の仮想計算機制御方法。

請求項3

前記データ情報の転送先実計算機に構築された仮想計算機および仮想計算機制御プログラムの稼動を開始後、前記情報データの転送元実計算機をシャットダウンすることにより仮想計算機および仮想計算機制御プログラムの移動を実現することを特徴とする請求項1記載の仮想計算機制御方法。

請求項4

複数の実計算機が互に情報の伝達を行う情報伝達手段を有し、それぞれの実計算機において仮想計算機制御プログラムにより仮想計算機を動作させる仮想計算機システムにおいて、記憶装置を備えた実計算機で稼動中の仮想計算機および仮想計算機制御プログラムを一時停止させ、該一時停止させた仮想計算機および仮想計算機制御プログラムの状態をデータ情報としてデータ化し、該データ化された仮想計算機および仮想計算機制御プログラムの状態に関するデータ情報を前記記憶装置に保存しておき、システム障害時に前記保存したデータ情報を当該実計算機に転送して仮想計算機および仮想計算機制御プログラムを再開することを特徴とする仮想計算機制御方法。

技術分野

0001

本発明は、実計算機上で動作する仮想計算機制御方法に係わり、特に実計算機間で仮想計算機および制御プログラムを移動または複製する制御方法に関する。

背景技術

0002

図3は仮想計算機の実計算機間の移動の例を示す。仮想計算機システムとは1つの実計算機上で仮想計算機制御プログラムを動作させることにより、あたかも複数の計算機が存在するように動作するシステムである。図3の例においては仮想計算機制御プログラム1(203)と仮想計算機制御プログラム2(206)が情報伝達手段207で接続されており、仮想計算機制御プログラムの制御下で情報伝達手段を通じて他の実計算機内に仮想計算機を移動させるものである。

0003

仮想計算機の移動を行う場合、例えば、実計算機1(200)上の仮想計算機1(201)を実計算機2(204)上に移動させるには、実計算機2(204)上であらかじめ制御プログラム2(206)を起動し、仮想計算機1(205)の構成を設定しておく。その上で仮想計算機の情報、データを情報伝達手段を介して実計算機2(204)上の仮想計算機制御プログラム2(206)に転送し、すべてのデータ転送が終わった後、仮想計算機制御プログラム2(206)は記憶媒体再接続等を行い、仮想計算機1(205)を再開する。

0004

このような仮想計算機の移動方式の例としては特開平10−283210号公報において示されている。

0005

特開平10−283210号

発明が解決しようとする課題

0006

従来の仮想計算機の移動方式においては以下のような制約が生じる。

0007

他実計算機上に仮想計算機を移動させる場合に予め仮想計算機制御プログラムを移動先の実計算機上で起動した後、移動する仮想計算機の構成の再設定や、記憶媒体が実計算機間で共有されていない場合は、記憶媒体の再接続を行う必要がある。図3の例では実計算機1(200)に接続されている記憶媒体(208)を実計算機2(204)につなぎかえる必要がある。

0008

また、実計算機上で複数の仮想計算機が動作し、それらの仮想計算機の全てを移動させようとする場合、複数回の移動オペレーションおよび仮想計算機構成設定を行う必要があり、煩雑である。
さらに実計算機上でハードウェア障害が発生し、仮想計算機制御プログラムが障害を検出し、その影響でそれ以上の仮想計算機制御処理ができなくなる要因が発生した場合、仮想計算機の移動やシステムの継続稼動が行えなくなるといった問題点も存在する
本発明は仮想計算機移動の際の構成の再設定の煩雑さを解消することを目的とするとともに、仮想計算機および仮想計算機制御プログラムの移動、複製あるいは保存を行うことによってシステムの可用性向上を目的とする。

課題を解決するための手段

0009

上記の問題点を解決するために、本発明は、実計算機で稼動中の仮想計算機および仮想計算機制御プログラムを一時停止させ、この一時停止させた仮想計算機および仮想計算機制御プログラムの状態をデータ情報としてデータ化し、データ化された仮想計算機および仮想計算機制御プログラムの状態に関するデータ情報を情報伝達手段を介して他の実計算機に転送し、他の実計算機において転送された仮想計算機および仮想計算機制御プログラムの状態に関するデータ情報に基づいて仮想計算機および仮想計算機制御プログラムを構築する。

0010

また本発明は、仮想計算機システムを動作させる複数の実計算機を管理するコンソールより移動指示発行し、それを受けた仮想計算機制御プログラムが、稼動中の自身、および仮想計算機を一時停止させ、それらをデータ化し、ファームウェアを介して実計算機の通信手段を使用して、移動または複製先実計算機上のファームウェアに対してデータを転送し、移動または複製先実計算機上のファームウェアはそのデータを受け取った後、仮想計算機制御プログラムを再開する。仮想計算機制御プログラムは仮想計算機の構成情報を有しているため仮想計算機の構成を自動的に再構築し、仮想計算機の再開を行うことができるため、仮想計算機の構成の再設定の煩雑さが解消される。

0011

また任意の時点で仮想計算機および仮想計算機制御プログラムのデータを採取し記憶媒体に保存することにより、実計算機上で障害が発生し、それ以上システムとしての処理が行えなくなった場合に、採取されたデータの時点から仮想計算機および仮想計算機制御プログラムの再開が可能となる。

発明の効果

0012

本発明により仮想計算機移動の際の構成の再設定の煩雑さを解決することができる。また、仮想計算機制御プログラムに障害発生時にそれ以上の仮想計算機制御処理が行えなくなるような場合、自身及びその上で動作する仮想計算機を他実計算機へ移動する機能を持たせることにより、可用性を損なうことなくシステムの効率的な運用が可能となる。

発明を実施するための最良の形態

0013

以下、本発明の実施例を示す。図1サーバシステムの一例で実計算機10、20が接合機器34で接合され、各物理計算機との情報伝達手段として各実計算機上に実装されたBMCベースボードマネージメントコントローラ)15、25と各BMCを統括するSVP(サービスプロセッサ)31およびそのSVP31のコンソールとして接続される端末機器32、および記憶媒体33からなる。

0014

なお、記憶媒体30は各実計算機へ切り替えて使用することが可能な記憶媒体であり、SVP31のコマンドにより切り替え可能である。

0015

また、各実計算機上のBMCは仮想計算機制御プログラム及びファームウェアと通信可能な手段を有している。仮想計算機制御プログラムとファームウェアとのやりとりはファームウェアの提供する関数コールすることにより行う。

0016

このシステムを用いて実計算機10から実計算機20への仮想計算機11、12および仮想計算機制御プログラム13の移動または複製の例を説明する。なお、記憶媒体30は実計算機10上のいづれかの仮想計算機に割り当てられているものとする。

0017

コンソール32よりSVP31を介して仮想計算機移動要求が入力されたならば、SVP31はBMC15に対して仮想計算機11、12および仮想計算機制御プログラム13の移動要求を伝達する。
仮想計算機制御プログラム13はBMC15から割り込み、またはポーリングにより仮想計算機11、12および仮想計算機制御プログラム13の移動要求を受け取る。

0018

移動要求を受け取った仮想計算機制御プログラム13は仮想計算機11、12を一時停止させる。仮想計算機を停止させるとは、仮想計算機として動作するプロセスを停止させることである。仮想計算機移動要求があったならば仮想計算機制御プログラム13は実計算機内の各プロセッサ上で動作中の仮想計算機11、12の全てのプロセスを停止させる。

0019

プロセスを停止させるタイミングは仮想計算機プロセスタイムスライス、または仮想計算機プロセスが命令エミュレーション中であったならば、そのエミュレーションが終了した時点のいずれかで停止させる。

0020

なお、仮想計算機上のOSがI/OのDMA転送中、または割り込み待ちであった場合はその完了を待ち、以降それぞれの仮想計算機の状態が更新されない時点になった上で前述の停止タイミングを待ち、プロセスを停止させる。

0021

すべての仮想計算機プロセスが停止したならば仮想計算機制御プログラム13は自身の現在実行中の全てのプロセスを停止させる。

0022

仮想計算機制御プログラムのプロセスを停止させるタイミングは仮想計算機制御プログラムがI/OのDMA転送中、または割り込み待ちであった場合はその完了を待ち、以降仮想計算機制御プログラムの状態が更新されない時点になった上でタイムスライスが発生した時点である。

0023

これら全てのプロセスの停止が終了した時点で、仮想計算機制御プログラム13が有する仮想計算機移動処理プロセスを起動する。このプロセスでは各仮想計算機および仮想計算機制御プログラムの状態、構成、現在使用しているメモリ範囲メモリデータ等の情報を構築し、ファームウェア14に対してそのデータを伝達する処理を行う。

0024

図2に上記プロセスのデータ情報の構築により作成される図1の事例のデータの構成図を示す。作成されるデータは大別して仮想計算機データと仮想計算機制御プログラムデータに分かれる。

0025

仮想計算機11データ100には論理プロセッサ数、メモリ容量などの仮想計算機構成データ101、各論理プロセッサのレジスタ値を有する論理プロセッサ状態データ102、仮想計算機の使用するI/O(記憶媒体等)の構成、およびI/Oデバイスの状態及びI/Oに記録されているデータを有するI/O情報103、仮想計算機11が使用しているメモリのアドレスおよびメモリ内容を有するメモリ情報104が存在する。これらの情報は仮想計算機11データ100、仮想計算機12データ105というように仮想計算機毎に存在する。

0026

仮想計算機制御プログラム13データ110には実計算機を構成するデータ111(I/Oデバイスの数、搭載メモリ容量、物理プロセッサ数等)、各物理プロセッサのレジスタ値を有する物理プロセッサ状態データ112、それぞれの仮想計算機に割り当てているメモリ、プロセッサ数、I/Oデバイス数の情報を有する物理資源割り当てデータ113、仮想計算機制御プログラム13が使用する物理メモリアドレスおよびその内容を有するメモリ情報114、仮想計算機制御プログラム13が使用するI/Oの構成、およびI/Oに記録されているデータを有するI/O情報115が存在する。

0027

データの構築が終了したならば、仮想計算機移動処理プロセスはファームウェア14の関数を前述のデータおよび移動先実計算機(図1の場合実計算機20)を引数として与え、コールする。
ファームウェア14は仮想計算機制御プログラム13から転送要求を示す関数コールを受けたならばBMC15を介して転送先BMC25に対してデータを送信する。
転送先BMC25はデータを受け取ったならば割り込みまたはポーリングによりデータの移動要求をファームウェア24に伝達する。

0028

ファームウェア24は移動要求を受け取ったならば、BMC25、15を介してファームウェア14と通信を行い、前述のデータを受信する。
ファームウェア24は受信したデータに基づいて、実計算機20上のメモリにデータを順次展開し、仮想計算機制御プログラム23を構築する。

0029

このとき、移動先実計算機上に記憶媒体等の仮想計算機および仮想計算機制御プログラムを構成するのに必要なI/Oデバイスがない場合はデータに基づいてSVP31へI/O切り替え要求を発行し、実計算機10から実計算機20へのI/Oの切り替え処理を行う。この場合、I/Oデバイスの内容はそのまま維持されるため、I/Oデバイスのデータのリストア行わなくてもよいが、仮想計算機および仮想計算機制御プログラムの複製は行えず移動のみとなる。

0030

移動先実計算機上に記憶媒体等の仮想計算機および仮想計算機制御プログラムを構成するのに必要なI/Oデバイスが存在し、それを使用する場合はその記憶媒体にI/Oデバイスのデータのリストアを行う。この場合は仮想計算機および仮想計算機制御プログラムの移動または複製が可能となる。
ファームウェア24は仮想計算機制御プログラム23の構築およびデータの受信が完了したならば、制御権を仮想計算機制御プログラム23に移す。

0031

仮想計算機制御プログラム23は制御権が移ったならば、物理資源割り当てデータ113および仮想計算機11データ100、仮想計算機12データ105から、移動前の仮想計算機11、12と同じ構成である仮想計算機21、22を自動構築する。

0032

仮想計算機制御プログラム23はすべての仮想計算機の構築が終了したならば、各物理プロセッサの状態を再設定し、各仮想計算機に順次起動をかけることにより、仮想計算機11、12および仮想計算機制御プログラム13の移動を完了する。

0033

データ転送完了後、移動の場合は実計算機10上の仮想計算機制御プログラム13は実計算機を10のシャットダウン処理を行う。複製であった場合は仮想計算機制御プログラム13は仮想計算機11、12を再開させ、引き続き稼動を行う。

0034

次に、仮想計算機及び仮想計算機制御プログラムを移動または複製するのではなく、稼動時複製データ採取のみを行う場合を図1の実計算機10を例に説明する。

0035

SVP31はコンソール32から稼動時データ採取要求が入力されたならば、SVP31はBMC15に対して仮想計算機11、12および仮想計算機制御プログラム13の稼動時データを採取要求を伝達する。
仮想計算機制御プログラム13はBMC15から割り込み、またはポーリングにより仮想計算機11、12および仮想計算機制御プログラム13の稼動時データを採取要求を受け取る。

0036

データ採取要求を受け取った仮想計算機制御プログラム13は仮想計算機11、12を一時停止させる。
移動時と同様に、仮想計算機制御プログラム13は実計算機内の各プロセッサ上で動作中の仮想計算機11、12の全てのプロセスを停止させる。移動時と同様にプロセスを停止させるタイミングは仮想計算機プロセスのタイムスライス、または仮想計算機プロセスが命令のエミュレーション中であったならば、そのエミュレーションが終了した時点のいずれかで停止させる。

0037

なお、仮想計算機上のOSがI/OのDMA転送中、または割り込み待ちであった場合はその完了を待ち、以降それぞれの仮想計算機の状態が更新されない時点になった上で前述の停止タイミングを待ち、プロセスを停止させる。

0038

すべての仮想計算機プロセスが停止したならば仮想計算機制御プログラム13は自身の現在実行中の全てのプロセスを停止させる。

0039

仮想計算機制御プログラムのプロセスを停止させるタイミングは仮想計算機制御プログラムがI/OのDMA転送中、または割り込み待ちであった場合はその完了を待ち、以降仮想計算機制御プログラムの状態が更新されない時点になった上でタイムスライスが発生した時点である。

0040

すべてのプロセスが停止したならば仮想計算機制御プログラム13が有する各仮想計算機および仮想計算機制御プログラムの状態、構成、現在使用しているメモリデータ等の情報を構築するプロセスを起動し、移動時同様、図2に示されるデータを構築する。

0041

データの構築が終わったならば、プロセスはファームウェア14の関数を前述のデータおよび、データを記憶させる記憶媒体(本ケースにおいては記憶媒体33)を引数として与え、コールする。

0042

ファームウェア14は仮想計算機制御プログラム13から保存要求を示す関数コールを受けたならばBMC15を介してSVP31に対してデータの記憶媒体33への保存要求を発行する。SVP31はその要求を受け取ったならば、記憶媒体33への保存を開始する。

0043

すべてのデータの記憶媒体33への保存が終了したならば、SVP31はBMC15を介してファームウェア14に対して終了報告を行う。ファームウェア14はSVP31より終了報告を受け取ったならば、仮想計算機制御プログラム13に制御権を戻し、仮想計算機制御プログラム13を再開する。

0044

これにより、仮想計算機及び仮想計算機制御プログラムのデータ採取を行うことが可能となる。

図面の簡単な説明

0045

本発明の一実施例に係る仮想計算機システムの構成図である。
仮想計算機および仮想計算機制御プログラムを移動する際にデータ化するデータの構成図である。
現在実現されている一般的な仮想計算機移動方式の概略図である。

符号の説明

0046

10実計算機
11仮想計算機
12 仮想計算機
13仮想計算機制御プログラム
14ファームウェア
15ベースボードマネジメントコントローラ(BMC)
20 実計算機
21 仮想計算機
22 仮想計算機
23 仮想計算機制御プログラム
24 ファームウェア
25 ベースボードマネジメントコントローラ(BMC)
30記憶媒体
31サービスプロセッサ(SVP)
32コンソール
33 記憶媒体
100 仮想計算機11データ
101 仮想計算機構成データ
102論理プロセッサ状態データ
103 仮想計算機I/O情報
104 仮想計算機メモリ情報
105 仮想計算機12データ
110 仮想計算機制御プログラム13データ
111 実計算機構成データ
112物理プロセッサ状態データ
113物理資源割り当てデータ
114 仮想計算機制御プログラムメモリ情報
115 仮想計算機制御プログラムI/O情報
200 実計算機1
201 仮想計算機1
202 仮想計算機2
203 仮想計算機制御プログラム
204 実計算機2
205 仮想計算機1
206 仮想計算機制御プログラム2
207情報伝達手段

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ