JP2016110183A - 情報処理システム及び情報処理システムの制御方法 - Google Patents

情報処理システム及び情報処理システムの制御方法 Download PDF

Info

Publication number
JP2016110183A
JP2016110183A JP2014243835A JP2014243835A JP2016110183A JP 2016110183 A JP2016110183 A JP 2016110183A JP 2014243835 A JP2014243835 A JP 2014243835A JP 2014243835 A JP2014243835 A JP 2014243835A JP 2016110183 A JP2016110183 A JP 2016110183A
Authority
JP
Japan
Prior art keywords
virtual machine
information processing
migration
processing apparatus
reboot
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.)
Withdrawn
Application number
JP2014243835A
Other languages
English (en)
Inventor
岩松 昇
Noboru Iwamatsu
昇 岩松
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2014243835A priority Critical patent/JP2016110183A/ja
Priority to US14/923,118 priority patent/US20160154664A1/en
Publication of JP2016110183A publication Critical patent/JP2016110183A/ja
Withdrawn 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45575Starting, stopping, suspending or resuming virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Hardware Redundancy (AREA)

Abstract

【課題】高速で安全にマイグレーションを実行する。【解決手段】情報処理システムは、複数の情報処理装置と、複数の情報処理装置を管理する管理装置とを有し、複数の情報処理装置のうち第1の情報処理装置は、仮想マシンを起動する起動部と、仮想マシンの再起動を検出する再起動検出部と、再起動の検出に応答して仮想マシンを遮断する遮断部とを有し、複数の情報処理装置のうち第2の情報処理装置は、第1の情報処理装置の仮想マシンが遮断された後、遮断された仮想マシンを起動する旨の起動指示を受信した場合、遮断された仮想マシンを起動する起動部を有する。【選択図】図1

Description

本発明は、情報処理システム及び情報処理システムの制御方法に関する。
仮想化技術は、コンピュータまたは物理マシンである情報処理装置(以下、情報処理装置をコンピュータまたは物理マシン、または単にホストマシン、ホストとも称する。)上で動作するハイパーバイザが、物理マシンのハードウエアをエミュレートし、物理マシン上に複数の仮想マシン(またはVM: Virtual Machine)を起動して生成する。そして、仮想化技術は、複数の物理マシンに複数の仮想マシンを生成して、複数の利用者のサービスシステムを実現する。仮想マシンが起動・生成される物理マシンは、ホストマシンまたは単にホストとも称される。
このような仮想化技術において、仮想マシンを移行元ホストから移行先ホストに移行するライブマイグレーションは、物理マシンのメンテナンスや、仮想マシンを別の物理マシンに集約する場合に必要になる。ライブマイグレーションは、仮想マシンを稼働状態のまま別の物理マシンに移行させる技術である。ライブマイグレーションを利用することで、仮想マシンにより構築されているサービスシステムを停止することなく、仮想マシンを別の物理マシンに移行(マイグレート)することができる。
特開2011−248616号公報 特開2011−118557号公報 特開10−283210号公報 特開2004−133892号公報
仮想マシンのライブマイグレーションは、(1)移行元ホストで稼働中の仮想マシンのメモリ内容を移行先ホストに転送し、(2)移行元ホストで仮想マシンを一時停止した状態で転送中に変更されたメモリ内容、CPUのレジスタ情報であるコンテキスト、I/O状態を含むハードウエアのエミュレーション状態などを移行先ホストに転送し、(3)移行先ホストで仮想マシンをリジュームする処理を有する。
そのため、メモリ内容の転送時間が長くなり、ホスト間のネットワークに負荷がかかる。特に、メモリの書き換え頻度が高い仮想マシンでは、メモリ内容の転送に要する時間が長くなり、変更データ(ダーティページ)の再転送の発生により、転送時間が予測しにくい。さらに、多数のホストマシンで多数の仮想マシンを起動する大規模なクラウドシステムでは、ホストマシンのメンテナンスのために仮想マシンをライブマイグレーションすることは、長時間を要し、ネットワークの多くの帯域を使用することになるという課題を有する。
また、ライブマイグレーションでは、移行元ホストと移行先ホストのハイパーバイザのバージョンが異なる場合、移行元ホストでのハードウエアのエミュレート状態を移行先ホストに引き継ぐことができないなどの理由で、マイグレーションが失敗することがある。
ライブマイグレーションの改善方法として、メモリ内容を圧縮してメモリ内容の転送時間を短縮することが提案されているが、メモリ内容の圧縮処理によりCPU使用率が上昇するので、改善効果はそれほど期待できない。また、移行先ホストに事前に仮想マシンのメモリを転送しておく場合は、移行先ホストのメモリリソースを浪費することになり好ましくない。
そこで、実施の形態の第1の側面の目的は、高速で確実に仮想マシンをマイグレーションできる情報処理システム及び情報処理システムの制御方法を提供することにある。
本実施の形態の第1の側面は、複数の情報処理装置と、
前記複数の情報処理装置を管理する管理装置とを有し、
前記複数の情報処理装置のうち第1の情報処理装置は、
仮想マシンを起動する起動部と、
前記仮想マシンの再起動を検出する再起動検出部と、
前記再起動の検出に応答して前記仮想マシンを遮断する遮断部とを有し、
前記複数の情報処理装置のうち第2の情報処理装置は、
前記第1の情報処理装置の仮想マシンが遮断された後、前記遮断された仮想マシンを起動する旨の起動指示を受信した場合、前記遮断された仮想マシンを起動する起動部を有する情報処理システムである。
第1の側面によれば、仮想マシン利用者の利便性を損なうことなく、高速で確実に仮想マシンをマイグレーションできる。
本実施の形態における情報処理システムの構成を示す図である。 図1の各ホスト1、2、3と管理サーバ4とソフトウエアアップデートサービスサーバ5の概略構成を示す図である。 図1に示した共有ストレージ20の構成を示す図である。 ハイパーバイザの一部のコマンドとその処理内容を示す図表である。 ライブマイグレーションの処理を示すフローチャート図である。 本実施の形態におけるリブートをトリガとするマイグレーションの処理を示すフローチャート図である。 本実施の形態におけるリブートをトリガとするマイグレーションの処理を示すシーケンス図である。 本実施の形態におけるリブートをトリガとするマイグレーションの処理を示すシーケンス図である。 本実施の形態におけるリブートをトリガとするマイグレーションの処理の変形例を示すフローチャート図である。 本実施の形態における仮想マシンのリブート動作と検出処理を示すフローチャート図である。 本実施の形態におけるRDM管理モジュールRDM_Mに設定されるリブート検出時の処理テーブル例を示す図である。 第2の実施の形態におけるリブートをトリガにするマイグレーションの処理を示すフローチャート図である。 第2の実施の形態におけるリブートをトリガにするマイグレーションの処理を示すフローチャート図である。 第2の実施の形態におけるリブートをトリガにするマイグレーションの処理を示すフローチャート図である。 第2の実施の形態における移行計画テーブルの一例を示す図である。 第3の実施の形態におけるリブートをトリガにするマイグレーションの処理を示すフローチャート図である。 第3の実施の形態におけるリブートをトリガにするマイグレーションの処理を示すフローチャート図である。 第3の実施の形態におけるリブートをトリガにするマイグレーションの処理を示すフローチャート図である。 第3の実施の形態における移行計画テーブルの例を示す図である。
以下の説明では、適宜、情報処理装置である物理マシンにインストールされたソフトウエアが、ソフトウエアの機能を実行する旨の説明を行う。このような動作は、正確に表現すると、物理マシンがソフトウエアを実行することで、ソフトウエアが有するある機能を実行することを意味する。しかし、以下の説明では、単に、ソフトウエアがその機能を実行する旨の表現で簡略的に説明する場合もある。
[本実施の形態における情報処理システム]
図1は、本実施の形態における情報処理システムの構成を示す図である。情報システムは、仮想マシンVMをハイパーバイザHV上で実行する複数の物理マシン(ホスト)1、2、3と、仮想マシンを管理する管理サーバ(MS)4と、共有ストレージ20とを有する。
各ホスト1、2、3は、ハイパーバイザHVを実行して、一つのまたは複数の仮想マシンVMを起動し実行する。別の表現をすると、ハイパーバイザHVが仮想マシンVMを起動し実行する。共有ストレージ20は、仮想マシンVMのゲストOS(Operating System)や、アプリケーションプログラムなどのイメージファイルを記憶する。仮想マシンVMは、共有ストレージ20内に格納されたイメージファイルのゲストOSとアプリケーションプログラムを実行して、所望のサービスシステムを構築する。
管理サーバ4のVM管理ソフトウエア4_1は、ハイパーバイザHVにコンフィグレーション情報に基づく仮想マシンを起動させ、必要に応じて仮想マシンを一時停止(ポーズ)及び再開(リジューム)させ、遮断(デストロイ)させる。また、管理サーバ4のVM管理ソフトウエア4_1は、ハイパーバイザHVから仮想マシンの動作状態の情報を収集し、必要に応じて仮想マシンを稼働中の物理マシンから別の物理マシンに移行(マイグレーション)させる。さらに、管理サーバ4のVM管理ソフトウエア4_1は、仮想マシンで構築されたサービスシステムの利用者端末6にポータルサイトを提供し、サービスシステムの利用者端末6からのサービスシステムの維持管理を可能にする。
各ホスト1、2、3と管理サーバ4と共有ストレージ20とは、管理ネットワークM_NWを介して通信可能にされている。利用者端末6は、外部ネットワークEX_NWを介して管理サーバ4が提供するクラウドコンピューティングサービスのポータルサイト4_3にアクセス可能である。さらに、情報処理システムの運用管理者端末7は、例えば管理ネットワークM_NWを介して管理サーバ4にアクセス可能である。また、各仮想マシンVMは、VMネットワークVM_NWを介して通信可能にされている。図1では、各仮想マシンVMに直接VMネットワークMV_NWが接続されるように記載されているが、実際には、仮想マシンVMは、ホスト1、2、3のネットワークインターフェースを介してVMネットワークMV_NWに接続される。
図1の情報処理システムは、ソフトウエアアップデートサービスサーバ5を有する。このソフトウエアアップデートサービスサーバ5は、情報処理システム内のホスト1、2、3のソフトウエアや、情報処理システム内の仮想マシンVMのソフトウエアのアップデートの適用を指示する。情報処理システムを管理する運用管理者端末7が、ソフトウエアアップデートサービスサーバ5に、ソフトエウアアップデートのスケジュールを設定することで、情報処理システムの管理者は、情報処理システム内のソフトウエアのアップデートの適用を計画的に実行する。
図2は、図1の各ホスト1、2、3と管理サーバ4とソフトウエアアップデートサービスサーバ5の概略構成を示す図である。例えば、ホスト1、2、3は、演算処理装置であるCPU10と、RAM12と、ROM13と、ネットワークインターフェース(例えばNIC:Network Interface Card)14と、入出力部15と、ハードディスクなどの大容量記憶装置16とを有し、それらはバス18を介して接続される。
ホスト1、2、3の場合、大容量記憶装置16は、例えばOSやハイパーバイザHVなどを格納する。管理サーバ4の場合、大容量記憶装置16は、例えばOSとVM管理ソフトウエア4_1などを記憶する。また、ソフトウエアアップデートサービスサーバ5の場合、大容量記憶装置16は、例えばOSとソフトウエアアップデートサービスプログラムを記憶する。そして、大容量記憶装置16に格納されているOSやソフトウエアはRAM内に展開され、CPUにより実行される。
図3は、図1に示した共有ストレージ20の構成を示す図である。共有ストレージ20は、VMホスト1、2、3に生成される仮想マシンVMのイメージファイルを記憶する。仮想マシンVMのイメージファイルは、例えばゲストOSとアプリケーションAPLと各種データDATAなどである。各種データDATAには、例えば前述のI/O状態を含むハードウエアのエミュレーション状態も含まれる。
VMホスト1、2、3のハイパーバイザHVは、管理サーバ4のVM管理ソフトウエア4_1からの仮想マシンVMの作成コマンドに応答して、共有ストレージ20内のイメージファイルに対応する仮想マシンを起動し、仮想マシンVMを実行する。
図4は、ハイパーバイザの一部のコマンドとその処理内容を示す図表である。VMホスト1、2、3のハイパーバイザHVは、管理サーバ4のVM管理ソフトウエア4_1などからのコマンドに応答して、図4に示した処理を実行する。作成コマンド(または起動コマンド)(create)に対する処理は、仮想マシンVMのコンフィグレーション情報に従う仮想マシンVMを起動する処理である。VMホスト上で仮想マシンVMを起動することで仮想マシンVMが作成される。
仮想マシンVMのコンフィグレーション情報は、VM管理ソフトウエア4_1が管理する仮想マシンのコンフィグレーションファイルに記述されている。仮想マシンのコンフィグレーションファイルには、例えば仮想マシンが使用するCPUまたはCPUコアの数もしくはCPU使用率、メモリ使用容量、ネットワーク帯域幅などが含まれる。管理サーバ4は、仮想マシンのコンフィグレーションファイルを添付して(またはそのパス情報を示して)作成コマンド(create)をVMホストのハイパーバイザHVに送信する。
一時停止コマンド(pause)に対する処理は、仮想マシンVMの動作を一時停止する処理である。この一時停止により、仮想マシンVMはメモリ領域などのリソースの使用を継続するが、ハイパーバイザHVによる仮想化の制御は停止し、仮想マシンVMによるアプリケーションの実行などは停止する。再開コマンド(resume)に対する処理は、一時停止している仮想マシンVMの動作を再開する処理である。そして、遮断コマンド(destroy)に対する処理は、仮想マシンVMの動作を遮断し、VMホスト上に生成していた仮想マシンVMを削除する処理である。この遮断コマンドにより、仮想マシンVMが使用していたメモリ内のデータやCPU内のコマンドの情報は、必要に応じて共有ストレージ20内のイメージファイルに退避される。
[ライブマイグレーション]
図5は、ライブマイグレーションの処理を示すフローチャート図である。前提として、移行元ホスト上で仮想マシンVMが起動され動作中である。そこで、まず、管理サーバ4のVM管理ソフトウエア4_1が、移行先ホストに仮想マシンVMを作成するためのリソース、CPU、メモリ容量、ネットワーク帯域幅などのハードウエアリソースを確保する(S1)。管理サーバ4のVM管理ソフトウエア4_1は、ハイパーバイザHVから仮想マシンVMの動作情報を収集し、各ホストのハードウエアリソースを管理している。したがって、その管理しているハードウエアリソースに基づいて、VM管理ソフトウエア4_1は移行される仮想マシンが使用する移行先のホストのリソースを予約しておく。
次に、VM管理ソフトウエア4_1は、移行先ホストで移行対象の仮想マシンVMを起動し、その仮想マシンを一時停止状態にする(S2)。この処理は、管理サーバ4のVM管理ソフトウエア4_1が移行先ホストのハイパーバイザHVに作成コマンドを実行させ、その後一時停止コマンドを実行させることで行われる。
そして、移行元ホストのハイパーバイザHVは、移行対象の仮想マシンVMが使用中のメモリ領域のスナップショットを取得し(S3)、取得したスナップショットを移行先ホストのメモリに転送する(S4)。このメモリのデータの転送は、転送に必要なメモリのデータ量が閾値以下になるまで継続される(S5)。閾値以下にならない場合、移行元ホストのハイパーバイザHVは、スナップショットの転送中に移行元ホストのメモリに書き込まれたダーティページを、スナップショットの転送終了後に移行先ホストのメモリに転送する。
転送が必要なメモリのデータ量が閾値以下になると(S5のYES)、移行元ホストのハイパーバイザHVは、移行元ホストの仮想マシンVMを一時停止し、移行元ホストのCPUやメモリ内の仮想マシンの動作データを移行先ホストに転送する(S7)。これにより、移行先ホストの仮想マシンVMは、移行元ホストの仮想マシンと同じ動作状態になる。そして、移行先ホストのハイパーバイザHVが、一時停止状態の仮想マシンVMを再開させる(S8)。それと共に、移行元ホストのハイパーバイザHVが、移行対象の仮想マシンVMを遮断し、管理サーバ4のVM管理ソフトウエア4_1に仮想マシンの移行が完了したことを通知する(S10)。
以上の通り、ライブマイグレーションでは、移行元ホストの仮想マシンVMを遮断することなく移行先ホストに同じ仮想マシンVMを起動する。工程S6で移行元ホストの仮想マシンVMが一時停止されてから、工程S8で移行先ホストで仮想マシンVMが起動するまでのごく短い時間だけ、仮想マシンVMの動作が停止するだけである。したがって、仮想マシンVMは実質的に動作を停止しないで、移行元ホストから移行先ホストに移行(マイグレート)される。
上記のライブマイグレーションは、以下のような問題がある。第1に、移行元ホストのメモリ領域のスナップショットを移行先ホストのメモリに転送することで、ネットワークの帯域を利用することになる。さらに、転送すべきメモリのデータ容量が大きくなると転送時間が長くなり、特に、メモリのデータの書き換えを頻繁に行う仮想マシンVMの場合は、転送すべきメモリのデータ容量が閾値以下になるまでの時間を予測するのが困難になる。したがって、多数のホストで多数の仮想マシンを作成して実行させる大規模なクラウドシステムでは、ホストをメンテナンスするために長時間と多くのネットワーク帯域幅が必要になる。
第2に、移行元ホストのハイパーバイザHVと移行先ホストのハイパーバイザHV間でバージョンが異なる場合は、移行先ホストで仮想マシンVMが起動しても正常に動作することができず、ライブマイグレーションが失敗に終わる場合がある。失敗する一つの原因として、バージョンが異なることで動作状態を格納するメモリ領域が異なり、移行元ホストでの仮想マシンの動作状態を移行先ホストに引き継ぐことができない場合などがある。
[本実施の形態におけるマイグレーション]
図1に戻り、VMホスト1、2、3のハイパーバイザHVは、仮想マシンVMの作成や遮断などの一般的な機能に加えて、仮想マシンVMのソフトウエアリブート(以下単にソフトリブートと称する。)を検出するリブート検出モジュール(または再起動検出モジュール)RDM(Reboot Detection Module)を有する。仮想マシンVMへのソフトリブートの処理は、仮想マシンVMのゲストOSがBIOSコールにより再起動ルーチンを呼び出す処理を有する。そこで、ハイパーバイザHVのリブート検出モジュールRDMに、BIOSコールによる再起動ルーチンの呼び出しを検出する機能を設けることで、仮想マシンのソフトリブートを検出することができる。一般に、ハイパーバイザは、仮想マシンの起動コマンドや遮断コマンドを検出するが、仮想マシンのソフトリブートについては、仮想マシンが動作中の動作であるので、検出することはない。そこで、本実施の形態では、ハイパーバイザHVに仮想マシンのソフトリブートを検出する改良を加える。
さらに、ハイパーバイザHVは、リブート検出モジュールRDMによるソフトリブートの検出に応答して、リブート対象の仮想マシンVMを遮断し、管理サーバ4への仮想マシンの遮断通知などを行うRDM管理モジュールRDM_Mを有する。
そして、管理サーバ4のVM管理ソフトウエア4_1は、通常のVM管理機能に加えて、VMリブート管理モジュール4_2を有する。このVMリブート管理モジュール4_2は、移行対象の仮想マシンVMのリブート検出モジュールRDMを有効化し、仮想マシンVMのリブート検出前後の処理を例えばハイパーバイザHVのRDM管理モジュールRDM_Mに設定し、それにより仮想マシンVMのソフトリブートをトリガにしてVMホストを変更することを可能にする。
また、ソフトウエアアップデートサービスサーバ5は、動作中の仮想マシンVMに対してOSのソフトウエアアップデーターの提供と適用を行う。例えば、管理サーバ4のVM管理ソフトウエア4_1がソフトウエアアップデートサービスサーバ5に、図1の情報処理システム内の移行対象の仮想マシンVMに対するOSのソフトウエアアップデートのスケジュールを設定する。この設定されたスケジュールに基づいて、ソフトウエアアップデートサービスサーバ5は、移行対象の仮想マシンVMにOSのソフトウエアアップデートの適用を通知する。アップデートの適用の通知に応答して、仮想マシンVMの利用者端末6で仮想マシンVMの再起動(リブート)の操作が行われると、そのソフトリブートの操作に応答して仮想マシンVMがリブートされる。
本実施の形態では、この仮想マシンVMのリブートをハイパーバイザHVのリブート検出モジュールRDMが検出し、RDM管理モジュールRDM_Mに通知する。このリブートをトリガにして、RDM管理モジュールRDM_Mが移行元ホストで移行対象の仮想マシンVMを遮断し、例えばVM管理サーバ4のVMリブート管理モジュール4_2に仮想マシンの遮断を通知する。VMリブート管理モジュール4_2は、この通知に応答して、移行先ホストのハイパーバイザHVに遮断した仮想マシンVMの起動を指示して遮断した仮想マシンを起動させる。
VMリブート管理モジュール4_2に代えて、ハイパーバイザHV内のRDM管理モジュールRDM_Mが、移行先ホストのハイパーバイザHVに直接、遮断した仮想マシンVMの起動を通知して遮断した仮想マシンを起動させても良い。
また、RDM管理モジュールRDM_Mには、移行対象の仮想マシンと移行対象でない仮想マシンを区別する設定が行われることが好ましい。かかる設定を参照することで、RDM管理モジュールRDM_Mは、仮想マシンのリブートが検出された場合、移行対象の仮想マシンなら同じホストでの起動をせず異なるホストでの起動につながる処理を行い、移行対象でない仮想マシンなら通常のリブートと同様に遮断と同じホストでの起動を実行する。
本実施の形態では、上記のとおり、ハイパーバイザHVが移行対象の仮想マシンVMのソフトリブートを検出したタイミングで、移行対象仮想マシンVMを移行元ホストで遮断させ、移動先ホストで移行対象仮想マシンVMを起動して、仮想マシンのマイグレーションを実行する。つまり、ライブマイグレーションとは異なり、本実施の形態では、仮想マシンのリブートのタイミングを検出してコールドマイグレーションを実行し、仮想マシンを別のホストに移行(マイグレーション)する。
仮想マシンのリブートを引き起こす手段として、上記のOSのソフトウエアアップデートに伴うソフトリブート以外に、情報処理システムの運用管理者端末7からの移行対象仮想マシンVMへの強制ソフトリブートや、仮想マシンの利用者端末6による任意のソフトリブートでも良い。運用管理者端末7からの移行対象仮想マシンへの強制ソフトリブートは、仮想マシンにCtrl-Alt-Deleteキーによるソフトリブートコマンドを送信することで実行される。また、仮想マシンの利用者による任意のソフトリブートは、情報処理システムの運用管理者端末7から仮想マシンの利用者に対するメールで仮想マシンのリブートを依頼し、利用者が任意のタイミングで行う利用者端末6でのリブート操作を待つことにより実現される。
図6は、本実施の形態におけるリブートをトリガとするマイグレーションの処理を示すフローチャート図である。本実施の形態のリブートをトリガとするマイグレーションをここではリブートマイグレーションと称する。
図7、図8は、本実施の形態におけるリブートをトリガとするマイグレーションの処理を示すシーケンス図である。このシーケンス図は、図6のフローチャートの処理を実行する主体を明示する図である。図7、図8も参照して図6のリブートマイグレーションの処理を以下説明する。
前提として、VM管理ソフトウエア4_1が、ホスト1のハイパーバイザHVに仮想マシンVM_1を起動させている。そして、ホスト1のメンテナンスなどの目的で、ホスト1上の仮想マシンVM_1をホスト2に移行(マイグレーション)する場合を想定する。
まず、VM管理ソフトウエア4_1が、移行先ホスト2に仮想マシンVM_2を作成するために必要なハードウエアリソース、CPU、メモリ容量、ネットワーク帯域幅などを確保する。VM管理ソフトウエア4_1による仮想マシンのハードウエアリソースの確保の具体的な処理は、図5の工程S1で説明したのと同様である。
そして、VM管理ソフトウエア4_1が、移行元ホスト1の移行対象仮想マシンVMのリブート検出モジュールRDMを有効化し、そのRDM管理モジュールRDM_Mにリブート検出時の処理を設定する(S12)。このリブート検出時の処理の設定は、例えば、全ての仮想マシンVMに対応して、リブート検出時にリブートマイグレーションを実行するか否かのフラグと、移行対象VMを遮断したことを通知する通知先IPアドレスと、移行先ホストの移行先仮想マシンのIPアドレスとポート番号などを含むテーブルの設定である。
そこで、ホスト1で起動中の仮想マシンVM_1でソフトリブートが操作されると、仮想マシンVM_1に対応するリブート検出モジュールRDMがそのソフトリブートを検出する(S13)。そして、リブート検出モジュールRDMがそのソフトリブートの検出を、RDM管理モジュールRDM_Mに通知し、RDM管理モジュールRDM_Mにソフトリブート検出後の処理を実行させる。
リブート検出モジュールRDMに対応する仮想マシンVM_1が移行対象の場合、RDM管理モジュールRDM_Mにソフトリブート検出後の処理が設定済みである。したがって、仮想マシンVM_1が移行対象でない場合、RDM管理モジュールRDM_Mはリブート検出時の処理が指定されておらず(S14のNO)、何も実行せずに終了する。一方、仮想マシンが移行対象である場合、RDM管理モジュールRDM_Mはリブート検出時の処理が指定されているので(S14のYES)、移行元ホスト1のリブートが検出された仮想マシンVM_1を遮断する(S15)。そして、RDM管理モジュールRDM_Mは、仮想マシンVM_1を遮断した旨の通知を、VM管理ソフトウエア4_1に行う(S16)。仮想マシンVM_1が遮断されると、仮想マシンVM_1の動作中のメモリ内のデータやCPUのレジスタ情報などで保存が必要なデータは共有ストレージ20のイメージファイルに退避される。
そして、図7の例では、管理ソフトウエア4_1のVMリブート管理モジュール4_2が仮想マシンVM_1の遮断通知に応答して、移行先ホスト2のハイパーバイザHVに仮想マシンVM_2の起動を指示する(S17)。これに応答して、移行先ホスト2のハイパーバイザHVは、遮断した移行対象仮想マシンのコンフィグレーション情報に基づいて仮想マシンVM_2を起動する(S18)。コンフィグレーション情報と仮想マシンのイメージファイルのパス情報は、例えば起動コマンドに添付される。
一方、図8の例では、移行元ホスト1のハイパーバイザHVのRDM管理モジュールRDM_Mが、移行先ホスト2のハイパーバイザHVに仮想マシンVM_2の起動を指示する(S17)。つまり、図7のようにVMリブート管理モジュール4_2ではなく、図8では、移行元ホスト1のハイパーバイザHVが移行先ホスト2のハイパーバイザHVに直接仮想マシンVM_2の起動を指示する。これに応答して、移行先ホスト2のハイパーバイザHVは、移行対象仮想マシンのコンフィグレーション情報に基づいて仮想マシンVM_2を起動する(S18)。
本実施の形態におけるリブートマイグレーションでは、移行対象仮想マシンのリブートをトリガとして移行元ホストで仮想マシンを遮断し、移行先ホストで仮想マシンを起動する。したがって、起動中の仮想マシンのメモリ内のデータを移行元ホストから移行先ホストに転送する必要がない。さらに、移行先ホストのハイパーバイザHVのバージョンが移行元ホストのハイパーバイザと異なっていても、移行元ホストでの仮想マシンの動作状態を移行先ホストが引き継がないので、移行先ホストでの仮想マシンの起動に失敗することは少ない。
[変形例]
図9は、本実施の形態におけるリブートをトリガとするマイグレーションの処理の変形例を示すフローチャート図である。図9に示した処理S11-S18は、図6の処理S11-S18と同じである。但し、図9のフローチャートでは、移行先ホストのハイパーバイザHVが仮想マシンVMを起動する処理S18の後、処理S19,S20,S21が実行される。
すなわち、仮想マシンVMを起動する処理S18の後、移行先ホスト2のハイパーバイザHVが、移行先ホスト2での仮想マシンVMの起動が成功したか否かをチェックし(S19)、何らかの理由で失敗した場合、移行先ホスト2のハイパーバイザHVが管理サーバ4のVM管理ソフトウエア4_1に起動の失敗を通知する(S20)。この通知に応答して、VM管理ソフトウエア4_1が、移行元ホスト1のハイパーバイザHVに遮断した仮想マシンVMの起動を指示し、ハイパーバイザHVに仮想マシンVMを起動させる(S21)。移行元ホストのハイパーバイザHVであるので、仮想マシンVMの起動に失敗することはほとんどない。但し、移行対象の仮想マシンVMの移行先ホストへのマイグレーションは完了していない。
図9に示した、移動先ホストのハイパーバイザHVによる仮想マシンVMの起動成功のチェック処理S19と、起動を失敗している場合の処理S20,S21は、図7、図8のシーケンス図にも記載されている。
[仮想マシンのリブート検出処理]
図10は、本実施の形態における仮想マシンのリブート動作と検出処理を示すフローチャート図である。このリブート検出処理は、図6,9のリブート検出モジュールRDMによる仮想マシンのリブート検出処理S13に対応する。
まず、移行元ホストの仮想マシンVMに対してソフトリブート操作が行われると(S30のYES)、その仮想マシンVM上のゲストOSが仮想マシンVMの遮断処理(シャットダウン処理)を開始する(S31)。開始後、仮想マシンVM上のゲストOSがプログラムを全て停止する(S32)。さらに、仮想マシンVM上のゲストOSがBIOSコールにより再起動ルーチンを呼び出す(S33)。移行元ホストのハイパーバイザHVのリブート検出モジュールRDMが、仮想マシンVMの再起動ルーチンの呼び出しを検出し(S34)、RDM管理モジュールRDM_Mに仮想マシンVMのリブート検出を通知する(S35)。
このように、本実施の形態によれば、ハイパーバイザHVに仮想マシンの再起動ルーチンの読み出しを検出するリブート検出モジュールRDMを新たに追加することで、仮想マシンVMのソフトリブートを検出する。
図11は、本実施の形態におけるRDM管理モジュールRDM_Mに設定されるリブート検出時の処理テーブル例を示す図である。リブート検出時の処理テーブルは、全ての仮想マシンVMのIDに対応して、ソフトリブートが検出された場合にリブートマイグレーションを実行するか否かを示すリブートマイグレーションフラグと、仮想マシンVMの遮断後にその遮断を通知する管理サーバ4のIPアドレスと、移行先ホストのIPアドレス及びポート番号とを有する。
図11に示した処理テーブル例では、仮想マシンVM_01は、移行対象ではないためリブートマイグレーションフラグが「0」になっている。したがって、仮想マシンVM_01のソフトリブートが検出された場合、RDM管理モジュールRDM_Mはその仮想マシンVM_01にリブートマイグレーションの処理を実行せず、ハイパーバイザHVが通常のリブート処理を実行する。
一方、仮想マシンVM_02、VM_03は、移行対象であるのでリブートマイグレーションフラグが「1」になっている。したがって、仮想マシンVM_02、VM_03のソフトリブートが検出された場合、RDM管理モジュールRDM_Mはその仮想マシンVM_02、VM_03にリブートマイグレーションの処理を実行する。
仮想マシンVM_02に対しては、通知先管理サーバのIPアドレスが設定されているが、移行先ホストのIPアドレスとポート番号は設定されていない。したがって、RDM管理モジュールRDM_Mは、仮想マシンVM_03のソフトリブートが検出された場合、その仮想マシンVM_02を遮断し、管理サーバ4のVM管理ソフトウエア4_1に遮断の通知を行う。この通知に応答して、VM管理ソフトウエア4_1は、移行先ホストのハイパーバイザHVに仮想マシンVM_02の起動を指示し起動させる。すなわち、図7に示したリブートマイグレーションの処理が実行される。
一方、仮想マシンVM_03に対しては、通知先管理サーバのIPアドレスと、移行先ホストのIPアドレスとポート番号とが設定されている。したがって、RDM管理モジュールRDM_Mは、仮想マシンVM_03のソフトリブートが検出された場合、その仮想マシンVM_03を遮断し、管理サーバ4のVM管理ソフトウエア4_1に遮断の通知を行う。さらに、RDM管理モジュールRDM_Mは、移行先ホストのハイパーバイザHVに仮想マシンVM_03の起動を指示して起動させる。すなわち、図8に示したリブートマイグレーションの処理が実行される。
[第2の実施の形態におけるリブートをトリガにするマイグレーション]
図12、図13、図14は、第2の実施の形態におけるリブートをトリガにするマイグレーションの処理を示すフローチャート図である。第2の実施の形態は、第1のホスト上の仮想マシンを全て第1のホスト以外のホストに移行し、第1のホストのメンテナンスを可能にする処理である。第2の実施の形態では、第1のホスト上の仮想マシンのソフトリブートを促す積極的な処理を行わず、仮想マシンでソフトリブート操作が行われるのを待って、ソフトリブートを検出した仮想マシンを他のホストに移行処理する。
図12は、VM管理ソフトウエア4_1によるメンテナンス開始設定の処理を示す。まず、運用管理端末7からの指示に応じて、VM管理ソフトウエア4_1が、メンテナンス対象ホストを選択し、そのメンテナンス対象ホストで起動中の仮想マシンの移行計画テーブルを設定する(S40)。
図15は、第2の実施の形態における移行計画テーブルの一例を示す図である。この例は、メンテナンス対象ホスト上で起動中の20台の仮想マシンVMを約60分で他のホストにマイグレーションする移行計画テーブルである。移行計画テーブルには、仮想マシンの移行処理開始からの経過時間と、それぞれの経過時間での移行済み仮想マシンの目標台数とが設定される。図15の例では、経過時間30分での移行済み仮想マシンが15台、経過時間60分での移行済み仮想マシンが20台に設定されている。
図12に戻り、VM管理ソフトウエア4_1は、移行元ホストの全仮想マシンVMの移行先ホストを決定する(S41)。VM管理ソフトウエア4_1は、収集している全ホストの仮想マシンの情報に基づいて、どのホストが仮想マシンVMの移行先に適切かを検出する。そして、VM管理ソフトウエア4_1は、それぞれの移行先ホストに移行対象の仮想マシンVMを作成するハードウエアリソースを確保する(S42)。仮想マシン作成のためのハードウエアリソースの確保については既に説明したとおりである。
さらに、VM管理ソフトウエア4_1は、移行元ホストの全仮想マシンVMについてソフトリブート検出後の処理を、移行元ホストのハイパーバイザHVのRDM管理モジュールRDM_Mに設定する(S43)。
図13は、仮想マシンVMのリブート検出後の仮想マシンVMの移行処理を示す。まず、移行元ホストのハイパーバイザHVのリブート検出モジュールRDMが仮想マシンのリブートを検出すると(S44のYES)、リブート検出を通知されたRDM管理モジュールRDM_Mが、リブート検出時の処理テーブル(図11)を参照し、リブートマイグレーションフラグが「1」であれば、移行元ホストのリブートが検出された仮想マシンVMを遮断し(S45)、VM管理ソフトウエア4_1に仮想マシンの遮断を通知する(S46)。そして、その遮断通知に応答して、VM管理ソフトウエア4_1が移行先ホストのハイパーバイザHVに仮想マシンVMの起動を指示する(S47)。この起動指示に応答して、移行先ホストのハイパーバイザHVは移行元ホストで遮断した仮想マシンVMを起動させる(S48)。処理S46では、VM管理ソフトウエア4_1に代えて、移行元ホストのハイパーバイザHVのRDM管理モジュールRDM_Mが直接移行先ホストのハイパーバイザHVに仮想マシンVMの起動を指示しても良い。図13の処理S44-S48は、メンテナンス対象の移行元ホスト上の仮想マシン全てについて繰り返される。
図14は、VM管理ソフトウエア4_1によるVM移行を確認する処理である。VM管理ソフトウエア4_1は、図13の処理S44-S48が繰り返されている間、移行計画テーブルを参照して、経過時間と移行済み仮想マシン数を確認する(S49)。VM管理ソフトウエア4_1は、経過時間が30分に達した時に移行済み仮想マシン数が中間目標台数未満か否かを判定する(S50)。図15の移行計画テーブル例では、30分経過時の中間目標台数は15台である。もし移行済み仮想マシン数が中間目標台数未満であれば、経過時間の60分を経過した時点で全20台の仮想マシンVMの他のホストへの移行完了を達成できない蓋然性が高い。そこで、VM管理ソフトウエア4_1は、未移行の仮想マシンを移行先ホストにライブマイグレーションする処理を開始する(S51)。つまり、VM管理ソフトウエア4_1は、各仮想マシンのソフトリブートの発生を待つことなく、自発的に、未移行の仮想マシンをライブマイグレーションにより他のホストにマイグレートする。
[第3の実施の形態におけるリブートをトリガにするマイグレーション]
図16、図17、図18は、第3の実施の形態におけるリブートをトリガにするマイグレーションの処理を示すフローチャート図である。第3の実施の形態も、第1のホスト上の仮想マシンを全て第1のホスト以外のホストに移行し、第1のホストのメンテナンスを可能にする処理である。但し、第3の実施の形態では、第1のホスト上の仮想マシンのソフトリブートを促す積極的な処理を行い、第1のホスト上の仮想マシンの移行処理を計画通りに完了するようにする。仮想マシンのソフトリブートを促す積極的な処理として、ソフトウエアアップデートサービスサーバ5に移行対象の仮想マシンに対しソフトウエアアップデートの適用を通知するよう設定する。
図16は、VM管理ソフトウエア4_1によるメンテナンス開始設定の処理を示す。まず、運用管理端末7からの指示に応じて、VM管理ソフトウエア4_1が、メンテナンス対象ホストを選択する(S60)。VM管理ソフトウエア4_1は、移行元ホストの全仮想マシンVMの移行先ホストを決定する(S61)。VM管理ソフトウエア4_1は、収集している全ホストの仮想マシンの情報に基づいて、どのホストが仮想マシンVMの移行先に適切かを検出する。そして、VM管理ソフトウエア4_1は、それぞれの移行先ホストに移行対象の仮想マシンVMを作成するハードウエアリソースを確保する(S62)。
さらに、VM管理ソフトウエア4_1は、移行元ホストの全仮想マシンVMについてソフトリブート検出後の処理を、移行元ホストのハイパーバイザHVのRDM管理モジュールRDM_Mに設定する(S63)。
次に、VM管理ソフトウエア4_1は、ソフトウエアアップデートサービスサーバ5に移行対象の仮想マシンVMにソフトウエアのアップデートを適用するよう指示する(S64)。そして、VM管理ソフトウエア4_1は、ソフトウエアアップデートサービスサーバ5のアップデート目安時間に基づき移行計画テーブルを設定する(S65)。
図19は、第3の実施の形態における移行計画テーブルの例を示す図である。この移行計画テーブルは、20台の仮想マシンVMを移行するものである。そして、移行計画テーブルでは、ソフトウエアアップデートサービスサーバ5によるアップデートに要する目安時間を約15分と想定し、経過時間20分で移行済み仮想マシンの台数が18台、経過時間25分で同20台と策定されている。
ソフトウエアアップデートサービスサーバ5が各仮想マシンにアップデートの適用を通知するが、その通知に応じて実行されるアップデートの目安時間は約15分であり、通知から15分後にソフトリブートの操作が行われ、経過時間18分で大部分の仮想マシンがマイグレーションを完了すると想定される。
しかし、仮想マシンの使用状況によってはアップデートが実行されずアップデート後のソフトリブート操作が行われない場合がある。そこで、VM管理ソフトウエア4_1が、途中経過時間で移行済み仮想マシンの台数を確認し、VM管理ソフトウエア4_1が、アップデートの適用が行われなかった仮想マシンについてハイパーバイザHVにライブマイグレーションを実行させるのが望ましい。
図17は、仮想マシンVMのリブート検出後の仮想マシンVMの移行処理を示す。まず、移行元ホストのハイパーバイザHVのリブート検出モジュールRDMが仮想マシンのリブートを検出すると(S66のYES)、リブート検出を通知されたRDM管理モジュールRDM_Mが、リブート検出時の処理テーブル(図11)を参照し、リブートマイグレーションフラグが「1」であれば、移行元ホストのリブート検出された仮想マシンVMを遮断し(S67)、VM管理ソフトウエア4_1に仮想マシンの遮断を通知する(S68)。そして、その遮断通知に応答して、VM管理ソフトウエア4_1が移行先ホストのハイパーバイザHVに仮想マシンVMの起動を指示する(S69)。この起動指示に応答して、移行先ホストのハイパーバイザHVは移行対象の仮想マシンVMを起動させる(S70)。処理S69では、VM管理ソフトウエア4_1に代えて、移行元ホストのハイパーバイザHVのRDM管理モジュールRDM_Mが直接移行先ホストのハイパーバイザHVに仮想マシンVMの起動を指示しても良い。処理S66-S70は、メンテナンス対象の移行元ホスト上の仮想マシン全てについて繰り返される。
第3の実施の形態では、ソフトウエアアップデートサービスサーバ5がメンテナンス対象のホスト上の仮想マシンに対しソフトウエアアップデートの適用を計画的に通知するので、各仮想マシンでは、特段の事情がなければ、アップデート処理が適用され仮想マシンのソフトリブート操作が行われることが予想される。したがって、移行対象の仮想マシンは計画的にリブートされ、それをトリガにして移行元ホストで遮断され、他のホストで起動されることが予想される。
図18は、VM管理ソフトウエア4_1によるVM移行を確認する処理である。VM管理ソフトウエア4_1は、図17の処理S66-S70が繰り返されている間、移行計画テーブルを参照して、経過時間と移行済み仮想マシン数を確認する(S70)。VM管理ソフトウエア4_1は、経過時間が18分に達した時に移行済み仮想マシン数が中間目標台数未満か否かを判定する(S72)。図19の移行計画テーブル例では、18分経過時の中間目標台数は18台である。もし移行済み仮想マシン数が中間目標台数未満であれば、不足台数の仮想マシンは、ソフトウエアアップデートの適用中か、またはソフトウエアアップデートの適用を行っていないまたは失敗していることが想定される。
そこで、VM管理ソフトウエア4_1は、ソフトウエアアップデートサービスサーバ5に未移行の仮想マシンのアップデート適用状態を問い合わせる(S73)。そして、未移行の仮想マシンVMでアップデート適用を未実行または適用の失敗が発生している場合は(S74のYES)、VM管理ソフトウエア4_1は、その仮想マシンについてライブマイグレーションを開始するようハイパーバイザHVに通知してライブマイグレーションを開始させる(S75)。アップデート適用を未実行または適用を失敗した理由は、例えば、対象の仮想マシンをソフトリブートできない事情がある場合などが考えられる。一方、未移行の仮想マシンがアップデート適用中であれば、その仮想マシンについてはアップデートの適用が完了するのを待つ。
本実施の形態では、仮想マシンの利用者によるソフトリブートをトリガにしてマイグレーションを実行しているが、仮想マシンの利用者端末からの仮想マシンへのソフトリブート以外でも、例えば、データセンタの情報処理システムの運用管理者端末からの仮想マシンに対する強制リブートや、VM管理ソフトウエア4_1による仮想マシンの利用者端末宛てのソフトリブート依頼メールに応じた利用者からのソフトリブートでも良い。
以上のとおり、本実施の形態のリブートをトリガとするマイグレーションによれば、ライブマイグレーションの場合の移行元ホストのメモリ内のデータを移行先ホストに転送する必要がないので、マイグレーションに長い時間を要することはなく、ネットワーク帯域を使用することがない。さらに、移行元ホストと移行先ホストのハイパーバイザHV間でバージョンが異なる場合でも、移行先ホストで仮想マシンの起動に失敗することは少ない。
また、本実施の形態のリブートをトリガとするマイグレーションによれば、ソフトウエアベンダによるアップデートサービスを利用して、仮想マシンの移行時期をある程度制御することができ、計画的なホストのメンテナンスや、ホストのサイジングを容易にすることができる。
以上の実施の形態をまとめると、次の付記のとおりである。
(付記1)
複数の情報処理装置と、
前記複数の情報処理装置を管理する管理装置とを有し、
前記複数の情報処理装置のうち第1の情報処理装置は、
仮想マシンを起動する起動部と、
前記仮想マシンの再起動を検出する再起動検出部と、
前記再起動の検出に応答して前記仮想マシンを遮断する遮断部とを有し、
前記複数の情報処理装置のうち第2の情報処理装置は、
前記第1の情報処理装置の仮想マシンが遮断された後、前記遮断された仮想マシンを起動する旨の起動指示を受信した場合、前記遮断された仮想マシンを起動する起動部を有する情報処理システム。
(付記2)
前記第1の情報処理装置は、さらに、前記仮想マシンを遮断した旨の遮断通知を前記管理装置に送信する遮断通知部を有し、
前記管理装置は、前記第1の情報処理装置から前記遮断通知を受信した場合、前記起動指示を前記第2の情報処理装置に送信する指示部を有する、付記1に記載の情報処理システム。
(付記3)
前記第1の情報処理装置は、さらに、前記起動指示を前記第2の情報処理装置に送信する指示部を有する、付記1に記載の情報処理システム。
(付記4)
前記第2の情報処理装置は、
前記起動部が前記遮断された仮想マシンの起動に失敗した場合、前記遮断された仮想マシンの起動に失敗した旨の失敗通知を前記管理装置に送信する失敗通知部を有し、
前記管理装置は、前記失敗通知を受信した場合、前記起動指示を前記第1の情報処理装置に送信する指示部を有する、付記1に記載の情報処理システム。
(付記5)
前記管理装置は、前記第1の情報処理装置に、前記仮想マシンの再起動を検出した場合に前記仮想マシンを遮断するか否かを含む再起動時処理の設定を行う設定部を有する、付記1に記載の情報処理システム。
(付記6)
前記再起動時処理には、前記仮想マシンの再起動を検出した場合に前記仮想マシンを遮断するか否かに加えて、前記遮断した仮想マシンを起動する旨の起動指示を前記第2の情報処理装置に送信するか否かを有する、付記5に記載の情報処理システム。
(付記7)
前記第1の情報処理装置の前記再起動検出部は、前記仮想マシンのオペレーションシステムがBIOSコールにより再起動ルーチンを呼び出した場合に前記仮想マシンの再起動を検出する、付記1に記載の情報処理システム。
(付記8)
さらに、所定のタイミングで前記第1の情報処理装置の仮想マシンにソフトウエアアップデートの適用を指示するシフトウエアアップデートサービス装置を有し、
前記第1の情報処理装置の仮想マシンは、前記ソフトウエアアップデートに伴って行われる再起動操作に応答して前記再起動を開始する、付記1に記載の情報処理システム。
(付記9)
前記第1の情報処理装置は、さらに、前記仮想マシンを遮断した旨の遮断通知を前記管理装置に送信する遮断通知部を有し、
前記管理装置は、前記第1の情報処理装置で起動されている複数の仮想マシンのうち所定の数の仮想マシンが第1の期間中に遮断されていない場合、前記第1の情報処理装置の遮断されていない残りの仮想マシンを前記第2の情報処理装置にライブマイグレーションする旨のライブマイグレーション指示を前記第1の情報処理装置に送信する指示部を有する、付記1に記載の情報処理システム。
(付記10)
複数の情報処理装置と、前記複数の情報処理装置を管理する管理装置とを有する情報システムの制御方法であって、
前記複数の情報処理装置のうち第1の情報処理装置が、仮想マシンを起動する起動工程と、
前記第1の情報処理装置が、前記仮想マシンの再起動を検出する再起動検出工程と、
前記第1の情報処理装置が、前記再起動の検出に応答して前記仮想マシンを遮断する遮断工程と、
前記複数の情報処理装置のうち第2の情報処理装置が、前記第1の情報処理装置の仮想マシンが遮断された後、前記遮断された仮想マシンを起動する旨の起動指示を受信した場合、前記遮断された仮想マシンを起動する起動工程とを有する情報処理システムの制御方法。
(付記11)
さらに、前記第1の情報処理装置が、前記仮想マシンを遮断した旨の遮断通知を前記管理装置に送信する遮断通知工程と、
前記管理装置が、前記第1の情報処理装置から前記遮断通知を受信した場合、前記起動指示を前記第2の情報処理装置に送信する指示工程とを有する、付記10に記載の情報処理システムの制御方法。
(付記12)
さらに、前記第1の情報処理装置が、前記仮想マシンを遮断した後、前記起動指示を前記第2の情報処理装置に送信する指示工程を有する、付記10に記載の情報処理システムの制御方法。
1、2、3:VMホスト、ホスト、物理マシン、ホストコンピュータ
HV:ハイパーバイザ
RDM:リブート検出モジュール
RDM_M:RDM管理モジュール
4:管理サーバ、MS
4_1:VM管理ソフトウエア
4_2:VMリブート管理モジュール
5:ソフトウエアアップデートサービスサーバ
6:利用者端末
7:運用管理者端末
20:共有ストレージ
OS:オペレーティングシステム
APL:アプリケーション
DATA:データ
M_NW:管理ネットワーク
VM_NW:仮想マシンネットワーク

Claims (9)

  1. 複数の情報処理装置と、
    前記複数の情報処理装置を管理する管理装置とを有し、
    前記複数の情報処理装置のうち第1の情報処理装置は、
    仮想マシンを起動する起動部と、
    前記仮想マシンの再起動を検出する再起動検出部と、
    前記再起動の検出に応答して前記仮想マシンを遮断する遮断部とを有し、
    前記複数の情報処理装置のうち第2の情報処理装置は、
    前記第1の情報処理装置の仮想マシンが遮断された後、前記遮断された仮想マシンを起動する旨の起動指示を受信した場合、前記遮断された仮想マシンを起動する起動部を有する情報処理システム。
  2. 前記第1の情報処理装置は、さらに、前記仮想マシンを遮断した旨の遮断通知を前記管理装置に送信する遮断通知部を有し、
    前記管理装置は、前記第1の情報処理装置から前記遮断通知を受信した場合、前記起動指示を前記第2の情報処理装置に送信する指示部を有する、請求項1に記載の情報処理システム。
  3. 前記第1の情報処理装置は、さらに、前記起動指示を前記第2の情報処理装置に送信する指示部を有する、請求項1に記載の情報処理システム。
  4. 前記第2の情報処理装置は、
    前記起動部が前記遮断された仮想マシンの起動に失敗した場合、前記遮断された仮想マシンの起動に失敗した旨の失敗通知を前記管理装置に送信する失敗通知部を有し、
    前記管理装置は、前記失敗通知を受信した場合、前記起動指示を前記第1の情報処理装置に送信する指示部を有する、請求項1に記載の情報処理システム。
  5. 前記管理装置は、前記第1の情報処理装置に、前記仮想マシンの再起動を検出した場合に前記仮想マシンを遮断するか否かを含む再起動時処理の設定を行う設定部を有する、請求項1に記載の情報処理システム。
  6. 前記第1の情報処理装置の前記再起動検出部は、前記仮想マシンのオペレーションシステムがBIOSコールにより再起動ルーチンを呼び出した場合に前記仮想マシンの再起動を検出する、請求項1に記載の情報処理システム。
  7. さらに、所定のタイミングで前記第1の情報処理装置の仮想マシンにソフトウエアアップデートの適用を指示するシフトウエアアップデートサービス装置を有し、
    前記第1の情報処理装置の仮想マシンは、前記ソフトウエアアップデートに伴って行われる再起動操作に応答して前記再起動を開始する、請求項1に記載の情報処理システム。
  8. 前記第1の情報処理装置は、さらに、前記仮想マシンを遮断した旨の遮断通知を前記管理装置に送信する遮断通知部を有し、
    前記管理装置は、前記第1の情報処理装置で起動されている複数の仮想マシンのうち所定の数の仮想マシンが第1の期間中に遮断されていない場合、前記第1の情報処理装置の遮断されていない残りの仮想マシンを前記第2の情報処理装置にライブマイグレーションする旨のライブマイグレーション指示を前記第1の情報処理装置に送信する指示部を有する、請求項1に記載の情報処理システム。
  9. 複数の情報処理装置と、前記複数の情報処理装置を管理する管理装置とを有する情報システムの制御方法であって、
    前記複数の情報処理装置のうち第1の情報処理装置が、仮想マシンを起動する起動工程と、
    前記第1の情報処理装置が、前記仮想マシンの再起動を検出する再起動検出工程と、
    前記第1の情報処理装置が、前記再起動の検出に応答して前記仮想マシンを遮断する遮断工程と、
    前記複数の情報処理装置のうち第2の情報処理装置が、前記第1の情報処理装置の仮想マシンが遮断された後、前記遮断された仮想マシンを起動する旨の起動指示を受信した場合、前記遮断された仮想マシンを起動する起動工程とを有する情報処理システムの制御方法。
JP2014243835A 2014-12-02 2014-12-02 情報処理システム及び情報処理システムの制御方法 Withdrawn JP2016110183A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014243835A JP2016110183A (ja) 2014-12-02 2014-12-02 情報処理システム及び情報処理システムの制御方法
US14/923,118 US20160154664A1 (en) 2014-12-02 2015-10-26 Information processing system and method of controlling same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014243835A JP2016110183A (ja) 2014-12-02 2014-12-02 情報処理システム及び情報処理システムの制御方法

Publications (1)

Publication Number Publication Date
JP2016110183A true JP2016110183A (ja) 2016-06-20

Family

ID=56079270

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014243835A Withdrawn JP2016110183A (ja) 2014-12-02 2014-12-02 情報処理システム及び情報処理システムの制御方法

Country Status (2)

Country Link
US (1) US20160154664A1 (ja)
JP (1) JP2016110183A (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102193012B1 (ko) * 2014-02-04 2020-12-18 삼성전자주식회사 분산 처리 시스템 및 이의 동작 방법
US9729632B2 (en) * 2014-10-17 2017-08-08 International Business Machines Corporation Managing migration of an application from a source to a target
CN105991687B (zh) * 2015-02-03 2019-09-17 阿里巴巴集团控股有限公司 一种服务管理方法和装置
US10133593B1 (en) 2016-03-31 2018-11-20 Amazon Technologies, Inc. Virtual machine migration
US10430266B2 (en) * 2016-06-13 2019-10-01 Vmware, Inc. Full state session reviving, forking, and snapshoting based on an application data dump
US10432752B2 (en) * 2017-04-12 2019-10-01 International Business Machines Corporation Method and system for mobile applications update in the cloud
JP6901683B2 (ja) * 2017-09-22 2021-07-14 富士通株式会社 調整プログラム、調整装置および調整方法
US11416277B2 (en) * 2019-11-22 2022-08-16 Nutanix, Inc. Situation-aware virtual machine migration
US11561821B1 (en) * 2020-05-07 2023-01-24 Amazon Technologies, Inc. Controlling placement of virtualized resources based on desirability index for host pools
US11481116B2 (en) * 2020-09-09 2022-10-25 Microsoft Technology Licensing, Llc Computing device with independently coherent nodes

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677351B2 (en) * 2007-03-29 2014-03-18 Vmware, Inc. System and method for delivering software update to guest software on virtual machines through a backdoor software communication pipe thereof
JP5454135B2 (ja) * 2009-12-25 2014-03-26 富士通株式会社 仮想マシン移動制御装置、仮想マシン移動制御方法および仮想マシン移動制御プログラム
US8589525B2 (en) * 2010-11-01 2013-11-19 Red Hat Israel, Ltd. Enhanced reboot command

Also Published As

Publication number Publication date
US20160154664A1 (en) 2016-06-02

Similar Documents

Publication Publication Date Title
JP2016110183A (ja) 情報処理システム及び情報処理システムの制御方法
US10210061B2 (en) Fault tolerant application storage volumes for ensuring application availability and preventing data loss using forking techniques
US9965304B2 (en) Delayed hardware upgrades in virtualization systems
CN107636612B (zh) 应用迁移装置、方法与存储介质
US10404795B2 (en) Virtual machine high availability using shared storage during network isolation
US9323563B2 (en) Determining virtual machine migration in view of a migration rule
US9336039B2 (en) Determining status of migrating virtual machines
US9201679B2 (en) Multiple destination live migration
US9110704B2 (en) Pre-warming of multiple destinations for fast live migration
US20150205688A1 (en) Method for Migrating Memory and Checkpoints in a Fault Tolerant System
US11487523B2 (en) Updating machine emulator
US20090150463A1 (en) Method of migration between virtual machine and physical machine and machine system thereof
US9058199B2 (en) Pre-warming destination for fast live migration
US8006254B2 (en) Bequeathing privilege to a dynamically loaded module
CN109168328B (zh) 虚拟机迁移的方法、装置和虚拟化系统
US10339012B2 (en) Fault tolerant application storage volumes for ensuring application availability and preventing data loss using suspend-resume techniques
WO2022135429A1 (zh) 快速启动方法
US20060041786A1 (en) Method of checkpointing parallel processes in execution within plurality of process domains
WO2021018267A1 (zh) 虚拟机热迁移方法和通信设备
WO2020063432A1 (zh) 一种升级虚拟化模拟器的方法和装置
US9342338B2 (en) Application migration in a process virtual machine environment
JP2015075898A (ja) 処理再開方法、処理再開プログラムおよび情報処理システム
US20200133701A1 (en) Software service intervention in a computing system
US20230216731A1 (en) Method and system for monitoring switch on basis of bmc, and device and medium
CN112948102B (zh) 虚拟机事件处理方法、装置和系统

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170804

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20171225