JP2017191542A - インスタンス起動装置、インスタンス起動方法、及び、インスタンス起動プログラム - Google Patents

インスタンス起動装置、インスタンス起動方法、及び、インスタンス起動プログラム Download PDF

Info

Publication number
JP2017191542A
JP2017191542A JP2016081836A JP2016081836A JP2017191542A JP 2017191542 A JP2017191542 A JP 2017191542A JP 2016081836 A JP2016081836 A JP 2016081836A JP 2016081836 A JP2016081836 A JP 2016081836A JP 2017191542 A JP2017191542 A JP 2017191542A
Authority
JP
Japan
Prior art keywords
instance
image
activation
processing load
threshold
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2016081836A
Other languages
English (en)
Inventor
晴道 横山
Harumichi Yokoyama
晴道 横山
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2016081836A priority Critical patent/JP2017191542A/ja
Publication of JP2017191542A publication Critical patent/JP2017191542A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】所定の処理を実行するインスタンスを短期間に起動することが可能なインスタンス起動装置等を提供する。
【解決手段】インスタンス起動装置400は、第1インスタンスに関する処理の処理負荷が第1閾値以上となった場合に、該第1インスタンスに関するイメージを、第2インスタンスを管理している情報処理装置に転送するよう制御するイメージ転送制御部410と、該処理負荷が、該第1閾値よりも大きな第2閾値以上となった場合に、該イメージに基づき該第2インスタンスを起動するよう、該情報処理装置を制御するインスタンス起動制御部420とを有する。
【選択図】 図11

Description

本発明は、物理コンピュータにおいて、所定の処理を実行する仮想マシン等のインスタンスを起動するインスタンス起動装置等に関する。
仮想化技術、及び、仮想化技術を用いたクラウドが広く用いられている。クラウドは、ユーザがインターネット等の通信ネットワークを介して、コンピュータ資源を利用するサービスの一例である。クラウドのメリットは、たとえば、所定の処理を実行する物理的なサーバ(情報処理装置)をユーザが準備することなく、オンデマンドにて所定の処理を実行するインスタンス(たとえば、仮想マシンや、コンテナ)を作成することが可能なことである。また、クラウドには、稼働しているインスタンスの処理負荷を監視し、該処理負荷に応じて、さらに、稼働しているインスタンスと同様の機能を有するインスタンスを起動することによって、処理能力を増強するサービスがある。
インスタンスを起動することが決定された場合には、該インスタンスを起動する処理を速やかに完了することによって、所定の処理を短期間に実行することができる。インスタンスの処理負荷は、時間とともに変化する。このため、処理負荷が上昇した場合に、すみやかに、所定の処理を処理可能なインスタンスを起動することによって、該所定の処理に関する処理性能を増強することが必要である。このような処理によって、所定の処理を実行するインスタンスが高負荷である状況を早期に解消することができる。
プレコピーマイグレーションは、仮想マシンを起動する場合に、該仮想マシンがアクセスする主記憶装置(メインメモリ、メモリ)のイメージを、起動前に、該仮想マシンに転送する技術である。プレコピーマイグレーションによれば、仮想マシンがアクセスするデータを含むページが該メモリに格納されていないミスヒット等のオーバーヘッドを低減することができる。すなわち、プレコピーマイグレーションによれば、仮想マシンを起動した直後から短期間にインスタンスを実行することができる。
特許文献1は、メモリのうち、仮想マシンがアクセスする頻度が高いページ、または、仮想マシンが書き込む頻度が高いページを優先的に仮想マシンに転送する装置を開示している。特許文献1に開示された装置は、プレコピーマイグレーションを採用した装置の一例であり、アクセスされる頻度が高いメモリのイメージを、仮想マシンに転送する。特許文献1に開示された装置によれば、一般的なプレコピーマイグレーションと比べ、該仮想マシンにて処理を開始するまでに要する所要時間が短く、さらに、処理性能が劣化する可能性が低い。
特許文献2は、仮想マシンがアクセスするメモリのイメージをバックアップする優先度を、該仮想マシンの処理負荷等に基づき算出し、算出した優先度に基づき、バックアップとしてイメージを作成する装置を開示している。
特開2015−22380号公報 特許第5342660号公報
しかし、特許文献1、または、特許文献2に開示された装置は、インスタンスを起動することを決定した以降にのみ、該インスタンスに関するイメージを仮想マシンに転送することができる。この結果、該インスタンスに関するイメージを仮想マシンに転送するのに要する所要時間分だけ、該仮想マシンを起動するのに要する所要時間が長期化してしまう。
そこで、本発明の主たる目的は、所定の処理を実行するインスタンスを短期間に起動することが可能なインスタンス起動装置等を提供することである。
前述の目的を達成するために、本発明の一態様において、インスタンス起動装置は、
第1インスタンスに関する処理の処理負荷が第1閾値以上となった場合に、前記第1インスタンスに関するイメージを、第2インスタンスを管理している情報処理装置に転送するよう制御するイメージ制御手段と、
前記処理負荷が、前記第1閾値よりも大きな第2閾値以上となった場合に、前記イメージに基づき前記第2インスタンスを起動するよう、前記情報処理装置を制御する起動制御手段と
を備える。
また、本発明の他の見地として、インスタンス起動方法は、
第1インスタンスに関する処理の処理負荷が第1閾値以上となった場合に、前記第1インスタンスに関するイメージを、第2インスタンスを管理している情報処理装置に転送するよう制御し、
前記処理負荷が、前記第1閾値よりも大きな第2閾値以上となった場合に、前記イメージに基づき前記第2インスタンスを起動するよう、前記情報処理装置を制御する。
また、本発明の他の見地として、係るインスタンス起動プログラムは、
第1インスタンスに関する処理の処理負荷が第1閾値以上となった場合に、前記第1インスタンスに関するイメージを、第2インスタンスを管理している情報処理装置に転送するよう制御するイメージ制御機能と、
前記処理負荷が、前記第1閾値よりも大きな第2閾値以上となった場合に、前記イメージに基づき前記第2インスタンスを起動するよう、前記情報処理装置を制御する起動制御機能と
をコンピュータに実現させる。
さらに、同目的は、係るプログラムを記録するコンピュータが読み取り可能な記録媒体によっても実現される。
本発明に係るインスタンス起動装置等によれば、所定の処理を実行するインスタンスを短期間に起動することができる。
本発明の第1の実施形態に係るインスタンス管理装置が有する構成を示すブロック図である。 第1の実施形態に係るインスタンス管理装置における処理の流れを示すフローチャートである。 第1の実施形態に係るイメージ転送制御部における処理の流れを示すフローチャートである。 第1の実施形態に係るインスタンス起動制御部における処理の流れを示すフローチャートである。 第1の実施形態に係るイメージ消去制御部における処理の流れを示すフローチャートである。 本発明の第2の実施形態に係るインスタンス管理装置が有する構成を示すブロック図である。 第2の実施形態に係るインスタンス管理装置における処理の流れを示すフローチャートである。 本発明の第3の実施形態に係るインスタンス管理装置が有する構成を示すブロック図である。 第3の実施形態に係るインスタンス管理装置における処理の流れを示すフローチャートである。 転送イメージ情報の一例を概念的に表す図である。 本発明の第4の実施形態に係るインスタンス起動装置が有する構成を示すブロック図である。 第1の実施形態乃至第3の実施形態に係るインスタンス管理装置、または、第4の実施形態に係るインスタンス起動装置を実現可能な計算処理装置のハードウェア構成例を概略的に示すブロック図である。
次に、本発明を実施する実施形態について図面を参照しながら詳細に説明する。
<第1の実施形態>
図1を参照しながら、本発明の第1の実施形態に係るインスタンス管理装置100が有する構成について詳細に説明する。図1は、本発明の第1の実施形態に係るインスタンス管理装置100が有する構成を示すブロック図である。
第1の実施形態に係るインスタンス管理装置100は、システム監視部110と、判定部120と、イメージ転送制御部130と、イメージ消去制御部140と、インスタンス起動制御部150とを有する。判定部120は、転送判定部121と、起動判定部122とを有する。
インスタンス管理装置100は、インスタンス実行サーバ1100を制御することができる。すなわち、インスタンス管理装置100は、インスタンス実行サーバ1100に処理を指示することができる。インスタンス実行サーバ1100は、たとえば、インスタンスイメージ記憶部1200に格納されているプログラムを読み取り、読み取ったプログラムを実行することができる。
まず、インスタンス実行サーバ1100について説明する。インスタンス管理装置100は、インスタンス実行サーバ1100にて実行されている処理の負荷等を監視することによって、インスタンス実行サーバ1100に関する処理負荷等を含む監視情報を作成する。インスタンス管理装置100は、インスタンス実行サーバ1100に関して、たとえば、中央演算処理装置(CPU)の使用率、通信ネットワークの使用量、ディスクの使用量、メモリの使用量等の処理負荷を計測し、計測した処理負荷を含む監視情報を作成する。インスタンス管理装置100は、作成した監視情報に基づき、インスタンス実行サーバ1100を制御する。インスタンス管理装置100が監視しているインスタンス実行サーバ1100(すなわち、後述する稼働インスタンスサーバ)と、インスタンス管理装置100が制御しているインスタンス実行サーバ1100(すなわち、後述する起動インスタンスサーバ)とは、別の物理サーバであってよいし、同一の物理サーバであってもよい。
インスタンス実行サーバ1100は、たとえば、所定の処理を実行するインスタンスを起動する。
インスタンスは、所定の処理を実行する機能の他、外部装置から受信した要求情報に応じて、該インスタンスに関する処理負荷を返答する機能を有していてもよい。
インスタンス管理装置100は、インスタンス実行サーバ1100が高性能に処理することができない、または、高性能に処理することができない可能性が高いと判定した場合に、インスタンス実行サーバ1100にて、所定の処理を実行することが可能なインスタンスを、さらに、起動する。
説明の便宜上、インスタンス実行サーバ1100にて稼働しているインスタンスを「稼働インスタンス」、インスタンス実行サーバ1100にて起動する対象であるインスタンスを「起動インスタンス」と表す。稼働インスタンスが稼働しているインスタンス実行サーバ1100を、「稼働インスタンスサーバ」と表す。起動インスタンスを起動するインスタンス実行サーバ1100を、「起動インスタンスサーバ」と表す。稼働インスタンスサーバと、起動インスタンスサーバとは、異なるインスタンス実行サーバ1100であってもよいし、同一のインスタンス実行サーバ1100であってもよい。
起動インスタンスは、たとえば、稼働インスタンスと同様の処理を実行する機能、及び、稼働インスタンスが有する機能を代替可能な処理を実行する機能を有する。インスタンス管理装置100は、起動インスタンスがアクセスするデータ、及び、プログラムを、インスタンスイメージ記憶部1200から起動インスタンスサーバに読み取る要求を、起動インスタンスサーバに送信する。起動インスタンスサーバは、たとえば、起動インスタンスがアクセスするデータ、及び、プログラムとして、稼働インスタンスサーバがアクセスしているデータ、及び、プログラムのうち、少なくとも一部のデータ、及び、プログラムをインスタンスイメージ記憶部1200から読み取る。この処理の結果、インスタンス管理装置100は、稼働インスタンスが有する機能と同様の機能を有する起動インスタンスを起動インスタンスサーバにて起動することが可能な状態を作成することができる。
インスタンス実行サーバ1100にて処理されるインスタンスは、たとえば、CPU、メモリ、通信ネットワーク等のコンピュータ資源を用いて、所定の処理を実行する計算主体を表す。該インスタンスは、たとえば、仮想マシン(Virtual_Machine、VM)、コンテナ、プロセス等を用いて実現することができる。起動インスタンスは、起動する場合にアクセスするメモリのイメージを読み取り、読み取ったイメージに従い起動する。イメージは、たとえば、起動インスタンスを起動する場合にアクセスするプログラム、または、データの一部を表し、該インスタンスを実行する場合に、該インスタンスを実際に処理するインスタンス実行サーバ1100に転送される。
インスタンスイメージ記憶部1200は、少なくとも、イメージを格納するのに要する記憶容量を有している。起動インスタンスがアクセスするメモリのイメージが、該起動インスタンスに関する処理を実際に処理する起動インスタンスサーバに格納されている場合には、起動インスタンスサーバは、起動インスタンスを短期間に起動することができる。該イメージは、たとえば、稼働インスタンス(たとえば、仮想マシン)を実行している期間中にアクセスするメモリのイメージ、または、該仮想マシンを制御しているカーネルに関する状態情報のうち、少なくとも一部の情報を含んでいる。以降、説明の便宜上、イメージは、メモリのイメージであるとするが、上記のように、仮想マシンを制御しているカーネルに関する状態を表す状態情報であってもよい。
稼働インスタンスに関する処理と同様の機能を表すイメージを起動インスタンスが参照することによって、該起動インスタンスが起動された直後であっても、ページミスが少なく、さらに、割り込み処理等のオーバーヘッドは低い。この結果、起動インスタンスが起動された直後であっても、該起動インスタンスは、短期間にて所定の処理を開始することができる。
インスタンス実行サーバ1100は、インスタンスを、複数実行してもよい。インスタンス実行サーバ1100は、稼働インスタンスに関する処理負荷を問い合わせる要求情報を入力するのに応じて、該稼働インスタンスに関する処理負荷を返答する。インスタンス実行サーバ1100は、さらに、インスタンスイメージ記憶部1200に格納されている、起動インスタンスのイメージを読み取る機能、及び、自サーバに格納されているイメージを消去する機能を有する。インスタンス実行サーバ1100は、起動インスタンスを起動する際にアクセスするイメージをインスタンスイメージ記憶部1200から読み取り、その後、読み取ったイメージに基づき起動インスタンスを起動する。起動インスタンスは、該イメージに含まれているデータ、及び、プログラムに従い、処理を開始する。また、インスタンス実行サーバ1100は、該イメージを参照することなく、所定の処理を含むファイルに従い起動インスタンスを起動してもよい。さらに、インスタンス実行サーバ1100は、自サーバが、起動インスタンスに関するイメージを有しているか否かを判定する機能を有する。
尚、本発明の各実施形態において、「消去」は、あるデータが格納されていた記憶領域に、異なるデータが格納可能な状態にする処理を表す。たとえば、「消去」は、該記憶領域に格納されているデータを無効にする処理であってもよいし、該記憶領域を指し示すポインタに無効なポインタを設定する処理であってもよい。また、「消去」は、たとえば、記憶領域に格納されているデータと異なるデータを、該記憶領域に格納する処理であってもよい。
インスタンス管理装置100に含まれている各部について説明する。第1の実施形態に係るインスタンス管理装置100は、インスタンス実行サーバ1100にて稼働している稼働インスタンスに関する処理負荷を監視する。インスタンス管理装置100は、インスタンス実行サーバ1100にて、稼働インスタンスと同様な機能を有している起動インスタンスを、該処理負荷が高い場合に起動する。
システム監視部110は、インスタンス実行サーバ1100にて稼働している稼働インスタンスに関する処理負荷を要求する要求情報を、インスタンス実行サーバ1100に送信する。システム監視部110は、該要求情報に応じて送信された処理負荷を受信し、受信した処理負荷を判定部120に対して出力する。システム監視部110は、所定のタイミングにて、稼働インスタンスに関する処理負荷を要求する要求情報を送信してもよい。稼働インスタンスの処理負荷は、たとえば、CPUの使用率、通信ネットワークの使用量、ディスクの使用量、メモリの使用量等の指標、または、これらの指標の組み合わせであってもよく、起動インスタンスを起動する必要性を表す指標であってもよい。
以降、説明の便宜上、該処理負荷は、CPUの使用率であるとする。
図1を参照すると、判定部120は、転送判定部121と、起動判定部122とを有する。
転送判定部121は、要求情報に応じてシステム監視部110が出力した稼働インスタンスの処理負荷(たとえば、CPUの使用率)が、所定の転送条件を満たしているか否かを判定する。所定の転送条件は、たとえば、「CPUの使用率が第1閾値以上である」なる条件である。所定の転送条件は、CPUの使用率をxと表す場合に、たとえば、「CPUの使用率が60%以上であるか(x≧0.6)」である。この場合に、第1閾値は、0.6である。
CPUの使用率が所定の転送条件を満たしている場合に、転送判定部121は、インスタンス実行サーバ1100がインスタンスイメージ記憶部1200に格納されているイメージを読み取るよう制御する(指示する)読取制御情報を、イメージ転送制御部130に対して出力する。CPUの使用率が所定の転送条件を満たしていない場合に、転送判定部121は、インスタンス実行サーバ1100が有しているイメージを消去するよう制御する消去制御情報を、イメージ消去制御部140に対して出力する。
起動判定部122は、システム監視部110が出力した稼働インスタンスの処理負荷(たとえば、CPUの使用率)が、所定の起動条件を満たしているか否かを判定する。所定の起動条件は、たとえば、「CPUの使用率が第2閾値以上である」なる条件である。所定の起動条件は、CPUの使用率をxと表す場合に、たとえば、「CPUの使用率が80%以上であるか(x≧0.8)」なる条件である。この場合に、第2閾値は、0.8であり、第1閾値よりも大きな値である。
CPUの使用率が所定の起動条件を満たした場合に、起動判定部122は、インスタンス実行サーバ1100が起動インスタンスを起動するよう制御する起動制御情報を、インスタンス起動制御部150に対して出力する。CPUの使用率が所定の起動条件を満たしていない場合に、起動判定部122は、該起動制御情報を、インスタンス起動制御部150に対して出力しない。
イメージ転送制御部130は、転送判定部121が出力した読取制御情報を入力した場合に、インスタンス実行サーバ1100がインスタンスイメージ記憶部1200に格納されているイメージを読み取るよう要求する要求情報をインスタンス実行サーバ1100に対して送信する。
イメージ転送制御部130は、起動インスタンスを起動する際にアクセスされる起動イメージが、インスタンス実行サーバ1100に格納されているのか否かを問い合わせる要求情報をインスタンス実行サーバ1100に送信する。インスタンス実行サーバ1100が起動インスタンスに関するイメージを有していない場合に、イメージ転送制御部130は、インスタンスイメージ記憶部1200から起動イメージを読み取り、読み取った起動イメージを保持するよう要求する要求情報を、インスタンス実行サーバ1100に送信する。
イメージ消去制御部140は、転送判定部121が出力した消去制御情報を入力した場合に、インスタンス実行サーバ1100が有しているイメージを消去するよう要求する要求情報を、インスタンス実行サーバ1100に送信する。
インスタンス起動制御部150は、起動判定部122が出力した起動制御情報を入力した場合に、さらに、起動インスタンスに関する処理を開始するよう要求する要求情報を、インスタンス実行サーバ1100に送信する。
次に、本発明の第1の実施形態に係るインスタンス管理装置100における処理について説明する。図2は、第1の実施形態に係るインスタンス管理装置100における処理の流れを示すフローチャートである。説明の便宜上、処理負荷は、CPUの使用率であるとする。
システム監視部110は、インスタンス実行サーバ1100において稼働インスタンスに関するCPUの使用率を測定し、測定したCPUの使用率を表す処理負荷情報を作成する(ステップS110)。システム監視部110は、作成した処理負荷情報を判定部120に対して出力する。
判定部120において、転送判定部121は、システム監視部110が出力した処理負荷情報を入力し、入力した処理負荷情報が表すCPUの使用率が所定の転送条件を満たしているか否かを判定する(ステップS120)。CPUの使用率が所定の転送条件を満たしている場合に(ステップS120にてYES)、転送判定部121は、インスタンスイメージ記憶部1200に格納されている起動イメージを読み取るよう制御する読取制御情報をイメージ転送制御部130に対して出力する。イメージ転送制御部130は、転送判定部121が出力した読取制御情報を入力し、インスタンスイメージ記憶部1200に格納されている起動イメージを読み取るよう制御する処理を開始する(ステップS130)。イメージ転送制御部130の処理については、図3を参照しながら後述する。CPUの使用率が所定の転送条件を満たしていない場合に(ステップS120にてNO)、転送判定部121は、インスタンス実行サーバ1100に格納されているイメージを消去するよう制御する消去制御情報を、イメージ消去制御部140に対して出力する(ステップS140)。イメージ消去制御部140における処理については、図5を参照しながら後述する。
判定部120は、イメージ転送制御部130から処理が完了したことを表す完了情報を入力した場合に起動判定部122を起動する。起動判定部122は、システム監視部110が送信したCPUの使用率を受信し、受信したCPUの使用率が所定の起動条件を満たしているか否かを判定する(ステップS150)。受信したCPUの使用率が所定の起動条件を満たした場合に(ステップS150にてYES)、起動判定部122は、起動インスタンスサーバが起動インスタンスを起動するよう制御する起動制御情報を、インスタンス起動制御部150に対して出力する(ステップS160)。インスタンス起動制御部150は、該起動制御情報を入力するのに応じて、起動インスタンスサーバが起動インスタンスを起動するよう制御する(指示する)。インスタンス起動制御部150の処理については、図4を参照しながら後述する。受信したCPUの使用率が所定の起動条件を満たしていない場合に(ステップS150にてNO)、インスタンス管理装置100は、ステップS160に示された処理を実行しない。
イメージ転送制御部130において実行されるステップS130について、図3を参照しながら詳細に説明する。図3は、第1の実施形態に係るイメージ転送制御部130における処理の流れを示すフローチャートである。イメージ転送制御部130は、判定部120から完了情報を入力した場合に、起動インスタンスに関する起動イメージをインスタンス実行サーバ1100が有している否かを問い合わせる要求情報を、起動インスタンスサーバに送信する。
起動インスタンスサーバは、イメージ転送制御部130が送信した要求情報を受信し、受信した要求情報に基づき、起動イメージを有しているか否かを判定する(ステップS131)。起動インスタンスサーバは、起動イメージを有しているか否かを表す所有情報を作成し、作成した所有情報をイメージ転送制御部130に対して送信する。
イメージ転送制御部130は、起動インスタンスサーバが送信した所有情報(すなわち、起動イメージを有しているか否かを表す情報)を受信する。起動インスタンスサーバがイメージを有していない場合に(ステップS131にてNO)、イメージ転送制御部130は、起動インスタンスサーバに対して、起動インスタンスを起動する場合に参照するイメージを、インスタンスイメージ記憶部1200から読み取るように要求する要求情報を送信する(ステップS132)。インスタンスイメージ記憶部1200からイメージを転送する処理の後に、イメージ転送制御部130は、処理が完了したことを表す完了情報を判定部120に対して出力する。インスタンス実行サーバ1100がイメージを有している場合に(ステップS131にてYES)、イメージ転送制御部130は、処理が完了を表す完了情報を判定部120に対して出力する。
図5を参照しながら、イメージ消去制御部140において実行されるステップS140に示された処理について、詳細に説明する。図5は、第1の実施形態に係るイメージ消去制御部140における処理の流れを示すフローチャートである。イメージ消去制御部140は、判定部120が送信した完了情報に基づき、起動インスタンスが起動する場合に参照する起動イメージを、インスタンス実行サーバ1100が有しているか否かを問い合わせる要求情報を、インスタンス実行サーバ1100に送信する。
インスタンス実行サーバ1100は、イメージ消去制御部140が送信した要求情報を受信し、受信した要求情報に基づき、起動イメージを有しているか否かを判定する(ステップS141)。インスタンス実行サーバ1100は、起動イメージを有しているか否かを表す所有情報を作成し、作成した所有情報をイメージ消去制御部140に送信する。
イメージ消去制御部140は、インスタンス実行サーバ1100が送信した所有情報(すなわち、起動イメージを有しているか否かを表す情報)を受信する。インスタンス実行サーバ1100がイメージを有している場合に(ステップS141にてYES)、イメージ消去制御部140は、起動インスタンスが有しているイメージを消去するよう要求する要求情報を、起動インスタンスサーバに対して送信する(ステップS142)。起動インスタンスサーバが、該要求情報に応じて該イメージを消去した後に、インスタンス管理装置100は、処理を完了する。起動インスタンスが起動する場合に読み取る起動イメージをインスタンス実行サーバ1100が有していない場合に(ステップS141にてNO)、インスタンス管理装置100は、起動インスタンスサーバに対して該要求情報を送信しない。
図4を参照しながら、インスタンス起動制御部150において実行されるステップS160について、詳細に説明する。図4は、第1の実施形態に係るインスタンス起動制御部150における処理の流れを示すフローチャートである。インスタンス起動制御部150は、判定部120が送信した起動制御情報を入力した場合に、起動インスタンスが起動する場合に読み取る起動イメージを起動インスタンスサーバが有しているか否かを起動インスタンスサーバに対して問い合わせる要求情報を出力する。
起動インスタンスサーバは、該要求情報を入力し、入力した要求情報に基づき、起動イメージを有しているか否かを判定する(ステップS161)。起動インスタンスサーバは、起動イメージを有しているか否かを表す所有情報を作成し、作成した所有情報をインスタンス起動制御部150に対して出力する。
インスタンス起動制御部150は、インスタンス実行サーバ1100が入力した所有情報(すなわち、起動イメージを有しているか否かを表す情報)を受信する。インスタンス実行サーバ1100が該起動イメージを有している場合に(ステップS161にてYES)、インスタンス起動制御部150は、起動インスタンスが起動する場合に参照する起動イメージに関する起動インスタンスを起動するように要求する要求情報を、インスタンス実行サーバ1100に送信する(ステップS162)。インスタンス実行サーバ1100が該イメージを有していない場合に(ステップS161にてNO)、インスタンス起動制御部150は、イメージを参照することなく起動インスタンスを起動するように要求する要求情報を起動インスタンスサーバに送信する(ステップS163)。
図2においては、ステップS130の次にステップS150が実行される処理が示されているが、必ずしも、図2に例示された処理である必要はない。たとえば、ステップS110の後に、処理負荷情報が表すCPUの使用率が、所定の起動条件、または、所定の転送条件を満たしているのかを判定する処理であってもよい。
次に、本発明の第1の実施形態に係るインスタンス管理装置100に関する効果について説明する。
第1の実施形態に係るインスタンス管理装置100によれば、所定の処理を実行するインスタンスを短期間に起動することができる。この理由は、インスタンス管理装置100が、イメージを転送する制御を実行したのちに、該イメージに関するインスタンスを起動することを決定するからである。この理由について、詳細に説明する。
インスタンス管理装置100は、稼働インスタンスサーバの処理負荷が所定の転送条件を満たした場合に、稼働インスタンスに関する機能と同様の機能を含むイメージを起動インスタンスサーバに転送するよう制御する(指示する)。インスタンス管理装置100は、該処理負荷が、さらに、第1閾値よりも大きな第2閾値以上となった場合に、起動インスタンスサーバに、該イメージに関する起動インスタンスを起動するよう制御する。したがって、インスタンス管理装置100がイメージを転送する制御を実行する処理負荷と、イメージに関するインスタンスを起動する制御を実行する処理負荷とは異なっている。したがって、たとえば、稼働インスタンスサーバの処理負荷が上昇している場合に、該処理負荷が第1閾値以上となるタイミングは、該処理負荷が第2閾値以上となるタイミングよりも先である。この場合に、インスタンス管理装置100は、該処理負荷に基づき、イメージに関する転送制御処理を、該イメージに関するインスタンスの起動制御処理よりも先に実行する。したがって、インスタンス管理装置100が起動インスタンスを起動する制御を実行する場合には、あらかじめ、少なくとも一部のイメージは、起動インスタンスサーバに転送されている。この結果、第1の実施形態に係るインスタンス管理装置100によれば、所定の処理を実行するインスタンスを短期間に起動することができる。
また、図2のステップS130の後に、ステップS150を実行する処理によれば、たとえば、処理負荷が短期間に増大した場合に、所定の処理を実行するインスタンスを、さらに短期間に起動することができる。この理由は、イメージを転送するよう制御する制御処理が実行された後に、該イメージに関するインスタンスを起動するよう制御するか否かを、インスタンス管理装置100が判定するからである。処理負荷が短期間に第2閾値以上になるまで増大した場合に、インスタンス管理装置100が、転送に関する制御処理の後に、必ず、起動処理を実行するので、さらに、短期間にインスタンスを起動することができる。
さらに、ステップS140によれば、起動インスタンスサーバにおいてアクセスされない可能性が高いデータを起動インスタンスサーバから削減することができる。この理由は、稼働インスタンスに関する処理負荷が所定の転送条件を満たしていない場合に、該稼働インスタンスに関する処理を実行する起動インスタンスを起動する可能性が低くなるからである。この場合に、起動インスタンスサーバにおいては、稼働インスタンスに関するイメージに関するインスタンスが起動される可能性は低いので、起動インスタンスサーバが該イメージを有したとしても、該起動インスタンスサーバが有するイメージは、参照されない可能性が高いイメージである。したがって、処理負荷が所定の転送条件を満たしていない場合に、インスタンス管理装置100が該イメージを消去するよう起動インスタンスサーバを制御することによって、起動インスタンスサーバにおいて該イメージが格納されている領域はなくなる。
<第2の実施形態>
次に、上述した第1の実施形態を基本とする本発明の第2の実施形態について説明する。
以降の説明においては、本実施形態に係る特徴的な部分を中心に説明すると共に、上述した第1の実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明を省略する。
図6を参照しながら、本発明の第2の実施形態に係るインスタンス管理装置200が有する構成について詳細に説明する。図6は、本発明の第2の実施形態に係るインスタンス管理装置200が有する構成を示すブロック図である。
第2の実施形態に係るインスタンス管理装置200は、システム監視部110と、判定部220と、イメージ転送制御部130と、イメージ消去制御部140と、インスタンス起動制御部150とを有する。
判定部220は、転送判定部221と、消去判定部222と、起動判定部223とを有する。判定部220は、起動イメージを起動インスタンスに転送する機能、インスタンスイメージ記憶部1200に格納されているイメージを消去する機能、及び、インスタンスを起動する機能を有する。
インスタンス管理装置200は、インスタンス実行サーバ1100を制御することができる。すなわち、インスタンス管理装置200は、インスタンス実行サーバ1100に処理を指示することができる。インスタンス実行サーバ1100は、たとえば、インスタンスイメージ記憶部1200に格納されているプログラムを読み取り、読み取ったプログラムを実行することができる。
次に、図7を参照しながら、第2の実施形態に係るインスタンス管理装置200における処理について説明する。図7は、第2の実施形態に係るインスタンス管理装置200における処理の流れを示すフローチャートである。
システム監視部110は、たとえば、所定のタイミングにて、インスタンス実行サーバ1100が実行している稼働インスタンスに関するCPUの使用率を測定し、測定したCPUの使用率を表す処理負荷情報を判定部220に対して出力する。
判定部220において、転送判定部221は、システム監視部110が出力した処理負荷情報を入力し(ステップS210)、入力した処理負荷情報が表すCPUの使用率が、所定の転送条件を満たしたか否かを判定する(ステップS220)。たとえば、CPUの使用率をxと表す場合に、所定の転送条件は、「CPUの使用率が60%以上(x≧0.6(すなわち、第1閾値の一例))である」なる条件である。CPUの使用率が所定の転送条件を満たした場合に(ステップS220にてYES)、転送判定部221は、起動イメージをインスタンスイメージ記憶部1200から読み取るよう制御する読取制御情報をイメージ転送制御部130に対して出力する(ステップS230)。イメージ転送制御部130は、転送判定部221が出力した読取制御情報を入力し、入力した読取制御情報に従い処理を実行する。
判定部220において、起動判定部223は、入力した処理負荷情報が表すCPUの使用率が所定の起動条件を満たしたか否かを判定する(ステップS270)。たとえば、CPUの使用率をxと表す場合に、所定の起動条件は、「CPUの使用率が80%以上(x≧0.8(すなわち、第2閾値の一例))である」なる条件である。CPUの使用率が所定の起動条件を満たした場合に(ステップS270にてYES)、起動判定部223は、起動インスタンスを起動するよう制御する起動制御情報をインスタンス起動制御部150に対して出力する。インスタンス起動制御部150は、起動判定部223が出力した起動制御情報を入力し、入力した起動制御情報に応じた処理を実行する(ステップS280)。CPUの使用率が所定の起動条件を満たしていない場合に(ステップS270にてNO)、インスタンス管理装置200は、ステップS280に示された処理を実行しない。
CPUの使用率が所定の転送条件を満たしていない場合に(ステップS220にてNO)、消去判定部222は、システム監視部110が要求情報に応じて送信した処理負荷情報を入力し、入力した処理負荷情報が表すCPUの使用率が、所定の消去条件を満たしたか否かを判定する(ステップS250)。所定の消去条件は、「CPUの使用率が第3閾値未満である」なる条件である。たとえば、CPUの使用率をxと表す場合に、所定の消去条件は、「CPUの使用率が50%未満(x<0.5)である」なる条件である。この場合に、第3閾値は、0.5である。この場合、第3閾値は、第1閾値よりも小さい。
CPUの使用率が所定の消去条件を満たしている場合に(ステップS250にてYES)、消去判定部222は、起動インスタンスサーバが有しているイメージを消去するよう制御する消去制御情報を、イメージ消去制御部140に対して出力する(ステップS260)。
次に、本発明の第2の実施形態に係るインスタンス管理装置200に関する効果について説明する。
第2の実施形態に係るインスタンス管理装置200によれば、所定の処理を実行するインスタンスを短期間に起動することができる。この理由は、第2の実施形態に係るインスタンス管理装置200が、第1の実施形態に係るインスタンス管理装置100が有する構成を含むからである。
さらに、第2の実施形態に係るインスタンス管理装置200によれば、起動インスタンスサーバが有するデータのうち、参照されない可能性が高いデータを削減することができる。この理由は、稼働インスタンスに関する処理負荷が所定の消去条件を満たした場合に、該稼働インスタンスに関する処理を実行する起動インスタンスを起動する可能性が低くなるからである。したがって、処理負荷が所定の消去条件を満たした場合に、インスタンス管理装置200が該イメージを消去するよう起動インスタンスサーバを制御することによって、該イメージが格納されている領域はなくなる。
また、第2の実施形態に係るインスタンス管理装置200によれば、第1の実施形態に係るインスタンス管理装置100に比べ、さらに、処理効率が向上する。この理由は、所定の転送条件に関する閾値(すなわち、第1閾値)が、所定の消去条件に関する閾値(すなわち、第3閾値)よりも大きな値であるので、処理負荷が所定の転送条件に関する閾値(すなわち、第1閾値)の付近にて上下に変動する場合であっても、インスタンス管理装置200が、イメージを転送するよう制御する処理と、該イメージを消去するよう制御する処理とを交互に実行しないからである。
<第3の実施形態>
次に、上述した第1の実施形態を基本とする本発明の第3の実施形態について説明する。
以降の説明においては、本実施形態に係る特徴的な部分を中心に説明すると共に、上述した第1の実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明を省略する。
図8を参照しながら、本発明の第3の実施形態に係るインスタンス管理装置300が有する構成について説明する。図8は、本発明の第3の実施形態に係るインスタンス管理装置300が有する構成を示すブロック図である。
第3の実施形態に係るインスタンス管理装置300は、システム監視部110と、判定部320と、イメージ転送制御部330と、イメージ消去制御部340と、インスタンス起動制御部350とを有する。判定部320は、転送イメージ決定部321と、起動判定部322とを有する。転送イメージ決定部321は、算出するイメージ転送量に基づき、インスタンス実行サーバ3100に対してイメージを転送する処理を制御する機能と、インスタンス実行サーバ3100が有するイメージを消去する処理を制御する機能とを有する。
インスタンス管理装置300は、インスタンス実行サーバ1100を制御することができる。すなわち、インスタンス管理装置300は、インスタンス実行サーバ1100に処理を指示することができる。インスタンス実行サーバ1100は、たとえば、インスタンスイメージ記憶部1200に格納されているプログラムを読み取り、読み取ったプログラムを実行することができる。
まず、イメージを読み取る処理を制御する際に処理の基本である、あるインスタンスに関する部分イメージについて説明する。あるインスタンスに関するイメージVに対して、部分イメージを、イメージVの部分集合V1、V2、・・・、Vnのいずれかとして定義する。ただし、ViはVi−1の部分集合(ただし、2≦i≦n)であるとする。すなわち、V1⊂V2⊂・・・⊂Vnであるとする。さらに、Vn=Vであるとする。
イメージVが、仮想マシンによってアクセスされるメモリのイメージであるとする。イメージVの容量を|V|とする場合に、Viの容量は、たとえば、(|V|×i÷N)として設定される。また、Viは、イメージVに含まれているページのうち、アクセスする頻度が高いページを含むように定義することによって実現することができる。たとえば、ページVが、P1、P2,・・・、PMから構成され、さらに、Pjに対するアクセスする頻度がPj−1(ただし、2≦j≦M)に対するアクセスする頻度よりも高い場合に、V1={P1}、V2={P1,P2}、V3={P1,P2,P3}、・・・として実現することができる。
インスタンス実行サーバ3100は、上述したような部分イメージに関するインスタンスを起動する機能を有する。また、本実施形態に係るインスタンス実行サーバ3100は、インスタンス実行サーバ1100から要求情報を受信するのに応じて、インスタンスイメージ記憶部3200に格納されている部分イメージを読み取る機能を有する。たとえば、インスタンス実行サーバ3100は、自装置に格納されていない部分イメージをインスタンスイメージ記憶部3200から読み取った後に、読み取った部分イメージに関する起動インスタンスを起動する。
図10を参照しながら、インスタンス実行サーバ3100が部分イメージを選択する場合に参照する転送イメージ情報について説明する。図10は、転送イメージ情報の一例を概念的に表す図である。転送イメージ情報は、処理負荷に関する負荷条件と、処理負荷が該負荷条件を満たした場合に読み取る領域を表す領域識別子とが関連付けされた情報である。図10に例示された転送イメージ情報において、たとえば、処理負荷条件「U1<U≦U2」と、領域識別子「V2」とが関連付けされている。これは、処理負荷Uが、U1よりも大きく、かつ、U2以下である場合に、転送イメージ決定部321が、領域識別子「V2」を選択することを表す。
次に、図9を参照しながら、第3の実施形態に係るインスタンス管理装置300における処理について説明する。図9は、第3の実施形態に係るインスタンス管理装置300における処理の流れを示すフローチャートである。
システム監視部110は、稼働インスタンスサーバが実行している稼働インスタンスに関する処理負荷を測定し、測定した処理負荷を表す処理負荷情報を判定部320に対して出力する。
判定部320において、転送イメージ決定部321は、システム監視部110が要求情報に応じて送信した処理負荷情報を入力する(ステップS310)。転送イメージ決定部321は、入力した処理負荷情報が表す処理負荷に基づき、インスタンス実行サーバ3100に転送する領域識別子を選択する(ステップS320)。
ステップS320にて示された処理について説明する。転送イメージ決定部321は、システム監視部110が送信した処理負荷情報を受信する。次に、転送イメージ決定部321は、受信した処理負荷情報が表す処理負荷が、転送イメージ情報(図10に例示)に含まれている処理負荷条件のうち、いずれの処理負荷条件を満たしているのかを特定する。転送イメージ決定部321は、特定した処理負荷条件に関連付けされた領域識別子を、転送イメージ情報に基づき特定し、特定した領域識別子を判定部320に格納する。転送イメージ決定部321は、システム監視部110が処理負荷情報を出力するのに応じて、上述した処理を実行する。この場合に、転送イメージ決定部321は、特定された領域識別子を、少なくとも、システム監視部110が出力した直近2回分に関して記憶しているとする。イメージ転送制御部330と、イメージ消去制御部340と、インスタンス起動制御部350とは、転送イメージ決定部321が記憶している直近2回分の領域識別子を参照することができるとする。
以降、説明の便宜上、前回特定された領域識別子を「前回領域識別子」と表し、今回特定された領域識別子を「今回領域識別子」と表す。前回領域識別子が表す部分イメージを「前回部分イメージ」と表し、今回領域識別子が表す部分イメージを「今回部分イメージ」と表す。
転送イメージ決定部321は、前回部分イメージの容量と、今回部分イメージの容量とを比較する(ステップS330)。今回部分イメージの容量が前回部分イメージの容量より大きい場合に(ステップS330にてYES)、転送イメージ決定部321は、今回部分イメージと、前回部分イメージとの差分をインスタンス実行サーバ3100に格納するよう制御する読取制御情報をイメージ転送制御部330に対して出力する(ステップS340)。今回部分イメージの容量が前回部分イメージの容量以下である場合に(ステップS330にてNO)、転送イメージ決定部321は、今回部分イメージと、前回部分イメージとの差分をインスタンス実行サーバ3100から消去するよう制御する消去制御情報をイメージ消去制御部340に対して出力する(ステップS350)。
イメージ転送制御部330は、転送イメージ決定部321が出力した読取制御情報を入力し、入力した読取制御情報に従い、判定部320に格納されている今回部分イメージと、前回部分イメージとを読み取る。今回領域識別子が前回領域識別子を含んでいるので、イメージ転送制御部330は、今回部分イメージと前回部分イメージとの差分を表すイメージをインスタンスイメージ記憶部3200から読み取るよう要求する要求情報を、起動インスタンスサーバに対して送信する。その後、イメージ転送制御部330は、処理が完了したことを表す完了情報を判定部320に対して出力する。
イメージ消去制御部340は、転送イメージ決定部321が出力した消去制御情報を入力し、入力した消去制御情報に従い、判定部320に格納されている前回領域識別子と、今回領域識別子とを読み取る。前回領域識別子が今回領域識別子を含んでいるので、イメージ転送制御部330は、今回部分イメージと前回部分イメージとの差分を表すイメージを消去するよう要求する消去制御情報を、起動インスタンスサーバに対して送信する(ステップS350)。起動インスタンスサーバが該消去制御情報に従い差分を消去した後に、イメージ消去制御部340は、処理が完了したことを表す完了情報を判定部320に対して出力する。
判定部320は、イメージ転送制御部330が出力した完了情報、または、イメージ消去制御部340が出力した完了情報を入力する。その後、起動判定部322は、システム監視部110が要求情報に応じて送信した処理負荷情報を入力し、入力した処理負荷情報が表す処理負荷が所定の起動条件を満たしたか否かを判定する(ステップS360)。CPUの使用率が該所定の起動条件を満たした場合に(ステップS360にてYES)、起動判定部322は、起動インスタンスを起動するよう制御することを要求する起動制御情報をインスタンス起動制御部350に対して出力する(ステップS370)。
インスタンス起動制御部350は、起動判定部322が出力した起動制御情報を入力し、入力した起動制御情報に従い、インスタンス実行サーバ3100が有する部分イメージに従い、起動インスタンスを起動するよう要求する要求情報をインスタンス実行サーバ3100に対して出力する。
尚、図10に例示された転送イメージ情報において、領域識別子が表す記憶領域は、V1⊂V2⊂・・・⊂Vnなる包含関係を満たしていたが、必ずしも、該包含関係を満たしている必要はなく、単に、V1、V2、・・・、Vnの順にサイズが増える記憶領域であってもよい。
次に、本発明の第3の実施形態に係るインスタンス管理装置300に関する効果について説明する。
第3の実施形態に係るインスタンス管理装置300によれば、所定の処理を実行するインスタンスを短期間に起動することができる。この理由は、第3の実施形態に係るインスタンス管理装置300が、第1の実施形態に係るインスタンス管理装置100が有する構成を含むからである。
また、第3の実施形態に係るインスタンス管理装置300によれば、第1の実施形態に係るインスタンス管理装置100に比べ、さらに、処理効率が向上する。この理由は、インスタンス管理装置300が、稼働インスタンスに関する処理負荷に応じて、起動インスタンスに関するイメージを段階的に構成するからである。
さらに、包含関係を有する転送領域を処理するインスタンス管理装置300によれば、より一層処理効率が向上する。この理由は、インスタンス管理装置300が、上述した差分を算出し、稼働インスタンスに関する処理負荷に応じて、該差分に関して処理を実行するからである。
<第4の実施形態>
次に、本発明の第4の実施形態について説明する。
以降の説明においては、本実施形態に係る特徴的な部分を中心に説明すると共に、上述した各実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明を省略する。
図11を参照しながら、本発明の第4の実施形態に係るインスタンス起動装置400が有する構成について説明する。図11は、本発明の第4の実施形態に係るインスタンス起動装置400が有する構成を示すブロック図である。
第4の実施形態に係るインスタンス起動装置400は、イメージ転送制御部410と、インスタンス起動制御部420とを有する。
インスタンス起動装置400は、インスタンス実行サーバ1100を制御することができる。すなわち、インスタンス管理装置400は、インスタンス実行サーバ1100に処理を指示することができる。インスタンス実行サーバ1100は、たとえば、インスタンスイメージ記憶部1200に格納されているプログラムを読み取り、読み取ったプログラムを実行することができる。
インスタンス起動装置400は、たとえば、所定のタイミングに応じて、または、所定の処理が実行されているインスタンス実行サーバ1100の処理負荷が所定の閾値よりも高くなった場合に、処理を開始する。処理負荷は、たとえば、CPUの使用率、通信ネットワークの使用量、ディスクの使用量、メモリの使用量等である。
イメージ転送制御部410は、該処理負荷が第1閾値以上になったか否かを判定する。該処理負荷が第1閾値以上になった場合に、インスタンス起動装置400は、所定の処理(すなわち、上述した稼働インスタンスが実現している機能)を表すイメージを、当該イメージに基づき起動されるインスタンス(すなわち、上述した起動インスタンス)を管理している起動インスタンスサーバに読み取るよう制御する。イメージは、たとえば、稼働インスタンスが実行されている期間中にアクセスするメモリのイメージ、または、該仮想マシンを制御しているカーネルに関する状態情報のうち、少なくとも一部の情報を含んでいる情報を表す。
起動インスタンスサーバは、該稼働インスタンスが実現している機能と同様の機能を含むイメージを、インスタンスイメージ記憶部1200から読み取る。たとえば、該イメージは、処理負荷が第1閾値以上になるのに応じて作成されてもよい。
インスタンス起動制御部420は、該処理負荷が、第1閾値よりも大きな第2閾値以上となったか否かを判定する。該処理負荷が第2閾値以上となった場合に、インスタンス起動制御部420は、作成したイメージに関するインスタンスを起動するよう起動インスタンスサーバを制御する。
イメージ転送制御部410は、たとえば、判定部120(図1)、イメージ転送制御部130(図1、図6)、判定部220(図6)、判定部320(図8)、または、イメージ転送制御部330(図8)が有する機能によって実現することができる。インスタンス起動制御部420は、たとえば、判定部120(図1)、インスタンス起動制御部150(図1)、判定部220(図6)、判定部320(図8)、または、インスタンス起動制御部350(図8)が有する機能によって実現することができる。したがって、インスタンス起動装置400は、インスタンス管理装置100(図1)、インスタンス管理装置200(図6)、または、インスタンス管理装置300(図8)が有する機能によって実現することができる。
次に、第4の実施形態に係るインスタンス起動装置400に関する効果について説明する。
第4の実施形態に係るインスタンス起動装置400によれば、所定の処理を実行するインスタンスを短期間に起動することができる。この理由は、インスタンス起動装置400が、イメージ読み取ったのちに、読み取ったイメージに関するインスタンスを起動することを決定するからである。この理由について、詳細に説明する。
インスタンス起動装置400は、稼働インスタンスサーバの処理負荷が第1閾値以上となった場合に、稼働インスタンスによって実現されている機能と同様の機能を含むイメージを、インスタンスイメージ記憶部1200から起動インスタンスサーバに転送するよう制御する。インスタンス起動装置400は、該処理負荷が、さらに、第1閾値よりも大きな第2閾値以上となった場合に、起動インスタンスサーバに、該イメージに関するインスタンスを起動するよう制御する。したがって、インスタンス起動装置400がイメージを転送する制御を実行する処理負荷と、イメージに関するインスタンスを起動する制御を実行する処理負荷とは異なっている。たとえば、稼働インスタンスサーバの処理負荷が上昇している場合に、該処理負荷が第1閾値以上となるタイミングは、該処理負荷が第2閾値以上となるタイミングよりも先である。この場合に、インスタンス起動装置400は、該処理負荷に基づき、イメージの転送制御処理を、該イメージに関するインスタンスの起動制御処理よりも先に実行する。したがって、インスタンス起動装置400が起動インスタンスを起動する制御を実行する場合には、あらかじめ、少なくとも一部のイメージは、起動インスタンスサーバに転送されている。この結果、本実施形態に係るインスタンス起動装置400によれば、所定の処理を実行するインスタンスを短期間に起動することができる。
(ハードウェア構成例)
上述した本発明の第1の実施形態乃至第3の実施形態に係るインスタンス管理装置、または、第4の実施形態に係るインスタンス起動装置を、1つの計算処理装置(情報処理装置、コンピュータ)を用いて実現するハードウェア資源の構成例について説明する。但し、係る*装置は、物理的または機能的に少なくとも2つの計算処理装置を用いて実現してもよい。また、係るインスタンス管理装置、または、係るインスタンス起動装置は、専用の装置として実現してもよい。
図12は、第1の実施形態乃至第3の実施形態に係るインスタンス管理装置、または、第4の実施形態に係るインスタンス起動装置を実現可能な計算処理装置のハードウェア構成例を概略的に示すブロック図である。計算処理装置20は、中央処理演算装置(Central_Processing_Unit、以降「CPU」と表す)21、メモリ22、ディスク23、不揮発性記録媒体24、通信インターフェース(以降、「通信IF」と表す)27、及び、ディスプレー28を有する。計算処理装置20は、入力装置25、出力装置26に接続可能であってもよい。計算処理装置20は、通信IF27を介して、他の計算処理装置、及び、通信装置と情報を送受信することができる。
不揮発性記録媒体24は、コンピュータが読み取り可能な、たとえば、コンパクトディスク(Compact_Disc)、デジタルバーサタイルディスク(Digital_Versatile_Disc)である。また、不揮発性記録媒体24は、ユニバーサルシリアルバスメモリ(USBメモリ)、ソリッドステートドライブ(Solid_State_Drive)等であってもよい。不揮発性記録媒体24は、電源を供給しなくても係るプログラムを保持し、持ち運びを可能にする。不揮発性記録媒体24は、上述した媒体に限定されない。また、不揮発性記録媒体24の代わりに、通信IF27、及び、通信ネットワークを介して係るプログラムを持ち運びしてもよい。
すなわち、CPU21は、ディスク23に格納されているソフトウェア・プログラム(コンピュータ・プログラム:以下、単に「プログラム」と称する)を、実行する際にメモリ22にコピーし、演算処理を実行する。CPU21は、プログラム実行に必要なデータをメモリ22から読み取る。表示が必要な場合には、CPU21は、ディスプレー28に出力結果を表示する。外部への出力が必要な場合には、CPU21は、出力装置26に出力結果を出力する。外部からプログラムを入力する場合、CPU21は、入力装置25からプログラムを読み取る。CPU21は、上述した図1、図6、または、図8に示す各部が表す機能(処理)に対応するところのメモリ22にあるインスタンス管理プログラム(図2乃至図5、図7、または、図9)を解釈し実行する。または、CPU21は、上述した図11に示す各部が表す機能(処理)に対応するところのメモリ22にあるインスタンス起動プログラムを解釈し実行する。または、CPU21は、上述した本発明の各実施形態において説明した処理を順次実行する。
すなわち、このような場合、本発明は、係るインスタンス管理プログラム、または、係るインスタンス起動プログラムによっても成し得ると捉えることができる。さらに、係るインスタンス管理プログラム、または、係るインスタンス起動プログラムが記録されたコンピュータが読み取り可能な不揮発性の記録媒体によっても、本発明は成し得ると捉えることができる。
以上、上述した実施形態を模範的な例として本発明を説明した。しかし、本発明は、上述した実施形態には限定されない。すなわち、本発明は、本発明のスコープ内において、当業者が理解し得る様々な態様を適用することができる。
100 インスタンス管理装置
110 システム監視部
120 判定部
121 転送判定部
122 起動判定部
130 イメージ転送制御部
140 イメージ消去制御部
150 インスタンス起動制御部
1100 インスタンス実行サーバ
1200 インスタンスイメージ記憶部
200 インスタンス管理装置
220 判定部
221 転送判定部
222 消去判定部
223 起動判定部
300 インスタンス管理装置
320 判定部
321 転送イメージ決定部
322 起動判定部
330 イメージ転送制御部
340 イメージ消去制御部
350 インスタンス起動制御部
3100 インスタンス実行サーバ
3200 インスタンスイメージ記憶部
400 インスタンス起動装置
410 イメージ転送制御部
420 インスタンス起動制御部
20 計算処理装置
21 CPU
22 メモリ
23 ディスク
24 不揮発性記録媒体
25 入力装置
26 出力装置
27 通信IF
28 ディスプレー

Claims (10)

  1. 第1インスタンスに関する処理の処理負荷が第1閾値以上となった場合に、前記第1インスタンスに関するイメージを、第2インスタンスを管理している情報処理装置に転送するよう制御するイメージ制御手段と、
    前記処理負荷が、前記第1閾値よりも大きな第2閾値以上となった場合に、前記イメージに基づき前記第2インスタンスを起動するよう、前記情報処理装置を制御する起動制御手段と
    を備えるインスタンス起動装置。
  2. 前記起動制御手段は、前記イメージ制御手段によって前記イメージを転送するよう制御された後に、前記処理負荷が前記第2閾値以上となったか否かを判定する
    請求項1に記載のインスタンス起動装置。
  3. 前記イメージ制御手段は、前記処理負荷が前記第1閾値未満となった場合に、前記イメージを無効にするよう前記情報処理装置を制御する
    請求項1、または、請求項2に記載のインスタンス起動装置。
  4. 前記処理負荷が前記第1閾値よりも小さな第3閾値未満となった場合に、前記イメージを無効にするよう前記情報処理装置を制御する
    請求項1、または、請求項2に記載のインスタンス起動装置。
  5. 前記イメージ制御手段は、複数の記憶領域を含むメモリのうち、前記処理負荷が高いほど、多くの記憶領域に格納されているデータのイメージを読み取るよう前記情報処理装置を制御する
    請求項1乃至請求項4のいずれかに記載のインスタンス起動装置。
  6. 前記イメージ制御手段は、アクセスされる頻度が多い前記記憶領域から順に、前記処理負荷に応じて前記記憶領域を選択し、選択した前記記憶領域に格納されているデータのイメージを転送するよう制御する
    請求項5に記載のインスタンス起動装置。
  7. 前記記憶領域を識別可能な領域識別子が格納されている記憶手段
    をさらに備え、
    前記イメージ制御手段は、前記記憶手段に格納されている前記領域識別子が表す記憶領域の第1サイズが、前記処理負荷に応じて選択された記憶領域の第2サイズよりも大きい場合に、2つの当該記憶領域の差分を無効にするよう制御し、前記第1サイズが前記第2サイズよりも小さな場合に、前記差分を前記イメージに追加する
    請求項5または請求項6に記載のインスタンス起動装置。
  8. 第1インスタンスに関する処理の処理負荷が第1閾値以上となった場合に、前記第1インスタンスに関するイメージを、第2インスタンスを管理している情報処理装置に転送するよう制御し、
    前記処理負荷が、前記第1閾値よりも大きな第2閾値以上となった場合に、前記イメージに基づき前記第2インスタンスを起動するよう、前記情報処理装置を制御する
    インスタンス起動方法。
  9. 第1インスタンスに関する処理の処理負荷が第1閾値以上となった場合に、前記第1インスタンスに関するイメージを、第2インスタンスを管理している情報処理装置に転送するよう制御するイメージ制御機能と、
    前記処理負荷が、前記第1閾値よりも大きな第2閾値以上となった場合に、前記イメージに基づき前記第2インスタンスを起動するよう、前記情報処理装置を制御する起動制御機能と
    をコンピュータに実現させるインスタンス起動プログラム。
  10. 前記起動制御機能においては、前記イメージ制御機能において前記イメージを転送するよう制御された後に、前記処理負荷が前記第2閾値以上となったか否かを判定する
    請求項9に記載のインスタンス起動プログラム。
JP2016081836A 2016-04-15 2016-04-15 インスタンス起動装置、インスタンス起動方法、及び、インスタンス起動プログラム Pending JP2017191542A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016081836A JP2017191542A (ja) 2016-04-15 2016-04-15 インスタンス起動装置、インスタンス起動方法、及び、インスタンス起動プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016081836A JP2017191542A (ja) 2016-04-15 2016-04-15 インスタンス起動装置、インスタンス起動方法、及び、インスタンス起動プログラム

Publications (1)

Publication Number Publication Date
JP2017191542A true JP2017191542A (ja) 2017-10-19

Family

ID=60086376

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016081836A Pending JP2017191542A (ja) 2016-04-15 2016-04-15 インスタンス起動装置、インスタンス起動方法、及び、インスタンス起動プログラム

Country Status (1)

Country Link
JP (1) JP2017191542A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020064567A (ja) * 2018-10-19 2020-04-23 富士通株式会社 情報処理装置、仮想マシン管理プログラムおよび仮想マシン管理方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020064567A (ja) * 2018-10-19 2020-04-23 富士通株式会社 情報処理装置、仮想マシン管理プログラムおよび仮想マシン管理方法
JP7104327B2 (ja) 2018-10-19 2022-07-21 富士通株式会社 情報処理装置、仮想マシン管理プログラムおよび仮想マシン管理方法

Similar Documents

Publication Publication Date Title
CN111241006B (zh) 存储阵列及控制方法
EP3118745B1 (en) A heuristic interface for enabling a computer device to utilize data property-based data placement inside a nonvolatile memory device
JP6517685B2 (ja) メモリシステムおよび制御方法
JP6231669B2 (ja) データ書込み要求処理方法及びストレージアレイ
KR102094236B1 (ko) 스토리지 디바이스 및 컴퓨터 시스템
JP2019175292A (ja) 電子機器、コンピュータシステム、および制御方法
JP5783809B2 (ja) 情報処理装置、起動方法およびプログラム
JP4886866B2 (ja) 主記憶装置へのアクセスを高速化する方法および記憶装置システム
US20220261172A1 (en) Offloaded data migration between storage devices
JP2013520744A (ja) 最小ブートイメージの生成方法及びその装置
CN110704161B (zh) 虚拟机创建方法、装置及计算机设备
JP6464288B2 (ja) クラウドコンピューティング環境においてクラウドホストを削除するプログラム、装置、サーバ及び記憶媒体
WO2021104383A1 (zh) 数据备份的方法和装置、设备和存储介质
JP2018517210A5 (ja)
US20220253252A1 (en) Data processing method and apparatus
JP2021149374A (ja) データ処理装置
WO2014100954A1 (zh) 数据控制方法及系统
US10402101B2 (en) System and method for using persistent memory to accelerate write performance
CN111124599A (zh) 虚拟机内存数据迁移方法、装置、电子设备及存储介质
CN110337633A (zh) 一种数据存储方法及设备
JP6193189B2 (ja) Nandバックグラウンド処理制御装置
CN113312182A (zh) 一种云计算节点、文件处理方法及装置
US20160055030A1 (en) Information processing device, information processing method, and computer program product
JP2017191542A (ja) インスタンス起動装置、インスタンス起動方法、及び、インスタンス起動プログラム
US10846265B2 (en) Method and apparatus for accessing file, and storage system