JP2011146002A - 仮想ネットワーク制御プログラム、仮想ネットワーク制御方法および情報処理装置 - Google Patents

仮想ネットワーク制御プログラム、仮想ネットワーク制御方法および情報処理装置 Download PDF

Info

Publication number
JP2011146002A
JP2011146002A JP2010008504A JP2010008504A JP2011146002A JP 2011146002 A JP2011146002 A JP 2011146002A JP 2010008504 A JP2010008504 A JP 2010008504A JP 2010008504 A JP2010008504 A JP 2010008504A JP 2011146002 A JP2011146002 A JP 2011146002A
Authority
JP
Japan
Prior art keywords
migration
server
vlan
virtual machine
virtual network
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.)
Granted
Application number
JP2010008504A
Other languages
English (en)
Other versions
JP5347982B2 (ja
Inventor
Koyo Nakagawa
幸洋 中川
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 JP2010008504A priority Critical patent/JP5347982B2/ja
Priority to PCT/JP2011/050672 priority patent/WO2011087122A1/ja
Priority to EP11732992.0A priority patent/EP2527979A4/en
Publication of JP2011146002A publication Critical patent/JP2011146002A/ja
Priority to US13/544,317 priority patent/US9250959B2/en
Application granted granted Critical
Publication of JP5347982B2 publication Critical patent/JP5347982B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • H04L12/4675Dynamic sharing of VLAN information amongst network nodes
    • H04L12/4679Arrangements for the registration or de-registration of VLAN attribute values, e.g. VLAN identifiers, port VLAN membership
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/76Routing in software-defined topologies, e.g. routing between virtual machines
    • 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/4557Distribution of virtual machine instances; Migration and load balancing
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control

Abstract

【課題】マイグレーションの実行による不要なトラフィックの発生を防止することを課題とする。
【解決手段】管理サーバ10は、マイグレーションによる移動対象のVMの移動先サーバ30の物理ポートが移動対象のVMが使用するVLANに属していない場合に、当該移動先サーバ30の物理ポートが当該VLANを利用できるように制御する。また、管理サーバ10は、マイグレーションによって移動対象のVMが移動先サーバ30に移動された場合に、移動対象のVMが使用していたVLANが移動元サーバ20で実行される他のVMで利用されているか否かを判定する。そして、管理サーバ10は、移動元サーバ20の他のVMで利用されていないと判定された場合に、移動元サーバ20の物理ポートが移動対象のVMが使用していたVLANを利用できないように制御する。
【選択図】図2

Description

本発明は、仮想ネットワーク制御プログラム、仮想ネットワーク制御方法および情報処理装置に関する。
従来、情報処理装置としてのサーバ上で、複数のVM(Virtual Machine:仮想マシン)といわれる仮想的なサーバを動作させるサーバ仮想化技術が知られている。サーバでは、VMの生成などVMに関する各種制御を実施するVMM(Virtual Machine Monitor)を動作させている。
このサーバ仮想化技術では、あるサーバで稼動中のVMを、動作を停止させることなく別のサーバに移行させるライブマイグレーション(Live Migration)が実行されている。ここで、図22と図23を用いて、ライブマイグレーションの処理例を説明する。図22は、ライブマイグレーションを実施するシステムの構成を示す図であり、図23は、ライブマイグレーションの動作シーケンスを示す図である。
図22に示すように、この例では、移動元サーバであるサーバAのVMを移動先サーバであるサーバBに移動させる例について説明する。また、サーバAおよびサーバB各々では、VMに関する各種制御を実施するVMMが動作している。このような状態において、移動先であるサーバBで動作するVMMは、図23の(1)に示すように、管理者等の指示操作を受け付けると、新しいVMをサーバB上に生成する。
続いて、移動元であるサーバAで動作するVMMは、移動対象のVMがサーバAで動作している状態で、図23の(2)に示すように、プレコピーを実施する。具体的には、サーバAで動作するVMMは、自身が利用しているメモリ内容をサーバBのVMMに転送する。そして、サーバAのVMMは、メモリの変更量に応じて、このプレコピーを繰り返す。
その後、サーバAのVMMは、図23の(3)に示すように、メモリの変更量が所定値以下になった場合に、ストップアンドコピーを実施する。具体的には、サーバAのVMMは、移動対象のVMの業務を一時的に停止し、自身が利用しているメモリ内容をサーバBのVMMに転送する。
そして、サーバBのVMMは、図23の(4)に示すように、移動されたVMを起動して業務を再開するとともに、物理スイッチにリバースARP(Address Resolution Protocol)を送出する。そして、サーバBのVMMは、MACアドレス(Media Access Control address)とIP(Internet Protocol)アドレスがサーバBに移行したことを通知する。上述したライブマイグレーションを実行することで、VMを移動させることができる。
特開2009−181418号公報 特開2009−217302号公報
しかしながら、従来の技術では、マイグレーションの実行によって、不要なトラフィックが発生する場合があるという課題があった。
例えば、図24の(1)に示すように、サーバAのVM1とサーバBのVM3とが同じVLAN(Virtual Local Area Network)であるVLAN(A)で接続されており、サーバAのVM2とサーバBのVM4とが同じVLAN(B)で接続されているとする。この場合に、サーバAのVM2をサーバ2に、サーバBのVM3をサーバAにライブマイグレーションする。ライブマイグレーションでは、移動先のサーバもVLANに属するように、ネットワークを構成する外部スイッチのVLAN設定がされている必要がある。したがって、図24の(2)に示すように、それぞれのサーバ上では、移行したVMが使用していたVLANが残っている状態となり、不要なトラフィックが発生する。図24は、従来技術に係るライブマイグレーション結果を示す図である。
開示の技術は、上記に鑑みてなされたものであって、マイグレーションの実行による不要なトラフィックの発生を防止することが可能である仮想ネットワーク制御プログラム、仮想ネットワーク制御方法および情報処理装置を提供することを目的とする。
本願の開示する仮想ネットワーク制御プログラム、仮想ネットワーク制御方法および情報処理装置は、一つの態様において、マイグレーションによる移動対象の仮想マシンの移動先である移動先サーバ装置の物理ポートが移動対象の仮想マシンが使用する仮想ネットワークに属していない場合に、当該移動先サーバ装置の物理ポートが当該仮想ネットワークを利用できるように制御する利用制御手順と、前記移動対象の仮想マシンが前記移動先サーバ装置に移動された場合に、前記移動対象の仮想マシンが使用していた仮想ネットワークが移動元サーバ装置で実行される他の仮想マシンで利用されているか否かを判定する利用判定手順と、利用されていないと判定された場合に、前記移動元サーバ装置の物理ポートが前記移動対象の仮想マシンが使用していた仮想ネットワークを利用できないように制御する利用停止手順とを情報処理装置に実行させる。
本願の開示する仮想ネットワーク制御プログラム、仮想ネットワーク制御方法および情報処理装置の一つの態様によれば、マイグレーションの実行による不要なトラフィックの発生を防止することが可能であるという効果を奏する。
図1は、実施例1に係るシステムの全体構成を示す図である。 図2は、管理サーバの構成を示すブロック図である。 図3は、移動元サーバの構成を示すブロック図である。 図4は、物理スイッチの構成を示すブロック図である。 図5は、MACテーブルに記憶される情報の例を示す図である。 図6は、VLANテーブルに記憶される情報の例を示す図である。 図7は、実施例1に係るマイグレーション時の処理の流れを示すシーケンス図である。 図8は、管理サーバにおけるメンバ追加の流れを示すフローチャートである。 図9は、管理サーバにおけるメンバ削除の流れを示すフローチャートである。 図10は、実施例2におけるマイグレーション処理前後のVM構成を説明する図である。 図11は、マイグレーションが開始された現状のVLAN設定情報を示す図である。 図12は、予定セットとして記憶されるマイグレーション完了後のVLAN設定情報を示す図である。 図13は、実施例2に係る管理サーバにおけるメンバ追加の流れを示すフローチャートである。 図14は、実施例2に係る管理サーバにおけるメンバ削除の流れを示すフローチャートである。 図15は、実施例3におけるマイグレーション処理前後のVM構成を説明する図である。 図16は、マイグレーションが開始された現状のVLAN設定情報を示す図である。 図17は、予定セットとして記憶されるマイグレーション完了後のVLAN設定情報を示す図である。 図18は、実施例4におけるマイグレーション処理前後のVM構成を説明する図である。 図19は、マイグレーションが開始された現状のVLAN設定情報を示す図である。 図20は、予定セットとして記憶されるマイグレーション完了後のVLAN設定情報を示す図である。 図21は、マイグレーション制御プログラムを実行するコンピュータシステム100を示す図である。 図22は、ライブマイグレーションを実施するシステムの構成を示す図である。 図23は、ライブマイグレーションの動作シーケンスを示す図である。 図24は、従来技術に係るライブマイグレーション結果を示す図である。
以下に、本願の開示する仮想ネットワーク制御プログラム、仮想ネットワーク制御方法および情報処理装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
[全体構成]
まず、図1を用いて、本願が開示する管理サーバを含むシステムの全体構成を説明する。図1は、実施例1に係るシステムの全体構成を示す図である。図1に示すように、このシステムは、管理サーバ10と移動元サーバ20と移動先サーバ30と物理スイッチ40とを有している。
管理サーバ10は、サーバ間でVM(Virtual Machine:仮想マシン)をライブマイグレーションする際に、当該VMに関する情報を管理制御する情報処理装置である。例えば、管理サーバ10は、ライブマイグレーションによる移動対象のVMの移動先である移動先サーバ30の物理ポートが、移動対象のVMが使用するVLAN(Virtual Local Area Network)に属していないか否かを判定する。
そして、管理サーバ10は、移動対象のVMが使用するVLANに属していない場合、移動先サーバ30の物理ポートが当該VLANを利用できるように制御する。その後、管理サーバ10は、ライブマイグレーションによって移動対象のVMが移動先サーバ30に移動された場合に、移動対象のVMが使用していたVLANが移動元サーバ20上の他のVMで利用されているか否かを判定する。そして、管理サーバ10は、移動元サーバ20上の他のVMで利用されていないと判定された場合に、移動元サーバ20の物理ポートが移動対象のVMが使用していたVLANを利用できないように制御する。
移動元サーバ20は、ライブマイグレーションによって移動先サーバ30に移動されるVMの移動元の情報処理装置である。なお。ここでは、移動元サーバ20には、1つのVMが起動している図示しているが、これに限定されるものではなく、複数のVMが起動していてもよい。
移動先サーバ30は、ライブマイグレーションによって移動元サーバ20上のVMが移動する先の情報処理装置である。なお。ここでは、移動先サーバ30には、1つのVMが起動している図示しているが、これに限定されるものではなく、複数のVMが起動していてもよい。
物理スイッチ40は、各サーバ間でやり取りされるデータ転送をルーティング制御するスイッチなどのネットワーク機器である。例えば、物理スイッチ40は、各サーバ間のルーティング情報や各サーバで実行されているVM間のルーティング情報を保持し、これらを用いて、ルーティング制御を実施する。
[各装置の構成]
次に、図1に示した各装置の構成について説明する。ここでは、管理サーバ10、移動元サーバ20、物理スイッチ40の順に説明する。なお、移動元サーバ20と移動先サーバ30とは同様の構成を有するので、移動元サーバ20についてのみ詳細に説明する。
(管理サーバの構成)
図2は、管理サーバの構成を示すブロック図である。図2に示すように、管理サーバ10は、物理インタフェース11と記憶部12と制御部13とを有する。なお、これら以外にも、例えば管理者等から各種指示を受け付けるマウス等の入力部や、マイグレーション結果を表示したりするディスプレイ等の表示部などを有していてもよい。
物理インタフェース11は、他のサーバや物理スイッチ40との間の通信を制御するネットワークインタフェースカード(NIC:Network Interface Card)である。例えば、物理インタフェース11は、後述する制御部13から送信された移動先サーバ30に対するVM作成指示やVM起動指示を転送し、これらに対する応答を受信する。また、物理インタフェース11は、同様に制御部13から送信された物理スイッチ40に対する移動先サーバ30の物理ポートをVLANに追加する指示や移動対象のVMが使用していたVLANから移動元サーバ20の物理ポートを削除する指示を転送する。
記憶部12は、制御部13による各種処理に必要なデータおよびプログラムを格納する半導体メモリ素子、または、ハードディスクなどの記憶装置である。制御部13は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などの電子回路である。この制御部13は、OS(Operating System)などの制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有するとともに、マイグレーション制御部14を有し、これらによって各種処理を実行する。
マイグレーション制御部14は、VMM(Virtual Machine Monitor)制御部14aと物理スイッチ制御部14bとを有し、これらによって各サーバ間で実行されるマイグレーションの実行を制御する。
VMM制御部14aは、移動元サーバ20や移動先サーバ30のVMMに対して各種制御を実施する。例えば、VMM制御部14aは、管理者等からどのサーバのどのVMをどこに移動させるなどのマイグレーション情報などを、マウスなどの入力部を介して受け付ける。そして、VMM制御部14aは、受け付けたマイグレーション情報に従って、VMの移動先サーバ30のVMMに対して、VMの作成指示を送信する。また、VMM制御部14aは、マイグレーションの実行が完了すると、移動先サーバ30のVMMに対して、移動された新たなVMの起動指示を送信する。
なお、ここでは、管理者等からマイグレーション情報や開始指示を受け付ける例について説明したが、これに限定されるものではない。例えば、開始契機やマイグレーション情報を予め登録してスケジューリングしておき、スケジューリングに従って実行することもできる。
物理スイッチ制御部14bは、利用制御部14cと利用判定部14dと利用停止部14eとを有し、これらによって、マイグレーションによるVMの移動元サーバ20のVLAN構成や移動先サーバ30のVLAN構成を制御する。利用制御部14cは、マイグレーションによる移動対象のVMの移動先である移動先サーバ30の物理ポートが、移動対象のVMが使用するVLANに属していない場合に、移動先サーバ30の物理ポートを当該VLANに追加する。
利用判定部14dは、マイグレーションによって移動対象のVMが移動先サーバ30に移動された場合に、移動対象のVMが使用していたVLANが移動元サーバ20上の他のVMで利用されているか否かを判定する。利用停止部14eは、利用判定部14dによって、移動元サーバ20上の他のVMで利用されていないと判定された場合に、移動対象のVMが使用していたVLANから移動元サーバ20の物理ポートを削除する。
具体的に例として、移動元サーバは、物理ポート(P1)を介して物理スイッチに接続され、VLAN(V1)を利用するVM1とVLAN(V2)を利用するVM2とを実行しているとする。また、移動先サーバは、物理ポート(P2)を介して物理スイッチに接続され、VLAN(V1)を利用するVM3とVLAN(V2)を利用するVM4とを実行しているとする。このような状態において、「移動対象VM、移動元サーバ、移動先サーバ、属するVLAN」として「VM1、移動元サーバ20、移動先サーバ30、V1」がVMM制御部14aによって受け付けられたとする。つまり、VLAN=V1に属している移動対象のVM1を移動先サーバ30に移動させる例について説明する。
この場合、利用制御部14cは、移動先サーバ30の物理ポート(P2)がVLAN(V1)に属しているか否かを、物理スイッチ40のVLANテーブル43等を参照して判定する。そして、利用制御部14cは、移動先サーバ30の物理ポート(P2)がVLAN(V1)に属していない場合には、VLANテーブル43に記憶される「V1」に属する物理ポート一覧に、物理ポート(P2)を追加する指示を物理スイッチ40に送信する。なお、利用制御部14cは、移動先サーバ30の物理ポート(P2)がVLAN(V1)に属している場合には、特段処理を実施しない。
そして、利用判定部14dは、VM1の移動元である移動元サーバ20上で起動する他のVMがVLAN(V1)に属しているか否かを、物理スイッチ40のVLANテーブル43等を参照して判定する。上記した例の場合、利用判定部14dは、移動元サーバ20上の他のVMがVLAN(V1)に属していない場合には、判定結果として「利用されていない」ことを示す情報を利用停止部14eに送信する。一方、利用判定部14dは、移動元サーバ20上の他のVMがVLAN(V1)に属している場合には、判定結果として「利用されている」ことを示す情報を利用停止部14eに送信する。
そして、利用停止部14eは、利用判定部14dから「利用されていない」ことを示す情報を判定結果として受信したとする。この場合、利用停止部14eは、VLANテーブル43に記憶される「V1」に属する物理ポート一覧から、移動元サーバ20の物理ポート(P1)を削除する指示を物理スイッチ40に送信する。
(移動元サーバの構成)
図3は、移動元サーバの構成を示すブロック図である。図3に示すように、移動元サーバ20は、物理インタフェース21と記憶部22と仮想マシン領域23と制御部24とを有する。なお、これら以外にも、例えば管理者等から各種指示を受け付けるマウス等の入力部や、マイグレーション結果を表示したりするディスプレイ等の表示部などを有していてもよい。
物理インタフェース21は、他のサーバや物理スイッチ40との間の通信を制御するNICである。例えば、物理インタフェース21は、管理サーバ10からVM作成指示やVM起動指示、マイグレーション実施開始指示などを受信する。また、物理インタフェース21は、VM作成完了応答やVM起動完了応答、マイグレーション実施終了応答などを管理サーバ10に送信する。
記憶部22は、後述する制御部24による各種処理に必要なデータおよびプログラムを格納する半導体メモリ素子、または、ハードディスクなどの記憶装置であり、例えば、VMの識別番号や属するVLAN等のVMに関する情報を記憶する。仮想マシン領域23は、制御部24によって作成された複数のVMを起動する領域であり、任意に数のVMを起動することができる。
制御部24は、例えば、CPUやMPUなどの電子回路である。この制御部24は、OSなどの制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有するとともに、VMM25を有し、これらによって各種処理を実行する。
VMM25は、VMの作成、削除、起動、停止などVMに関する各種制御を実施するソフトウエアであり、マイグレーション実行部25aを有する。例えば、VMM25は、管理サーバ10からVM作成指示を受信した場合には、仮想マシン領域23にVMを作成し、管理サーバ10からVM削除指示を受信した場合には、該当VMを仮想マシン領域23から削除する。また、VMM25は、管理サーバ10からVM起動指示を受信した場合には、仮想マシン領域23上の該当VMを起動し、管理サーバ10からVM停止指示を受信した場合には、仮想マシン領域23上の該当VMを停止する。
マイグレーション実行部25aは、マイグレーションの実行を制御する。例えば、マイグレーション実行部25aは、管理サーバ10からマイグレーション実行開始指示をVMM25が受信した場合に、該当VMのプレコピーを実施し、メモリの変更量に応じてプレコピーを繰り返す。そして、マイグレーション実行部25aは、メモリの変更量が所定値以下になった場合に、ストップアンドコピーを実施する。なお、どのVMをどこにマイグレーションさせるかなどの情報は、管理サーバ10から受け付けても良いし、タスク等によってスケジューリングされていてもよい。
(物理スイッチの構成)
図4は、物理スイッチの構成を示すブロック図である。図4に示すように、物理スイッチ40は、物理インタフェース41とMACテーブル42とVLANテーブル43と制御部44とを有する。なお、これら以外にも、例えば管理者等から各種指示を受け付けるマウス等の入力部や、マイグレーション結果を表示したりするディスプレイ等の表示部などを有していてもよい。
物理インタフェース41は、管理サーバ10、移動元サーバ20、移動先サーバ30それぞれとの間の通信を制御するNICである。例えば、物理インタフェース41は、管理サーバ10からどのVMをどのVLANに参加させるかや管理サーバ10からどのVMをどのVLANから削除させるかなどの情報を受信する。
MACテーブル42は、接続されるサーバのMACアドレス(Media Access Control address)とVLAN、ポート番号を動的に学習して記憶する半導体メモリ素子、または、ハードディスクなどの記憶装置である。例えば、MACテーブル42は、図5に示すように、「MACアドレス、VLAN ID、ポート番号」として「X、V1、P3」や「Y、V1、P1」などを記憶する。なお、図5は、MACテーブルに記憶される情報の例を示す図である。また、MACテーブルに記憶される情報は、任意に設定変更することができる。
ここで記憶される「MACアドレス」は、物理インタフェース41を介して受信したデータ(パケット)に含まれる送信元のMACアドレスである。「VLAN ID」は、物理インタフェース41を介して受信したパケットに含まれるVLANを識別する識別子である。「ポート番号」は、パケットを受信した物理インタフェース41のポート番号、すなわち、送信元サーバのポート番号であり、これによってサーバがどのポート番号に接続されているのかを認識できる。
VLANテーブル43は、VLANに属するポート番号を記憶する半導体メモリ素子、または、ハードディスクなどの記憶装置である。例えば、VLANテーブル43は、図6に示すように、「VLAN ID、属するサーバのポート番号」として「V1、P1・P2・P3・P4」などを記憶する。これらの情報は、管理者等によって手動で登録されてもよく、やり取りされるパケットから自動で取得することもできる。なお、図6は、VLANテーブルに記憶される情報の例を示す図である。また、VLANテーブルに記憶される情報は、任意に設定変更することができる。
ここで記憶される「VLAN ID」は、物理インタフェース41を介して受信したパケットに含まれるVLANを識別する識別子である。「ポート番号」は、VLAN IDに属しているサーバのポート番号である。これらの情報は、管理者等によって手動で登録されてもよく、やり取りされるパケットから自動で取得することもできる。
制御部44は、例えば、CPUやMPUなどの電子回路である。この制御部44は、OSなどの制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有するとともに、行先制御部45とVLAN制御部46を有し、これらによって各種処理を実行する。
行先制御部45は、接続される各サーバ間でやり取りされるデータのルーティングを制御する。例えば、行先制御部45は、移動元サーバ20などのサーバからデータを受信した場合に、MACテーブル42やVLANテーブル43を参照して、宛先のサーバや宛先のサーバが属するVLANを特定する。そして、行先制御部45は、特定した宛先サーバが接続されるポート番号やVLANに対してデータを送信する。
また、行先制御部45は、受信したパケットからMACテーブル42を学習する。例えば、行先制御部45は、「宛先=X、送信元=Y、VLAN=V1」のパケットをポート番号(P1)から受信し、このパケットが未学習の場合には、VLAN(V1)に属する全てのポート番号に受信したパケットをフラディングする。そして、行先制御部45は、「MACアドレス=Y、VLAN ID=V1、ポート番号=P1」をMACテーブル42に格納する。その後、行先制御部45は、「宛先=Y、送信元=X、VLAN=V1」のパケットをポート番号(P3)から受信した場合、「MACアドレス=X、VLAN ID=V1、ポート番号=P3」をMACテーブル42に格納する。このようにして、行先制御部45は、受信したパケットからMACテーブル42を学習する。
VLAN制御部46は、VLANの生成や削除などVLANに関する各種制御を実施する。例えば、VLAN制御部46は、管理者等から新たなVLANの作成指示と当該VLANに属するポート番号一覧を受信したとする。この場合、VLAN制御部46は、当該VLANを作成するとともに、当該VLANのVLAN IDと受け付けたポート番号一覧とを対応付けてVLANテーブル43に格納する。また、VLAN制御部46は、管理者等からVLANの削除指示を受信した場合、当該VLANのVLAN IDに対応するデータをVLANテーブル43から削除する。
さらに、VLAN制御部46は、既に存在しているVLANに対して、新たなポート番号の登録指示を受信した場合、VLANテーブル43に記憶される当該VLANのVLAN IDに対応するポート番号一覧に受信したポート番号を登録する。例えば、VLAN制御部46は、VLAN(V1)に対して、移動先サーバ30のポート番号「P2」の追加指示を受信した場合には、VLANテーブル43におけるVLAN(V1)に属するポート番号一覧に「P2」を追加する。
さらに、VLAN制御部46は、既に存在しているVLANに属するポート番号の削除指示を受信した場合、VLANテーブル43に記憶される当該VLANのVLAN IDに対応するポート番号一覧から指示されたポート番号を削除する。例えば、VLAN制御部46は、VLAN(V1)に対して、移動元サーバ20のポート番号「P1」の削除指示を受信した場合には、VLANテーブル43におけるVLAN(V1)に属するポート番号一覧から「P1」を削除する。
[処理の流れ]
次に、実施例1に係るシステムにおける処理の流れを説明する。ここでは、図7を用いて、実施例1に係るマイグレーション時の処理の流れを説明し、図8を用いて、管理サーバにおけるメンバ追加の流れを説明し、図9を用いて、管理サーバにおけるメンバ削除の流れを説明する。
(マイグレーション時の処理の流れ)
図7を用いて、実施例1に係るマイグレーション時の処理の流れを説明する。図7は、実施例1に係るマイグレーション時の処理の流れを示すシーケンス図である。
管理サーバ10のVMM制御部14aは、マイグレーション開始指示を受け付けると(ステップS101)、移動対象となるVMの作成指示を移動先サーバ30に送信する(ステップS102)。そして、移動先サーバ30のVMMは、受信した指示に従ってVMを仮想マシン領域に作成し(ステップS103)、作成が完了すると、作成完了応答を管理サーバ10に送信する(ステップS104)。
続いて、管理サーバ10のVMM制御部14aは、移動元サーバ20のVMM25に対してプレコピーの開始指示を送信する(ステップS105)。すると、移動元サーバ20のVMM25は、移動先サーバ30のVMMに対して、自身が利用しているメモリ内容を転送する(ステップS106とステップS107)。
その後、管理サーバ10の物理スイッチ制御部14bは、プレコピーの完了通知を移動元サーバ20から受信する(ステップS108)。続いて、物理スイッチ制御部14bは、マイグレーションによるVMの移動元サーバ20のVLAN構成や移動先サーバ30のVLAN構成を制御するVLAN制御を実施する(ステップS109)。つまり、移動先サーバ30の物理ポートが、移動対象のVMが使用するVLANに属していない場合に、移動先サーバ30の物理ポートを当該VLANに追加するメンバ追加を実行する(ステップS110)。なお、このステップS110の処理は、図7のステップS101〜ステップS118までのいつ実行してもよく、さらには、ステップS101の前段階で実行してもよい。
そして、管理サーバ10によってメンバ追加処理が実行されている間も、移動元サーバ20のVMM25は、メモリの変更量に応じて、プレコピーを繰り返す(ステップS111〜ステップS113)。
その後、管理サーバ10の物理スイッチ制御部14bは、プレコピーの完了通知を移動元サーバ20から受信する(ステップS114)。続いて、VMM制御部14aは、移動元サーバ20のVMM25に対してストップアンドコピーの開始指示を送信する(ステップS115)。すると、移動元サーバ20のVMM25は、自身のサーバ上で実行されている移動対象のVMの業務を一時的に停止し、自身が利用しているメモリ内容を移動先サーバ30のVMMに転送する(ステップS116とステップS117)。
そして、VMM制御部14aは、ストップアンドコピーが終了したことを示す完了通知を受信すると(ステップS118)、移動先サーバ30のVMMに対して、新たに作成された(移動された)VMの起動指示を送信する(ステップS119)。この起動指示を受信した移動先サーバ30のVMMは、新たに作成したVMを起動し(ステップS120)、起動が完了したことを管理サーバ10に送信する(ステップS121)。
続いて、物理スイッチ制御部14bは、マイグレーションによるVMの移動元サーバ20のVLAN構成や移動先サーバ30のVLAN構成を制御するVLAN制御を実施する(ステップS122)。つまり、物理スイッチ制御部14bは、移動元サーバ20上の他のVMが当該VLANを利用していない場合に、移動対象のVMが使用していたVLANから移動元サーバ20の物理ポートを削除するメンバ削除を実行する(ステップS123)。
(メンバ追加の処理の流れ)
図8を用いて、管理サーバにおけるメンバ追加の流れを説明する。図8は、管理サーバにおけるメンバ追加の流れを示すフローチャートである。
図8に示すように、管理サーバ10のVMM制御部14aは、マイグレーション開始指示(イベント)を受け付けると(ステップS201)、マイグレーション情報を取得する(ステップS202)。例えば、VMM制御部14aは、マイグレーション情報として、「どのサーバのどのVMをどのサーバに移動させるのか」として「移動元サーバ20のVM1を移動先サーバ30に移動させる」などを取得する。取得する先としては、スケジューリングされている情報や管理者等の入力などである。
続いて、物理スイッチ制御部14bの利用制御部14cは、物理スイッチ40のVLANテーブル43を参照して、移動先サーバ30のポート番号が移動対象のVMが使用するVLANに属しているか否かを判定する(ステップS203)。
そして、利用制御部14cは、移動先サーバ30のポート番号が移動対象のVMが使用するVLANに属していない場合(ステップS203否定)、移動先サーバ30のポート番号を当該VLANのメンバに追加する(ステップS204)。具体的には、利用制御部14cは、追加対象の「VLAN ID」と追加対象の「ポート番号」を示すメンバ追加する指示を物理スイッチ40に送信し、物理スイッチ40は、受信した指示に従ってVLANテーブル43を更新する。
一方、利用制御部14cは、移動先サーバ30のポート番号が移動対象のVMが使用するVLANに属している場合(ステップS203肯定)、ステップS205の処理を実行する。
その後、利用制御部14cは、進行中のマイグレーション情報を記憶部12等に格納する(ステップS205)。なお、利用制御部14cは、進行中のマイグレーションが終了した場合には、当該情報を記憶部12から削除する。また、記憶される進行中のマイグレーション情報とは、例えば、「移動元サーバ、移動対象VM、使用VLAN、移動元サーバのVLAN情報、移動先サーバのVLAN情報」などである。
(メンバ削除の処理の流れ)
図9を用いて、管理サーバにおけるメンバ削除の流れを説明する。図9は、管理サーバにおけるメンバ削除の流れを示すフローチャートである。
図9に示すように、管理サーバ10のVMM制御部14aは、ストップアンドコピー完了時又はVM起動完了時のイベントを受け付けると(ステップS301)、進行中のマイグレーション情報を取得する(ステップS302)。こうすることで、どのマイグレーションが終了したのかを特定することができる。
続いて、物理スイッチ制御部14bの利用判定部14dは、物理スイッチ40のVLANテーブル43を参照して、移動元サーバ20に同じVLANに属しているVMが存在するか否かを判定する(ステップS303)。そして、利用判定部14dは、移動元サーバ20に同じVLANに属しているVMが存在しないと判定した場合(ステップS303否定)、移動元サーバ20に同じVLANに属する他のVMがマイグレーション中であるか否かを判定する(ステップS304)。
続いて、利用判定部14dが、移動元サーバ20に同じVLANに属する他のVMがマイグレーション中でないと判定したとする(ステップS304否定)。この場合、利用停止部14eは、移動元サーバ20のポート番号を当該VLANのメンバから削除する(ステップS305)。具体的には、利用停止部14eは、削除対象の「VLAN ID」と削除対象の「ポート番号」を示すメンバ削除する指示を物理スイッチ40に送信し、物理スイッチ40は、受信した指示に従ってVLANテーブル43を更新する。
その後、利用停止部14eは、記憶部12に記憶される進行中のマイグレーション情報を更新する(ステップS306)。
一方、移動元サーバ20に同じVLANに属しているVMが存在すると利用判定部14dが判定した場合(ステップS303肯定)、利用停止部14eは、ステップS304〜ステップS306の処理を実行することなく処理を終了する。また、移動元サーバ20に同じVLANに属する他のVMがマイグレーション中であると利用判定部14dが判定した場合(ステップS304肯定)、利用停止部14eは、ステップS305とステップS306の処理を実行することなく処理を終了する。
[実施例1による効果]
このように、実施例1によれば、管理サーバ10は、マイグレーションによる移動対象のVMの移動先である移動先サーバ30の物理ポートが、移動対象のVMが使用するVLANに属していない場合に、移動先サーバ30の物理ポートを当該VLANに追加する。そして、管理サーバ10は、マイグレーションによって移動対象のVMが移動先サーバ30に移動された場合に、移動対象のVMが使用していたVLANが移動元サーバ20上の他のVMで利用されているか否かを判定する。その後、管理サーバ10は、移動元サーバ20上の他のVMで利用されていないと判定された場合に、移動対象のVMが使用していたVLANから移動元サーバ20の物理ポートを削除する。この結果、マイグレーションの実行による不要なトラフィックの発生を防止することが可能である。
また、実施例1によれば、高速なイーサネット(登録商標)を用いて、ネットワークだけでなく、ストレージもFCoE(Fiber Channel over Ethernet(登録商標))を用いて集約した環境においても、マイグレーションを効率よく実行できる。仮想マシンの移行に合わせて物理スイッチの設定を最適化することで、不要なトラフィックをなくすことができる。IGMPスヌーピングを実行中にマイグレーションを行っても、移動先のサーバが業務を継続できる。
ところで、実施例1では、管理サーバ10は、物理スイッチ40のVLANテーブル43を参照して、VLANのメンバに追加したり、VLANのメンバから削除したりする例について説明したが、これに限定されるものではない。例えば、管理サーバ10は、管理者等から受け付けたマイグレーション実行後(移動後)のVLAN情報を予定セットとして記憶部12に記憶する。そして、管理サーバ10は、記憶する予定セットに基づいて、VLANのメンバに追加したり、VLANのメンバから削除したりすることもできる。
そこで、実施例2では、予定セットを用いてVLANのメンバに追加したり、VLANのメンバから削除したりする例について説明する。ここでは、図10〜図12を用いて、実施例2に係るマイグレーション処理を説明し、図13を用いてメンバの追加を説明し、図14を用いてメンバの削除を説明する。
(実施例2に係るマイグレーション処理)
図10は、実施例2におけるマイグレーション処理前後のVM構成を説明する図である。図11は、マイグレーションが開始された現状のVLAN設定情報を示す図であり、図12は、予定セットとして記憶されるマイグレーション完了後のVLAN設定情報を示す図である。
図10の(1)に示すように、サーバ1にはVLAN(V1)に属するVM1とVLAN(V2)に属するVM2が起動している。また、サーバ2にはVLAN(V1)に属するVM3とVLAN(V2)に属するVM4が起動している。また、サーバ1は、物理ポートP1を介して物理スイッチと接続され、サーバ2は、物理ポートP2を介して物理スイッチと接続され、物理スイッチは、物理ポートP3を介して他のサーバと接続される。
ここでは、このような状態を図10の(2)に示すように、サーバ1にはVLAN(V1)に属するVM1とVM3のみが起動しており、サーバ2にはVLAN(V2)に属するVM2とVM4のみが起動している状態に移動させる例について説明する。
したがって、物理スイッチ40のVLANテーブル43は、図11に示すように「V1:P1,P2,P3、V2:P1,P2,P3」を現状のVLAN情報として記憶する。つまり、VLANテーブル43は、マイグレーション実行によるVM移動前においては、図10に示した各物理ポートP1、P2、P3がVLAN(V1)とVLAN(V2)のそれぞれに属していることを記憶する。
一方、管理サーバ10の記憶部12は、図12に示すように「V1:P1,P3、V2:P2,P3」を移動後のVLAN情報として記憶する。つまり、記憶部12は、マイグレーション実行によるVM移動後においては、図10に示した物理ポートP1、P3がVLAN(V1)に属しており、物理ポートP2、P3がVLAN(V2)に属していることを予定セットとして記憶する。
このような状態において、サーバ1からサーバ2へVM2の移動を開始した場合、管理サーバ10は、マイグレーション実行前の現状のVLAN情報(図11)とマイグレーション実行後(移動後)のVLAN情報(図12)とを比較する。そして、管理サーバ10は、マイグレーション実行後にはサーバ2の物理ポート(P2)がV2に属していると判定する。したがって、サーバ1からサーバ2へのVM2の移動に伴う移動先サーバに関するVLAN設定変更はない。
続いて、サーバ2からサーバ1へVM3の移動を開始した場合、管理サーバ10は、マイグレーション実行前の現状のVLAN情報(図11)とマイグレーション実行後のVLAN情報(図12)とを比較する。そして、管理サーバ10は、実行後にはサーバ1の物理ポート(P1)がV1に属していると判定する。したがって、サーバ2からサーバ1へのVM3の移動に伴う移動先サーバに関するVLAN設定変更はない。
その後、サーバ1からサーバ2へVM2の移動が終了した場合、管理サーバ10は、マイグレーション実行前の現状のVLAN情報(図11)とマイグレーション実行後のVLAN情報(図12)とを比較する。そして、管理サーバ10は、実行後にはサーバ1の物理ポート(P1)がV2に属していないと判定する。したがって、管理サーバ10は、物理スイッチ40に対して、V2からP1を削除する処理を実施する。
また、サーバ2からサーバ1へVM3の移動が終了した場合、管理サーバ10は、マイグレーション実行前の現状のVLAN情報(図11)とマイグレーション実行後のVLAN情報(図12)とを比較する。そして、管理サーバ10は、実行後にはサーバ2の物理ポート(P2)がV1に属していないと判定する。したがって、管理サーバ10は、物理スイッチ40に対して、V1からP2を削除する処理を実施する。
(実施例2に係るメンバ追加の流れ)
次に、図13を用いて、実施例2に係る管理サーバにおけるメンバ追加の流れを説明する。図13は、実施例2に係る管理サーバにおけるメンバ追加の流れを示すフローチャートである。
図13に示すように、管理サーバ10のVMM制御部14aは、マイグレーション開始イベントを受け付けると(ステップS401)、マイグレーション情報を取得する(ステップS402)。例えば、VMM制御部14aは、マイグレーション情報として、「移動対象のVM、移動元サーバのVLAN情報、移動先サーバのVLAN情報」などである。
続いて、物理スイッチ制御部14bの利用制御部14cは、マイグレーション情報を予定セットして記憶部12に記憶する(ステップS403)。例えば、利用制御部14cは、ステップS402で取得したマイグレーション実行後の各サーバのVLAN情報を予定セットとして記憶部12に記憶する。
そして、利用制御部14cは、現状のVLAN情報と予定セットとして記憶されるマイグレーション実行後の各サーバのVLAN情報とを比較する(ステップS404)。続いて、利用制御部14cは、移動先サーバのポート番号が移動対象のVMが使用するVLANに属しているか否かを判定する(ステップS405)。例えば、利用制御部14cは、現状の各サーバのVLAN情報を物理スイッチ40のVLANテーブル43から取得する。そして、利用制御部14cは、取得した現状の各サーバのVLAN情報と予定セットとして記憶されるVLAN情報とを比較する。
その後、利用制御部14cは、移動先サーバのポート番号が移動対象のVMが使用するVLANに属していない場合には(ステップS405否定)、移動先サーバのポート番号を当該VLANのメンバに追加する(ステップS406)。一方、利用制御部14cは、移動先サーバのポート番号が移動対象のVMが使用するVLANに属している場合には(ステップS405肯定)、ステップS406の処理を実行することなく処理を終了する。
なお、利用制御部14cは、マイグレーションを実行するたびに、現状の各サーバのVLAN情報を物理スイッチ40のVLANテーブル43から取得する必要はない。例えば、利用制御部14cは、前回の移動後の情報を記憶しておき、この前回の移動後の情報を今回の現状の情報として用いてもよい。また、利用制御部14cは、ステップS402で管理者等から受け付けるようにしてもよい。
(実施例2に係るメンバ削除の流れ)
図14を用いて、実施例2に係る管理サーバにおけるメンバ削除の流れを説明する。図14は、実施例2に係る管理サーバにおけるメンバ削除の流れを示すフローチャートである。
図14に示すように、管理サーバ10のVMM制御部14aは、ストップアンドコピー完了時又はVM起動完了時のイベントを受け付けると(ステップS501)、終了したマイグレーションの情報を取得する(ステップS502)。例えば、記憶部12等に実行中のマイグレーションと当該マイグレーションを識別する識別子とを対応付けて記憶し、終了したマイグレーションの識別子を制御部等から取得することで、終了したマイグレーションを特定することができる。
利用判定部14dは、取得したマイグレーションの情報を予定セットから削除し(ステップS503)、現状のVLAN情報とマイグレーション実行後のVLAN情報とを比較する(ステップS504)。なお、予定セットからの削除は、ステップS504やステップS506以降であってもよい。
続いて、利用判定部14dは、移動されたVMと同じVLANに属しているVMが移動元サーバに存在するか否かを判定する(ステップS505)。そして、移動されたVMと同じVLANに属しているVMが移動元サーバに存在しないと利用判定部14dが判定した場合(ステップS505否定)、利用停止部14eは、移動元サーバのポート番号を当該VLANのメンバから削除する(ステップS506)。一方、利用停止部14eは、は、移動されたVMと同じVLANに属しているVMが移動元サーバに存在すると利用判定部14dによって判定された場合(ステップS505肯定)、ステップS506を実行することなく処理を終了する。
(実施例2による効果)
このように、実施例2によれば、予約セットを用いて、現状のVLAN設定状況とマイグレーション後のVLAN設定状況とを比較する。この結果、仮想マシンの移行に合わせて物理スイッチの設定を効率的に最適化することができ、不要なトラフィックも効率的になくすことができる。
実施例3では、図15〜図17を用いて、実施例2で説明した予定セットを用いた別例を説明する。図15は、実施例3におけるマイグレーション処理前後のVM構成を説明する図である。図16は、マイグレーションが開始された現状のVLAN設定情報を示す図であり、図17は、予定セットとして記憶されるマイグレーション完了後のVLAN設定情報を示す図である。
図15の(1)に示すように、サーバ1にはVLAN(V1)に属するVM1とVM3が起動している。また、サーバ2にはVLAN(V2)に属するVM2とVM4が起動している。また、サーバ1は、物理ポートP1を介して物理スイッチと接続され、サーバ2は、物理ポートP2を介して物理スイッチと接続され、物理スイッチは、物理ポートP3を介して他のサーバと接続される。
ここでは、このような状態を図15の(2)に示すような状態に移動させる例について説明する。具体的には、サーバ1は、VLAN(V1)に属するVM1とVLAN(V2)に属するVM3が起動している状態である。サーバ2は、VLAN(V1)に属するVM3とVLAN(V2)に属するVM4が起動している状態である。
したがって、物理スイッチ40のVLANテーブル43は、図16に示すように「V1:P1,P3、V2:P2,P3」を現状のVLAN情報として記憶する。つまり、VLANテーブル43は、マイグレーション実行によるVM移動前においては、図15に示した物理ポートP1、P3がVLAN(V1)に属しており、物理ポートP2、P3がVLAN(V2)に属していることを記憶する。
一方、管理サーバ10の記憶部12は、図17に示すように「V1:P1,P2,P3、V2:P1,P2,P3」を移動前のVLAN情報として記憶する。つまり、記憶部12は、マイグレーション実行によるVM移動後においては、図15に示した各物理ポートP1、P2、P3がVLAN(V1)とVLAN(V2)のそれぞれに属していることを記憶する。
このような状態において、サーバ1からサーバ2へVM3の移動を開始した場合、管理サーバ10は、マイグレーション実行前の現状のVLAN情報(図16)とマイグレーション実行後のVLAN情報(図17)とを比較する。そして、管理サーバ10は、実行後のサーバ2の物理ポート(P2)がV1に属していないと判定する。したがって、管理サーバ10は、物理スイッチ40に対して、V1にP2を追加する処理を実施する。
続いて、サーバ2からサーバ1へVM2の移動を開始した場合、管理サーバ10は、マイグレーション実行前の現状のVLAN情報(図16)とマイグレーション実行後のVLAN情報(図17)とを比較する。そして、管理サーバ10は、実行後のサーバ1の物理ポート(P1)がV2に属していないと判定する。したがって、管理サーバ10は、物理スイッチ40に対して、V2にP1を追加する処理を実施する。
その後、サーバ1からサーバ2へVM3の移動が終了した場合、管理サーバ10は、マイグレーション実行前の現状のVLAN情報(図16)とマイグレーション実行後のVLAN情報(図17)とを比較する。そして、管理サーバ10は、実行後のサーバ1の物理ポート(P1)がV1に属していると判定する。したがって、サーバ1からサーバ2へのVM3の移動に伴う移動元サーバに関するVLAN設定変更はない。
また、サーバ2からサーバ1へVM2の移動が終了した場合、管理サーバ10は、マイグレーション実行前の現状のVLAN情報(図16)とマイグレーション実行後のVLAN情報(図17)とを比較する。そして、管理サーバ10は、実行後のサーバ2の物理ポート(P2)がV1に属していると判定する。したがって、サーバ2からサーバ1へのVM2の移動に伴う移動元サーバに関するVLAN設定変更はない。
このように、実施例3によれば、実施例2と同様、予約セットを用いて、現状のVLAN設定状況とマイグレーション後のVLAN設定状況とを比較する。この結果、仮想マシンの移行に合わせて物理スイッチの設定を効率的に最適化することができ、不要なトラフィックも効率的になくすことができる。したがって、どのような設定状況であっても、物理スイッチの設定を効率的に最適化することができ、不要なトラフィックも効率的になくすことができる。
実施例4では、図18〜図20を用いて、移動元サーバと移動先サーバとの間で、同じVLANに属するVMをそれぞれに同時に移動させる例について説明する。図18は、実施例4におけるマイグレーション処理前後のVM構成を説明する図である。図19は、マイグレーションが開始された現状のVLAN設定情報を示す図であり、図20は、予定セットとして記憶されるマイグレーション完了後のVLAN設定情報を示す図である。
図18の(1)に示すように、サーバ1にはVLAN(V1)に属するVM1とVLAN(V2)に属するVM2が起動している。また、サーバ2にはVLAN(V1)に属するVM3とVLAN(V2)に属するVM4が起動している。また、サーバ1は、物理ポートP1を介して物理スイッチと接続され、サーバ2は、物理ポートP2を介して物理スイッチと接続され、物理スイッチは、物理ポートP3を介して他のサーバと接続される。
ここでは、このような状態を図18の(2)に示すような状態に移動させる例について説明する。具体的には、サーバ1は、VLAN(V1)に属するVM1とVLAN(V2)に属するVM4が起動している状態である。サーバ2は、VLAN(V1)に属するVM3とVLAN(V2)に属するVM2が起動している状態である。
したがって、物理スイッチ40のVLANテーブル43は、図19に示すように「V1:P1,P2,P3、V2:P1,P2,P3」を現状のVLAN情報として記憶する。つまり、VLANテーブル43は、マイグレーション実行によるVM移動前においては、図18に示した各物理ポートP1、P2、P3がVLAN(V1)とVLAN(V2)のそれぞれに属していることを記憶する。
一方、管理サーバ10の記憶部12は、図20に示すように「V1:P1,P2,P3、V2:P1,P2,P3」を移動後のVLAN情報として記憶する。つまり、記憶部12は、マイグレーション実行によるVM移動後においては、図20に示した各物理ポートP1、P2、P3がVLAN(V1)とVLAN(V2)のそれぞれに属していることを記憶する。
このような状態において、サーバ1からサーバ2へVM2の移動を開始した場合、管理サーバ10は、マイグレーション実行前の現状のVLAN情報(図19)とマイグレーション実行後のVLAN情報(図20)とを比較する。そして、管理サーバ10は、実行後のサーバ2の物理ポート(P2)がV2に属していると判定する。したがって、サーバ1からサーバ2へのVM2の移動に伴う移動先サーバに関するVLAN設定変更はない。また、このマイグレーションに関する情報を記憶部12に進行中の情報として記憶する。
続いて、サーバ2からサーバ1へVM4の移動を開始した場合、管理サーバ10は、マイグレーション実行前の現状のVLAN情報(図19)とマイグレーション実行後のVLAN情報(図20)とを比較する。そして、管理サーバ10は、実行後のサーバ1の物理ポート(P1)がV2に属していると判定する。したがって、サーバ2からサーバ1へのVM3の移動に伴う移動先サーバに関するVLAN設定変更はない。また、このマイグレーションに関する情報を記憶部12に進行中の情報として記憶する。
その後、サーバ1からサーバ2へVM2の移動が終了した場合、管理サーバ10は、マイグレーション実行前の現状のVLAN情報(図19)とマイグレーション実行後のVLAN情報(図20)とを比較する。そして、管理サーバ10は、実行後のサーバ1の物理ポート(P1)がV1に属していると判定する。したがって、サーバ1からサーバ2へのVM2の移動に伴う移動元サーバに関するVLAN設定変更はない。また、このマイグレーションに関する情報を記憶部12に記憶される進行中の情報から削除する。
また、サーバ2からサーバ1へVM4の移動が終了した場合、管理サーバ10は、マイグレーション実行前の現状のVLAN情報(図19)とマイグレーション実行後のVLAN情報(図20)とを比較する。そして、管理サーバ10は、実行後のサーバ2の物理ポート(P2)がV2に属していると判定する。したがって、サーバ2からサーバ1へのVM4の移動に伴う移動元サーバに関するVLAN設定変更はない。また、このマイグレーションに関する情報を記憶部12に記憶される進行中の情報から削除する。
このように、実施例4によれば、移動元サーバと移動先サーバとの間で同じVLANに属するVMをそれぞれに移動させる場合に、それぞれのマイグレーションの進行情報と予定セットとを記憶部12に記憶管理する。この結果、無駄なVLAN設定変更の実施を抑止することができ、マイグレーションを効率的に実行することができる。
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下に異なる実施例を説明する。
(利用開始制御および停止制御の手法)
実施例1〜4では、物理ポートがVLANを使用可能にする制御として、VLANのメンバに物理ポートを追加する手法を例示したがこれに限定されるものではない。例えば、物理スイッチ40のVLANテーブル43に「使用可能状況」などのフラグを用意し、使用可能であれば「ON」、使用不可であれば「OFF」を登録するようにしてもよい。また、物理ポートがVLANを使用不能にする制御として、VLANのメンバから物理ポートを削除する手法を例示したがこれに限定されるものではない。上記例と同様に、例えば、物理スイッチ40のVLANテーブル43に「使用可能状況」などのフラグを用意し、使用可能であれば「ON」、使用不可であれば「OFF」を登録するようにしてもよい。
(システム)
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともできる。あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、例えば図3、図4、図6〜図16等に示した各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、例えばVMM制御部14aと物理スイッチ制御部14bとを統合するなど各装置の分散・統合の具体的形態は図示のものに限られない。また、管理サーバ10の各制御部を物理スイッチ40が設けるようにしてもよい。つまり、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
(プログラム)
ところで、上記の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することができる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータシステムの一例を説明する。
図21は、マイグレーション制御プログラムを実行するコンピュータシステム100を示す図である。図21に示すように、コンピュータシステム100は、RAM101と、HDD102と、ROM103と、CPU104とを有する。ここで、ROM103には、上の実施例と同様の機能を発揮するプログラムがあらかじめ記憶されている。つまり、図21に示すように、VMM制御プログラム103a、利用制御プログラム103b、利用判定プログラム103c、利用停止プログラム103dがあらかじめ記憶されている。
そして、CPU104には、これらのプログラム103a〜103dを読み出して実行することで、図21に示すように、各プロセスとなる。つまり、VMM制御プロセス104a、利用制御プロセス104b、利用判定プロセス104c、利用停止プロセス104dとなる。なお、VMM制御プロセス104aは、図2に示したVMM制御部14aに対応し、同様に、利用制御プロセス104bは、利用制御部14cに対応する。また、利用判定プロセス104cは、利用判定部14dに対応し、利用停止プロセス104dは、利用停止部14dに対応する。また、HDD102には、各プロセスで実行されるデータを記憶する領域やテンポラリ領域が設けられる。
ところで、上記したプログラム103a〜103dは、必ずしもROM103に記憶させておく必要はない。例えば、コンピュータシステム100に挿入されるフレキシブルディスク(FD)、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に記憶させておくにしてもよい。また、コンピュータシステム100の内外に備えられるハードディスクドライブ(HDD)などの「固定用の物理媒体」に記憶させておいてもよい。さらに、公衆回線、インターネット、LAN、WANなどを介してコンピュータシステム100に接続される「他のコンピュータシステム」に記憶させておいてもよい。そして、コンピュータシステム100がこれらからプログラムを読み出して実行するようにしてもよい。
すなわち、この他の実施例でいうプログラムは、上記した「可搬用の物理媒体」、「固定用の物理媒体」、「通信媒体」などの記録媒体に、コンピュータ読み取り可能に記録されるものである。そして、コンピュータシステム100は、このような記録媒体からプログラムを読み出して実行することで上記した実施例と同様の機能を実現する。なお、この他の実施例でいうプログラムは、コンピュータシステム100によって実行されることに限定されるものではない。例えば、他のコンピュータシステムまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
10 管理サーバ
11 物理インタフェース
12 記憶部
13 制御部
14 マイグレーション制御部
14a VMM制御部
14b 物理スイッチ制御部
14c 利用制御部
14d 利用判定部
14e 利用停止部
20 移動元サーバ
21 物理インタフェース
22 記憶部
23 仮想マシン領域
24 制御部
25 VMM
25a マイグレーション実行部
40 物理スイッチ
41 物理インタフェース
42 MACテーブル
43 VLANテーブル
44 制御部
45 行先制御部
46 VLAN制御部
100 コンピュータシステム
101 RAM
102 HDD
103 ROM
103a VMM制御プログラム
103b 利用制御プログラム
103c 利用判定プログラム
103d 利用停止プログラム
104 CPU
104a VMM制御プロセス
104b 利用制御プロセス
104c 利用判定プロセス
104d 利用停止プロセス

Claims (6)

  1. マイグレーションによる移動対象の仮想マシンの移動先である移動先サーバ装置の物理ポートが移動対象の仮想マシンが使用する仮想ネットワークに属していない場合に、当該移動先サーバ装置の物理ポートが当該仮想ネットワークを利用できるように制御する利用制御手順と、
    前記移動対象の仮想マシンが前記移動先サーバ装置に移動された場合に、前記移動対象の仮想マシンが使用していた仮想ネットワークが移動元サーバ装置で実行される他の仮想マシンで利用されているか否かを判定する利用判定手順と、
    利用されていないと判定された場合に、前記移動元サーバ装置の物理ポートが前記移動対象の仮想マシンが使用していた仮想ネットワークを利用できないように制御する利用停止手順と
    を情報処理装置に実行させることを特徴とする仮想ネットワーク制御プログラム。
  2. 前記情報処理装置は、
    前記移動先サーバについて、前記移動先サーバについて、前記マイグレーションの実行後の仮想ネットワークの設定状況である第2設定状況を記憶し、
    前記利用制御手順は、前記マイグレーション開始前における移動先サーバの仮想ネットワークの設定状況と前記第2設定状況とを比較して、前記移動先サーバ装置の物理ポートが移動対象の仮想マシンが使用する仮想ネットワークに属しているか否かを判定することを特徴とする請求項1に記載の仮想ネットワーク制御プログラム。
  3. 前記情報処理装置は、前記移動元サーバについて、前記マイグレーションの実行後の仮想ネットワークの設定状況である第1設定状況を記憶し、
    前記移動元サーバについて、前記マイグレーションの実行後に予定される仮想ネットワークの設定状況を記憶する移動元予定情報記憶部をさらに有し、
    前記利用判定手順は、前記マイグレーション開始前における移動元サーバの仮想ネットワークの設定状況と前記第1設定状況とを比較して、前記移動対象の仮想マシンが使用していた仮想ネットワークが移動元サーバ装置で実行される他の仮想マシンで利用されているか否かを判定することを特徴とする請求項1または2に記載の仮想ネットワーク制御プログラム。
  4. 前記情報処理装置は、実行中のマイグレーションに関する情報を記憶し、
    前記利用停止手順は、さらに、前記実行中のマイグレーションに関する情報によって、前記移動元サーバ装置が他の仮想マシンの移動先サーバ装置であり、当該他の仮想マシンが前記移動対象の仮想マシンが使用していた仮想ネットワークを使用しないと特定される場合に、前記移動元サーバ装置の物理ポートが前記移動対象の仮想マシンが使用していた仮想ネットワークを利用できないように制御することを特徴とする請求項1〜3のいずれか一つに記載の仮想ネットワーク制御プログラム。
  5. マイグレーションによる移動対象の仮想マシンの移動先である移動先サーバ装置の物理ポートが移動対象の仮想マシンが使用する仮想ネットワークに属していない場合に、当該移動先サーバ装置の物理ポートが当該仮想ネットワークを利用できるように制御する利用制御ステップと、
    前記移動対象の仮想マシンが前記移動先サーバ装置に移動された場合に、前記移動対象の仮想マシンが使用していた仮想ネットワークが移動元サーバ装置で実行される他の仮想マシンで利用されているか否かを判定する利用判定ステップと、
    利用されていないと判定された場合に、前記移動元サーバ装置の物理ポートが前記移動対象の仮想マシンが使用していた仮想ネットワークを利用できないように制御する利用停止ステップと
    を含んだことを特徴とする仮想ネットワーク制御方法。
  6. マイグレーションによる移動対象の仮想マシンの移動先である移動先サーバ装置の物理ポートが移動対象の仮想マシンが使用する仮想ネットワークに属していない場合に、当該移動先サーバ装置の物理ポートが当該仮想ネットワークを利用できるように制御する利用制御部と、
    前記移動対象の仮想マシンが前記移動先サーバ装置に移動された場合に、前記移動対象の仮想マシンが使用していた仮想ネットワークが移動元サーバ装置で実行される他の仮想マシンで利用されているか否かを判定する利用判定部と、
    利用されていないと判定された場合に、前記移動元サーバ装置の物理ポートが前記移動対象の仮想マシンが使用していた仮想ネットワークを利用できないように制御する利用停止部と
    を有することを特徴とする情報処理装置。
JP2010008504A 2010-01-18 2010-01-18 仮想ネットワーク制御プログラム、仮想ネットワーク制御方法および管理装置 Expired - Fee Related JP5347982B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2010008504A JP5347982B2 (ja) 2010-01-18 2010-01-18 仮想ネットワーク制御プログラム、仮想ネットワーク制御方法および管理装置
PCT/JP2011/050672 WO2011087122A1 (ja) 2010-01-18 2011-01-17 仮想ネットワーク制御プログラム、仮想ネットワーク制御方法および情報処理装置
EP11732992.0A EP2527979A4 (en) 2010-01-18 2011-01-17 Virtual network control program, virtual network control method, and information processing device
US13/544,317 US9250959B2 (en) 2010-01-18 2012-07-09 Recording medium virtual network control method and information processing apparatus for virtual network control

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010008504A JP5347982B2 (ja) 2010-01-18 2010-01-18 仮想ネットワーク制御プログラム、仮想ネットワーク制御方法および管理装置

Publications (2)

Publication Number Publication Date
JP2011146002A true JP2011146002A (ja) 2011-07-28
JP5347982B2 JP5347982B2 (ja) 2013-11-20

Family

ID=44304392

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010008504A Expired - Fee Related JP5347982B2 (ja) 2010-01-18 2010-01-18 仮想ネットワーク制御プログラム、仮想ネットワーク制御方法および管理装置

Country Status (4)

Country Link
US (1) US9250959B2 (ja)
EP (1) EP2527979A4 (ja)
JP (1) JP5347982B2 (ja)
WO (1) WO2011087122A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013069260A (ja) * 2011-09-05 2013-04-18 Fujitsu Ltd データ中継装置、データ中継プログラムおよびデータ中継方法
JP2013148984A (ja) * 2012-01-17 2013-08-01 Fujitsu Ltd プログラム、仮想マシン制御方法、情報処理装置および情報処理システム
US9753756B2 (en) 2012-03-19 2017-09-05 Fujitsu Limited Information processing system, information processing method, and computer readable recording medium storing a program
US9794147B2 (en) 2014-02-03 2017-10-17 Fujitsu Limited Network switch, network system, and network control method
JP2018137643A (ja) * 2017-02-22 2018-08-30 日本電信電話株式会社 管理装置および管理方法

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103631633B (zh) * 2012-08-20 2017-04-12 中国电信股份有限公司 虚拟机全系统在线迁移方法、装置与系统
US9491090B1 (en) * 2012-12-20 2016-11-08 Juniper Networks, Inc. Methods and apparatus for using virtual local area networks in a switch fabric
WO2014106945A1 (ja) * 2013-01-04 2014-07-10 日本電気株式会社 制御装置、通信システム、トンネルエンドポイントの制御方法及びプログラム
CN104010018B (zh) 2013-02-27 2017-09-12 联想企业解决方案(新加坡)私人有限公司 同步组播组的方法和装置
JP6011401B2 (ja) * 2013-03-18 2016-10-19 富士通株式会社 接続情報を生成するための情報処理装置及び方法
EP2978169B1 (en) * 2013-03-19 2017-05-17 Fujitsu Limited Switch, setting method, and program
US9253043B2 (en) 2013-11-30 2016-02-02 At&T Intellectual Property I, L.P. Methods and apparatus to convert router configuration data
US9733968B2 (en) 2015-03-16 2017-08-15 Oracle International Corporation Virtual machine (VM) migration from switched fabric based computing system to external systems
JP2017162416A (ja) * 2016-03-11 2017-09-14 富士通株式会社 レプリケーションプログラム、冗長化システム、およびレプリケーション方法
JP6740911B2 (ja) * 2017-01-16 2020-08-19 富士通株式会社 ポート切替プログラム、ポート切替方法、および情報処理装置
JP7003562B2 (ja) * 2017-10-16 2022-01-20 富士通株式会社 ミラーパケット制御プログラム、ミラーパケット制御方法、およびミラーパケット制御装置
US11409619B2 (en) 2020-04-29 2022-08-09 The Research Foundation For The State University Of New York Recovering a virtual machine after failure of post-copy live migration

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006244481A (ja) * 2005-02-28 2006-09-14 Hewlett-Packard Development Co Lp クラスタシステムの仮想マシンをマイグレーションするためのシステム及び方法
JP2007522583A (ja) * 2004-02-13 2007-08-09 インテル・コーポレーション 動的に拡張可能な仮想スイッチの装置および方法
JP2009070142A (ja) * 2007-09-13 2009-04-02 Hitachi Ltd 仮想計算機の実行可否検査方法
JP2009232207A (ja) * 2008-03-24 2009-10-08 Hitachi Ltd ネットワークスイッチ装置、サーバシステム及びサーバシステムにおけるサーバ移送方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8619771B2 (en) * 2009-09-30 2013-12-31 Vmware, Inc. Private allocated networks over shared communications infrastructure
US8117495B2 (en) * 2007-11-26 2012-02-14 Stratus Technologies Bermuda Ltd Systems and methods of high availability cluster environment failover protection
US7835306B2 (en) * 2008-01-23 2010-11-16 Cisco Technology, Inc. Translating MST instances between ports of a bridge in a computer network
JP5116497B2 (ja) 2008-01-31 2013-01-09 株式会社日立製作所 情報処理システム、i/oスイッチ及びi/oパスの交替処理方法
JP2009217302A (ja) 2008-03-06 2009-09-24 Shinsedai Kk 入力装置及び情報処理システム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007522583A (ja) * 2004-02-13 2007-08-09 インテル・コーポレーション 動的に拡張可能な仮想スイッチの装置および方法
JP2006244481A (ja) * 2005-02-28 2006-09-14 Hewlett-Packard Development Co Lp クラスタシステムの仮想マシンをマイグレーションするためのシステム及び方法
JP2009070142A (ja) * 2007-09-13 2009-04-02 Hitachi Ltd 仮想計算機の実行可否検査方法
JP2009232207A (ja) * 2008-03-24 2009-10-08 Hitachi Ltd ネットワークスイッチ装置、サーバシステム及びサーバシステムにおけるサーバ移送方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013069260A (ja) * 2011-09-05 2013-04-18 Fujitsu Ltd データ中継装置、データ中継プログラムおよびデータ中継方法
JP2013148984A (ja) * 2012-01-17 2013-08-01 Fujitsu Ltd プログラム、仮想マシン制御方法、情報処理装置および情報処理システム
US9513945B2 (en) 2012-01-17 2016-12-06 Fujitsu Limited Method for controlling virtual machine
US9753756B2 (en) 2012-03-19 2017-09-05 Fujitsu Limited Information processing system, information processing method, and computer readable recording medium storing a program
US9794147B2 (en) 2014-02-03 2017-10-17 Fujitsu Limited Network switch, network system, and network control method
JP2018137643A (ja) * 2017-02-22 2018-08-30 日本電信電話株式会社 管理装置および管理方法

Also Published As

Publication number Publication date
EP2527979A1 (en) 2012-11-28
JP5347982B2 (ja) 2013-11-20
US9250959B2 (en) 2016-02-02
US20120278807A1 (en) 2012-11-01
WO2011087122A1 (ja) 2011-07-21
EP2527979A4 (en) 2017-02-01

Similar Documents

Publication Publication Date Title
JP5347982B2 (ja) 仮想ネットワーク制御プログラム、仮想ネットワーク制御方法および管理装置
US11677611B2 (en) Host side method of using a controller assignment list
JP5500270B2 (ja) プロファイル処理プログラム、データ中継装置およびプロファイル制御方法
JP5521620B2 (ja) 中継装置、仮想マシンシステム及び中継方法
US7962587B2 (en) Method and system for enforcing resource constraints for virtual machines across migration
US8327355B2 (en) Method, computer program product, and hardware product for supporting virtual machine guest migration overcommit
US8010673B2 (en) Transitioning network traffic between logical partitions in one or more data processing systems
JP6256086B2 (ja) 情報処理システム、移動制御方法および移動制御プログラム
US20120089981A1 (en) Method and system for power management in a virtual machine environment without disrupting network connectivity
WO2015051714A1 (en) Host table management in software defined network (sdn) switch clusters having layer-3 distributed router functionality
US9036638B2 (en) Avoiding unknown unicast floods resulting from MAC address table overflows
US8792502B2 (en) Duplicate MAC address detection
US8095661B2 (en) Method and system for scaling applications on a blade chassis
US20150180824A1 (en) Methods, apparatuses and systems for assigning ip addresses in a virtualized environment
JP2015023329A (ja) 通知方法、装置及びプログラム
US20230028837A1 (en) Scaling for split-networking datapath
WO2016015633A1 (en) Multicast migration
WO2015123974A1 (zh) 一种数据分发策略的调整方法、装置及系统
JP6260310B2 (ja) ネットワークスイッチ、ネットワークシステム及びネットワークシステムの制御方法
JP6133804B2 (ja) ネットワーク制御装置、通信システム、ネットワーク制御方法、および、ネットワーク制御プログラム
WO2017170309A1 (ja) ネットワークシステム、その管理方法および装置ならびにサーバ
JP6013980B2 (ja) アドレス割当装置およびアドレス割当プログラム
WO2013191021A1 (ja) 仮想マシンのマイグレーション方法、マイグレーション装置及びプログラム
JP2015156149A (ja) ネットワーク制御装置、通信システム、ネットワーク制御方法、および、ネットワーク制御プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121005

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130430

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130701

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: 20130723

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130805

R150 Certificate of patent or registration of utility model

Ref document number: 5347982

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees