JP2013041342A - 移行プログラム、移行装置、および移行方法 - Google Patents

移行プログラム、移行装置、および移行方法 Download PDF

Info

Publication number
JP2013041342A
JP2013041342A JP2011176349A JP2011176349A JP2013041342A JP 2013041342 A JP2013041342 A JP 2013041342A JP 2011176349 A JP2011176349 A JP 2011176349A JP 2011176349 A JP2011176349 A JP 2011176349A JP 2013041342 A JP2013041342 A JP 2013041342A
Authority
JP
Japan
Prior art keywords
migration
storage area
unit
destination
target data
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
JP2011176349A
Other languages
English (en)
Other versions
JP5720483B2 (ja
Inventor
Kenji Wakamiya
賢二 若宮
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 JP2011176349A priority Critical patent/JP5720483B2/ja
Priority to US13/517,660 priority patent/US9183060B2/en
Publication of JP2013041342A publication Critical patent/JP2013041342A/ja
Application granted granted Critical
Publication of JP5720483B2 publication Critical patent/JP5720483B2/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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • 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/4557Distribution of virtual machine instances; Migration and load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms

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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】既存の計算機環境に変更を加えることなくポストコピーにて計算機環境を移行すること。
【解決手段】移行元装置101は、ポストコピーを行う移行モジュールを含む移行プログラムライブCD113から起動する。起動後、移行元装置101は、移行元ディスク112に業務OS115が存在することを検出する。業務OS115の検出後、移行元装置101は、移行元ディスク内の少なくとも業務OS115を含む移行対象データ114を、ストレージサーバ104へ転送する。ストレージサーバ104は、ミラーインスタンス131によって、移行元ディスク112の移行対象データ114が記憶された移行元記憶領域と移行先仮想ディスク141の移行対象データ114が記憶される移行先記憶領域とで、ミラーリング処理を実行する。
【選択図】図1

Description

本発明は、計算機環境を移行する移行プログラム、移行装置、および移行方法に関する。
従来から、パフォーマンスの増強を計ったり、負荷分散を行ったり、メンテナンスを行ったり、という理由により、既存の計算機環境を異なる計算機環境に移行させる場合がある。計算機環境の種類としては、実計算機環境となる場合、または仮想マシンモニタ(Virtual Machine Monitor)によって実行される仮想計算機環境となる場合が存在する。計算機環境を移行する場合には、移行元計算機環境のディスクのデータを、移行先計算機環境のディスクのデータにコピーすることになる。
また、コピーに関する技術として、ポストコピーという技術が開示されている。ポストコピーは、移行先環境において移行元環境のデータが手元にあるかのように透過に参照可能としておき、移行先にて未コピーのデータが参照された場合、未コピーのデータを移行元から移行先へコピーする技術である。
たとえば、計算機環境を移行する場合の技術として、ポストコピーを適用した技術が開示されている(たとえば、下記特許文献1、2を参照。)。文献の例では、データのポストコピーを制御するモジュールは、移行対象データを、OS(Operating System)の起動時に使用される第1のデータと、残余の第2のデータに分割する。
その後、モジュールは、第1のデータを移行先計算機環境に移行し、移行先計算機環境は、コピーされた第1のデータを用いてOSを起動して業務の実行を再開する。前述のモジュールは、移行先のOSが、第2のデータのうち未コピーのデータを要求した場合オンデマンドでコピーしつつ、並行してバックグラウンドで第2のデータのコピーを行い、計算機環境を移行する。
特開2008−33500号公報 特開2008−33483号公報
しかしながら、上述した従来技術は、移行先の計算機環境や仮想マシンモニタに、予めポストコピーを行うモジュールが含まれている場合を対象としていた。したがって、ポストコピーを行うモジュールが含まれていない既存の計算機環境において、ポストコピーによる移行処理を実行することが困難である。
本発明は、1つの側面では、ポストコピーにて計算機環境を移行できる移行プログラム、移行装置、および移行方法を提供することを目的とする。1つの側面では、既存の計算機環境や仮想マシンモニタについての変更の必要性を抑えることを目的とする。
上述した課題を解決し、目的を達成するため、本発明の一側面によれば、第1のオペレーティングシステムを記憶する第1の記憶領域は異なる第2の記憶領域に記憶された移行プログラムであって、第2の記憶領域に記憶された第2のオペレーティングシステムで第1および第2の記憶領域を有する移行元装置が起動された場合、第1の記憶領域に第1のオペレーティングシステムが存在することを検出し、第1の記憶領域に第1のオペレーティングシステムが存在することが検出された場合、第1の記憶領域内の少なくとも第1のオペレーティングシステムを含む移行対象データを、移行元装置と通信可能な移行先装置へ転送する移行プログラムが提案される。
また、本発明の一側面によれば、2つの記憶領域のデータを同期するミラーリング部を有する移行先装置に、移行対象オペレーティングシステムを含む移行対象データを記憶する移行元記憶領域を有する移行元装置から、移行対象データの移行指示を受け付け、移行指示が受け付けられた場合、移行先装置の記憶領域のうち移行対象オペレーティングシステムがアクセス可能な移行先記憶領域を確保し、移行先記憶領域が確保された場合、移行対象データを移行元記憶領域と移行先記憶領域とで同期するようにミラーリング部を制御し、ミラーリング部による同期が完了した場合、移行対象オペレーティングシステムからの移行対象データへのアクセス要求先を、ミラーリング部から移行先記憶領域に切り替える移行プログラム、移行装置、移行方法が提案される。
本発明の一側面によれば、ポストコピーにて計算機環境を移行できるという効果を奏する。
図1は、実施の形態1にかかる移行システム100による移行処理の動作例を示す説明図である。 図2は、実施の形態1、2にかかる移行元装置101のハードウェアを示すブロック図である。 図3は、実施の形態1にかかる移行システム100の機能例を示すブロック図である。 図4は、同期管理テーブル331の記憶内容の一例を示す説明図である。 図5は、パーティションの種別と指定端末306での画面例を示す説明図である。 図6は、移行システム100の移行処理時の動作を示すシーケンス図である。 図7は、移行処理における移行元処理手順の一例を示すフローチャートである。 図8は、移行処理における移行先処理手順の一例を示すフローチャートである。 図9は、業務OSに移行制御部がインストールされている場合の移行システム900による移行処理の動作例を示す説明図である。 図10は、実施の形態2にかかる移行システム100の機能例を示すブロック図である。 図11は、コピーオンライト部1004の動作例を示す説明図である。 図12は、コピーオンライト部1004による書込処理手順の一例を示すフローチャートである。 図13は、コピーオンライト部1004による読込処理手順の一例を示すフローチャートである。
以下に添付図面を参照して、開示の移行プログラム、移行装置、および移行方法の実施の形態を詳細に説明する。
図1は、実施の形態1にかかる移行システム100による移行処理の動作例を示す説明図である。計算機環境を移行するシステムである移行システム100は、移行元装置101と、管理サーバ102と、VM(Virtual Machine)サーバ103と、ストレージサーバ104と、ストレージ105と、を含む。各装置はネットワーク106で接続されている。なお、本実施の形態にかかる移行システム100は、移行元計算機環境が物理環境であり、移行先計算機環境が仮想環境となるP2V(Physical to Virtual)について説明を行う。
移行元装置101は、移行元計算機環境となる装置であり、ライブOS111と、移行対象データ114を含む移行元ディスク112を含む。移行対象データ114には、移行元計算機環境で実行しているOSである業務OS115が含まれる。ライブOS111は、ライブCDである移行プログラムライブCD113から移行に際して一時的に起動されたOSである。
管理サーバ102は、移行処理における移行先側の装置群の動作を管理するサーバである。VMサーバ103は、移行先計算機環境となる移行先仮想計算機122と、移行先仮想計算機を実行する仮想マシンモニタ121と、を含む。ストレージサーバ104は、ストレージ105を管理しており、汎用のミラーリングツールを起動する。以下の説明において、汎用のミラーリングツールが起動され、ストレージサーバ104のメモリに展開された実体をミラーインスタンス131と呼称する。ミラーインスタンス131の詳細は、図3にて後述する。ストレージ105は、移行先仮想計算機122のストレージとなる移行先仮想ディスク141を含む。
図1に示した状態で、ライブOS111は、移行元装置101を起動した場合、移行元ディスク112に業務OS115が存在することを検出する。業務OS115の検出後、ライブOS111は、移行元ディスク112内の少なくとも業務OS115を含む移行対象データ114を、ストレージサーバ104へ転送し始める。転送を受けるミラーインスタンス131は、移行元ディスク112の移行対象データ114が記憶された移行元記憶領域と移行先仮想ディスク141の移行対象データ114が記憶される予定となる移行先記憶領域とで、ミラーリング処理を実行する。また、管理サーバ102は、VMサーバ103に対して移行先仮想計算機122の作成および起動を行う。移行先仮想計算機122では、移行先仮想ディスク141上に複製されつつある業務OS115が実行される。
ミラーリング処理中において、ストレージサーバ104は、移行先仮想計算機122で動作中の業務OS115から発行された移行対象データ114へのアクセス要求をミラーインスタンス131に通知する。ミラーリング処理完了後、ストレージサーバ104は、アクセス要求先をミラーインスタンス131から移行先仮想ディスク141に切り替える。
このように、移行システム100は、ポストコピーを実行可能にするモジュールを含む移行プログラムライブCD113から移行元装置101を起動し、外部からは単なるストレージ装置に見えるストレージサーバ104へ移行処理を行う。これにより、移行システム100は、移行対象の計算機環境や移行先計算機、仮想マシンモニタに移行モジュールがなくても移行でき、既存の計算機環境を変更せずに移行が行える。
なお、本実施の形態にかかる移行システム100は、P2Vの場合について説明しているが、移行元計算機環境が仮想環境であるV2V(Virtual to Virtual)であってもよい。移行システム100がV2Vである場合、移行元装置101は仮想マシンモニタを有し、仮想マシンモニタ121で実行される仮想計算機の1つが業務OS115を実行する移行元計算機環境となる。
また、移行システムがV2Vである場合、ライブOS111を実行する仮想計算機B(図示せず)存在し、仮想計算機Bが、移行対象となる業務OS115を実行する仮想計算機を移行する。なお、仮想計算機Bで実行中のライブOS111は、移行プログラムライブCD113から起動せずに、移行元装置101内の移行元ディスク112のうち、仮想計算機Bがアクセスする仮想ディスクにライブOS111が含まれていてもよい。
(移行システム100の装置群のハードウェア)
図2は、実施の形態1、2にかかる移行元装置101のハードウェアを示すブロック図である。なお、管理サーバ102、VMサーバ103、ストレージサーバ104についても、移行元装置101と同様のハードウェアを含むため、説明を省略する。図2において、移行元装置101は、CPU(Central Processing Unit)201と、ROM(Read‐Only Memory)202と、RAM(Random Access Memory)203と、を含む。
また、記憶装置として移行元装置101は、磁気ディスクドライブ204と、磁気ディスク205と、光ディスクドライブ206と、光ディスク207と、を含む。また、ユーザやその他の機器との入出力装置として移行元装置101は、ディスプレイ208と、I/F(Interface)209と、キーボード210と、マウス211と、を含む。また、各部はバス212によってそれぞれ接続されている。
ここで、CPU201は、移行元装置101の全体の制御を司る。ROM202は、ブートプログラムなどのプログラムを記憶している。RAM203は、CPU201のワークエリアとして使用される。磁気ディスクドライブ204は、CPU201の制御にしたがって磁気ディスク205に対するデータのリード/ライトを制御する。磁気ディスク205は、磁気ディスクドライブ204の制御で書き込まれたデータを記憶する。
光ディスクドライブ206は、CPU201の制御にしたがって光ディスク207に対するデータのリード/ライトを制御する。光ディスク207は、光ディスクドライブ206の制御で書き込まれたデータを記憶したり、光ディスク207に記憶されたデータをコンピュータに読み取らせたりする。
ディスプレイ208は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。たとえば、ディスプレイ208は、CRT、液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
I/F209は、LAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどのネットワーク106に接続され、このネットワーク106を介して他の装置に接続される。そして、I/F209は、ネットワーク106と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。I/F209には、たとえばモデムやLANアダプタなどを採用することができる。
キーボード210は、文字、数字、各種指示などの入力のためのキーを有し、データの入力を行う。また、キーボード210は、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス211は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う。また、移行元装置101は、マウス211の代わりとして、ポインティングデバイスとして同様に機能を有するものであれば、トラックボールやジョイスティックなどを有していてもよい。なお、移行元装置101がユーザから直接操作を受けない場合、ユーザインターフェイスとなるディスプレイ208、キーボード210、マウス211がなくてもよい。
(実施の形態1にかかる移行システム100の機能)
図3は、実施の形態1にかかる移行システム100の機能例を示すブロック図である。移行元装置101は、ライブOS111と、移行制御部301と、検出部302と、指定部303と、転送部304と、を含む。転送部304は、移行元ブロックI/F305を含む。なお、移行元装置101は、指定端末306と接続している。この制御部となる機能(移行制御部301〜転送部304)は、移行プログラムライブCD113に記憶されたプログラムをCPU201が実行することにより、その機能を実現する。
管理サーバ102は、管理部311を含む。管理部311は、管理サーバ102に記憶されたプログラムを管理サーバ102内のCPUが実行することにより、その機能を実現する。記憶装置とは、具体的には、たとえば、管理サーバ102内のROM、RAM、磁気ディスク、光ディスクなどである。または、管理サーバ102は、I/Fを経由して他のCPUが実行することにより、その機能を実現してもよい。
VMサーバ103は、仮想マシンモニタ121と、移行先仮想計算機122と、を含む。ストレージサーバ104は、受付部321と、確保部322と、制御部323と、通知部324と、移行先ブロックI/F325と、ミラーインスタンス131と、を含む。制御部323は、ミラー作成破棄部326と、同期監視部327と、を含む。通知部324は、ストレージインターフェース328と、切替部329と、を含む。
受付部321〜移行先ブロックI/F325、ミラーインスタンス131は、ストレージサーバ104に記憶されたプログラムをストレージサーバ104のCPUが実行することにより、その機能を実現する。記憶装置とは、具体的には、たとえば、ストレージサーバ104のROM、RAM、磁気ディスク、光ディスク、ストレージ105などである。また、各機能部は、ストレージサーバ104のI/Fを経由して他のCPUが実行することにより、その機能を実現してもよい。
ミラーインスタンス131の内部には、同期管理テーブル331と、ミラーリング部332と、を含む。ミラーリング部332の内部には、オンデマンドコピー部333と、連続コピー部334と、を含む。また、図3で示すソフトウェアからアクセスされる記憶領域として、移行システム100は、移行元装置101内に存在する移行元ディスク112と、ストレージ105内に存在する移行先仮想ディスク141を含む。なお、ストレージ105は、ストレージサーバ104に含まれていてもよい。
また、本実施の形態1にかかる移行プログラムは、第1のOSを記憶する第1の記憶領域とは異なる第2の記憶領域に記憶されている。たとえば、第1のOSとなる業務OS115は第1の記憶領域となる磁気ディスク205に記憶されており、移行プログラムは第2の記憶領域となる光ディスク207に記憶されている。
または、移行システム100がV2Vである場合、業務OS115は磁気ディスク205の記憶領域のうち、あるLUN(Logical Unit Number)が設定された仮想ディスクに記憶されており、移行プログラムは、異なるLUNが設定された仮想ディスクに記憶されている。このように、移行システム100がP2Vである場合、第1および第2の記憶領域は、物理的に異なる記憶媒体である。また、移行システム100がV2Vである場合、第1および第2の記憶領域は、物理的に異なる記憶媒体であってもよいし、物理的には同一の記憶媒体であるが、LUNが異なるといった論理的に異なる記憶媒体であってもよい。
移行制御部301は、移行処理における移行元側を制御する。具体的に、移行制御部301は、管理部311に移行処理の準備を通知した後、移行元ブロックI/F305を作成する。なお、移行制御部301は、ライブOS111の1モジュールであってもよいし、ライブOS111上で実行可能なアプリケーションソフトウェア(以下、「アプリ」と称する)であってもよい。
検出部302は、第2の記憶領域に記憶された第2のOSで第1および第2の記憶領域を有する移行元装置101が起動された場合、第1の記憶領域に第1のOSが存在することを検出する機能を有する。たとえば、検出部302は、第1の記憶領域となる磁気ディスク205に業務OS115が存在することを検出する。具体的な検出方法として、検出部302は、磁気ディスク205の先頭セクタであるMBR(Master Boot Record)を取得し、MBRに記述されたパーティションを検出する。続けて、検出部302は、検出したパーティション群のうち、ブート識別子がアクティブパーティションに設定されているパーティションを検出する。
また、検出部302は、第2のOSで移行元装置が起動された場合、移行元装置101が有する記憶領域のうち第2の記憶領域を除いた記憶領域が第1の記憶領域である状態を検出してもよい。また、検出部302は、検出したパーティションからヒント情報を検出する。検出されたパーティション、ヒント情報は、指定端末306に通知される。なお、検出部302によって検出された情報は、CPU201のレジスタや、RAM203などの記憶領域に記憶される。
ヒント情報とは、指定部303によって移行対象データ114を指定する際にヒントとなる情報である。たとえば、ヒント情報は、パーティションがどのOS用として作成されているかを示す情報となる。また、ヒント情報には、たとえば、パーティション内のブロック数やサイズ(バイト)が含まれてもよい。
指定部303は、検出されたパーティションの中から移行対象データ114を指定する。具体的には、指定部303は、指定端末306に表示されたパーティション一覧のうち、ユーザにより選択されたパーティションを移行対象データ114として指定する。指定されたパーティションの情報は、CPU201のレジスタや、RAM203などの記憶領域に記憶される。
転送部304は、検出部302によって第1の記憶領域に第1のOSが存在することが検出された場合、第1の記憶領域内の少なくとも第1のOSを含む移行対象データ114を、移行元装置101と通信可能な移行先装置へ転送する。移行先装置は、図3では、ストレージサーバ104となる。また、移行対象データ114は、指定部303によって指定されたデータであってもよい。移行対象データ114の転送の単位として、例えば、ファイル単位であってもよい。
また、転送部304は、移行対象データ114に対する転送の単位をブロック単位に設定して、移行先装置に移行対象データ114を転送してもよい。ブロック単位で転送する場合、転送部304は、移行元装置101内に移行元ブロックI/F305を作成し、また、移行制御部301を経由して、ストレージサーバ104に移行先ブロックI/F325を作成させる。
移行元ブロックI/F305は、移行元ディスク112に対してブロック単位でアクセスし、ネットワーク106を経由して、移行先ブロックI/F325と通信するインターフェースである。たとえば、移行元ブロックI/F305は、SCSI(Small Computer System Interface)プロトコルをTCP(Transmission Control Protocol)/IP(Internet Protocol)ネットワーク上で使用するiSCSI(internet SCSI)プロトコルにて実装されるソフトウェアである。
指定端末306は、検出したパーティション一覧を画面に表示し、ユーザに選択させる。また、指定端末306は、検出したヒント情報を、検出したパーティションと併せて表示してもよい。具体的な表示例は、図5にて図示する。なお、移行システム100は、指定端末306を含まずに、移行元装置101のディスプレイ208に検出したパーティション一覧を表示してもよい。また、検出したパーティションが1つである場合、または、前回ブートしていたパーティションを常に選択する、といった固定的ルールが予め決定されている場合、ユーザに選択させなくてよいため、この場合、指定端末306がなくてもよい。
移行元ディスク112は、移行対象データ114に含まれる業務OS115、また業務OS115で実行される業務アプリ、業務アプリがアクセスする業務データ等が格納されている。移行元ディスク112は、複数のパーティションに別れていてもよく、または、複数のディスクであってもよい。また、業務OS115とライブOS111は異なる種類のOSであってもよい。
管理部311は、移行処理における移行先側の装置群を管理する。たとえば、管理部311は、移行制御部301から移行指示を受けると、VMサーバ103にVM起動指示し、ストレージサーバ104にミラーインスタンス131の作成指示を通知する。
仮想マシンモニタ121は、コンピュータを仮想化し、複数のOSを実行できるように制御するソフトウェアである。図3の例では、仮想マシンモニタ121は、仮想マシンとなる移行先仮想計算機122を稼働させる。図3の例では、1つの仮想計算機しか稼働していないが、複数の仮想計算機が存在してもよい。
移行元装置101が移行された計算機環境である移行先仮想計算機122は、VMサーバ103で動作する仮想的なコンピュータである。たとえば、移行先仮想計算機122は、VMサーバ103のハードウェア資源となるCPU、メモリ等を仮想化し、仮想化された環境を仮想マシンモニタ121上で実行されるソフトウェアに提供するソフトウェアである。
受付部321は、移行対象OSを含む移行対象データ114を記憶する移行元記憶領域を有する移行元装置101から、移行対象データ114の移行指示を受け付ける機能を有する。たとえば、受付部321は、移行対象データ114の情報や移行元ブロックI/F305へ接続する情報が含まれた移行指示を移行元装置101から管理サーバ102を経由して受け付ける。なお、受け付けた移行指示は、ストレージサーバ104のCPUのレジスタ、RAM、磁気ディスクなどの記憶領域に記憶される。
確保部322は、移行指示が受け付けられた場合、移行先装置の記憶領域のうち移行対象OSがアクセス可能な移行先記憶領域を確保する機能を有する。移行先記憶領域は、ストレージ105内のストレージプールとなる。たとえば、確保部322は、ストレージ105内のストレージプールから、新たなLUNを設定した移行先仮想ディスク141を切り出す。切り出された移行先仮想ディスク141は、業務OS115を実行する移行先仮想計算機122がアクセス可能な移行先記憶領域となる。
制御部323は、確保部322によって移行先記憶領域が確保された場合、移行対象データ114を移行元記憶領域と移行先記憶領域とで同期するようにミラーリング部332を制御する。たとえば、制御部323は、ミラー作成破棄部326がミラーインスタンス131を作成する時に、移行元記憶領域と移行先記憶領域をコマンドライン引数に設定する。これにより、ミラーリング部332は、コマンドライン引数に設定された2つの記憶領域について同期をとる。
通知部324は、ミラーリング部332による同期中に移行対象OSによって移行対象データ114へのアクセス要求が発行された場合、アクセス要求をミラーリング部332に通知しつつ、ミラーリング部332からの応答を移行対象OSに通知する機能を有する。たとえば、通知部324は、ストレージインターフェース328によって受け付けた移行対象OSを実行するVMサーバ103からのアクセス要求をミラーリング部332に通知する。また、通知部324は、アクセス要求に対応する応答をストレージインターフェース328によってVMサーバ103に通知する。
移行先ブロックI/F325は、ネットワーク106を経由して、移行元ブロックI/F305と通信するインターフェースである。また、移行先ブロックI/F325は、ミラーリング部332からブロック単位でアクセスされる。
ミラー作成破棄部326は、ミラーインスタンス131、移行先ブロックI/F325を作成したり、破棄したりする。同期監視部327は、ミラー同期の進捗状況を監視する。具体的に、同期監視部327は、同期管理テーブル331を監視してミラー同期が完了したか否かを判断し、ミラー同期完了後に、切替部329に切替指示を通知する。
ストレージインターフェース328は、VMサーバ103から移行対象データ114にアクセスするためのインターフェースである。なお、ストレージサーバ104は、VMサーバ103からは単なるストレージ装置であるようにアクセスされる。
切替部329は、ミラーリング部による同期が完了した場合、移行対象OSからの移行対象データ114へのアクセス要求先を、ミラーリング部332から移行先記憶領域に切り替える機能を有する。具体的に、切替部329は、ストレージインターフェース328のアクセス先がミラーリング部332となる第1のストレージモードから、アクセス先がストレージ105内の移行先仮想ディスク141となる第2のストレージモードに切り替える。切替のタイミングとして、切替部329は、同期監視部327からの切替指示を受け付けた場合、第1のストレージモードから第2のストレージモードに切り替える。
ミラーインスタンス131は、汎用のミラーリングツールが起動され、ストレージサーバ104のメモリに展開された実体である。具体的にメモリに展開される内容としては、たとえば、ミラーリングツールの実行コード、ストレージサーバ104のCPUのレジスタ変数の値、実行コードがアクセスするデータである。実行コードの一部がミラーリング部332であり、実行コードがアクセスするデータの一部が同期管理テーブル331である。また、汎用のミラーリングツールとしては、たとえば、Linux(登録商標)に標準で付属しているdevice_mapperがある。
同期管理テーブル331は、汎用のミラーリングツールが有するミラーリングの進捗状況をブロックごとに管理するテーブルである。同期管理テーブル331の詳細は、図4にて後述する。
ミラーリング部332は、ポストコピーを行うための機能であり、VMサーバ103からのアクセス要求があると、移行先仮想ディスク141にアクセス対象のデータがあるか否かを判断し、判断結果に応じて、アクセスに対する応答を行う。
アクセス対象のデータが移行先仮想ディスク141に存在する場合、ミラーリング部332は、移行先仮想ディスク141にアクセスすることでVMサーバ103からのアクセス要求に対する応答を行う。また、アクセス対象のデータが移行先仮想ディスク141に存在しない場合、ミラーリング部332は、オンデマンドコピー部333によって移行元ディスク112にアクセスすることで、VMサーバ103からのアクセス要求に対する応答を行う。また、ミラーリング部332は、連続コピー部334によって移行元ディスク112の移行対象データ114を連続的に移行先仮想ディスク141にコピーする。
移行先仮想ディスク141は、移行対象データ114を格納するディスクである。移行先仮想ディスク141は、ストレージ105内の複数の物理ディスクからなるストレージプールから、新たなLUNを設定した一つの仮想ディスクとして切り出したディスクであることを示している。なお、移行先仮想ディスク141は、一つの物理ディスクであってもよい。
このような機能を有する移行システム100にて、初めに、業務OS115を終了した後、移行プログラムライブCD113内のライブOS111から起動した移行元装置101は、移行制御部301によって移行元ブロックI/F305を作成する。次に、移行元装置101は、管理サーバ102に対して、移行先仮想計算機122の移行指示を通知する。
移行指示を受け付けた管理サーバ102は、VMサーバ103に対して移行先仮想計算機122の起動を指示し、同時にミラー同期を開始する。この時点で移行先仮想計算機122は業務OS115を起動することが可能であり、従来技術であった第1のデータのコピー完了を待つことがなく、業務停止時間をより短くすることができる。ミラー同期の完了後、管理サーバ102は、切替部329によってストレージモードを切り替え、移行処理を終了する。
図4は、同期管理テーブル331の記憶内容の一例を示す説明図である。符号401で示す図は、同期管理テーブル331の記憶内容を示しており、符号402で示す図は、記憶領域内における同期管理テーブル331の実装例を示している。同期管理テーブル331は、ブロックごとにコピーが完了したか否かを記憶するテーブルである。同期管理テーブル331は、ブロック番号、コピー済フラグという2つのフィールドを含む。ブロック番号フィールドには、移行対象データのブロックごとの先頭からの番号が格納される。コピー済フラグフィールドには、コピーが完了したか否かを示す識別子が格納される。識別子としては、たとえば、コピー未完了を示す“未”、また、コピー完了を示す“済”、といった識別子となる。
符号401で示す同期管理テーブル331では、たとえば、ブロックサイズが512[バイト]であると仮定すると、0〜2ブロック目の0〜1536[バイト]目と、6、7ブロック目の3072〜4095[バイト]目がコピー済みであることを示している。たとえば、符号401の状態は、連続コピー部334が先頭のブロックからコピーを開始して、0〜2ブロック目までのコピーを完了している。さらに、オンデマンドコピー部333がVMサーバ103からのアクセス要求により、6、7ブロック目までのコピーを完了している。
このように、同期管理テーブル331の記憶内容について、ブロック番号フィールドは0から始まり1ずつ増加する数列が格納されており、コピー済フラグは2値が格納される。したがって、同期管理テーブル331の記憶内容は、ビット列で表現することができる。符号402で示す図では、記憶領域内での符号401で示した同期管理テーブル331の実装例を示している。
たとえば、ストレージサーバ104は、記憶領域内のバイト列“0xe3…”を、ビット列“11100011…0”として読み取る。続けて、ストレージサーバ104は、ビットが0であれば未コピーであり、ビットが1であればコピー済であると判断する。たとえば、ストレージサーバ104は、ビット列の先頭から3番目までのビットが1であるため、ブロック番号0〜ブロック番号2がコピー済であると判断する。
図5は、パーティションの種別と指定端末306での画面例を示す説明図である。図5では、移行元ディスク112として、ディスク501とディスク502が存在していることを想定している。ディスク501は、パーティションA、パーティションB、パーティションC、というように3つのパーティションに分割されている。また、ディスク502は、パーティションD、パーティションE、というように2つのパーティションに分割されている。また、パーティションA、パーティションDは、業務OS115が利用するパーティションであり、パーティションB、パーティションC、パーティションEは、他のOSが利用するパーティションである。さらに、パーティションAは、アクティブパーティションに設定されている。
この状態で、検出部302は、ディスク501、ディスク502を検出し、さらに、ディスク501、ディスク502内のパーティションA〜パーティションEを検出する。また、検出部302は、MBRのブート識別子を読み取り、パーティションAがアクティブパーティションであるため、業務OS115が存在することを検出する。さらに、検出部302は、ヒント情報として、パーティションA〜パーティションEが利用されるOSの情報も検出する。
指定端末306は、検出されたパーティションとヒント情報を表示する。図5の状態では、業務OS115が存在するパーティションA、業務OS115が利用するパーティションDが選択されている状態である。この状態で、指定端末306がOKボタンの押下を受け付けると、指定部303は、パーティションA〜パーティションEのうち、パーティションA、パーティションDを移行対象データ114として指定する。このように、移行元ディスク112から移行対象データ114を指定することにより、移行対象のデータ量を削減することができる。
図6は、移行システム100の移行処理時の動作を示すシーケンス図である。移行制御部301は、移行元ディスク112を検出し(ステップS601)、移行対象データ114を指定する(ステップS602)。指定後、移行制御部301は、移行元ブロックI/F305を作成(ステップS603)した後、移行処理の実行を要求する移行指示を管理部311に通知する(ステップS604)。なお、移行指示には、移行対象データ114の情報と、移行元ブロックI/F305へ接続する情報が含まれる。
移行対象データ114の情報として、たとえば、移行対象データ114のブロック数が含まれる。移行元ブロックI/F305へ接続する情報として、たとえば、移行元ブロックI/F305と移行先ブロックI/F325がiSCSIプロトコルで実装されている場合、移行元装置101のIPアドレス、TCPポート番号、およびiSCSIネームが含まれる。通知後、移行制御部301は、移行元ブロックI/F305に接続が有るまで確認し続ける(ステップS605)。
移行指示を受け付けた管理部311は、移行先仮想ディスク141を作成する(ステップS606)。移行先仮想ディスク141の作成方法の例として、ストレージ105に存在するディスクのうち、新たなLUNを設定したディスクを移行先仮想ディスク141とする。なお、移行先仮想ディスク141は、移行指示にて通知された移行対象データ114のブロック数以上のブロック数を有する。
作成後、管理部311は、ミラー作成破棄部326に移行先ブロックI/F325の作成指示を通知する(ステップS607)。作成指示の通知を受け付けたミラー作成破棄部326は、移行先ブロックI/F325を作成し(ステップS608)、作成結果を管理部311に通知する。作成結果を受け付けた管理部311は、移行元ブロックI/F305に接続する(ステップS609)。接続を受けた移行制御部301は、移行元ブロックI/F305の接続が切断されたか否かを確認し続ける(ステップS610)。
接続後、管理部311は、ミラーインスタンス131の作成指示をミラー作成破棄部326に通知する(ステップS611)。通知後、管理部311は、ミラーインスタンス131が作成完了されたことが通知されるまで待機する。
ミラーインスタンス131の作成指示を受け付けたミラー作成破棄部326は、ミラーインスタンス131を作成する(ステップS612)。作成されたミラーインスタンス131は、ミラー同期を開始し(ステップS613)、ミラー作成破棄部326にミラー同期の開始を通知する。ミラー作成破棄部326は、管理部311にミラー同期の開始を通知する。
ミラー同期の開始を受け付けた管理部311は、VMサーバ103に対して移行先仮想計算機122作成および起動を指示し(ステップS614)、同期監視部327に同期監視指示を通知する(ステップS615)。通知を受けた同期監視部327は、ミラー同期が完了するまで確認し続ける(ステップS616)。具体的に、同期監視部327は、同期管理テーブル331のコピー済フラグが全て済となるまで確認し続ける。ミラー同期の完了を確認した同期監視部327は、同期完了報告を管理部311に通知する(ステップS617)。
同期完了報告を受け付けた管理部311は、切替部329に、ストレージモード切替を指示する(ステップS618)。具体的に、切替部329は、第1のストレージモードから第2のストレージモードに切り替える。
切替後、管理部311は、ミラーインスタンス131の破棄指示をミラー作成破棄部326に通知する(ステップS619)。通知を受け付けたミラー作成破棄部326は、ミラーインスタンス131を破棄し(ステップS620)、破棄完了後、管理部311に破棄完了を通知する。破棄完了の報告を受け付けた管理部311は、移行元ブロックI/F305を切断し(ステップS621)、移行処理を終了する。
続けて、図7、図8にて、図6で示したシーケンス図を実行する移行元装置101、管理サーバ102、ストレージサーバ104のフローチャートを示す。図7では移行元装置101による移行処理における移行元処理を説明し、図8では管理サーバ102、ストレージサーバ104による移行処理における移行先処理を説明する。
図7は、移行処理における移行元処理手順の一例を示すフローチャートである。移行元装置101は、移行元装置101の停止後、ライブOS111が移行プログラムライブCD113で起動され、ライブOS111の起動完了後に移行処理を実行する。
移行元装置101は、移行元ディスク112、移行元ディスク112内のパーティションを検出する(ステップS701)。検出後、移行元装置101は、移行元ディスク112、または各パーティションに、業務OS115が存在することを検出する(ステップS702)。検出後、移行元装置101は、業務OS115を含む移行対象データ114を指定する(ステップS703)。移行対象データ114の指定方法として、たとえば、図5で示したように、移行元装置101は、指定端末306等のディスプレイにて表示されたパーティションの一覧から、選択されたパーティションに格納されたデータを移行対象データ114として指定する。
指定後、移行元装置101は、移行元ブロックI/F305を作成し(ステップS704)、管理サーバ102へ移行指示を通知する(ステップS705)。通知後、移行元装置101は、移行元ブロックI/F305に接続があるか否かを判断する(ステップS706)。なお、移行元ブロックI/F305に接続がある場合とは、後述する図8のステップS804にて移行先ブロックI/F325から接続された場合である。接続がない場合(ステップS706:No)、移行元装置101は、一定時間経過後、ステップS706の処理を再び実行する。
接続がある場合(ステップS706:Yes)、移行元装置101は、ミラーリング部332からの要求に応じて移行対象データ114を接続先に転送し(ステップS707)、移行元ブロックI/F305の接続が切断されたか否かを判断する(ステップS708)。移行元ブロックI/F305の接続が切断されていない場合(ステップS708:No)、移行元装置101は、ステップS707の処理に移行する。切断されている場合(ステップS708:Yes)、移行元装置101は、移行元ブロックI/F305を破棄する(ステップS709)。なお、移行元ブロックI/F305の接続が切断される場合とは、後述する図8のステップS812にて移行先ブロックI/F325から接続が切断された場合である。破棄後、移行元装置101は、移行プログラムライブCD113を排出し(ステップS710)、移行元装置101の電源を切断し、移行処理における移行元処理を終了する。
なお、ステップS701の処理にて、検出された移行元ディスク112が1つである場合、さらに、移行元ディスク112のパーティションが1つである場合、検出された1つのパーティションに業務OS115が存在することになる。したがって、移行元装置101は、1つのパーティションに業務OS115の存在を確認せず、1つのパーティションを移行対象データとして、転送を行ってもよい。
図8は、移行処理における移行先処理手順の一例を示すフローチャートである。なお、移行先処理は、ステップS705にて移行元装置101からの移行指示を受け付けることで実行される。管理サーバ102は、移行元装置101から移行指示を受け付ける(ステップS801)。移行指示を受け付けた管理サーバ102は、管理部311の指示によってストレージサーバ104に移行先仮想ディスク141を作成させる(ステップS802)。これにより、ストレージサーバ104は、移行先記憶領域を確保する。なお、ステップS802を含む以降の処理では、ステップS807を除き管理サーバ102の指示によってストレージサーバ104が実行する。したがって、ステップS807を除くステップS802以下の説明は、ストレージサーバ104を実行主体として説明を行う。
移行先仮想ディスク141の作成後、ストレージサーバ104は、移行先ブロックI/F325を作成する(ステップS803)。作成後、ストレージサーバ104は、移行元ブロックI/F305に接続する(ステップS804)。接続後、ストレージサーバ104は、ミラーインスタンス131を作成し(ステップS805)、ミラー同期を開始する(ステップS806)。
ミラー同期を開始後、管理サーバ102は、管理部311の指示によってVMサーバ103に移行先仮想計算機122の作成および移行先仮想計算機122を起動させる(ステップS807)。移行先仮想計算機122の起動完了後、ストレージサーバ104は、移行先仮想計算機122上で実行されている移行対象OSからのアクセス要求に応答する(ステップS808)。具体的に、ストレージサーバ104は、ストレージインターフェース328を介して発行されたアクセス要求を、ミラーリング部332に通知しつつ、ミラーリング部332からの応答をストレージインターフェース328を介して移行対象OSに通知する。
続けて、ストレージサーバ104は、ミラー同期が完了したか否かを確認する(ステップS809)。ミラー同期が完了していない場合(ステップS809:No)、ストレージサーバ104は、ステップS808の処理に移行する。
ミラー同期が完了している場合(ステップS809:Yes)、ストレージサーバ104は、ストレージモードを切り替え(ステップS810)、ミラーインスタンス131を破棄する(ステップS811)。破棄後、ストレージサーバ104は、移行元ブロックI/F305との接続を切断し(ステップS812)、移行先ブロックI/F325を破棄し(ステップS813)、移行処理における移行先処理を終了する。
このように、本実施の形態にかかる移行システム100は、移行元装置101に移行制御部301がインストールされていなくともポストコピー形式による移行処理を実行することができる。次に、図9にて、従来技術となる、業務OSに移行制御部がインストールされている場合の動作例について説明する。
図9は、業務OSに移行制御部がインストールされている場合の移行システム900による移行処理の動作例を示す説明図である。図9で示す移行システム900について、本実施の形態にかかる移行システム100と同等のハードウェア、ソフトウェアについては、同一の符号を付与し、説明を省略する。従来技術にかかる移行システム900は、移行元装置101、管理サーバ102、VMサーバ103、ストレージ105を含む。各装置は、ネットワーク106で接続している。
移行元装置101は、移行元ディスク112を含む。移行元ディスク112には、移行元装置を起動した業務OS901が含まれる。業務OS901には、移行制御部902と、ファイルシステム903を含む。管理サーバ102は、管理部911を含む。VMサーバ103は、仮想マシンモニタ121と、移行先仮想計算機122と、を含む。仮想マシンモニタ121は、ポストコピー部921を含む。ポストコピー部921には、コピー進捗テーブル922、ファイルI/F923、ミラーリング部332と、を含む。
ミラーリング部332の内部には、オンデマンドコピー部333と、連続コピー部334と、を含む。また、図9で示すソフトウェアからアクセスされる記憶領域として、移行システム900は、移行元装置101内に存在する移行元ディスク112と、ストレージ105内に存在する移行先仮想ディスク141を含む。
業務OS901は、移行対象データ114となるOSであり、内部には予め移行制御部902がインストールされている。移行制御部902は、移行処理における移行元側を制御する。ファイルシステム903は、移行元ディスク112を管理するソフトウェアである。
管理部911は、移行処理における移行先側の装置群を管理する。ポストコピー部921は、ポストコピーを行うための機能である。コピー進捗テーブル922は、コピーの進捗状況を記憶する。ファイルI/F923は、ネットワーク106を経由して、移行制御部902と通信するインターフェースである。また、ファイルI/F923は、ミラーリング部332からファイル単位でアクセスされる。
この状態で、移行制御部902は、移行処理の準備指示を管理部911に通知する。通知後、移行制御部902は、ファイルシステム903を探索して作成したコピーリストをポストコピー部921に通知する。通知を受けたポストコピー部921は、コピーリストをコピー進捗テーブル922に反映する。続けて、移行制御部902は、移行先仮想計算機の起動指示とポストコピーの準備指示を管理部911に通知する。
通知を受けた管理サーバ102は、VMサーバ103に移行先仮想計算機122を起動させ、同時に、連続コピー部334によって連続コピーを実行させることで、移行処理を完了させる。また、移行処理中に、移行先仮想計算機122からのアクセス要求があると、オンデマンドコピー部333によってアクセス要求に対応するファイルのコピーを実施し、アクセス要求に応答する。
以上説明したように、実施の形態1にかかる移行プログラム、移行装置、および移行方法によれば、ポストコピーを行う移行モジュールを含むライブCDから移行元装置を起動し、移行先装置へ移行処理を行う。これにより、実施の形態1にかかる移行システムは、ポストコピーによる計算機環境の移行処理について、既存の計算機環境や仮想マシンモニタに変更を加えることなくアドオンできるようになる。なお、従来技術にかかる移行システムでは、図9で示したように移行対象となる業務OSに移行制御部をインストールするため、ポストコピーの機能を持たない既存の計算機環境に適用することが困難であった。
また、実施の形態1にかかる移行システムは、移行対象データに対する転送の単位をブロック単位に設定して、移行先装置に移行対象データを転送してもよい。これにより、実施の形態1にかかる移行システムは、ファイルレベルでコピーする際に作成していたコピーリストを作成せずに済むため、移行にかかる時間を短縮することができる。コピーリストは、移行対象データにファイル数が多いと作成するのに時間がかかり、結果、移行にかかる時間が増大してしまっていた。
また、実施の形態1にかかる移行システムは、ブロックレベルでコピーを行うため、移行対象OSとなる業務OSの種類、また業務OSのファイルシステムの種類を意識せずにコピーを行うことができる。また、ブロックレベルで管理されている同期管理テーブルは、ファイルレベルで管理されているコピー進捗テーブルより、データサイズを小さくすることができる。特に、同期管理テーブルは、ビット列で表現することが可能であり、データサイズを小さくすることができる。
また、実施の形態1にかかる移行システムは、移行元装置が有する記憶領域のうち、移行プログラムライブCDを除いた記憶領域が1つである場合、1つの記憶領域を移行対象データとして移行先装置へ転送してもよい。これにより、実施の形態1にかかる移行システムは、各ディスク、パーティションについて、OSが存在するか否かを検出しなくてもよく、移行処理にかかる時間を短くすることができる。
(実施の形態2の概要)
実施の形態1にかかる移行システム100では、移行処理中に移行対象データ114への書込要求が発生した場合、ミラーインスタンス131の処理によって移行先仮想ディスク141に書き込まれると共に、移行元ディスク112にも書き込まれていた。実施の形態2にかかる移行システム100では、移行対象データ114への書込要求が発生した場合に、移行元ディスク112への書込を抑止する形態をとる。
(実施の形態2にかかる移行システム100の機能)
図10は、実施の形態2にかかる移行システム100の機能例を示すブロック図である。図10で示す移行システム100は、実施の形態2にて機能が変更するストレージサーバ104、ストレージ105について表示しており、移行元装置101、管理サーバ102、VMサーバ103については、機能が変更しないため、表示を省略する。
確保部1001は、移行指示が受け付けられた場合、実施の形態1で示した確保部322によって移行先記憶領域を確保したうえ、さらに、移行先装置の記憶領域のうち移行先記憶領域とは異なる他の記憶領域を確保する。たとえば、確保部1001は、ストレージ105内のストレージプールから、移行先仮想ディスク141に設定されたLUNとは異なる新たなLUNを設定した他の記憶領域となる差分書込ディスク1005を切り出す。
制御部1002は、ミラーリング部332による同期中に移行対象OSによって移行対象データ114への書込要求が発行された場合、移行元記憶領域への書込を他の記憶領域への書込に変更するようにミラーリング部332を制御する。また、制御部1002は、読込要求が発行された場合、移行元記憶領域および他の記憶領域に記憶されたデータを組み合わせたデータを移行元記憶領域からの読込結果とするようにミラーリング部332を制御する。
具体的に、制御部1002は、ミラー作成破棄部326がミラーインスタンス1003を作成する時に、コピーオンライト部1004を含めることを示す識別子と他の記憶領域となる差分書込ディスク1005をコマンドライン引数に含めて設定する。これにより、ミラーインスタンス1003は、コピーオンライト部1004を含めて作成される。
ミラーインスタンス1003は、同期管理テーブル331と連続コピー部334とに加え、コピーオンライト部1004を含む。また、ストレージ105は、移行先仮想ディスク141に加え、差分書込ディスク1005を含む。
差分書込ディスク1005は、コピーオンライト部1004での差分データの書込先ディスクである。具体的に、差分書込ディスク1005は、コピーオンライト部1004にて書込処理が発生した場合に差分データが書き込まれる。なお、差分書込ディスク1005は、移行先仮想ディスク141と同様に、ストレージ105内の複数の物理ディスクからなるストレージプールから、移行先仮想ディスク141のLUNとは異なるLUNを設定した一つの仮想ディスクとして設定されている。また、差分書込ディスク1005は、差分データが書き込まれる場合、対象のブロック全てのデータが書き込まれていてもよいし、一つのブロックのデータのうち、移行元ディスク112の対象ブロックからの差分データのみが書き込まれていてもよい。
このような機能を有する移行システム100にて、ミラー同期中に移行対象データ114への書込要求が発生した場合、コピーオンライト部1004は、移行元ディスク112へ書き込まず、書込による差分を差分書込ディスク1005に書き込む。また、ミラー同期が終了した場合、ストレージサーバ104は、差分書込ディスク1005を破棄する。差分書込ディスク1005の破棄とは、差分書込ディスク1005用に設定していたLUNの解除を行うことである。
図11は、コピーオンライト部1004の動作例を示す説明図である。ミラーリング部332は、移行先仮想計算機122から移行対象データ114の読み書き要求を受け付けると、移行先仮想ディスク141とコピーオンライト部1004に移行対象データ114の読み書き要求を通知する。コピーオンライト部1004は、移行対象データ114への書込要求を受け付けた場合、書込データを差分書込ディスク1005に書き込み、移行元ディスク112には書き込まない。
また、コピーオンライト部1004は、移行対象データ114への読込要求を受け付けた場合、差分書込ディスク1005に読込要求の対象ブロックが存在するかを判断する。コピーオンライト部1004は、存在するブロックに対しては差分書込ディスク1005の対象ブロックを読み込み、存在しないブロックに対しては移行元ディスク112の対象ブロックを読み込む。
また、差分書込ディスク1005に一つのブロックのデータのうち移行元ディスク112の対象ブロックからの差分データのみが書き込まれている場合、コピーオンライト部1004は、移行元ディスク112と差分書込ディスク1005の読込結果を組み合わせる。たとえば、ブロックサイズが512[バイト]であり、差分書込ディスク1005にブロック先頭から4バイトのみのデータが格納されている場合を想定する。このとき、コピーオンライト部1004は、移行元ディスク112の対象ブロックからの512バイトに差分書込ディスク1005からの4バイトを上書きするように組み合わせた後、ミラーリング部332に組み合わせた結果を通知する。
続けて、実施の形態2にかかる移行処理のフローチャートについて説明する。実施の形態2にかかる移行処理は、ステップS802を除いて図7、図8で示した移行処理のフローチャートと等しい処理であるため、説明を省略する。ステップS802にて、ストレージサーバ104は、移行先仮想ディスク141と差分書込ディスク1005を作成する。
次に、図12、図13にて、コピーオンライト部1004の書込処理と読込処理のフローチャートを示す。コピーオンライト部1004の書込処理と読込処理は、コピーオンライト部1004の機能によってストレージサーバ104が実行する。図12と図13では、コピーオンライト部1004の機能でストレージサーバ104が実行することを分かりやすくするため、実行主体をコピーオンライト部1004として説明する。なお、図12、図13で示す書込処理、読込処理は、図8で示したステップS808にて実行される。
図12は、コピーオンライト部1004による書込処理手順の一例を示すフローチャートである。コピーオンライト部1004は、ミラーリング部332から書込要求を受け付ける(ステップS1201)。書込要求を受け付けた後、コピーオンライト部1004は、差分書込ディスク1005に書込対象のブロックがあるか否かを判断する(ステップS1202)。書込対象のブロックがない場合(ステップS1202:No)、コピーオンライト部1004は、書込対象のブロックを移行元ディスク112から読み込む(ステップS1203)。書込対象のブロックがある場合(ステップS1202:Yes)、コピーオンライト部1004は、書込対象のブロックを差分書込ディスク1005から読み込む(ステップS1204)。書込対象のブロックの読込後、コピーオンライト部1004は、読み込んだブロックについて、ストレージサーバ104内のメモリ内で書込、または更新する(ステップS1205)。書込、または更新後、コピーオンライト部1004は、書込、または更新したブロックを差分書込ディスク1005に書き込む(ステップS1206)。
書き込み後、コピーオンライト部1004は、要求分全ての書込を終了したか否かを判断する(ステップS1207)。書込が全て終了していない場合(ステップS1207:No)、コピーオンライト部1004は、ステップS1202の処理に移行する。書込が全て終了している場合(ステップS1207:Yes)、コピーオンライト部1004は、書込完了の応答をミラーリング部332に通知し(ステップS1208)、書込処理を終了する。
図13は、コピーオンライト部1004による読込処理手順の一例を示すフローチャートである。コピーオンライト部1004は、ミラーリング部332から読込要求を受け付ける(ステップS1301)。読込要求を受け付けた後、コピーオンライト部1004は、差分書込ディスク1005に対象ブロックがあるか否かを判断する(ステップS1302)。対象ブロックがない場合(ステップS1302:No)、コピーオンライト部1004は、移行元ディスク112内の対象ブロックを読み込んでミラーリング部332に通知する(ステップS1303)。対象ブロックがある場合(ステップS1302:Yes)、コピーオンライト部1004は、差分書込ディスク1005内の対象ブロックを読み込んでミラーリング部332に通知する(ステップS1304)。
読み込んだ対象ブロックをミラーリング部332に通知後、コピーオンライト部1004は、要求分全ての読込を終了したか否かを判断する(ステップS1305)。読込が終了していない場合(ステップS1305:No)、コピーオンライト部1004は、ステップS1302の処理に移行する。読込が終了した場合(ステップS1305:Yes)、コピーオンライト部1004は、読込完了の応答をミラーリング部332に通知し(ステップS1306)、読込処理を終了する。
以上説明したように、移行プログラム、移行装置、および移行方法によれば、移行先装置の記憶領域のうち前記移行先記憶領域とは異なる他の記憶領域を確保し、書込時に他の記憶領域に書き込み、読込時には、移行元記憶領域と他の記憶領域を組み合わせる。
これにより、実施の形態2にかかる移行システムは、移行元ディスクへの書込要求を送らないようになるため、ネットワークのトラフィックを削減し、また、書込要求に対する応答待ち時間を削減することができる。特に、ネットワークがWANである場合、ネットワークの転送速度が遅いため、トラフィックを削減することで、移行処理にかかる時間を大幅に削減することができる。また、実施の形態2にかかる移行システムは、移行元ディスクに書込を行わないため、移行対象データを変更せずに移行時の状態で保全することができる。たとえば、移行処理完了後、移行先装置が何らかのデータの更新後に不具合が発生した場合、移行システムは、保全されていた移行対象データで再度移行処理を行うことができる。
なお、本実施の形態で説明した移行方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本移行プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また本移行プログラムは、インターネット等のネットワークを介して配布してもよい。
上述した実施の形態1、2に関し、さらに以下の付記を開示する。
(付記1)第1のオペレーティングシステムを記憶する第1の記憶領域とは異なる第2の記憶領域に記憶された移行プログラムであって、
前記第2の記憶領域に記憶された第2のオペレーティングシステムで前記第1および第2の記憶領域を有する移行元装置が起動された場合、前記第1の記憶領域に前記第1のオペレーティングシステムが存在することを検出し、
前記第1の記憶領域に前記第1のオペレーティングシステムが存在することが検出された場合、前記第1の記憶領域内の少なくとも前記第1のオペレーティングシステムを含む移行対象データを、前記移行元装置と通信可能な移行先装置へ転送する、
処理を前記移行元装置に実行させることを特徴とする移行プログラム。
(付記2)前記転送する処理は、
前記第1の記憶領域に前記第1のオペレーティングシステムが存在することが検出された場合、前記移行対象データに対する転送の単位をブロック単位に設定して、前記移行先装置に前記移行対象データを転送する、
ことを特徴とする付記1に記載の移行プログラム。
(付記3)前記第2のオペレーティングシステムで前記移行元装置が起動された場合、前記移行元装置が有する記憶領域のうち前記第2の記憶領域を除いた記憶領域が前記第1の記憶領域である状態を検出し、
前記状態が検出された場合、前記第1の記憶領域を前記移行対象データとして前記移行先装置へ転送する、
ことを特徴とする付記1または2に記載の移行プログラム。
(付記4)2つの記憶領域のデータを同期するミラーリング部を有する移行先装置に、
移行対象オペレーティングシステムを含む移行対象データを記憶する移行元記憶領域を有する移行元装置から、前記移行対象データの移行指示を受け付け、
前記移行指示が受け付けられた場合、前記移行先装置の記憶領域のうち前記移行対象オペレーティングシステムがアクセス可能な移行先記憶領域を確保し、
前記移行先記憶領域が確保された場合、前記移行対象データを前記移行元記憶領域と前記移行先記憶領域とで同期するように前記ミラーリング部を制御し、
前記ミラーリング部による同期が完了した場合、前記移行対象オペレーティングシステムからの前記移行対象データへのアクセス要求先を、前記ミラーリング部から前記移行先記憶領域に切り替える、
処理を実行させることを特徴とする移行プログラム。
(付記5)前記移行指示が受け付けられた場合、さらに、前記移行先装置の記憶領域のうち前記移行先記憶領域とは異なる他の記憶領域を確保し、
前記ミラーリング部による同期中に前記移行対象オペレーティングシステムによって前記移行対象データへの書込要求が発行された場合、前記移行元記憶領域への書込を前記他の記憶領域への書込に変更するように前記ミラーリング部を制御し、
前記ミラーリング部による同期中に前記移行対象オペレーティングシステムによって前記移行対象データへの読込要求が発行された場合、前記移行元記憶領域および前記他の記憶領域に記憶されたデータを組み合わせたデータを前記移行元記憶領域からの読込結果とするように前記ミラーリング部を制御する、
処理を実行させることを特徴とする付記4に記載の移行プログラム。
(付記6)2つの記憶領域のデータを同期するミラーリング部を有する移行装置であって、
移行対象オペレーティングシステムを含む移行対象データを記憶する移行元記憶領域を有する他装置から、前記移行対象データの移行指示を受け付ける受付部と、
前記移行指示が受け付けられた場合、前記移行先装置の記憶領域のうち前記移行対象オペレーティングシステムがアクセス可能な移行先記憶領域を確保する確保部と、
前記移行先記憶領域が確保された場合、前記移行対象データを前記移行元記憶領域と前記移行先記憶領域とで同期するように前記ミラーリング部を制御する制御部と、
前記ミラーリング部による同期が完了した場合、前記移行対象オペレーティングシステムからの前記移行対象データへのアクセス要求先を、前記ミラーリング部から前記移行先記憶領域に切り替える切替部と、
を備えることを特徴とする移行装置。
(付記7)2つの記憶領域のデータを同期するミラーリング部を有する移行先装置が、
移行対象オペレーティングシステムを含む移行対象データを記憶する移行元記憶領域を有する移行元装置から、前記移行対象データの移行指示を受け付け、
前記移行指示が受け付けられた場合、前記移行先装置の記憶領域のうち前記移行対象オペレーティングシステムがアクセス可能な移行先記憶領域を確保し、
前記移行先記憶領域が確保された場合、前記移行対象データを前記移行元記憶領域と前記移行先記憶領域とで同期するように前記ミラーリング部を制御し、
前記ミラーリング部による同期が完了した場合、前記移行対象オペレーティングシステムからの前記移行対象データへのアクセス要求先を、前記ミラーリング部から前記移行先記憶領域に切り替える、
処理を実行することを特徴とする移行方法。
100 移行システム
101 移行元装置
102 管理サーバ
103 VMサーバ
104 ストレージサーバ
105 ストレージ
106 ネットワーク
111 ライブOS
112 移行元ディスク
113 移行プログラムライブCD
114 移行対象データ
115 業務OS
121 仮想マシンモニタ
122 移行先仮想計算機
131 ミラーインスタンス
141 移行先仮想ディスク
302 検出部
304 転送部
321 受付部
322 確保部
323 制御部
324 通知部
329 切替部
331 同期管理テーブル
332 ミラーリング部

Claims (6)

  1. 第1のオペレーティングシステムを記憶する第1の記憶領域とは異なる第2の記憶領域に記憶された移行プログラムであって、
    前記第2の記憶領域に記憶された第2のオペレーティングシステムで前記第1および第2の記憶領域を有する移行元装置が起動された場合、前記第1の記憶領域に前記第1のオペレーティングシステムが存在することを検出し、
    前記第1の記憶領域に前記第1のオペレーティングシステムが存在することが検出された場合、前記第1の記憶領域内の少なくとも前記第1のオペレーティングシステムを含む移行対象データを、前記移行元装置と通信可能な移行先装置へ転送する、
    処理を前記移行元装置に実行させることを特徴とする移行プログラム。
  2. 前記転送する処理は、
    前記第1の記憶領域に前記第1のオペレーティングシステムが存在することが検出された場合、前記移行対象データに対する転送の単位をブロック単位に設定して、前記移行先装置に前記移行対象データを転送する、
    ことを特徴とする請求項1に記載の移行プログラム。
  3. 2つの記憶領域のデータを同期するミラーリング部を有する移行先装置に、
    移行対象オペレーティングシステムを含む移行対象データを記憶する移行元記憶領域を有する移行元装置から、前記移行対象データの移行指示を受け付け、
    前記移行指示が受け付けられた場合、前記移行先装置の記憶領域のうち前記移行対象オペレーティングシステムがアクセス可能な移行先記憶領域を確保し、
    前記移行先記憶領域が確保された場合、前記移行対象データを前記移行元記憶領域と前記移行先記憶領域とで同期するように前記ミラーリング部を制御し、
    前記ミラーリング部による同期が完了した場合、前記移行対象オペレーティングシステムからの前記移行対象データへのアクセス要求先を、前記ミラーリング部から前記移行先記憶領域に切り替える、
    処理を実行させることを特徴とする移行プログラム。
  4. 前記移行指示が受け付けられた場合、さらに、前記移行先装置の記憶領域のうち前記移行先記憶領域とは異なる他の記憶領域を確保し、
    前記ミラーリング部による同期中に前記移行対象オペレーティングシステムによって前記移行対象データへの書込要求が発行された場合、前記移行元記憶領域への書込を前記他の記憶領域への書込に変更するように前記ミラーリング部を制御し、
    前記ミラーリング部による同期中に前記移行対象オペレーティングシステムによって前記移行対象データへの読込要求が発行された場合、前記移行元記憶領域および前記他の記憶領域に記憶されたデータを組み合わせたデータを前記移行元記憶領域からの読込結果とするように前記ミラーリング部を制御する、
    処理を実行させることを特徴とする請求項3に記載の移行プログラム。
  5. 2つの記憶領域のデータを同期するミラーリング部を有する移行装置であって、
    移行対象オペレーティングシステムを含む移行対象データを記憶する移行元記憶領域を有する他装置から、前記移行対象データの移行指示を受け付ける受付部と、
    前記移行指示が受け付けられた場合、前記移行先装置の記憶領域のうち前記移行対象オペレーティングシステムがアクセス可能な移行先記憶領域を確保する確保部と、
    前記移行先記憶領域が確保された場合、前記移行対象データを前記移行元記憶領域と前記移行先記憶領域とで同期するように前記ミラーリング部を制御する制御部と、
    前記ミラーリング部による同期が完了した場合、前記移行対象オペレーティングシステムからの前記移行対象データへのアクセス要求先を、前記ミラーリング部から前記移行先記憶領域に切り替える切替部と、
    を備えることを特徴とする移行装置。
  6. 2つの記憶領域のデータを同期するミラーリング部を有する移行先装置が、
    移行対象オペレーティングシステムを含む移行対象データを記憶する移行元記憶領域を有する移行元装置から、前記移行対象データの移行指示を受け付け、
    前記移行指示が受け付けられた場合、前記移行先装置の記憶領域のうち前記移行対象オペレーティングシステムがアクセス可能な移行先記憶領域を確保し、
    前記移行先記憶領域が確保された場合、前記移行対象データを前記移行元記憶領域と前記移行先記憶領域とで同期するように前記ミラーリング部を制御し、
    前記ミラーリング部による同期が完了した場合、前記移行対象オペレーティングシステムからの前記移行対象データへのアクセス要求先を、前記ミラーリング部から前記移行先記憶領域に切り替える、
    処理を実行することを特徴とする移行方法。
JP2011176349A 2011-08-11 2011-08-11 移行プログラム、移行装置、および移行方法 Expired - Fee Related JP5720483B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2011176349A JP5720483B2 (ja) 2011-08-11 2011-08-11 移行プログラム、移行装置、および移行方法
US13/517,660 US9183060B2 (en) 2011-08-11 2012-06-14 Computer product, migration executing apparatus, and migration method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011176349A JP5720483B2 (ja) 2011-08-11 2011-08-11 移行プログラム、移行装置、および移行方法

Publications (2)

Publication Number Publication Date
JP2013041342A true JP2013041342A (ja) 2013-02-28
JP5720483B2 JP5720483B2 (ja) 2015-05-20

Family

ID=47678233

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011176349A Expired - Fee Related JP5720483B2 (ja) 2011-08-11 2011-08-11 移行プログラム、移行装置、および移行方法

Country Status (2)

Country Link
US (1) US9183060B2 (ja)
JP (1) JP5720483B2 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9164913B1 (en) * 2012-04-16 2015-10-20 Qlogic, Corporation Method and system for offloading copy on write operations
US9442559B2 (en) * 2013-03-14 2016-09-13 Intel Corporation Exploiting process variation in a multicore processor
WO2015074232A1 (zh) 2013-11-22 2015-05-28 华为技术有限公司 一种内存数据的迁移方法、计算机和装置
US20150293699A1 (en) * 2014-04-11 2015-10-15 Graham Bromley Network-attached storage enhancement appliance
US9959203B2 (en) * 2014-06-23 2018-05-01 Google Llc Managing storage devices
US9740413B1 (en) * 2015-03-30 2017-08-22 EMC IP Holding Company LLC Migrating data using multiple assets
US10073718B2 (en) 2016-01-15 2018-09-11 Intel Corporation Systems, methods and devices for determining work placement on processor cores
CN107885580A (zh) * 2017-11-22 2018-04-06 深信服科技股份有限公司 一种云迁移方法、装置、设备及存储介质
US10430227B2 (en) 2018-01-09 2019-10-01 Microsoft Technology Licensing, Llc Fast instantiation of virtual machines in distributed computing systems
JP2019139628A (ja) * 2018-02-14 2019-08-22 富士ゼロックス株式会社 情報処理装置、情報処理システム及びプログラム
US10664323B2 (en) * 2018-03-07 2020-05-26 Microsoft Technology Licensing, Llc Live migration of virtual machines in distributed computing systems
US10986089B2 (en) * 2019-04-11 2021-04-20 Kas Kasravi Virtual mobile device system and method thereof
US11281390B2 (en) * 2020-03-13 2022-03-22 EMC IP Holding Company LLC Techniques for data migration
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
CN115729463A (zh) * 2022-10-20 2023-03-03 超聚变数字技术有限公司 数据迁移的方法、系统及相关装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006127040A (ja) * 2004-10-27 2006-05-18 Sharp Corp 情報処理システム及び情報処理装置
JP2009122963A (ja) * 2007-11-15 2009-06-04 Hitachi Ltd デプロイ方法およびシステム
JP2011123891A (ja) * 2009-12-13 2011-06-23 Internatl Business Mach Corp <Ibm> ネットワーク環境において仮想マシンのリモート配備を管理する方法、システムおよびコンピュータ・プログラム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8156490B2 (en) * 2004-05-08 2012-04-10 International Business Machines Corporation Dynamic migration of virtual machine computer programs upon satisfaction of conditions
US7257811B2 (en) * 2004-05-11 2007-08-14 International Business Machines Corporation System, method and program to migrate a virtual machine
US8230204B2 (en) * 2005-06-23 2012-07-24 Hewlett-Packard Development Company, L.P. Migration of system images
US8010485B1 (en) * 2005-10-20 2011-08-30 American Megatrends, Inc. Background movement of data between nodes in a storage cluster
JP2008033483A (ja) 2006-07-27 2008-02-14 Nec Corp 計算機システム、計算機および計算機動作環境の移動方法
JP4366698B2 (ja) 2006-07-27 2009-11-18 日本電気株式会社 計算機、計算機システム、及びディスクイメージ配布方法
EP1962192A1 (en) * 2007-02-21 2008-08-27 Deutsche Telekom AG Method and system for the transparent migration of virtual machine storage
US8291411B2 (en) * 2007-05-21 2012-10-16 International Business Machines Corporation Dynamic placement of virtual machines for managing violations of service level agreements (SLAs)
JP5223596B2 (ja) * 2008-10-30 2013-06-26 富士通株式会社 仮想計算機システム及びその管理方法、管理プログラム並びに記録媒体、制御方法
US8478725B2 (en) * 2009-09-14 2013-07-02 Vmware, Inc. Method and system for performing live migration of persistent data of a virtual machine

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006127040A (ja) * 2004-10-27 2006-05-18 Sharp Corp 情報処理システム及び情報処理装置
JP2009122963A (ja) * 2007-11-15 2009-06-04 Hitachi Ltd デプロイ方法およびシステム
JP2011123891A (ja) * 2009-12-13 2011-06-23 Internatl Business Mach Corp <Ibm> ネットワーク環境において仮想マシンのリモート配備を管理する方法、システムおよびコンピュータ・プログラム

Also Published As

Publication number Publication date
JP5720483B2 (ja) 2015-05-20
US20130041977A1 (en) 2013-02-14
US9183060B2 (en) 2015-11-10

Similar Documents

Publication Publication Date Title
JP5720483B2 (ja) 移行プログラム、移行装置、および移行方法
US10956289B2 (en) Switching over from using a first primary storage to using a second primary storage when the first primary storage is in a mirror relationship
JP5860462B2 (ja) 計算機システム及びデータ移行方法
US8635395B2 (en) Method of suspending and resuming virtual machines
US8880470B2 (en) Method and system for performing live migration of persistent data of a virtual machine
KR101465928B1 (ko) 머신을 가상 머신으로 변환하는 방법
US8122212B2 (en) Method and apparatus for logical volume management for virtual machine environment
WO2016199232A1 (ja) ストレージ管理計算機、及びストレージ装置の管理方法
JP4366698B2 (ja) 計算機、計算機システム、及びディスクイメージ配布方法
JP5944001B2 (ja) ストレージシステム、管理計算機、ストレージ装置及びデータ管理方法
JP2007058728A (ja) データ移行方式
US9223605B2 (en) Virtual machine allocation internal and external to physical environment
JP6421470B2 (ja) 仮想マシンマイグレーションプログラム、仮想マシンマイグレーションシステムおよび仮想マシンマイグレーション方法
US20140337594A1 (en) Systems and methods for collapsing a derivative version of a primary storage volume
JP2016115253A (ja) 情報処理装置、メモリ管理方法およびメモリ管理プログラム
US8090907B2 (en) Method for migration of synchronous remote copy service to a virtualization appliance
JP7054001B2 (ja) 情報処理システム、管理装置および制御方法
JP5439435B2 (ja) 計算機システムおよびその計算機システムにおけるディスク共有方法
JP2024027156A (ja) 情報処理システム及び方法
WO2017056208A1 (ja) リクエスト実行順序制御方式
US20160357479A1 (en) Storage control apparatus
JP7413458B2 (ja) 情報処理システム及び方法
US8527716B2 (en) Volume sharing method and storage system using the same
WO2016109743A1 (en) Systems and methods for implementing stretch clusters in a virtualization environment
WO2012063311A1 (ja) 計算機の制御方法、計算機システム及び記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140404

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141202

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150202

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150309

R150 Certificate of patent or registration of utility model

Ref document number: 5720483

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees