(57)【要約】【課題】ソフトウェア更新を行う場合も同一ハードウェア上での処理切り替えを行い、サービス中断時間を短くすること。【解決手段】ソフトウェアを動作させる仮想ハードウェアを冗長化構成した仮想計算機システムにおいて、冗長化構成のソフトウェアを更新する場合、待機系仮想ハードウェア上のソフトウェアを更新し、その後、稼動系の処理を待機系に引継ぐ。【選択図】図１
2007304845.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウェアを動作させる仮想ハードウェアを冗長化構成した仮想計算機システムであって、
冗長化構成のソフトウェアを更新する場合、待機系仮想ハードウェア上のソフトウェアを更新し、その後、稼動系の処理を待機系に引継ぐことを特徴とする仮想計算機システム。
【請求項２】
ソフトウェアを動作させる仮想ハードウェアを冗長化構成した仮想計算機システムであって、
稼動系仮想ハードウェア上の仮想ソフトウェア障害が発生した場合、待機系仮想ハードウェアに切替え、稼動系の処理を待機系に引継ぎ、
冗長化構成のソフトウェアを更新する場合、待機系仮想ハードウェア上のソフトウェアを更新し、その後、稼動系の処理を待機系に引継ぐことを特徴とする仮想計算機システム。
【請求項３】
前記ソフトウェアは少なくともアプリケーションとゲストＯＳを含むことを特徴とする請求項１または２記載の仮想計算機システム。
【請求項４】
ソフトウェアを動作させる仮想ハードウェアを冗長化構成した仮想計算機システムにおけるソフトウェア更新方法であって、
冗長化構成のソフトウェアを更新する場合、待機系仮想ハードウェア上のソフトウェアを更新し、その後、稼動系の処理を待機系に引継ぐことを特徴とするソフトウェア更新方法。
【請求項５】
ソフトウェアを動作させる仮想ハードウェアを冗長化構成した仮想計算機システムにおけるソフトウェア更新方法であって、
稼動系仮想ハードウェア上の仮想ソフトウェア障害が発生した場合、待機系仮想ハードウェアに切替え、稼動系の処理を待機系に引継ぎ、
冗長化構成のソフトウェアを更新する場合、待機系仮想ハードウェア上のソフトウェアを更新し、その後、稼動系の処理を待機系に引継ぐことを特徴とするソフトウェア更新方法。
【請求項６】
前記ソフトウェアは少なくともアプリケーションとゲストＯＳを含むことを特徴とする請求項４または５記載のソフトウェア更新方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、実際のサービスを提供するアプリケーションを仮想化されたハードウェア上で実現し、仮想ハードウェア間での冗長化構成がなされたシステムにおける技術に関する。
【背景技術】
【０００２】
従来、キャリアグレード用途のように信頼性を要求され、サービスの中断が致命的な問題となるシステムにおいても、オープンなハードウェア、オペレーティングシステムを用いたプラットフォームで実現されるようになってきている。そのようなシステムにおいて従来は障害があった場合に稼動系から待機系に処理を引き継ぐことでサービスを継続するように、ハードウェアを冗長化している。
【０００３】
また、さまざまなサービスを提供するために、ソフトウェアの重要性が高くなっている。
【０００４】
その上、ソフトウェアの開発規模も大きくなり、ソフトウェアの不具合による障害発生が無視できない状況になっている。
【０００５】
ここで、仮想計算機システムにおいて、複数のオペレーティングシステムを起動した場合、個々のオペレーティングシステムに割当てる主記憶量を少なくすることにより、固定的に割当てられる主記憶量を減らし、アプリケーションプログラムを実行する場合に仮想計算機モニタに資源の拡張を要求して確保することにより、オペレーティングシステムが新たな資源を確保し、アプリケーションプログラムを実行し、仮想計算機システムを用いてホットスタンバイシステムを構築する場合、現用系オペレーティングシステムの資源を待機系オペレーティングシステムに再割り当てすることにより、資源の再利用を図ることで、単一の計算機システムにおいて、ホットスタンバイ構成を組み複数のオペレーティングシステムおよびアプリケーションプログラムを効率的に制御することができる技術が提案されている（例えば、特許文献１参照）。
【特許文献１】特開２００２−０４１３０５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した従来例においては次のような問題点があった。
【０００７】
従来のハードウェアによる冗長構成の場合、ハードウェア障害だけでなく、ソフトウェア障害でも、稼動系から待機系に処理を引き継ぐ場合、必要なデータの転送などの時間があり、その分だけサービスが中断されてしまっていた。
【０００８】
さらに、オープンなハードウェアの進化は速く、長期間同じハードウェアが使えない状況になりつつある。そのため、新しいハードウェアにあわせて現在のソフトウェアを更新して、ハードウェアとソフトウェアを同時に更新していく必要がある。ソフトウェアの規模は大きくなる傾向にあり、必要なコストも大きくなっている。
【０００９】
それとは別に、現在、仮想化技術が非常に注目されており、ハードウェアに仮想化のサポートが組み込まれるようになっている。そのため、ハードウェアを仮想化することによるオーバヘッドなどのデメリットが小さくなってきており、オープンなシステムでも仮想化技術を実用レベルで使用できる段階にきている。
【００１０】
本発明は、以上説明した事情に鑑みてなされたものであり、その目的は、ソフトウェア更新を行う場合も同一ハードウェア上での処理切り替えを行い、サービス中断時間を短くすることにある。
【課題を解決するための手段】
【００１１】
上記課題を解決するために、本発明は、ソフトウェアを動作させる仮想ハードウェアを冗長化構成した仮想計算機システムであって、
冗長化構成のソフトウェアを更新する場合、待機系仮想ハードウェア上のソフトウェアを更新し、その後、稼動系の処理を待機系に引継ぐ仮想計算機システムを提供する。
【００１２】
また、本発明は、ソフトウェアを動作させる仮想ハードウェアを冗長化構成した仮想計算機システムにおけるソフトウェア更新方法であって、
冗長化構成のソフトウェアを更新する場合、待機系仮想ハードウェア上のソフトウェアを更新し、その後、稼動系の処理を待機系に引継ぐソフトウェア更新方法を提供する。
【発明の効果】
【００１３】
本発明によれば、ソフトウェア更新を行う場合も同一ハードウェア上での処理切り替えを行い、サービス中断時間を短くすることができる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の実施の形態について図面を参照して詳細に説明する。
【００１５】
図１の上部を参照すると、本実施の形態における仮想計算機システムは、コンピュータハードウェア１上で動作するホストオペレーティングシステム２において、仮想化ソフトウェア３によって複数の仮想ハードウェアを実現する。
【００１６】
ソフト稼動系４は仮想化ソフトウェア３によって実現された仮想ハードウェア４ａ上で動作するゲストオペレーティングシステム４ｃとアプリケーション４ｄによって構成されており、ソフト待機系５は同様に仮想化ソフトウェア３によって実現された仮想ハードウェア５ａ、ゲストオペレーティングシステム５ｃ、アプリケーション５ｄによって構成されている。
【００１７】
ソフト稼動系４のアプリケーション４ｄはソフト待機系５のアプリケーション５ｄと連携して、同一のコンピュータハードウェア１上で冗長化されたシステムを構築する。
【００１８】
ソフト稼動系４におけるソフトウェア、すなわち、ゲストオペレーティングシステム４ｃとアプリケーション４ｄに起因する障害に対して冗長化を図る。
【００１９】
仮想化ソフトウェア３で実現された仮想リソース３ａはソフト稼動系４の仮想ハードウェア４ａにおけるリソース４ｂ、ソフト待機系５の仮想ハードウェア５ａにおけるリソース５ｂに分配され、仮想化ソフトウェア３とゲストオペレーティングシステムゲストオペレーティングシステム４ｃ５ｃのサポートで排他または共有される。
【００２０】
また、図１の下部を参照すると、本実施の形態では、ネットワーク１０上の複数コンピュータハードウェアによる冗長化との組み合わせを実現する。ハード稼動系１２はコンピュータハードウェア１２ａ上のホストオペレーティングシステム１２ｂと、ソフト稼動系１２ｃ、ソフト待機系１２ｄによって構成され、ハード待機系１３はコンピュータハードウェア１３ａ上のホストオペレーティングシステム１３ｂとソフト待機系１３ｃによって構成される。ハード稼動系１２とハード待機系１３が冗長構成として構築される。
【００２１】
これにより、コンピュータハードウェア１２ａの故障に起因する障害に対しての冗長を図る。
【００２２】
次に、本実施の形態の動作について図面を参照して詳細に説明する。
【００２３】
最初に、障害発生時における処理について説明する。図１の上部では、コンピュータハードウェア１上でソフト稼動系４とソフト待機系５で仮想ハードウェアの冗長構成となっている。アプリケーション４ｄで使用している共有メモリやファイルといった仮想ハードウェア４ａ上のリソース４ｂは、仮想化ソフトウェア３にて仮想リソース３ａとして管理し、ソフト待機系５の仮想ハードウェア５ａ上でのリソース５ｂとしても扱う。
【００２４】
ソフト稼動系４のアプリケーション４ｄに不具合があった場合、ソフト稼動系４からソフト待機系５に処理を引き継ぐ。必要になるデータ(共有メモリやファイル)はソフト稼動系４とソフト待機系５でそれぞれ、リソース４ｂとリソース５ｂとして共有させており、ソフト稼動系４からソフト待機系５にデータをコピーする必要はない。
【００２５】
図１の下部では、ネットワーク１０上のハード稼動系１２とハード待機系１３で実ハードウェアの冗長構成となっている。ハード稼動系１２でハードウェア障害が発生した場合、ハード稼動系１２のソフト稼動系１２ｃからハード待機系１３の.ソフト待機系１３ｃに処理が引き継がれる。
【００２６】
その際、ソフト稼動系１２ｃから.ソフト待機系１３ｃに必要なデータ(共有メモリやファイル)は従来どおりハード稼動系１２からハード待機系１３に転送する必要がある。なお、ハード待機系１３に処理を引き継いだ場合は、ソフト待機系１３ｃが稼動系となるので、対となる待機系として、ソフト待機系３ｄを起こす必要がある。
【００２７】
次に、ソフトウェア更新について説明する。図２〜４において、サービスを行っているソフトウェア(アプリケーション４ｄおよびゲストオペレーティングシステム４ｃ)の更新を行う場合、次の手順でソフトウェア更新が行われる。
【００２８】
まず、ソフト待機系５を冗長構成から切り離す（ステップ１１）。
【００２９】
次に、アプリケーション５ｆおよびゲストオペレーティングシステム５ｅに更新する（ステップ１２）。
【００３０】
切り離されていたソフト待機系５を冗長構成に組み込む（ステップ１３）。
【００３１】
ソフト稼動系４からソフト待機系５に処理を引き継ぎ、稼動系と待機系を切り替える（ステップ１４）。新しいソフトウェアでのサービス開始となる。
【００３２】
ソフト稼動系４(現待機系)を冗長構成から切り離す（ステップ１５）。
【００３３】
アプリケーション４ｆおよびゲストオペレーティングシステム４ｅに更新する（ステップ１６）。
【００３４】
切り離されていたソフト稼動系４(現待機系)を冗長構成に組み込む（ステップ１７）。
【００３５】
図５および図６にてハードウェアによる冗長構成との組み合わせにおけるソフトウェア更新について説明する。
【００３６】
まず、図２等にて説明した手順でハード稼動系１２のソフトウェアを更新する。ソフト待機系２ｅとソフト稼動系２ｆとなる（ステップ２１）。
【００３７】
ハード待機系１３をハードウェア冗長構成から切り離す（ステップ２２）。
【００３８】
ハード待機系１３の.ソフト待機系１３ｃにおけるソフトウェアを更新する。ソフト待機系３ｄとなる（ステップ２３）。
【００３９】
ハード待機系１３をハードウェア冗長構成に組み込む（ステップ２４）。
【００４０】
次に、ハードウェア更新について説明する。図７〜９にてハードウェアの更新およびそれに伴うホストオペレーティングシステム更新について説明する。
【００４１】
ハード待機系１３をハードウェア冗長構成から切り離す（ステップ３１）。
【００４２】
ハード待機系１３のハードウェアを更新する。コンピュータハードウェア１３ａから新コンピュータハードウェア１４ａにホストオペレーティングシステム１３ｂから新ホストオペレーティングシステム１４ｂへ更新される（ステップ３２）。
【００４３】
ハードウェア更新の終わったハード待機系１３をハードウェア冗長構成に組み込む（ステップ３３）。
【００４４】
ハード稼動系１２からハード待機系１３に処理を切り替える（ステップ３４）。
【００４５】
ハード稼動系１２(現待機系)をハードウェア冗長構成から切り離す（ステップ３５）。
【００４６】
ステップ３２と同様の手順でハード稼動系１２(現待機系)のハードウェアを更新する。新コンピュータハードウェア１５ａ、新ホストオペレーティングシステム１５ｂとなる（ステップ３６）。
【００４７】
ハード稼動系１２(現待機系)をハードウェア冗長構成に組み込む（ステップ３７）。
【００４８】
また、図１０にて、ハード待機系におけるハードウェア更新に伴う変更部分について説明する。コンピュータハードウェア１が新コンピュータハードウェア５へ更新される。新しいハードウェアをサポートするため、ホストオペレーティングシステム２は新ホストオペレーティングシステム６へ更新する必要がある。また、新ホストオペレーティングシステム６に対応した新仮想化ソフトウェア７も同様に必要となる。実際のサービスを行うソフトウェア、ゲストオペレーティングシステム４ｂとアプリケーション４ｃは仮想ハードウェア上に実現されており、実ハードウェアの変更に影響を受けないため、変更する必要はない。
【００４９】
上記の本実施の形態によれば、同一ハードウェア上の仮想ハードウェアにて処理の切り替えを行うことで、データ引継ぎ時間を短縮でき、サービス中断時間を短くできる。
【００５０】
また、サービスを行うソフトウェアを仮想ハードウェア上に構築することで、実ハードウェアの変更に伴って、サービスを行うソフトウェア自体を変更が不要となる。
【００５１】
なお、上述する各実施の形態は、本発明の好適な実施の形態であり、本発明の要旨を逸脱しない範囲内において種々変更実施が可能である。
【図面の簡単な説明】
【００５２】
【図１】本発明の実施の形態における仮想計算機システムの冗長構成を示す図である。
【図２】本発明の実施の形態におけるサービスを行っているソフトウェアの更新を行う動作を示す図である。
【図３】本発明の実施の形態におけるサービスを行っているソフトウェアの更新を行う動作を示す図である。
【図４】本発明の実施の形態におけるサービスを行っているソフトウェアの更新を行う動作を示す図である。
【図５】本発明の実施の形態におけるハードウェアによる冗長構成との組み合わせにおけるソフトウェア更新を行う動作を示す図である。
【図６】本発明の実施の形態におけるハードウェアによる冗長構成との組み合わせにおけるソフトウェア更新を行う動作を示す図である。
【図７】本発明の実施の形態におけるハードウェア更新を行う動作を示す図である。
【図８】本発明の実施の形態におけるハードウェア更新を行う動作を示す図である。
【図９】本発明の実施の形態におけるハードウェア更新を行う動作を示す図である。
【図１０】本発明の実施の形態におけるハード待機系におけるハードウェア更新に伴う変更部分を示す図である。
【符号の説明】
【００５３】
１    コンピュータハードウェア
２    ホストオペレーティングシステム
３    仮想化ソフトウェア
４    ソフト稼動系
４ａ    仮想ハードウェア
４ｂ    リソース
４ｃ    ゲストオペレーティングシステム
４ｄ    アプリケーション
５    ソフト待機系
５ａ    仮想ハードウェア
５ｂ    リソース
５ｃ    ゲストオペレーティングシステム
５ｄ    アプリケーション
１０    ネットワーク
１２    ハード稼動系
１２ａ    コンピュータハードウェア
１２ｂ    ホストオペレーティングシステム
１２ｃ    ソフト稼動系
１２ｄ    ソフト待機系
１３    ハード待機系
１３ａ    コンピュータハードウェア
１３ｂ    ホストオペレーティングシステム
１３ｃ    ソフト待機系
１３ｄ    ソフト待機系
【図１】
2007304845.tif 000003
【図２】
2007304845.tif 000004
【図３】
2007304845.tif 000005
【図４】
2007304845.tif 000006
【図５】
2007304845.tif 000007
【図６】
2007304845.tif 000008
【図７】
2007304845.tif 000009
【図８】
2007304845.tif 000010
【図９】
2007304845.tif 000011
【図１０】
2007304845.tif 000012