JP6277827B2 - 情報処理装置、スケール管理方法およびプログラム - Google Patents

情報処理装置、スケール管理方法およびプログラム Download PDF

Info

Publication number
JP6277827B2
JP6277827B2 JP2014073233A JP2014073233A JP6277827B2 JP 6277827 B2 JP6277827 B2 JP 6277827B2 JP 2014073233 A JP2014073233 A JP 2014073233A JP 2014073233 A JP2014073233 A JP 2014073233A JP 6277827 B2 JP6277827 B2 JP 6277827B2
Authority
JP
Japan
Prior art keywords
instance
scale
time
response time
load
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.)
Active
Application number
JP2014073233A
Other languages
English (en)
Other versions
JP2015194958A (ja
Inventor
智樹 内川
智樹 内川
登 車井
登 車井
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 JP2014073233A priority Critical patent/JP6277827B2/ja
Priority to US14/637,491 priority patent/US9594585B2/en
Publication of JP2015194958A publication Critical patent/JP2015194958A/ja
Application granted granted Critical
Publication of JP6277827B2 publication Critical patent/JP6277827B2/ja
Active 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/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
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45575Starting, stopping, suspending or resuming virtual machine instances

Description

本技術は、情報処理装置、スケール管理方法およびプログラムに関する。
近年、インターネットを用いて、コンピュータ処理等をネットワーク経由で利用するクラウドサービスが提供されている。
クラウドサービスを提供するクラウド環境では、大規模なデータセンタなどに多数のサーバが用意され、ネットワークを通じて、仮想マシンやソフトウェアまたはデータ保管領域などが利用できるシステムが構築されている。
また、このようなシステムでは、仮想マシンの増減を行うオートスケール機能が備えられる。これは、システムの処理量に応じて、システムにサーバを追加するスケールアウト、またはシステムからサーバを削除するスケールインを行うものである。スケールアウト・インというスケール制御を行うことで、サービス要求に応じたサーバリソースの設定が行われる。
特開2008−015958号公報 特開2005−141605号公報
クラウド環境において、ユーザに対する課金は利用したリソースに応じて行われるため、実際にリソースが必要となった状況になるまでは、リソース割り当て量の変化は通常行われない。
一方、急激なアクセス数の増加等、将来値の予測に応じてリソースを割り当てる必要がある場合があるが、実際にリソースを割り当てると、実際の処理にリソースが利用されない場合であっても課金が発生する。
リソース割り当てに対応する計算機の起動に一定の時間が必要である場合、サービスに対する要求の変化徴候に応じてリソース割り当ての増減を行い、要求の増減に対応する必要がある。しかしながら、過去に行ったリソース割り当ての増減のための計算機の起動や停止指示がサービスのリソースとして反映されるまでは時間がかかり、かつ、課金と関連するため、機動的な対応を行うことが困難である。
1つの案では、情報処理システムで稼働させる仮想マシン数を管理するプログラムが提供される。このプログラムにもとづいてコンピュータが以下の処理を実行する。
コンピュータは、仮想マシンを用いたサービスを行うシステムの負荷をモニタし、負荷の変化量と閾値とを比較し、負荷の変化量が閾値を超える場合、仮想マシンの起動指示または起動処理中である仮想マシンの停止指示を行う。
1態様によれば、仮想マシンが不足または過剰状態にある期間の短縮が可能になる。
情報処理装置の構成例を示す図である。 インスタンス数と平均レスポンス時間の推移を示す図である。 インスタンス数と平均レスポンス時間の推移を示す図である。 インスタンス数と平均レスポンス時間の推移を示す図である。 インスタンス情報テーブルを示す図である。 インスタンス情報テーブルを示す図である。 インスタンス数と平均レスポンス時間の推移を示す図である。 インスタンス情報テーブルを示す図である。 インスタンス数と平均レスポンス時間の推移を示す図である。 インスタンス情報テーブルを示す図である。 インスタンス情報テーブルを示す図である。 スケール制御の流れを示す図である。 スケール制御の動作を示すフローチャートである。 インスタンス情報の取得動作を示すフローチャートである。 レスポンス時間情報DBのデータ構造の一例を示す図である。 インスタンス情報DBのデータ構造の一例を示す図である。 インスタンス数算出処理を説明するための図である。 インスタンス数算出処理を説明するための図である。 情報処理装置に用いるコンピュータのハードウェアの一例を示す図である。
以下、本発明の実施の形態を図面を参照して説明する。
本実施の形態は、仮想マシンを用いたサービスを行う情報処理システムにおける仮想マシン数を管理する情報処理装置が提供される。この情報処理装置は、管理対象のシステムの負荷をモニタし、システムに対して過去に起動指示を行い、かつ、起動処理中である仮想マシンの状況、および、負荷のモニタ結果に応じて、管理対象システムにおける仮想マシンの起動指示と起動処理中である仮想マシンの停止指示を行う。
また、情報処理装置は、単位時間当たりの負荷の変化に応じて、仮想マシンのスケールアウトまたはスケールインを行う。スケールインの際には、停止する仮想マシンが、起動開始時期にもとづいて選択される。これにより、仮想マシンが不足または過剰状態にある期間の短縮が可能になる。
図1は情報処理装置の構成例を示す図である。情報処理装置10は、監視部11、制御部12および記憶部13を備える。
監視部11は、情報処理システムの負荷を監視する。負荷は、例えばレスポンス時間やCPU(Central Processing Unit)使用率などにもとづいて判断される。なお、レスポンス時間とは、クライアントがシステムにサービス要求を行った際にレスポンスが返信されるまでに要する時間である。レスポンス時間が長くなれば、負荷が高くなったことを意味し、レスポンス時間が短くなれば、負荷が軽減されたことを意味する。以下、レスポンス時間を用いて負荷を監視するものとする。その場合、監視部11は、仮想マシンがサービス要求を受けてからレスポンスを送信するまでのレスポンス時間を認識する。
制御部12は、単位時間当たりの負荷の変化量が閾値を超える場合には、新たに仮想マシンを起動させるスケールアウト、または既存の仮想マシンの中から起動開始時期にもとづいて選択された仮想マシンを停止させるスケールインの指示を行う。例えば制御部12は、レスポンス時間の変化量を閾値と比較し、閾値を超える場合には、仮想マシンの台数を増加するスケールアウト、または仮想マシンの台数を減少するスケールインを実施する。また、制御部12は、仮想マシンの動作状態の管理等も行う。記憶部13は、スケール制御に関連する情報を記憶する。
図1には、仮想マシン数とレスポンス時間の推移が示されている。横軸はクラウドサービスを提供するシステムのシステム稼働時間、左縦軸は平均レスポンス時間、右縦軸は稼働している仮想マシン数である。グラフG1(細実線)は仮想マシン数であり、グラフG2(太実線)はレスポンス時間である。
制御部12は、レスポンス時間の変化量を検出する。この場合、時刻t11において、レスポンス時間の増加変化量が第1の閾値を超えたことを認識したとすると、制御部12は、スケールアウトを実施して、例えば、稼働させる仮想マシン数をN1からN2へ増加させる。
また、時刻t12において、レスポンス時間の減少変化量が第2の閾値を超えたことを認識したとすると、制御部12は、スケールインを実施して、例えば、稼働させる仮想マシン数をN2からN1へ減少させる。
ここで、従来のオートスケールでは、レスポンス時間が上限値に達するとスケールアウトを実施し、レスポンス時間が下限値に達するとスケールインを実施している。このため、仮想マシンの起動完了または停止完了に要する時間帯で、仮想マシンの不足状態または過剰状態が生じている。
これに対し、情報処理装置10では、レスポンス時間の増率および減少率に応じてスケールアウト・インを行う。これにより、レスポンス時間が上限値に達する前に早い段階からスケールアウトを行ってスケールアウト対象の仮想マシンに起動指示を与えることができるので、仮想マシンが不足状態になることを抑制することが可能になる。または、仮想マシンが不足状態になる時間帯を短縮化させることが可能になる。
また、レスポンス時間が下限値に達する前に早い段階からスケールインを行ってスケールイン対象の仮想マシンに停止指示を与えることができるので、仮想マシンが過剰状態になることを抑制することが可能になる。または、仮想マシンが過剰状態になる時間帯を短縮化させることが可能になる。なお、動作の詳細については図4以降で説明する。
次に本技術の詳細を説明する前に、解決すべき課題について詳しく説明する。最初に理想的なスケール制御について説明する。なお、以降では仮想マシンをインスタンスとも呼ぶ。
図2はインスタンス数と平均レスポンス時間の推移を示す図である。横軸はシステム稼働時間、左縦軸は平均レスポンス時間、右縦軸は稼働しているインスタンス数である。なお、平均レスポンス時間とは、システムに対してM個のサービス要求のユーザアクセスがあった場合、M個のアクセスそれぞれのレスポンス時間の合計をMで割った値である。
グラフg1(細実線)は、インスタンス数を示し、稼働しているインスタンスの数を表している。グラフg2(太実線)は、平均レスポンス時間を示す。また、グラフg1と横軸とに囲まれる領域の斜線部分(面積)は、インスタンス数に応じて増減する費用を示している。
さらに、平均レスポンス時間には、許容範囲Hが設定されている。許容範囲Hは、下限時間である下限値Lと、上限時間である上限値Uとを有し、平均レスポンス時間が下限値Lから上限値Uの中に収まるように、スケール制御が行われる。以下、時刻tにおける動作について説明する。
〔t0≦t<ta〕稼働しているインスタンス数=N1である。インスタンス数がN1のリソース状態において、平均レスポンス時間は、許容範囲Hを満たしながら徐々に上昇し始めている。
〔t=ta〕稼働しているインスタンス数=N2である。平均レスポンス時間が許容範囲Hの上限値Uに達している。現状のインスタンス数では処理能力が不足するということなので、スケールアウトが実施されて、インスタンス数がN1からN2へ増加している。
〔ta<t<tb〕稼働しているインスタンス数=N2である。スケールアウトによってリソースが増加して処理能力が上がるため、レスポンス速度が速まり、平均レスポンス時間が徐々に下降している。
〔t=tb〕稼働しているインスタンス数=N1である。平均レスポンス時間が許容範囲Hの下限値Lに達している。現状のインスタンス数では処理能力が過剰になるということなので、スケールインが実施されて、インスタンス数がN2からN1へ減少している。
〔tb<t〕稼働しているインスタンス数=N1である。スケールインによってリソースが減少して処理能力が下がるため、レスポンス速度が遅くなり、平均レスポンス時間が徐々に上昇している。
ここで、インスタンス数が少ないと費用は安くなるが、平均レスポンス時間が上限を超えてしまう可能性が生じる。逆に、インスタンス数が多いと平均レスポンス時間は短くなるが、費用は高くなってしまい、また平均レスポンス時間が下限を超えてしまう可能性も生じる。
したがって、上記の図2に示すように、平均レスポンス時間が許容範囲Hを満たすように、スケールアウト・インを行って、インスタンス数を変化させるスケール制御を行う。これにより、サービス要求を満たす必要十分のリソースを適切な費用で使用することができる。
しかし、上記のスケール制御は、インスタンスの起動および停止に要する時間を考慮していない場合の理想的なスケール制御の状態を示している。
すなわち、スケールアウト対象になったインスタンスを起動するには、起動にかかる処理時間を要し、また、スケールイン対象になったインスタンスを停止するには、停止にかかる処理時間を要するが、図2のスケール制御では、これらの時間が考慮されていないものである。
したがって、実際のスケール制御では、スケールアウトに対してはインスタンスの起動処理時間が影響を与えることになり、スケールインに対してはインスタンスの停止処理時間が影響を与えることになる。
次に従来のスケール制御の課題について説明する。図3はインスタンス数と平均レスポンス時間の推移を示す図である。横軸はシステム稼働時間、左縦軸は平均レスポンス時間、右縦軸は稼働しているインスタンス数である。グラフg1はインスタンス数であり、グラフg2は平均レスポンス時間である。
なお、グラフg1と横軸とに囲まれる領域は、図2と同様に費用を示すが、図を簡略化するために、以降の説明では斜線の表記は省略する。以下、従来のスケール制御の時刻tにおける動作について説明する。
〔t0≦t<t1〕稼働しているインスタンス数=N1である。インスタンス数がN1のリソース状態において、平均レスポンス時間は徐々に上昇している。
〔t=t1〕稼働しているインスタンス数=N1である。平均レスポンス時間が上限値Uに達する。このとき、スケールアウトが実施されるので、スケールアウトによって増加すべきインスタンスが起動処理を開始する。
〔t1<t<t2〕稼働しているインスタンス数=N1である。スケールアウトによって増加すべきインスタンスの起動処理中の時間帯tAとなる。時間帯tAでは、スケールアウトはまだ完了していないので、平均レスポンス時間は、上限値Uを上回って上昇し続ける。
〔t=t2〕稼働しているインスタンス数=N2である。スケールアウト対象のインスタンスが起動を完了し、インスタンス数がN1からN2となって、スケールアウトが完了する。平均レスポンス時間の上昇が停止する。
〔t2<t<t3〕稼働しているインスタンス数=N2である。スケールアウトが行われて、インスタンス数がN1からN2へ増加した状態である。したがって、レスポンス速度が速まり、インスタンス数がN2のリソース状態において、平均レスポンス時間が徐々に下降していく。
〔t=t3〕稼働しているインスタンス数=N2である。平均レスポンス時間は、下限値Lに達する。このとき、スケールインが実施されるので、スケールインによって減少すべきインスタンスの停止処理が開始される。
〔t3<t<t4〕稼働しているインスタンス数=N2である。スケールインによって減少すべきインスタンスの停止処理中の時間帯tBとなる。時間帯tBでは、スケールインはまだ完了していないので、平均レスポンス時間は下降し続け、下限値Lを下回って下降し続ける。
〔t=t4〕稼働しているインスタンス数=N1である。インスタンスが停止処理を完了し、インスタンス数がN2からN1となってスケールインが完了する。平均レスポンス時間の下降が停止する。
〔t4<t〕稼働しているインスタンス数=N1である。インスタンス数がN1のリソース状態において、平均レスポンス時間は徐々に上昇している。
このように、従来のスケール制御では、平均レスポンス時間が上限値Uに達したときにスケールアウトを実施し、平均レスポンス時間が下限値Lに達したときにスケールインを実施する。
しかし、平均レスポンス時間が上限値Uに達したときにスケールアウトを実施しても、スケールアウト対象となったインスタンスは、スケールアウト実施時点では起動は完了せず、起動が完了するまでには一定の起動処理時間を要する。
このため、起動開始から起動完了までの時間帯tAでは、サービス要求に対してインスタンスリソースが不足状態となるため、処理負荷の高い状態が続いてしまい、処理性能が悪化することになる。
また、平均レスポンス時間が下限値Lに達したときにスケールインを実施しても、スケールイン対象となったインスタンスは、スケールイン実施時点では停止は完了せず、停止が完了するまでには、一定の停止処理時間を要する。
このため、停止開始から停止完了までの時間帯tBでは、サービス要求は満たされたとしても、インスタンスリソースが過剰状態となるため、無駄な費用が発生することになる。
このように、従来では、平均レスポンス時間の上限値/下限値を設けて、平均レスポンス時間と上限値/下限値とを比較して、スケールアウト・インを行っている。このため、リソースの不足状態が続いて処理性能が悪化したり、またはリソースの過剰状態が続いて無駄な費用が発生したりしている。
本技術はこのような点に鑑みてなされたものであり、インスタンスリソースが不足/過剰状態になることを抑制し、また、サービス要求を満たしつつ費用を抑えた効率のよいスケール制御の実現を図るものである。
次に本技術のスケール制御について以降詳しく説明する。図4はインスタンス数と平均レスポンス時間の推移を示す図である。横軸はシステム稼働時間、左縦軸は平均レスポンス時間、右縦軸は稼働しているインスタンス数である。グラフg1はインスタンス数であり、グラフg2は平均レスポンス時間である。
また、図5はインスタンス情報テーブルを示す図である。インスタンス情報テーブルTaは、インスタンス情報として、「インスタンスID(identification)」、「状態」および「状態遷移時刻」の項目を有する。
「インスタンスID」は、インスタンスの識別番号である。「状態」は、インスタンスの動作状態を表す。「状態遷移時刻」は、インスタンスの動作状態が遷移した時刻(年月日が含まれてもよい)を表す。なお、図6は、図4の横軸の各時刻におけるインスタンス情報を示している。以下、図4の各時刻における動作について説明する。
〔時刻12:00〕稼働しているインスタンス数は1であり、インスタンスID=I1のインスタンスI1が稼働している。インスタンスI1は、時刻11:00:00に起動を完了して現在稼働中とする。
この場合、制御部12は、テーブル生成処理として、「インスタンスID」=I1、「状態」=稼働状態、「状態遷移時刻」=11:00:00を登録したインスタンス情報テーブルTa1(12:00)を生成する。
〔時刻12:10〕稼働しているインスタンス数は1であり、インスタンスI1が稼働している。平均レスポンス時間が増加しており、増加変化量(増加度合いの傾き)が第1の閾値(閾値th1とする)を超えたとする。
このとき、制御部12は、スケールアウトを実施するので、スケールアウトによって増加すべきインスタンスを起動させる。起動させるインスタンスのID=I2とし、起動開始指示時刻を12:10:00とする。
制御部12は、テーブル生成処理として、「インスタンスID」=I2、「状態」=起動処理中、「状態遷移時刻」=12:10:00を含むレコードを登録したインスタンス情報テーブルTa1(12:10)を生成する。
〔時刻12:20〕稼働しているインスタンス数は2であり、インスタンスI1、I2が稼働している。インスタンスI2は、時刻12:20:00に起動が完了して、稼働中となる。
制御部12は、テーブル生成処理として、「インスタンスID」=I2のレコードの「状態」を稼働状態に変更し、「状態遷移時刻」を12:20:00に変更したインスタンス情報テーブルTa1(12:20)を生成する。
〔時刻12:30〕稼働しているインスタンス数は2であり、インスタンスI1、I2が稼働している。平均レスポンス時間が減少しており、減少変化量(減少度合いの傾き)が第2の閾値(閾値th2とする)を超えたとする。
このとき、制御部12は、スケールインを実施するので、スケールインによって減少させるべきインスタンスを停止させる。停止させるインスタンスのID=I2とし、停止開始指示時刻を12:30:00とする。
制御部12は、テーブル生成処理として、「インスタンスID」=I2のレコードの「状態」を停止処理中に変更し、「状態遷移時刻」を12:30:00に変更したインスタンス情報テーブルTa1(12:30)を生成する。
〔時刻12:40〕稼働しているインスタンス数は1であり、インスタンスI1が稼働し、インスタンスI2は稼働を停止する。
制御部12は、インスタンスI2の停止完了を認識すると、テーブル生成処理として、「インスタンスID」=I2のレコードを削除したインスタンス情報テーブルTa1(12:40)を生成する。
以上説明したように、本技術のスケール制御では、平均レスポンス時間の増加変化量が、増加変化量の閾値th1を超えたときにスケールアウトを実施する。これにより、インスタンスの起動開始から起動完了までに要する時間を見込んで、スケールアウト対象のインスタンスに起動開始指示を与えることができる。
このため、平均レスポンス時間が上限値を上回る前に、または平均レスポンス時間が上限値を上回ったとしても上回る時間帯を最小限に抑えて、スケールアウトを実施することが可能になる。よって、インスタンスリソースが不足状態となる時間帯を低減し、処理性能の悪化を抑制することが可能になる。
また、本技術のスケール制御では、平均レスポンス時間の減少変化量が減少変化量の閾値th2を下回ったときにはスケールインを実施する。これにより、インスタンスの停止開始から停止完了までに要する時間を見込んで、スケールイン対象のインスタンスに停止開始指示を与えることができる。
このため、平均レスポンス時間が下限値を下回る前に、または平均レスポンス時間が下限値を下回ったとしても下回る時間帯を最小限に抑えて、スケールインを実施することが可能になる。よって、インスタンスリソースが過剰状態となる時間帯を低減し、無駄な費用の発生を抑制することが可能になる。
なお、スケールアウト・インを実施する場合に、どれだけの台数のインスタンスを増加・減少させるかのインスタンス数の算出処理については、図17、図18で後述する。
ここで、本技術では、上記のように、平均レスポンス時間の増加変化量が閾値th1を超えたことを認識すると、スケールアウト対象のインスタンスの起動処理を開始する。
このとき、インスタンスの起動処理開始後に、例えば、短時間で平均レスポンス時間の変化量の増加が緩和して、起動を開始した当該インスタンスのリソースが過剰となってしまう可能性もありうる。
ただし、このような場合であっても、本技術では、平均レスポンス時間の減少変化量が所定値を超えれば、インスタンスの停止処理が働くので、リソースの過剰状態はすみやかに解消されることになる。
図7と図8は、このような状態を説明するための図である。図7はインスタンス数と平均レスポンス時間の推移を示す図である。横軸はシステム稼働時間、左縦軸は平均レスポンス時間、右縦軸は稼働しているインスタンス数である。グラフg1はインスタンス数であり、グラフg2は平均レスポンス時間である。
また、図8はインスタンス情報テーブルを示す図である。図7の横軸の各時刻におけるインスタンス情報を示している。以下、図7の各時刻における動作について説明する。
〔時刻12:00〕稼働しているインスタンス数は1であり、インスタンスID=I1であるインスタンスI1が稼働している。インスタンスI1は、時刻11:00:00に起動を完了して現在稼働中とする。
制御部12は、テーブル生成処理として、「インスタンスID」=I1、「状態」=稼働状態、「状態遷移時刻」=11:00:00を登録したインスタンス情報テーブルTa2(12:00)を生成する。
〔時刻12:10〕稼働しているインスタンス数は1であり、インスタンスI1が稼働している。平均レスポンス時間が増加しており、増加変化量が閾値th1を超えたとする。このとき、制御部12は、スケールアウトを実施するので、スケールアウトによって増加すべきインスタンスを起動させる。起動させるインスタンスのID=I2とし、起動開始指示時刻を12:10:00とする。
制御部12は、テーブル生成処理として、「インスタンスID」=I2、「状態」=起動処理中、「状態遷移時刻」=12:10:00を含むレコードを登録したインスタンス情報テーブルTa2(12:10)を生成する。
〔時刻12:14〕稼働しているインスタンス数は1であり、インスタンスI1が稼働している。制御部12は、スケールアウトを実施しようとして、インスタンスI2の起動を指示したが、インスタンスI2の起動が完了する前に、平均レスポンス時間の増加の傾きが小さくなることを認識したとする。
すなわち、インスタンスI2の起動が完了する前に、平均レスポンス時間の減少変化量が閾値th2を超えたとする。
この場合、制御部12は、起動指示を一旦出したインスタンスI2に対して、停止指示を与える。停止指示を受けたインスタンスI2は、停止処理を実行する。
制御部12は、テーブル生成処理として、「インスタンスID」=I2のレコードの「状態」を停止処理中に変更し、「時刻」を12:14:00に変更したインスタンス情報テーブルTa2(12:14)を生成する。
〔時刻12:20〕稼働しているインスタンス数は1であり、インスタンスI1が稼働している。インスタンスI2は、稼働を停止し、制御部12は、時刻12:20:00にインスタンスI2の停止完了を認識したとする。
制御部12は、テーブル生成処理として、「インスタンスID」=I2のレコードを削除したインスタンス情報テーブルTa2(12:20)を生成する。
以上説明したように、起動処理を開始したスケールアウト対象のインスタンスが過剰リソースとなってしまう場合があっても、平均レスポンス時間の減少変化量にもとづいて、インスタンスの停止処理が働くので、リソースの過剰状態はすみやかに解消することが可能になる。
なお、起動処理中のインスタンスがあるにもかかわらず、すでに起動完了済みのインスタンスを停止すると、当該インスタンスで実行されている処理が中断してしまうため、停止処理時は、起動処理中のインスタンスから停止していくことになる。
次にインスタンスリソースの中で、どのインスタンスに対して停止指示を与えるかについて図9〜図11を用いて説明する。図9はインスタンス数と平均レスポンス時間の推移を示す図である。横軸はシステム稼働時間、左縦軸は平均レスポンス時間、右縦軸は稼働しているインスタンス数である。グラフg1はインスタンス数であり、グラフg2は平均レスポンス時間である。
また、図10、図11はインスタンス情報テーブルを示す図である。図9の横軸の各時刻におけるインスタンス情報を示している。以下、図9の各時刻における動作について説明する。
〔時刻12:00〕稼働しているインスタンス数は2であり、インスタンスID=I1であるインスタンスI1と、インスタンスID=I2であるインスタンスI2とが稼働している。
インスタンスI1は、時刻10:00:00に起動を完了して現在稼働中であり、インスタンスI2は、時刻11:00:00に起動を完了して現在稼働中であるとする。
制御部12は、テーブル生成処理として、「インスタンスID」=I1、「状態」=稼働状態、「状態遷移時刻」=10:00:00を含むレコードと、「インスタンスID」=I2、「状態」=稼働状態、「状態遷移時刻」=11:00:00を含むレコードとを有するインスタンス情報テーブルTa3(12:00)を生成する。
〔時刻12:10〕稼働しているインスタンス数は2であり、インスタンスI1、I2が稼働している。平均レスポンス時間が増加しており、増加変化量が閾値th1を超えたとする。
このとき、制御部12は、スケールアウトを実施するので、スケールアウトによって増加すべきインスタンスを起動させる。起動させるインスタンスのID=I3とし、起動開始指示時刻を12:10:00とする。
制御部12は、テーブル生成処理として、「インスタンスID」=I3、「状態」=起動処理中、「状態遷移時刻」=12:10:00を含むレコードをあらたに登録したインスタンス情報テーブルTa3(12:10)を生成する。
〔時刻12:14〕稼働しているインスタンス数は2であり、インスタンスI1、I2が稼働している。時刻12:14において、増加変化量が再び閾値th2を超えたとする。
このとき、制御部12は、スケールアウトを実施してさらにインスタンスを増加させるので、スケールアウトによって増加すべきインスタンスを起動させる。起動させるインスタンスのID=I4とし、起動開始指示時刻を12:14:00とする。
制御部12は、テーブル生成処理として、「インスタンスID」=I4、「状態」=起動処理中、「状態遷移時刻」=12:14:00を含むレコードをあらたに登録したインスタンス情報テーブルTa3(12:14)を生成する。
〔時刻12:20〕稼働しているインスタンス数は2であり、インスタンスI1、I2が稼働している。インスタンスI3、I4は、起動処理中である。
〔時刻12:30〕稼働しているインスタンス数は2であり、インスタンスI1、I2が稼働している。インスタンスI3、I3は、起動処理中である。平均レスポンス時間が減少しており、減少変化量が閾値th2を超えたとする。このとき、制御部12は、スケールインを実施するので、スケールインによって減少すべきインスタンスを停止させる。停止させるインスタンスは、起動を開始した時間が最も遅いインスタンスI4とし、停止開始指示時刻を12:30:00とする。
制御部12は、テーブル生成処理として、「インスタンスID」=I4のレコードの「状態」を停止処理中に変更し、「状態遷移時刻」を12:30:00に変更したインスタンス情報テーブルTa3(12:30)を生成する。
〔時刻12:40〕稼働しているインスタンス数は3であり、インスタンスI1、I2、I3が稼働している。インスタンスI3は、時刻12:38:00に起動を完了したとする。また、インスタンスI4は、時刻12:40:00に停止完了したとする。
制御部12は、テーブル生成処理として、「インスタンスID」=I3のレコードの「状態」を稼働状態に変更し、「状態遷移時刻」を12:38:00に変更し、さらに、インスタンスID=I4のレコードを削除したインスタンス情報テーブルTa3(12:40)を生成する。
このように、停止指示を行うインスタンスの選択は、サービスへの影響を考慮して、起動処理中のインスタンスがあれば、起動処理中のインスタンスを選択する。また、起動処理中のインスタンスが複数ある場合は、起動を開始した時間が遅い、すなわち、直近に起動したインスタンスから順に停止させる。
また、起動処理中の仮想マシンがない場合は、稼働を開始した時間が遅い、すなわち、直近に稼働したインスタンスから順に停止させる。これにより、インスタンスを停止する際に、サービス断の発生を防止することが可能になる。
次にスケール制御の全体の流れについて説明する。図12はスケール制御の流れを示す図である。情報処理システム1は、クライアント2、ロードバランサ3、サービス提供インスタンス群4、レスポンス時間情報取得部5、レスポンス時間情報DB(Data Base)6、インスタンス情報DB7、インスタンスA、Bおよびクラウド環境管理API(Application Programming Interface)8を備える。
インスタンスAは、インスタンス数算出部21とスケール制御部22を備える。インスタンスBは、インスタンス情報取得部23を備える。なお、インスタンス数算出部21、スケール制御部22およびインスタンス情報取得部23は、1つのインスタンスに含まれていてもよい。
ここで、インスタンス数算出部21、スケール制御部22およびインスタンス情報取得部23は、図1の制御部12の機能に含まれる。また、レスポンス時間情報取得部5は、図1の監視部11の機能に含まれる。さらに、レスポンス時間情報DB6とインスタンス情報DB7は、図1の記憶部13の機能に含まれる。
〔S1〕ロードバランサ3は、クライアント2から送信されたサービス要求を受信する。
〔S2〕ロードバランサ3は、サービス要求に対して該当のサービスを提供するインスタンスを、複数のインスタンスを含むサービス提供インスタンス群4の中から選定する。この場合、特定のインスタンスに負荷が偏重しないようにインスタンスが選定される。
〔S3〕ロードバランサ3によって選定されたインスタンスは、サービス要求に対する処理を実行し、サービス要求を出したクライアントに対してレスポンスを送信する。
〔S4〕レスポンス時間情報取得部5は、インスタンスがどれぐらいの時間を要してレスポンスを送信したかに関するレスポンス時間情報を取得する。
〔S5〕レスポンス時間情報取得部5は、レスポンス時間情報をレスポンス時間情報DB6に格納する。
〔S6〕インスタンス情報取得部23は、クラウド環境管理API8を介して、クラウド環境内のインスタンスに関するインスタンス情報を取得する。
〔S7〕インスタンス情報DB7は、インスタンス情報を格納する。
〔S8〕インスタンス数算出部21は、レスポンス時間情報とインスタンス情報にもとづいて、スケール制御を行うべきインスタンス数を算出する。
〔S9〕スケール制御部22は、クラウド環境管理API8を通じて、インスタンス数の算出結果にもとづいて、スケール制御を行う。
次にフローチャートを用いてスケール制御について説明する。図13はスケール制御の動作を示すフローチャートである。
〔S11〕インスタンス数算出部21は、レスポンス時間情報DB6にアクセスする。
〔S12〕インスタンス数算出部21は、レスポンス時間情報を取得する。
〔S13〕インスタンス数算出部21は、インスタンス情報DB7にアクセスする。
〔S14〕インスタンス数算出部21は、インスタンス情報を取得する。
〔S15〕インスタンス数算出部21は、インスタンス数を算出する。
〔S16〕スケール制御部22は、スケールアウト・インを実行しない場合は終了する。スケールアウトを実施する場合は、ステップS17へ行き、スケールインを実施する場合は、ステップS19へ行く。
〔S17〕スケール制御部22は、スケールアウト対象のインスタンスの起動指示をクラウド環境管理API8へ送信する。
〔S18〕クラウド環境管理API8は、インスタンスの起動指示を受ける。スケール制御部22から発信された起動指示は、クラウド環境管理API8を通じて、スケールアウト対象のインスタンスに送信される。
〔S19〕スケール制御部22は、スケールイン対象のインスタンスの停止指示をクラウド環境管理API8へ送信する。なお、上述したように、起動処理中のインスタンスがある場合は、起動を開始した時間が最も遅い、最近起動したインスタンスに停止指示を出す。また、起動処理中のインスタンスがない場合は、稼働を開始した時間が最も遅い、最近稼働したインスタンスに停止指示を出す。
〔S20〕クラウド環境管理API8は、インスタンスの停止指示を受ける。スケール制御部22から発信された停止指示は、クラウド環境管理API8を通じて、スケールイン対象のインスタンスに送信される。
図14はインスタンス情報の取得動作を示すフローチャートである。
〔S31〕インスタンス情報取得部23は、クラウド環境管理API8にアクセスする。
〔S32〕クラウド環境管理API8は、クラウド環境内のインスタンスからインスタンス情報を収集する。
〔S33〕インスタンス情報取得部23は、インスタンス情報を取得する。
〔S34〕インスタンス情報取得部23は、インスタンス情報DB7にアクセスする。
〔S35〕インスタンス情報取得部23は、インスタンス情報DB7にインスタンス情報を格納する。
次にレスポンス時間情報DB6とインスタンス情報DB7のデータ構造について説明する。図15はレスポンス時間情報DBのデータ構造の一例を示す図である。レスポンス時間情報DB6は、レスポンス時間情報テーブルTbを有する。レスポンス時間情報テーブルTbは、「インスタンスID」、「レスポンス時間計測開始日時」、「レスポンス時間計測終了日時」および「平均レスポンス時間」の項目を含む。
「インスタンスID」は、インスタンスの識別番号である。「レスポンス時間計測開始日時」は、レスポンス時間の計測を開始した日時を表す。「レスポンス時間計測終了日時」は、レスポンス時間の計測を終了した日時を表す。「平均レスポンス時間」は、計測開始から終了までの各アクセスの平均レスポンス時間の総和をアクセス数で割った値である。
図16はインスタンス情報DBのデータ構造の一例を示す図である。インスタンス情報DBは、インスタンス情報テーブルTaを有する。なお、インスタンス情報テーブルTaについては、図5で上述したので説明は省略する。
次にインスタンス数の算出処理について説明する。図17、図18はインスタンス数算出処理を説明するための図である。図17の横軸はシステム稼働時間、左縦軸はレスポンス時間(ms)、右縦軸はインスタンス数である。
ここで、レスポンス時間の目標値である目標レスポンス時間を200msとする。また、インスタンス数算出式を以下のように定義する。
インスタンス数(台数)={(時刻TNでの実測レスポンス時間−目標レスポンス時間)・K1}+{(時刻TNでの実測レスポンス時間−時刻T(N-1)での実測レスポンス時間)・K2} ・・・(1)
式(1)中のK1、K2は係数である。ここでは、K1=1/100、K2=1/400とする。また、インスタンス数は、四捨五入する。さらに、インスタンス数が正数の場合は、スケールアウトが実施され、インスタンス数が負数の場合は、スケールインが実施される。
一方、式(1)の{(時刻TNでの実測レスポンス時間−目標レスポンス時間)・K1}は、レスポンス時間の実測値と目標値との差分にもとづいて、スケール数を算出する項である(項#1とする)。
さらに、式(1)の{(時刻TNでの実測レスポンス時間−時刻T(N-1)での実測レスポンス時間)・K2}は、レスポンス時間の実測値の変化にもとづいて、スケール数を算出する項である(項#2とする)。以下、図17に示す時刻T0〜T3における動作について説明する。
〔T0〕実測レスポンス時間=200msであり、稼働インスタンス数=1である。実測レスポンス時間が目標レスポンス時間と同じである(スケールアウト・インは実施されない)。
〔T1〕実測レスポンス時間=600msであり、稼働インスタンス数=1である。実測レスポンス時間が目標レスポンス時間を超えている。この場合、時刻T1での実測レスポンス時間=600ms、目標レスポンス時間=200ms、前回時刻T0での実測レスポンス時間=200msである。
したがって、式(1)の項#1は、(600−200)/100=4となる。また、式(1)の項#2は、(600−200)/400=1となる。よって、インスタンス数=4+1=5であり、5台のインスタンスをスケールアウトすることを決定する。
〔T2〕実測レスポンス時間=300msであり、稼働インスタンス数=6である。実測レスポンス時間が目標レスポンス時間を超えている。この場合、時刻T2での実測レスポンス時間=300ms、目標レスポンス時間=200ms、前回時刻T1での実測レスポンス時間=600msである。
したがって、式(1)の項#1は、(300−200)/100=1となる。また、式(1)の項#2は、(300−600)/400=−0.75となる。よって、インスタンス数=1+(−0.75)=0.25となるが、四捨五入で0となるので、時刻T2において、スケール制御は実施されない。
〔T3〕実測レスポンス時間=100msであり、稼働インスタンス数=6である。実測レスポンス時間が目標レスポンス時間を下回る。この場合、時刻T3での実測レスポンス時間=100ms、目標レスポンス時間=200ms、前回時刻T2での実測レスポンス時間=300msである。
したがって、式(1)の項#1は、(100−200)/100=−1となる。また、式(1)の項#2は、(100−300)/400=−0.5となる。よって、インスタンス数=(−1)+(−0.5)=−1.5であり、四捨五入して2台のインスタンスがスケールインされることになる。
このように、式(1)を用いてインスタンス数を算出することにより、スケールアウト・インすべきインスタンスの数を効率よく求めることが可能になる。その結果、インスタンスが不足したり過剰であったりする期間が短縮され、システムの運用効率が向上する。
またクラウドコンピューティングによりサービスを利用しているユーザは、稼働しているインスタンス数に応じて課金される場合がある。このような場合にインスタンスが不足したり過剰であったりする期間が短縮されれば、ユーザに対する過剰な課金が抑止される。また起動中のインスタンスについて、起動完了前に不要と判断されれば、そのインスタンスが停止される。そのため性能不足が予測できた場合、実際に性能不足が発生する前にインスタンスの起動を開始し、性能不足が発生しないことが分かったら、起動処理を停止させることができる。その結果、課金を抑止するためにインスタンスの起動開始を遅らせる理由がなくなり、インスタンスの起動開始の遅延によるインスタンスに不足が生じることが抑止される。
次に本技術をコンピュータによって実現する場合について説明する。上記に示した処理機能は、コンピュータによって実現可能である。例えば、情報処理システム1は、1以上のコンピュータによって構成される。そして情報処理システム1を構成するコンピュータの1つで、インスタンス数算出部21とスケール制御部22との機能を実現できる。図19は情報処理装置に用いるコンピュータのハードウェアの一例を示す図である。
情報処理装置10内のコンピュータ100は、CPU101によって装置全体が制御されている。CPU101には、バス108を介してRAM(Random Access Memory)102と複数の周辺機器が接続されている。
RAM102は、コンピュータ100の主記憶装置として使用される。RAM102には、CPU101に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM102には、CPU101による処理に必要な各種データが格納される。
バス108に接続されている周辺機器としては、HDD(Hard Disk Drive)103、グラフィック処理装置104、入力インタフェース105、光学ドライブ装置106、および通信インタフェース107がある。
HDD103は、内蔵したディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。HDD103は、コンピュータ100の二次記憶装置として使用される。HDD103には、OSのプログラム、アプリケーションプログラム、および各種データが格納される。なお、二次記憶装置としては、フラッシュメモリなどの半導体記憶装置を使用することもできる。
グラフィック処理装置104には、モニタ104aが接続されている。グラフィック処理装置104は、CPU101からの命令に従って、画像をモニタ104aの画面に表示させる。モニタ104aとしては、CRT(Cathode Ray Tube)を用いた表示装置や液晶表示装置などがある。
入力インタフェース105には、キーボード105aとマウス105bとが接続されている。入力インタフェース105は、キーボード105aやマウス105bから送られてくる信号をCPU101に送信する。なお、マウス105bは、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
光学ドライブ装置106は、レーザ光などを利用して、光ディスク106aに記録されたデータの読み取りを行う。光ディスク106aは、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク106aには、DVD(Digital Versatile Disc)、DVD−RAM、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(Rewritable)などがある。
通信インタフェース107は、ネットワーク110に接続されている。通信インタフェース107は、ネットワーク110を介して、他のコンピュータまたは通信機器との間でデータの送受信を行う。
以上のようなハードウェア構成によって、情報処理装置10の機能を実現することができる。また、コンピュータで本実施の形態の機能を実現する場合、情報処理装置10が有する機能の処理内容を記述したプログラムが提供される。
そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。
コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記憶装置には、ハードディスク装置(HDD)、フレキシブルディスク(FD)、磁気テープなどがある。光ディスクには、DVD、DVD−RAM、CD−ROM/RWなどがある。光磁気記録媒体には、MO(Magneto Optical disk)などがある。なおプログラムを記録する記録媒体には、一時的な伝搬信号自体は含まれない。
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD、CD−ROMなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
また、上記の処理機能の少なくとも一部を、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)などの電子回路で実現することもできる。
以上、実施の形態を例示したが、実施の形態で示した各部の構成は同様の機能を有する他のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。
10 情報処理装置
11 監視部
12 制御部
13 記憶部
G1 仮想マシン数
G2 レスポンス時間
t11 スケールアウト実施時刻
t12 スケールイン実施時刻
N1、N2 稼働している仮想マシン数

Claims (7)

  1. コンピュータに、
    仮想マシンを用いたサービスを行うシステムの負荷をモニタし、
    前記負荷の変化量と閾値とを比較し、前記負荷の変化量が前記閾値を超える場合、仮想マシンの起動指示または起動処理中である仮想マシンの停止指示を行う、
    処理を実行させるプログラム。
  2. 記システムのリソースを減少させる指示を行う場合、起動処理中の仮想マシンがある場合は、起動処理中の仮想マシンの停止を指示し、起動処理中の仮想マシンがない場合は、稼働している仮想マシンの停止を指示することを特徴とする請求項1記載のプログラム。
  3. 仮想マシンのスケールインの指示を行う際には、起動処理中の仮想マシンが複数ある場合は、起動を開始した時間が遅い仮想マシンから停止を指示することを特徴とする請求項2記載のプログラム。
  4. 仮想マシンのスケールアウトまたはスケールインの指示では、前記負荷の増加時の変化が第1の閾値を超える場合は、前記スケールアウトの指示を行い、前記負荷の減少時の変化が第2の閾値を超える場合は、前記スケールインの指示を行うことを特徴とする請求項1乃至3のいずれかに記載のプログラム。
  5. 前記スケールアウトまたは前記スケールインの指示では、現在の実測負荷と、目標負荷との差分に第1の係数を乗算した第1の差分値と、現在の実測負荷と、所定時間前の実測負荷との差分に第2の係数を乗算した第2の差分値とを求めて、第1の差分値と第2の差分値との和を算出し、前記和が正数の場合は、前記正数の値をスケールアウトする仮想マシンの台数とし、前記和が負数の場合は、前記負数の値をスケールインする仮想マシンの台数とすることを特徴とする請求項4記載のプログラム。
  6. 情報処理システムで稼働させる仮想マシン数を管理するスケール管理方法であって、
    コンピュータが、
    仮想マシンを用いたサービスを行うシステムの負荷をモニタし、
    前記負荷の変化量と閾値とを比較し、前記負荷の変化量が前記閾値を超える場合、仮想マシンの起動指示または起動処理中である仮想マシンの停止指示を行う、
    スケール管理方法。
  7. 情報処理システムで稼働させる仮想マシン数を管理する情報処理装置であって、
    仮想マシンを用いたサービスを行うシステムの負荷をモニタする監視部と、
    前記負荷の変化量と閾値とを比較し、前記負荷の変化量が前記閾値を超える場合、仮想マシンの起動指示または起動処理中である仮想マシンの停止指示を行う制御部と、
    を有する情報処理装置。
JP2014073233A 2014-03-31 2014-03-31 情報処理装置、スケール管理方法およびプログラム Active JP6277827B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014073233A JP6277827B2 (ja) 2014-03-31 2014-03-31 情報処理装置、スケール管理方法およびプログラム
US14/637,491 US9594585B2 (en) 2014-03-31 2015-03-04 Virtual machine control method, apparatus, and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014073233A JP6277827B2 (ja) 2014-03-31 2014-03-31 情報処理装置、スケール管理方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2015194958A JP2015194958A (ja) 2015-11-05
JP6277827B2 true JP6277827B2 (ja) 2018-02-14

Family

ID=54190488

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014073233A Active JP6277827B2 (ja) 2014-03-31 2014-03-31 情報処理装置、スケール管理方法およびプログラム

Country Status (2)

Country Link
US (1) US9594585B2 (ja)
JP (1) JP6277827B2 (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106775917B (zh) * 2015-11-19 2020-03-24 苏宁云计算有限公司 一种虚拟机启动的方法及系统
JP6604220B2 (ja) * 2016-02-02 2019-11-13 富士通株式会社 管理装置、管理システム、及びスケーリング方法
CN106227578A (zh) * 2016-07-12 2016-12-14 腾讯科技(深圳)有限公司 一种虚拟机热迁移的方法、设备及系统
JP2018073099A (ja) 2016-10-28 2018-05-10 富士通株式会社 スケールイン処理プログラム、スケールイン処理方法および情報処理システム
JP6812787B2 (ja) 2016-12-27 2021-01-13 富士通株式会社 情報処理装置、フェールオーバ時間測定方法及びフェールオーバ時間測定プログラム
JP6885067B2 (ja) * 2017-01-16 2021-06-09 富士フイルムビジネスイノベーション株式会社 情報処理装置及び情報処理システム
US20180254998A1 (en) * 2017-03-02 2018-09-06 Alcatel Lucent Resource allocation in a cloud environment
JP2018160149A (ja) 2017-03-23 2018-10-11 富士ゼロックス株式会社 情報処理システム、オートスケーリング連携装置及びプログラム
US10509682B2 (en) 2017-05-24 2019-12-17 At&T Intellectual Property I, L.P. De-allocation elasticity application system
US9961675B1 (en) 2017-05-25 2018-05-01 At&T Intellectual Property I, L.P. Multi-layer control plane automatic resource allocation system
US10567359B2 (en) * 2017-07-18 2020-02-18 International Business Machines Corporation Cluster of secure execution platforms
JP6926768B2 (ja) * 2017-07-20 2021-08-25 富士フイルムビジネスイノベーション株式会社 情報処理装置および情報処理システム
US11126927B2 (en) * 2017-11-24 2021-09-21 Amazon Technologies, Inc. Auto-scaling hosted machine learning models for production inference
JP7011162B2 (ja) * 2018-02-05 2022-01-26 富士通株式会社 性能調整プログラム、および性能調整方法
JP7092345B2 (ja) * 2018-07-27 2022-06-28 Necプラットフォームズ株式会社 サーバ制御装置、サーバ制御方法およびサーバ制御プログラム
US20200106677A1 (en) * 2018-09-28 2020-04-02 Hewlett Packard Enterprise Development Lp Data center forecasting based on operation data
JP2020061032A (ja) * 2018-10-11 2020-04-16 富士通株式会社 データベースサーバ管理プログラム、データベースサーバ管理方法、およびデータベースシステム
US11030009B2 (en) * 2019-03-28 2021-06-08 Atlassian Pty Ltd. Systems and methods for automatically scaling compute resources based on demand
US11669361B1 (en) * 2021-04-01 2023-06-06 Ai-Blockchain, Inc. System, method and program product for optimizing computer processing power in cloud computing systems

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7334228B2 (en) * 2001-07-27 2008-02-19 International Business Machines Corporation Runtime-resource management
JP4066932B2 (ja) 2003-11-10 2008-03-26 株式会社日立製作所 予測に基づいた計算機リソース配分方法
JP4370313B2 (ja) 2006-07-10 2009-11-25 三菱電機株式会社 制御装置、制御装置のプロセス制御方法およびプロセス制御プログラム
US20100042723A1 (en) * 2008-08-12 2010-02-18 Srikanth Sundarrajan Method and system for managing load in a network
JP2010211526A (ja) * 2009-03-10 2010-09-24 Fujitsu Ltd プログラム、コンピュータ及び制御方法
JP5378946B2 (ja) * 2009-10-26 2013-12-25 株式会社日立製作所 サーバ管理装置およびサーバ管理方法
JP5332065B2 (ja) * 2010-06-11 2013-11-06 株式会社日立製作所 クラスタ構成管理方法、管理装置及びプログラム
JP2012198843A (ja) * 2011-03-23 2012-10-18 Fuji Xerox Co Ltd 仮想サーバ調整システム、仮想サーバ制御装置及びプログラム
JP5843459B2 (ja) * 2011-03-30 2016-01-13 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 情報処理システム、情報処理装置、スケーリング方法、プログラムおよび記録媒体
WO2013102975A1 (ja) * 2012-01-06 2013-07-11 日本電気株式会社 仮想マシン管理装置及び仮想マシン管理方法

Also Published As

Publication number Publication date
JP2015194958A (ja) 2015-11-05
US9594585B2 (en) 2017-03-14
US20150277956A1 (en) 2015-10-01

Similar Documents

Publication Publication Date Title
JP6277827B2 (ja) 情報処理装置、スケール管理方法およびプログラム
JP6455035B2 (ja) 負荷分散管理装置、制御方法およびプログラム
JP5817844B2 (ja) 仮想マシン管理プログラム、方法、及び装置
US10055252B2 (en) Apparatus, system and method for estimating data transfer periods for job scheduling in parallel computing
US20140359356A1 (en) Information processing apparatus and method for shutting down virtual machines
JP6075226B2 (ja) プログラム、仮想マシン管理方法および情報処理装置
JP6241300B2 (ja) ジョブスケジューリング装置、ジョブスケジューリング方法、およびジョブスケジューリングプログラム
US9342245B2 (en) Method and system for allocating a resource of a storage device to a storage optimization operation
JP5737057B2 (ja) プログラム、ジョブスケジューリング方法、および情報処理装置
US20170161117A1 (en) Apparatus and method to determine a service to be scaled out based on a predicted virtual-machine load and service importance
US9342133B2 (en) Information processing apparatus and power saving control method
JP2012190109A (ja) 情報処理装置、仮想マシン管理方法および仮想マシン管理プログラム
JP2016151852A (ja) 実行情報通知プログラム、情報処理装置および情報処理システム
JP6476969B2 (ja) ストレージ制御装置、制御プログラムおよび制御方法
JP7035858B2 (ja) マイグレーション管理プログラム、マイグレーション方法およびマイグレーションシステム
US9563651B2 (en) Storage control device and storage control method
US10754547B2 (en) Apparatus for managing disaggregated memory and method thereof
KR102469927B1 (ko) 분할 메모리 관리장치 및 방법
JP2017058710A (ja) ストレージ制御装置、ストレージ制御プログラムおよびストレージ制御方法
JP6940761B2 (ja) 情報処理装置、仮想マシン監視プログラム、および情報処理システム
JP5861715B2 (ja) データ処理装置、送信装置、スケジューリング方法、送信制御方法、スケジューリングプログラム、および送信制御プログラム
JP2013117806A (ja) Cpu割当時間管理装置及びcpu割当時間管理プログラム
JP6191162B2 (ja) サーバ装置、サービス無償利用管理方法およびサービス無償利用管理プログラム
JP6627475B2 (ja) 処理リソース制御プログラム、処理リソース制御装置、および処理リソース制御方法
JP7104327B2 (ja) 情報処理装置、仮想マシン管理プログラムおよび仮想マシン管理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170110

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171018

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171107

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171208

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180101

R150 Certificate of patent or registration of utility model

Ref document number: 6277827

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150