JP2016177324A - 情報処理装置、情報処理システム、情報処理方法、及びプログラム - Google Patents

情報処理装置、情報処理システム、情報処理方法、及びプログラム Download PDF

Info

Publication number
JP2016177324A
JP2016177324A JP2015054676A JP2015054676A JP2016177324A JP 2016177324 A JP2016177324 A JP 2016177324A JP 2015054676 A JP2015054676 A JP 2015054676A JP 2015054676 A JP2015054676 A JP 2015054676A JP 2016177324 A JP2016177324 A JP 2016177324A
Authority
JP
Japan
Prior art keywords
resource group
cluster
computing
calculation
computing resource
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
JP2015054676A
Other languages
English (en)
Inventor
一寿 有ヶ谷
Kazuhisa Arigaya
一寿 有ヶ谷
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2015054676A priority Critical patent/JP2016177324A/ja
Priority to US15/067,433 priority patent/US10338971B2/en
Publication of JP2016177324A publication Critical patent/JP2016177324A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2025Failover techniques using centralised failover control functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2035Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant without idle spare hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2043Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant where the redundant components share a common memory address space

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Hardware Redundancy (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)

Abstract

【課題】計算資源を効率的に使用可能とすること。【解決手段】それぞれが相互に負荷分散を図る複数の計算資源を含む、複数の計算資源群とネットワークを介して接続される情報処理装置は、前記各計算資源群に属する各計算資源の状態を監視する監視部と、前記監視部によって監視される前記各計算資源の状態に基づいて、使用できない計算資源の割合が閾値以上である計算資源群を特定する特定部と、前記特定部によって計算資源群が特定されなかった場合には、いずれかの計算資源群に対する要求の割り当て先を、当該計算資源群に属する計算資源の中から選択し、前記特定部によって計算資源群が特定された場合には、当該計算資源群に対する要求の割り当て先を、当該計算資源群において使用可能な計算資源と、他の計算資源群に属する計算資源との中から選択する選択部と、を有する。【選択図】図3

Description

本発明は、情報処理装置、情報処理システム、情報処理方法、及びプログラムに関する。
現在、複数のサーバを接続したクラスタ構成として、負荷分散を行うロードバランスクラスタや、システムを冗長化するフェイルオーバクラスタ等が知られている。
しかし、今までのロードバランスクラスタでは、クラスタを構成するノードが故障によって大きく数を減らすと、性能が大きく低下する。
また、フェイルオーバクラスタ構成では、動作中の運用系とは別に、待機系のノードを用意する必要があり、正常動作中はリソースが無駄になるという問題があった。
本発明は、上記の点に鑑みてなされたものであって、計算資源を効率的に使用可能とすることを目的とする。
そこで上記課題を解決するため、それぞれが相互に負荷分散を図る複数の計算資源を含む、複数の計算資源群とネットワークを介して接続される情報処理装置は、前記各計算資源群に属する各計算資源の状態を監視する監視部と、前記監視部によって監視される前記各計算資源の状態に基づいて、使用できない計算資源の割合が閾値以上である計算資源群を特定する特定部と、前記特定部によって計算資源群が特定されなかった場合には、いずれかの計算資源群に対する要求の割り当て先を、当該計算資源群に属する計算資源の中から選択し、前記特定部によって計算資源群が特定された場合には、当該計算資源群に対する要求の割り当て先を、当該計算資源群において使用可能な計算資源と、他の計算資源群に属する計算資源との中から選択する選択部と、を有する。
計算資源を効率的に使用可能とすることができる。
本発明の実施の形態における情報処理システムの構成例を示す図である。 本発明の実施の形態における管理サーバのハードウェア構成例を示す図である。 本発明の実施の形態における管理サーバの機能構成例を示す図である。 いずれかのクラスタに対するリクエストに応じて実行される処理手順の一例を説明するためのシーケンス図である。 クラスタ情報記憶部の構成例を示す図である。 ノード情報記憶部の構成例を示す図である。 クラスタ間のフェイルオーバ及びフェイルバックの制御処理の処理手順の一例を説明するためのフローチャートである。 フェイルオーバ時におけるクラスタ情報記憶部及びノード情報記憶部の更新例を示す図である。 フェイルオーバ元のクラスタに対するリクエストに応じて実行される処理手順の一例を説明するためのシーケンス図である。
以下、図面に基づいて本発明の実施の形態を説明する。図1は、本発明の実施の形態における情報処理システムの構成例を示す図である。図1において、情報処理システム1は、クラスタ20−1〜クラスタ20−n等(以下、それぞれを区別しない場合、単に「クラスタ20」という。)の複数のクラスタ20と、管理サーバ10とを含む。各クラスタ20と管理サーバ10とは、LAN(Local Area Network)等のネットワークを介して通信可能に接続される。また、各クラスタ20は、LAN等のネットワークを介して相互に通信可能に接続される。更に、クラスタ20は、LAN又はインターネット等のネットワークを介して、1以上のクライアント装置40に接続される。
クライアント装置40は、各クラスタ20に対してリクエスト(要求)を送信する装置である。例えば、PC(Personal Computer)、スマートフォン、タブレット端末等がクライアント装置40であってもよいし、複合機、プリンタ、スキャナ等の画像形成装置がクライアント装置40であってもよい。また、その他の機器がクライアント装置40であってもよい。
各クラスタ20のそれぞれは、負荷分散を図るためにクラスタリングされた複数の計算ノード22を含むことで、ロードバランスクラスタを構成する。すなわち、同一のクラスタ20に属する各計算ノード22は、同じ機能に関する処理を実行可能である。但し、各クラスタ20は、相互に同じ処理が実行可能であるとは限らない。なお、本実施の形態において、基本的に、各クラスタ20は、運用系である。
各計算ノード22は、例えば、Webサーバ、データベースサーバ、プリントサーバ、スキャンサーバとして機能してもよい。また、各計算ノード22は、科学技術演算を行ってもよい。プリントサーバとは、クライアント装置40から送信される印刷データをスプールするコンピュータである。また、スキャンサーバとは、画像形成装置としてのクライアント装置40において原稿から読み取られた画像データを記憶するコンピュータである。但し、各計算ノード22は、必ずしもそれぞれがPU、主記憶装置、及び補助記憶装置等を備えたコンピュータでなくてもよい。CPUごと又はCPUコアごとに計算ノード22が区別されてもよい。
各クラスタ20は、また、1つのゲートウェイ21を含む。各ゲートウェイ21は、当該ゲートウェイ21が属するクラスタ20に対する、クライアント装置40からのリクエストを受信する。各ゲートウェイ21は、また、受遺したリクエストの割当先の計算ノード22を管理サーバ10に問い合わせる。
なお、各クラスタ20のゲートウェイ21の符号の末尾には、当該ゲートウェイ21が属するクラスタ20の符号の枝番と同じ枝番が付されている。また、各計算ノード22の符号の枝番の10の位の値は、当該計算ノード22が属するクラスタ20の符号の枝番と同じ値である。各計算ノード22の符号の枝番の1の位の値は、同じクラスタ20内における各計算ノード22を区別するための番号である。
管理サーバ10は、各クラスタ20に属する計算ノード22の状態を監視し、状態の監視結果に基づいて、クライアント装置40からの各クラスタ20に対する要求の割り当て先の計算ノード22を選択する1以上のコンピュータである。
図2は、本発明の実施の形態における管理サーバのハードウェア構成例を示す図である。図2の管理サーバ10は、それぞれバスBで相互に接続されているドライブ装置100、補助記憶装置102、メモリ装置103、CPU104、及びインタフェース装置105等を有する。
管理サーバ10での処理を実現するプログラムは、CD−ROM等の記録媒体101によって提供される。プログラムを記憶した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従って管理サーバ10に係る機能を実行する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。
図3は、本発明の実施の形態における管理サーバの機能構成例を示す図である。図3において、管理サーバ10は、クラスタ管理部11、及びクラスタ20ごとのノード管理部12等を有する。これら各部は、管理サーバ10にインストールされる1以上のプログラムが、CPU104に実行させる処理により実現される。管理サーバ10は、また、クラスタ情報記憶部13、及びクラスタ20ごとのノード情報記憶部14等を利用する。クラスタ情報記憶部13及び各ノード情報記憶部14は、例えば、補助記憶装置102、又は管理サーバ10にネットワークを介して接続可能な記憶装置等を用いて実現可能である。
各ノード管理部12は、当該ノード管理部12が対応するクラスタ20に属する各計算ノード22の状態(負荷状態や故障の有無(使用の可否)等)を監視し、当該各計算ノード22の状態を示す情報を、ノード情報記憶部14に記憶する。ノード情報記憶部14には、各ノードに属する計算ノード22ごとに、当該計算ノード22の識別情報や当該計算ノード22の状態を示す情報等を記憶する。ノード管理部12は、また、ノード情報記憶部14に記憶された情報に基づいて、当該ノード管理部12に対応するクラスタ20に対するリクエストの割当先の計算ノード22を選択する。なお、各ノード管理部12及び各ノード情報記憶部14の符号には、それぞれが対応するクラスタ20と同じ枝番が付されている。
クラスタ管理部11は、クラスタ管理部11は、各ノード情報記憶部14に記憶された情報に基づいて、クラスタ20間のフェイルオーバ又はフェイルバック等の制御を行う。
以下、情報処理システム1において実行される処理手順について説明する。図4は、いずれかのクラスタに対するリクエストに応じて実行される処理手順の一例を説明するためのシーケンス図である。
ステップS101において、クライアント装置40が、クラスタ20−1宛のリクエストを送信すると、当該リクエスト(以下、「対象リクエスト」という。)は、ゲートウェイ21−1によって受信される。ゲートウェイ21−1は、クラスタ20−1のクラスタIDを指定して、対象リクエストをいずれの計算ノード22に割り当てるべきか(対象リクエストに対していずれの計算ノード22を使用するべきか)を、管理サーバ10に問い合わせる(S102)。クラスタIDは、クラスタ20ごとの識別情報である。
クラスタ管理部11は、問い合わせに指定されたクラスタIDに対応するノード管理部12を、クラスタ情報記憶部13を参照して特定する。
図5は、クラスタ情報記憶部の構成例を示す図である。図5において、クラスタ情報記憶部13は、クラスタ20ごとに、クラスタID、ノード管理部ID、アプリID、及びフェイルオーバ先等の項目の値を記憶する。
クラスタIDは、上記した通りである。なお、本実施の形態において、クラスタIDは、「クラスタ<対応するクラスタ20の符号の枝番>」の形式によって表現されている。例えば、「クラスタ1」は、クラスタ20−1のクラスタIDである。ノード管理部IDは、クラスタIDに係るクラスタ20に対応するノード管理部12の識別情報である。アプリIDは、クラスタIDに係るクラスタ20において実装されているアプリケーションの識別情報である。アプリIDは、クラスタIDに係るクラスタ20が実行可能な処理を示す情報であるともいえる。フェイルオーバ先は、クラスタIDに係るクラスタ20について他のクラスタ20へのフェイルオーバが行われた場合に、当該他のクラスタ20のクラスタIDが記録される項目である。
クラスタ管理部11へのレコードの登録は、例えば、管理者からのクラスタ20の新規生成の指示の入力に応じてクラスタ管理部11が実行する。この際、クラスタIDは、クラスタ管理部11によって自動的に生成されてもよい。また、アプリIDは、管理者によるクラスタ20の新規生成の指示に伴って入力される。クラスタ管理部11は、新たなクラスタ20に対応するノード管理部12を生成し、当該ノード管理部12に対応するノード管理部IDを、当該クラスタ20に対応するレコードに記録する。なお、ノード管理部12は、例えば、プロセスやスレッド等であってもよい。この場合、ノード管理部IDは、プロセスID又はスレッドIDであってもよい。
図4に戻る。ステップS102において問い合わせを受けたクラスタ管理部11は、当該問い合わせに指定されたクラスタIDに対応するノード管理部IDを特定し、当該ノード管理部IDに係るノード管理部12に対して、対象リクエストの割当先の選択を要求する(S103)。ここでは、クラスタ20−1に対応するノード管理部12−1に対して、対象リクエストの割り当て先の選択が要求される。
ノード管理部12−1は、当該要求に応じ、ノード情報記憶部14−1を参照して、対象リクエストの割当先の計算ノード22を選択する。
図6は、ノード情報記憶部の構成例を示す図である。図6において、ノード情報記憶部14は、対応するクラスタ20に属する計算ノード22ごとに、ノード名、アドレス、状態、所属クラスタ等の項目の値を記憶する。
ノード名は、計算ノード22ごとの名前である。なお、本実施の形態において、ノード名は、「ノード<対応する計算ノード22の符号の枝番>」の形式によって表現されている。例えば、「ノード11」は、計算ノード22−11のノード名である。アドレスは、計算ノード22の通信用のアドレス(例えば、IPアドレス)である。状態は、計算ノード22の負荷状態又は計算ノード22の故障の有無(使用の可否)を示す情報である。所属クラスタは、計算ノード22が所属するクラスタ20のクラスタIDである。
なお、ノード情報記憶部14の各レコードは、例えば、管理者によって登録される。但し、状態は、ノード管理部12が、当該ノード管理部12に対応するクラスタ20に属する各計算ノード22を監視することにより取得及び更新される。計算ノード22の状態の監視は、公知技術が用いられて行われればよい。例えば、ノード管理部12は、各計算ノード22に対して、定期的に状態を問い合わせてもよい。
ノード管理部12−1は、ノード情報記憶部14−1に記憶されているレコードの中で、状態の値が「故障」ではなく、かつ、状態によって示される負荷の値が最小である計算ノード22を対象リクエストの割当先として選択する。図6の例では、ノード名が「ノード12」である計算ノード22−12が選択される。但し、現時点から遡って所定期間の負荷の平均値等が最小である計算ノード22が、対象リクエストの割当先として選択されてもよい。また、他の方法によって対象リクエストの割当先が選択されてもよい。なお、「故障」は、計算ノード22の機能を正常に実行することができない状態である。例えば、計算ノード22との通信が不通である場合に、当該計算ノード22は故障であると判定されてもよい。又は、計算ノード22において何らかのアラームが発生している場合に、当該計算ノード22は、故障であると判定されてもよい。
続いて、ノード管理部12−1は、割当先として選択された計算ノード22−12のアドレスを、ゲートウェイ21−1に通知する(S104)。ゲートウェイ21−1は、当該アドレス宛に、対象リクエストを転送する(S105)。計算ノード22−12は、対象リクエストに応じた処理を実行し、処理結果を含むレスポンス(応答)を、クライアント装置40に返信する(S106)。
続いて、クラスタ20間のフェイルオーバ及びフェイルバックの制御処理について説明する。
図7は、クラスタ間のフェイルオーバ及びフェイルバックの制御処理の処理手順の一例を説明するためのフローチャートである。図7の処理は、例えば、各ノード管理部12によって、各計算ノード22の状態が取得され、ノード情報記憶部14が更新されるに際に実行される。なお、各ノード管理部12による定期的な状態の取得のタイミングは、必ずしも一致していなくてもよい。したがって、クラスタ20ごとに、相互に異なるタイミングで、図7の処理手順が実行されてもよい。
ステップS201において、いずれかのノード管理部12が、当該ノード管理部12に対応するクラスタ20に属する各計算ノード22の状態を取得し、当該ノード管理部12に対応するノード情報記憶部14の状態の値を更新すると、ノード管理部12は、クラスタ管理部11に対して、当該クラスタ20のクラスタIDと、当該ノード情報記憶部14に記憶されている情報(以下、「ノード情報」という。)とを通知する。なお、ステップS202以降は、ノード情報記憶部14において状態の値が「故障」である計算ノード22の数が変化した場合にのみ実行されてもよい。
続いて、クラスタ管理部11は、通知されたクラスタIDに係るクラスタ20(以下、「対象クラスタ20」という。)が、他のクラスタ20へフェイルオーバ中であるか否かを判定する(S202)。当該判定は、クラスタ情報記憶部13において、対象クラスタ20に関してフェイルオーバ先が記憶されているか否かに基づいて行うことができる。フェイルオーバ先が記憶されていれば、対象クラスタ20は、フェイルオーバ中である。
対象クラスタ20がフェイルオーバ中ではない場合(S202でNO)、クラスタ管理部11は、通知されたノード情報に基づいて、対象クラスタ20の故障率が閾値α以上であるか否かを判定する(S203)。クラスタ20の故障率とは、当該クラスタ20に属する計算ノード22の総数に対する、状態が「故障」である計算ノード22の数の割合である。
対象クラスタ20の故障率が閾値α以上である場合(すなわち、対象クラスタ20が、故障率が閾値α以上であるクラスタ20として特定された場合)(S203でYES)、クラスタ管理部11は、対象クラスタ20に対する全てのアプリIDを含むアプリIDに対応する他のクラスタ20の有無を、クラスタ情報記憶部13を参照して判定する(S204)。
対象クラスタ20に対する全てのアプリIDを含むアプリIDに対応する他のクラスタ20が有る場合(S204でYES)、クラスタ管理部11は、対象クラスタ20から他のクラスタ20へのフェイルオーバを実行する(S205)。具体的には、クラスタ管理部11は、クラスタ情報記憶部13において、対象クラスタ20に対応するレコードのフェイルオーバ先に、当該他のクラスタ20のクラスタIDを記録する。また、クラスタ管理部11は、対象クラスタ20に関してステップS201において通知されたノード情報のうち、状態が「故障」でないレコードの追加を当該他のクラスタ20に対応するノード管理部12に要求する。すなわち、対象クラスタ20の中で、使用可能な計算ノード22が、フェイルオーバ先の他のクラスタ20に含められる。そうすることで、フェイルオーバ先のクラスタ20の負荷の増加を緩和することができる。
例えば、クラスタ20−1からクラスタ20−2へフェイルオーバが行われる場合、クラスタ情報記憶部13、ノード情報記憶部14−1、及びノード情報記憶部14−2は、図8に示されるように更新される。
図8は、フェイルオーバ時におけるクラスタ情報記憶部及びノード情報記憶部の更新例を示す図である。(1)に示されるように、クラスタ201に対応するレコードのフェイルオーバ先に、クラスタ20−2のクラスタIDが記録される。
また、(2)に示されるように、フェイルオーバ元のクラスタ20に対応するノード情報記憶部14−1における、状態が「故障」でないレコードが、フェイルオーバ先のクラスタ20に対応するノード情報記憶部14−2にコピーされる。この際、コピー先のレコードの所属クラスタの値は、変更されない。
なお、フェイルオーバ元の対象クラスタ20が共有ディスクを有する場合には、当該共有ディスク内のデータが、フェイルオーバ先のクラスタ20の共有ディスクにコピーされる。
一方、対象クラスタ20がフェイルオーバ中である場合(S202でYES)、クラスタ管理部11は、通知されたノード情報に基づいて、対象クラスタ20の故障率が閾値α未満に回復したか否かを判定する(S206)。ここでの故障率の分母は、対象クラスタ20に本来属する計算ノード22の総数である。すなわち、フェイルオーバによって他のクラスタ20に移動された計算ノード22の数も、当該総数に含まれる。また、分子の数には、現時点において対象クラスタ20に本来属する計算ノード22の中で、状態が「故障」である計算ノード22の数である。
対象クラスタ20の故障率が閾値α未満である場合(すなわち、対象クラスタ20が、故障率が閾値α以上であるクラスタ20であると特定されなくなった場合)(S206でYES)、クラスタ管理部11は、対象クラスタ20に関してフェイルバックを実行する(S207)。
具体的には、クラスタ管理部11は、クラスタ情報記憶部13において、対象クラスタ20に対応するレコードのフェイルオーバ先にクラスタIDが記録されているフェイルオーバ先のクラスタ20に対応するノード情報記憶部14から、所属クラスタの値が対象クラスタ20のクラスタIDであるレコードを削除させる。クラスタ管理部11は、また、クラスタ情報記憶部13において、対象クラスタ20に対応するレコードのフェイルオーバ先の値を削除する。
続いて、クラスタ20−1からクラスタ20−2へフェイルオーバ中の期間において、クラスタ20−1においてクライアント装置40からのリクエストが受信された場合に実行される処理手順について説明する。
図9は、フェイルオーバ元のクラスタに対するリクエストに応じて実行される処理手順の一例を説明するためのシーケンス図である。図9中、図4と同一ステップには同一ステップ番号を付し、その説明は省略する。図9において、クラスタ情報記憶部13、クノード情報記憶部14−1、及びノード情報記憶部14−2は、図8に示される状態であるとする。
ステップS102における問い合わせに応じ、クラスタ管理部11は、クラスタ情報記憶部13において、問い合わせに指定されているクラスタIDに係るレコードのフェイルオーバ先に、クラスタ20−2のクラスタIDが記録されていることに基づいて、クラスタ20−2に対応するノード管理部12−2に対して、対象リクエストの割当先の選択を要求する(S203)。
ノード管理部12−2は、当該要求に応じ、ノード情報記憶部14−2を参照して、対象リクエストの割当先の計算ノード22を選択する。すなわち、ノード情報記憶部14−2に記憶されているレコードの中で、状態の値が「故障」ではなく、かつ、状態によって示される負荷の値が最小である計算ノード22を対象リクエストの割当先として選択する。ここで、ノード情報記憶部14−2は、図8の(2)に示される状態である。したがって、ノード管理部12−2は、クラスタ20−2に属する計算ノード22だけでなく、クラスタ20−1に属する計算ノード22−12をも含む計算ノード22の集合の中から、対象リクエストの割当先を選択する。ここで、ノード名が「ノード22」である計算ノード22−22が選択される。なお、仮に、計算ノード22−12の負荷が最小であれば、計算ノード22−12が選択される。
続いて、ノード管理部12−2は、割当先として選択された計算ノード22−22のアドレスを、ゲートウェイ21−1に通知する(S204)。ゲートウェイ21−1は、当該アドレス宛に、対象リクエストを転送する(S205)。計算ノード22−22は、対象リクエストに応じた処理を実行し、処理結果を含むレスポンス(応答)を、クライアント装置40に返信する(S206)。この場合、クライアント装置40は、リクエストの送信先を変えることなく、リクエストの送信先であるクラスタ20−1とは別のクラスタ20を利用することができる。
なお、クラスタ20−1についてフェイルバックが実行された後に、クラスタ20−1においてリクエストが受信された場合には、図4において説明した処理手順が実行される。
上述したように、本実施の形態によれば、複数のロードバランスクラスタ20が構築される。クラスタ20単位でフェイルオーバが行われる場合には、フェイルオーバ先のクラスタ20ではフェイルオーバ元のロードバランスクラスタ20の一部の計算資源を使用することができる。その結果、計算資源を効率的に使用可能とすることができ、例えば、フェイルオーバ先のクラスタ20の性能の低下を緩和することができる。
なお、本実施の形態において、管理サーバ10は、情報処理装置の一例である。ノード管理部12の集合は、監視部及び選択部の一例である。クラスタ管理部11は、特定部の一例である。クラスタ20は、計算資源群の一例である。計算ノード22は、計算資源の一例である。
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
1 情報処理システム
10 管理サーバ
11 クラスタ管理部
12 ノード管理部
13 クラスタ情報記憶部
14 ノード情報記憶部
20 クラスタ
21 ゲートウェイ
22 計算ノード
40 クライアント装置
100 ドライブ装置
101 記録媒体
102 補助記憶装置
103 メモリ装置
104 CPU
105 インタフェース装置
B バス
特許第5208324号公報

Claims (7)

  1. それぞれが相互に負荷分散を図る複数の計算資源を含む、複数の計算資源群とネットワークを介して接続される情報処理装置であって、
    前記各計算資源群に属する各計算資源の状態を監視する監視部と、
    前記監視部によって監視される前記各計算資源の状態に基づいて、使用できない計算資源の割合が閾値以上である計算資源群を特定する特定部と、
    前記特定部によって計算資源群が特定されなかった場合には、いずれかの計算資源群に対する要求の割り当て先を、当該計算資源群に属する計算資源の中から選択し、前記特定部によって計算資源群が特定された場合には、当該計算資源群に対する要求の割り当て先を、当該計算資源群において使用可能な計算資源と、他の計算資源群に属する計算資源との中から選択する選択部と、
    を有することを特徴とする情報処理装置。
  2. 前記複数の計算資源群は、相互に実行可能な処理が異なる計算資源群を含み、
    前記選択部は、前記特定部によって計算資源群が特定された場合には、当該計算資源群に対する要求の割り当て先を、当該計算資源群において使用可能な計算資源と、当該計算資源群と同じ処理を実行可能な他の計算資源群に属する計算資源との中から選択する、
    ことを特徴とする請求項1記載の情報処理装置。
  3. 前記選択部は、前記特定部によって計算資源群が特定された後に、当該計算資源群が前記特定部によって特定されなくなった場合に、当該計算資源群に対する要求の割り当て先を、当該計算資源群に属する計算資源の中から選択する、
    ことを特徴とする請求項1又は2記載の情報処理装置。
  4. 前記選択部は、前記監視部によって監視される前記各計算資源の負荷が最小である計算資源を選択する、
    ことを特徴とする請求項1乃至3いずれか一項記載の情報処理装置。
  5. それぞれが相互に負荷分散を図る複数の計算資源を含む、複数の計算資源群と、請求項1乃至4いずれか一項記載の情報処理装置とを含む情報処理システム。
  6. それぞれが相互に負荷分散を図る複数の計算資源を含む、複数の計算資源群とネットワークを介して接続される情報処理装置が、
    前記各計算資源群に属する各計算資源の状態を監視する監視手順と、
    前記監視手順において監視される前記各計算資源の状態に基づいて、使用できない計算資源の割合が閾値以上である計算資源群を特定する特定手順と、
    前記特定手順において計算資源群が特定されなかった場合には、いずれかの計算資源群に対する要求の割り当て先を、当該計算資源群に属する計算資源の中から選択し、前記特定手順において計算資源群が特定された場合には、当該計算資源群に対する要求の割り当て先を、当該計算資源群において使用可能な計算資源と、他の計算資源群に属する計算資源との中から選択する選択手順と、
    を実行することを特徴とする情報処理方法。
  7. それぞれが相互に負荷分散を図る複数の計算資源を含む、複数の計算資源群とネットワークを介して接続される情報処理装置に、
    前記各計算資源群に属する各計算資源の状態を監視する監視手順と、
    前記監視手順において監視される前記各計算資源の状態に基づいて、使用できない計算資源の割合が閾値以上である計算資源群を特定する特定手順と、
    前記特定手順において計算資源群が特定されなかった場合には、いずれかの計算資源群に対する要求の割り当て先を、当該計算資源群に属する計算資源の中から選択し、前記特定手順において計算資源群が特定された場合には、当該計算資源群に対する要求の割り当て先を、当該計算資源群において使用可能な計算資源と、他の計算資源群に属する計算資源との中から選択する選択手順と、
    を実行させることを特徴とするプログラム。
JP2015054676A 2015-03-18 2015-03-18 情報処理装置、情報処理システム、情報処理方法、及びプログラム Pending JP2016177324A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015054676A JP2016177324A (ja) 2015-03-18 2015-03-18 情報処理装置、情報処理システム、情報処理方法、及びプログラム
US15/067,433 US10338971B2 (en) 2015-03-18 2016-03-11 Information processing apparatus, information processing system, information processing method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015054676A JP2016177324A (ja) 2015-03-18 2015-03-18 情報処理装置、情報処理システム、情報処理方法、及びプログラム

Publications (1)

Publication Number Publication Date
JP2016177324A true JP2016177324A (ja) 2016-10-06

Family

ID=56923991

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015054676A Pending JP2016177324A (ja) 2015-03-18 2015-03-18 情報処理装置、情報処理システム、情報処理方法、及びプログラム

Country Status (2)

Country Link
US (1) US10338971B2 (ja)
JP (1) JP2016177324A (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160285957A1 (en) * 2015-03-26 2016-09-29 Avaya Inc. Server cluster profile definition in a distributed processing network
US10348589B2 (en) * 2015-06-15 2019-07-09 Netflix, Inc. Managing networks and machines that deliver digital content
CN109478147B (zh) * 2016-07-13 2021-12-14 华为技术有限公司 分布式计算***中的自适应资源管理
CN110955498B (zh) * 2019-11-21 2022-03-22 北京浪潮数据技术有限公司 一种进程处理方法、装置、设备及计算机可读存储介质

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS528324A (en) 1975-07-05 1977-01-22 Shiyuuhei Yamaji Pushhbutton operation printer
US5889772A (en) * 1997-04-17 1999-03-30 Advanced Micro Devices, Inc. System and method for monitoring performance of wireless LAN and dynamically adjusting its operating parameters
JP3769999B2 (ja) * 1999-09-30 2006-04-26 富士通株式会社 サービス振り分け装置
US8180661B2 (en) * 2000-08-23 2012-05-15 Landport Systems, Inc. System and method for managing property
US7860964B2 (en) * 2001-09-28 2010-12-28 Level 3 Communications, Llc Policy-based content delivery network selection
JP4325843B2 (ja) * 2002-12-20 2009-09-02 株式会社日立製作所 論理ボリュームコピー先性能調整方法及び装置
TW583406B (en) * 2002-12-31 2004-04-11 Powerchip Semiconductor Corp Method for analyzing final test parameters
JP2004234262A (ja) 2003-01-29 2004-08-19 Ricoh Co Ltd 連結複写システム
JP5124103B2 (ja) * 2006-05-16 2013-01-23 株式会社日立製作所 計算機システム
KR100836239B1 (ko) * 2006-10-31 2008-06-09 주식회사 케이티프리텔 과부하 제어 장치 및 그 방법
JP4861865B2 (ja) * 2007-03-15 2012-01-25 富士通株式会社 アクセス結果フィードバックプログラム、記録媒体、アクセス結果フィードバック方法、アクセス結果フィードバック装置、および端末装置
JP5032191B2 (ja) * 2007-04-20 2012-09-26 株式会社日立製作所 サーバ仮想化環境におけるクラスタシステム構成方法及びクラスタシステム
US7937347B2 (en) * 2007-06-13 2011-05-03 International Business Machines Corporation Method and apparatus for component association inference, failure diagnosis and misconfiguration detection based on historical failure data
US8892719B2 (en) * 2007-08-30 2014-11-18 Alpha Technical Corporation Method and apparatus for monitoring network servers
US8826077B2 (en) * 2007-12-28 2014-09-02 International Business Machines Corporation Defining a computer recovery process that matches the scope of outage including determining a root cause and performing escalated recovery operations
EP2510733A4 (en) * 2009-12-11 2017-05-17 Nokia Technologies Oy Method, apparatus and computer program product for allocating resources in wireless communication network
CN104137086A (zh) 2012-02-20 2014-11-05 三菱电机株式会社 信息***管理装置、信息***管理方法以及程序
CN102868685B (zh) * 2012-08-29 2015-04-15 北京神州绿盟信息安全科技股份有限公司 一种判定自动扫描行为的方法及装置
WO2014112419A1 (ja) * 2013-01-16 2014-07-24 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
WO2015000134A1 (en) * 2013-07-02 2015-01-08 Telefonaktiebolaget L M Ericsson(Publ) Method and network node for managing collisions
WO2015028049A1 (en) * 2013-08-27 2015-03-05 Telefonaktiebolaget L M Ericsson (Publ) Technique for maintaining network service identification rules

Also Published As

Publication number Publication date
US10338971B2 (en) 2019-07-02
US20160277316A1 (en) 2016-09-22

Similar Documents

Publication Publication Date Title
WO2020177533A1 (zh) 电子票据标识分配方法、电子票据生成方法、装置及***
US10805406B2 (en) Zone redundant computing services using multiple local services in distributed computing systems
US20190319881A1 (en) Traffic management based on past traffic arrival patterns
US7849178B2 (en) Grid computing implementation
US9075659B2 (en) Task allocation in a computer network
US20160275123A1 (en) Pipeline execution of multiple map-reduce jobs
CN108696581B (zh) 分布式信息的缓存方法、装置、计算机设备以及存储介质
WO2019210580A1 (zh) 访问请求处理方法、装置、计算机设备和存储介质
JP6582445B2 (ja) シンクライアントシステム、接続管理装置、仮想マシン稼働装置、方法、および、プログラム
JP2019008417A (ja) 情報処理装置、メモリ制御方法およびメモリ制御プログラム
US10963353B2 (en) Systems and methods for cross-regional back up of distributed databases on a cloud service
JP6631710B2 (ja) 仮想化管理プログラム、仮想化管理装置および仮想化管理方法
JP6272190B2 (ja) 計算機システム、計算機、負荷分散方法及びそのプログラム
KR20200080458A (ko) 클라우드 멀티-클러스터 장치
JP2016177324A (ja) 情報処理装置、情報処理システム、情報処理方法、及びプログラム
CN107566466A (zh) 负载均衡方法及装置
US20110131288A1 (en) Load-Balancing In Replication Engine of Directory Server
CN107508700B (zh) 容灾方法、装置、设备及存储介质
KR102119456B1 (ko) 분산 클라우드 환경에서의 분산 브로커 코디네이터 시스템 및 방법
CN109005071B (zh) 一种决策部署方法和调度设备
KR101883671B1 (ko) 노드 분산 방법 및 이를 수행하는 관리 서버
CN113672665A (zh) 数据处理方法、数据采集***、电子设备和存储介质
JP2024514467A (ja) 地理的に分散されたハイブリッドクラウドクラスタ
CN111338647B (zh) 一种大数据集群管理方法和装置
CN109510877B (zh) 一种动态资源群的维护方法、装置及存储介质