JP2019061450A - 情報処理装置、情報処理システム及びプログラム - Google Patents
情報処理装置、情報処理システム及びプログラム Download PDFInfo
- Publication number
- JP2019061450A JP2019061450A JP2017185062A JP2017185062A JP2019061450A JP 2019061450 A JP2019061450 A JP 2019061450A JP 2017185062 A JP2017185062 A JP 2017185062A JP 2017185062 A JP2017185062 A JP 2017185062A JP 2019061450 A JP2019061450 A JP 2019061450A
- Authority
- JP
- Japan
- Prior art keywords
- server
- server device
- connection
- information processing
- devices
- 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
Links
Images
Landscapes
- Computer And Data Communications (AREA)
Abstract
【課題】稼働している複数のサーバ装置の数が、当該複数のサーバ装置に対するリクエストを処理するのに必要な数よりも多い場合に、当該複数のサーバ装置に接続しているクライアント装置の動作を妨げることなく、稼働するサーバ装置の数を減らすこと。【解決手段】情報処理装置は、複数のサーバ装置への外部からの接続の状況を監視し、接続の数が予め定められた数以下の場合に、複数のサーバ装置のうちの第1のサーバ装置において使用されている資源の量を、複数のサーバ装置のうちの第2のサーバ装置において確保し得るならば、第1のサーバ装置への接続を第2のサーバ装置への接続に変更することを第1のサーバ装置に接続している第1のクライアント装置に指示する指示手段と、指示に応じて、第1のクライアント装置からの第1のサーバ装置への接続がなくなった場合に、第1のサーバ装置を停止させる停止手段と、を備える。【選択図】図4
Description
本発明は、情報処理装置、情報処理システム及びプログラムに関する。
特許文献1には、ハードウェアに生成されている複数の仮想マシンを管理する管理処理をコンピュータに実行させる仮想マシン管理プログラムが開示されている。管理処理は,仮想マシンへのアクセスが第1の時間発生しない場合に,仮想マシンをサスペンド制御するサスペンド工程と、サスペンド中の仮想マシンへのアクセスが発生しないにもかかわらず、サスペンド中の仮想マシンを、所定のタイミングで、リジューム制御しリフレッシュ動作に要する第2の時間経過後にサスペンド制御するリフレッシュ工程と、サスペンド中の仮想マシンへのアクセスが発生した場合に、仮想マシンをリジューム制御して、仮想マシンをリジュームさせサスペンド中に保留になったリフレッシュ動作をアクセスの処理の前に実行させるリジューム工程と、を有する。
特許文献2には、クラウドコンピューティングで提供するクラウドサービスを、当該クラウドサービスの処理を実行するサーバリソースに再配置するクラウドサービス再配置システムが開示されている。クラウドサービス再配置システムは、各サーバリソースの処理動作を監視して当該サーバリソースの負荷情報を収集するサーバメータ手段と、予め各クラウドサービスに対して設定された当該クラウドサービスの提供に必要なサーバリソースの機能条件と価格条件および環境性能条件と評価条件ならびに各条件の優先度を少なくとも含むポリシー定義情報を記憶するポリシー定義情報記憶手段と、上記サーバメータ手段が収集した各サーバリソースの負荷情報と、上記ポリシー定義情報記憶手段が記憶したポリシー定義情報に含まれる各条件情報とを照合して、各条件を満足する全てのサーバリソースを抽出し、該抽出した全てのサーバリソースから、予め当該クラウドサービスに対して定められ上記ポリシー定義情報記憶手段で記憶した上記ポリシー定義情報における最も上記優先度の高い上記条件に関する評価が最も高いサーバリソースを特定するロケータ手段と、該ロケータ手段が特定したサーバリソースに、当該クラウドサービスを再配置するリロケーション手段とを有する。
複数のサーバ装置(仮想マシン又は物理マシン)を用いてクラウドコンピューティングサービスを提供する場合、各サーバ装置は予め定められた量の資源(CPU、メモリ、ストレージなど)を有し、クライアント装置からのリクエストに応じて資源を使用したサービスを提供する。ここで、サーバ装置に接続するクライアント装置の数は経時的に変動するため、各サーバ装置における資源の使用量も経時的に変動する。そのため、全てのサーバ装置において使用されている資源の総量がサーバ装置の数を減らしても確保し得る状況が発生する場合がある。
上記の事情を鑑み、本発明は、稼働している複数のサーバ装置の数が、当該複数のサーバ装置に対するリクエストを処理するのに必要な数よりも多い場合に、当該複数のサーバ装置に接続しているクライアント装置の動作を妨げることなく、稼働するサーバ装置の数を減らすことを目的とする。
請求項1に記載の情報処理装置は、複数のサーバ装置への外部からの接続の状況を監視し、前記接続の数が予め定められた数以下の場合に、前記複数のサーバ装置のうちの第1のサーバ装置において使用されている資源の量を、前記複数のサーバ装置のうちの第2のサーバ装置において確保し得るならば、前記第1のサーバ装置への接続を前記第2のサーバ装置への接続に変更することを前記第1のサーバ装置に接続している第1のクライアント装置に指示する指示手段と、前記指示に応じて、前記第1のクライアント装置からの前記第1のサーバ装置への接続がなくなった場合に、前記第1のサーバ装置を停止させる停止手段と、を備える情報処理装置。
請求項2に記載の情報処理装置は、請求項1に記載の情報処理装置において、前記指示手段は、前記第2のサーバ装置に対して定められた優先度が前記第1のサーバ装置に対して定められた優先度よりも高い場合に限り、前記第1のサーバ装置への接続を前記第2のサーバ装置への接続に変更することを指示する。
請求項3に記載の情報処理装置は、請求項2に記載の情報処理装置において、前記優先度は、接続の料金が低いサーバ装置ほど高く定められている。
請求項4に記載の情報処理装置は、請求項2に記載の情報処理装置において、前記優先度は、処理速度が速いサーバ装置ほど高く定められている。
請求項5に記載の情報処理装置は、請求項2に記載の情報処理装置において、前記優先度は、信頼性が高いサーバ装置ほど高く定められている。
請求項6に記載の情報処理装置は、請求項1に記載の情報処理装置において、前記指示手段は、前記複数のサーバ装置のうち最も接続数が少ない第1のサーバ装置において使用されている資源の量を、前記複数のサーバ装置のうちの第2のサーバ装置において確保し得るならば、前記第1のサーバ装置への接続を前記第2のサーバ装置への接続に変更することを前記第1のサーバ装置に接続している第1のクライアント装置に指示する。
請求項7に記載の情報処理装置は、請求項6に記載の情報処理装置において、前記指示手段は、前記第1のサーバ装置に接続している全てのクライアント装置を前記第2のサーバ装置に接続し得る場合に限り、前記第1のサーバ装置への接続を前記第2のサーバ装置への接続に変更することを前記第1のサーバ装置に接続している第1のクライアント装置に指示する。
請求項8に記載の情報処理装置は、請求項1に記載の情報処理装置において、前記第1のサーバ装置への接続を前記第2のサーバ装置への接続に変更することを前記第1のサーバ装置に接続している第1のクライアント装置に指示した後に第2のクライアント装置から接続の要求を受けた場合には、前記複数のサーバ装置のうちの前記第1のサーバ装置ではないサーバ装置に前記第2のクライアント装置を接続するよう制御する制御手段を備える。
請求項9に記載の情報処理装置は、請求項1に記載の情報処理装置において、前記指示手段は、前記複数のサーバ装置への外部からの接続を切断するイベントの回数が予め定められた条件を満たした場合に、前記複数のサーバ装置のうちの第1のサーバ装置において使用されている資源の量を、前記複数のサーバ装置のうちの第2のサーバ装置において確保し得るならば、前記第1のサーバ装置への接続を前記第2のサーバ装置への接続に変更することを前記第1のサーバ装置に接続している第1のクライアント装置に指示する。
請求項10に記載の情報処理装置は、請求項9に記載の情報処理装置において、前記指示手段は、前記複数のサーバ装置への外部からの接続を切断するイベントの回数が予め定められた回数に達した場合に、前記複数のサーバ装置のうちの第1のサーバ装置において使用されている資源の量を、前記複数のサーバ装置のうちの第2のサーバ装置において確保し得るならば、前記第1のサーバ装置への接続を前記第2のサーバ装置への接続に変更することを前記第1のサーバ装置に接続している第1のクライアント装置に指示する。
請求項11に記載の情報処理システムは、複数のサーバ装置へのクライアント装置からの接続の状況を監視し、前記接続の数が予め定められた数以下の場合に、前記複数のサーバ装置のうちの第1のサーバ装置において使用されている資源の量を、前記複数のサーバ装置のうちの第2のサーバ装置において確保し得るならば、前記第1のサーバ装置への接続を前記第2のサーバ装置への接続に変更することを前記第1のサーバ装置に接続しているクライアント装置に指示する指示手段と、前記指示に応じて、前記クライアント装置からの前記第1のサーバ装置への接続がなくなった場合に、前記第1のサーバ装置を停止させる停止手段とを備える情報処理装置と、前記指示手段からの指示を受け取ったならば、前記第1のサーバ装置への接続を前記第2のサーバ装置への接続に変更する接続手段を備える前記クライアント装置と、を備える。
請求項12に記載の情報処理システムは、請求項11に記載の情報処理システムにおいて、前記接続手段は、前記指示手段からの指示を受け取ったならば、前記第2のサーバ装置に接続し、前記第2のサーバ装置にルーティングを変更してから前記第1のサーバ装置との接続を切断する。
請求項13に記載のプログラムは、コンピュータを、複数のサーバ装置への外部からの接続の状況を監視し、前記接続の数が予め定められた数以下の場合に、前記複数のサーバ装置のうちの第1のサーバ装置において使用されている資源の量を、前記複数のサーバ装置のうちの第2のサーバ装置において確保し得るならば、前記第1のサーバ装置への接続を前記第2のサーバ装置への接続に変更することを前記第1のサーバ装置に接続している第1のクライアント装置に指示する指示手段と、前記指示に応じて、前記第1のクライアント装置からの前記第1のサーバ装置への接続がなくなった場合に、前記第1のサーバ装置を停止させる停止手段、として機能させる。
請求項1、11、13に係る発明によれば、稼働している複数のサーバ装置の数が、当該複数のサーバ装置に対するリクエストを処理するのに必要な数よりも多い場合に、当該複数のサーバ装置に接続しているクライアント装置の動作を妨げることなく、稼働するサーバ装置の数を減らすことができる。
請求項2に係る発明によれば、第1のサーバ装置よりも優先度の高いサーバ装置に接続を変更することができる。
請求項3に係る発明によれば、変更前と比べて接続の料金が低いサーバ装置に接続を変更することができる。
請求項4に係る発明によれば、変更前と比べて勝利速度が速いサーバ装置に接続を変更することができる。
請求項5に係る発明によれば、変更前と比べて信頼性が高いサーバ装置に接続を変更することができる。
請求項6に係る発明によれば、最も接続数が少ないサーバ装置を停止させることができる。
請求項7に係る発明によれば、クライアント装置の動作を妨げることなく、稼働するサーバ装置の数を減らすことができる。
請求項8に係る発明によれば、第2のクライアント装置がサーバ装置への接続に失敗することを防ぐことができる。
請求項9、10に係る発明によれば、切断イベントが発生するたびに接続変更のための処理を行う場合と比べて当該処理の回数を減らすことができる。
請求項12に係る発明によれば、第1のサーバ装置との接続を切断してから第2のサーバ装置に接続する場合と比べて、接続の変更に失敗する確率を下げることができる。
請求項2に係る発明によれば、第1のサーバ装置よりも優先度の高いサーバ装置に接続を変更することができる。
請求項3に係る発明によれば、変更前と比べて接続の料金が低いサーバ装置に接続を変更することができる。
請求項4に係る発明によれば、変更前と比べて勝利速度が速いサーバ装置に接続を変更することができる。
請求項5に係る発明によれば、変更前と比べて信頼性が高いサーバ装置に接続を変更することができる。
請求項6に係る発明によれば、最も接続数が少ないサーバ装置を停止させることができる。
請求項7に係る発明によれば、クライアント装置の動作を妨げることなく、稼働するサーバ装置の数を減らすことができる。
請求項8に係る発明によれば、第2のクライアント装置がサーバ装置への接続に失敗することを防ぐことができる。
請求項9、10に係る発明によれば、切断イベントが発生するたびに接続変更のための処理を行う場合と比べて当該処理の回数を減らすことができる。
請求項12に係る発明によれば、第1のサーバ装置との接続を切断してから第2のサーバ装置に接続する場合と比べて、接続の変更に失敗する確率を下げることができる。
本発明の実施形態の一例について説明する。
図1は、情報処理システム1の構成を示す図である。情報処理システム1は、情報処理装置10と、複数のクライアント装置40を備える。複数のクライアント装置40の各々と情報処理装置10とは、例えばHTTP(Hypertext Transfer Protocol)、FTP(File Transfer Protocol)などの通信プロトコルに従って、ネットワークNWを介して通信する。ネットワークNWは、公衆網でもよく、閉域網でもよい。情報処理装置10は、ネットワークNW上にVPN(Virtual Private Network)を構築してクラウドコンピューティングサービスを提供する。
図1は、情報処理システム1の構成を示す図である。情報処理システム1は、情報処理装置10と、複数のクライアント装置40を備える。複数のクライアント装置40の各々と情報処理装置10とは、例えばHTTP(Hypertext Transfer Protocol)、FTP(File Transfer Protocol)などの通信プロトコルに従って、ネットワークNWを介して通信する。ネットワークNWは、公衆網でもよく、閉域網でもよい。情報処理装置10は、ネットワークNW上にVPN(Virtual Private Network)を構築してクラウドコンピューティングサービスを提供する。
図2は、情報処理装置10のハードウェア構成を示す図である。情報処理装置10は、制御部11、記憶部12、通信部13を備える。制御部11は、CPU(Central Processing Unit)などの演算装置と、ROM(Read Only Memory)やRAM(Random Access Memory)などの記憶装置とを備える。ROMは、ハードウェアやOS(Operating System)の起動の手順を記述したファームウェアを記憶する。RAMは、CPUが演算を実行する際のデータの記憶に用いられる。記憶部12は、例えば半導体メモリやハードディスク記憶装置などを備え、OSやアプリケーションプログラムなどのソフトウェアを記憶する。通信部13は、他の電子機器との間で通信を行うための通信I/F(Interface)を備え、ネットワークNWに接続される。なお、クライアント装置40も情報処理装置10と同様のハードウェア構成を有するため、その説明は省略する。
制御部11は、複数のOSを並行して実行することにより、情報処理装置10を複数の仮想マシン(仮想的なコンピュータ)として動作させる。図1に示される管理装置20及びサーバ装置30A、30B、30C、30D、・・・の各々が、仮想マシンである。以下、サーバ装置30A、30B、30C、30D、・・・を区別する必要のない場合には、これらをサーバ装置30と総称する。複数のサーバ装置30は、その全てが常時稼働しているとは限らず、状況に応じて管理装置20からの指示により1台以上のサーバ装置30が停止される場合がある。サーバ装置30の停止に至る手続きについては、後述する。
クライアント装置40A、40B、40C、・・・は、ネットワークNW経由で複数のサーバ装置30のいずれかに接続してサービスの提供を受ける。以下、クライアント装置40A、40B、40C、・・・を区別する必要のない場合には、これらをクライアント装置40と総称する。接続されたクライアント装置40からのリクエストに応じてサーバ装置30がアプリケーションプログラムを実行することにより、クライアント装置40の利用者(以下、サービス利用者という。)にサービスが提供される。
情報処理装置10を管理、運用する事業者(以下、サーバ管理者という。)と、アプリケーションプログラムを用いたサービスをサービス利用者に提供する事業者(以下、サービス提供者という。)とは、別々の事業者である。サービス提供者は、情報処理装置10の資源の使用量に応じた料金(以下、サーバ料金という。)をサーバ管理者に支払う。なお、一般に、サーバ管理者は複数のサービス提供者と契約を結び、契約した複数のサービス提供者により情報処理装置10が共同で使用され、各サービス提供者がサービスを提供するアプリケーションプログラムは1種類とは限らないが、ここでは、理解を容易にするため、サービス提供者は1社、アプリケーションプログラムは1種類と仮定する。
サービス利用者は、サービスの利用に対して予め定められた料金(以下、サービス料金という。)をサービス提供者に支払う。サービス料金とサーバ料金との間に直接の関係はない。
複数のサーバ装置30の各々(前述のとおり、仮想マシンである)には、情報処理装置10が備える資源(CPU、メモリ、ストレージ、伝送路などのリソース)が割り当てられるが、割り当てられる資源の量(CPU使用量、メモリ容量、ストレージ容量、帯域幅、最大接続数など)は全てのサーバ装置30で同一とは限らない。ここでは、理解を容易にするために、割り当てられる資源の量がサーバ装置30毎に異なっている場合を想定する。
クライアント装置40からサーバ装置30への接続が発生したならば、サーバ管理者がサービス提供者に課金する。以下、課金方式の一例を示す。1回の接続につき課金される料金を接続単価と呼ぶ。接続単価は、サーバ装置30に割り当てられた資源の量に基づいて定められる。例えば、一般に、割り当てられた資源の量が多いサーバ装置30ほど処理速度の速いサービスが提供されるから、接続単価が高く設定される。
記憶部12に記憶されているアプリケーションプログラムは、全てのサーバ装置30において実行可能である。つまり、複数のサーバ装置30の各々が提供し得るサービスの内容に差異はない。ただし、サービスを提供する条件は、サーバ装置30により異なる。例えば、上記のとおり接続単価がサーバ装置30毎に定められているため、サービス利用者が同一のアプリケーションを利用しても、接続したサーバ装置30によって課金される金額が異なる場合がある。また、割り当てられる資源の量が多いほど処理速度が速くなるため、サービス利用者が同一のアプリケーションを利用しても、接続したサーバ装置30によって処理速度が異なる場合がある。
クライアント装置40から接続のリクエストを受信すると、管理装置20は、接続先として複数のサーバ装置30のいずれかを選択し、リクエストの送信元のクライアント装置40に対して、選択されたサーバ装置30への接続を指示する。サーバ装置30は、決められたアルゴリズム、例えば、接続単価、処理速度、割り当てられた資源の使用率などの指標を用いたアルゴリズムに従って選択される。このアルゴリズムの具体例の説明は割愛する。
図3は、管理テーブルを示す図である。管理装置20は、管理テーブルを用いてクライアント装置40からサーバ装置30への接続の管理を行う。管理テーブルにおいては、各サーバ装置30に対して、優先度、最大接続数、実接続数、計画接続数が関連付けられる。優先度とは、新たな接続先を選択する場合の選択の優先度を示す。本実施形態では、優先度の値が小さいほど優先度が高いことを示している。優先度が高いサーバ装置30ほど、新たな接続先として優先的に選択される。
優先度は、サーバ管理者により設定される。サーバ管理者は、管理運用上又は技術上の理由から、優先的に接続させたいサーバ装置ほど高い優先度を設定する。具体的には、優先度は、接続単価に基づいて設定されてもよい。例えば、接続単価が低いサーバ装置30ほど高い優先度が設定されてもよい。あるいは、優先度は、処理速度に基づいて設定されてもよい。例えば、処理速度が速いサーバ装置30ほど高い優先度が設定されてもよい。
最大接続数は、サーバ装置30に許される接続の数の最大値である。最大接続数は、サーバ装置30に割り当てられた資源の量とは無関係に設定される。実接続数は、サーバ装置30への実際の接続数である。計画接続数は、接続先の変更を計画する場合の変更後の接続数である。接続先の変更については、後述する。実接続数と計画接続数は、最大接続数を越えない値である。
図4は、接続管理処理の流れ図である。接続管理処理の手順を記述したプログラムが記憶部12に記憶されており、情報処理装置10の稼働中に制御部11がこのプログラムに従って接続管理処理を実行する。以下の説明では、接続管理処理の実行の主体を管理装置20とする。
ステップS101においては、管理装置20が、管理テーブルを優先度の高い順にソートする。各サーバ装置30の優先度がサーバ管理者により変更される場合があるから、管理テーブルにおいて各サーバ装置30のレコードが優先度の高い順にソートされた状態が常に維持されるとは限らない。そのため、接続管理処理を実行する場合には、最初に管理テーブルを優先度の高い順にソートする処理が実行される。ソートが実行されると、レコード番号も昇順に更新される。なお、図3(a)は、ソートされた状態の管理テーブルを示している。
ステップS102においては、管理装置20が、各サーバ装置30における接続イベント又は切断イベントの有無を判定する。接続イベントとは、クライアント装置40からサーバ装置30への接続のリクエストである。切断イベントとは、クライアント装置40からサーバ装置30への接続を切断するリクエストである。接続イベント又は切断イベントが発生した場合に、サーバ装置30は、管理装置20に対して、接続イベント又は切断イベントが発生した旨を通知する。この通知があった場合には(ステップS102:YES)、管理装置20はステップS103の処理に移行する。
ステップS103においては、管理装置20が、管理テーブルの実接続数を更新する。具体的には、接続イベントの場合には、接続イベントを通知したサーバ装置30の実接続数に1を加算する。切断イベントの場合には、切断イベントを通知したサーバ装置30の実接続数から1を減算する。
ステップS104においては、管理装置20は、イベントの種別が接続イベントであった場合には(ステップS104:NO)、ステップS102の処理に移行し、イベントの種別が切断イベントであった場合には(ステップS104:YES)、ステップS105の処理に移行する。上記のとおり、本実施形態では、イベントの種別が切断イベントであったことを契機としてステップS105以降の処理を実行するが、この構成は本発明の一例に過ぎない。別の例として、実接続数が最大接続数未満のサーバ装置30が存在するならば、切断イベントが発生しなくてもステップS105以降の処理を実行するように構成されてもよい。また、最大接続数よりも小さい閾値をサーバ装置30ごとに予め定めておき、実接続数が閾値以下のサーバ装置30が存在するならば、切断イベントが発生しなくてもステップS105以降の処理を実行するように構成されてもよい。換言すれば、複数のサーバ装置への接続数が予め定められた数以下の場合にステップS105以降の処理が実行されればよい。
ステップS105においては、管理装置20が、管理テーブルの実接続数を計画接続数の列にコピーする。
図3(b)は、コピー後の管理テーブルを示す図である。
図3(b)は、コピー後の管理テーブルを示す図である。
ステップS106においては、管理装置20が、レコード番号nの初期値として、2を設定する。
ステップS107においては、管理装置20が、管理テーブルのレコード番号がnのサーバ装置30の計画接続数NAと、レコード番号が1からn−1までのサーバ装置30のうち、計画接続数が0でないサーバ装置30の空き接続数の総数NBを算出する。空き接続数は、最大接続数から計画接続数を差し引いた値である。
ステップS108においては、管理装置20が、NAがNBよりも大きいか否かを判定し、NAがNBよりも大きい場合には(ステップS108:YES)、ステップS109の処理に移行し、NAがNBよりも大きくない場合には(ステップS108:NO)、ステップS110の処理に移行する。図3(b)の例では、レコード番号が2のサーバ装置30Bの計画接続数がNA=25、レコード番号が1のサーバ装置30Aの空き接続数がNB=20となり、NAがNBよりも大きいから、ステップS109の処理に移行する。
ステップS109においては、管理装置20が、レコード番号nに1を加算し、ステップS107の処理に移行する。図3(b)の例では、n=2に1が加算されて、n=3となる。この場合、ステップS107において、レコード番号が3のサーバ装置30Cの計画接続数がNA=31、レコード番号が1から2のサーバ装置30A、30Bの空き接続数の総数がNB=45となり、NAがNBよりも大きくないから、ステップS110の処理に移行する。
ステップS110においては、管理装置20が、管理テーブルのレコード番号がnのサーバ装置30の計画接続数を、レコード番号が1からn−1までのサーバ装置30のうち、計画接続数が0でないサーバ装置30に移し替える。図3(b)の例では、レコード番号が3のサーバ装置30Cの計画接続数31を、レコード番号が1から2までのサーバ装置30A、30Bのうち、計画接続数が0でないレコード番号が1、2のサーバ装置30A、30Bに移し替える。計画接続数の移し替えは、サーバ装置30の優先度が高い順に行う。この例では、レコード番号が1のサーバ装置30Aは、優先度が1、空き接続数が20であり、レコード番号が2のサーバ装置30Bは、優先度が2、空き接続数が25である。従って、レコード番号が3のサーバ装置30Cの計画接続数31のうちの20をレコード番号が1のサーバ装置30Aに移し替え、残りの11をレコード番号が2のサーバ装置30Bに移し替える。
図3(c)は、計画接続数の移し替え後の管理テーブルを示す図である。計画接続数の移し替えの結果、サーバ装置30A、30B、30Cの計画接続数は、それぞれ100、36、0に更新される。
ステップS111においては、管理装置20が、管理テーブルのレコード数がレコード番号nの値より多いか否かを判定する。レコード数がnより多い場合には(ステップS111:YES)、ステップS109の処理に移行し、レコード数がnより多くない場合には(ステップS111:NO)、ステップS112の処理に移行する。
ステップS112においては、管理装置20が、計画接続数が実接続数よりも少ないサーバ装置30から、計画接続数が実接続数より多いサーバ装置30へ接続を変更するための制御を行う。図3(c)の例では、計画接続数が実接続数よりも少ないサーバ装置30はサーバ装置30Cであり、計画接続数が実接続数より多いサーバ装置30はサーバ装置30A、30Bである。管理装置20は、サーバ装置30Cに接続しているクライアント装置40に対して、サーバ装置30A又は30Bに接続を変更することを促す指示を、サーバ装置30Cを介して送信する(指示手段の一例)。例えば、サーバ装置30Cに接続している31台のクライアント装置40のうちの20台に対して、サーバ装置30Aに接続を変更することを指示し、31台のクライアント装置40のうちの11台に対して、サーバ装置30Bに接続を変更することを指示する。
ステップS113においては、計画接続数が0のサーバ装置30を停止させ(停止手段の一例)、ステップS102の処理に移行する。図3(c)の例では、サーバ装置30Cの計画接続数が0であるから、サーバ装置30Cを停止させる。サーバ装置30の停止とは、サーバ料金が発生しない状態又はサーバ料金が軽減される状態にサーバ装置30を遷移させることを意味する。サーバ料金が発生しない状態又はサーバ料金が軽減される状態とは、実際には、サーバ管理者とサービス提供者との契約によって定義される。本実施形態では、サーバ装置30は仮想マシンであるから、サーバ装置30の停止とは、例えば、サーバ装置30のOSを停止させ、サーバ装置30に割り当てられた資源を解放することを意味する。
なお、サーバ装置30Cへの接続をサーバ装置30A又は30Bへの接続に変更することをクライアント装置40に指示した後に他のクライアント装置40から接続の要求を受けた場合には、サーバ装置30Cではないサーバ装置30A又は30Bに他のクライアント装置40を接続するよう制御してもよい。
また、接続を変更する対象となるサーバ装置(上記の例では30C)は、上記に限らない。たとえば、ステップS106、S109、S111の処理を省略し、単純に実接続数が最も少ないサーバ装置の実接続数をNAとし、その他のサーバ装置のうち計画接続数が0でないサーバ装置の空き接続数の総数NBとし、NA<NBの場合にはS110に進み、そうでない場合はS102に戻るように制御してももちろん構わない。この構成の場合、実接続数が最も少ないサーバ装置に接続している全てのクライアント装置を他のサーバ装置に接続し得る場合に限り、接続の変更を指示するように制御してもよい。または、接続数を時系列で管理し、実接続数の減少の程度がもっとも大きいサーバ装置の実接続数をNAとし、その他のサーバ装置の空き接続数の総数をNBとしてもよい。
図5は、接続先を変更する処理の流れ図である(接続手段の一例)。ステップS201においては、クライアント装置40が、接続変更の指示を受信する。この指示は、ステップS112において管理装置20が送信した指示である。ステップS202においては、クライアント装置40が、新たな接続先(この例では、サーバ装置30A又は30B)に接続する。ステップS203においては、クライアント装置40が、新たな接続先をリクエストの送信先とするように、ルーティングを変更する。ステップS204においては、クライアント装置40が、従前の接続先であるサーバ装置30Cへの接続を切断する。
以上のとおり、本実施形態は、複数のサーバ装置への接続数が予め定められた数以下の場合に、複数のサーバ装置のうちの第1のサーバ装置への接続数を、複数のサーバ装置のうちの第1のサーバ装置よりも予め定められた優先度が高い1台以上の第2のサーバ装置において確保し得るならば、第1のサーバ装置への接続を第2のサーバ装置への接続に変更することを第1のサーバ装置に接続しているクライアント装置に指示するように構成されている。ここで、第1のサーバ装置では、第1のサーバ装置が有する資源から、接続数に応じた資源が確保され、確保された資源を使用してアプリケーションプログラムが実行されている。従って、第1のサーバ装置への接続数と、第1のサーバ装置において使用されている資源の量との間には、相関関係がある。つまり、本実施形態で例示された情報処理装置10は、複数のサーバ装置への外部からの接続の状況を監視し、接続の数が予め定められた数以下の場合に、複数のサーバ装置のうちの第1のサーバ装置において使用されている資源の量を、複数のサーバ装置のうちの第1のサーバ装置よりも予め定められた優先度が高い1台以上の第2のサーバ装置において確保し得るならば、第1のサーバ装置への接続を第2のサーバ装置への接続に変更することを第1のサーバ装置に接続しているクライアント装置に指示する指示手段を備える情報処理装置の一例である。
本実施形態によれば、複数のサーバ装置を備えるシステムへの接続の数が予め定められた数以下の場合に、稼働するサーバ装置の数が減らされる。稼働するサーバ装置の数が減らされることにより、サーバ管理者がサービス提供者に請求するサーバ料金が軽減される可能性がある。サーバ料金が軽減されると、サービス提供者がサービス利用者に請求するサービス料金も値下げされる可能性があり、サービス料金が値下げされるとサービス利用者の経済的負担が軽減される。
上記の実施形態を以下の変形例のように変形してもよい。また、複数の変形例を組み合わせてもよい。
<変形例1>
図6は、接続先を変更する処理の流れ図である。上記の実施形態(図5)では、クライアント装置40が新たな接続先への接続後に従前の接続先との接続を切断する例を示したが、本変形例では、クライアント装置40が接続変更の指示を受信したならば(ステップS301)、従前の接続先との接続を切断し(ステップS302)、新たな接続先に接続する(ステップS303)。
図6は、接続先を変更する処理の流れ図である。上記の実施形態(図5)では、クライアント装置40が新たな接続先への接続後に従前の接続先との接続を切断する例を示したが、本変形例では、クライアント装置40が接続変更の指示を受信したならば(ステップS301)、従前の接続先との接続を切断し(ステップS302)、新たな接続先に接続する(ステップS303)。
<変形例2>
上記の実施形態では、切断イベントが発生するたびに接続の変更のための処理を実行する例(図4参照)を示したが、切断イベントの回数を計測し、切断イベントの回数が予め定められた条件を満たした場合に接続の変更のための処理を実行するように構成されてもよい。例えば、切断イベントの回数が予め定められた回数に達した場合に接続の変更のための処理を実行するように構成されてもよい。空き接続数が増えた場合には、計画接続数の移し替えに成功する確率が高くなる。
上記の実施形態では、切断イベントが発生するたびに接続の変更のための処理を実行する例(図4参照)を示したが、切断イベントの回数を計測し、切断イベントの回数が予め定められた条件を満たした場合に接続の変更のための処理を実行するように構成されてもよい。例えば、切断イベントの回数が予め定められた回数に達した場合に接続の変更のための処理を実行するように構成されてもよい。空き接続数が増えた場合には、計画接続数の移し替えに成功する確率が高くなる。
<変形例3>
管理装置20及びサーバ装置30が物理マシン(物理的なコンピュータ)で構成されてもよい。この場合、サーバ装置30によって信頼性が異なる場合がある。例えば、ハードウェアの構成、累積の稼働期間の長さなどによって、障害が発生する確率、障害の発生から復旧までの期間の長さなどが異なる場合がある。よって、サーバ装置30が物理マシンで構成される場合には、優先度が信頼性に基づいて定められてもよい。例えば、信頼性が高いサーバ装置30ほど高い優先度が設定されてもよい。サーバ装置30が物理マシンである場合、サーバ装置30の停止とは、例えば、サーバ装置30への電力供給を停止することでもよく、サーバ装置30の消費電力を低下させてCPUを休止させることでもよい。
管理装置20及びサーバ装置30が物理マシン(物理的なコンピュータ)で構成されてもよい。この場合、サーバ装置30によって信頼性が異なる場合がある。例えば、ハードウェアの構成、累積の稼働期間の長さなどによって、障害が発生する確率、障害の発生から復旧までの期間の長さなどが異なる場合がある。よって、サーバ装置30が物理マシンで構成される場合には、優先度が信頼性に基づいて定められてもよい。例えば、信頼性が高いサーバ装置30ほど高い優先度が設定されてもよい。サーバ装置30が物理マシンである場合、サーバ装置30の停止とは、例えば、サーバ装置30への電力供給を停止することでもよく、サーバ装置30の消費電力を低下させてCPUを休止させることでもよい。
<変形例4>
コンピュータに上記の処理を実行させるためのプログラムは、例えば、光記録媒体、半導体メモリなどのコンピュータに読取り可能な記録媒体に持続的に記憶された状態で提供されてもよいし、インターネット等のネットワークを介して提供されてもよい。本発明に係るプログラムが記録媒体に持続的に記憶された状態で提供される場合、コンピュータが当該プログラムを記録媒体から読み取り用いる。また、本発明に係るプログラムがネットワークを介して提供される場合、コンピュータが当該プログラムを配信元の装置から受信して用いる。
コンピュータに上記の処理を実行させるためのプログラムは、例えば、光記録媒体、半導体メモリなどのコンピュータに読取り可能な記録媒体に持続的に記憶された状態で提供されてもよいし、インターネット等のネットワークを介して提供されてもよい。本発明に係るプログラムが記録媒体に持続的に記憶された状態で提供される場合、コンピュータが当該プログラムを記録媒体から読み取り用いる。また、本発明に係るプログラムがネットワークを介して提供される場合、コンピュータが当該プログラムを配信元の装置から受信して用いる。
1…情報処理システム、10…情報処理装置、11…制御部、12…記憶部、13…通信部、20…管理装置、30…サーバ装置、40…クライアント装置
Claims (13)
- 複数のサーバ装置への外部からの接続の状況を監視し、前記接続の数が予め定められた数以下の場合に、前記複数のサーバ装置のうちの第1のサーバ装置において使用されている資源の量を、前記複数のサーバ装置のうちの第2のサーバ装置において確保し得るならば、前記第1のサーバ装置への接続を前記第2のサーバ装置への接続に変更することを前記第1のサーバ装置に接続している第1のクライアント装置に指示する指示手段と、
前記指示に応じて、前記第1のクライアント装置からの前記第1のサーバ装置への接続がなくなった場合に、前記第1のサーバ装置を停止させる停止手段と、
を備える情報処理装置。 - 前記指示手段は、前記第2のサーバ装置に対して定められた優先度が前記第1のサーバ装置に対して定められた優先度よりも高い場合に限り、前記第1のサーバ装置への接続を前記第2のサーバ装置への接続に変更することを指示する、
請求項1に記載の情報処理装置。 - 前記優先度は、接続の料金が低いサーバ装置ほど高く定められている、
請求項2に記載の情報処理装置。 - 前記優先度は、処理速度が速いサーバ装置ほど高く定められている、
請求項2に記載の情報処理装置。 - 前記優先度は、信頼性が高いサーバ装置ほど高く定められている、
請求項2に記載の情報処理装置。 - 前記指示手段は、前記複数のサーバ装置のうち最も接続数が少ない第1のサーバ装置において使用されている資源の量を、前記複数のサーバ装置のうちの第2のサーバ装置において確保し得るならば、前記第1のサーバ装置への接続を前記第2のサーバ装置への接続に変更することを前記第1のサーバ装置に接続している第1のクライアント装置に指示する、
請求項1に記載の情報処理装置。 - 前記指示手段は、前記第1のサーバ装置に接続している全てのクライアント装置を前記第2のサーバ装置に接続し得る場合に限り、前記第1のサーバ装置への接続を前記第2のサーバ装置への接続に変更することを前記第1のサーバ装置に接続している第1のクライアント装置に指示する、
請求項6に記載の情報処理装置。 - 前記第1のサーバ装置への接続を前記第2のサーバ装置への接続に変更することを前記第1のサーバ装置に接続している第1のクライアント装置に指示した後に第2のクライアント装置から接続の要求を受けた場合には、前記複数のサーバ装置のうちの前記第1のサーバ装置ではないサーバ装置に前記第2のクライアント装置を接続するよう制御する制御手段を備える、
請求項1に記載の情報処理装置。 - 前記指示手段は、前記複数のサーバ装置への外部からの接続を切断するイベントの回数が予め定められた条件を満たした場合に、前記複数のサーバ装置のうちの第1のサーバ装置において使用されている資源の量を、前記複数のサーバ装置のうちの第2のサーバ装置において確保し得るならば、前記第1のサーバ装置への接続を前記第2のサーバ装置への接続に変更することを前記第1のサーバ装置に接続している第1のクライアント装置に指示する、
請求項1に記載の情報処理装置。 - 前記指示手段は、前記複数のサーバ装置への外部からの接続を切断するイベントの回数が予め定められた回数に達した場合に、前記複数のサーバ装置のうちの第1のサーバ装置において使用されている資源の量を、前記複数のサーバ装置のうちの第2のサーバ装置において確保し得るならば、前記第1のサーバ装置への接続を前記第2のサーバ装置への接続に変更することを前記第1のサーバ装置に接続している第1のクライアント装置に指示する、
請求項9に記載の情報処理装置。 - 複数のサーバ装置へのクライアント装置からの接続の状況を監視し、前記接続の数が予め定められた数以下の場合に、前記複数のサーバ装置のうちの第1のサーバ装置において使用されている資源の量を、前記複数のサーバ装置のうちの第2のサーバ装置において確保し得るならば、前記第1のサーバ装置への接続を前記第2のサーバ装置への接続に変更することを前記第1のサーバ装置に接続しているクライアント装置に指示する指示手段と、
前記指示に応じて、前記クライアント装置からの前記第1のサーバ装置への接続がなくなった場合に、前記第1のサーバ装置を停止させる停止手段と
を備える情報処理装置と、
前記指示手段からの指示を受け取ったならば、前記第1のサーバ装置への接続を前記第2のサーバ装置への接続に変更する接続手段を備える前記クライアント装置と、
を備える情報処理システム。 - 前記接続手段は、前記指示手段からの指示を受け取ったならば、前記第2のサーバ装置に接続し、前記第2のサーバ装置にルーティングを変更してから前記第1のサーバ装置との接続を切断する、
請求項11に記載の情報処理システム。 - コンピュータを、
複数のサーバ装置への外部からの接続の状況を監視し、前記接続の数が予め定められた数以下の場合に、前記複数のサーバ装置のうちの第1のサーバ装置において使用されている資源の量を、前記複数のサーバ装置のうちの第2のサーバ装置において確保し得るならば、前記第1のサーバ装置への接続を前記第2のサーバ装置への接続に変更することを前記第1のサーバ装置に接続している第1のクライアント装置に指示する指示手段と、
前記指示に応じて、前記第1のクライアント装置からの前記第1のサーバ装置への接続がなくなった場合に、前記第1のサーバ装置を停止させる停止手段、
として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017185062A JP2019061450A (ja) | 2017-09-26 | 2017-09-26 | 情報処理装置、情報処理システム及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017185062A JP2019061450A (ja) | 2017-09-26 | 2017-09-26 | 情報処理装置、情報処理システム及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019061450A true JP2019061450A (ja) | 2019-04-18 |
Family
ID=66177432
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017185062A Pending JP2019061450A (ja) | 2017-09-26 | 2017-09-26 | 情報処理装置、情報処理システム及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019061450A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115334136A (zh) * | 2022-07-05 | 2022-11-11 | 北京天融信网络安全技术有限公司 | 一种连接老化控制方法、系统、设备及存储介质 |
-
2017
- 2017-09-26 JP JP2017185062A patent/JP2019061450A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115334136A (zh) * | 2022-07-05 | 2022-11-11 | 北京天融信网络安全技术有限公司 | 一种连接老化控制方法、系统、设备及存储介质 |
CN115334136B (zh) * | 2022-07-05 | 2024-02-02 | 北京天融信网络安全技术有限公司 | 一种连接老化控制方法、系统、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10051042B2 (en) | System and method for hand-offs in cloud environments | |
US9755990B2 (en) | Automated reconfiguration of shared network resources | |
KR102273413B1 (ko) | 네트워크 업데이트의 동적 스케줄링 기법 | |
JP4230673B2 (ja) | サービス管理装置 | |
EP2710470B1 (en) | Extensible centralized dynamic resource distribution in a clustered data grid | |
US10616139B1 (en) | Reducing quota access | |
JP5664098B2 (ja) | 複合イベント分散装置、複合イベント分散方法および複合イベント分散プログラム | |
Balasangameshwara et al. | Performance-driven load balancing with a primary-backup approach for computational grids with low communication cost and replication cost | |
US20190037027A1 (en) | Server connection capacity management | |
JP6190969B2 (ja) | マルチテナントリソース調停方法 | |
JP2008158628A (ja) | 運用実績評価装置、運用実績評価方法、およびプログラム | |
US20150319050A1 (en) | Method and apparatus for a fully automated engine that ensures performance, service availability, system availability, health monitoring with intelligent dynamic resource scheduling and live migration capabilities | |
WO2014024863A1 (ja) | 多階層の各ノードを考慮した負荷分散方法 | |
JP2013506908A (ja) | 企業ネットワーク内の割り当てられたクラウドリソースの動的な負荷分散およびスケーリング | |
US20100251258A1 (en) | Recording medium having load balancing program recorded thereon, load balancing apparatus and method thereof | |
WO2018131556A1 (ja) | リソース設定制御装置、リソース設定制御システム、リソース設定制御方法、および、コンピュータ読み取り可能記録媒体 | |
US20230216887A1 (en) | Forecast-Based Permissions Recommendations | |
KR20200080458A (ko) | 클라우드 멀티-클러스터 장치 | |
JP2018055518A (ja) | ディザスタリカバリシステム | |
JP6011786B2 (ja) | 分散ストレージシステム、分散ストレージデータ配置制御方法及び分散ストレージデータ配置制御用プログラム | |
Keerthika et al. | A multiconstrained grid scheduling algorithm with load balancing and fault tolerance | |
JP2019061450A (ja) | 情報処理装置、情報処理システム及びプログラム | |
US20120054751A1 (en) | Disposition determination technique | |
JP6835683B2 (ja) | 分散方法 | |
JP6020803B2 (ja) | 分散ストレージシステム、分散ストレージデータ移動制御方法及び分散ストレージデータ移動制御用プログラム |