JP2010039661A - サーバ負荷分散装置,方法およびプログラム - Google Patents

サーバ負荷分散装置,方法およびプログラム Download PDF

Info

Publication number
JP2010039661A
JP2010039661A JP2008200432A JP2008200432A JP2010039661A JP 2010039661 A JP2010039661 A JP 2010039661A JP 2008200432 A JP2008200432 A JP 2008200432A JP 2008200432 A JP2008200432 A JP 2008200432A JP 2010039661 A JP2010039661 A JP 2010039661A
Authority
JP
Japan
Prior art keywords
license
server
information
connection
client
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
JP2008200432A
Other languages
English (en)
Inventor
Takashi Ida
崇 位田
Kazuhiro Watanabe
和弘 渡辺
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 JP2008200432A priority Critical patent/JP2010039661A/ja
Priority to US12/512,848 priority patent/US20100030851A1/en
Publication of JP2010039661A publication Critical patent/JP2010039661A/ja
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】 クライアントのアクセスを,サーバ毎のライセンス使用状態に基づいて,より効率的にサーバに振分ける処理を実現する。
【解決手段】 ライセンス制御部11は,サーバ2からライセンス情報を収集し,ライセンス管理情報で各ライセンスの使用状態を管理する。コネクション管理部13は,クライアント4のコネクション確立要求を受けると,受信パケットからコネクション情報とライセンス識別キーを抽出して振分け処理部15へ通知する。振分け処理部15は,通知された情報をもとに,振分け対象となるサーバのライセンスの使用状態をライセンス制御部11へ問い合わせ,該当するライセンスの使用状態(可否)から振分け対象のサーバ2を決定する。コネクション管理部13で決定したサーバ2のコネクション確立完了後に,ライセンス制御部11は,ライセンス管理情報の該当ライセンスの使用数を更新する。
【選択図】 図1

Description

本発明は,サーバのライセンス情報によるサーバ負荷分散技術に関する。より詳しくは,サーバ負荷分散装置とサーバとが通信によって連動し,サーバのライセンス管理と連動させた効率的なコネクションの負荷分散処理を実現するサーバ負荷分散装置,方法およびプログラムに関する。
インターネットの普及によりインターネット利用者数は増加しており,それに従いインターネットサイトへのリクエストも増加している。リクエストが増加すると,Webサイトの応答が遅くなったり,Webサイトに接続しにくくなったり等,サービスの低下が懸念される。
そのため,Webサイトの能力が不足してきた場合にサーバを容易に拡張できる技術,故障発生時にサービスを停止させない技術,サービスを中断せずに保守・修理する技術が提供されている(特許文献1参照)。
サーバ負荷分散装置は,仮想サーバとして代表アドレス(仮想IPアドレス)を持ち,仮想IPアドレスへのアクセスを,所定の分散ポリシに基づいて振分け対象となる複数のサーバのいずれか一つのサーバへ分散し,セッションの制御および連続的サービスの維持を行う。
また,アクセスの分散ポリシとして,一定の順序に基づく選択(ラウンドロビン),最小クライアント数や最小CPU負荷率等に基づく選択等,いくつかの静的または動的分散方式が知られている。
特開2000−268012号公報
サーバ負荷分散装置によって,分散されたサービスに対して,振分け先のサーバ上でライセンス数によるアクセス制御が行われていることがある。例えば,アプリケーションが使用するポート等に対して接続できるクライアント数をIPアドレス等で識別し,接続可能なクライアント数の上限値を設けてアクセス制御することがある。
この場合に,サーバに振分けられたサービスに対して使用可能なライセンス数が上限値に達していると,振分けが無効(NG)となることがある。
このような状態を防止するために,従来のサーバ負荷分散装置では,対象サービスのコネクション数等をライセンス数と見なし,ライセンス数の上限値と同じ値で,各サーバへのアクセス数(コネクション数)を制御していた。
しかし,サーバ毎にライセンス数の上限値をユーザが意識して設定する必要があり,設定作業が煩雑化するという問題が生じていた。
また,前記の設定作業を行ったとしても,コネクション数=ライセンス数とは必ずしもならないため,効率的なアクセス負荷分散が行えないという問題があった。
本発明の目的は,サーバのライセンス情報を取得して,各サーバのライセンス使用状態を擬似的に管理し,管理するライセンス使用状態に基づいてアクセスの振分け先となるサーバを決定する処理を行って,ライセンス数の上限値超過によるサーバのアクセス拒否を生じさせるような振分けを少なくすることができるサーバ負荷分散装置を提供することである。
さらに,本発明の別の目的は,前記サーバ負荷分散装置が実行する各処理過程でなるサーバ負荷分散方法を提供することである。
さらに,本発明の別の目的は,コンピュータを前記サーバ負荷分散装置として機能させるためのサーバ負荷分散プログラムを提供することである。
本発明では,サーバ負荷分散装置とサーバとが通信によって連動し,サーバ負荷分散装置がサーバ側で保持されるライセンス情報を収集し,収集したライセンス情報をもとに各サーバのライセンス使用状態を疑似的に管理して,各サーバのライセンス使用状態に基づいて振分け対象とするサーバを決定することによって,効率的な負荷分散を実現する。
また,サーバ負荷分散装置が,定期的に各サーバのライセンス状態を監視して,各サーバのライセンス使用状態を疑似的に管理することによって,また,振分け対象となるサーバが,ライセンス状態の変更を検出しサーバ負荷分散装置へ通知することによって,適宜かつ柔軟な負荷分散を実現する。
開示する装置は,複数のサーバがそれぞれ管理するライセンス情報を収集し,サーバおよびライセンス毎にライセンスの使用可能数と使用数と使用可否を記録するライセンス管理情報に基づいて複数サーバ各々のライセンスの使用状態を管理する処理と,クライアントのアクセスの振分け対象となりうる振分け候補サーバにおけるライセンスの使用状態の問い合わせに対して,ライセンス管理情報から該当するライセンスの使用可または使用不可を応答する処理と,クライアントのコネクションが確立した場合に接続したサーバで使用されるライセンスについてライセンス管理情報の使用数と使用状態を更新する処理とを行うライセンス制御部を備える。さらに,クライアントからサーバのアクセス要求があった場合に,アクセス要求のパケットから,要求したクライアントが有するライセンスの識別情報を抽出し,抽出されたライセンスの識別情報に基づいて振分け対象の割り出し要求を発行する処理と,割り出し要求に対する応答を受け付け,この応答で特定された振分け対象のサーバとクライアントとのコネクションを管理し,コネクションが確立したとき,振分け対象のサーバの識別情報とコネクションに使用されるライセンスの識別情報とをライセンス制御部へ通知する処理とを行うコネクション管理部を備える。さらに,予め,複数のサーバ各々と振分けが可能なライセンスとの対応関係を定義した振分け情報を保持し,割り出し要求を受け付けた場合に,割り出し要求のライセンスの識別情報をもとに振分け情報から振分け候補となるサーバを選択し,選択したサーバでのライセンスの使用状態をライセンス制御部へ問い合わせる処理と,問い合わせに対する応答に含まれるライセンスの使用可または使用不可に基づいて,振分け候補のサーバから振分け対象となるサーバを特定してコネクション管理部へ通知する処理とを行う振分け処理部とを備える。
前記開示する装置では,ライセンス制御部が,複数のサーバがそれぞれ管理するライセンス情報を収集し,サーバおよびライセンス毎にライセンスの使用可能数と使用数と使用可否を記録するライセンス管理情報を記憶部に保持しておき,ライセンス管理情報に基づいて各サーバのライセンスの使用状態を管理する。
そして,コネクション管理部は,クライアントからサーバのアクセス要求があった場合に,アクセス要求のパケットから,要求したクライアントが有するライセンスの識別情報を抽出し,抽出されたライセンスの識別情報に基づいて振分け対象の割り出し要求を振分け処理部に対して発行する。
振分け処理部は,予め,複数サーバ各々と振分けが可能なライセンスとの対応関係を定義した振分け情報を保持しておき,割り出し要求を受け付けた場合に,割り出し要求のライセンスの識別情報をもとに,振分け情報から振分け候補となるサーバを選択し,選択したサーバでのライセンスの使用状態を前記ライセンス制御部へ問い合わせる。ライセンス制御部は,選択されたサーバのライセンスの使用状態の問い合わせに対して,ライセンス管理情報から該当するライセンスの使用可または使用不可を応答する。
そして,振分け処理部は,問い合わせに対する応答に含まれるライセンスの使用可または使用不可に基づいて,振分け候補のサーバから振分け対象となるサーバを特定する。
コネクション管理部は,振分け対象のサーバとクライアントのコネクションを管理し,このコネクションが確立したときに,振分け対象のサーバの識別情報とコネクションに使用されるライセンスの識別情報とをライセンス制御部へ通知する。
そして,ライセンス制御部は,コネクションが確立した場合に,接続したサーバで使用されるライセンスについてライセンス管理情報の使用数と使用状態を更新する。
これにより,開示の装置は,サーバから収集したライセンス情報からライセンス管理情報を生成し,コネクションの確立/解放に応じてライセンス管理情報の該当するライセンスの使用状態(使用可または使用不可)を更新し,クライアントのアクセス要求をサーバへ振り分ける際に,各サーバに対応するライセンスとそのライセンスの使用状態をもとに,ライセンスの使用が可能なサーバを振分け対象とすることができる。
本発明によれば,各サーバのライセンス情報とその使用状態(使用可否)を擬似的に管理し,使用可能なライセンス数の上限値を超過しないサーバへ,クライアントのアクセスを振り分けることができる。よって,ライセンス数上限の超過を理由とするサーバのアクセス拒否を生じさせるような振分けを少なくさせることができる。
また,サーバ負荷分散装置は,サーバのライセンス情報を自動的に取得することができる。そのため,サーバ負荷分散装置に意識的にライセンス情報の定義情報等を設定するユーザ作業が不要になる。
また,中継点であるサーバ負荷分散装置内においてサーバのライセンスの使用状態を管理し,アクセスの振分け先を決定できるため,クライアントのアクセスから振分け先の決定までの処理時間を,従来に比べて短くすることができる。
また,サーバに対して,ライセンスが必要なサービスの状態を定常的に監視することができる。よって,ライセンスに関連したサービスのダウン(実行不能)の発生,ライセンス数の変更等に対して,タイムリーかつ柔軟に追従することができる。
また,サーバ側からライセンスの状態変更の通知を受けることができるので,同様に,変更状態に柔軟に追従することができる。
図1は,本発明の実施の形態における構成例を示す図である。
サーバ負荷分散装置1は,振分け対象となる複数のサーバ2各々とLAN3を介して接続され,また,サーバ2のサービスを享受できるライセンスを有するクライアント4とインターネット5を介して接続される。
サーバ負荷分散装置1は,サーバ2のライセンス情報を管理し,サーバ2各々のライセンスの使用状態に基づいて,クライアント4のアクセス要求を一つのサーバ2へ振り分け,クライアント4とサーバ2とのコネクションを制御する。クライアント4のアクセスとは,コネクション確立/解放要求,データ等の受信パケットである。
サーバ負荷分散装置1は,ライセンス制御部11とコネクション管理部13と振分け処理部15とを備える。
ライセンス制御部11は,各サーバ2のライセンス情報を収集し,各ライセンスの使用状態を管理する。
コネクション管理部13は,クライアント4からのコネクション確立を管理し,振分け対象となったサーバ2へのコネクションの確立/解放,クライアント(クライアントIP)の追加/削除等をライセンス制御部11へ通知する。
振分け処理部15は,振分け情報とライセンス情報とに基づいて振分け対象のサーバを決定する。振分け情報は,サーバ2各々と振分けが可能なライセンスとの対応関係を定義した情報である。
サーバ2は,それぞれ,ライセンス管理部(ライセンス管理エージェント)21を備える。
ライセンス管理エージェント21は,サーバ負荷分散装置1からのライセンス情報要求に対して,自サーバが管理するライセンス情報を通知する。
以下,サーバ負荷分散装置1およびサーバ2の処理を,より詳細に説明する。
図2は,サーバ2のライセンス管理エージェント21の処理を説明するための図である。
サーバ2のライセンス管理エージェント21は,自装置が管理するライセンスに関するライセンス情報71を保持してライセンスを管理する。
ライセンス情報71は,ライセンス管理エージェント21のユーザ定義情報である。
図3に,ライセンス情報71のデータ構成例を示す。
ライセンス情報71は,ライセンスの種別を示す「ライセンス種別(ライセンスA,ライセンスB等)」,使用されるライセンスを識別するキーを設定した「ライセンス識別キー(URL:aaa,URL:bbb,URL:ccc等)」,使用可能なライセンス数の上限値を設定する「使用可能ライセンス数」,ライセンスの使用数をカウントする場合のカウント対象となる資源(カウント対象資源)を設定する「ライセンスカウント方法(コネクション毎,クライアントIP毎等)」の各データ項目からなる。
「ライセンスカウント方法」の“コネクション毎”は,コネクション単位でのカウント,すなわち,ライセンスを使用するコネクション数をライセンスの使用数とすることを表す。同様に,“クライアントIP毎”は,クライアントIP単位でカウントすることを表す。
ライセンス管理エージェント21は,ライセンス情報応答処理として,サーバ負荷分散装置1のライセンス制御部11のライセンス情報要求を受け付けると,ライセンス制御部11へライセンス情報71を送信する。
また,ライセンス管理エージェント21は,ライセンス状態監視応答処理として,ライセンス制御部11のライセンス生存確認を受け付けると,ライセンスの状況,例えば,サービス使用の可否,ライセンスの使用可能数の変更等を応答する。
さらに,ライセンス管理エージェント21は,ライセンス状態管理処理として,自サーバが管理するライセンス数の上限値,ライセンスカウント方法等に変更があった場合に,ライセンス制御部11にライセンス変更通知を発行する。
図4は,サーバ負荷分散装置1の各処理部の処理を説明するための図である。
ライセンス制御部11は,ライセンス情報要求処理として,サーバ負荷分散装置1の起動のとき,または,サーバ2からライセンス変更通知を受けたときに,ライセンス情報要求を各サーバ2のライセンス管理エージェント21へ送信し,ライセンス情報71を収集する。そして,収集したライセンス情報71からライセンス管理情報73を生成してライセンス管理情報記憶部(図示しない)で保持する。
図5は,ライセンス管理情報73のデータ構成例を示す図である。
ライセンス管理情報73は,サーバの識別情報(IPアドレス)を設定する「サーバ識別情報(IPアドレスA,IPアドレスB等)」,「ライセンス種別(ライセンスA,ライセンスB等)」,「ライセンス識別キー(URL:aaa,URL:bbb,URL:ccc等)」,「使用可能ライセンス数」,ライセンスの使用数をカウントする場合のカウント対象資源を設定する「ライセンスカウント方法」,使用されている各ライセンスのカウント対象資源による使用数を示す「ライセンス使用数」,ライセンスが使用可能か使用不可能かを示す「ライセンス状態」の各データ項目からなる。
「ライセンス状態」の“可”は,ライセンス使用数が使用可能ライセンス数に対して所定の割合/数以下であり,ライセンスの使用が可能な状態を示す。また,“否”は,ライセンス使用数が使用可能ライセンス数に対して所定の割合/数を超過して,当該時点でライセンスの使用が不可能な状態を示す。
さらに,ライセンス制御部11は,ライセンス状態監視処理として,所定の期間または契機で,ライセンス管理エージェント21へライセンス生存確認を送信し,ライセンス管理エージェント21からライセンスの状況,例えば,ダウンしたサービス,使用可能ライセンス数の変更等の情報を受信する。
また,ライセンス情報71に変更があったサーバ2または新規に追加されたサーバ2のライセンス管理エージェント21からライセンス変更通知を受け付けると,通知したサーバ2に対してライセンス情報要求を送信して,再問い合わせを行う。
これにより,サーバ2のライセンス情報を自動的に取得するため,ユーザがサーバ負荷分散装置1に意識的にライセンス情報の定義情報等を設定する作業が不要になる。また,サーバ2でライセンスに関連したサービスがダウンした場合やライセンス数が変更された場合も,その変更状態をすぐにライセンス管理情報73に反映させることができる。
さらに,ライセンス制御部11は,振分け可否応答処理として,振分け処理部15から問い合わせ情報を受け付ける。
問い合わせ情報は,後述する振分け情報77に基づいて生成され,振分け候補として選択されたサーバ2の識別子(サーバ2のIPアドレス)とその振分けキー(サービス種別またはライセンス識別キー)とが設定されている。
ライセンス制御部11は,問い合わせ情報をもとに,ライセンス管理情報73から該当するサーバ2のライセンスを割り出し,ライセンスの使用数,ライセンス使用状態(使用可または使用不可)を確認し,サーバ2の該当するライセンスの使用可否を応答する。ライセンス管理情報73のライセンス状態が“可”であれば「使用可(振分け可)」を応答し,ライセンス状態が“否”であれば「使用不可(振分け不可)」を応答する。
さらに,ライセンス制御部11は,ライセンス状態管理処理として,コネクション管理部13から,後述するライセンス用コネクション情報75に基づくコネクション確立通知を受け付けると,ライセンス管理情報73から該当するサーバ2のライセンスを割り出し,コネクション確立通知をもとにライセンス使用数をカウント対象資源により加算する。
また,コネクション解放通知を受け付けると,同様にしてライセンス使用数を減算する。さらに,コネクション確立/解放通知によって使用数が変更された場合に,使用可能ライセンス数と使用数とをもとに,ライセンスの使用状態(可/否)を判定して,変更する。
コネクション管理部13は,クライアント4の通信をサーバ2に振り分け,コネクション毎に管理する。
コネクション管理部13は,クライアント4からの受信パケットが新規コネクション確立要求である場合に,振分け対象要求処理として,振分け処理部15に対して,クライアント4の受信パケットからライセンス識別キーを抽出し,ライセンス識別キーが付いた振分け対象の割り出し要求を通知する。
また,コネクション管理部13は,振分け処理部15から振分け対象のサーバ2を示す応答情報を受けて,要求したクライアント4と振分け対象のサーバ2とのコネクションを管理し,このコネクションのライセンス用コネクション情報75を生成し,ライセンス用コネクション情報75を含むコネクション確立通知をライセンス制御部11へ通知する。
また,要求したクライアント4と振分け対象のサーバ2とのコネクション解放等があった場合に,該当するライセンス用コネクション情報75を含むコネクション解放通知をライセンス制御部11へ通知する。
図6は,ライセンス用コネクション情報75のデータ構成例を示す図である。
ライセンス用コネクション情報75は,「サーバの識別情報」,「ライセンス識別キー」,「ライセンスカウント資源(コネクション/クライアントIP等)」の各データ項目からなる。
振分け処理部15は,振分け情報77を保持して,振分け対象特定処理として,コネクション管理部13から振分け対象割り出し要求を受け付け,振分け情報77をもとに振分け対象割り出し要求のライセンス識別キーに合致する振分け候補サーバを選択する。
さらに,振分け候補サーバに選択されたサーバ2の振分け可否をライセンス制御部11へ問い合わせる。
そして,振分け処理部15は,ライセンス制御部11から,振分け候補サーバに選択されたサーバ2の振分け可否を示す応答情報をもとに,振分け対象となるサーバ2を決定し,コネクション管理部13へ通知する。
振分け情報77は,振分け対象となりうるサーバ2と振分けが可能なライセンスとの対応関係が設定され,ライセンス管理情報73の作成処理時に元情報として参照される。
図7は,振分け情報77のデータ構成例を示す図である。
振分け情報77は,振分け対象となるサーバ2を識別する「サーバ識別情報」,サーバ2に振り分けるライセンス識別キーを設定した「振分けキー(サービス種別,ライセンス識別キー等)」の各データ項目からなる。
このように,ライセンス情報およびその使用状態をサーバ2へ問い合わせる必要がなく,サーバ負荷分散装置1内で保持するライセンス管理情報73を使用して振分け対象となるサーバ2を決定できるため,クライアント4のアクセスに対する振分け時の処理時間を従来に比べて短くすることができる。
図8〜図12は,サーバ負荷分散装置1の各処理の処理フロー図である。
図8は,ライセンス情報を収集する処理の処理フロー図である。
図8に示す処理フローにおいて,ライセンス制御部11は,振分け情報77を参照して振分け対象となりうるサーバ2を選択し,選択したサーバ2のライセンス管理エージェント21に対し,ライセンス情報要求P1を発行する(ステップS1)。
ライセンス情報要求P1は,図13(A)に示すように,プロトコル識別子,パケット種別(ライセンス情報要求1)で構成されている。
サーバ2のライセンス管理エージェント21は,ライセンス情報要求P1を受け,自サーバが管理している全てのライセンスのライセンス情報を内容とするライセンス情報応答P2を応答する(ステップS2)。
ライセンス情報応答P2は,図13(B)に示すように,プロトコル識別子,パケット種別(ライセンス情報応答1),ライセンス種別(ライセンスA等),ライセンス識別キー(URL:aaa等)で構成されている。
ライセンス制御部11は,ライセンス情報応答P2を受け,振分け情報77の振分けキーに対応するライセンス(例えば,振分けキーが“HTTP通信”かつライセンス識別キーが“URL:aaa”であるライセンス)を識別し,この情報をライセンス管理情報73に設定する(ステップS3)。
さらに,ライセンス制御部11は,ライセンス管理エージェント21に対し,ライセンス情報要求P3を発行する(ステップS4)。
ライセンス情報要求P3は,図14(A)に示すように,プロトコル識別子,パケット種別(ライセンス情報要求2),ライセンス種別(ライセンスA等)で構成されている。
ライセンス管理エージェント21は,ライセンス情報要求P3を受け,要求されたライセンスに対するライセンス情報応答P4を応答する(ステップS5)。
ライセンス情報応答P4は,図14(B)に示すように,プロトコル識別子,パケット種別(ライセンス情報応答2),ライセンス種別(ライセンスA等),使用可能ライセンス数,ライセンスカウント方法(コネクション毎等)で構成されている。
ライセンス制御部11は,ライセンス情報応答P4を受け,ライセンス管理情報73の対応するライセンスの項目に,ライセンス情報応答P4の追加情報を設定する(ステップS6)。
図9は,ライセンスの状態を監視する処理の処理フロー図である。
図9に示す処理フローにおいて,ライセンス制御部11は,ライセンス管理情報73に設定されたサーバ2に対して,ライセンス状態監視確認P5を発行して,ライセンスの状態監視を行う(ステップS10)。
ライセンス状態監視確認P5は,図15(A)に示すように,プロトコル識別子,パケット種別(ライセンス情報要求3),ライセンス種別(ライセンスA等)で構成されている。
ライセンス管理エージェント21は,ライセンス状態監視確認P5を受け,要求されたライセンスに対する使用状況を内容とするライセンス状態監視応答P6を応答する(ステップS11)。
ライセンス状態監視応答P6は,図15(B)に示すように,プロトコル識別子,パケット種別(ライセンス情報応答3),ライセンス種別(ライセンスA等),状態(使用可/使用不可)で構成されている。
ライセンス制御部11は,ライセンス状態監視応答P6を受け,ライセンス管理情報73の該当するサーバとライセンスのライセンス状態(使用状態)に“可/不可”を記録する(ステップS12)。
一定時間(例えば5秒程度)待機して(ステップS13),ステップS10の処理へ戻り,サーバ負荷分散装置1の処理終了までS10〜S13の処理を繰り返す。
図10は,コネクション確立時に振分け対象を特定し,ライセンス管理情報に反映させる処理の処理フロー図である。
図10の処理フローにおいて,コネクション管理部13は,クライアント4からのアクセスが新規コネクション確立要求である場合に,受信したパケットから,コネクション情報(宛先IPアドレス,宛先ポート番号,送信元IPアドレス,送信元ポート番号等)とライセンス識別キーを取り出し,振分け処理部15に通知する(ステップS20)。
振分け処理部15は,受け取ったコネクション情報と振分け情報77とをもとに「振分けキー」に一致するサーバ2を選択して振分け候補サーバとし,選択した振分け候補サーバのサーバ識別情報とライセンス識別キーとをライセンス制御部11へ通知する(ステップS21)。
ライセンス制御部11は,ライセンス管理情報73を検索し,振分け候補サーバのライセンス情報からライセンス識別キーが一致するライセンスを検索する。一致したライセンスのライセンス状態(可/不可)を応答する(ステップS22)。
振分け処理部15は,ライセンス制御部11からの応答を受けて,振分け候補サーバから使用可能で振分け条件に一致するサーバ2を一つ選択し,コネクション管理部13へ通知する(ステップS23)。
コネクション管理部13は,振分け対象として選択されたサーバ2とクライアント4のコネクションが確立したときに,コネクションを確立したサーバ2のサーバ識別情報,ライセンス識別キー,カウント対象資源等の情報をライセンス制御部11へ通知する(ステップS24)。
ライセンス制御部11は,コネクション管理部13の通知を受けて,ライセンス管理情報73の該当するライセンスの使用数をライセンスカウント方法に基づいて加算する(ステップS25)。
図11は,コネクション解放をライセンス管理情報に反映させる処理の処理フロー図である。
図11の処理フローにおいて,コネクション管理部13は,コネクションまたはクライアント4の資源の解放があった場合に,該当するサーバ2のサーバ識別情報,ライセンス識別キー,解放されたカウント対象資源(コネクション/クライアントIP等)等の情報をライセンス制御部11へ通知する(ステップS30)。
ライセンス制御部11は,コネクション管理部13の通知を受けて,ライセンス管理情報の該当するライセンスの使用数をライセンスカウント方法に基づいて減算する(ステップS31)。
図12は,ライセンス情報の変更をライセンス管理情報に反映させる処理の処理フロー図である。
図12の処理フローにおいて,ライセンス管理エージェント21は,サーバの初期起動の場合または自サーバ内のライセンスの状況が変更された場合(例えば,サービスが実行不能状態となった場合,使用可能ライセンス数の変更があった場合等)に,ライセンス状態変更通知P7をライセンス制御部11へ通知する(ステップS40)。
ライセンス状態変更通知P7は,図16に示すように,プロトコル識別子,パケット種別(ライセンス状態変更),サーバ識別情報(IPアドレスA等)で構成されている。
ライセンス制御部11は,ライセンス状態変更通知P7を受け,該当するサーバ2に対し,図13(A)のライセンス情報要求P1を発行して,ライセンス情報71を取得する(ステップS41)。
以上,本発明をその実施の形態により説明したが,本発明はその主旨の範囲において種々の変形が可能であることは当然である。
また,サーバ負荷分散装置1は,コンピュータにより読み取られ実行されるプログラムとして実施することが可能である。サーバ負荷分散装置1を実現するプログラムは,コンピュータが読み取り可能な,可搬媒体メモリ,半導体メモリ,ハードディスクなどの適当な記録媒体に格納することができ,これらの記録媒体に記録して提供され,または,通信インタフェースを介して種々の通信網を利用した送受信により提供されるものである。
本発明の実施の形態における構成例を示す図である。 サーバのライセンス管理エージェントの処理を説明するための図である。 ライセンス情報のデータ構成例を示す図である。 サーバ負荷分散装置の各処理部の処理を説明するための図である。 ライセンス管理情報のデータ構成例を示す図である。 ライセンス用コネクション情報のデータ構成例を示す図である。 振分け情報のデータ構成例を示す図である。 ライセンス情報を収集する処理の処理フロー図である。 ライセンスの状態を監視する処理の処理フロー図である。 コネクション確立時に振分け対象を特定し,ライセンス管理情報に反映させる処理の処理フロー図である。 コネクション解放をライセンス管理情報に反映させる処理の処理フロー図である。 ライセンス情報の変更をライセンス管理情報に反映させる処理フロー図である。 ライセンス情報要求P1とライセンス情報応答P2とのデータ構成例を示す図である。 ライセンス情報要求P3とライセンス情報応答P4とのデータ構成例を示す図である。 ライセンス状態監視確認P5とライセンス状態監視応答P6とのデータ構成例を示す図である。 ライセンス状態変更通知P7のデータ構成例を示す図である。
符号の説明
1 サーバ負荷分散装置
11 ライセンス制御部
13 コネクション管理部
15 振分け処理部
2 サーバ
21 ライセンス管理部(エージェント)
3 LAN
4 クライアント
5 インターネット

Claims (7)

  1. サーバアクセスのライセンスを有する複数のクライアントと,自装置が管理するライセンス情報に基づいて前記クライアントへサービスを提供する複数のサーバとに接続され,前記クライアントのアクセスを前記サーバへ分散させるサーバ負荷分散装置であって,
    複数のサーバがそれぞれ管理するライセンス情報を収集し,サーバおよびライセンス毎にライセンスの使用可能数と使用数と使用可否を記録するライセンス管理情報に基づいて前記複数サーバ各々のライセンスの使用状態を管理する処理と,クライアントのアクセスの振分け対象となりうる振分け候補サーバにおけるライセンスの使用状態の問い合わせに対して,前記ライセンス管理情報から該当するライセンスの使用可または使用不可を応答する処理と,前記クライアントのコネクションが確立した場合に接続したサーバで使用されるライセンスについて前記ライセンス管理情報の使用数と使用状態を更新する処理とを行うライセンス制御部と,
    クライアントからサーバのアクセス要求があった場合に,当該アクセス要求のパケットから,要求したクライアントが有するライセンスの識別情報を抽出し,抽出されたライセンスの識別情報に基づいて振分け対象の割り出し要求を発行する処理と,前記割り出し要求に対する応答を受け付け,当該応答で特定された振分け対象のサーバと当該クライアントとのコネクションを管理し,当該コネクションが確立したとき,前記振分け対象のサーバの識別情報と当該コネクションに使用されるライセンスの識別情報とを前記ライセンス制御部へ通知する処理とを行うコネクション管理部と,
    予め,前記複数のサーバ各々と振分けが可能なライセンスとの対応関係を定義した振分け情報を保持し,前記割り出し要求を受け付けた場合に,当該割り出し要求のライセンスの識別情報をもとに当該振分け情報から振分け候補となるサーバを選択し,選択したサーバでのライセンスの使用状態を前記ライセンス制御部へ問い合わせる処理と,前記問い合わせに対する応答に含まれるライセンスの使用可または使用不可に基づいて,前記振分け候補のサーバから振分け対象となるサーバを特定して前記コネクション管理部へ通知する処理とを行う振分け処理部とを備える
    ことを特徴とするサーバ負荷分散装置。
  2. 前記コネクション管理部は,前記クライアントとサーバのコネクションが解放された場合に,解放されたコネクションのサーバの識別情報と当該コネクションで使用されたライセンスの識別情報とを前記ライセンス制御部へ通知し,
    前記ライセンス制御部は,前記解放したコネクションのサーバで使用されたライセンスについて前記ライセンス管理情報の使用数と使用状態とを更新する
    ことを特徴とする請求項1に記載のサーバ負荷分散装置。
  3. 前記ライセンス制御部は,前記クライアントから収集したライセンス情報に,ライセンス使用数のカウント方法がクライアント資源を用いて設定され,かつ,前記クライアントのパケットから抽出されるクライアント識別情報に当該クライアント資源が設定されている場合に,前記ライセンス管理情報に当該クライアント資源を記憶し,コネクションが確立または解放したサーバで使用されたライセンスの使用数を,当該クライアント資源の単位で更新する
    ことを特徴とする請求項1または請求項2に記載のサーバ負荷分散装置。
  4. 前記ライセンス制御部は,所定の期間または契機ごとに,前記複数のサーバ各々から前記ライセンス情報を収集して前記ライセンス管理情報を更新する
    ことを特徴とする請求項1ないし請求項3のいずれか一項に記載のサーバ負荷分散装置。
  5. 前記ライセンス制御部は,前記複数のサーバのいずれかのサーバからライセンス情報変更の通知を受け付けた場合に,通知したサーバのライセンス情報を取得して前記ライセンス管理情報を更新する
    ことを特徴とする請求項1ないし請求項4のいずれか一項に記載のサーバ負荷分散装置。
  6. サーバアクセスが可能なライセンスを有する複数のクライアントと,自装置が管理するライセンス情報に基づいて前記クライアントへサービスを提供する複数のサーバとに接続され,前記クライアントからのアクセスを前記サーバへ分散させるサーバ負荷分散装置が実行するサーバ負荷分散方法であって,
    複数のサーバがそれぞれ管理するライセンス情報を収集し,サーバおよびライセンス毎にライセンスの使用可能数と使用数と使用可否を記録するライセンス管理情報を記憶部に保持しておき,当該ライセンス管理情報に基づいて各サーバのライセンスの使用状態を管理する処理過程と,
    クライアントからサーバのアクセス要求があった場合に,当該アクセス要求のパケットから,要求したクライアントが有するライセンスの識別情報を抽出し,抽出されたライセンスの識別情報に基づいて振分け対象の割り出し要求を発行する処理過程と,
    予め,前記複数サーバ各々と振分けが可能なライセンスとの対応関係を定義した振分け情報を保持しておき,前記割り出し要求を受け付けた場合に,当該割り出し要求のライセンスの識別情報をもとに,前記振分け情報から振分け候補となるサーバを選択し,選択したサーバでのライセンスの使用状態を前記ライセンス制御部へ問い合わせる処理過程と,
    前記選択されたサーバのライセンスの使用状態の問い合わせに対して当該ライセンス管理情報から該当するライセンスの使用可または使用不可を応答する処理過程と,
    前記問い合わせに対する応答に含まれるライセンスの使用可または使用不可に基づいて,前記振分け候補のサーバから振分け対象となるサーバを特定する処理過程と,
    前記振分け対象のサーバと当該クライアントのコネクションを管理し,当該コネクションが確立したときに,前記振分け対象のサーバの識別情報と当該コネクションに使用されるライセンスの識別情報とを通知する処理過程と,
    前記コネクションが確立した場合に,接続したサーバで使用されるライセンスについて前記ライセンス管理情報の使用数と使用状態を更新する処理過程とを備える
    ことを特徴とするサーバ負荷分散方法。
  7. サーバアクセスが可能なライセンスを有する複数のクライアントからのアクセスを,自装置が管理するライセンス情報に基づいてサービスを提供する複数のサーバへ分散させるサーバ負荷分散プログラムであって,
    前記クライアントと前記サーバとに接続されるコンピュータを,
    複数のサーバがそれぞれ管理するライセンス情報を収集し,サーバおよびライセンス毎にライセンスの使用可能数と使用数と使用可否を記録するライセンス管理情報に基づいて前記複数サーバ各々のライセンスの使用状態を管理する処理と,クライアントのアクセスの振分け対象となりうる振分け候補サーバにおけるライセンスの使用状態の問い合わせに対して,前記ライセンス管理情報から該当するライセンスの使用可または使用不可を応答する処理と,前記クライアントのコネクションが確立した場合に接続したサーバで使用されるライセンスについて前記ライセンス管理情報の使用数と使用状態を更新する処理とを行うライセンス制御部と,
    クライアントからサーバのアクセス要求があった場合に,当該アクセス要求のパケットから,要求したクライアントが有するライセンスの識別情報を抽出し,抽出されたライセンスの識別情報に基づいて振分け対象の割り出し要求を発行する処理と,前記割り出し要求に対する応答を受け付け,当該応答で特定された振分け対象のサーバと当該クライアントとのコネクションを管理し,当該コネクションが確立したとき,前記振分け対象のサーバの識別情報と当該コネクションに使用されるライセンスの識別情報とを前記ライセンス制御部へ通知する処理とを行うコネクション管理部と,
    予め,前記複数のサーバ各々と振分けが可能なライセンスとの対応関係を定義した振分け情報を保持し,前記割り出し要求を受け付けた場合に,当該割り出し要求のライセンスの識別情報をもとに当該振分け情報から振分け候補となるサーバを選択し,選択したサーバでのライセンスの使用状態を前記ライセンス制御部へ問い合わせる処理と,前記問い合わせに対する応答に含まれるライセンスの使用可または使用不可に基づいて,前記振分け候補のサーバから振分け対象となるサーバを特定して前記コネクション管理部へ通知する処理とを行う振分け処理部として機能させる
    ことを特徴とするサーバ負荷分散プログラム。
JP2008200432A 2008-08-04 2008-08-04 サーバ負荷分散装置,方法およびプログラム Ceased JP2010039661A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008200432A JP2010039661A (ja) 2008-08-04 2008-08-04 サーバ負荷分散装置,方法およびプログラム
US12/512,848 US20100030851A1 (en) 2008-08-04 2009-07-30 Load balancer, load-balancing method, and recording medium with load-balancing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008200432A JP2010039661A (ja) 2008-08-04 2008-08-04 サーバ負荷分散装置,方法およびプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2013117184A Division JP2013214316A (ja) 2013-06-03 2013-06-03 分散装置

Publications (1)

Publication Number Publication Date
JP2010039661A true JP2010039661A (ja) 2010-02-18

Family

ID=41609431

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008200432A Ceased JP2010039661A (ja) 2008-08-04 2008-08-04 サーバ負荷分散装置,方法およびプログラム

Country Status (2)

Country Link
US (1) US20100030851A1 (ja)
JP (1) JP2010039661A (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100036903A1 (en) * 2008-08-11 2010-02-11 Microsoft Corporation Distributed load balancer
EP2687061A4 (en) 2011-03-17 2015-03-25 Hewlett Packard Development Co SELF-ORGANIZATION OF A SATELLITE NETWORK
US9733983B2 (en) 2011-09-27 2017-08-15 Oracle International Corporation System and method for surge protection and rate acceleration in a traffic director environment
CN105681061B (zh) * 2014-11-18 2019-05-21 中兴通讯股份有限公司 一种细粒度的资源控制方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000010777A (ja) * 1998-06-19 2000-01-14 Nec Corp ネットワークライセンス管理方式
JP2001236293A (ja) * 2000-02-24 2001-08-31 Nec Corp サーバ負荷分散装置
JP2001273134A (ja) * 2000-03-27 2001-10-05 Rohm Co Ltd ネットワークシステム
JP2003323224A (ja) * 2002-04-30 2003-11-14 Daikin Ind Ltd ライセンス管理システムおよび方法、情報処理装置および方法、並びにプログラム
JP2004038652A (ja) * 2002-07-04 2004-02-05 Toshiba Microelectronics Corp ライセンスサーバー、クライアント及びライセンス管理システム
JP2007179243A (ja) * 2005-12-27 2007-07-12 Hitachi Ltd 通信システム及び通信装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5774668A (en) * 1995-06-07 1998-06-30 Microsoft Corporation System for on-line service in which gateway computer uses service map which includes loading condition of servers broadcasted by application servers for load balancing
US6728748B1 (en) * 1998-12-01 2004-04-27 Network Appliance, Inc. Method and apparatus for policy based class of service and adaptive service level management within the context of an internet and intranet
WO2001095139A1 (en) * 2000-06-07 2001-12-13 Quark, Inc. System for software license control and method therefore

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000010777A (ja) * 1998-06-19 2000-01-14 Nec Corp ネットワークライセンス管理方式
JP2001236293A (ja) * 2000-02-24 2001-08-31 Nec Corp サーバ負荷分散装置
JP2001273134A (ja) * 2000-03-27 2001-10-05 Rohm Co Ltd ネットワークシステム
JP2003323224A (ja) * 2002-04-30 2003-11-14 Daikin Ind Ltd ライセンス管理システムおよび方法、情報処理装置および方法、並びにプログラム
JP2004038652A (ja) * 2002-07-04 2004-02-05 Toshiba Microelectronics Corp ライセンスサーバー、クライアント及びライセンス管理システム
JP2007179243A (ja) * 2005-12-27 2007-07-12 Hitachi Ltd 通信システム及び通信装置

Also Published As

Publication number Publication date
US20100030851A1 (en) 2010-02-04

Similar Documents

Publication Publication Date Title
US9787780B1 (en) Method and apparatus for web based storage on-demand
JP6984097B2 (ja) エッジプロキシを持つコンテンツデリバリネットワークアーキテクチャ
US9154549B2 (en) Dynamic server farms
JP5902716B2 (ja) 大規模記憶システム
JP4311636B2 (ja) 記憶装置を複数の計算機で共用する計算機システム
JP5526137B2 (ja) 選択的データ転送ストレージ
US20100057935A1 (en) Record medium with a load distribution program recorded thereon, load distribution method, and load distribution apparatus
US8543692B2 (en) Network system
US20070083725A1 (en) Software agent-based architecture for data relocation
US20150347246A1 (en) Automatic-fault-handling cache system, fault-handling processing method for cache server, and cache manager
JP6243528B2 (ja) リースエージェントシステム間での制作者システムの分配
JP2010504668A (ja) リソース配信の方法、システム、およびエッジサーバ
CN105530266B (zh) 一种许可证书管理方法、装置及系统
US8868756B1 (en) Sticky routing
JP2012118709A (ja) 配信システム、ストレージ容量決定プログラム、及びストレージ容量決定方法
KR20090003096A (ko) 서버, 정보 처리 방법, 서버용 프로그램, 및 서버 시스템
JP2010039661A (ja) サーバ負荷分散装置,方法およびプログラム
JP4616035B2 (ja) サーバ負荷分散プログラム,装置および方法
JP3782429B2 (ja) 負荷分散システム及び計算機管理プログラム
JP2013214316A (ja) 分散装置
JP5200424B2 (ja) 情報の管理方法及び情報処理装置
JP5544521B2 (ja) 状態管理方法、処理装置、および状態管理プログラム
JP2009031898A (ja) 情報退避システム、サーバ、サーバプログラム、クライアント及びクライアントプログラム
JP5736346B2 (ja) 仮想化装置、仮想化制御方法、仮想化装置制御プログラム
US20210064411A1 (en) Management apparatus, management system, management method and management program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110513

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120815

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120904

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121105

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130402

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131001

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131121

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131210

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

Free format text: JAPANESE INTERMEDIATE CODE: A045

Effective date: 20140422