JP2008242766A - プロセス制御システム - Google Patents

プロセス制御システム Download PDF

Info

Publication number
JP2008242766A
JP2008242766A JP2007081889A JP2007081889A JP2008242766A JP 2008242766 A JP2008242766 A JP 2008242766A JP 2007081889 A JP2007081889 A JP 2007081889A JP 2007081889 A JP2007081889 A JP 2007081889A JP 2008242766 A JP2008242766 A JP 2008242766A
Authority
JP
Japan
Prior art keywords
physical
server
allocation table
physical server
service
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.)
Granted
Application number
JP2007081889A
Other languages
English (en)
Other versions
JP4777285B2 (ja
Inventor
Hiroshi Takahata
博 高畑
Takashi Nishiguchi
孝 西口
Yuuko Nara
有晃 奈良
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.)
Nomura Research Institute Ltd
Original Assignee
Nomura Research Institute 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 Nomura Research Institute Ltd filed Critical Nomura Research Institute Ltd
Priority to JP2007081889A priority Critical patent/JP4777285B2/ja
Publication of JP2008242766A publication Critical patent/JP2008242766A/ja
Application granted granted Critical
Publication of JP4777285B2 publication Critical patent/JP4777285B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)

Abstract

【課題】ネットワーク分散処理環境の物理的構成および論理的構成の変更に要する作業コストを軽減する。
【解決手段】サービスを提供する仮想サーバを複数の物理サーバ10,10Aで構成するプロセス制御システムにおいて、少なくとも1つの物理サーバ10Aは、コンソール端末40から、仮想サーバとそれを構成する物理サーバ10,10Aとを対応付けたノード一覧情報441、および、仮想サーバとそれが提供するサービスとを対応付けたサービス一覧情報442を受け付けて、物理サーバに対するサービスの割り当てを定義した割り当て表を生成する。そして、その割り当て表を、物理サーバがサービスプロセスを起動するときに参照する割り当て表311として、すべての物理サーバから参照可能な、データベースサーバ30の共用データベース31に登録する。
【選択図】図1

Description

本発明は、サービスリクエストを複数の物理サーバに振り分けるネットワーク分散処理技術に係り、とくに、ネットワーク分散処理環境の物理的構成または論理的構成の変更の際におけるシステム管理者の労力を軽減することができるプロセス制御システムに関する。
サービスリクエストに応じてサービスを提供する複数の物理サーバを有する分散システムとして、例えば、特許文献1記載のデータベースシステムが知られている。このシステムにおいては、データベースサービスを提供する運用系の物理サーバについて、障害発生時の切り替え先となる待機系の物理サーバがあらかじめ定義されており、運用系の物理サーバの障害発生が検知されると、その運用系の物理サーバから待機系の物理サーバへの系切り替えが行われる。
特開2001−282763号公報
ところで、サービスリクエストに応じてサービスを提供する仮想サーバを論理的に構成する複数の物理サーバを有する分散システムにおいて、その物理的構成の変更(物理サーバの追加、削除)または論理的構成の変更(起動プロセスの追加、削除、起動数変更)が行われる場合、システム管理者により、物理サーバに対するプロセスの分散配置の見直しが行われる。それに伴い、システム管理者は、個々の物理サーバごとに、起動すべきプロセスを再設定する必要がある。このように、システム管理者には、システムの物理的構成または論理的構成の変更に対応するために煩雑な再設定作業が要求される。
そこで、本発明は、ネットワーク分散処理環境において、その物理的構成および論理的構成の変更に要する作業コストを軽減することができるプロセス制御システムを提供することを目的とする。
本発明の一実施態様に従うプロセス制御システムは、サービスを提供する仮想サーバを構成する複数の物理サーバと、前記各物理サーバが参照可能な共有データベースを備えたデータベースサーバとを備える。前記複数の物理サーバに含まれる少なくとも1つの第1の物理サーバは、前記仮想サーバを構成する1以上の物理サーバに関する物理ノード一覧情報と、仮想サーバが提供する複数のサービスを定義したサービス一覧情報を受け付ける手段と、前記受け付けた物理ノード一覧情報およびサービス一覧情報に基づいて、前記仮想サーバを構成する各物理サーバに対して、前記複数のサービスに係るプロセスのいずれかを割り当てた割り当て表を生成する割り当て表作成手段と、を備える。そして、前記共有データベースには、前記割り当て表が登録されていて、前記仮想サーバを構成する各物理サーバは、前記割り当て表を参照して各物理サーバに割り当てられたプロセスを実行する。
好適な実施形態では、前記物理ノード一覧情報および前記サービス一覧情報の入力を受け付け、前記第1の物理サーバに割り当て表作成リクエストを送信するコンソール端末を、さらに備え、前記割り当て表作成手段は、前記割り当て表作成リクエストに応じて、前記コンソール端末から前記物理ノード一覧情報および前記サービス一覧情報を取得し、当該物理ノード一覧情報および当該サービス一覧情報に基づいて前記割り当て表を生成するようにしてもよい。
好適な実施形態では、前記コンソール端末は、起動対象プロセスを特定した起動トリガを生成し、当該起動トリガを前記各物理サーバに与えるトリガ生成手段を備えてもよい。このとき、前記各物理サーバは、前記サービスに係るプロセスを実現するためのプログラムが格納されたデータ記憶手段と、前記起動トリガを受け付けると、前記割り当て表を参照して、前記起動トリガで特定されるプロセスが自物理サーバに割り当てられているか否かを判定し、自物理サーバに割り当てられていれば、前記起動トリガで特定される起動対象プロセスを実現するためのプログラムを前記データ記憶手段から読み出して前記起動対象プロセスを起動するプロセス起動手段と、さらに備えるようにしてもよい。
好適な実施形態では、前記コンソール端末は、起動対象プロセスを特定した起動トリガを生成し、当該起動トリガを前記各物理サーバに与えるトリガ生成手段を備えてもよい。このとき、前記各物理サーバは、前記サービスに係るプロセスを実現するためのプログラムが格納されたデータ記憶手段と、与えられたメッセージに自物理サーバの識別情報が含まれている場合に、当該メッセージにおいて指定されたプロセスを実現するプログラムを前記データ記憶手段から読み出し、当該プログラムの実行により前記起動対象プロセスを起動するプロセス起動手段と、をさらに備え、前記起動トリガが与えられた物理サーバのプロセス起動手段は、前記割り当て表を参照して、前記起動トリガにおいて特定される起動対象プロセスが割り当てられた物理サーバの識別情報を取得し、前記起動対象プロセスの指定および前記物理サーバの識別情報を含む前記メッセージを前記各物理サーバに与えるようにしてもよい。
好適な実施形態では、前記割り当て表作成手段は、前記各物理サーバに割り当てられたプロセスの状態の定義をさらに含む割り当て表を生成し、前記各物理サーバのプロセス起動手段は、前記割り当て表を参照して、前記起動対象プロセスの状態が起動前であるか否かを判定し、当該起動対象プロセスの状態が起動前であれば、当該起動対象プロセスを起動するとともに、前記割り当て表における当該物理サーバの当該起動対象プロセスの状態を更新させるようにしてもよい。
好適な実施形態では、前記割り当て表作成手段は、前記各物理サーバに割り当てられたプロセスの起動数の定義をさらに含む割り当て表を生成し、前記各物理サーバのプロセス起動手段は、前記割り当て表で定義された起動数が示す数の前記起動対象プロセスが、当該物理サーバにおいて起動中となるように、当該起動対象プロセスを起動するようにしてもよい。
好適な実施形態では、前記コンソール端末は、前記複数の物理サーバに含まれる第2の物理サーバであってもよい。
以下、本発明の一実施形態に係るプロセス制御システムについて、図面を参照して説明する。
図1は、本実施形態に係るプロセス制御システムの概略構成図である。
同図に示すように、このプロセス制御システムは、外部からのサービスリクエストに応じてサービスを提供する仮想サーバを論理的に構成する物理サーバ10,10Aと、各物理サーバ10上のジョブのスケジュールを管理する運用管理サーバ20と、すべての物理サーバ10,10Aから参照可能なデータベースを有するデータベースサーバ30と、システム管理者等のユーザからデータ入力を受け付けるコンソール端末40とを備える。各サーバ等の情報処理装置10,10A,20,30,40は、LAN(Local
Area Network)あるいはインターネット等のネットワーク50で相互に接続されている。
なお、コンソール端末40は、独立のサーバマシンによる専用端末として実現してもよいし、物理サーバ10のいずれかに、その機能を搭載することによって実現してもよい。
物理サーバ10,10A、運用管理サーバ20、データベースサーバ30及びコンソール端末40は、いずれも例えば汎用的なコンピュータシステムにより構成され、以下に説明する各サーバ等10,10A,20,30,40内の個々の構成要素または機能は、例えば、コンピュータプログラムを実行することにより実現される。
各物理サーバ10,10Aは、いずれも、サービスプロセスを実現するプログラムが格納されたデータ記憶部11と、自物理サーバの稼動状態を監視する監視部14と、サービスプロセスを実現するプログラムおよび監視部14を実現するプログラム等を起動するプロセス起動部13と、ネットワーク50を介してデータを送受信する送受信部12と、を有している。
プロセス起動部13は、詳細については後述するように、データベースサーバ30の割り当て表311を参照して、データ記憶部11から所定のプログラムを読み出して、自物理サーバに割り当てられたプロセスを起動する。
監視部14は、詳細については後述するように、送受信部12を介してネットワーク50からトリガを取得する。
さらに、いずれか1つの物理サーバ10Aは、各物理サーバ10,10Aに対するサービスプロセスの割り当てが定義された割り当て表を生成する割り当て表生成部15を有している。
割り当て表生成部15は、すべての物理サーバ10,10Aから参照される割り当て表を生成し、データベースサーバ30の共用データベース31に登録する。ここでは、いずれか1つの物理サーバ10Aに割り当て表作成部15を持たせているが、同様な割り当て表生成部15をすべての物理サーバ10,10Aに持たせて、すべての物理サーバ10,10Aから、データベースサーバ30の共用データベース31に割り当て表を登録(新規登録、更新登録)できるようにしてもよい。
データベースサーバ30は、割り当て表311が格納される共用データベース31と、外部からのリクエストに応じてデータベース処理を実行するデータベース処理部32と、を有している。
共用データベース31は、各物理サーバ10,10Aから参照可能である。従って、各物理サーバ10,10Aは、共用データベース31に記憶されている割り当て表311を参照できる。
そして、コンソール端末40は、入力装置及び出力装置を制御する入出力処理部41と、入出力処理部41が受け付けた情報などを記憶するデータ記憶部44と、各物理サーバ10,10A上における仮想サーバの稼動開始の契機となるプロセス起動トリガを生成するトリガ処理部42と、ネットワーク50を介してデータを送受信する送受信部43と、を有している。
入出力処理部41は、仮想サーバを構成するノードグループに属する物理サーバ10,10Aの一覧であるノード一覧情報および仮想サーバにより提供されるサービスの一覧であるサービス一覧情報等のデータの入力を受け付ける。
データ記憶部44は、ノード一覧情報441およびサービス一覧情報442等が格納される。
トリガ処理部42は、ジョブスケジューラ21の指示などに応じて、プロセス起動トリガを生成して、送受信部43を介してネットワーク50に出力する。
運用管理サーバ20は、あらかじめ定められたスケジュールにしたがってコンソール端末40にサービス開始指示を与えるジョブスケジューラ21を有している。
ジョブスケジューラ21は、プロセス起動トリガ生成の契機となるサービス開始指示をコンソール端末40へ与える。
つぎに、割り当て表311のデータ構造、および、その生成に用いられるノード一覧情報441およびサービス一覧情報442のデータ構造について、それぞれ説明する。
図2は、割り当て表311のデータ構造、図3(A)および(B)は、ノード一覧情報441およびサービス一覧情報442のデータ構造を説明するための図である。
図2に示す割り当て表311には、物理サーバごとに割り当て情報が格納されている。各割り当て情報には、物理サーバの識別情報である物理サーバ名情報3111と、物理サーバに割り当てられたサービスごとのプロセス情報3112とが含まれる。例えば、1つの物理サーバに複数のサービス(ここでは2つのサービス)が割り当てられる場合には、レコード3113に示すように、割り当て情報には、物理サーバ名情報3111に対応付けられた、サービス数分のプロセス情報(ここでは、2つのプロセス情報3112A,3112B)が含まれる。そして、プロセス情報3112には、サービスの識別情報であるサービス名情報31121と、サービスプロセスの起動数である起動プロセス数31122と、サービスプロセスの稼動状態を表す情報であるステータス情報31123と、が含まれる。
図3(A)に示すノード一覧情報441には、仮想サーバを構成するノードグループごとのグループ情報が格納される。各グループ情報には、ノードグループの識別情報であるグループ名情報4411と、そのノードグループに属する1つ以上の物理サーバの物理サーバ名情報4412と、が含まれる。
また、図3(B)に示すサービス一覧情報442には、サービスごとのサービス情報が格納されている。各サービス情報には、サービスのサービス名情報4421と、必要とされるサービスプロセスの起動数を示す起動プロセス数4422と、そのサービスが割り当てられたノードグループのグループ名情報4423と、が含まれる。
つぎに、図1のプロセス制御システムにおいて実行される処理について説明する。プロセス制御処理において実行される処理は、プロセス制御処理、および、それに先立ち実行される前処理に分けられる。これらの処理を、前処理、プロセス制御処理の順で説明する。
図4は、前処理のフローチャートである。なお、ここでは、すべての物理サーバ10A,10が同等な処理性能を有することとする。
ユーザが、入力装置を用いて、ノードグループごとのグループ情報(グループ名情報、物理サーバ名情報)の登録をコンソール端末40に指示すると、入出力処理部41が、その指示に応じてノード一覧情報441を生成し、入力されたグループ情報を、このノード一覧情報441のレコードとして登録する。そして、入出力処理部41は、このノード一覧情報441をデータ記憶部44に格納する(S100)。
さらに、ユーザが、入力装置を用いて、サービスごとのサービス情報(サービス名情報、起動プロセス数、グループ名情報)の登録をコンソール端末40に指示すると、入出力処理部41が、その指示に応じてサービス一覧情報442を生成し、入力されたサービス情報を、このサービス一覧情報442のレコードとして登録する。そして、入出力処理部41は、このサービス一覧情報442をデータ記憶部44に格納する(S110)。
その後、ユーザが、入力装置を用いて、割り当て表の作成をコンソール端末40に指示すると、入出力処理部41が、その指示に応じて、割り当て表作成リクエストを、送受信部43を介して、あらかじめ定められた1つの物理サーバ10Aに送信する。
物理サーバ10Aでは、割り当て表作成部15が、送受信部12を介して、コンソール端末40からの割り当て表作成リクエストを受け付けると、ノード一覧情報441およびサービス一覧情報442の参照リクエストを、送受信部12を介してコンソール端末40に送信する。コンソール端末40の送受信部43は、その参照リクエストに応じて、ノード一覧情報441およびサービス一覧情報442をデータ記憶部44から読み出して返信する。
その後、物理サーバ10Aでは、割り当て表作成部15が、送受信部12を介して、コンソール端末40からノード一覧情報441およびサービス一覧情報442を受け付けると、それらの情報441,442に基づき、各仮想サーバが提供するサービスを、対応するノードグループ内の物理ノードに割り振る。例えば、物理ノード一覧情報441からグループ情報を読み出し、このグループ情報のグループ名情報4411に合致するグループ名情報4423を含むすべてのサービス情報をサービス一覧情報442から抽出する。そして、物理サーバ10Aにおいてあらかじめ実施された性能テストにより得られた起動可能プロセス数を物理サーバ1台当たりの起動プロセス上限数として、各サービス情報の起動プロセス数4422に相当する数のアプリケーションプロセスを、グループ情報内の物理サーバ名情報4412に対応する物理サーバに分配する。
そして、割り当て表作成部15は、このような割り当ての結果に基づき割り当て情報を生成する。ここで生成される各割り当て情報のプロセス情報3112のステータス情報31123には、プロセスが起動前状態であることを表す情報「SBY」が登録されている。さらに、割り当て表作成部15は、割り当て表311を生成し、このとき生成した割り当て情報を割り当て表311に登録する(S120)。
その後、割り当て表作成部15は、送受信部12を介して、この割り当て表311の登録リクエストをデータベースサーバ30に送信する。この登録リクエストに応じて、データベースサーバ30のデータベース処理部32は、共用データベース31に割り当て表311を登録する(S130)。これにより、共用データベース31において割り当て表311が一元的に管理され、すべての物理サーバ10A,10が共通の割り当て表311を参照可能となる。
その後、物理サーバ10Aでは、割り当て表作成部15が、送受信部12を介して、データベースサーバ30からの登録成功通知を受け付けると、監視部14を実現するプロセスの起動をプロセス起動部13に指示するとともに、送受信部12を介して、他の物理サーバ10に対して監視プロセス起動リクエストを送信する。これにより、プロセス起動部13が、監視部14を実現するプロセスを起動し、同様に、他の物理サーバ10でも、プロセス起動部13が、監視部14を実現するプロセスを起動する(S140)。
以上の前処理によって、すべての物理サーバ10A,10により参照可能な割り当て表311がデータベースサーバ30の共用データベース31に登録され、かつ、すべての物理サーバ10A,10上の監視部14が、自物理サーバの稼動状態の監視を開始する。この後、プロセス制御システムにおいては、あらかじめスケジューリングされたタイミングで、仮想サーバ上のサービスプロセスの起動を開始するためのプロセス制御処理が実行される。
図5は、プロセス制御処理のフローチャートである。
運用管理サーバ20のジョブスケジューラ21は、あらかじめ定められたスケジュールにしたがって、サービスプロセスの指定を含むプロセス起動メッセージをコンソール端末40に送信する。コンソール端末40では、トリガ処理部42が、送受信部43を介して、このプロセス起動メッセージを受け付けると、指定サービスプロセスに対応するサービス名情報を含むプロセス起動トリガを、すべての物理サーバ10A,10に送信する。
各物理サーバ10A,10上においては、プロセス起動部13が、送受信部12を介してプロセス起動トリガを受け付けると(S200)、送受信部12を介して、このプロセス起動トリガに含まれているサービス名情報と自物理サーバの物理サーバ名情報とを含む参照リクエストをデータベースサーバ30に送信する。データベースサーバ30のデータベース処理部32は、この参照リクエストを受け付けると、それに含まれるサービス名情報および物理サーバ名情報の2つをキーとして、共用データベース31の割り当て表311から割り当て情報のプロセス情報3112を検索する(S210)。
その結果、該当するプロセス情報3112(指定された物理サーバ名情報を含む割り当て情報内の、指定されたサービス名情報を含むプロセス情報)が得られなければ、すなわち、指定サービスプロセスが指定物理サーバに割り当てられていなければ(S220:No)、データベース処理部32は、検索に失敗した旨のメッセージを返信する。この返信メッセージを受け付けた物理サーバ、すなわち、指定サービスプロセスが割り当てられていない物理サーバは何も処理を行わない。
一方、該当する割り当て情報のプロセス情報3112が得られれば、すなわち、指定サービスプロセスが指定物理サーバに割り当てられていれば(S220:Yes)、データベース処理部32は、そのプロセス情報を返信する。このプロセス情報を受け付けた物理サーバ、すなわち、指定サービスプロセスが割り当てられている物理サーバのプロセス起動部13は、このプロセス情報に含まれているステータス情報が、起動前の状態であることを表す「SBY」であるか否かを判定する(S230)。
その結果、ステータス情報が「SBY」でなければ、プロセス起動部13はプロセス起動トリガを破棄する。すなわち、指定サービスプロセスが割り当てられている物理サーバであっても、そのプロセスが起動中または停止の状態であれば、プロセス起動トリガは破棄される(S260)。
また、ステータス情報が「SBY」であれば、プロセス起動部13は、プロセス起動トリガに含まれるサービス名情報に対応するプログラムを記憶部11から読み出し、S220で得たプロセス情報3112の起動プロセス数31122が示す数分のプロセスが自物理サーバ上で起動中となるように、そのプログラムを実行する(S240)。
これにより、指定サービスプロセスが、割り当て表311の起動プロセス数31122に相当する数だけ稼動を開始すると、プロセス起動部13は、起動したプロセスに対応するサービス名情報と自物理サーバの物理サーバ名情報とをキーとする、新たなステータス情報(起動状態であることを表す「RUN」)を含む更新リクエストを、送受信部12を介してデータベースサーバ30に送信する。
この更新リクエストに応じて、データベースサーバ30のデータベース処理部32は、共用データベース31の割り当て表311を更新する。これにより、一方のキーに合致する物理サーバ名情報3111を含む割り当て情報中のプロセス情報3112のうち、他方のキーに合致するサービス名情報を含むプロセス情報3112のステータス情報31123が、起動前の状態であることを表す「SBY」から、起動中の状態であることを表す「RUN」に更新される(S250)。
なお、トリガ処理部42が生成するプロセス起動トリガに、サービス名情報の他にそのサービス名情報に係るプロセスが割り当てられている物理サーバ名情報を含めてもよい。これは、トリガ処理部42が、ジョブスケジューラ21からプロセス起動メッセージを受けたときに、指定サービスプロセスに対応するサービス名情報を含む参照リクエストをデータベースサーバ30へ送信して、共用データベース31の割り当て表311で、このサービス名情報が割り当てられている物理サーバ名情報を取得する。
このようにすれば、プロセス起動トリガを受け付けた物理サーバ10では、上記処理のステップS210を行わず、そのプロセス起動トリガをもって、ステップS220の自物理サーバへの割り当てサービスの有無を判定できる。これにより、プロセス起動トリガを受け付けた物理サーバ10の処理性能を向上できるとともに、データベースサーバ30の処理負荷を軽減することができる。
本実施形態に係る前処理およびプロセス制御処理によれば、物理サーバに対するサービスプロセスの割り当てが定義された割り当て表が、すべての物理サーバから参照可能な共用データベースで一元的に管理されるため、各物理サーバは、その割り当て表内の割り当て情報に基づき、自己に割り当てられたプロセスを起動する。このため、例えば、システムの物理的構成の変更(物理サーバの追加および削除)および論理的構成の変更(稼動プロセスの追加、削除、起動数変更)の際には、共用データベースに登録された割り当て表のみを更新すれば足りる。すなわち、システム管理者は、共用データベースの割り当て表を更新すべく、コンソール端末40上で、ノード一覧情報およびサービス一覧情報を編集してから割り当て表の作成を指示すれば足り、それぞれの物理サーバにおいて、起動すべきプロセスをいちいち再設定する必要がない。このため、ネットワーク分散処理環境の物理的構成および論理的構成の変更に要する作業コストを軽減することができる。
なお、本実施形態においては、指定サービスプロセスに対応するサービス名情報を含むプロセス起動トリガがすべての物理サーバ10A,10に与えられ、すべての物理サーバにおいて、指定サービスプロセスが自物理サーバに割り当てられたものであるか否かを判断しているが、かならずしも、このようにする必要はない。
例えば、指定サービスプロセスに対応するサービス名情報を含むプロセス起動トリガが1つの物理サーバのみに与えられ、この物理サーバのプロセス起動部が、指定サービスプロセスに対応するサービス名情報を含むプロセス情報3112および対応物理サーバ名情報3111を共用データベース31の割り当て表311から取得し、それらの情報を含むメッセージをすべての物理サーバに連携通知するようにしてもよい。通知を受け付けた各物理サーバのプロセス起動部は、自己の物理サーバ名情報が連携通知メッセージに含まれていれば、当該連携通知メッセージを自己宛のものと判断し、上述の場合と同様、プロセス情報に基づき、自物理サーバ上において指定サービスプロセスが起動プロセス数分だけ起動中となるように該当プログラムを実行し、自己の物理サーバ名情報が連携通知メッセージに含まれていなければ、当該連携通知メッセージを自己宛のものではないと判断し、当該連携通知メッセージを破棄するようにすればよい。
また、本実施形態においては、共用データベース31に割り当て表が1つだけ登録される場合を例示したが、例えば、サービス一覧情報においてカレンダー情報を定義しておき、運用管理サーバ20が提供する運用カレンダーごとに割り当て表が生成および登録されるようにしてもよい。これにより、例えば、運用管理サーバ20が提供する運用カレンダーに連動して、物理サーバにより参照される割り当て表が切り替えられるようにすることもできる。
ところで、本実施の形態に係るプロセス制御システムにおいては、いずれかの物理サーバに、なんらかの障害等が発生した場合、その物理サーバに割り当てられていたサービスプロセスが、別の物理サーバに再割り当てされる。以下、これについて説明する。ここでは、物理サーバ10に障害等の停止原因事象が発生した場合を例に挙げる。
物理サーバ10上の監視部14は、障害等の停止原因事象の発生を検出すると、送受信部12を介して、自物理サーバ10の物理サーバ名情報、自物理サーバ10に割り当てられたサービス(停止サービス)のサービス名情報およびそのプロセス数(停止プロセス数)を含む再割り当てリクエストを、あらかじめ定められた物理サーバ10Aに送信する。
あるいは、物理サーバ10上に他の物理サーバ10の状態を監視する監視部をさらに設けておき、この監視部が物理サーバ10の停止原因事象の発生を検出したときに、その物理サーバ10の物理サーバ名情報を含む、再割り当てリクエストを物理サーバ10Aに送信するようにしてもよい。
物理サーバ10Aでは、割り当て表生成部15が、送受信部12を介して、この再割り当てリクエストを受け付けると、そのリクエストに含まれる、停止原因事象が発生した物理サーバ名情報をキーとするステータス更新リクエストを、送受信部12を介してデータベースサーバ30に送信する。このステータス更新リクエストには、ステータス情報を更新するための情報(停止状態であることを表す「STP」)が含まれる。このステータス更新リクエストに応じて、データベースサーバ30のデータベース処理部32は、共用データベース31の割り当て表311を更新する。これにより、キーに合致する物理サーバ名情報3111を含む割り当て情報の各プロセス情報3112のステータス情報31123、すなわち、停止サービスのステータス情報31123が、起動中の状態であることを表す「RUN」から、停止中の状態であることを表す「STP」に更新される。
また、物理サーバ10Aでは、割り当て表生成部15が、停止プロセス数分のプロセスを、例えば、停止原因事象が発生した物理サーバ10が属するノードグループ内の他の正常稼働中の物理ノードに再割り当てする。このときの再割り当ては、どのようなルールにしたがって行われてもよいが、その一例を示すと、以下の通りである。
まず、割り当て表生成部15は、送受信部12を介して、ノード一覧情報441の参照リクエストをコンソール端末40に送信する。この参照リクエストに応じて、コンソール端末40の送受信部43は、データ記憶部44からノード一覧情報441を読み出し、それを物理サーバ10Aに返信する。
その後、割り当て表生成部15は、送受信部12を介してノード一覧情報441を受け付けると、再割り当てリクエストの発信元と同じノードグループに属する他の物理サーバの物理サーバ名情報を、そのノード一覧情報441から読み出す。そして、それらの物理サーバのうちの正常稼働中の物理サーバの割り当て情報(ノード一覧情報441から読み出した物理サーバ名情報に合致する物理サーバ名情報を含む割り当て情報であって、それに含まれるいずれのプロセス情報のステータス情報も「STP」ではないもの)の検索リクエストを、送受信部12を介してデータベースサーバ30に送信する。この検索リクエストに応じて、データベースサーバ30のデータベース処理部32は、検索条件に該当する割り当て情報を共用データベース31の割り当て表311から読み出し、それを物理サーバ10Aに返信する。
そして、割り当て表作成部15は、送受信部12を介して、検索条件に合致する割り当て情報を受け付けると、これらの割り当て情報に含まれるプロセス情報の起動プロセス数に基づき、いずれの物理サーバの起動プロセス数も上述の起動プロセス上限数を超えないように、停止プロセス数分の停止サービスプロセスを、再割り当てリクエストの発信元と同じノードグループに属している正常稼働中の物理サーバに割り振る。
割り当て表作成部15は、このような再割り当ての結果に基づき、停止サービスプロセスを新たに割り当てた物理ノードの割り当て情報を生成する。なお、このとき生成した割り当て情報に含まれるプロセス情報のうち、停止サービスのサービス名情報を含むプロセス情報3112のステータス情報31123には、起動前状態を表す情報「SBY」が登録されている。
その後、割り当て表作成部15は、停止サービスプロセスを新たに割り当てた物理ノードの物理ノード名情報をキーとする割り当て情報更新リクエストを、送受信部12を介してデータベースサーバ30に送信する。この割り当て情報更新リクエストには、停止サービスプロセスを新たに割り当てた物理ノードの割り当て情報が含まれている。
この割り当て情報更新リクエストに応じて、データベースサーバ30のデータベース処理部32は、共用データベース31の割り当て表311を更新する。これにより、キーに合致する物理サーバ名情報3111を含む割り当て情報が、新たな割り当て情報で更新される。
このようにして割り当て表の更新が行われると、割り当て表作成部15は、送受信部12を介して、停止サービスプロセスを起動対象として指定したプロセス起動メッセージをコンソール端末40に送信する。コンソール端末40では、トリガ処理部42が、送受信部43を介して、このプロセス起動メッセージを受け付けると、前述の場合と同様、指定されたサービスプロセスに対応するサービス名情報を含むプロセス起動トリガを、すべての物理サーバ10A,10に送信する。
これにより、各物理サーバ10A,10が、前述の場合と同様な処理によって、共用データベース31の割り当て表311を参照し、起動前状態の停止サービスプロセスが割り当てられているときだけ、割り当てられた起動プロセス数分の停止サービスプロセスが自物理サーバ上において起動状態となるように、停止サービスプロセスに対応するプログラムを実行する。
本実施形態に係るプロセス制御システムによれば、ネットワーク分散処理環境の物理的構成および論理的構成の変更の際に、システム管理者が、個々の物理サーバごとに、起動すべきプロセスを再設定する必要がないため、ネットワーク分散処理環境の物理的構成および論理的構成の変更に要する作業コストを軽減することができる。
上述した本発明の実施形態は、本発明の説明のための例示であり、本発明の範囲をそれらの実施形態にのみ限定する趣旨ではない。当業者は、本発明の要旨を逸脱することなしに、他の様々な態様で本発明を実施することができる。
本発明の一実施形態に係るプロセス制御システムの概略構成図である。 割り当て表のデータ構造の概念図である。 (A)は、ノード一覧情報のデータ構造の概念図、(B)は、サービス一覧情報のデータ構造の概念図である。 プロセス制御処理に先立ち行われる前処理のフローチャートである。 プロセス制御処理のフローチャートである。
符号の説明
10,10A 物理サーバ
11 データ記憶部
12 送受信部
13 プロセス起動部
14 監視部
15 割り当て表生成部
20 運用管理サーバ
21 ジョブスケジューラ
30 データベースサーバ
31 共用データベース
32 データベース処理部
40 コンソール端末
41 入出力処理部
44 データ記憶部
42 トリガ処理部
43 送受信部
50 ネットワーク

Claims (9)

  1. サービスを提供する仮想サーバを構成する複数の物理サーバと、
    前記各物理サーバが参照可能な共有データベースを備えたデータベースサーバとを備え、
    前記複数の物理サーバに含まれる少なくとも1つの第1の物理サーバは、
    前記仮想サーバを構成する1以上の物理サーバに関する物理ノード一覧情報と、前記仮想サーバが提供する複数のサービスを定義したサービス一覧情報を受け付ける手段と、
    前記受け付けた物理ノード一覧情報およびサービス一覧情報に基づいて、前記仮想サーバを構成する各物理サーバに対して、前記複数のサービスに係るプロセスのいずれかを割り当てた割り当て表を生成する割り当て表作成手段と、を備え、
    前記共有データベースには、前記割り当て表が登録されていて、
    前記仮想サーバを構成する各物理サーバは、前記割り当て表を参照して各物理サーバに割り当てられたプロセスを実行することを特徴とするプロセス制御システム。
  2. 前記物理ノード一覧情報および前記サービス一覧情報の入力を受け付け、前記第1の物理サーバに割り当て表作成リクエストを送信するコンソール端末を、さらに備え、
    前記割り当て表作成手段は、前記割り当て表作成リクエストに応じて、前記コンソール端末から前記物理ノード一覧情報および前記サービス一覧情報を取得し、当該物理ノード一覧情報および当該サービス一覧情報に基づいて前記割り当て表を生成する、ことを特徴とする請求項1記載のプロセス制御システム。
  3. 前記コンソール端末は、
    起動対象プロセスを特定した起動トリガを生成し、当該起動トリガを前記各物理サーバに与えるトリガ生成手段を備え、
    前記各物理サーバは、
    前記サービスに係るプロセスを実現するためのプログラムが格納されたデータ記憶手段と、
    前記起動トリガを受け付けると、前記割り当て表を参照して、前記起動トリガで特定されるプロセスが自物理サーバに割り当てられているか否かを判定し、自物理サーバに割り当てられていれば、前記起動トリガで特定される起動対象プロセスを実現するためのプログラムを前記データ記憶手段から読み出して前記起動対象プロセスを起動するプロセス起動手段と、さらに備えることを特徴とする請求項2記載のプロセス制御システム。
  4. 前記コンソール端末は、
    起動対象プロセスを特定した起動トリガを生成し、当該起動トリガを前記各物理サーバに与えるトリガ生成手段を備え、
    前記各物理サーバは、
    前記サービスに係るプロセスを実現するためのプログラムが格納されたデータ記憶手段と、
    与えられたメッセージに自物理サーバの識別情報が含まれている場合に、当該メッセージにおいて指定されたプロセスを実現するプログラムを前記データ記憶手段から読み出し、当該プログラムの実行により前記起動対象プロセスを起動するプロセス起動手段と、をさらに備え、
    前記起動トリガが与えられた物理サーバのプロセス起動手段は、
    前記割り当て表を参照して、前記起動トリガにおいて特定される起動対象プロセスが割り当てられた物理サーバの識別情報を取得し、前記起動対象プロセスの指定および前記物理サーバの識別情報を含む前記メッセージを前記各物理サーバに与える、ことを特徴とする請求項2記載のプロセス制御システム。
  5. 前記割り当て表作成手段は、前記各物理サーバに割り当てられたプロセスの状態の定義をさらに含む割り当て表を生成し、
    前記各物理サーバのプロセス起動手段は、前記割り当て表を参照して、前記起動対象プロセスの状態が起動前であるか否かを判定し、当該起動対象プロセスの状態が起動前であれば、当該起動対象プロセスを起動するとともに、前記割り当て表における当該物理サーバの当該起動対象プロセスの状態を更新させることを特徴とする請求項3または4に記載のプロセス制御システム。
  6. 前記割り当て表作成手段は、前記各物理サーバに割り当てられたプロセスの起動数の定義をさらに含む割り当て表を生成し、
    前記各物理サーバのプロセス起動手段は、前記割り当て表で定義された起動数が示す数の前記起動対象プロセスが、当該物理サーバにおいて起動中となるように、当該起動対象プロセスを起動することを特徴とする請求項3、4および5のいずれか1項に記載のプロセス制御システム。
  7. 前記コンソール端末は、前記複数の物理サーバに含まれる第2の物理サーバであることを特徴とする請求項2〜6のいずれか1項に記載のプロセス制御システム。
  8. サービスを提供する仮想サーバを構成する複数の物理サーバと、前記各物理サーバが参照可能な共有データベースを備えたデータベースサーバとを備えたプロセス制御システムにおいて、
    前記複数の物理サーバに含まれる少なくとも1つの第1の物理サーバが、
    前記仮想サーバを構成する1以上の物理サーバに関する物理ノード一覧情報と、前記仮想サーバが提供する複数のサービスを定義したサービス一覧情報を受け付け、
    前記受け付けた物理ノード一覧情報およびサービス一覧情報に基づいて、前記仮想サーバを構成する各物理サーバに対して、前記複数のサービスに係るプロセスのいずれかを割り当てた割り当て表を生成し、
    前記データベースサーバが、前記共有データベースに前記割り当て表を登録し、
    前記仮想サーバを構成する各物理サーバが、前記割り当て表を参照して各物理サーバに割り当てられたプロセスを実行させることを特徴とするプロセス制御方法。
  9. サービスを提供する仮想サーバを構成する複数の物理サーバと、前記各物理サーバが参照可能な共有データベースを備えたデータベースサーバとを備えたプロセス制御システムのためのコンピュータプログラムであって、
    前記コンピュータプログラムが実行されると、
    前記複数の物理サーバに含まれる少なくとも1つの第1の物理サーバが、
    前記仮想サーバを構成する1以上の物理サーバに関する物理ノード一覧情報と、前記仮想サーバが提供する複数のサービスを定義したサービス一覧情報を受け付け、
    前記受け付けた物理ノード一覧情報およびサービス一覧情報に基づいて、前記仮想サーバを構成する各物理サーバに対して、前記複数のサービスに係るプロセスのいずれかを割り当てた割り当て表を生成し、
    前記データベースサーバが、前記共有データベースに前記割り当て表を登録し、
    前記仮想サーバを構成する各物理サーバが、前記割り当て表を参照して各物理サーバに割り当てられたプロセスを実行させることを特徴とするコンピュータプログラム。
JP2007081889A 2007-03-27 2007-03-27 プロセス制御システム Expired - Fee Related JP4777285B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007081889A JP4777285B2 (ja) 2007-03-27 2007-03-27 プロセス制御システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007081889A JP4777285B2 (ja) 2007-03-27 2007-03-27 プロセス制御システム

Publications (2)

Publication Number Publication Date
JP2008242766A true JP2008242766A (ja) 2008-10-09
JP4777285B2 JP4777285B2 (ja) 2011-09-21

Family

ID=39914043

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007081889A Expired - Fee Related JP4777285B2 (ja) 2007-03-27 2007-03-27 プロセス制御システム

Country Status (1)

Country Link
JP (1) JP4777285B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4743726B1 (ja) * 2010-09-28 2011-08-10 株式会社Csk サーバ復旧システム
JP2011248428A (ja) * 2010-05-24 2011-12-08 Fujitsu Ltd 負荷分散装置及び負荷分散制御方法
JP4852734B1 (ja) * 2010-09-22 2012-01-11 株式会社Csk サービス制御システム
US9311163B2 (en) 2010-01-08 2016-04-12 Nec Corporation Configuration data management system, and configuration data management method
WO2023032103A1 (ja) * 2021-09-01 2023-03-09 楽天モバイル株式会社 ジョブ制御システム及びその制御方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06332833A (ja) * 1993-05-25 1994-12-02 Nec Corp サーバ運用方式
JPH10262044A (ja) * 1997-03-19 1998-09-29 Mitsubishi Electric Corp 中継装置及び中継装置による中継方法
JP2000148708A (ja) * 1998-11-10 2000-05-30 Internatl Business Mach Corp <Ibm> 通信方法、サーバへアクセスする方法、通信システム、サーバにアクセスすることを指示するプログラムコードを含む記憶媒体
JP2001075933A (ja) * 1999-09-01 2001-03-23 Nec Corp 分散処理システム
JP2004318578A (ja) * 2003-04-17 2004-11-11 Hitachi Ltd 情報処理システム
JP2005149423A (ja) * 2003-11-19 2005-06-09 Hitachi Ltd 情報処理システム及び情報処理装置
JP2005339528A (ja) * 2004-04-30 2005-12-08 Hitachi Ltd 計算機システム、管理サーバ、ブレード割り当て方法、ブレード割り当てプログラム、サーバシステム及びサーバの配置方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06332833A (ja) * 1993-05-25 1994-12-02 Nec Corp サーバ運用方式
JPH10262044A (ja) * 1997-03-19 1998-09-29 Mitsubishi Electric Corp 中継装置及び中継装置による中継方法
JP2000148708A (ja) * 1998-11-10 2000-05-30 Internatl Business Mach Corp <Ibm> 通信方法、サーバへアクセスする方法、通信システム、サーバにアクセスすることを指示するプログラムコードを含む記憶媒体
JP2001075933A (ja) * 1999-09-01 2001-03-23 Nec Corp 分散処理システム
JP2004318578A (ja) * 2003-04-17 2004-11-11 Hitachi Ltd 情報処理システム
JP2005149423A (ja) * 2003-11-19 2005-06-09 Hitachi Ltd 情報処理システム及び情報処理装置
JP2005339528A (ja) * 2004-04-30 2005-12-08 Hitachi Ltd 計算機システム、管理サーバ、ブレード割り当て方法、ブレード割り当てプログラム、サーバシステム及びサーバの配置方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9311163B2 (en) 2010-01-08 2016-04-12 Nec Corporation Configuration data management system, and configuration data management method
JP2011248428A (ja) * 2010-05-24 2011-12-08 Fujitsu Ltd 負荷分散装置及び負荷分散制御方法
JP4852734B1 (ja) * 2010-09-22 2012-01-11 株式会社Csk サービス制御システム
JP4743726B1 (ja) * 2010-09-28 2011-08-10 株式会社Csk サーバ復旧システム
JP2012073775A (ja) * 2010-09-28 2012-04-12 Csk Corp サーバ復旧システム
WO2023032103A1 (ja) * 2021-09-01 2023-03-09 楽天モバイル株式会社 ジョブ制御システム及びその制御方法

Also Published As

Publication number Publication date
JP4777285B2 (ja) 2011-09-21

Similar Documents

Publication Publication Date Title
CN108958949B (zh) 应用程序的调用方法及系统
CN114070822B (zh) 一种Kubernetes Overlay IP地址管理方法
JP4777285B2 (ja) プロセス制御システム
CN113382077B (zh) 微服务调度方法、装置、计算机设备和存储介质
WO2014171130A1 (ja) 情報処理システム、配備方法、処理装置、及び、配備装置
JP5352367B2 (ja) 仮想マシン起動端末および仮想マシン起動プログラム
JP2013171301A (ja) ジョブ継続管理装置、ジョブ継続管理方法、及び、ジョブ継続管理プログラム
CN112667383B (zh) 一种任务执行及调度方法、系统、装置、计算设备及介质
JP2006323526A (ja) クラスタ管理プログラム、該プログラムを記録した記録媒体、クラスタ管理方法、ノード、およびクラスタ
JP2009088676A (ja) 運用管理エージェント、統合運用管理サーバ、運用管理サーバ、運用管理対象装置および運用管理対象認識方法
US8205199B2 (en) Method and system for associating new queues with deployed programs in distributed processing systems
CN111835797A (zh) 一种数据处理方法、装置及设备
CN109032674B (zh) 一种多进程管理方法、系统及网络设备
KR100700608B1 (ko) 장치관리시 사용자와의 상호작용 방법 및 그 단말
CN115391058B (zh) 一种基于sdn的资源事件处理方法、资源创建方法及系统
CN108418863B (zh) 控制器集群的管理方法、sdn控制器及存储介质
JP2017027166A (ja) 運用管理装置、運用管理プログラムおよび情報処理システム
CN108234215B (zh) 一种网关的创建方法、装置、计算机设备及存储介质
JP2008129828A (ja) ブレードサーバの動的割り当て方法
JP2000293375A (ja) オブジェクト指向計算機システム及びプログラムを記憶したコンピュータ読み取り可能な記憶媒体
JP2006011801A (ja) モジュール更新プログラム
JP2006139649A (ja) 被監視マシンとエージェントのポート番号変更方法およびシステム
US9019964B2 (en) Methods and systems for routing application traffic
WO2023032104A1 (ja) ジョブ制御システム及びその制御方法
JP5158153B2 (ja) モジュール更新プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090907

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101112

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101124

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110323

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110525

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20110530

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110629

R150 Certificate of patent or registration of utility model

Ref document number: 4777285

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140708

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees