JP5353712B2 - 冗長構成管理システムおよび方法 - Google Patents

冗長構成管理システムおよび方法 Download PDF

Info

Publication number
JP5353712B2
JP5353712B2 JP2009547024A JP2009547024A JP5353712B2 JP 5353712 B2 JP5353712 B2 JP 5353712B2 JP 2009547024 A JP2009547024 A JP 2009547024A JP 2009547024 A JP2009547024 A JP 2009547024A JP 5353712 B2 JP5353712 B2 JP 5353712B2
Authority
JP
Japan
Prior art keywords
server
information
virtual
configuration
redundant
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2009547024A
Other languages
English (en)
Other versions
JPWO2009081736A1 (ja
Inventor
文雄 町田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2009547024A priority Critical patent/JP5353712B2/ja
Publication of JPWO2009081736A1 publication Critical patent/JPWO2009081736A1/ja
Application granted granted Critical
Publication of JP5353712B2 publication Critical patent/JP5353712B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0712Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a virtual computing platform, e.g. logically partitioned systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2038Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • G06F11/1482Generic software techniques for error detection or fault masking by means of middleware or OS functionality
    • G06F11/1484Generic software techniques for error detection or fault masking by means of middleware or OS functionality involving virtual machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Hardware Redundancy (AREA)

Description

本発明は、仮想マシン技術を用いて複数の物理サーバから構成されるコンピュータシステムを冗長化するための冗長構成管理システム及び方法に関する。
データセンタや企業の基幹システム等、常時安定稼動が求められるコンピュータシステムでは、サーバを冗長化することで信頼性を高めている。このようなコンピュータシステムでは、必要最低限のサーバに加えて冗長サーバを稼動させることで、一部のサーバで障害が発生しても残りのサーバを利用してサービスを安定して提供できる。
背景技術のサーバの冗長化手法としては、例えば特許文献1(特開2002−55840号公報)に、2重化、N+M構成およびN+1構成が記載されている。2重化とは全てのサーバに対して冗長用の物理サーバを用意する手法である。N+M構成は、N台のサーバに対してM台の冗長用の物理サーバを用意する手法であり、M=1の場合を特にN+1構成と呼ぶ。
特許文献1に記載された冗長化手法では、冗長用の物理サーバを用意するために該物理サーバの分だけシステムのコストが上昇する。特にサービスを提供するサブシステム(アプリケーションプログラム(以下、単にアプリケーションと称す))を複数備えたコンピュータシステムでは、サブシステム(アプリケーション)毎に冗長用の物理サーバを必要とするため、冗長化のためのコストが増大する。したがって、複数のサブシステム(アプリケーション)で冗長用の物理サーバを共有する等のコスト削減の工夫が必要となる。
一方、近年のデータセンタや企業の基幹システムでは、仮想マシン技術を用いて、物理サーバ上に複数の仮想サーバを構築する形態が採用されつつある。
例えば非特許文献1(B. Dragovic, K. Fraser, S. Hand, T. Harris, A. Ho, I. Pratt, A. Warfield, P. Barham and R. Neugebauer, Xen and the Art of Virtualization, 19th ACM Symposium on Operating Systems Principles (SOSP19), 2003.)には、物理サーバが備える計算機資源(CPUやメモリデバイス等)を所要の処理プログラムによって実現される複数の仮想サーバとして利用する技術が公開されている。このような仮想マシン技術を利用すれば、新たな物理サーバを導入することなく、仮想サーバを増設することでサブシステム(アプリケーション)毎に冗長用のサーバを設けることが可能であり、より少ないコストでコンピュータシステムの冗長化を実現できる。
上述したように、特許文献1に記載された冗長化手法では、サブシステム(アプリケーション)毎に冗長化のための物理サーバを必要とするため、複数のサブシステム(アプリケーション)を備えたコンピュータシステムを冗長化すると、冗長化のためにコンピュータシステムのコストが増大する問題がある。
一方、仮想マシン技術を利用した冗長化手法は、少ないコストでコンピュータシステムの冗長化を実現できるが、物理サーバで障害が発生すると、複数の仮想サーバが同時に故障する可能性があるため、冗長化による効果(コンピュータシステムの復旧や継続稼動等)が得られない問題がある。例えば、同一のサブシステム(アプリケーション)に割り当てられた稼動中の仮想サーバ(稼動サーバ)および冗長用の仮想サーバ(冗長サーバ)が同一の物理サーバ上に配置されている場合、該物理サーバで障害が発生すると、冗長化によるコンピュータシステムの復旧や継続稼動が不可能となる。すなわち、仮想マシン技術では、同一のサブシステム(アプリケーション)に割り当てる稼動サーバおよび冗長サーバを異なる物理サーバ上に配置する必要がある。
上記非特許文献1の仮想マシン技術では、コンピュータシステムで必要な冗長サーバの台数を求めることはできるが、物理サーバに対して仮想サーバをどのように配置するかは示していない。
そこで、本発明は、コンピュータシステムの復旧や継続稼動等の冗長化の効果が得られる、仮想マシン技術を利用したコンピュータシステムの冗長化を実現できる冗長構成管理システムおよび方法を提供することを目的とする。
上記目的を達成するため本発明の冗長構成管理システムは、管理対象であるコンピュータシステムの可用性要件を入力するための入力手段と、
前記コンピュータシステムの構成を示す情報であるシステム構成情報および前記コンピュータシステムが備える物理サーバで稼動可能な処理プログラムの数を制限するための制約情報を参照して、前記可用性要件を満たす前記物理サーバに対する前記処理プログラムの配置を決定する冗長構成設計手段と、
を有し、
前記可用性要件が、複数の物理サーバで同時に障害が発生しても前記コンピュータシステムを継続して運用できる処理プログラムの数を示す最大同時故障可能数およびサブシステムが提供するサービスで必要な処理プログラムの最小数を示す最小稼動レベルの情報を含む
一方、本発明の冗長構成管理方法は、冗長構成管理サーバが、
管理対象であるコンピュータシステムの可用性要件が入力されると、前記コンピュータシステムの構成を示す情報であるシステム構成情報および前記コンピュータシステムが備える物理サーバで稼動可能な処理プログラムの数を制限するための制約情報を参照して、前記可用性要件を満たす前記物理サーバに対する前記処理プログラムの配置を決定する
前記可用性要件が、複数の物理サーバで同時に障害が発生しても前記コンピュータシステムを継続して運用できる処理プログラムの数を示す最大同時故障可能数およびサブシステムが提供するサービスで必要な処理プログラムの最小数を示す最小稼動レベルの情報を含む方法である。
図1は、本発明の一実施形態の冗長構成管理システムの構成を示すブロック図である。 図2は、第1の実施の形態の冗長構成管理システムの構成を示すブロック図である。 図3は、第1の実施の形態の冗長構成設計手段の構成を示すブロック図である。 図4は、図1に示した冗長構成管理システムおよび図2に示した冗長構成管理サーバを実現する一構成例を示すブロック図である。 図5は、第1の実施の形態の冗長構成設計手段の処理手順を示すフローチャートである。 図6は、第1の実施の形態の仮想サーバ管理手段および仮想サーバ制御手段による冗長構成設計時における処理手順を示すフローチャートである。 図7は、第1の実施の形態の縮退構成決定手段の処理手順を示すフローチャートである。 図8は、第1の実施の形態の仮想サーバ管理手段および仮想サーバ制御手段による縮退構成設計時の処理手順を示すフローチャートである。 図9は、冗長構成設計手段で用いる可用性要件の一例を示す表である。 図10は、冗長構成設計手段で用いる仮想サーバ制約情報の一例を示す表である。 図11は、冗長構成設計手段で用いる仮想サーバ配置情報の一例を示す表である。 図12は、冗長構成設計手段で用いる縮退構成情報の一例を示す表である。 図13は、第2の実施の形態の冗長構成設計手段の構成を示すブロック図である。 図14は、第2の実施の形態の冗長構成設計手段の処理手順を示すフローチャートである。 図15は、第3の実施の形態の冗長構成設計手段の構成を示すブロック図である。 図16は、第3の実施の形態の冗長構成設計手段の処理手順を示すフローチャートである。 図17は、冗長構成設計手段で用いる換算情報の一例を示す表である。 図18は、冗長構成管理システムの実施例の構成を示すブロック図である。 図19は、図18に示した冗長構成管理システムに入力される可用性要件の一例を示す表である。 図20は、図18に示した冗長構成管理システムで用いる仮想サーバ制約情報の一例を示す表である。 図21は、図18に示した冗長構成管理システムで用いるシステム構成情報の一例を示す表である。 図22は、図18に示した冗長構成設計手段による必要サーバ台数の計算手順を示すフローチャートである。 図23は、図22に示した処理手順にしたがって求めた故障余裕および必要冗長サーバ数の一例を示す表である。 図24は、図18に示した冗長構成設計手段による仮想サーバの配置決定手順を示すフローチャートである。 図25は、図24に示した処理手順にしたがった冗長構成の決定過程を示す模式図である。 図26は、図24に示した処理手順にしたがって得られる仮想サーバ配置情報の一例を示す表である。 図27は、障害が発生した物理サーバの情報の一例を示す模式図である。 図28は、図18に示した縮退構成決定手段から出力される縮退構成情報の一例を示す表である。
次に本発明について図面を参照して説明する。
(第1の実施の形態)
図1は本発明の一実施形態の冗長構成管理システムの構成を示すブロック図である。図2は第1の実施の形態の冗長構成管理システムの構成を示すブロック図であり、図3は第1の実施の形態の冗長構成設計手段の構成を示すブロック図である。
図1に示すように、本発明の一実施形態の冗長構成管理システムは、入力手段11および冗長構成設計手段12を有する構成である。
図1に示す冗長構成管理システムは、図2に示すように複数の物理サーバ2および該物理サーバ2上に構築される仮想サーバ3を備えたコンピュータシステムの冗長構成を管理するためのものである。
図1に示す入力手段11および冗長構成設計手段12は、例えば図2に示すような冗長構成管理サーバ1によって実現される。冗長構成管理サーバ1と冗長構成管理システムの管理対象である複数の物理サーバ2とは、例えばネットワーク22を介して接続される。
物理サーバ2は、仮想サーバ制御手段21を備え、仮想サーバ制御手段21によって自物理サーバ2上に構築された0個以上の仮想サーバ3を制御する。
図2に示す冗長構成管理サーバ1は、入力手段11、冗長構成設計手段12、縮退構成決定手段13、仮想サーバ管理手段14、仮想サーバ制約情報格納部15およびシステム構成情報格納部16を備えている。なお、図2では仮想サーバ制御手段21を各物理サーバ2に備える構成例を示しているが、仮想サーバ制御手段21は冗長構成管理サーバ1に備えていてもよい。
図3に示すように、第1の実施の形態の冗長構成設計手段12は、必要サーバ台数計算手段121および仮想サーバ配置決定手段122を備えている。
入力手段11は、例えばコンピュータシステムを管理する管理者が該コンピュータシステムに対して要求する可用性要件を入力するために用いられる。また、入力手段11は、物理サーバ2の障害有無を監視する不図示の監視システムあるいはコンピュータシステムの管理者が、障害が発生した物理サーバ2の情報を入力するために用いられる。
可用性要件には、例えば複数の物理サーバ2で同時に障害が発生してもコンピュータシステムを継続して運用できる仮想サーバ3の台数を示す最大同時故障可能数、あるいは各サブシステム(アプリケーション)が提供するサービスで必要な仮想サーバ3の最小台数を示す最小稼動レベル等の情報が含まれる。
冗長構成設計手段12は、必要サーバ台数計算手段121により、入力手段11を介して入力された可用性要件、システム構成情報格納部16に格納されたシステム構成情報および仮想サーバ制約情報格納部15に格納された仮想サーバ制約情報(制約情報)を参照して、管理対象のコンピュータシステムの冗長化に必要な物理サーバ2および仮想サーバ3の数を計算する。
システム構成情報は、コンピュータシステムの現在の構成を示す情報であり、管理対象のコンピュータシステムが備える物理サーバ2の数、サブシステム(アプリケーション)の数、物理サーバ2に配置した仮想サーバの情報、物理サーバ2の障害有無等の情報を含む。仮想サーバ制約情報(制約情報)は、各物理サーバ2で稼動する仮想サーバ3の数に制限を与える情報であり、物理サーバ2上で稼動できる仮想サーバ(稼動サーバ)の数および冗長用の仮想サーバ(冗長サーバ)の数の情報を含む。
また、冗長構成設計手段12は、仮想サーバ配置決定手段122により、各物理サーバ2に対する仮想サーバ3の配置を決定し、その結果を示す情報(仮想サーバ配置情報)を出力する。仮想サーバ配置決定手段122は、サブシステム(アプリケーション)毎に対応する稼動サーバおよび冗長サーバを、物理サーバ上に配置する。このとき、仮想サーバ配置決定手段122は、同一のサブシステム(アプリケーション)に割り当てる稼動サーバおよび冗長サーバが同一の物理サーバ2に配置されないように仮想サーバ3の配置を決定する。
仮想サーバ管理手段14は、冗長構成設計手段12から出力された仮想サーバ配置情報に基づいて各物理サーバ2上に構築される仮想サーバ3を管理する。
仮想サーバ制御手段21は、仮想サーバ管理手段14からの各種の制御要求を受け付け、該制御要求にしたがって自物理サーバ2内の仮想サーバ3を制御する。仮想サーバ3に対する制御要求には、例えば、仮想サーバ3の生成、仮想サーバ3の稼動停止、稼動サーバと冗長サーバの切り替え等がある。
冗長構成の構築後に物理サーバ2で障害が発生した場合、該障害が発生した物理サーバ2の情報は、コンピュータシステムの管理者あるいは物理サーバ2の障害有無を監視している不図示の監視システムから入力手段11を介して入力される。
縮退構成決定手段13は、入力手段11を介して入力された障害が発生した物理サーバ2の情報、可用性要件、およびシステム構成情報格納部16に格納されたシステム構成情報を参照して可用性要件を満たす縮退構成を決定し、その結果を示す情報(縮退構成情報)を出力する。縮退構成は、障害が発生した物理サーバ2を除いた、残りの物理サーバ2を用いて構築された冗長構成であり、縮退構成情報は該縮退構成を示す情報である。
仮想サーバ管理手段14は、縮退構成決定手段13から出力された縮退構成情報に基づき、仮想サーバ制御手段21を用いて物理サーバ2上に構築した仮想サーバ3の配置を変更する。
図1に示した冗長構成管理システムおよび図2に示した冗長構成管理サーバ装置1は、例えば図4に示すコンピュータによって実現できる。
図4に示すコンピュータは、プログラムにしたがって所定の処理を実行する処理装置4と、処理装置4に対してコマンドや情報等を入力するための入力装置5と、処理装置4の処理結果をモニタするための出力装置6とを有する構成である。
処理装置4は、CPU41と、CPU41の処理で必要な情報を一時的に保持する主記憶装置42と、CPU41に、上記冗長構成設計手段12、縮退構成決定手段13および仮想サーバ管理手段14の処理を実行させるためのプログラムが記録された記録媒体43と、上記仮想サーバ制約情報格納部15、システム構成情報格納部16および後述するサーバ台数換算情報格納部17として用いられるデータ蓄積装置44と、主記憶装置42、記録媒体43およびデータ蓄積装置44とのデータ転送を制御するメモリ制御インタフェース部45と、入力装置5および出力装置6とのインタフェース装置であるI/Oインタフェース部46と、管理対象である複数の物理サーバ2との通信を制御するインタフェースである通信制御装置47とを備え、それらがバス48を介して接続された構成である。
処理装置4は、記録媒体43に記録されたプログラムにしたがって、冗長構成設計手段12、縮退構成決定手段13および仮想サーバ管理手段14の処理を実行する。なお、記録媒体43は、磁気ディスク、半導体メモリ、光ディスクあるいはその他の記録媒体であってもよい。また、データ蓄積装置44は、冗長構成管理サーバ装置1内に備える必要はなく、独立した装置であってもよい。図2に示した物理サーバ2も動作するプログラムが異なることを除けば図4に示したコンピュータによって実現できる。したがって、ここではその説明を省略する。
次に本実施形態の冗長構成の設計方法について図面を用いて説明する。
冗長構成の設計とは、複数の物理サーバ2に対して、各サブシステム(アプリケーション)の処理を実行する仮想サーバ3から成る稼動サーバおよび冗長サーバの配置を決定する処理を指す。
図5は第1の実施の形態の冗長構成設計手段の処理手順を示すフローチャートであり、図6は第1の実施の形態の仮想サーバ管理手段および仮想サーバ制御手段による冗長構成設計時における処理手順を示すフローチャートである。
図5に示すように、例えば管理者が入力手段11を用いて可用性要件を入力すると(ステップ1000)、冗長構成設計手段12は、システム構成情報格納部16を参照して現在のシステム構成情報を取得する(ステップ1001)。
可用性要件は管理対象のコンピュータシステムに要求される信頼性のレベルを示す要件である。図9にその一例を示す。図9は可用性要件である上記最大同時故障可能数および最小稼動レベルの一例を示している。
最大同時故障可能数は、コンピュータシステム全体で許容できる物理サーバ2の故障数であり、物理サーバ2の故障数が最大同時故障可能数以内であれば、縮退処理によりシステムを継続して稼動できることを示す指標である。最小稼動レベルは、コンピュータシステムを継続して運用するのに必要な最小要件を定義した値であり、例えばサブシステム(アプリケーション)毎に必要な最小の仮想サーバ数が設定される。仮想マシン技術を利用して冗長構成を設計する場合、これらの可用性要件を満たすように、障害の発生に備えて冗長サーバを準備しておく必要がある。
冗長構成設計手段12は、現在のシステム構成情報を取得すると、仮想サーバ制約情報格納部15を参照して仮想サーバ制約情報を取得する(ステップ1002)。
仮想サーバ制約情報は、各物理サーバ2上で動作可能な仮想サーバ3に対する制約を示す情報である。その一例を図10に示す。図10は各物理サーバ2上で動作可能な仮想サーバ数の一例を示している。
図10に示すように、本実施形態の仮想サーバ3には稼動系と冗長系とがある。稼動系はユーザに対してサービスを提供する仮想サーバ(稼動サーバ)であり、冗長系は、通常、待機状態にあり、稼動サーバが故障した場合に用いられる仮想サーバ(冗長サーバ)である。稼動サーバにはユーザに提供するサービスに応じた十分な計算機資源が割り当てられ、冗長サーバには待機状態に必要な最低限の計算機資源が割り当てられる。稼動系および冗長系の仮想サーバに割り当てる計算機資源の量は、周知の仮想化機能を提供するプログラムによって制御できる。
冗長構成設計手段12は、取得した各種情報を参照して可用性要件を満たす仮想サーバ3の台数を計算する(ステップ1003)。そして、コンピュータシステムの冗長化に必要な仮想サーバ3の数が、現在利用可能な仮想サーバ3の数以内であるか否かを調べ、冗長構成の設計が可能であるか否かを判定する(ステップ1004)。
冗長構成設計手段12は、冗長構成の設計が可能と判定した場合、仮想サーバ制約情報を参照し、同一のサブシステム(アプリケーション)に割り当てる稼動サーバおよび冗長サーバが同一の物理サーバ2に配置されないように仮想サーバ3の配置を決定し、その結果を示す情報(仮想サーバ配置情報)を出力する(ステップ1005)。冗長構成の設計が不可能と判定した場合は、例えば冗長化に必要な追加すべき物理サーバ2の数を出力して処理を終了する。
冗長構成設計手段12から出力された仮想サーバ配置情報(冗長構成)に問題がなければ、仮想サーバ管理手段15および仮想サーバ制御手段21により冗長構成を構築する処理が開始される。
冗長構成の構築は、冗長構成設計手段12から出力された仮想サーバ配置情報を管理者が確認した後に開始してもよく、管理者が確認することなく開始してもよい。何れの場合も仮想サーバ管理手段15に仮想サーバ配置情報が入力されることで冗長構成の構築が開始される。
仮想サーバ配置情報の一例を図11に示す。図11は各物理サーバ2上で動作させる仮想サーバ3を定義した一例を示している。図11に示す例では、各物理サーバ2上で稼動系および冗長系の2種類の仮想サーバ3が動作し、各仮想サーバ3にサブシステム(アプリケーション)が割り当てられている。また、同一のアプリケーションを実行する稼動系の仮想サーバ3および冗長系の仮想サーバ3は異なる物理サーバ2上に割り当てられている。
図6に示すように、仮想サーバ管理手段15は、仮想サーバ配置情報が入力されると(ステップ2000)、該仮想サーバ配置情報に基づいて各物理サーバ2上の仮想サーバ制御手段21に対して制御要求を送信する(ステップ2001)。
制御要求には、上述したように、仮想サーバ3の生成、稼動停止、稼動サーバから冗長サーバへの変更、冗長サーバから稼動サーバへの変更等が含まれる。
仮想サーバ制御手段21は、仮想サーバ3に対する制御要求を受信すると(ステップ2002)、要求された制御を実行し(ステップ2003)、その制御結果を仮想サーバ管理手段15に送信する(ステップ2004)。
仮想サーバ管理手段15は、各物理サーバ2が備える全ての仮想サーバ制御手段21からの制御結果を受信した時点で冗長構成の構築処理を終了する(ステップ2005)。
次に、物理サーバ2で障害が発生したときに実行する縮退処理について図7および図8を用いて説明する。
図7は第1の実施の形態の縮退構成決定手段の処理手順を示すフローチャートであり、図8は第1の実施の形態の仮想サーバ管理手段および仮想サーバ制御手段による縮退構成設計時の処理手順を示すフローチャートである。
図7に示すように、物理サーバで障害が発生すると、入力手段11を介して障害が発生した物理サーバ2の情報が縮退構成決定手段13に入力される(ステップ3000)。縮退処理では、障害が発生した物理サーバ2を除く、残りの物理サーバ2で可用性要件である最小稼動レベルを満たす冗長構成(縮退構成)を設計する必要がある。
縮退構成決定手段13は、障害が発生した物理サーバ2の数と可用性要件である最大同時故障可能数とを比較し、縮退処理が可能か否かを判定する(ステップ3001)。障害が発生した物理サーバ2の数が最大同時故障可能数を越えている場合は縮退処理が実行できないため、縮退構成決定手段13は、縮退処理の不可を示すメッセージを出力して処理を終了する。
一方、障害が発生した物理サーバ2の数が最大同時故障可能数を越えていない場合は縮退処理が可能であるため、縮退構成決定手段13は、障害が発生した物理サーバ2を除く、残りの物理サーバ2に対する可用性要件を満たす縮退構成を決定し、その結果(縮退構成情報)を出力する(ステップ3002)。
縮退構成情報の一例を図12に示す。図12は、第1の物理サーバ(物理サーバ1)で障害が発生し、第3の物理サーバ(物理サーバ3)に配置したアプリケーションAに割り当てた仮想サーバを冗長系から稼動系に切り替え、アプリケーションCに割り当てた仮想サーバを稼動系から冗長系に切り替える縮退処理の一例を示している。
縮退構成決定手段13から出力された縮退構成情報は、仮想サーバ管理手段15に入力され、縮退処理が開始される。このとき、縮退処理は管理者の承認を得た後に開始してもよく、管理者の承認を得ることなく開始してもよい。
図8に示すように、仮想サーバ管理手段15は、縮退構成情報が入力されると(ステップ4000)、該縮退構成情報に基づいて制御要求を仮想サーバ制御手段21に送信する(ステップ4001)。
仮想サーバ制御手段21は、制御要求を受信すると(ステップ4002)、要求された制御を実行し(ステップ4003)、その制御結果を仮想サーバ管理手段15に送信する(ステップ4004)。仮想サーバ管理手段15は、各物理サーバ2が備える全ての仮想サーバ制御手段21からの制御結果を受信した時点で縮退処理を終了する(ステップ4005)。
第1の実施の形態によれば、冗長構成設計手段12により、仮想サーバ制約情報を参照して、同一のサブシステム(アプリケーション)に割り当てる稼動サーバおよび冗長サーバが同一の物理サーバ2に配置されないように仮想サーバ3の配置を決定するため、コンピュータシステムの復旧や継続稼動等の冗長化の効果が得られる、仮想マシン技術を利用したコンピュータシステムの冗長化を実現できる。
また、管理者が入力した可用性要件を満たすように冗長構成を決定し、物理サーバ2で障害が発生した場合は該可用性要件を満たすように縮退構成を決定するため、要求された可用性要件を満たす仮想マシン技術を適用した冗長構成を設計できる。
さらに、仮想サーバ3に対する計算機資源の割り当て量を変更するだけで、稼動系の仮想サーバと冗長系の仮想サーバとを切り替えることができるため、コンピュータシステムを停止することなく、かつ高速に縮退処理を実行できる。
(第2の実施の形態)
第2の実施の形態は、冗長構成設計手段12に最大同時故障可能数計算手段を備えた点で第1の実施の形態の冗長構成管理システムと異なっている。その他の構成は第1の実施の形態と同様であるため、その説明は省略する。
図13は第2の実施の形態の冗長構成設計手段の構成を示すブロック図である。
図13に示すように、第2の実施の形態の冗長構成設計手段12は、最大同時故障可能数計算手段123、必要サーバ台数計算手段121および仮想サーバ配置決定手段122を備えている。
第2の実施の形態では、管理者から、可用性要件として最小稼動レベルの情報のみが入力手段11を介して入力される。最大同時故障可能数は、最大同時故障可能数計算手段123によりコンピュータシステムの構成に応じて求めるため、可用性要件として入力する必要はない。
最大同時故障可能数計算手段123は、入力された最小稼動レベル、システム構成情報格納部16に格納されたシステム構成情報および仮想サーバ制約格納部15に格納された仮想サーバ制約情報を参照し、複数の物理サーバ2で同時に故障が発生した場合でも縮退処理によりコンピュータシステムが継続して運用可能な仮想サーバ3の台数(最大同時故障可能数)を計算する。
必要サーバ台数計算手段121は、最大同時故障可能数計算手段123で求めた最大同時故障可能数に基づいて可用性要件を満たす物理サーバ2および仮想サーバ3の台数を計算する。
仮想サーバ配置決定手段122は、仮想サーバ制約格納部15に格納された仮想サーバ制約情報を参照し、可用性要件を満たすように各物理サーバ3に対する仮想サーバ3の配置を決定し、その結果(仮想サーバ配置情報)を出力する。
図14は第2の実施の形態の冗長構成設計手段の処理手順を示すフローチャートである。
図14に示すように、管理者が入力手段11を用いて最小稼動レベルの情報を入力すると(ステップ5000)、冗長構成設計手段12はシステム構成情報格納部16を参照して現在のシステム構成情報を取得する(ステップ5001)。
冗長構成設計手段12は、現在のシステム構成情報を取得すると、仮想サーバ制約情報格納部15を参照して仮想サーバ制約情報を取得し(ステップ5002)、最大同時故障可能数計算手段123により最大同時故障可能数を計算する(ステップ5003)。このとき、仮想サーバ制約情報によって配置可能な冗長系の仮想サーバ3の数が制限されるため、最大同時故障可能数も制限される。
冗長構成設計手段12は、求めた最大同時故障可能数に基づいて冗長化に必要な仮想サーバ3の台数を計算し(ステップ5004)、仮想サーバ制約情報に基づいて物理サーバ2に対する仮想サーバ3の配置を決定し、その結果を示す情報(仮想サーバ配置情報)を出力する(ステップ5005)。
ここで、最大同時故障可能数の計算方法について説明する。
まず、障害が発生した物理サーバ2の数をkと定義し、残りの稼動系の仮想サーバ3の数をR_kと定義する。また、どの物理サーバ2で障害が発生したかによってR_kの値が異なるため、R_kの最大値をMax R_kと定義する。
このとき、管理者によって指定された可用性要件である最小稼動レベルを満たすためには、上記R_kの値が最小稼動レベルを満たす仮想サーバ3の台数M以上である必要がある。すなわち、Max R_k≧Mを満たす必要がある。
Max R_kは、kの値に応じて単調に増大する値であるため、この条件を満たすkの最大値を求めれば最大同時故障可能数の候補が得られる。
仮想サーバ配置情報に基づいて冗長構成を構築する手順は図6に示した第1の実施の形態の処理手順と同様である。また、障害が発生した場合に実施する縮退処理についても図7に示した第1の実施の形態と同様である。したがって、ここでは、その説明を省略する。
第2の実施の形態の冗長構成管理システムによれば、第1の実施の形態と同様の効果に加えて、管理者による最大同時故障可能数の入力を必要としないため、管理者の負担が軽減する。また、可用性要件である最小稼動レベル、システム構成情報および仮想サーバ制約情報に基づいて最大同時故障可能数を計算するため、与えられた条件下で最もフォールトトレランス性(同時故障可能数)が高い冗長構成を設計できる。
(第3の実施の形態)
第3の実施の形態は、冗長構成設計手段12に最小サーバ台数計算手段を備えた点で第1の実施の形態および第2の実施の形態の冗長構成管理システムと異なっている。また、第3の実施の形態では、冗長構成管理サーバ1にサーバ台数換算情報格納部17を備えている。その他の構成は第1の実施の形態と同様であるため、その説明は省略する。
図15は第3の実施の形態の冗長構成設計手段の構成を示すブロック図である。
図15に示すように、第3の実施の形態の冗長構成設計手段12は、最小サーバ台数計算手段124、必要サーバ台数計算手段121および仮想サーバ配置決定手段122を備えた構成である。
第3の実施の形態では、管理者から、可用性要件として、最大同時故障可能数およびサービスレベルやビジネス要件が入力される。
最小サーバ台数計算手段124は、入力手段11を介して入力された可用性要件に基づいて各サブシステム(アプリケーション)の可用性要件を満たす最小の仮想サーバ台数を計算する。このとき、最小サーバ台数計算手段124は、サーバ台数換算情報格納部17に格納された換算情報を参照し、入力されたサービスレベルやビジネス要件を、該サービスレベルやビジネス要件で必要な最小の仮想サーバ台数に換算する。サーバ台数換算情報格納部17に格納された換算情報の一例を図17に示す。図17は、アプリケーションAについて、許容クライアント数と、該許容クライアント数に対応して必要となる最小の仮想サーバ台数の関係の一例を示している。図17に示す表を参照することで、管理者やユーザから許容クライアント数が可用性要件として指定された場合でも、可用性要件を満たす最小の仮想サーバ台数を計算できる。
必要サーバ台数計算手段121は、可用性要件として入力された最大同時故障可能数に基づいて、可用性要件を満たす冗長化に必要な仮想サーバ3の台数を計算する。
仮想サーバ配置決定手段122は、仮想サーバ制約格納部15に格納された仮想サーバ制約情報を参照して各物理サーバ2に対する仮想サーバ3の配置を決定し、その結果(仮想サーバ配置情報)を出力する。
図16は第3の実施の形態の冗長構成設計手段の処理手順を示すフローチャートである。
図16に示すように、管理者が入力手段11を用いて可用性要件を入力すると(ステップ6000)、冗長構成設計手段12は、最小サーバ台数計算手段124により、サーバ台数換算情報格納部17に格納された情報を参照してサービスレベルやビジネス要件に対応して必要となる仮想サーバ3の台数を計算する(ステップ6001)。
以降の処理は図5のステップ1001〜1005に示した第1の実施の形態と同様である。すなわち、図16に示すステップ6002〜6006は図5に示したステップ1001〜1005に対応する。
また、冗長構成を構築する手順は図6に示した第1の実施の形態の処理手順と同様である。さらに、障害が発生した場合に実施する縮退処理についても図7に示した第1の実施の形態と同様である。したがって、ここでは、その説明を省略する。
第3の実施の形態の冗長構成管理システムによれば、第1の実施の形態と同様の効果に加えて、サービスレベルやビジネス要件として入力された可用性要件を最小の仮想サーバ台数に換算して冗長構成を決定するため、システムの構成を詳細に把握していない管理者やコンピュータシステムのユーザから要求されたサービスレベルやビジネス要件を最小の仮想サーバ台数に換算して冗長構成に反映させることができる。
なお、第3の実施の形態の冗長構成設計手段12には、第2の実施の形態で示した最大同時故障可能数計算手段123を備えていてもよい。その場合、上記効果に加えて、第2の実施の形態の冗長構成管理システムと同様の効果も得ることができる。
(実施例)
次に本発明を実施例について図面を用いて説明する。
図18は冗長構成管理システムの実施例の構成を示すブロック図である。
図18に示す冗長構成管理システムは、管理対象として6台の物理サーバ2を備え、各物理サーバ2上でそれぞれ2つの仮想サーバを稼動できる構成である。
図20は図18に示した冗長構成管理システムで用いる仮想サーバ制約情報の一例を示す表である。
図20に示すように、本実施例の冗長構成管理システムでは、各物理サーバ上に稼動系と冗長系の仮想サーバをそれぞれ一台ずつ配置可能であることを制約条件とする。
図21は図18に示した冗長構成管理システムで用いるシステム構成情報の一例を示す表である。
図21に示すように、本実施例の冗長構成管理システムは、物理サーバ2が6台であり、3つのサブシステム(アプリケーション)を備え、各物理サーバ2に対して稼動系の仮想サーバ3が割り当てられているものとする。ここでは、管理者によって入力された可用性要件を満たすように冗長系の仮想サーバ3の配置を決定する。
図18に示した冗長構成管理システムに対して図19に示す可用性要件が入力手段11を介して入力されたとする。すなわち、最大同時故障可能数が3であり、最小稼動レベルは各アプリケーションに対応して少なくとも1つの仮想サーバ3が稼動している状態である。
図18に示した冗長構成設計手段12により冗長系の仮想サーバ(冗長サーバ)の配置を決定する手順について図5のフローチャートを参照して説明する。
図5に示したように、冗長構成設計手段12は、可用性要件が入力されると(ステップ1000)、システム構成情報格納部15によりシステム構成情報を取得し(ステップ1001)、仮想サーバ制約格納部16により仮想サーバ制約情報を取得する(ステップ1002)。
冗長構成設計手段12は、これらの情報に基づいて可用性要件を満たす冗長化に必要な仮想サーバ3の台数をアプリケーション毎に算出する(ステップ1003)。
図22は図18に示した冗長構成設計手段による必要サーバ台数の計算手順を示すフローチャートである。
図22に示すように、冗長構成設計手段12は、システム構成情報に基づいて各アプリケーションa_iに対応する稼動系の仮想サーバの数σ(a_i)を算出し、可用性要件に基づいて最小の仮想サーバ台数μ(a_i)を算出する(ステップ7000)。
次に、冗長構成設計手段12は、σ(a_i)とμ(a_i)の差を求めることで、現時点における障害の許容度を示す故障余裕ρ(a_i)を計算する(ステップ7001)。
次に、冗長構成設計手段12は、可用性要件である最大同時故障可能数kを参照する(ステップ7002)。可用性要件として最大同時故障可能数が指定されていない場合は利用可能な冗長サーバの数を示す限界値を計算する。
最後に、冗長構成設計手段12は、各アプリケーションに対応するkとρ(a_i)の差を求め、必要な冗長サーバ数を求める。
ρ(a_i)がk以上である場合、新たに冗長サーバを追加することなく、アプリケーションa_iに対する冗長性を保つことができるため、冗長構成設計手段12は、λ(a_i)=0とする(ステップ7003)。
図23は、図18に示したコンピュータシステムを例にして、図22に示した処理手順にしたがって求めた故障余裕および必要な冗長サーバ数の一例を示している。
ここで、Σλ(a_i)=6はシステム全体で必要な冗長サーバの数を示している。Σλ(a_i)は、管理対象となるコンピュータシステムの構成や仮想サーバ制約情報として指定された仮想サーバ数を越えてはならない。
利用可能な冗長サーバの数がΣλ(a_i)以上である場合、冗長構成を設計できるが、冗長サーバの数がΣλ(a_i)より少ない場合は可用性要件を満たす冗長構成を設計できない(図5のステップ1004)。
冗長構成設計手段12は、冗長構成を設計できると判定した場合、仮想サーバ制約情報に基づいて仮想サーバ3の配置を決定する(ステップ1005)。
仮想サーバの配置決定手順について図24を用いて説明する。
図24に示すように、冗長構成設計手段12は、まずアプリケーションa_iをρ(a_i)の昇順でソートし、ソート後の各アプリケーションを{b_1,b_2,…,b_n}として保持する(ステップ8000)。続いて、p=1としてアプリケーションb_pから順に仮想サーバ3の配置を決定する(ステップ8001)。
次に、冗長構成設計手段12は、λ(b_p)=0を判定し、冗長サーバが必要であるか否かを判定する(ステップ8003)。
λ(b_p)=0である場合、pを1だけインクリメントし(ステップ8004)、次のアプリケーションの評価に移行する。p>n、すなわち全てのアプリケーションb_pについて評価が完了した場合は処理を終了する(ステップ8005)。
λ(b_p)>0の場合、すなわち冗長サーバが必要である場合は、q=p+1とし(ステップ8006)、アプリケーションb_qをアプリケーションb_pのペアとして選択する(ステップ8007)。このとき、同一の物理サーバ2に対して同一のアプリケーションの稼動系および冗長系の仮想サーバを配置しないように、異なるアプリケーションをペアとして選択する。
冗長構成設計手段12は、ペアとして選ばれたアプリケーションb_qに稼動サーバを割り当て、冗長サーバに空きがある物理サーバs_jを探索する(ステップ8008)。冗長サーバに空きがある物理サーバs_jがある場合、冗長構成設計手段12は、該物理サーバs_jの冗長サーバにアプリケーションb_pを割り当てる。このとき、冗長構成設計手段12はλ(b_p)の値をデクリメントする(ステップ8011)。
冗長サーバに空きがある物理サーバs_jが無い場合は、冗長構成設計手段12は、qをインクリメントして新しいペアを選択し、ステップ8008の処理に戻ってステップ8012までの処理を繰り返す。
ステップ8011の処理にて、λ(b_p)=0となったら、冗長構成設計手段12は、アプリケーションb_pに対する割り当て処理を終了する。
図24に示した処理手順にしたがった冗長構成の決定過程を図25に模式的に示す。
まず、冗長構成設計手段12は、各アプリケーションを故障余裕の昇順でソートする。図25に示す例では{アプリケーションC、アプリケーションB、アプリケーションA}の配列が得られる。
この場合、冗長構成設計手段12は、最初にアプリケーションCを選択し、そのペアとしてアプリケーションBを選択する。冗長構成設計手段12は、アプリケーションBの稼動サーバが割り当てられた第4の物理サーバ(物理サーバ4)および第5の物理サーバ(物理サーバ5)にそれぞれアプリケーションCの冗長サーバを割り当てる。この時点では、λ(アプリケーションC)=1であるため、冗長構成設計手段12は新しいペアとしてアプリケーションAを選択する。
次に、冗長構成設計手段12は、アプリケーションAの稼動サーバが割り当てられた第3の物理サーバ(物理サーバ3)にアプリケーションCの冗長サーバを割り当てる。なお、アプリケーションCの冗長サーバは第1の物理サーバ(物理サーバ1)または第2の物理サーバ(物理サーバ2)に割り当ててもよい。この時点では、λ(アプリケーションC)=0となるため、冗長構成設計手段12はアプリケーションCに対する冗長系の割り当てを終了する。
次に、冗長構成設計手段12は、ソート結果からアプリケーションBを選択し、そのペアとしてアプリケーションAを選択する。ここでは、第1の物理サーバおよび第2の物理サーバにアプリケーションAの稼動サーバが割り当てられ、冗長サーバを割り当てることができる、空いている第1の物理サーバおよび第2の物理サーバが見つかる。したがって、冗長構成設計手段12は、これら第1の物理サーバおよび第2の物理サーバにアプリケーションBの冗長サーバを割り当てる。この時点でλ(アプリケーションB)=0となるため、冗長構成設計手段12はアプリケーションBに対する冗長系の割り当てを終了する。
最後に、冗長構成設計手段12は、ソート結果からアプリケーションAを選択し、そのペアとしてアプリケーションCを選択する。ここでは、第6の物理サーバ(物理サーバ6)にアプリケーションCの稼動サーバが割り当てられ、冗長サーバを割り当てることができる、空いている第6の物理サーバが見つかる。したがって、冗長構成設計手段12は、第6の物理サーバにアプリケーションAの冗長サーバを割り当てる。この時点でλ(アプリケーションA)=0となるため、冗長構成設計手段12はアプリケーションAに対する冗長系の割り当てを終了する。
以上の処理により、全てのアプリケーションに対して冗長系の仮想サーバを割り当てる物理サーバが決定する。最終的に得られる仮想サーバ配置情報は図26に示すようになる。
冗長構成の設計が終了すると、仮想サーバ管理手段14および仮想サーバ制御手段21により図6に示した処理手順にしたがって冗長構成が構築される。
次に、物理サーバ2で障害が発生した場合の縮退処理について図7のフローチャートを参照して説明する。
図7に示したように、縮退構成決定手段13は、入力手段11を介して障害が発生した物理サーバの情報が入力されると(ステップ3000)、該物理サーバを除いた残りの物理サーバで要求された可用性要件を満たす縮退構成を設計しなければならない。縮退構成決定手段13は、最初に縮退処理によって可用性要件を満たす冗長構成に変更可能か否かを判断する(ステップ3001)。
図27は障害が発生した物理サーバの情報の一例を示している。ここでは、図27に示すように第2の物理サーバ、第5の物理サーバおよび第6の物理サーバで障害が発生した場合を考える。
縮退構成決定手段13は、障害が発生した物理サーバの数が3台であり、図19に示したように可用性要件として入力された最大同時故障可能数が「3」であることから、縮退が可能と判定する。
縮退構成決定手段13は、各アプリケーションの処理で必要な最小の仮想サーバの数を満たす縮退構成を決定する(ステップ3002)。本実施例では、アプリケーションAに対応して2台の稼動サーバが動作し、アプリケーションBに対応して1台の稼動サーバが動作しているが、最小稼動レベルを満たすためにはアプリケーションCを実行する稼動サーバが1台必要である。
そこで、縮退構成決定手段13は、アプリケーションCの冗長サーバを探索し、第3の物理サーバおよび第4の物理サーバ上の冗長サーバを検出する。ここでは、アプリケーションAの稼動サーバを1台減らしても最小稼動レベルの要件に違反しないため、縮退構成決定手段13は、第3の物理サーバ3に配置されたアプリケーションAの稼動サーバを冗長サーバに変更し、アプリケーションCの冗長サーバを稼動サーバに変更する。
以上の縮退処理により全てのアプリケーションに対する最小稼動レベルの要件を満たすことになる。縮退構成決定手段13から出力される縮退構成情報の一例を図28に示す。
縮退構成の設計後、図8に示した手順にしたがって冗長構成を変更する。本実施例では、第3の物理サーバに配置した仮想サーバに対する計算機資源の割り当て量を変更して稼動系と冗長系を入れ替える。計算機資源の割り当ての変更はすぐに終了するため、縮退処理を高速に実行できる。
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されものではない。本願発明の構成や詳細は本願発明のスコープ内で当業者が理解し得る様々な変更が可能である。
この出願は、2007年12月26日に出願された特願2007−334441号を基礎とする優先権を主張し、その開示の全てをここに取り込む。

Claims (22)

  1. 管理対象であるコンピュータシステムの可用性要件を入力するための入力手段と、
    前記コンピュータシステムの構成を示す情報であるシステム構成情報および前記コンピュータシステムが備える物理サーバで稼動可能な処理プログラムの数を制限するための制約情報を参照して、前記可用性要件を満たす前記物理サーバに対する前記処理プログラムの配置を決定する冗長構成設計手段と、
    を有し、
    前記可用性要件が、複数の物理サーバで同時に障害が発生しても前記コンピュータシステムを継続して運用できる処理プログラムの数を示す最大同時故障可能数およびサブシステムが提供するサービスで必要な処理プログラムの最小数を示す最小稼動レベルの情報を含む冗長構成管理システム。
  2. 前記処理プログラムは、仮想サーバを実現するためのものである請求項1記載の冗長構成管理システム。
  3. 前記冗長構成設計手段で決定した前記仮想サーバの配置を示す冗長構成情報に基づいて前記物理サーバに配置された前記仮想サーバを管理するための制御要求を出力する仮想サーバ管理手段と、
    前記制御要求にしたがって前記物理サーバに配置した前記仮想サーバの構成を制御する仮想サーバ制御手段と、
    をさらに有する請求項2記載の冗長構成管理システム。
  4. 障害が発生した前記物理サーバの情報、前記システム構成情報および前記制約情報を参照して、前記可用性要件を満たす縮退構成を決定する縮退構成決定手段をさらに有し、
    前記仮想サーバ管理手段は、
    前記冗長構成情報および前記縮退構成決定手段で決定した前記仮想サーバの配置を示す縮退構成情報に基づいて前記物理サーバに配置された前記仮想サーバを管理するための制御要求を出力する請求項3記載の冗長構成管理システム。
  5. 前記冗長構成設計手段は、
    前記可用性要件を満たす、前記コンピュータシステムの冗長化に必要な前記仮想サーバの数を計算する必要サーバ台数計算手段と、
    同一の物理サーバに対して、同一のサブシステムに対応する稼動系の仮想サーバおよび冗長系の仮想サーバを配置しないように前記仮想サーバの配置を決定する仮想サーバ配置決定手段と、
    を有する請求項2から4のいずれか1項記載の冗長構成管理システム。
  6. 前記冗長構成設計手段は、
    前記物理サーバで障害が発生した時、前記可用性要件、前記システム構成情報および前記制約情報を参照して、前記コンピュータシステムを継続して運用できる前記仮想サーバの台数を示す最大同時故障可能数を計算する最大同時故障可能数計算手段を有する請求項2から5のいずれか1項記載の冗長構成管理システム。
  7. 前記可用性要件として入力されるサービスレベルやビジネス要件を、該サービスレベルやビジネス要件で必要な最小の仮想サーバ台数に換算するための換算情報が格納されたサーバ台数換算情報格納部を有し、
    前記冗長構成設計手段は、
    前記サーバ台数換算情報格納部に格納された換算情報を参照し、前記可用性要件として入力されたサービスレベルやビジネス要件を前記最小の仮想サーバ台数に換算する最小サーバ台数計算手段を有する請求項2から6のいずれか1項記載の冗長構成管理システム。
  8. 冗長構成管理サーバが、
    管理対象であるコンピュータシステムの可用性要件が入力されると、前記コンピュータシステムの構成を示す情報であるシステム構成情報および前記コンピュータシステムが備える物理サーバで稼動可能な処理プログラムの数を制限するための制約情報を参照して、前記可用性要件を満たす前記物理サーバに対する前記処理プログラムの配置を決定する
    前記可用性要件が、複数の物理サーバで同時に障害が発生しても前記コンピュータシステムを継続して運用できる処理プログラムの数を示す最大同時故障可能数およびサブシステムが提供するサービスで必要な処理プログラムの最小数を示す最小稼動レベルの情報を含む冗長構成管理方法。
  9. 前記処理プログラムは、仮想サーバを実現するためのものである請求項8記載の冗長管理方法。
  10. 前記冗長構成管理サーバが、
    前記決定した仮想サーバの配置を示す冗長構成情報に基づいて冗長構成を構築すると共に前記物理サーバに配置された前記仮想サーバを管理する請求項9記載の冗長構成管理方法。
  11. 前記冗長構成管理サーバが、
    障害が発生した前記物理サーバの情報が入力されると、該物理サーバの情報、前記システム構成情報および前記制約情報を参照して、前記可用性要件を満たす縮退構成を決定し、
    該決定した仮想サーバの配置を示す縮退構成情報に基づいて縮退構成を構築する請求項10記載の冗長構成管理方法。
  12. 前記冗長構成管理サーバが、
    前記可用性要件を満たす、前記コンピュータシステムの冗長化に必要な前記仮想サーバの数を計算し、
    同一の物理サーバに対して、同一のサブシステムに対応する稼動系の仮想サーバおよび冗長系の仮想サーバを配置しないように前記仮想サーバの配置を決定する請求項9から11のいずれか1項記載の冗長構成管理方法。
  13. 前記冗長構成管理サーバが、
    前記物理サーバで障害が発生した時、前記可用性要件、前記システム構成情報および前記制約情報を参照して、前記コンピュータシステムを継続して運用できる前記仮想サーバの台数を示す最大同時故障可能数を計算する請求項9から12のいずれか1項記載の仮想サーバ冗長構成管理方法。
  14. 前記冗長構成管理サーバが、
    前記可用性要件として入力されるサービスレベルやビジネス要件を該サービスレベルやビジネス要件で必要な最小の仮想サーバ台数に換算するための換算情報を記憶装置に格納しておき、
    前記可用性要件としてサービスレベルやビジネス要件が入力されると、前記換算情報を参照して該サービスレベルやビジネス要件を前記最小の仮想サーバ台数に換算する請求項9から13のいずれか1項記載の冗長構成管理方法。
  15. 管理対象であるコンピュータシステムの可用性要件が入力されると、前記コンピュータシステムの構成を示す情報であるシステム構成情報および前記コンピュータシステムが備える物理サーバで稼動可能な処理プログラムの数を制限するための制約情報を参照して、前記可用性要件を満たす前記物理サーバに対する前記処理プログラムの配置を決定する処理をコンピュータに実行させるためのものであり、
    前記可用性要件が、複数の物理サーバで同時に障害が発生しても前記コンピュータシステムを継続して運用できる処理プログラムの数を示す最大同時故障可能数およびサブシステムが提供するサービスで必要な処理プログラムの最小数を示す最小稼動レベルの情報を含むプログラム。
  16. 前記処理プログラムは、仮想サーバを実現するためのものである請求項15記載のプログラム。
  17. 前記決定した仮想サーバの配置を示す冗長構成情報に基づいて冗長構成を構築すると共に前記物理サーバに配置された前記仮想サーバを管理する処理をコンピュータに実行させるための請求項16記載のプログラム。
  18. 障害が発生した前記物理サーバの情報が入力されると、該物理サーバの情報、前記システム構成情報および前記制約情報を参照して、前記可用性要件を満たす縮退構成を決定し、
    該決定した仮想サーバの配置を示す縮退構成情報に基づいて縮退構成を構築する処理をコンピュータに実行させるための請求項17記載のプログラム。
  19. 前記可用性要件を満たす、前記コンピュータシステムの冗長化に必要な前記仮想サーバの数を計算し、
    同一の物理サーバに対して、同一のサブシステムに対応する稼動系の仮想サーバおよび冗長系の仮想サーバを配置しないように前記仮想サーバの配置を決定する処理をコンピュータに実行させるための請求項16から18のいずれか1項記載のプログラム。
  20. 前記物理サーバで障害が発生した時、前記可用性要件、前記システム構成情報および前記制約情報を参照して、前記コンピュータシステムを継続して運用できる前記仮想サーバの台数を示す最大同時故障可能数を計算する処理をコンピュータに実行させるための請求項16から19のいずれか1項記載のプログラム。
  21. 前記可用性要件として入力されるサービスレベルやビジネス要件を該サービスレベルやビジネス要件で必要な最小の仮想サーバ台数に換算するための換算情報を記憶装置に格納しておき、
    前記可用性要件としてサービスレベルやビジネス要件が入力されると、前記換算情報を参照して該サービスレベルやビジネス要件を前記最小の仮想サーバ台数に換算する処理をコンピュータに実行させるための請求項16から20のいずれか1項記載のプログラム。
  22. 管理対象であるコンピュータシステムの可用性要件および障害が発生した物理サーバの情報を入力するための入力手段と、
    前記コンピュータシステムの構成を示す情報であるシステム構成情報および前記コンピュータシステムが備える物理サーバで稼動可能な仮想サーバの数を制限するための制約情報を参照して、前記可用性要件を満たす前記物理サーバに対する前記仮想サーバの配置を決定する冗長構成設計手段と、
    前記障害が発生した前記物理サーバの情報、前記システム構成情報および前記制約情報を参照して、前記可用性要件を満たす縮退構成を決定する縮退構成決定手段と、
    前記冗長構成情報および前記縮退構成決定手段で決定した前記仮想サーバの配置を示す縮退構成情報に基づいて前記物理サーバに配置された前記仮想サーバを管理するための制御要求を出力する仮想サーバ管理手段と、
    を有し、
    前記可用性要件が、複数の物理サーバで同時に障害が発生しても前記コンピュータシステムを継続して運用できる処理プログラムの数を示す最大同時故障可能数およびサブシステムが提供するサービスで必要な処理プログラムの最小数を示す最小稼動レベルの情報を含む冗長構成管理サーバ。
JP2009547024A 2007-12-26 2008-12-10 冗長構成管理システムおよび方法 Active JP5353712B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009547024A JP5353712B2 (ja) 2007-12-26 2008-12-10 冗長構成管理システムおよび方法

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2007334441 2007-12-26
JP2007334441 2007-12-26
PCT/JP2008/072436 WO2009081736A1 (ja) 2007-12-26 2008-12-10 冗長構成管理システムおよび方法
JP2009547024A JP5353712B2 (ja) 2007-12-26 2008-12-10 冗長構成管理システムおよび方法

Publications (2)

Publication Number Publication Date
JPWO2009081736A1 JPWO2009081736A1 (ja) 2011-05-06
JP5353712B2 true JP5353712B2 (ja) 2013-11-27

Family

ID=40801044

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009547024A Active JP5353712B2 (ja) 2007-12-26 2008-12-10 冗長構成管理システムおよび方法

Country Status (3)

Country Link
US (1) US8719624B2 (ja)
JP (1) JP5353712B2 (ja)
WO (1) WO2009081736A1 (ja)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5211766B2 (ja) * 2008-03-10 2013-06-12 富士通株式会社 資源割り当て装置及びプログラム
US8065559B2 (en) 2008-05-29 2011-11-22 Citrix Systems, Inc. Systems and methods for load balancing via a plurality of virtual servers upon failover using metrics from a backup virtual server
EP2435926A4 (en) * 2009-05-29 2013-05-29 Hewlett Packard Development Co SYSTEM AND METHOD FOR ASSIGNING RESOURCES OF A SERVER TO A VIRTUAL MACHINE
US20110023028A1 (en) * 2009-07-27 2011-01-27 Alcatel-Lucent Usa Inc. Virtualization software with dynamic resource allocation for virtual machines
US8990397B2 (en) * 2009-07-31 2015-03-24 Ntt Docomo, Inc. Resource allocation protocol for a virtualized infrastructure with reliability guarantees
JP5282046B2 (ja) * 2010-01-05 2013-09-04 株式会社日立製作所 計算機システム及びその可用化方法
US8255508B2 (en) 2010-03-24 2012-08-28 International Business Machines Corporation Administration of virtual machine affinity in a data center
US9367362B2 (en) * 2010-04-01 2016-06-14 International Business Machines Corporation Administration of virtual machine affinity in a cloud computing environment
US8572612B2 (en) 2010-04-14 2013-10-29 International Business Machines Corporation Autonomic scaling of virtual machines in a cloud computing environment
US8631406B2 (en) * 2010-06-30 2014-01-14 Sap Ag Distributed cloud computing architecture
US11307930B1 (en) 2010-11-29 2022-04-19 Pure Storage, Inc. Optimized selection of participants in distributed data rebuild/verification
US10372350B2 (en) * 2010-11-29 2019-08-06 Pure Storage, Inc. Shared ownership of namespace ranges
US10922179B2 (en) 2010-11-29 2021-02-16 Pure Storage, Inc. Post rebuild verification
EP2993585B1 (en) 2010-12-27 2017-06-28 Amplidata NV Distributed object storage system comprising performance optimizations
JP5767480B2 (ja) * 2011-01-31 2015-08-19 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 情報処理装置、情報処理システム、配置構成決定方法、プログラムおよび記録媒体
WO2012144647A1 (ja) 2011-04-20 2012-10-26 日本電気株式会社 仮想マシン管理装置、仮想マシン管理方法、及び、プログラム
EP2819020A4 (en) * 2012-02-20 2015-06-24 Mitsubishi Electric Corp INFORMATION SYSTEM MANAGEMENT DEVICE AND INFORMATION SYSTEM MANAGEMENT METHOD AND PROGRAM
JP6128131B2 (ja) * 2012-10-12 2017-05-17 富士通株式会社 情報処理装置、情報処理方法、及び情報処理プログラム
US20140129699A1 (en) * 2012-11-06 2014-05-08 Mark E. Jeftovic System and method for maintaining domain name service
JP6179119B2 (ja) * 2013-02-19 2017-08-16 日本電気株式会社 管理装置、管理方法、及び管理プログラム
US11182203B2 (en) 2016-12-06 2021-11-23 Vmware, Inc. Systems and methods to orchestrate infrastructure installation of a hybrid system
US10338981B2 (en) 2016-12-06 2019-07-02 Vmware, Inc Systems and methods to facilitate infrastructure installation checks and corrections in a distributed environment
US10462123B2 (en) 2016-12-06 2019-10-29 Vmware, Inc. Systems and methods for cloning an agent in a distributed environment
US11153297B2 (en) 2016-12-06 2021-10-19 Vmware, Inc. Systems and methods to facilitate certificate and trust management across a distributed environment
JP6950437B2 (ja) * 2017-10-10 2021-10-13 富士通株式会社 情報処理システム、情報処理装置及びプログラム
US10721631B2 (en) 2018-04-11 2020-07-21 At&T Intellectual Property I, L.P. 5D edge cloud network design

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0827735B2 (ja) * 1987-03-26 1996-03-21 株式会社日立製作所 分散システムにおけるバツクアツプ方式
JPH08263454A (ja) * 1995-03-23 1996-10-11 Hitachi Ltd 障害回復処理方法
JP2003330740A (ja) * 2002-05-15 2003-11-21 Hitachi Ltd 多重化計算機システム、論理計算機の割当方法および論理計算機の割当プログラム
JP2004318578A (ja) * 2003-04-17 2004-11-11 Hitachi Ltd 情報処理システム
JP2006163963A (ja) * 2004-12-09 2006-06-22 Hitachi Ltd ディスク引き継ぎによるフェイルオーバ方法
WO2008099453A1 (ja) * 2007-02-09 2008-08-21 Fujitsu Limited 縮退方法および情報処理装置

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS576945A (en) 1980-06-13 1982-01-13 Nec Corp Fault processing system of information process system
US20040205414A1 (en) * 1999-07-26 2004-10-14 Roselli Drew Schaffer Fault-tolerance framework for an extendable computer architecture
JP3621634B2 (ja) 2000-08-08 2005-02-16 日本電信電話株式会社 冗長構成切替システム
US20030135609A1 (en) * 2002-01-16 2003-07-17 Sun Microsystems, Inc. Method, system, and program for determining a modification of a system resource configuration
US20050044301A1 (en) * 2003-08-20 2005-02-24 Vasilevsky Alexander David Method and apparatus for providing virtual computing services
JP3861087B2 (ja) 2003-10-08 2006-12-20 株式会社エヌ・ティ・ティ・データ 仮想マシン管理装置及びプログラム
JP4315016B2 (ja) 2004-02-24 2009-08-19 株式会社日立製作所 コンピュータシステムの系切替方法
US8914606B2 (en) 2004-07-08 2014-12-16 Hewlett-Packard Development Company, L.P. System and method for soft partitioning a computer system
JP2006072772A (ja) 2004-09-03 2006-03-16 Nec Corp サーバ構築支援システム、サーバ構築支援装置、サーバ構築支援方法及びそのプログラム
US9329905B2 (en) * 2004-10-15 2016-05-03 Emc Corporation Method and apparatus for configuring, monitoring and/or managing resource groups including a virtual machine
US20060085668A1 (en) * 2004-10-15 2006-04-20 Emc Corporation Method and apparatus for configuring, monitoring and/or managing resource groups
JP4671399B2 (ja) 2004-12-09 2011-04-13 株式会社日立製作所 データ処理システム
US7694298B2 (en) * 2004-12-10 2010-04-06 Intel Corporation Method and apparatus for providing virtual server blades
JP4733399B2 (ja) * 2005-01-28 2011-07-27 株式会社日立製作所 計算機システム、計算機、ストレージ装置及び管理端末
US20060212677A1 (en) * 2005-03-15 2006-09-21 Intel Corporation Multicore processor having active and inactive execution cores
JP4544146B2 (ja) 2005-11-29 2010-09-15 株式会社日立製作所 障害回復方法
US8171466B2 (en) * 2006-05-16 2012-05-01 Oracle International Corporation Hitless application upgrade for SIP server architecture
US7793147B2 (en) * 2006-07-18 2010-09-07 Honeywell International Inc. Methods and systems for providing reconfigurable and recoverable computing resources
US7788464B2 (en) * 2006-12-22 2010-08-31 Microsoft Corporation Scalability of virtual TLBs for multi-processor virtual machines
US8554981B2 (en) * 2007-02-02 2013-10-08 Vmware, Inc. High availability virtual machine cluster
US8572735B2 (en) * 2007-03-29 2013-10-29 George Mason Research Foundation, Inc. Attack resistant continuous network service trustworthiness controller
US20090013029A1 (en) * 2007-07-03 2009-01-08 Childress Rhonda L Device, system and method of operating a plurality of virtual logical sites
US20090063747A1 (en) * 2007-08-28 2009-03-05 Rohati Systems, Inc. Application network appliances with inter-module communications using a universal serial bus
US8117495B2 (en) * 2007-11-26 2012-02-14 Stratus Technologies Bermuda Ltd Systems and methods of high availability cluster environment failover protection

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0827735B2 (ja) * 1987-03-26 1996-03-21 株式会社日立製作所 分散システムにおけるバツクアツプ方式
JPH08263454A (ja) * 1995-03-23 1996-10-11 Hitachi Ltd 障害回復処理方法
JP2003330740A (ja) * 2002-05-15 2003-11-21 Hitachi Ltd 多重化計算機システム、論理計算機の割当方法および論理計算機の割当プログラム
JP2004318578A (ja) * 2003-04-17 2004-11-11 Hitachi Ltd 情報処理システム
JP2006163963A (ja) * 2004-12-09 2006-06-22 Hitachi Ltd ディスク引き継ぎによるフェイルオーバ方法
WO2008099453A1 (ja) * 2007-02-09 2008-08-21 Fujitsu Limited 縮退方法および情報処理装置

Also Published As

Publication number Publication date
US8719624B2 (en) 2014-05-06
WO2009081736A1 (ja) 2009-07-02
JPWO2009081736A1 (ja) 2011-05-06
US20100293409A1 (en) 2010-11-18

Similar Documents

Publication Publication Date Title
JP5353712B2 (ja) 冗長構成管理システムおよび方法
JP5526784B2 (ja) 縮退構成設計システムおよび方法
JP4620455B2 (ja) サーバ連結環境のための業務継続ポリシー
JP5851503B2 (ja) 高可用性仮想機械環境におけるアプリケーションの高可用性の提供
EP1806657B1 (en) Operation management program, operation management method, and operation management device
US11936731B2 (en) Traffic priority based creation of a storage volume within a cluster of storage nodes
US20100235431A1 (en) Datacenter synchronization
JP2007299161A (ja) San管理方法およびsan管理システム
CN110609699B (zh) 维护存储系统的组件的方法、电子设备和计算机可读介质
CN114174993A (zh) 优化集群基础设施中的集群应用
KR20200080458A (ko) 클라우드 멀티-클러스터 장치
US11128708B2 (en) Managing remote replication in storage systems
JP6135226B2 (ja) 情報処理装置、情報処理方法、ストレージシステム及びコンピュータプログラム
JP5930029B2 (ja) 管理装置およびログ採取方法
US11294591B2 (en) Apparatus configured to create extended configuration proposal of storage system including multiple notes
US10884648B2 (en) Temporary relocation of data within local storage of a dispersed storage network
WO2016046951A1 (ja) 計算機システム及びそのファイル管理方法
US9081748B2 (en) Dynamic redundancy management
JP6931294B2 (ja) 接続先決定装置、接続先決定方法、及びプログラム
Li et al. High-Available Cloud Platform Based on OpenStack
JP2023119489A (ja) 計算機システム、ボリューム配置管理装置、及びボリューム配置管理方法
CN113722393A (zh) 分布式平台的控制方法、装置及电子设备
CN115562562A (zh) 基于客户端/服务器架构管理计算系统的方法、设备和程序产品

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110905

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121204

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130129

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130730

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130812

R150 Certificate of patent or registration of utility model

Ref document number: 5353712

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150