JP5227637B2 - 分散制御方法 - Google Patents

分散制御方法 Download PDF

Info

Publication number
JP5227637B2
JP5227637B2 JP2008093890A JP2008093890A JP5227637B2 JP 5227637 B2 JP5227637 B2 JP 5227637B2 JP 2008093890 A JP2008093890 A JP 2008093890A JP 2008093890 A JP2008093890 A JP 2008093890A JP 5227637 B2 JP5227637 B2 JP 5227637B2
Authority
JP
Japan
Prior art keywords
server
information
processing
read
predetermined
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2008093890A
Other languages
English (en)
Other versions
JP2009245372A (ja
Inventor
俊彰 宮脇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu FIP Corp
Original Assignee
Fujitsu FIP Corp
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 FIP Corp filed Critical Fujitsu FIP Corp
Priority to JP2008093890A priority Critical patent/JP5227637B2/ja
Publication of JP2009245372A publication Critical patent/JP2009245372A/ja
Application granted granted Critical
Publication of JP5227637B2 publication Critical patent/JP5227637B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、複数のサーバによって所定の処理を効率的に実行するための制御方法、分散サーバシステム、前記方法を実行するためのコンピュータプログラムおよび当該プログラムを格納した記憶媒体に関するものである。
従来、高いフェイルセーフ機能を確保する必要があるサーバについては、二重化構造を有するハードウェアを準備して本番系(通常使用する機器系統)および待機系(本番系の障害時にのみ使用する機器系統)を構成し、障害時に切り替えを行ってフェイルセーフ機能を確保していた。
その結果、従来の構成によった場合には、待機系の機器(ホットスタンバイまたはコールドスタンバイ機器)は障害時以外は処理を行っていないので、通常時も障害時も準備したハードウェアの半分の能力で処理を行うことになり、フェイルセーフのために費用対効果はほぼ1/2になるという問題があった。また、二重化したハードウェアは一般に単体2台分よりも高価であり、一層コストパフォーマンスを低下させる原因にもなっていた。
一方、複数のサーバを制御する際に、一台の制御サーバから複数の被制御サーバに処理情報を送信して処理を実行させる方法も考えられる。この場合、全ての被制御サーバが正常に動作している間はもちろん問題ないが、被制御サーバのうちの1つが障害を生じた場合の処理は複雑になる。すなわち、被制御サーバの障害が発見された場合は、制御サーバから当該被制御サーバに対する処理の実行を指示しないようにして、その間に障害のある被制御サーバを交換する等の対処をすることになる。しかし、制御サーバを通常通り起動したまま、制御サーバが当該被制御サーバに対して処理の実行を指示しないようにすることは一般に容易でなく、通常はそのために制御サーバを一時的に停止させ、結果的にシステム全体を停止することが必要になる。
しかし、制御サーバを一時的であれ停止させることは、間断なく処理を行うことが要求される多くのサーバーシステムにとっては大きな問題である。また、被管理サーバを追加するような場合にも、管理サーバの選択肢に新たなサーバを追加するためには管理サーバを一時停止させること等が必要になる。したがって、上記のような従来のサーバ構成では障害時および機器構成の変更・追加に柔軟に対応することが困難である。
本発明は、従来技術が有する上記の問題を解決することを目的としたものであって、より具体的には、複数のサーバによって所定の処理を行う分散サーバ制御のための方法であって、サーバの障害時にもシステム全体を停止させる必要がなく、サーバの追加・削減等の構成の変更に対しても無停止で柔軟に対応でき、かつ構成全体を安価に実現できる分散サーバ制御方法および同システム等を提供することを目的とする。
上記の目的を達成するために、本発明は、処理情報を格納した記憶手段と、該記憶手段に接続された複数のサーバとを備え、
各サーバに、前記記憶手段に格納された処理情報を読み出させて、これに基づき必要な処理を実行させる分散サーバ制御方法を提案する。
本明細書に於いて処理情報とは、サーバが所定の処理を実行するために必要な情報であって、例えば、当該サーバが他のコンピュータを管理するための管理サーバであれば、被管理コンピュータの特定情報、管理すべき内容等である。記憶手段とは、サーバによって読み出し可能な形態で必要な情報を記録または記憶する手段であればその形態を問わない。例えば、磁気ディスク、光磁気ディスク、メモリーチップ等である。記憶手段は、サーバからのアクセスを処理し、必要に応じてログを残すために必要な演算ユニットを具備するのが望ましい。
本発明においてサーバとは所定のデータ処理を行うコンピュータを総称する意味で用いており、当該コンピュータの呼称(例えば、サーバ、コンピュータ、クライアント)にはよらない。
各サーバからの処理情報の読み出しは、処理情報を格納した記憶手段あるいは別途設けた管理サーバからの指示に起因して行うのではなく、ここのサーバ自体の独立した処理の結果として行うのが好ましい。例えば、サーバによる処理情報の読み出しは、前の処理が終了し次第、前の処理が終了して所定の時間が経過した際、所定の時間間隔で、あるいは所定の時刻表に従って行うことができる。
複数のサーバが複数の被管理コンピュータを管理しているような場合であっても、特定のサーバのみが特定の被管理コンピュータを管理可能なように構成するのではなく、どのサーバも全ての被管理コンピュータを管理可能に構成して、サーバは互いに代替可能に構成しておくのが好ましい。
サーバが記憶手段から処理情報を読み出した際には、記憶手段に処理情報読み出しログを残しておくのが好ましい。このことによって、サーバが処理情報を読み出した際、最後に読み出しが行われたのはいつかを判断することができ、現時点で処理を実行すべきか否かの決定に用いることができる。その際の判断基準は例えば、最終読み出し時刻から所定の時間以上が経過していることを条件に前記必要な処理の実行を開始することであってもよい。
以下に、実施例に基づき本発明を実施するための形態について記載する。以下に記載する実施例は本発明の理解を助けるために記載するものであって、本発明が以下に記載する実施例に限定されることを意味するものではないことは言うまでも無い。
図1は、従来技術に基づく現用系サーバと待機系サーバの切り替えを示す概念図である。通常は現用系のみが処理を行っているが、現用系に支障が生じた場合は待機系に切り替わる。つまり、通常時および障害時を通じて現用系サーバと待機系サーバのうちの何れか一方は休止しているので、設備効率が低い。
図2は、本発明に基づく分散サーバシステムの概念を示す図である。複数の監視サーバ101、102、103が処理情報(監視情報)を格納した記憶手段200に接続されている。記憶手段200は、それ自体サーバであってもよい。複数の監視サーバ101、102、103は全体として被管理(被監視)コンピュータ301a、301b、301c、301dを管理(監視)する。ここで、各監視サーバ101、102、103は、それぞれ独自に単独で被管理(被監視)コンピュータ301a、301b、301c、301dの何れをも管理可能なように構成されている。被管理(被監視)コンピュータはサーバと称しても本来支障はないが、監視サーバとの混同を避けるためにあえて用語を分けたものである。
各監視サーバ101、102、103は、それぞれ独自に、記憶手段200から処理情報(監視情報)を読み出し、当該情報に基づいて被管理(被監視)コンピュータ301a、301b、301c、301dのいずれかを管理するプログラムを実行する。監視サーバは、記憶手段から処理情報を読み出した際は、読み出しの事実を示す読み出しログを残し、管理プログラムを正しく終了した際は管理終了ログを残す(処理情報には対象となる被監視コンピュータの特定情報が含まれる)。このようにしておくことによって、記憶手段から処理情報を読み出した監視サーバは、ログに基づいて、最後に管理が実行されてからもっとも長い時間が経過している被監視コンピュータを決定し、当該被監視コンピュータに対して管理プログラムを実行することができる。
例えば監視サーバ101が被管理コンピュータ301aの管理プログラムを実行して、その結果をaという見出しをつけて記憶手段に記憶させる。また、監視サーバ102は被管理コンピュータ301cについて管理プログラムを実行して、その結果をcという見出しをつけて記憶手段に記憶させる。その結果には管理プログラムの実行を終了した時刻を含めるのが好ましい。ここでは、監視サーバ101が被管理コンピュータ301aを監視すると記載したが、被管理コンピュータ301aは監視サーバ102または103によって監視されることもできるし、監視サーバ101は被管理コンピュータ301a〜301dのいずれをも管理できる。図2は4台の被管理コンピュータに対して8つの管理終了ログを残す場合の例を示した。これは例えば、各被管理コンピュータについて最新の二つの管理ログを残す場合である。所定時間での監視情報を事前にツール等で作成しても良いし、繰り返して読むように1重としても良い。
あるいは記憶手段には処理情報の読み出しログのみを残すようにしてもよい。この場合は、最も長い間処理情報の読み出しが行われていない被監視コンピュータについて管理プログラムを実行することができる。その際、管理プログラムの実行に必要な最大時間よりも大きな打ち切り時間を予め設定しておき、最後の処理情報読み出しからの経過時間が打ち切り時間よりも短ければ、まだ管理プログラムの実行中である可能性があると考えて当該被監視コンピュータについては未だ管理プログラムを実行しないように構成すれば、同一の被監視コンピュータに対して2つの管理プログラムが平行して実行されることを排除できる。2つの管理プログラムが相互に干渉しないものであれば、同時に実行されることを許してもよい。
上記のように構成された本発明に基づく分散サーバシステムにおいて、仮に監視サーバ101に障害が発生した場合、何らの対策が採られなかったとしても残るサーバ102、103によって、サーバ全体としての処理能力(主に処理速度)が1台分低下することを除いて、本来と違いの無い処理が実行される。それは、サーバ102、103が順次処理情報(監視情報)を読み取り、当該情報に従って被監視コンピュータ301a〜301dの監視を実行するからである。したがって、障害の発生したサーバ101をネットワークから解除して他のサーバと交換するか修理後に復旧させるとしても、その間、他のサーバおよび記憶手段200は通常通り動作したままでよい。被監視コンピュータの数が増加した場合など、監視サーバの増設を行う際も、新しい監視サーバを適宜ネットワークに接続するだけでよい点は、障害対策の場合と同じである。
図3は、サーバによって監視を行う場合の監視項目の例である。丸付きの1から8で各監視内容の概要を示す。監視サーバはそれぞれ対象となる被監視コンピュータに対して記載のコマンドを実行して正常な応答の有無を確認する。
図4は、図3では丸付きの1で示したPing監視を例にとって、具体的な監視項目の内容を説明したものである。監視方法としては、監視サーバから被監視コンピュータに対してPingコマンドを送信して、被監視コンピュータから所定時間内に正常なレスポンスがあったか否かによって被監視サーバが正常に動作しているか否かを監視するものである。
図5は、どの監視サーバがどの被監視コンピュータの監視プログラムを実行するかについて説明するための図面である。記憶手段には処理情報(監視情報)として、Ping監視の結果が順次累積記憶されている。たとえば被監視コンピュータ1〜3に関するPing監視結果であるPing1〜Ping3が記憶されており、最新の結果がPing2その前の結果がPing1であるとすると、最も長時間Ping監視が行われていないコンピュータ(つまり次にPing監視すべきコンピュータ)はコンピュータ3であることが分かる。一方、この時どのサーバが記憶手段からPing監視結果を読み出すかは予め決められていない。例えば、各サーバが前の処理を終了した時点で記憶手段にアクセスして処理情報を読み出すように設定されているからである。
図5は図2に示した監視情報をPingを例に説明したものである。図5では被監視コンピュータが1〜3までの3台なので、各監視コンピュータのPing監視情報をPing1〜Ping3と表現している。監視情報には監視済みであるか、未監視であるかを表す情報が含まれる。監視済みとは例えば、監視情報が書き込まれてからまだ所定の時間が経過していない状態をいう。未監視とは例えば、最後の監視を実行した後、所定の時間が経過した場合である。
図6は、監視情報データベースに記載される項目を例示したものである。項目には、監視する情報の種類と内容を示す情報、監視が完了しているか監視中であるかを示す情報(監視処理中状況項目)、監視を行った日時を示す情報、監視サーバのグループ名などが含まれる。監視を行った日時は監視の正常終了ごとに上書きを行い、監視処理中状況は監視の開始によって1を、終了で0を書き込むことによって、最後に正常な監視が行われたのはいつか、現在監視中であるか否かが把握できる。
以上はサーバによって被監視コンピュータを監視する場合を例にとって本発明を説明したが、本発明を適用するサーバは監視サーバに限られず、本発明の技術思想は、複数のサーバが互いに互換性のある機能を有する場合に広く適用可能であることは自明である。
従来技術に基づいてフェイルセーフ機能を実現する構成を示す概念図 本発明の一実施例によるフェイルセーフ機能を示す概念図 本発明に基づく監視項目の例 本発明に基づく監視操作コマンドの例 本発明に基づいて、どの監視サーバがどの被監視コンピュータの監視プログラムを実行するかについて説明するための図 本発明に基づいて監視情報データベースに記載される項目の例

Claims (10)

  1. 複数の制御サーバに接続される複数の被制御サーバに対し、前記複数の制御サーバが所定の処理を実行する分散サーバ制御方法であって、
    前記複数の制御サーバは、記憶手段に接続されていて、
    前記複数の制御サーバの各々は、
    前記記憶手段に格納されている、前記被制御サーバを特定するための特定情報及び処理内容が含まれる処理情報と処理情報読み出しログとを読み出し、
    前記記憶手段から前記処理情報を読み出した際に、前記記憶手段に前記処理情報読み出しログを残し、
    前記処理情報及び前記処理情報読み出しログに基づいて、読み出した前記処理情報に含まれる特定情報に対応する被制御サーバに対して、前記所定の処理を実行するか否かを決定し、
    前記所定の処理を実行すると決定した場合、当該被制御サーバに対して、前記所定の処理を実行する、
    分散サーバ制御方法。
  2. 前記処理情報読み出しログから決定される経過時間及び所定の時間に基づいて、前記制御サーバは、前記所定の処理を実行するか否か決定し、
    前記所定の時間は、前記所定の処理に要する最大時間である、
    請求項1に記載の分散サーバ制御方法。
  3. 前記所定の処理を実行する前記制御サーバは、前記所定の処理の実行が正常終了した場合、前記記憶手段に終了ログを残し、
    前記制御サーバは、
    前記記憶手段に格納されている、前記被制御サーバを特定するための特定情報及び処理内容が含まれる処理情報と、処理情報読み出しログと、終了ログとを読み出し、
    前記処理情報、前記処理情報読み出しログ及び前記終了ログに基づいて、読み出した前記処理情報に含まれる特定情報に対応する被制御サーバに対して、前記所定の処理を実行するか否かを決定する、
    請求項1に記載の分散サーバ制御方法。
  4. 前記所定の処理として、前記制御サーバは、前記被制御サーバの生存状態を確認する、
    請求項1ないし3のいずれか1項に記載の分散サーバ制御方法。
  5. 複数の制御サーバに接続される複数の被制御サーバに対し、前記複数の制御サーバが所定の処理を実行する分散サーバシステムであって、
    記憶手段と、
    前記記憶手段に接続された複数の制御サーバと、
    前記複数の制御サーバによって、所定の処理が実行される、複数の被制御サーバと、を備え、
    前記制御サーバは、
    前記記憶手段に格納されている、前記被制御サーバを特定するための特定情報及び処理内容が含まれる処理情報と処理情報読み出しログとを読み出し、
    前記記憶手段から前記処理情報を読み出した際に、前記記憶手段に前記処理情報読み出しログを残し、
    前記処理情報及び前記処理情報読み出しログに基づいて、読み出した前記処理情報に含まれる特定情報に対応する被制御サーバに対して、前記所定の処理を実行するか否かを決定し、
    前記所定の処理を実行すると決定した場合、当該被制御サーバに対して、前記所定の処理を実行する、
    分散サーバシステム。
  6. 前記処理情報読み出しログから決定される経過時間及び所定の時間に基づいて、前記制御サーバは、前記所定の処理を実行するか否か決定し、
    前記所定の時間は、前記所定の処理に要する最大時間である、
    請求項5に記載の分散サーバシステム。
  7. 前記所定の処理を実行する前記制御サーバは、前記所定の処理の実行が正常終了した場合、前記記憶手段に終了ログを残し、
    前記制御サーバは、
    前記記憶手段に格納されている、前記被制御サーバを特定するための特定情報及び処理内容が含まれる処理情報と、処理情報読み出しログと、終了ログとを読み出し、
    前記処理情報、前記処理情報読み出しログ及び前記終了ログに基づいて、読み出した前記処理情報に含まれる特定情報に対応する被制御サーバに対して、前記所定の処理を実行するか否かを決定する、
    請求項5に記載の分散サーバシステム。
  8. 前記所定の処理として、前記制御サーバは、前記被制御サーバの生存状態を確認する、
    請求項5ないし7のいずれか1項に記載の分散サーバシステム。
  9. 請求項1ないし4のいずれか1項に記載の分散サーバ制御方法を記憶手段および制御サーバに実行させるコンピュータプログラム。
  10. 請求項に記載のコンピュータプログラムを格納した、コンピュータによって読み取り可能な記憶媒体。
JP2008093890A 2008-03-31 2008-03-31 分散制御方法 Active JP5227637B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008093890A JP5227637B2 (ja) 2008-03-31 2008-03-31 分散制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008093890A JP5227637B2 (ja) 2008-03-31 2008-03-31 分散制御方法

Publications (2)

Publication Number Publication Date
JP2009245372A JP2009245372A (ja) 2009-10-22
JP5227637B2 true JP5227637B2 (ja) 2013-07-03

Family

ID=41307146

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008093890A Active JP5227637B2 (ja) 2008-03-31 2008-03-31 分散制御方法

Country Status (1)

Country Link
JP (1) JP5227637B2 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01154276A (ja) * 1987-12-10 1989-06-16 Fujitsu Ltd マルチプロセッサシステムにおけるデータ処理方式
JPH01166161A (ja) * 1987-12-22 1989-06-30 Fujitsu Ltd マルチプロセッサシステムの相互監視方式
JP2001344132A (ja) * 2000-03-30 2001-12-14 Fujitsu Ltd リアルタイムモニタ装置
JP2008015704A (ja) * 2006-07-04 2008-01-24 Fujitsu Ltd マルチプロセッサシステム

Also Published As

Publication number Publication date
JP2009245372A (ja) 2009-10-22

Similar Documents

Publication Publication Date Title
JP4940967B2 (ja) ストレージシステム、ストレージ装置、ファームウェアの活性交換方法、ファームウェアの活性交換プログラム
JPH08335144A (ja) 外部記憶装置
US20170147425A1 (en) System and method for monitoring and detecting faulty storage devices
JP2010524053A (ja) ホストとストレージ・システムとの間のイン・バンド問題ログ・データ収集方法、コンピュータ・プログラム、及びシステム(ホストとストレージ・システムとの間のイン・バンド問題ログ・データ収集)
JP2010067042A (ja) 計算機切り替え方法、計算機切り替えプログラム及び計算機システム
US9348717B2 (en) Storage failure processing in a shared storage architecture
US20100138625A1 (en) Recording medium storing update processing program for storage system, update processing method, and storage system
US11366503B2 (en) System and method of remote power/power over ethernet (POE) device controls
US20120047327A1 (en) Disk array device and control method for the same
JP2005196490A (ja) データ多重化のためのシステム及び方法
US8099634B2 (en) Autonomic component service state management for a multiple function component
WO2010140189A1 (en) Storage system and control methods for the same
JP5440073B2 (ja) 情報処理装置,情報処理装置の制御方法および制御プログラム
JP5504931B2 (ja) テープライブラリ制御装置、テープライブラリ制御方法及びテープライブラリ制御プログラム
JP5227637B2 (ja) 分散制御方法
US9207741B2 (en) Storage apparatus, controller module, and storage apparatus control method
JP2007048017A (ja) ストレージシステム及び記憶制御方法
US20090150459A1 (en) Highly available multiple storage system consistency heartbeat function
JP2012128573A (ja) 二重化システムおよびそのシステムを用いたビル管理システム
JP2009245391A (ja) 情報処理装置、エラー処理方法及びプログラム
WO2017081748A1 (ja) ストレージシステム、及び、ストレージ管理方法
WO2015174223A1 (ja) プログラマブルコントローラ、及び演算処理システム
JP6996602B1 (ja) Bmc、サーバシステム、装置安定度判定方法及びプログラム
JP5096799B2 (ja) クラスタシステム、計算機、および障害対処方法
JP4985033B2 (ja) バックアッププログラム、バックアップ方法およびバックアップ装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101019

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121112

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121120

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121218

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130318

R150 Certificate of patent or registration of utility model

Ref document number: 5227637

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

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350