JP2010244524A - 仮想サーバの移動方法の決定方法及びその管理サーバ - Google Patents

仮想サーバの移動方法の決定方法及びその管理サーバ Download PDF

Info

Publication number
JP2010244524A
JP2010244524A JP2010043671A JP2010043671A JP2010244524A JP 2010244524 A JP2010244524 A JP 2010244524A JP 2010043671 A JP2010043671 A JP 2010043671A JP 2010043671 A JP2010043671 A JP 2010043671A JP 2010244524 A JP2010244524 A JP 2010244524A
Authority
JP
Japan
Prior art keywords
virtual server
server
virtual
movement
physical
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.)
Pending
Application number
JP2010043671A
Other languages
English (en)
Inventor
Yujiro Ichikawa
雄二郎 市川
Yoshifumi Takamoto
良史 高本
Keisuke Hatasaki
恵介 畑▲崎▼
Takashi Tameshige
貴志 爲重
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2010043671A priority Critical patent/JP2010244524A/ja
Publication of JP2010244524A publication Critical patent/JP2010244524A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
    • 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
    • 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)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)

Abstract

【課題】
システムの現況に応じて仮想サーバの移動方法を決定することで、可用性を向上する。
【解決手段】
仮想化システムが使用する物理資源量を示す使用物理資源量、仮想化システムを稼動させる物理サーバの性能を示す最大物理資源量とからなる物理資源情報、仮想化システムが仮想サーバに割り当てている物理資源量の関係を示す割当物理資源係数、仮想サーバが使用する物理資源量の関係を示す使用仮想資源係数とからなる仮想資源情報、移動手段の実行に必要な物理資源量を示す必要物理資源量、仮想サーバの使用仮想資源係数の変化が各移動手段による仮想サーバの移動所要時間に与える影響の度合いを示す変動率、使用物理資源量を基準とした基準実行時間とからなる移動手段情報から、前記仮想サーバの物理資源の使用量、前記使用物理資源量からの使用物理資源量の変化値、前記各移動手段による仮想サーバの移動所要時間を算出する。
【選択図】図1

Description

本発明は、仮想化システムを備える計算機システムに係り、特に仮想サーバの移動方法(手段及び実行順序)を決定する技術に関する。
仮想化システムには、保守、物理障害発生時のフェイルオーバーや、負荷分散などの目的で、仮想サーバを仮想化システム間で移動する手段が存在する(例えば、特許文献1、特許文献2)。これらの移動手段は、それぞれ停止時間、実行速度、必要リソースが異なるため、管理者は各仮想サーバで稼動する業務の可用性を考慮した上で、事前に仮想サーバごとの移動手段を決定する。
特開2004−234114号公報 特開2005−327279号公報
しかし、上記従来の方法では、仮想サーバを移動する際のシステムの稼働状況によっては、事前に決定した移動手段では、管理者が想定した可用性を満たせない場合がある。そこで、本発明が解決しようとする課題は、仮想サーバの移動時に、システムの稼動状態に応じて、仮想サーバの移動手段及び実行順序を決定することである。
本発明の、仮想サーバの移動方法の決定方法及びそれを実行する管理サーバは次のような態様である。管理サーバは物理サーバに接続し、物理サーバ内で動作する仮想化システム上で稼動する仮想サーバを移動するための移動方法を決定する。その決定方法は、仮想化システムに対応して、仮想化システムが使用する物理資源量を示す使用物理資源量と、仮想化システムを稼動させる物理サーバの性能を示す最大物理資源量とからなる物理資源情報と、仮想サーバに対応して、物理サーバの最大物理資源量に対する、仮想化システムが仮想サーバに割り当てている物理資源量の関係を示す割当物理資源係数と、仮想サーバに割り当てている物理資源量に対する、仮想サーバが使用する物理資源量の関係を示す使用仮想資源係数とからなる仮想資源情報と、仮想サーバの複数の移動手段に対応して、移動手段の実行に必要な物理資源量を示す必要物理資源量と、仮想サーバの使用仮想資源係数の変化が各移動手段による仮想サーバの移動所要時間に与える影響の度合いを示す変動率と、所定の使用物理資源量を基準とした基準実行時間とからなる移動手段情報と記憶し、前記最大物理資源量と前記使用仮想資源係数と前記割当物理資源係数より前記仮想サーバの物理資源の使用量を算出し、前記算出した物理資源の使用量と前記所定の使用物理資源量より前記所定の使用物理資源量からの使用物理資源量の変化値を算出し、算出した変化値と前記変動率と前記基準実行時間より各移動手段による仮想サーバの移動所要時間を算出する。
本発明の他の態様は、仮想サーバの移動所要時間の短い移動手段を選択する。
本発明のさらに他の態様は、仮想サーバが複数あるとき、各仮想サーバに関して選択した移動手段に対応する移動所要時間の短い仮想サーバからの、移動手段による仮想サーバの移動順序とする。
本発明のさらに他の態様は、移動手段の並列実行の許容値を示す最大並列度を格納した並列性情報テーブルを設け、最大並列度を超えない範囲で、実行順序に従って、複数の仮想サーバに対応する各移動手段を並列実行する。
本発明のさらに他の態様は、複数の仮想サーバの各々が遂行する業務および業務の優先度との関係を示す業務情報テーブルを設け、優先度が高い業務を遂行する仮想サーバを選択し、仮想サーバに対応する移動手段を実行する。
本発明のさらに他の態様は、業務情報テーブルは、業務のダウン許容時間を含み、ダウン許容時間を参照して、事前に停止する仮想サーバを決定する。
本発明のさらに他の態様は、物理サーバに発生する障害を示すリスク識別子とその障害が発生したときの動作条件との対応を示すリスク情報テーブルを設け、動作条件に反しない範囲で、仮想サーバの移動手段を選択する。
本発明によれば、仮想サーバの移動時に、システムの現況に応じて仮想サーバの移動手段及び実行順序を決定することで、可用性を向上することができる。
計算機システムの構成を示す図である。 物理サーバの構成を示す図である。 管理サーバの構成を示すブロック図である。 移動手段情報テーブルの構成を示す図である。 仮想資源情報テーブルの構成を示す図である。 物理資源情報テーブルの構成を示す図である。 フェイルオーバー情報テーブルの構成を示す図である。 移動スケジュール情報テーブルの構成を示す図である。 管理サーバ及び仮想化システム間の処理シーケンスの例である。 フェイルオーバー情報決定部の処理フローチャートである。 第1の移動スケジュール情報決定部の処理フローチャートである。 移動方法決定部の稼動方法を選択するGUIの例を示す図である。 移動方法決定部を手動で稼動させるGUIの例を示す図である。 移動手段情報テーブルを設定するGUIの例を示す図である。 並列性情報テーブルの構成を示す図である。 第2の移動スケジュール情報決定部の処理フローチャートである。 並列性情報テーブルを設定するGUIの例を示す図である。 業務情報テーブルの構成を示す図である。 第3の移動スケジュール情報決定部の処理フローチャートである。 業務情報テーブルを設定するGUIの例を示す図である。 第4の移動スケジュール情報決定部の処理フローチャートである。 第5の移動スケジュール情報決定部の処理フローチャートである。 事前停止対象の業務を遂行する仮想サーバの移動スケジュール情報を決定する処理フローチャートである。 第6の移動スケジュール情報決定部の処理フローチャートである。 リスク情報テーブルの構成を示す図である。 第7の移動スケジュール情報決定部の処理フローチャートである。
以下、本発明の実施例を添付図面に基づいて説明する。
図1は、計算機システムの構成を示す。この計算機システムは、管理サーバ100、1つ以上の物理サーバ101、ストレージ装置102、及び1つ以上のネットワーク130を有する。
物理サーバ101は、プログラム制御により動作するコンピュータであり、ネットワーク130に接続するNIC(Network Interface Card)140、及びストレージ装置102に接続されるHBA(Host Bus Adaptor)を備える。物理サーバ101は、ネットワーク130を介して、管理サーバ100、他の物理サーバ101、及びストレージ装置102に接続する。また、物理サーバ101内で、仮想化システム120が動作する。
仮想化システム120は、仮想サーバ121を動作させるためのプログラムであり、仮想化システムが有する物理資源、CPU(Central Processing Unit)、メモリなどを分割し、仮想資源として仮想サーバ121に割当てる。
管理サーバ100は、プログラム制御により動作するコンピュータであり、管理サーバ100のユーザ(本計算機システムの管理者)が使用する入力装置131及び出力装置132を接続し、ネットワーク130に接続するNIC(Network Interface Card)142を備える。管理サーバ100は、ネットワーク130を介して、各物理サーバ101、及びストレージ装置102に接続する。管理サーバ100は、移動方法決定部110を動作させ、また移動方法決定部110の動作に必要なテーブル群111を有する。テーブル群111に含まれる各テーブルは、図4以降のテーブル構成例を用いて後述する。
ストレージ装置102は、FC(Fiber Channel)及びLANインタフェースを備え、1つ以上のディスクボリューム103を含む記憶装置システムである。ディスクボリューム103には、仮想サーバ121のイメージ(仮想サーバ121として動作する実行プログラム)が格納されている。
ネットワーク130は、1つ以上のネットワーク機器、及びそれらが相互に接続されて構成されるネットワークシステムを示す。ネットワーク機器は、具体的にはネットワークスイッチやルータ、ロードバランサ、及びファイアウォールなどである。
図2に、物理サーバ101の構成を示す。物理サーバ101は、メモリ200、ローカルディスク201、NIC140、プロセッサ(CPU)203、HBA141を有する。ローカルディスク201は、補助記憶装置として使用する。尚、物理サーバ101は補助記憶装置としてフラッシュメモリなどを使用しても良い。また物理サーバ101は複数のNIC及びHBAを有しても良い。
メモリ200は、仮想化システム120を動作させるプログラムを保持する。仮想化システム120内では、仮想サーバ121、資源管理部212、障害管理部213、及び構成管理部214が動作する。
仮想サーバ121は、物理コンピュータをエミュレートした論理コンピュータであり、仮想化システム120によって割当てられた仮想資源を使用して、仮想サーバ121内で、OS(Operating System)210、アプリケーション211などのプログラムを動作させる。
資源管理部212は、物理サーバ101及び仮想サーバ121の負荷情報(CPU使用率、メモリ使用量など)を計測し、後述する情報取得部302からの指示に基づいて、現況の負荷情報を整形し、整形した負荷情報を情報取得プログラム302へ送信する。尚、資源管理部212が、情報取得部302へ送信する情報には、過去に計測した情報を含んでも良い。
障害管理部213は、物理サーバ101及び仮想化システム120で発生した障害(CPU温度上昇、ファン回転数異常など)を検知し、情報取得部302からの指示に基づいて、障害内容を示す情報を整形し、整形した情報を情報取得部302へ送信する。
構成管理部214は、仮想化システム120及び各仮想サーバ121に関する構成情報(ホスト名、仮想サーバ名など)を収集し、情報取得部302のから指示に基づいて、収集した情報を整形し、整形した情報を情報取得部302へ送信する。
図3に、管理サーバ100の構成を示す。管理サーバ100は、メモリ320、ローカルディスク321、NIC142、CPU322を有する。ローカルディスク321は、補助記憶装置として使用する。尚、管理サーバ100は、補助記憶装置としフラッシュメモリなどを使用しても良い。また管理サーバ100は複数のNICを、有しても良い。
メモリ200に、移動方法決定部110、テーブル群110を保持する。移動方法決定部110は、フェイルオーバー情報決定部300、移動スケジュール情報決定部301、情報取得部302、移動手段呼出部303を含む。テーブル群111は、移動手段情報テーブル310、仮想資源情報テーブル311、物理資源情報テーブル312、フェイルオーバー情報テーブル313、移動スケジュール情報テーブル314、並列性情報テーブル315、業務情報テーブル316、及びリスク情報テーブル317を含む。尚、本実施例では、移動方法決定部110は、CPU(プロセッサ)により実行されるプログラムとして説明するが、管理サーバ100に搭載するハードウェアやファームウェア、またはそれらの組み合わせにより実装しても良い。また、移動方法決定部110は、管理サーバ100が備える補助記憶装置321に格納され、実行時にはメモリ320にロードされてから、CPUによって実行される。
フェイルオーバー情報決定部300は、移動方法決定部110からの指示により、フェイルオーバー情報テーブル313を作成する。移動スケジュール決定部301は、移動方法決定部110からの指示により、移動スケジュール情報テーブル314を作成する。情報取得部302は、フェイルオーバー情報決定部300及び移動スケジュール情報決定部301の動作に必要な情報を、各物理サーバ101内からネットワーク130を介して取得する。移動手段呼出部303は、仮想化システム120及び仮想サーバ121を動作させ、仮想サーバ121を移動させる。
図4に、移動手段情報テーブル310の例を示す。移動手段情報テーブル310は、移動手段のスペック情報を保持する。カラム400は、移動手段を識別するための手段識別子である。具体的には、手段提供者、及びユーザ(またはシステム管理者)が定義した名称である。カラム401は、仮想サーバの資源使用状況の変化と、仮想サーバの移動所要時間との関係(変動率)を示す。変動率401は、仮想サーバが使用する物理資源量の変化が移動所要時間に与える影響の度合いを示す。物理資源量とは、例えば、CPUの場合はCPU動作周波数、メモリの場合はメモリ容量、N/W(ネットワーク)の場合はネットワーク通信の速度、ディスクの場合はディスク容量、などである。変動率401には、CPU、メモリ、N/W、ディスクなどの物理資源に対応するサブカラムを備え、これらの物理資源の使用量の変化が移動所要時間に与える影響の度合いを個々に示す。カラム402は、移動手段の実行に必要となる物理資源量を示す。必要物理資源量402は、CPU、メモリ、N/W、ディスクなどの物理資源に対応するサブカラムを備え、これらの物理資源の必要量を示す。カラム403は、移動手段の基準実行時間(秒)(例えば、最速所要時間、など)を示す。
尚、本実施例では、変動率401の各値を、基準実行時間403を決定したときの使用物理資源量を基準とし、CPUなどの各物理資源の使用量が2倍となった場合の移動所要時間の変動倍率として説明するが、X倍(Xは整数または実数値)となった場合の変動倍率など、別の計算方法による値を用いても良い。たとえば、図5を用いて後述する識別子がVM1の仮想サーバ121が図5に示す値の資源量を使用しているとする。ところが、ライブマイグレーションにより移動しようとしたとき、対象の仮想サーバ121が、所定のCPUの使用量が2倍、所定のメモリの1.5倍を使用しているとすると、その仮想サーバ121の移動時間(実行時間)は、物理資源毎に使用仮想資源係数502のと前記所定の使用量からの変化値(例えば比率)を求め、求めた変化値とそれに対応する物理資源の変動率401と基準実行時間403より移動所要時間を算出(例えば積)する。図4の1行目および図5の1行目の数値例を用いると、3×(2 / 2×2)×(2.5 / 2×1.5)=3×2×1.875=11.25秒の実行時間を要することになる。
図5に、仮想資源情報テーブル311の例を示す。仮想資源情報テーブル311は、仮想サーバ121の物理資源の使用状況を保持する。カラム500は仮想サーバ121を識別するための仮想サーバ識別子であり、カラム501は、仮想化システム120を識別するためのホスト識別子である。これらの識別子は、具体的には、手段提供者、及びユーザ(またはシステム管理者)が定義した名称である。カラム502は、仮想サーバ121の物理資源の使用状況(使用仮想資源係数)を示す。本実施例では、使用仮想資源係数502は、仮想化システム120が仮想サーバ121に割り当てた物理資源量に対する、仮想サーバ121が使用する物理資源量の比率として示すが、絶対値や、同一仮想化システム120上で稼動する他の仮想サーバ121を1とした場合の相対値、仮想化システム120が複数の仮想サーバ121間で共有するよう割り当てた場合などは、重み値を含めても良い。また、使用仮想資源値502は、CPU、メモリ、N/W、ディスクなどの物理資源に対応するサブカラムを備え、これらの物理資源の使用状況を示す。カラム503は、仮想化システム120の仮想サーバ121への物理資源の割当状況 (割当物理資源係数)を示す。本実施例では、割当物理資源係数503は、物理サーバ101が持つ物理資源量に対する、仮想化システム120が仮想サーバ121に割り当てた物理資源量の比率として示すが、絶対値や、同一仮想化システム120上で稼動する他の仮想サーバ121を1とした場合の相対値、仮想化システム120が複数の仮想サーバ121間で共有するよう割り当てた場合などは、重み値を含めても良い。また、割当物理資源係数503は、CPU、メモリ、N/W、ディスクなどの物理資源に対応するサブカラムを備え、これらの物理資源の割当状況を示す。
図6は、物理資源情報テーブル312の例を示す。物理資源情報テーブル312は、仮想化システム120の物理資源の使用状況を保持する。カラム600は、仮想化システム120を識別するためのホスト識別子である。具体的には、手段提供者、及びユーザ(またはシステム管理者)が定義した名称である。カラム601は、仮想化システム120が使用する物理資源量(使用物理資源量)を示す。使用物理資源量601は、サブカラムとして、CPU、メモリ、N/W、ディスクなどを備え、これらの各コンポーネントの使用量を示す。カラム602は、仮想化システムが持つ物理資源の最大量(最大物理資源量)を示す。最大物理資源量602は、物理サーバの性能(能力)であり、具体的には、CPU動作周波数、メモリ容量、ネットワーク通信の速度、ストレージ容量の最大量を示す。
尚、本実施例では、カラム602の値を、仮想化システムが単一のCPUを持つ場合として説明するが、複数のCPUを持つ場合、及び複数のコアを備える単一のCPUを持つ場合などによる値を用いても良い。
図7に、フェイルオーバー情報テーブル313の例を示す。フェイルオーバー情報テーブル313は、仮想サーバ121の、移動手段毎の移動所要時間を保持する。カラム700は、仮想サーバ121を識別するための仮想サーバ識別子である。具体的には、ユーザ(またはシステム管理者)が定義した名称である。カラム701は、仮想サーバの、移動手段毎の移動所要時間(所要時間)を示す。所要時間701は、各サブカラムに、図4に示した手段識別子400に対応した所要時間である。
図8に、移動スケジュール情報テーブル314の例を示す。移動スケジュール情報テーブル314は、仮想サーバ121の移動方法を保持する。カラム800は、仮想サーバ121を移動する順番(実行順序)を示す。カラム801は、仮想サーバ121を識別するための仮想サーバ識別子である。具体的には、ユーザ(またはシステム管理者)が定義した名称である。カラム802は、仮想サーバ121の移動に用いる移動手段(手段識別子)を示す。カラム803は、仮想サーバ121の移動先を示す。具体的には、移動先の仮想化システム120を識別するための移動先ホスト識別子である。カラム804は、仮想サーバ121の移動の開始時刻を示す。具体的には、最初に移動する仮想サーバの開始時刻を0とした相対時刻である。
尚、本実施例では、開始時刻の値を、秒単位の整数値とするが、マイクロ秒など他の単位を用いても良い。
図9に、管理サーバ100及び仮想化システム120の間の処理シーケンスの例を示す。情報取得部302からの指示に基づいて、仮想化システム120内の資源管理部212、障害管理部213、および構成管理部214は、それぞれ管理する情報を整形し、情報取得部302に送信する(処理900)。情報取得部302は、資源管理部212、障害管理部213、および構成管理部214から送信された仮想化システム120の情報を受信する(処理901)。移動方法決定部110は、取得した仮想化システム120の情報を元に、仮想資源情報テーブル311および物理資源情報テーブル312を更新する(処理902)。
管理サーバ100は、仮想化システム120が動作する物理サーバ101の障害の予兆を検出することなどを契機とし(処理903)、移動方法決定部は、契機となった仮想化システム120上で稼動する仮想サーバ121に関するフェイルオーバー情報を決定する(処理904)。尚、本実施例では、処理903で検知する契機を物理サーバ101の障害予兆検出として説明するが、物理サーバ101を構成するハードウェアの保守、複数の仮想化システム120間における負荷分散、ハードウェアまたはソフトウェアからのイベント通知、及びユーザが入力装置131及び出力装置132によるGUI(Graphical User Interface)を通して設定した情報を契機として用いても良い。移動方法決定部110は、仮想サーバ121の移動手段及び実行順序(移動スケジュール情報)を決定する(処理905)。
移動方法決定部110は、移動スケジュール情報が決定されたかを確認する(処理906)。移動スケジュール情報が決定されていなければ、処理を終了する。
移動方法決定部110は、作成された移動スケジュール情報に基づいて、第1の実行順序を持つ仮想サーバ121の移動を、移動手段呼出部303に対し指示する(処理907)。移動手段呼出部303は、仮想サーバ121と、仮想サーバ121の移動元および移動先の仮想化システム120とにより協働する、仮想サーバ121の移動手段を呼び出す(処理908)。仮想化システム120は、仮想サーバ121を移動する(処理909)。第1の実行順序をもつ仮想サーバ121の移動完了後、移動方法決定部110は、移動スケジュール情報が示す第2の実行順序以降の実行順序の仮想サーバ121に関して処理907を繰り返す。移動方法決定部110による処理907を実行に伴って、移動手段呼出部303による処理908、仮想化システム120による処理909を実行する。
図10に、移動方法決定部110に含まれるフェイルオーバー情報決定部300の処理フローチャートを示す。フェイルオーバー情報決定部300の処理は、図9の処理904である。フェイルオーバー情報決定部300は、移動する仮想サーバ121に関してフェイルオーバー情報が未決定、即ちフェイルオーバー情報テーブル313に移動する仮想サーバ121のエントリが存在しないものがあるかを確認する(ステップ1000)。存在しなければ処理を終了する。存在するならば、移動する仮想サーバ121は、移動方法決定部110が、フェイルオーバー情報決定部300の処理を開始する前に、仮想化システム120及び物理サーバ101の障害予兆検知などに基づいて決定する。
フェイルオーバー情報が未決定の121仮想サーバの内、任意の121仮想サーバを1つ選択する(ステップ1001)。移動手段情報テーブル310の各移動手段の手段識別子400、変動率401、必要物理資源量402、実行速度403を取得する(ステップ1002)。ステップ1001において選択した仮想サーバ121に関する仮想資源情報テーブル311の仮想サーバ識別子500を持つレコードを取得する(ステップ1003)。ステップ1003において取得したレコードのホスト識別子501と同じホスト識別子600を持つ物理資源情報テーブル312のレコードの最大物理資源量602を取得する(ステップ1004)。
次に、ステップ1002、ステップ1003、及びステップ1005において取得した情報を用いて、フェイルオーバー情報決定部300は、ステップ1001において選択した仮想サーバ121の、各移動手段を用いる時の移動所要時間を決定する(ステップ1005)。移動所要時間は、使用仮想資源係数502、割当物理資源係数503、最大物理資源量602より、仮想サーバ121の使用中の物理資源量を求め、求めた物理資源量から、実行速度403を決定したときの使用物理資源量をベースとした、CPU、メモリなど物理資源毎にベースとなる使用物理資源量からの変化値(例えば比率)を求め、求めた変化値、変動率401、及び実行速度より算出(例えば積)する。
ステップ1003において取得した仮想サーバ識別子500、ステップ1005において決定した移動所要時間による新規レコードを、フェイルオーバー情報テーブル313に追加する(ステップ1006)。ステップ1000に戻り、フェイルオーバー情報が未決定の他の仮想サーバ121に関して処理を繰り返す。以上の処理により図7に示したフェイルオーバー情報テーブル313が作成される。
図11に、移動方法決定部110の移動スケジュール情報決定部301の処理フローチャートを示す。移動スケジュール情報決定部301の処理は、図9の処理905である。移動スケジュール情報決定部301は、移動する仮想サーバ121に関して移動手段が未決定、即ち、移動スケジュール情報テーブル314に移動する仮想サーバ121の仮想サーバ識別子801を含むエントリが存在しないものがあるかを確認する(ステップ1100)。存在しなければ処理を終了する。移動する仮想サーバ121は、移動方法決定部110が、フェイルオーバー情報決定部300を開始する前に、フェイルオーバー情報テーブル313の情報に基づいて決定する。
フェイルオーバー情報テーブル313にある、移動する仮想サーバ121の移動手段が未決定、即ちフェイルオーバー情報テーブル313に移動する仮想サーバ121の仮想サーバ識別子700が存在し、その仮想サーバ121の仮想サーバ識別子801を含むエントリが移動スケジュール情報テーブル315に存在しない仮想サーバ121のレコードをフェイルオーバー情報テーブル313から取得する(ステップ1101)。複数の仮想サーバ121が移動対象の場合、所要時間701の値が最も少ない、本処理において一度も選択されていない、仮想サーバ121及び移動手段のセットを選択する(ステップ1102)。ステップ1102において選択した移動手段に関する、移動手段情報テーブル310の手段識別子400を持つレコードの必要物理資源量402を取得する(ステップ1103)。ステップ1102において選択した仮想サーバに関する、仮想資源情報テーブル311の仮想サーバ識別子500を持つレコードのホスト識別子501を取得する(ステップ1104)。ステップ1104において取得した、ホストの識別子501と同じホスト識別子600を持つ、物理資源情報テーブル312のレコードを取得する(ステップ1105)。
ステップ1103、ステップ1104、及びステップ1105において取得した情報を用いて、移動スケジュール情報決定部301は、ステップ1102において選択した仮想サーバ及び移動手段が実行可能か評価する(ステップ1106)。実行可能であればステップ1107へ進み、実行不可能であればステップ1102へ戻る。実行可否の評価は、使用物理資源量601と必要物理資源量402の、CPU、メモリなどのコンポーネント毎の和を計算し、最大物理資源量602を超えるコンポーネントが1つも存在しないとき、仮想サーバ121及びその移動手段は実行可能と判断する。
次に、ステップ1102において選択した仮想サーバ121及び移動手段に関する、仮想サーバ識別子801、手段識別子802、実行順序800、移動先ホスト識別子803を、移動スケジュール情報テーブル315に新規レコードとして追加する(ステップ1107)。実行順序800は、先頭レコードからの連続的な順番とし、移動先ホスト識別子は、最も負荷の低い仮想化システム120を稼動させている物理サーバ101のホスト識別子として、移動方法決定部110が決定する。
以上によれば、移動方法決定部110は、システムの可用性を向上する、仮想サーバ121の移動手段及び実行順序を、仮想化システム120及び仮想サーバ121の負荷、各移動手段のスペック情報310から決定することができる。
図12に、移動方法決定部110が、ユーザに移動方法決定部110の動作の有効/無効を設定させるために提供するUI(User Interface)の例として、GUI(Graphical User Interface)の例を示す。このGUIは、管理サーバ100に接続した出力装置132や、管理サーバ100にネットワーク130を介して接続された他の端末の表示装置等にブラウザや専用のプログラム、およびテキストなどを用いて表示する。
移動設定のウィンドウ1200には、操作のためのボタン等が表示される。ユーザは、ボタン1201をクリックし、設定対象の仮想化システム120を選択する。選択されたボタン1201は、図の例では二重丸(中が黒丸)になることを示している。ホスト1202に、選択対象の仮想化システム120を識別できる識別子として、仮想化システム120が稼動する物理サーバ101のホスト識別子1202を表示する。有効/無効1203では、移動方法決定部110を、ボタン1201で選択した仮想化システム120に対して使用する(有効)かを選択する。図12の例では、プルダウンにより選択させる。有効を選択した場合、ウィンドウ1200の子ウィンドウ1400が表示される。設定を更新する場合、ボタン1204をクリックし、キャンセルする場合はキャンセルボタン1205をクリックする。
図13に、移動方法決定部110が、ユーザに移動方法決定部110を手動で稼動させるために提供するUI(User Interface)の例として、GUI(Graphical User Interface)の例を示す。このGUIは、管理サーバ100に接続した出力装置132や、管理サーバ100にネットワーク130を介して接続された他の端末の表示装置等にブラウザや専用のプログラム、およびテキストなどを用いて表示する。
手動実行のウィンドウ1300には、操作のためのボタン等が表示される。移動元1301は、移動元、即ち移動方法決定部110による移動対象とする仮想化システム120を選択するプルダウンメニューである。移動先1302は、移動元1301で選択した仮想サーバ121の移動先となる仮想化システム120を選択するプルダウンメニューである。移動元1301及び移動先1302の仮想化システム120の表示は、仮想化システム120が稼動する物理サーバ101のホスト識別子を用いている。所要時間1303は、移動元1301上の仮想サーバ121を移動先1302へ移動する場合の移動時間を表示する。所要時間1303に表示される所要時間は、フェイルオーバー情報テーブル313の所要時間701である。
図14に、移動方法決定プログラム110が、ユーザに移動手段情報テーブル310の内容を設定させるために提供するUI(User Interface)の例として、GUI(Graphical User Interface)の例を示す。このGUIは、管理サーバ100に接続した出力装置132や、管理サーバ100にネットワーク130を介して接続された他の端末の表示装置等にブラウザや専用のプログラム、およびテキストなどを用いて表示する。
移動手段情報ウィンドウ1400には、と、操作のためのボタン等が表示される。ウィンドウ1400に表示される移動手段情報は、移動手段情報テーブル311の内容に基づいたものである。ユーザは、ボタン1404をクリックし、更新対象の移動手段情報を選択する。手段名入力枠1401では、移動手段を識別する手段識別子400を入力する。変動率入力枠1402では、仮想サーバの資源使用状況の変化と、各移動手段の移動所要時間との関係(変動率)を示す値401を入力する。必要物理資源量入力枠1403では、移動手段の実行に必要となる物理資源量402を入力する。ボタン1405をクリックすると、新しい移動手段情報を追加することができ、ボタン1406をクリックすると、ボタン1404で選択されている移動手段情報を削除することができる。設定情報を更新する場合、ボタン1407をクリックし、キャンセルする場合はキャンセルボタン1408をクリックする。ボタン1407をクリックすると、移動方法決定部110は、手段名入力枠1401、変動率入力枠1402、必要物理資源量入力枠1403の内容を移動手段情報テーブル310に反映する。
実施例1では、仮想サーバ121を順次移動する場合の移動スケジュール情報の決定方法について述べた。本実施例では、同時に複数の仮想サーバを移動する場合について述べる。
本実施例では、移動スケジュール情報テーブル314に示す開始時刻804を用いる。他の仮想サーバ121が移動中であった場合でも、ある仮想サーバ121の開始時刻804になれば、その仮想サーバ121の移動を実行する。本実施例では、並列性情報テーブル315を用いる。図15に、並列性情報テーブル315の構成を示す。カラム1500は、移動手段を識別するための手段識別子である。具体的には、手段提供者、及びユーザ(またはサーバ管理者)が定義した名称である。カラム1501は、各手段、またはその組合せを並列実行する場合の、最大同時実行数を示す。例えば、第1のレコードは、ライブマイグレーションを用いたある仮想サーバの移動と、各移動手段による他の仮想サーバの移動とを、同時にいくつ実行可能かを示す。行、列ともにライブマイグレーションの欄の値は1であるので、ライブマイグレーションを用いた仮想サーバの移動は、同時に複数実行できない。一方、行がライブマイグレーション、列がシャットダウンの欄の値は2であるので、ライブマイグレーションを用いた仮想サーバの移動と、シャットダウンを用いた仮想サーバの移動は、同時に2つまで実行できる。
図16に、本実施例の移動スケジュール情報決定部301で行われる処理のフローチャートを示す。図16は、実施例1の図11に示した移動スケジュール情報決定部301を、本実施例のために変更した処理である。図13の処理の図11と異なるのは、ステップ1601、ステップ1607、ステップ1609〜1614、及びステップ1616の追加と、ステップ1615の処理内容のステップ1107からの変更である。
ステップ1601では、時刻情報を格納する変数tを初期化する。具体的には、0などの値を格納する。尚、本実施例では、移動スケジュール情報決定部301の処理の開始時に変数tにメモリ領域を確保し、処理の終了時にそのメモリ領域を開放する。
ステップ1607では、変数tの値が示す時刻において、移動スケジュール情報テーブル314の各レコードに示される仮想サーバ121の移動は、実行中であるかを判定する。この判定は、フェイルオーバー情報テーブル313の所要時間701の値と、移動スケジュール情報テーブル314の開始時刻804の値との合計値を求め、求めた合計値と変数tの値との比較に基づく。所要時間701の値は、仮想サーバ識別子801と手段識別子802を用いて、フェイルオーバー情報テーブル313より取得する。求めた合計値が変数tの値以下の場合、そのレコードが示す仮想サーバ121の移動は終了している。求めた合計値が変数tの値より大きく、かつ開始時刻804の値が変数tの値以下の場合、そのレコードが示す仮想サーバ121の移動は実行中である。また、開始時刻804の値が変数tの値より大きい場合、レコードが示す仮想サーバ121の移動は開始されていない。
ステップ1608において、必要物理資源量402は、ステップ1603において選択した移動手段が必要とする物理資源量と、ステップ1607において実行中と決定した移動スケジュール情報テーブル314のレコードが示す移動手段が必要とする物理資源量との両方である。
並列性情報テーブル315の全てのレコードを取得する(ステップ1609)。変数tの値が示す時刻を開始時刻とする新しい移動スケジュール、即ち移動スケジュール情報テーブル314に新規のレコードを追加しても良いか(選択した移動手段を使用可能か)を評価する(ステップ1610)。不可であればステップ1603へ戻る。この評価は、ステップ1603において選択した移動手段に関する、移動手段情報テーブル310の手段識別子400、ステップ1607において実行中と決定した移動スケジュール情報テーブル314のレコードの手段識別子802を用いる。
変数tの値が示す時刻に、ステップ1603において選択した仮想サーバ及び移動手段を実行することが、より適切かを評価する(ステップ1611)。具体的には、現時点で最適と記憶している、過去のステップ1603において選択した仮想サーバ及び移動手段より、早く終了するかを比較する。早く終了しないならばステップ1603へ戻る。この比較には、変数tの値、所要時間701、開始時刻804、を用いる。
変数tの値、及びステップ1603において選択した仮想サーバ及び移動手段を記憶する(ステップ1612)。移動スケジュール情報テーブル314を参照し、変数tの値を更新する(ステップ1613)。具体的には、変数tの値より大きい、最小の開始時刻804を変数tの値とする。変数tの値より大きい、最小の開始時刻804が存在しない場合は、非常に大きな値、または負の値にする。
変数tの値が示す時刻にて、ステップ1612で記憶した仮想サーバ121の移動は終了しているかを評価する(ステップ1614)。即ち変数tの値が示す時刻以降に、より適切な、仮想サーバ121及び実行手段が存在する可能性があるかを判断する。可能性があればステップ1615へ、なければステップ1603へ戻る。記憶中の変数tの値と記憶中の移動手段に関する所要時間との合計値を求め、求めた合計値とステップ1613で更新した変数tの値とを比較し、評価する。
ステップ1612において記憶した仮想サーバ121及び移動手段に関する仮想サーバ識別子801、手段識別子802、実行順序800、移動先を示すホスト識別子803を新規レコードとして、移動スケジュール情報テーブル315に追加する(ステップ1615)。変数tの値を、ステップ1612で記憶した変数tの値にする(ステップ1616)。
本実施例によれば、移動方法決定部110は、システムの可用性を向上する、仮想サーバ121の移動手段及び実行順序を、並列実行可能な移動スケジュールとして決定することができる。これにより、実施例1と比較して、より効率的に仮想サーバの移動を行うことができる。
図17に、移動方法決定部110が、ユーザに並列性情報テーブル316の内容を設定させるために提供するUI(User Interface)の例として、GUI(Graphical User Interface)の例を示す。このGUIは、管理サーバ100に接続した出力装置132や、管理サーバ100にネットワーク130を介して接続された他の端末の表示装置等にブラウザや専用のプログラム、およびテキストなどを用いて表示する。
並列性情報設定ウィンドウ1700には、並列性情報と、操作のためのボタン等が表示される。ウィンドウ1700に表示される並列性情報は、並列性情報テーブル315の内容に基づいている。手段名1701には、移動手段を識別するための手段識別子が表示される。最大並列度入力枠1702では、各移動手段、またはその組合せを並列実行する場合の、最大同時実行数(最大並列度)1501を入力する。ユーザは、設定を更新する場合、ボタン1703をクリックし、キャンセルする場合はキャンセルボタン1704をクリックする。ボタン1703をクリックすると、移動方法決定部110は、最大並列度入力枠1702の内容を並列性情報テーブル315に反映する。
実施例1では、仮想サーバ単位での移動スケジュール情報を決定する場合について述べた。本実施例では、少なくとも1つの仮想サーバで遂行される業務に対して、業務単位での移動スケジュール情報を決定する場合について述べる。本実施例では、業務情報テーブル316を用いる。
図18に、業務情報テーブル316の構成を示す。業務情報テーブル316は、業務の特徴(業務を遂行する仮想サーバなど)を保持する。カラム1800は、業務を識別するための業務識別子である。具体的には、ユーザ(またはサーバ管理者)が定義した名称である。カラム1801は、業務を遂行する仮想サーバ121を識別するための仮想サーバ識別子である。具体的には、ユーザ(またはサーバ管理者)が定義した名称である。カラム1802は、業務のSLAに関する情報を示す。カラム1802には、業務の重要性を示す優先度1810、業務の停止が許される時間を示すダウン許容時間1811を含む。業務の優先度1810の値は、ユーザ(またはサーバ管理者)が定義した整数値、またはユーザアクセス数、単位時間当たりの実行トランザクション数などに基づいた値を用いても良い。
図19に、本実施例の移動スケジュール情報決定部301の処理フローチャートを示す。図19は、実施例1の図11に示した移動スケジュール情報決定部301を本実施例のために変更した処理である。図19の処理の図11と異なるのは、ステップ1901の追加、及びステップ1903〜1906の処理内容の変更である。
仮想サーバを業務でグループ化する(ステップ1901)。具体的には、業務情報テーブル316の、業務識別子1800、仮想サーバ識別子1801を取得する。所要時間の値が最も少ない業務に属する、本処理において一度も選択されていない業務、即ち少なくとも1つの仮想サーバ121及び移動手段のセットを選択する(ステップ1903)。所要時間は、具体的には、ステップ1902においてグループ化した仮想サーバ121に関するフェイルオーバー情報テーブル313の、所要時間701の合計値より決定する。ステップ1903において選択した、少なくとも1つの移動手段に関する、移動手段情報テーブル310の手段識別子400を持つレコードの必要物理資源量402を取得する(ステップ1904)。ステップ1903において選択した、少なくとも1つの仮想サーバ121に関する、仮想資源情報テーブル311の、仮想サーバ識別子500を持つレコードのホスト識別子501を取得する(ステップ1905)。
本実施形態によれば、移動方法決定プログラム110は、業務単位での移動スケジュール情報を決定することができる。これにより、実施例1と比較して、同一業務に属する仮想サーバ121を隣接するタイミングで移動させることで、業務の可用性を確保するよう仮想サーバの移動を行うことができる。
図20に、移動方法決定部110が、ユーザに業務情報テーブル317の内容を設定させるために提供するUI(User Interface)の例として、GUI(Graphical User Interface)の例を示す。このGUIは、管理サーバ100に接続した出力装置132や、管理サーバ100にネットワーク130を介して接続された他の端末の表示装置等にブラウザや専用のプログラム、およびテキストなどを用いて表示する。
業務情報設定ウィンドウ2000は、ブラウザやプログラムなどのウィンドウを示す。業務一覧2001では、設定対象となる業務をユーザがプルダウンメニューを用いて選択する。業務名入力枠2002では、業務一覧2001において選択した業務に関する業務識別子(カラム1800)を入力する。仮想サーバ一覧2003では、業務一覧2001において選択されている業務を遂行する仮想サーバ121(業務情報テーブル316の仮想サーバ識別子1801)を設定する。リスト2004では、設定対象の業務の遂行に追加する仮想サーバ121を選択する。リスト2005では、設定対象の業務を遂行する仮想サーバ識別子1801を表示し、また設定対象の業務の遂行から削除する仮想サーバ121を選択する。ボタン2006をクリックすると、リスト2004において選択されている仮想サーバ121がリスト2005に移動する。ボタン2007をクリックすると、リスト2005において選択されている仮想サーバ121がリスト2004に移動する。優先度入力欄2008では、業務一覧2001において選択した業務に関する優先度(業務情報テーブル316の優先度1810)を入力する。停止許容時間入力欄2009では、業務一覧2001において選択した業務に関する停止許容時間(業務情報テーブル316のダウン許容時間1811)を入力する。ボタン2010をクリックすると、新しい業務を追加することができ、ボタン2011をクリックすると、業務一覧2001において選択されている業務を削除することができる。業務情報の設定を更新する場合、ボタン2012をクリックし、キャンセルする場合はキャンセルボタン2013をクリックする。ボタン2012をクリックすると、移動方法決定部110は、業務名入力枠2002、仮想サーバ一覧2003、優先度入力枠2008、停止許容時間入力枠2009の内容を業務情報テーブル316に反映する。
実施例3では、業務単位での移動スケジュール情報を決定する場合について述べた。本実施例では、さらに業務の優先度を考慮して、移動スケジュール情報を決定する場合について述べる。本実施例では、業務情報テーブル316の優先度情報1810を用いる。
図21に、本実施形態の移動スケジュール情報決定部301の処理フローチャートを示す。図21は、実施例3の図19に示した移動スケジュール情報決定部301を本実施例のために変更した処理である。図21の処理の図19と異なるのは、ステップ2103の追加、及びステップ1903の削除である。
優先度が最も高い、本処理において一度も選択されていない業務、即ち少なくとも1つの仮想サーバ121及び移動手段のセットを選択する(ステップ2103)。優先度は、業務情報テーブル316の優先度1810を参照する。
本実施例によれば、移動方法決定部110は、業務間に存在する優先度に基づいて、業務単位での移動スケジュール情報を決定することができる。これにより、実施例3と比較して、より重要な業務(例えば、単位時間当たりの実行トランザクション数が多い業務)を遂行する仮想サーバ121から順に、移動を行うことができる。
実施例4では、業務の優先度を考慮して、業務単位での仮想サーバ121の移動スケジュール情報を決定する場合について述べた。本実施例では、少なくとも1つの業務(例えば、優先度が低い業務など)を遂行する仮想サーバを事前に停止することを前提とした移動スケジュール情報を決定する場合について述べる。
図22に、本実施例の移動スケジュール情報決定部301の処理フローチャートを示す。図22は、実施例4の図21に示した移動スケジュール情報決定部301を本実施例のために変更した処理である。図22の処理の図21と異なるのは、ステップ2202及びステップ2203の追加とステップ2209の処理内容の変更である。
事前に停止する業務に関して、仮想サーバ121の移動スケジュール情報を決定する(ステップ2202)。ステップ2202の詳細な処理フローチャートを図23に示す。ステップ2202において、事前に停止するように移動スケジュール情報を決定した仮想サーバ121以外に関して、移動手段が未決定の仮想サーバが存在するか判断する(ステップ2203)。存在しなければ、処理を終了する。
ステップ2107と同様に、選択した仮想サーバ及び移動手段が実行可能を評価する(ステップ2209)。ただし、評価の際に、ステップ2202において事前停止対象とした業務を遂行する仮想サーバ121が使用する物理資源は考慮しない(その物理資源量を使用可能とする)。
図23は、ステップ2202の、事前停止対象となる業務を遂行する仮想サーバ121の移動スケジュール情報を決定する処理の詳細なフローチャートを示す。SLA情報1802を参照して、事前に停止する業務を決定する(ステップ2300)。この決定は、例えば、移動方法決定部110内に優先度閾値を設定しておき、設定してある閾値と優先度1810を比較する。または、仮想サーバ121の停止を伴う移動方法(例えば、シャットダウンなど)の所要時間と、停止許容時間(カラム1811)を比較する。
ステップ2300において決定した事前停止対象となる業務を遂行する仮想サーバ121に関して、移動手段が未決定のものが有るか確認する(ステップ2301)。存在しなければ処理を終了し、図22のステップ2203へ戻る。
ステップ2300において決定した業務に関して、本処理にて一度も選択されていない業務を遂行する、少なくとも1つの仮想サーバ121を選択する(ステップ2302)。この選択には、ステップ1903のように、フェイルオーバー情報テーブル313の所要時間701の合計値を用いるが、優先度1810の値、またはそれらの組み合わせを用いても良い。
ステップ2303では、ステップ2210と同様に、ステップ2302において選択した仮想サーバ121に関する情報を用いて、移動スケジュール情報テーブル314に新規レコードを追加する。ここで、手段識別子802、即ち使用する移動手段に関しては、仮想サーバ121の停止を伴うもの(例えば、シャットダウンなど)を使用する。
本実施例によれば、少なくとも1つの業務(例えば、重要でない業務など)を事前に停止することで、停止する業務が使用する物理資源を解放し、他の業務(例えば、重要な業務など)を遂行する仮想サーバ121の移動に、より多くの物理資源を利用できる。
実施例4では、業務の優先度を考慮して、業務単位での仮想サーバ121の移動スケジュール情報を決定する場合について述べた。本実施例では、優先度が高くても、移動に時間を要する、早急な移動を必要としないなどの業務に関しては移動順序を後にすることを前提とした移動スケジュール情報を決定する場合について述べる。
図24に、本実施例の移動スケジュール情報決定部301の処理フローチャートを示す。図24は、実施例4の図21に示した移動スケジュール情報決定部301を本実施例のために変更した処理である。図24の処理の図21と異なるのは、ステップ2403の処理内容の変更である。
ステップ2103と同様に、本処理において一度も選択されていない業務を選択する(ステップ2403)。ただし、ここでの選択は、業務情報テーブル316のSLA情報1802、フェイルオーバー情報テーブル313の所要時間701、移動スケジュール情報314、またはそれらの組み合わせに基づいて行う。具体的には、所要時間701の合計値と優先度1810との商の値、ダウンタイム許容時間1811と移動開始時間(カラム802、カラム701から決定する)の差の値などである。
本実施例によれば、例えば、ある業務は、優先度は高いが移動に時間がかかる(例えば、この業務を遂行する仮想サーバ121の数が多い)場合においても、他の業務の移動を妨げない移動スケジュール情報を決定することができる。
実施例1では、仮想サーバ単位での移動スケジュール情報を決定する場合について述べた。本実施例では、障害発生の計算機システムへの影響を考慮した、移動スケジュール情報を決定する。本実施例では、リスク情報テーブル317を用いる。
図25に、リスク情報テーブル317の例を示す。リスク情報テーブル317は、物理サーバ101及び仮想化システム120で発生した障害に対する、移動方法決定の際の条件(例えば、CPU温度障害が発生した場合は、CPUを酷使する移動手段を多用しない、など)を保持する。カラム2500は、リスク(例えば、CPU温度異常など)を、識別するためのリスク識別子である。具体的には、ユーザ(またはサーバ管理者)が定義した名称である。カラム2501は、リスクが移動方法決定部110の処理に与える条件を示す。例えば、CPU温度異常が発生した場合、CPUを60%以上使用しないよう移動スケジュールを決定するなどである。
図26に、本実施例の移動スケジュール情報決定部301の処理フローチャートを示す。図26は、実施例1の図11に示した移動スケジュール情報決定部301を本実施例のために変更した処理である。図26の処理の図11と異なるのは、ステップ2607及びステップ2608の追加である。
情報取得部302からの障害情報に対応する、リスク情報テーブル317のリスク識別子2500を持つレコードの条件2501を取得する(2607)。ステップ2602において選択した仮想サーバ121及び移動手段を実行することによって、ステップ2607で取得した条件に違反するか(例えば、ネットワークアダプタ障害が発生した場合は、前記移動手段はネットワークアダプタをしたものでないか)を評価する(ステップ2608)。違反するならば、ステップ2602へ戻る。
本実施例によれば、発生した障害を考慮し、移動スケジュール情報を決定することができる。その結果、仮想サーバの移動が障害を誘発する、また障害により仮想サーバの移動に必要な資源が使用できず移動に失敗するなどの問題を回避することができる。
100:管理サーバ、101:物理サーバ、102:ストレージ装置、103:ディスクボリューム、110:移動方法決定部、111:テーブル群、120:仮想化システム、121:仮想サーバ、130:ネットワーク、131:入力装置、132:出力装置、140:NIC、141:HBA。

Claims (14)

  1. 物理サーバに接続する管理サーバにおいて実行する、前記物理サーバ内で動作する仮想化システム上で稼動する仮想サーバを移動するための移動方法の決定方法であって、
    前記管理サーバは、
    前記仮想化システムに対応して、前記仮想化システムが使用する物理資源量を示す使用物理資源量と、前記仮想化システムを稼動させる前記物理サーバの性能を示す最大物理資源量とからなる物理資源情報と、
    前記仮想サーバに対応して、前記仮想サーバが使用する物理資源量を示す使用仮想資源係数と、前記仮想サーバに割り当てている物理資源量を示す割当物理資源係数とからなる仮想資源情報と、
    前記仮想サーバの複数の移動手段に対応して、前記移動手段の実行に必要な物理資源量を示す必要物理資源量と、前記仮想サーバの前記使用仮想資源係数の変化が前記各移動手段による前記仮想サーバの移動所要時間に与える影響の度合いを示す変動率と、所定の使用物理資源量を基準とした基準実行時間とからなる移動手段情報とを記憶手段に記憶し、
    前記物理サーバの前記最大物理資源量と前記仮想サーバの前記使用仮想資源係数と前記割当物理資源係数より前記仮想サーバの物理資源の使用量を算出し、前記算出した物理資源の使用量と前記所定の使用物理資源量より前記所定の使用物理資源量からの使用物理資源量の変化値を算出し、前記算出した変化値と前記変動率と前記基準実行時間より前記各移動手段による前記仮想サーバの前記移動所要時間を算出することを特徴とする仮想サーバの移動方法決定方法。
  2. 前記仮想サーバの前記移動所要時間の短い前記移動手段を選択することを特徴とする請求項1記載の仮想サーバの移動方法決定方法。
  3. 前記仮想サーバが複数あるとき、各仮想サーバに関して前記選択した前記移動手段に対応する前記移動所要時間の短い仮想サーバからの、前記移動手段による前記仮想サーバの移動順序とすることを特徴とする請求項2記載の仮想サーバの移動方法決定方法。
  4. 前記移動手段の並列実行の許容値を示す最大並列度を格納した並列性情報テーブルを設け、前記最大並列度を超えない範囲で、前記実行順序に従って、前記複数の仮想サーバに対応する各移動手段を並列実行することを特徴とする請求項3記載の仮想サーバの移動方法決定方法。
  5. 前記複数の仮想サーバの各々が遂行する業務および前記業務の優先度との関係を示す業務情報テーブルを設け、前記優先度が高い業務を遂行する前記仮想サーバを選択し、前記仮想サーバに対応する移動手段を実行することを特徴とする請求項3記載の仮想サーバの移動方法決定方法。
  6. 前記業務情報テーブルは、前記業務のダウン許容時間を含み、前記ダウン許容時間を参照して、事前に停止する仮想サーバを決定することを特徴とする請求項5に記載の仮想サーバの移動方法決定方法。
  7. 前記物理サーバに発生する障害を示すリスク識別子とその障害が発生したときの動作条件との対応を示すリスク情報テーブルを設け、前記動作条件に反しない範囲で、前記仮想サーバに対し前記移動手段を選択することを特徴とする請求項2記載の仮想サーバの移動方法決定方法。
  8. 物理サーバ内で動作する仮想化システム上で稼動する仮想サーバを移動するための移動方法を決定する、前記物理サーバに接続する管理サーバであって、
    前記仮想化システムに対応して、前記仮想化システムが使用する物理資源量を示す使用物理資源量と、前記仮想化システムを稼動させる前記物理サーバの性能を示す最大物理資源量とからなる物理資源情報と、
    前記仮想サーバに対応して、前記仮想サーバが使用する物理資源量を示す使用仮想資源係数と、前記仮想サーバに割り当てている物理資源量を示す割当物理資源係数とからなる仮想資源情報と、
    前記仮想サーバの複数の移動手段に対応して、前記移動手段の実行に必要な物理資源量を示す必要物理資源量と、前記仮想サーバの前記使用仮想資源係数の変化が前記各移動手段による前記仮想サーバの移動所要時間に与える影響の度合いを示す変動率と、所定の使用物理資源量を基準とした基準実行時間とからなる移動手段情報とを記憶した記憶手段を有し、
    前記物理サーバの前記最大物理資源量と前記仮想サーバの前記使用仮想資源係数と前記割当物理資源係数より前記仮想サーバの物理資源の使用量を算出し、前記算出した物理資源の使用量と前記所定の使用物理資源量より前記所定の使用物理資源量からの使用物理資源量の変化値を算出し、前記算出した変化値と前期変動率と前記基準実行時間より前記各移動手段による前記仮想サーバの前記移動所要時間を算出する移動方法決定部を有することを特徴とする管理サーバ。
  9. 前記移動方法決定部は、前記仮想サーバの前記移動所要時間の短い前記移動手段を選択することを特徴とする請求項8記載の管理サーバ。
  10. 前記移動方法決定部は、前記仮想サーバが複数あるとき、各仮想サーバに関して前記選択した前記移動手段に対応する前記移動所要時間の短い仮想サーバからの、前記移動手段による前記仮想サーバの移動順序とすることを特徴とする請求項9記載の管理サーバ。
  11. 前記移動手段の並列実行の許容値を示す最大並列度を格納した並列性情報テーブルを設け、前記移動方法決定部は、前記最大並列度を超えない範囲で、前記実行順序に従って、前記複数の仮想サーバに対応する各移動手段を並列実行することを特徴とする請求項10記載の管理サーバ。
  12. 前記複数の仮想サーバの各々が遂行する業務および前記業務の優先度との関係を示す業務情報テーブルを設け、前記移動方法決定部は、前記優先度が高い業務を遂行する前記仮想サーバを選択し、前記仮想サーバに対応する移動手段を実行することを特徴とする請求項10記載の管理サーバ。
  13. 前記業務情報テーブルは、前記業務のダウン許容時間を含み、前記移動方法決定部は、前記ダウン許容時間を参照して、事前に停止する仮想サーバを決定することを特徴とする請求項12に記載の管理サーバ。
  14. 前記物理サーバに発生する障害を示すリスク識別子とその障害が発生したときの動作条件との対応を示すリスク情報テーブルを設け、前記移動方法決定部は、前記動作条件に反しない範囲で、前記仮想サーバに対し前記移動手段を選択することを特徴とする請求項10記載の管理サーバ。
JP2010043671A 2009-03-17 2010-03-01 仮想サーバの移動方法の決定方法及びその管理サーバ Pending JP2010244524A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010043671A JP2010244524A (ja) 2009-03-17 2010-03-01 仮想サーバの移動方法の決定方法及びその管理サーバ

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009064077 2009-03-17
JP2010043671A JP2010244524A (ja) 2009-03-17 2010-03-01 仮想サーバの移動方法の決定方法及びその管理サーバ

Publications (1)

Publication Number Publication Date
JP2010244524A true JP2010244524A (ja) 2010-10-28

Family

ID=43097424

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010043671A Pending JP2010244524A (ja) 2009-03-17 2010-03-01 仮想サーバの移動方法の決定方法及びその管理サーバ

Country Status (2)

Country Link
US (1) US8595737B2 (ja)
JP (1) JP2010244524A (ja)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012127633A1 (ja) * 2011-03-22 2012-09-27 富士通株式会社 移動管理装置、移動管理方法および移動管理プログラム
JP2012252602A (ja) * 2011-06-03 2012-12-20 Nippon Telegr & Teleph Corp <Ntt> サーバ管理システム、サーバ管理装置、サーバ管理方法、及びサーバ管理プログラム
WO2013094006A1 (ja) * 2011-12-19 2013-06-27 富士通株式会社 プログラム、情報処理装置および方法
JP2013149118A (ja) * 2012-01-20 2013-08-01 Nec Corp 仮想マシン管理サーバ、仮想マシン移動順序制御方法および制御プログラム
JP2013239095A (ja) * 2012-05-17 2013-11-28 Nippon Telegr & Teleph Corp <Ntt> 仮想マシン配置装置および仮想マシン配置方法
JP2014096136A (ja) * 2012-11-07 2014-05-22 International Business Maschines Corporation モビリティ動作リソース割り当てのための方法、システム、コンピュータ・プログラム
JP2014203232A (ja) * 2013-04-04 2014-10-27 日本電信電話株式会社 仮想マシンの動的配置方法及び仮想マシンシステム
WO2014199476A1 (ja) * 2013-06-12 2014-12-18 富士通株式会社 中継装置、中継プログラム、及び中継方法
JP2015011569A (ja) * 2013-06-28 2015-01-19 株式会社東芝 仮想マシン管理装置、仮想マシン管理方法、及び仮想マシン管理プログラム
US9652332B2 (en) 2012-11-07 2017-05-16 Fujitsu Limited Information processing apparatus and virtual machine migration method
JP2018028779A (ja) * 2016-08-17 2018-02-22 日本電信電話株式会社 移行システム、移行方法および移行プログラム

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060167838A1 (en) * 2005-01-21 2006-07-27 Z-Force Communications, Inc. File-based hybrid file storage scheme supporting multiple file switches
US8682916B2 (en) 2007-05-25 2014-03-25 F5 Networks, Inc. Remote file virtualization in a switched file system
US8548953B2 (en) 2007-11-12 2013-10-01 F5 Networks, Inc. File deduplication using storage tiers
US8549582B1 (en) 2008-07-11 2013-10-01 F5 Networks, Inc. Methods for handling a multi-protocol content name and systems thereof
US9195500B1 (en) 2010-02-09 2015-11-24 F5 Networks, Inc. Methods for seamless storage importing and devices thereof
US9245246B2 (en) * 2010-04-22 2016-01-26 International Business Machines Corporation Capacity over-commit management in resource provisioning environments
US10003514B2 (en) 2010-06-22 2018-06-19 Hewlett Packard Enteprrise Development LP Method and system for determining a deployment of applications
CN102959506B (zh) 2010-06-22 2017-04-26 慧与发展有限责任合伙企业 用于计划应用部署的方法和系统
US9286298B1 (en) 2010-10-14 2016-03-15 F5 Networks, Inc. Methods for enhancing management of backup data sets and devices thereof
JP5614226B2 (ja) * 2010-10-15 2014-10-29 富士通株式会社 仮想マシン制御装置、仮想マシン制御プログラムおよび仮想マシン制御方法
US8862743B1 (en) * 2011-01-13 2014-10-14 Google Inc. Resource management
EP2673704B1 (en) * 2011-04-07 2019-10-23 Ent. Services Development Corporation LP Method and apparatus for moving a software object
US9424144B2 (en) * 2011-07-27 2016-08-23 Microsoft Technology Licensing, Llc Virtual machine migration to minimize packet loss in virtualized network
US9459898B2 (en) * 2011-10-06 2016-10-04 Hitachi, Ltd. Virtual server processing control method, system, and virtual server processing control management server
JP5768651B2 (ja) * 2011-10-21 2015-08-26 富士通株式会社 通信装置、通信方法、および、通信プログラム
US20130160024A1 (en) * 2011-12-20 2013-06-20 Sybase, Inc. Dynamic Load Balancing for Complex Event Processing
US9020912B1 (en) 2012-02-20 2015-04-28 F5 Networks, Inc. Methods for accessing data in a compressed file system and devices thereof
US9519501B1 (en) 2012-09-30 2016-12-13 F5 Networks, Inc. Hardware assisted flow acceleration and L2 SMAC management in a heterogeneous distributed multi-tenant virtualized clustered system
US10375155B1 (en) 2013-02-19 2019-08-06 F5 Networks, Inc. System and method for achieving hardware acceleration for asymmetric flow connections
US9554418B1 (en) 2013-02-28 2017-01-24 F5 Networks, Inc. Device for topology hiding of a visited network
US20150081400A1 (en) * 2013-09-19 2015-03-19 Infosys Limited Watching ARM
US10452418B2 (en) * 2013-12-17 2019-10-22 Vmware, Inc. Location based management of virtual machines in datacenters
WO2015163084A1 (ja) * 2014-04-22 2015-10-29 オリンパス株式会社 データ処理システム及びデータ処理方法
US10721181B1 (en) * 2015-03-10 2020-07-21 Amazon Technologies, Inc. Network locality-based throttling for automated resource migration
US10834065B1 (en) 2015-03-31 2020-11-10 F5 Networks, Inc. Methods for SSL protected NTLM re-authentication and devices thereof
US9959138B1 (en) * 2015-09-11 2018-05-01 Cohesity, Inc. Adaptive self-maintenance scheduler
US10404698B1 (en) 2016-01-15 2019-09-03 F5 Networks, Inc. Methods for adaptive organization of web application access points in webtops and devices thereof
US10412198B1 (en) 2016-10-27 2019-09-10 F5 Networks, Inc. Methods for improved transmission control protocol (TCP) performance visibility and devices thereof
US10705872B2 (en) * 2016-12-08 2020-07-07 International Business Machines Corporation Predictive virtual server scheduling and optimization of dynamic consumable resources to achieve priority-based workload performance objectives
US10567492B1 (en) 2017-05-11 2020-02-18 F5 Networks, Inc. Methods for load balancing in a federated identity environment and devices thereof
US11223689B1 (en) 2018-01-05 2022-01-11 F5 Networks, Inc. Methods for multipath transmission control protocol (MPTCP) based session migration and devices thereof
US10833943B1 (en) 2018-03-01 2020-11-10 F5 Networks, Inc. Methods for service chaining and devices thereof
US12003422B1 (en) 2018-09-28 2024-06-04 F5, Inc. Methods for switching network packets based on packet data and devices
CN110971647B (zh) * 2018-09-30 2023-12-05 南京工程学院 一种大数据系统的节点迁移方法
CN111459737B (zh) * 2020-03-25 2023-07-14 北京三快在线科技有限公司 问题定位方法、装置、计算机设备及存储介质
CN112306641B (zh) * 2020-11-18 2023-07-21 中国科学院计算技术研究所 一种用于虚拟机迁移模型的训练方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6314472B1 (en) * 1998-12-01 2001-11-06 Intel Corporation Abort of DRAM read ahead when PCI read multiple has ended
JP2002007364A (ja) * 2000-06-22 2002-01-11 Fujitsu Ltd 並列計算機システムのジョブスケジューリングを行うスケジューリング装置
JP2002202959A (ja) * 2000-12-28 2002-07-19 Hitachi Ltd 動的な資源分配をする仮想計算機システム
JP3933587B2 (ja) 2003-01-28 2007-06-20 株式会社東芝 計算機システム、計算機装置及びオペレーティングシステムの移送方法
US7257811B2 (en) 2004-05-11 2007-08-14 International Business Machines Corporation System, method and program to migrate a virtual machine
JP4699842B2 (ja) * 2005-09-06 2011-06-15 株式会社日立製作所 ストレージ装置及びデータ移動方法
JP4814119B2 (ja) * 2007-02-16 2011-11-16 株式会社日立製作所 計算機システム、ストレージ管理サーバ、及びデータ移行方法
JP2008217216A (ja) * 2007-03-01 2008-09-18 Hitachi Ltd 負荷分散方法及び計算機システム
US8095929B1 (en) * 2007-04-16 2012-01-10 Vmware, Inc. Method and system for determining a cost-benefit metric for potential virtual machine migrations
JP5117120B2 (ja) * 2007-06-18 2013-01-09 株式会社日立製作所 ストレージ装置のボリュームを管理する計算機システム、方法及びプログラム
JP5156310B2 (ja) * 2007-09-19 2013-03-06 株式会社日立製作所 バックアップ構成の構築を支援する方法及び計算機
JP2009122873A (ja) * 2007-11-13 2009-06-04 Hitachi Ltd ストレージシステム間でのリモートコピーを管理する装置
JP2009134397A (ja) * 2007-11-29 2009-06-18 Hitachi Ltd 仮想ボリュームに割り当て済みの全ての実記憶領域を解放するか否かを制御する計算機及び方法
JP5164628B2 (ja) * 2008-03-24 2013-03-21 株式会社日立製作所 ネットワークスイッチ装置、サーバシステム及びサーバシステムにおけるサーバ移送方法

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012127633A1 (ja) * 2011-03-22 2012-09-27 富士通株式会社 移動管理装置、移動管理方法および移動管理プログラム
US9244731B2 (en) 2011-03-22 2016-01-26 Fujitsu Limited Migration management apparatus and migration management method
JP5804050B2 (ja) * 2011-03-22 2015-11-04 富士通株式会社 移動管理装置、移動管理方法および移動管理プログラム
JP2012252602A (ja) * 2011-06-03 2012-12-20 Nippon Telegr & Teleph Corp <Ntt> サーバ管理システム、サーバ管理装置、サーバ管理方法、及びサーバ管理プログラム
JPWO2013094006A1 (ja) * 2011-12-19 2015-04-27 富士通株式会社 プログラム、情報処理装置および方法
WO2013094006A1 (ja) * 2011-12-19 2013-06-27 富士通株式会社 プログラム、情報処理装置および方法
US9317394B2 (en) 2011-12-19 2016-04-19 Fujitsu Limited Storage medium and information processing apparatus and method with failure prediction
JP2013149118A (ja) * 2012-01-20 2013-08-01 Nec Corp 仮想マシン管理サーバ、仮想マシン移動順序制御方法および制御プログラム
JP2013239095A (ja) * 2012-05-17 2013-11-28 Nippon Telegr & Teleph Corp <Ntt> 仮想マシン配置装置および仮想マシン配置方法
JP2014096136A (ja) * 2012-11-07 2014-05-22 International Business Maschines Corporation モビリティ動作リソース割り当てのための方法、システム、コンピュータ・プログラム
US9652332B2 (en) 2012-11-07 2017-05-16 Fujitsu Limited Information processing apparatus and virtual machine migration method
JP2014203232A (ja) * 2013-04-04 2014-10-27 日本電信電話株式会社 仮想マシンの動的配置方法及び仮想マシンシステム
WO2014199476A1 (ja) * 2013-06-12 2014-12-18 富士通株式会社 中継装置、中継プログラム、及び中継方法
JP6052407B2 (ja) * 2013-06-12 2016-12-27 富士通株式会社 中継装置、中継プログラム、及び中継方法
JPWO2014199476A1 (ja) * 2013-06-12 2017-02-23 富士通株式会社 中継装置、中継プログラム、及び中継方法
JP2015011569A (ja) * 2013-06-28 2015-01-19 株式会社東芝 仮想マシン管理装置、仮想マシン管理方法、及び仮想マシン管理プログラム
JP2018028779A (ja) * 2016-08-17 2018-02-22 日本電信電話株式会社 移行システム、移行方法および移行プログラム

Also Published As

Publication number Publication date
US20100325634A1 (en) 2010-12-23
US8595737B2 (en) 2013-11-26

Similar Documents

Publication Publication Date Title
JP2010244524A (ja) 仮想サーバの移動方法の決定方法及びその管理サーバ
JP5786037B2 (ja) 仮想計算機の制御方法及び仮想計算機システム
JP5305040B2 (ja) サーバ計算機の切替方法、管理計算機及びプログラム
JP5719974B2 (ja) 複数の監視対象デバイスを有する計算機システムの管理を行う管理システム
JP5458308B2 (ja) 仮想計算機システム、仮想計算機システムの監視方法及びネットワーク装置
US8661438B2 (en) Virtualization planning system that models performance of virtual machines allocated on computer systems
US20120254443A1 (en) Information processing system, information processing apparatus, method of scaling, program, and recording medium
JP6168576B2 (ja) 仮想マシンマイグレーション管理の方法、装置およびシステム
US20100268816A1 (en) Performance monitoring system, bottleneck detection method and management server for virtual machine system
US9146793B2 (en) Management system and management method
WO2012056596A1 (ja) 計算機システム及び処理制御方法
TW201535266A (zh) 虛擬機器之資源調整方法及系統
JP5222876B2 (ja) 計算機システムにおけるシステム管理方法、及び管理システム
JP4811830B1 (ja) コンピュータリソース制御システム
US9852007B2 (en) System management method, management computer, and non-transitory computer-readable storage medium
US20180176289A1 (en) Information processing device, information processing system, computer-readable recording medium, and information processing method
JP2011180889A (ja) ネットワークリソース管理システム、装置、方法及びプログラム
JP2016126677A (ja) 負荷算出方法、負荷算出プログラム及び負荷算出装置
JPWO2015040688A1 (ja) 計算機システムを管理する管理システム及びその管理方法
JP6323101B2 (ja) 配置制御プログラム、方法及び装置
JP5879117B2 (ja) 情報処理システムおよび運用管理方法
JP6098167B2 (ja) 仮想マシン管理プログラム及びその方法
KR102676385B1 (ko) 가상화 서버에서 가상머신 cpu 자원을 관리하는 장치 및 방법
JP2011186821A (ja) 仮想化環境管理システム、装置、方法及びプログラム
JP5758358B2 (ja) 仮想マシンシステム及びその高速ライブマイグレーション方法