JP2015170242A - 中継プログラム、中継方法、および中継装置 - Google Patents

中継プログラム、中継方法、および中継装置 Download PDF

Info

Publication number
JP2015170242A
JP2015170242A JP2014045982A JP2014045982A JP2015170242A JP 2015170242 A JP2015170242 A JP 2015170242A JP 2014045982 A JP2014045982 A JP 2014045982A JP 2014045982 A JP2014045982 A JP 2014045982A JP 2015170242 A JP2015170242 A JP 2015170242A
Authority
JP
Japan
Prior art keywords
information processing
migration
server
processing apparatus
update
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.)
Ceased
Application number
JP2014045982A
Other languages
English (en)
Inventor
実久 土肥
Sanehisa Doi
実久 土肥
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 JP2014045982A priority Critical patent/JP2015170242A/ja
Priority to US14/610,389 priority patent/US20150256446A1/en
Publication of JP2015170242A publication Critical patent/JP2015170242A/ja
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/14Routing performance; Theoretical 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/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/451Execution arrangements for user interfaces
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

【課題】情報処理装置上で動作するオペレーティングシステムのマイグレーションに追従したリモートコンソールの接続先の切り替えを可能とする。
【解決手段】第1の受信手段11は、第1の情報処理装置1の操作画面の画像の更新を指示する更新命令を受信する。第2の受信手段12は、マイグレーション先となる第2の情報処理装置2の操作画面の画像の更新を指示する更新命令を受信する。検知手段13は、第1の情報処理装置1と第2の情報処理装置2とのそれぞれから受信した更新命令に基づいてマイグレーション完了を検知する。転送手段16は、オペレーティングシステムのマイグレーション開始前は、第1の情報処理装置1から受信した更新命令を端末装置3に転送する。また転送手段16は、マイグレーション完了後は、第2の情報処理装置2から受信した更新命令を端末装置3に転送する。
【選択図】図1

Description

本発明は、中継プログラム、中継方法、および中継装置に関する。
情報通信サービスの1つとして、IaaS(Infrastructure as a Service)と呼ばれるサービスがある。IaaSは、情報通信システムの稼働に用いる機器を、遠隔地から利用できるようにするサービスである。例えばIaaSでは、サービス提供側が用意した物理サーバに対して、ユーザが使用する端末装置をリモートコンソールとして接続可能となっている。
リモートコンソールとは、物理サーバに対してネットワークを介して接続されている端末装置を、物理サーバのコンソールとして使用できるようにするものである。コンソールは、物理サーバ操作用の入出力を行う端末装置である。コンソールであれば、例えばオペレーティングシステム(OS:Operating System)起動前であっても、物理サーバに対するコマンド入力や物理サーバから出力された情報の取得などを行うことができる。
リモートコンソール機能は、例えば物理サーバと端末装置との間に設けられた中継器を用いて実現される。中継器は、物理サーバから出力されたコンソール端末向けの表示データを端末装置に転送すると共に、端末装置から出力された物理サーバへの入力データを物理サーバに転送する。
コンソール端末を用いて複数の装置を管理する技術としては、例えばプログラムを動作させながら装置の構成を変更できる計算機システムがある。またサーバの操作技術としては、物理サーバ上で稼働する仮想マシンに対する操作を、撮影された物理サーバの映像上で行う仮想マシン管理システムがある。さらに物理サーバ間のマイグレーション技術としては、サービスの中断時間を短縮し、アクセス透過性、位置透過性を保障し、性能劣化を起こすことなく通常運用を可能にする技術がある。
特開平5−197699号公報 国際公開第2010/113466号 特開2006−190141号公報
しかし、現行の物理サーバのリモートコンソール機能はライブマイグレーションを想定していないため、OSの移動にリモートコンソール機能が追随できない。例えばIaaSでは、メンテナンスなどの理由によりユーザに提供している物理マシンのマイグレーションを実施する場合がある。このときユーザがリモートコンソール機能により端末装置をサーバに接続していた場合、マイグレーションによるOSの移送先の物理サーバに、リモートコンソール機能が引き継がれないという問題がある。
この問題の一因には、リモートコンソール機能を実現するための接続形態が関係している。リモートコンソール機能では、通常のネットワークとは別の管理ネットワーク経由で、ユーザが使用する端末装置と物理サーバとが接続される。そのためセキュリティなどの観点から端末装置と物理サーバとの間に中継器を経由して通信が行われる。中継器は、マイグレーションが実施されることを管理サーバなどから通知を受けることにより物理サーバの移動を認識することは可能であるが、いつマイグレーションが完了して新しい物理サーバに切り替わるのかを認識できない。そのため、マイグレーションが完了してOSの動作場所が新たな物理サーバに切り替わっても、リモートコンソール機能を提供する中継器は、移動元の物理サーバとユーザの端末装置との通信を中継してしまう。その結果、画面更新がされないか、もしくは画面が消えてしまうことになる。
1つの側面では、本件は、情報処理装置上で動作するOSのマイグレーションに追従したリモートコンソールの接続先の切り替えを可能とすることを目的とする。
1つの案では、コンピュータに以下の処理を実行させる中継プログラムが提供される。
コンピュータは、中継プログラムに従って、第1の情報処理装置から、第1の情報処理装置の操作画面の画像の更新を指示する更新命令を受信して、該更新命令を端末装置に転送する。次にコンピュータは、第1の情報処理装置上で動作するオペレーティングシステムのマイグレーション先となる第2の情報処理装置から、第2の情報処理装置の操作画面の画像の更新を指示する更新命令を受信する。さらにコンピュータは、第1の情報処理装置と第2の情報処理装置とのそれぞれから受信した更新命令に基づいて、オペレーティングシステムの第2の情報処理装置へのマイグレーション完了を検知する。そしてコンピュータは、オペレーティングシステムのマイグレーション完了後は、第1の情報処理装置から受信した更新命令の端末装置への転送を停止し、第2の情報処理装置から受信した更新命令を端末装置に転送する。
1態様によれば、サーバ上で動作するOSのマイグレーションに追従したリモートコンソールの接続先の切り替えが可能となる。
第1の実施の形態に係るシステムの構成の一例を示す図である。 第2の実施の形態のシステム構成例を示す図である。 リモートコンソール中継サーバのハードウェアの一構成例を示す図である。 第2の実施の形態における各装置の機能を示すブロック図である。 管理情報記憶部内のデータの一例を示す図である。 接続処理の手順を示すシーケンス図である。 マイグレーション処理の一例を示す図である。 マイグレーション処理の手順を示すシーケンス図である。 コンテキスト切替監視処理の手順の一例を示すフローチャートである。 マイグレーション時の画像の遷移例を示す図である。 第3の実施の形態におけるマイグレーション処理の一例を示す図である。
以下、本実施の形態について図面を参照して説明する。なお各実施の形態は、矛盾のない範囲で複数の実施の形態を組み合わせて実施することができる。
〔第1の実施の形態〕
第1の実施の形態は、情報処理装置(例えば物理サーバ)上で動作するシステム(例えばOS)のマイグレーションに伴い、リモートコンソールの接続先の切り替えを行うものである。このような機能は、IaaSにおいて、物理サーバをリモートコンソールで操作する場合に特に有用となる。
ここでIaaSにおいて、リモートコンソール機能により端末装置を接続する意義について説明する。サーバを遠隔操作するサービスには、リモートコンソールとは別にリモートデスクトップがある。リモートデスクトップは、ネットワークで接続された他のコンピュータを遠隔操作する機能である。リモートデスクトップはOSによって提供されるサービスであり、マイグレーションを行えば、自動でOSの移動に追随する。しかし、OSで提供されるサービスは、OSが動作している間でなければ利用できない。そのためリモートデスクトップ機能では、OSが起動する前のBIOS(Basic Input/Output System)画面などにおいてサーバを操作することができない。またリモートデスクトップ機能では、OSが正常に動作しなくなった場合に、サーバの状態を調べることもできない。そこでリモートコンソール機能を用いて、OS起動前のサーバの遠隔操作が行われる。
このように、IaaSのサービスを利用するユーザにとっては、リモートコンソール機能によりサーバを遠隔操作できることが重要となる。その一方、サービス提供者は、サーバのメンテナンスなどの理由により、OSのマイグレーションを実行することがある。このようなマイグレーションは管理者側の都合で実行されるものであり、ユーザの利便性を損なわずに行うのが適切である。しかし、リモートコンソール機能はOSで提供されているわけではないため、マイグレーションによってOSがマイグレーションされたというだけでは、リモートコンソールの接続先の物理サーバへの切り替えは行われない。
そこで第1の実施の形態では、リモートコンソール機能を情報処理装置の移動に追随させるため、リモートコンソールとして使用する端末装置と情報処理装置との間に設けられた中継器に、情報処理装置間のマイグレーションに追随するように接続先の情報処理装置の切り替え機能を追加する。
図1は、第1の実施の形態に係るシステムの構成の一例を示す図である。図1の例では、第1の情報処理装置1上で動作しているOSを第2の情報処理装置2に、マイグレーション機能によってマイグレーションする場合を想定している。ここで、第1の情報処理装置1と第2の情報処理装置2とは、共に物理サーバである。マイグレーションする対象には、例えば第1の情報処理装置1のOSと、そのOS上で動作しているアプリケーションソフトウェア(以下単にアプリケーションと呼ぶ)とが含まれる。
第1の情報処理装置1と第2の情報処理装置2とは、いずれもリモートコンソールを接続することができる。第1の情報処理装置1と第2の情報処理装置2は、リモートコンソールが接続されている場合、コンソールに表示する操作画面の更新を指示する更新命令を、リモートコンソールとして接続された端末装置宛てに出力する。図1の例では、マイグレーションの実行前は、端末装置3が、中継装置10を介して第1の情報処理装置1に、リモートコンソールとして接続されている。
中継装置10は、第1の受信手段11、第2の受信手段12、検知手段13、描画手段14、記憶手段15、および転送手段16を有している。
第1の受信手段11は、第1の情報処理装置1から、第1の情報処理装置1の操作画面の画像の更新を指示する更新命令を受信する。
第2の受信手段12は、第2の情報処理装置2から、第2の情報処理装置2の操作画面の画像の更新を指示する更新命令を受信する。
検知手段13は、第1の情報処理装置1と第2の情報処理装置2とのそれぞれから受信した更新命令に基づいて、OSおよびアプリケーションの第2の情報処理装置2へのマイグレーション完了を検知する。例えば検知手段13は、第1の情報処理装置1上でのOSの動作停止と、第2の情報処理装置2上でのOSの動作開始とを検知したときに、OSおよびアプリケーションのマイグレーションが完了したと判断する。検知手段13は、第1の情報処理装置1からの更新命令の出力が停止したときに、第1の情報処理装置1上でのOSの動作が停止したと判断する。また検知手段13は、第2の情報処理装置2からの更新命令の出力停止後に、第2の情報処理装置2からの更新命令の出力が再開されたときに、第2の情報処理装置2上でのOSの動作が開始したと判断する。
描画手段14は、OSおよびアプリケーションのマイグレーション開始前は、第1の情報処理装置1から受信した更新命令に従って記憶手段15内に画像を描画し、OSおよびアプリケーションのマイグレーション完了後は、第2の情報処理装置2から受信した更新命令に従って記憶手段15内に画像を描画する。
記憶手段15は、リモートコンソールに表示する操作画面を記憶する。
転送手段16は、OSおよびアプリケーションのマイグレーション開始前は、第1の情報処理装置1から受信した更新命令を端末装置3に転送する。また転送手段16は、OSおよびアプリケーションのマイグレーション完了後は、第1の情報処理装置1から受信した更新命令の端末装置3への転送を停止し、第2の情報処理装置2から受信した更新命令を端末装置3に転送する。さらに転送手段16は、端末装置3から操作画面の画像が要求された場合、記憶手段15内の画像を端末装置3に対して送信する。
このようなシステムによれば、マイグレーションの実行前は、第1の情報処理装置1上でOSおよびアプリケーションが動作しており、第1の情報処理装置1の操作画面の画像の更新を指示する更新命令が、第1の情報処理装置1から出力される。出力された更新命令は、中継装置10の第1の受信手段11で受信される。受信した更新命令は、検知手段13を介して転送手段16に送信される。そして転送手段16が、受信した更新命令を端末装置3に送信する。
第1の情報処理装置1から第2の情報処理装置2へのOSおよびアプリケーションのマイグレーションが開始されると、マイグレーション先の第2の情報処理装置2の操作画面の画像の更新を指示する更新命令が、第2の情報処理装置2から出力される。出力された更新命令は、中継装置10の第2の受信手段12で受信される。この間、第1の情報処理装置1からも更新命令が出力されており、その更新命令は、第1の受信手段11で受信されている。このとき検知手段13により、第1の情報処理装置1と第2の情報処理装置2とのそれぞれから受信した更新命令に基づいて、OSおよびアプリケーションの第2の情報処理装置2へのマイグレーション完了が検知される。転送手段16は、OSおよびアプリケーションのマイグレーション完了後は、第1の情報処理装置1から受信した更新命令の端末装置3への転送を停止し、第2の情報処理装置2から受信した更新命令を端末装置3に転送する。
このようにして、マイグレーションによってOSおよびアプリケーションが第1の情報処理装置1から第2の情報処理装置2へ移行するのに伴って、リモートコンソールとして使用される端末装置3の接続先が、第1の情報処理装置1から第2の情報処理装置2に切り替えられる。すなわちOSおよびアプリケーションのマイグレーションに追従した、リモートコンソールの接続先の自動切り替えが可能となる。
また描画手段14により、OSおよびアプリケーションのマイグレーションの開始前は、第1の情報処理装置1から受信した更新命令に従って記憶手段15内に画像が描画され、OSおよびアプリケーションのマイグレーション完了後は、第2の情報処理装置2から受信した更新命令に従って記憶手段15内に画像が描画される。そのため、記憶手段15には、OSが動作している状況における操作画面の最新の画像が保持される。そしてマイグレーションによるOSおよびアプリケーションのマイグレーション中に端末装置3から操作画面の画像が要求されると、記憶手段15内の画像が転送手段16により端末装置3に送信される。これにより、OSおよびアプリケーションのマイグレーション過程で第1の情報処理装置1と第2の情報処理装置2とから出力される更新命令に基づく画像を、端末装置3に表示させずに済む。その結果、端末装置3を使用しているユーザに、OSおよびアプリケーションがマイグレーションされたことを隠蔽することが可能となる。
なお上記の例では、第1の情報処理装置1または第2の情報処理装置2から出力された更新命令を端末装置3に送信する場合について説明しているが、端末装置3からの操作指示が中継装置10に送られる場合もある。転送手段16は、端末装置3から第1の情報処理装置1または第2の情報処理装置2への操作指示の転送も行う。例えば転送手段16は、マイグレーションの開始前は、端末装置3から送られた操作指示を第1の情報処理装置1に転送する。また転送手段16は、マイグレーションによるOSおよびアプリケーションの移行の完了を検知すると、それ以後に端末装置3から送られた操作指示を第2の情報処理装置2に転送する。
なお、中継装置10における第1の受信手段11、第2の受信手段12、検知手段13、描画手段14、および転送手段16は、例えば中継装置10が有するプロセッサにより実現することができる。また、記憶手段15は、例えば中継装置10が有するメモリにより実現することができる。
また、図1に示した各要素間を接続する線は通信経路の一部を示すものであり、図示した通信経路以外の通信経路も設定可能である。
〔第2の実施の形態〕
次に第2の実施の形態について説明する。第2の実施の形態では、リモートコンソールのための中継器の機能を実現するサーバを設け、ユーザごとの複数の中継器の機能をサーバ内にソフトウェアによって実現できるようにしたものである。
図2は、第2の実施の形態のシステム構成例を示す図である。複数のサーバ310,320,330,340が、サービス用ネットワーク32を介してファイアウォール30に接続されている。ファイアウォール30は、ネットワーク31を介して複数の端末装置41〜43に接続されている。端末装置41〜43は、IaaSの契約をしたユーザが使用するコンピュータである。複数のサーバ310,320,330,340それぞれは、端末装置41〜43から遠隔利用が可能なコンピュータである。
ファイアウォール30は、ネットワーク31を介した不正アクセスを遮断し、IaaSの契約を行ったユーザが使用する端末装置41〜43からの処理要求を、いずれかのサーバに転送する。またファイアウォール30には、中継サーバ100と管理サーバ200とが接続されている。
中継サーバ100は、管理ネットワーク33を介して複数のサーバ310,320,330,340に接続されている。中継サーバ100は、コンソールとして使用される端末装置といずれかのサーバとの間のデータ通信を中継するコンピュータである。
管理サーバ200は、管理ネットワーク33を介して複数のサーバ310,320,330,340や中継サーバ100に接続されている。管理サーバ200は、サーバ310,320,330,340を用いたIasSの提供を管理するコンピュータである。管理サーバ200は、例えばサーバ310,320,330,340を制御して、サーバ間でライブマイグレーションを実行させることができる。また管理サーバ200は、中継サーバ100に対して、リモートコンソールのためのデータ中継に関する指示を送信することができる。
図3は、リモートコンソール中継サーバのハードウェアの一構成例を示す図である。中継サーバ100は、プロセッサ101によって装置全体が制御されている。プロセッサ101には、バス109を介してメモリ102と複数の周辺機器が接続されている。プロセッサ101は、マルチプロセッサであってもよい。プロセッサ101は、例えばCPU(Central Processing Unit)、MPU(Micro Processing Unit)、またはDSP(Digital Signal Processor)である。プロセッサ101がプログラムを実行することで実現する機能の少なくとも一部を、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)などの電子回路で実現してもよい。
メモリ102は、中継サーバ100の主記憶装置として使用される。メモリ102には、プロセッサ101に実行させるOSのプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、メモリ102には、プロセッサ101による処理に必要な各種データが格納される。メモリ102としては、例えばRAM(Random Access Memory)などの揮発性の半導体記憶装置が使用される。
バス109に接続されている周辺機器としては、HDD(Hard Disk Drive)103、グラフィック処理装置104、入力インタフェース105、光学ドライブ装置106、機器接続インタフェース107およびネットワークインタフェース108a,108bがある。
HDD103は、内蔵したディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。HDD103は、中継サーバ100の補助記憶装置として使用される。HDD103には、OSのプログラム、アプリケーションプログラム、および各種データが格納される。なお、補助記憶装置としては、フラッシュメモリなどの不揮発性の半導体記憶装置を使用することもできる。
グラフィック処理装置104には、モニタ21が接続されている。グラフィック処理装置104は、プロセッサ101からの命令に従って、画像をモニタ21の画面に表示させる。モニタ21としては、CRT(Cathode Ray Tube)を用いた表示装置や液晶表示装置などがある。
入力インタフェース105には、キーボード22とマウス23とが接続されている。入力インタフェース105は、キーボード22やマウス23から送られてくる信号をプロセッサ101に送信する。なお、マウス23は、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
光学ドライブ装置106は、レーザ光などを利用して、光ディスク24に記録されたデータの読み取りを行う。光ディスク24は、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク24には、DVD(Digital Versatile Disc)、DVD−RAM、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)などがある。
機器接続インタフェース107は、中継サーバ100に周辺機器を接続するための通信インタフェースである。例えば機器接続インタフェース107には、メモリ装置25やメモリリーダライタ26を接続することができる。メモリ装置25は、機器接続インタフェース107との通信機能を搭載した記録媒体である。メモリリーダライタ26は、メモリカード27へのデータの書き込み、またはメモリカード27からのデータの読み出しを行う装置である。メモリカード27は、カード型の記録媒体である。
ネットワークインタフェース108aは、ファイアウォール30に接続されている。ネットワークインタフェース108aは、ファイアウォール30を経由して、他の端末装置41〜43との間でデータの送受信を行う。
ネットワークインタフェース108bは、管理ネットワーク33に接続されている。ネットワークインタフェース108bは、管理ネットワーク33を経由して、サーバ310,320,330,340や管理サーバ200との間でデータの送受信を行う。
以上のようなハードウェア構成によって、第2の実施の形態における中継サーバ100の処理機能を実現することができる。なお、第1の実施の形態に示した装置も、図3に示した中継サーバ100と同様のハードウェアにより実現することができる。またファイアウォール30、管理サーバ200、およびサーバ310,320,330,340も、中継サーバ100と同様のハードウェアで実現することができる。
中継サーバ100や管理サーバ200は、例えばコンピュータ読み取り可能な記録媒体に記録されたプログラムを実行することにより、第2の実施の形態の処理機能を実現する。中継サーバ100または管理サーバ200に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。例えば、中継サーバ100または管理サーバ200に実行させるプログラムをHDD103に格納しておくことができる。プロセッサ101は、HDD103内のプログラムの少なくとも一部をメモリ102にロードし、プログラムを実行する。また中継サーバ100または管理サーバ200に実行させるプログラムを、光ディスク24、メモリ装置25、メモリカード27などの可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、例えばプロセッサ101からの制御により、HDD103にインストールされた後、実行可能となる。またプロセッサ101が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。
次に、第2の実施の形態を実現するために各装置が有する機能について説明する。
図4は、第2の実施の形態における各装置の機能を示すブロック図である。サーバ310,320は、遠隔地の端末装置からのコンソールとしてのアクセスを可能とするために、リモートコンソール機能モジュール(RCM)311,321を有する。RCM311,321は、サーバ310,320がコンソール端末装置へ出力するデータを、管理ネットワーク33経由でリモートコンソールとして接続された端末装置へ、ネットワーク通信用のプロトコルを用いて送信する。またRCM311,321は、管理ネットワーク33経由でリモートコンソールとして接続された端末装置から送られたデータを、サーバ310,320へのコンソール端末からのデータとして受信する。
例えばRCM311,321は、フレームバッファ(FB)311a,321aを有している。FB311a,321aには、コンソール端末に表示させる画像が描画される。RCM311,321は、FB311a,321a内の画像を示す画像データを、遠隔地の端末装置に管理ネットワーク33を介して送信する。
管理サーバ200は、リモートコンソール管理部210とマイグレーション管理部220とを有する。
リモートコンソール管理部210は、中継サーバ100におけるリモートコンソール用のデータ中継機能を管理する。例えば、リモートコンソール管理部210は、端末装置からのコンソール接続要求に応答し、中継サーバ100に対して中継器作成指示を送信する。
マイグレーション管理部220は、サーバ310,320間のライブマイグレーションを管理する。例えばマイグレーション管理部220は、システムの管理者からのマイグレーション指示の入力に応答し、サーバ310,320にライブマイグレーションの指示を送信する。例えばサーバ310で動作しているOSをサーバ320にライブマイグレーションで移送させる場合、ライブマイグレーション先のサーバ320へマイグレーション受入指示を送信し、ライブマイグレーション元のサーバ310へマイグレーション指示を送信する。またマイグレーション管理部220は、リモートコンソール機能により端末装置が接続されているサーバにマイグレーションを実行させる場合、マイグレーション指示に先立って、中継サーバ100に、マイグレーション準備指示を行う。このマイグレーション準備指示により、中継サーバ100では、マイグレーションによるOSの移送を検知し、リモートコンソールとして通信している端末装置の接続先のサーバを自動で切り替えることができる。
中継サーバ100は、管理情報記憶部110,中継器作成部120,および複数の中継器130,130−1,130−2を有する。
管理情報記憶部110は、リモートコンソール機能を実現するために中継サーバ100が利用する情報を記憶する。例えば複数の中継器130,130−1,130−2それぞれの動作状態を示す情報や、サーバ310,320,・・・にアクセスするための認証情報などが、管理情報記憶部110に格納される。管理情報記憶部110は、例えばメモリ102またはHDD103の記憶領域の一部によって実現される。
中継器130は、描画プロトコルモニタ131,132、描画切替部133、フレームバッファ(FB)134、および描画プロトコル送出部135を有している。
2つの描画プロトコルモニタ131,132は、それぞれ接続されたサーバからの、描画プロトコルによる更新命令の送出を監視する。更新命令には、描画コマンドや画像データが含まれる。描画コマンドは、コンソールの操作画面に表示するテキストや図形の描画を指示する命令である。画像データは、コンソールの操作画面に表示する画像イメージである。
図4の例では、2つの描画プロトコルモニタ131,132が設けられているが、マイグレーションの実行時以外では、1つの描画プロトコルモニタ131があればよい。管理サーバ200からマイグレーション準備指示が入力されたときに、2つめの描画プロトコルモニタ132が生成される。描画プロトコルモニタ131,132は、受信した更新命令を描画切替部133に転送する。
描画切替部133は、描画プロトコルモニタ131,132から受信した更新命令のうち、実行する更新命令を切り替える。例えば描画切替部133は、マイグレーション開始前は、描画プロトコルモニタ131が受信した更新命令に従って、FB134に画像を描画する。描画切替部133は、管理サーバ200からのマイグレーション準備指示によりマイグレーションの開始を認識すると、描画プロトコルモニタ131,132が受信した更新命令に基づいて、マイグレーションの完了を検知する。マイグレーションの完了を検知すると、描画切替部133は、描画対象を、描画プロトコルモニタ132が受信した更新命令に切り替える。その後は、描画切替部133は、描画プロトコルモニタ132が受信した更新命令に従って、FB134に画像を描画する。
FB134は、コンソール端末として使用する遠隔の端末装置41に送信する画像データを記憶する。FB134としては、例えばメモリ102内の記憶領域の一部が使用される。
描画プロトコル送出部135は、FB134に描画された画像データを、端末装置41に送信する。例えば描画プロトコル送出部135は、描画切替部133がFB134に画像データを描画したときの更新命令を、そのまま端末装置41に送信することができる。また描画プロトコル送出部135は、FB134に格納されているすべての画像データを読み出し、すべての画像データをイメージデータとして端末装置41に送信することもできる。
図4には、複数の中継器130,130−1,130−2,・・・のうち中継器130の内部機能のみを示しているが、他の中継器130−1,130−2,・・・も中継器130と同様の機能を有している。
なお、図4に示した各要素間を接続する線は通信経路の一部を示すものであり、図示した通信経路以外の通信経路も設定可能である。また、図4に示した各要素の機能は、例えば、その要素に対応するプログラムモジュールをコンピュータに実行させることで実現することができる。
図4に示した中継器130,130−1,130−2,・・・は、図1に示した第1の実施の形態における中継装置10の機能の実現手段の一例である。図4に示した描画プロトコルモニタ131は、図1に示した第1の受信手段11の一例である。図4に示した描画プロトコルモニタ132は、図1に示した第2の受信手段12の一例である。図4に示した描画切替部133は、図1に示した検知手段13と描画手段14とを包含する機能の一例である。図4に示したFB134は、図1に示した記憶手段15の一例である。図4に示した描画プロトコル送出部135は、図1に示した転送手段16の一例である。
次に、管理情報記憶部110に格納される管理情報について詳細に説明する。
図5は、管理情報記憶部内のデータの一例を示す図である。管理情報記憶部110には、中継器管理テーブル111とRCM管理テーブル112とが格納されている。
中継器管理テーブル111は、中継器の状態を管理するデータテーブルである。中継器管理テーブル111には、中継器ID、現RCM−ID、移送先RCM−ID、および状態の欄が設けられている。中継器IDの欄には、中継器の識別情報(中継器ID)が設定される。現RCM−IDの欄には、中継器を介して通信しているRCMの識別情報(RCM−ID)が設定される。移送先RCM−IDの欄には、マイグレーションによるOSの移送先のサーバが有するRCMの識別情報が設定される。状態の欄には、中継器の使用状態が設定される。
中継器の使用状態には、例えば使用中、移送中、準備中がある。状態「使用中」は、中継器が、リモートコンソールとして使用する端末装置とサーバとの間の通信データの中継を行っている状態を示している。状態「移送中」は、中継器の接続先のサーバのソフトウェアが、マイグレーションによって別のサーバに移送中であることを示している。状態が移送中の中継器に対してのみ、移送先RCM−IDが設定されている。状態「準備中」は、端末装置とサーバとの間のリモートコンソール用のデータ通信の中継を行う準備中であることを示している。例えばサーバのRCMに接続するための認証処理中の中継器は、状態が準備中となる。
RCM管理テーブル112は、サーバに実装されたRCMに関する情報を管理するデータテーブルである。RCM管理テーブル112には、サーバIDとRCM情報との欄が設けられている。サーバIDの欄には、サーバの識別子(サーバID)が設定される。RCM情報の欄には、サーバに実装されているRCMに関する情報(RCM情報)が設定される。
RCM情報の欄は、RCM−ID、IPアドレス、アクセスキー、および使用状態の欄に分かれている。RCM−IDの欄には、RCMの識別子(RCM−ID)が設定される。IPアドレスの欄には、RCMのIPアドレスが設定される。アクセスキーの欄には、RCMと通信を接続するためのアクセスキー(例えば所定の文字列)が設定される。使用状態の欄には、RCMの使用状態が設定される。
RCMの使用状態には、未使用、使用中、および接続中がある。状態「未使用」は、リモートコンソール機能の提供に、RCMが使用されていないことを示している。状態「使用中」は、RCMが中継器を介して端末装置と通信し、リモートコンソール機能を提供していることを示している。状態「接続中」は、リモートコンソール機能の提供のために、中継器との接続処理中であることを示している。例えば中継器に対する認証処理中のRCMの状態は、接続中である。
次に、端末装置41を、サーバ310のリモートコンソール端末として使用する場合を例に採り、端末装置41とサーバ310との間の接続処理について説明する。
図6は、接続処理の手順を示すシーケンス図である。以下、図6に示す処理手順をステップ番号に沿って説明する。
[ステップS101]管理サーバ200のリモートコンソール管理部210は、端末装置41からのコンソール接続要求を受信する。コンソール接続要求には、例えばサーバ310のサーバIDが含まれる。
[ステップS102]リモートコンソール管理部210は、中継サーバ100に対して、中継器作成指示を送信する。中継器作成指示には、例えば端末装置41の識別情報とサーバ310のRCM311の識別情報とが含まれる。端末装置41の識別情報は、例えば端末装置41のIPアドレスである。サーバ310のRCM311の識別情報は、例えばRCM311のRCM−IDである。RCM311の識別情報に、IPアドレス、アクセスキーを含めることもできる。
[ステップS103]リモートコンソール管理部210の中継器作成部120は、中継器作成指示に応答し、中継器130を作成する。例えば中継器作成部120は、プロセスを起動し、そのプロセスに、中継器130の処理機能を記述されたプログラムを実行させる。そして、中継器作成部120は、中継器作成指示に含まれる、端末装置41のIPアドレス、およびRCM311のIPアドレスとアクセスキーとを、作成した中継器130に送信する。
この際、中継器作成部120は、管理情報記憶部110の内容を更新する。例えば中継器作成部120は、中継器管理テーブル111に、作成した中継器130に対応するレコードを追加登録する。追加したレコードの現RCM−IDには、RCM311のRCM−IDが設定される。また追加したレコードの状態は準備中となる。また中継器作成部120は、RCM管理テーブル112における、接続したサーバ310のサーバIDが設定されたレコードの使用状態を、接続中に更新する。
[ステップS104]中継器130は、接続対象のサーバ310のRCM311に接続する。例えば中継器130は、RCM311のIPアドレス宛に接続要求を送信する。接続要求には、例えばRCM311のアクセスキーが含まれる。RCM311はアクセスキーが正しいことを確認し、中継器130との間の通信接続を確立する。その後、中継器130は、端末装置41との間の通信を接続する。これにより、中継器130を介して、端末装置41とRCM311とが接続される。
[ステップS105]中継器130は、RCM311から送られる更新命令に基づくFB134への描画を開始する。以後、RCM311から更新命令が送られるごとに、FB134内の画像が更新される。FB134内の画像が最新の状態に保たれることで、端末装置41の画面に表示させる最新の画像が、FB134で保持される。
[ステップS106]中継器130は、RCM311から端末装置41への、描画プロトコルに従った更新命令の中継を開始する。中継器130が更新命令の中継を開始すると、中継器作成部120は、管理情報記憶部110の内容を更新する。例えば中継器作成部120は、RCM管理テーブル112における、接続したサーバ310のサーバIDが設定されたレコードの使用状態を、使用中に更新する。
このようにして、中継サーバ100内に中継器130が生成され、サーバ310内のRCM311と端末装置41との間の描画プロトコルによる通信が中継される。その結果、端末装置41を使用するユーザは、端末装置41をサーバ310のリモートコンソール端末として使用することができる。
ここで、サーバ310の運用中に、サーバ310で実行されているOSなどのソフトウェアを、サーバ320にライブマイグレーションで移送する場合を考える。例えばサーバ310においてメモリエラーが多発している場合、サーバ310の保守のために、サーバ310で実行しているソフトウェアのライブマイグレーションが行われる。ライブマイグレーションは、ソフトウェアによるサービスを停止せずに、そのソフトウェアを実行する環境を移送する技術である。
サーバ310に対し、リモートコンソール端末として端末装置41が接続されている状況でライブマイグレーションが実行する場合、端末装置41からの接続先も切り替えられる。以下、端末装置41の接続先の切り替えを伴うマイグレーション処理について説明する。
図7は、マイグレーション処理の一例を示す図である。管理サーバ200のマイグレーション管理部220は、サーバ310のライブマイグレーションの指示が入力されると、中継サーバ100に対してマイグレーション準備指示を送信する。中継サーバ100では、中継器130が、移送先のサーバ320内のRCM321と接続する。そして中継器130内に、RCM321から出力される描画プロトコルの通信を監視する描画プロトコルモニタ132が生成される。そして、中継器130は、2つの描画プロトコルモニタ131,132により、移送元と移送先とのそれぞれのサーバ310,320からの描画プロトコルの通信を監視する。
またマイグレーション管理部220は、移送元と移送先とのサーバ310,320にマイグレーションの実行を指示する。するとサーバ310からサーバ320へ、ライブマイグレーションが実行される。各サーバ310,320は、ライブマイグレーションの実行経過を、コンソール端末に表示する情報として、描画プロトコルにより送信する。中継器130では、描画切替部133が、サーバ310,320から出力される描画プロトコルの通信内容に基づいて、マイグレーションが完了したことを検知する。そして描画切替部133は、マイグレーションの完了を検知すると、移送元のサーバ310のRCM311との接続を切断する。その後、中継器130は、サーバ320のRCM321から出力された更新命令によりFB134内に画像を描画するとともに、その更新命令を端末装置41に転送する。
次に、マグレーション処理の手順について、シーケンス図を用いて説明する。
図8は、マイグレーション処理の手順を示すシーケンス図である。以下、図8に示す処理を、ステップ番号に沿って説明する。
[ステップS111]管理サーバ200のマイグレーション管理部220は、マイグレーションの指示を取得する。例えばマイグレーション管理部220は、管理者から、マイグレーション対象のサーバ310を指定したマイグレーション指示の入力を受け付ける。
[ステップS112]マイグレーション管理部220は、中継サーバ100に対してマイグレーション準備指示を送信する。マイグレーション準備指示には、例えば移送元のサーバ310のサーバIDとサーバ310内のRCM311のRCM情報、および移送先のサーバ320のサーバIDとサーバ320内のRCM321のRCM情報とが含まれる。なお既に中継サーバ100のRCM管理テーブル112に、RCM情報が登録されている場合は、マイグレーション準備指示に、RCM情報を含めなくてもよい。なおマイグレーション準備指示に含まれるRCM情報は、例えばRCM−ID、IPアドレス、アクセスキーなどの情報である。
[ステップS113]マイグレーション管理部220は、移送先のサーバ320へ、マイグレーション受入指示を送信する。例えばマイグレーション管理部220は、サーバ320に対する遠隔操作により、サーバ320に電源を投入する。次にマイグレーション管理部220は、サーバ320に対して、ライブマイグレーションによるソフトウェアの受入を可能とするためのシステムを起動させる。
[ステップS114]マイグレーション管理部220は、移送元のサーバ310へ、マイグレーション指示を送信する。このマイグレーション指示には、例えば移送先のサーバ320のIPアドレスが含まれる。
[ステップS115]管理サーバ200からマイグレーション準備指示を受信した中継サーバ100では、移送元のサーバ310に接続している中継器130が、移送先のサーバ320との通信を接続する。
[ステップS116]中継器130は、コンテキスト切替監視処理を行う。マイグレーションにおけるコンテキスト切替とは、移送元のサーバ310におけるソフトウェアの動作環境(CPUの状態など)を、移送先のサーバ320上に再現することである。コンテキスト切替監視処理により、コンテキスト切替を認識すると、次のステップS117に処理が進められる。なおコンテキスト切替監視処理の詳細は後述する(図9参照)。
[ステップS117]コンテキスト切替を確認後、中継器130の描画切替部133は、描画対象を移送先のサーバ320内のRCM321から送られた更新命令に切り替える。以後、描画切替部133は、RCM321から送られた更新命令に従ってFB134が画像を描画する。また描画プロトコル送出部135は、RCM321から送られた更新命令を端末装置41に転送する。
[ステップS118]描画切替部133は、移送元のサーバ310のRCM311との間の通信を切断する。
以後、サーバ320のRCM321から出力された更新命令が端末装置41に転送される。また端末装置41から出力された指示は、中継器130によってサーバ320のRCM321に転送される。
次に、コンテキスト切替監視処理の手順について詳細に説明する。
図9は、コンテキスト切替監視処理の手順の一例を示すフローチャートである。以下、図9に示す処理をステップ番号に沿って説明する。
[ステップS121]描画切替部133は、移送元のサーバ310と移送先のサーバ320との両方のRCM311,321から描画プロトコルによる更新命令を受信する。
[ステップS122]描画切替部133は、移送先の受入準備が完了したか否かを判断する。例えば描画切替部133は、移送先のサーバ320からの更新命令の出力が一定時間以上途絶えた場合、受入準備が完了したものと判断する。また受入準備が完了したときにRCM321が出力する更新命令を、予め描画切替部133に登録しておき、描画切替部133は、登録された更新命令を受信したときに、受入準備が完了したと判断することもできる。受入準備が完了した場合、処理がステップS123に進められる。受入準備が完了していなければ、処理がステップS121に進められる。
[ステップS123]描画切替部133は、移送元と移送先との両方のRCM311,321からの更新命令を継続して受信する。
[ステップS124]描画切替部133は、移送元の描画が停止したか否かを判断する。例えば描画切替部133は、移動元のサーバ310のRCM311からの更新命令の出力が、一定期間以上停止した場合、描画が停止したと判断する。描画が停止した場合、処理がステップS125に進められる。描画が停止していなければ、処理がステップS123に進められる。
[ステップS125]描画切替部133は、移送先の描画が開始したか否かを判断する。例えば描画切替部133は、移送先のサーバ320のRCM321から更新命令の送信が開催された場合、描画が開始されたと判断する。描画が開始された場合、処理がステップS126に進められる。描画が開始されていなければ、処理がステップS123に進められる。
[ステップS126]描画切替部133は、コンテキストが切り替えられたと認識し、コンテキスト切替監視処理を終了する。
このようにして、マイグレーションによりコンテキスト切替が行われたことを描画切替部133が検知し、FB134への書き込み対象が、移送元が出力した更新命令から移送先が出力した更新命令に切り替えられる。
図10は、マイグレーション時の画像の遷移例を示す図である。移送先のサーバ320にマイグレーション受入準備指示が送信されると、サーバ320のRCM321内のFB321aには、マイグレーション受入準備状況を示すメッセージが描画される。このメッセージを描画する更新命令は、サーバ320のRCM321から中継器130に送信される。中継器130では、RCM321から送られた更新命令を描画プロトコルモニタ132が取得する。この段階では、移送元のサーバ310のRCM311から送られた更新命令が描画対象であり、描画プロトコルモニタ132が受信した更新命令は破棄される。
他方、移送元のサーバ310のRCM311内のFB311aには、動作中のソフトウェアに基づく画像が書き込まれている。この画像を描画するための更新命令は、RCM311から中継器130に送信されている。中継器130では、描画プロトコルモニタ131が、RCM311から送られた更新命令を受信する。そして描画切替部133により、移送元と同じ画像がFB134に描画される。その後、マイグレーション指示を受け取ったサーバ310は、サーバ320と連携してライブマイグレーションを実行する。ライブマイグレーションでは、サーバ310の現在のメモリやレジスタ内の情報が、サーバ320に転送され、サーバ320内のメモリやレジスタに格納される。
マイグレーションが完了すると、移送元のサーバ310のRCM311内のFB311aには、例えば電源オフのメッセージが描画される。その後、サーバ310の電源が遮断される。サーバ310の電源遮断後は、RCM311からの更新命令の出力が停止する。サーバ310停止時に描画される電源オフのメッセージなどの更新命令は、RCM311から中継器130に送信される。このとき、中継器130の描画切替部133は、例えば、マイグレーション開始後のメッセージのFB134への描画を抑止する。また描画切替部133は、そのメッセージの描画を指示する更新命令の端末装置41への転送も抑止する。これにより、端末装置41の画面にマイグレーションの進行状況を示すメッセージを表示させずに済む。
移送先のサーバ320では、マイグレーション完了後、RCM321内のFB321aへの描画が開始される。FB321aへの描画内容を示す更新命令は、RCM321から中継器130に送信される。中継器130では、描画プロトコルモニタ132が更新命令を受信する。そして描画切替部133が、移送先からの更新命令の受信によりマイグレーションが完了したと判断し、描画プロトコルモニタ132が受信した更新命令に従って、FB134に画像を描画する。以後、RCM321から中継器130へ描画プロトコルにより送られた更新命令が、端末装置41に転送される。
このように、リモートコンソールとしてサーバ310に接続されていた端末装置41の接続先を、サーバ310のマイグレーションの実行に伴って、移送先のサーバ320に自動で切り替えることができる。しかも、マイグレーション実行過程を示すメッセージの更新命令を端末装置41に転送しないようにしたことで、マイグレーションの実行をユーザに隠蔽しておくことができる。
〔第3の実施の形態〕
次に第3の実施の形態について説明する。第3の実施の形態は、移送元と移送先のサーバのRCM間で、FB内の画像の共通化を図るものである。以下、第3の実施の形態における第2の実施の形態との相違点について説明する。
図11は、第3の実施の形態におけるマイグレーション処理の一例を示す図である。第3の実施の形態では、移送先のサーバ320においてマイグレーション受入準備が完了すると、移送元のサーバ310のRCM311が、FB321a内の画像データを移送先のサーバ320のRCM321に送信する。移送先のRCM321は、受信した画像データを自己のFB321aに格納する。
このように移送先に画像データを送信することで、マイグレーション完了直後すぐに端末装置41から表示画像全体の画像データが要求されても、移送先のサーバ320から全体の画像データを正しく送信することができる。
〔その他の実施の形態〕
マイグレーション完了の検知方法は、上記の方法に限定されない。例えば移送元のサーバ310の電源遮断時、移送先のサーバ320のマイグレーション受入準備完了時を、サーバ310,320から出力される更新命令に示されるテキストの文字列に基づいて判断することができる。図10の例であれば、中継器130の描画切替部133は、移送元のサーバ310から「Power off」のテキスト文字列の描画を指示する更新命令を受信したときに、移送元の描画が停止した(図9のステップS124で「YES」)と判断する。また中継器130は、移送先のサーバ320から「Setup Complete」のテキスト文字列の描画を指示する更新命令を受信したときに、移送先の受入準備が完了した(図9のステップS122で「YES」)と判断する。
また移送先のサーバ320での描画開始時を、更新命令の種別によって判断することもできる。例えば中継器130は、移送先のサーバ320から受信した更新命令が、テキストの描画を指示するコマンドから、グラフィックの描画を指示するコマンドに切り替わったときに、移送元の描画が開始した(図9のステップS125で「YES」)と判断する。
なお上記の実施の形態では、IaaSのサービスを提供するシステムにおけるマイグレーション時のリモートコンソールの接続先の切り替え例を示したが、サービス形態はIaaSに限定されない。すなわちIaaSに限らず、リモートコンソールが接続された物理サーバに対してマイグレーションを実行する場合に、上記実施の形態に示した技術でリモートコンソールの接続先の切り替えが可能である。
以上、実施の形態を例示したが、実施の形態で示した各部の構成は同様の機能を有する他のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。さらに、前述した実施の形態のうちの任意の2以上の構成(特徴)を組み合わせたものであってもよい。
1 第1の情報処理装置
2 第2の情報処理装置
3 端末装置
10 中継装置
11 第1の受信手段
12 第2の受信手段
13 検知手段
14 描画手段
15 記憶手段
16 転送手段

Claims (6)

  1. コンピュータに、
    第1の情報処理装置から、前記第1の情報処理装置の操作画面の画像の更新を指示する更新命令を受信して、該更新命令を端末装置に転送し、
    前記第1の情報処理装置上で動作するオペレーティングシステムのマイグレーション先となる第2の情報処理装置から、前記第2の情報処理装置の操作画面の画像の更新を指示する更新命令を受信し、
    前記第1の情報処理装置と前記第2の情報処理装置とのそれぞれから受信した更新命令に基づいて、前記オペレーティングシステムの前記第2の情報処理装置へのマイグレーション完了を検知し、
    前記オペレーティングシステムのマイグレーション完了後は、前記第1の情報処理装置から受信した更新命令の前記端末装置への転送を停止し、前記第2の情報処理装置から受信した更新命令を前記端末装置に転送する、
    処理をコンピュータに実行させる中継プログラム。
  2. 前記コンピュータに、さらに、
    前記オペレーティングシステムのマイグレーションの開始前は、前記第1の情報処理装置から受信した更新命令に従って記憶手段内に画像を描画し、前記オペレーティングシステムのマイグレーション完了後は、前記第2の情報処理装置から受信した更新命令に従って前記記憶手段内に画像を描画し、
    前記端末装置から操作画面の画像が要求された場合、前記記憶手段内の画像を前記端末装置に対して送信する、
    処理を実行させることを特徴とする請求項1記載の中継プログラム。
  3. 前記オペレーティングシステムのマイグレーション完了の検知では、前記第1の情報処理装置上での前記オペレーティングシステムの動作停止と、前記第2の情報処理装置上での前記オペレーティングシステムの動作開始とを検知したときに、前記オペレーティングシステムのマイグレーションが完了したと判断する、
    ことを特徴とする請求項1または2に記載の中継プログラム。
  4. 前記オペレーティングシステムのマイグレーション完了の検知では、前記第1の情報処理装置からの更新命令の出力が停止したときに、前記第1の情報処理装置上での前記オペレーティングシステムの動作が停止したと判断し、前記第2の情報処理装置からの更新命令の出力停止後に、前記第2の情報処理装置からの更新命令の出力が再開されたときに、前記第2の情報処理装置上での前記オペレーティングシステムの動作が開始したと判断する、
    ことを特徴とする請求項3記載の中継プログラム。
  5. コンピュータが、
    第1の情報処理装置から、前記第1の情報処理装置の操作画面の画像の更新を指示する更新命令を受信して、該更新命令を端末装置に転送し、
    前記第1の情報処理装置上で動作するオペレーティングシステムのマイグレーション先となる第2の情報処理装置から、前記第2の情報処理装置の操作画面の画像の更新を指示する更新命令を受信し、
    前記第1の情報処理装置と前記第2の情報処理装置とのそれぞれから受信した更新命令に基づいて、前記オペレーティングシステムの前記第2の情報処理装置へのマイグレーション完了を検知し、
    前記オペレーティングシステムのマイグレーション完了後は、前記第1の情報処理装置から受信した更新命令の前記端末装置への転送を停止し、前記第2の情報処理装置から受信した更新命令を前記端末装置に転送する、
    中継方法。
  6. 第1の情報処理装置から、前記第1の情報処理装置の操作画面の画像の更新を指示する更新命令を受信する第1の受信手段と、
    前記第1の情報処理装置上で動作するオペレーティングシステムのマイグレーション先となる第2の情報処理装置から、前記第2の情報処理装置の操作画面の画像の更新を指示する更新命令を受信する第2の受信手段と、
    前記第1の情報処理装置と前記第2の情報処理装置とのそれぞれから受信した更新命令に基づいて、前記オペレーティングシステムの前記第2の情報処理装置へのマイグレーション完了を検知する検知手段と、
    前記オペレーティングシステムのマイグレーション開始前は、前記第1の情報処理装置から受信した更新命令を端末装置に転送し、前記オペレーティングシステムのマイグレーション完了後は、前記第1の情報処理装置から受信した更新命令の前記端末装置への転送を停止し、前記第2の情報処理装置から受信した更新命令を前記端末装置に転送する転送手段と、
    を有する中継装置。
JP2014045982A 2014-03-10 2014-03-10 中継プログラム、中継方法、および中継装置 Ceased JP2015170242A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014045982A JP2015170242A (ja) 2014-03-10 2014-03-10 中継プログラム、中継方法、および中継装置
US14/610,389 US20150256446A1 (en) 2014-03-10 2015-01-30 Method and apparatus for relaying commands

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014045982A JP2015170242A (ja) 2014-03-10 2014-03-10 中継プログラム、中継方法、および中継装置

Publications (1)

Publication Number Publication Date
JP2015170242A true JP2015170242A (ja) 2015-09-28

Family

ID=54018561

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014045982A Ceased JP2015170242A (ja) 2014-03-10 2014-03-10 中継プログラム、中継方法、および中継装置

Country Status (2)

Country Link
US (1) US20150256446A1 (ja)
JP (1) JP2015170242A (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9558005B2 (en) * 2014-05-19 2017-01-31 Intel Corporation Reliable and deterministic live migration of virtual machines
US10216254B1 (en) * 2016-06-29 2019-02-26 Altera Corporation Methods and apparatus for selectively extracting and loading register states
US11438390B2 (en) * 2016-12-30 2022-09-06 Motorola Mobility Llc Automatic call forwarding during system updates
CN108513012B (zh) * 2018-04-02 2020-05-01 Oppo广东移动通信有限公司 数据处理方法、数据处理装置及移动终端
US10956199B2 (en) * 2019-03-14 2021-03-23 International Business Machines Corporation Remote virtual machine console access with persistent and seamless client connections during virtual machine migration

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010039685A (ja) * 2008-08-04 2010-02-18 Hitachi Ltd 複合型計算機及び複合型計算機の制御方法
JP2012048364A (ja) * 2010-08-25 2012-03-08 Digital Electronics Corp コンピュータ切替器およびコンピュータ切替システム
JP2013047920A (ja) * 2011-08-29 2013-03-07 Fujitsu Ltd データ処理システム、データ中継装置およびライブマイグレーション方法
WO2014010213A1 (ja) * 2012-07-11 2014-01-16 日本電気株式会社 マイグレーションシステム、マイグレーション方法及び制御プログラムを格納した非一時的なコンピュータ可読媒体

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5982399A (en) * 1996-06-21 1999-11-09 Autodesk, Inc. Immediate mode drawing interface for the construction of graphics software
US20040117414A1 (en) * 2002-12-17 2004-06-17 Capital One Financial Corporation Method and system for automatically updating operating systems
US20050044220A1 (en) * 2003-08-05 2005-02-24 Sajeev Madhavan Method and system of managing computing resources
DE102004005128B3 (de) * 2004-02-02 2005-01-05 Fujitsu Siemens Computers Gmbh Anordnung mehrerer Rechner und Verfahren zum Betreiben einer Anordnung mehrerer Rechner bei einem Rechnerausfall
US7404105B2 (en) * 2004-08-16 2008-07-22 International Business Machines Corporation High availability multi-processor system
JP4704043B2 (ja) * 2005-01-07 2011-06-15 富士通株式会社 移動処理プログラム、情報処理装置、コンピュータシステム及び移動処理プログラムを格納したコンピュータ読み取り可能な記録媒体
US8230204B2 (en) * 2005-06-23 2012-07-24 Hewlett-Packard Development Company, L.P. Migration of system images
US8141075B1 (en) * 2006-05-08 2012-03-20 Vmware, Inc. Rule engine for virtualized desktop allocation system
US7934121B2 (en) * 2006-11-21 2011-04-26 Microsoft Corporation Transparent replacement of a system processor
US20120011509A1 (en) * 2007-02-15 2012-01-12 Syed Mohammad Amir Husain Migrating Session State of a Machine Without Using Memory Images
US7383327B1 (en) * 2007-10-11 2008-06-03 Swsoft Holdings, Ltd. Management of virtual and physical servers using graphic control panels
JP4871850B2 (ja) * 2007-12-04 2012-02-08 株式会社日立製作所 仮想計算機システム及び仮想計算機移行制御方法
US8214467B2 (en) * 2007-12-14 2012-07-03 International Business Machines Corporation Migrating port-specific operating parameters during blade server failover
US20090172125A1 (en) * 2007-12-28 2009-07-02 Mrigank Shekhar Method and system for migrating a computer environment across blade servers
US8175863B1 (en) * 2008-02-13 2012-05-08 Quest Software, Inc. Systems and methods for analyzing performance of virtual environments
US8112490B2 (en) * 2008-05-15 2012-02-07 Upton Kevin S System and method for providing a virtual environment with shared video on demand
US8429675B1 (en) * 2008-06-13 2013-04-23 Netapp, Inc. Virtual machine communication
JP5223596B2 (ja) * 2008-10-30 2013-06-26 富士通株式会社 仮想計算機システム及びその管理方法、管理プログラム並びに記録媒体、制御方法
US8918488B2 (en) * 2009-02-04 2014-12-23 Citrix Systems, Inc. Methods and systems for automated management of virtual resources in a cloud computing environment
US8924968B2 (en) * 2009-03-31 2014-12-30 Nec Corporation System and method of managing virtual machine, and control apparatus, method and program
US8578076B2 (en) * 2009-05-01 2013-11-05 Citrix Systems, Inc. Systems and methods for establishing a cloud bridge between virtual storage resources
JP5499688B2 (ja) * 2009-12-23 2014-05-21 富士通株式会社 計算機システム、情報処理装置、仮想計算機運用方法及びプログラム
US8856319B1 (en) * 2010-02-03 2014-10-07 Citrix Systems, Inc. Event and state management in a scalable cloud computing environment
JP5521620B2 (ja) * 2010-02-19 2014-06-18 富士通株式会社 中継装置、仮想マシンシステム及び中継方法
JP5386745B2 (ja) * 2010-03-25 2014-01-15 株式会社日立製作所 ネットワーク監視サーバ及びネットワーク監視システム
US10042656B2 (en) * 2011-08-01 2018-08-07 Avocent Corporation System and method for providing migrateable virtual serial port services
US9348724B2 (en) * 2012-05-21 2016-05-24 Hitachi, Ltd. Method and apparatus for maintaining a workload service level on a converged platform
WO2013190590A1 (en) * 2012-06-18 2013-12-27 Hitachi, Ltd. Computer system and data migration method
JP5673968B2 (ja) * 2012-11-16 2015-02-18 コニカミノルタ株式会社 画像形成装置および画像形成システム
WO2014080437A1 (en) * 2012-11-20 2014-05-30 Hitachi, Ltd. Computer system and virtual server migration control method for computer system
US9354993B2 (en) * 2013-03-12 2016-05-31 Dell Products L.P. System and method to reduce service disruption in a shared infrastructure node environment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010039685A (ja) * 2008-08-04 2010-02-18 Hitachi Ltd 複合型計算機及び複合型計算機の制御方法
JP2012048364A (ja) * 2010-08-25 2012-03-08 Digital Electronics Corp コンピュータ切替器およびコンピュータ切替システム
JP2013047920A (ja) * 2011-08-29 2013-03-07 Fujitsu Ltd データ処理システム、データ中継装置およびライブマイグレーション方法
WO2014010213A1 (ja) * 2012-07-11 2014-01-16 日本電気株式会社 マイグレーションシステム、マイグレーション方法及び制御プログラムを格納した非一時的なコンピュータ可読媒体

Also Published As

Publication number Publication date
US20150256446A1 (en) 2015-09-10

Similar Documents

Publication Publication Date Title
US10394547B2 (en) Applying update to snapshots of virtual machine
US11200079B2 (en) System and method for virtual machine live migration
JP4741304B2 (ja) データマイグレーション方法又はデータマイグレーションシステム
WO2017124842A1 (zh) 一种截图的方法及装置
JP2015170242A (ja) 中継プログラム、中継方法、および中継装置
US9197503B2 (en) Enhanced remote presence
KR20140143793A (ko) 유니버셜 직렬 버스 디바이스들에 대한 데이터 재지향
JP2007219757A (ja) 仮想計算機システムを機能させるためのプログラム
US10581950B2 (en) Local operation of remotely executed applications
JP2014106767A (ja) 情報処理装置、情報処理方法及びコンピュータプログラム
US9471135B2 (en) Communication control apparatus, information processing apparatus, and information processing system
CN104917800A (zh) 建立用于虚拟机的冗余连接的方法及装置
JP5491934B2 (ja) サーバ装置、及び情報処理システムの制御方法、並びにプログラム
JP2015035034A (ja) 仮想ホストのライブマイグレーション方法およびネットワーク装置
KR20160103814A (ko) 클라우드 스트리밍 서비스 시스템의 에러 복구 장치 및 방법
JP2018077594A (ja) 仮想マシン管理装置、システム、仮想マシン移動方法及びプログラム
JP5975003B2 (ja) 仮想化制御装置、仮想化システム、仮想化方法、および、仮想化制御プログラム。
JP5982436B2 (ja) 画面転送サーバ装置、および画面転送方法
JP2011198157A (ja) 仮想計算機システム、仮想計算機制御装置および仮想計算機制御方法
TWM486082U (zh) 週邊裝置管理系統、週邊裝置使用系統及其共享系統
WO2019042005A1 (zh) 一种虚拟机的热迁移方法、装置和系统
JP5606598B1 (ja) 通信システム及び通信方法
US11539788B2 (en) Information processing system and method of controlling information processing system
JP2012173969A (ja) デバイス制御システム及びプログラム
JP2015210590A (ja) Kvmスイッチ、kvmスイッチの制御方法及び情報処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161102

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170929

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171017

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171214

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180515

A045 Written measure of dismissal of application [lapsed due to lack of payment]

Free format text: JAPANESE INTERMEDIATE CODE: A045

Effective date: 20180925