JP2019159609A - 基盤装置、情報処理システム、制御方法及び情報処理システムの構成方法。 - Google Patents

基盤装置、情報処理システム、制御方法及び情報処理システムの構成方法。 Download PDF

Info

Publication number
JP2019159609A
JP2019159609A JP2018043575A JP2018043575A JP2019159609A JP 2019159609 A JP2019159609 A JP 2019159609A JP 2018043575 A JP2018043575 A JP 2018043575A JP 2018043575 A JP2018043575 A JP 2018043575A JP 2019159609 A JP2019159609 A JP 2019159609A
Authority
JP
Japan
Prior art keywords
information processing
server
synchronization
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.)
Granted
Application number
JP2018043575A
Other languages
English (en)
Other versions
JP7120599B2 (ja
Inventor
浩志 丹波
Hiroshi Tamba
浩志 丹波
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.)
NEC Platforms Ltd
Original Assignee
NEC Platforms 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 NEC Platforms Ltd filed Critical NEC Platforms Ltd
Priority to JP2018043575A priority Critical patent/JP7120599B2/ja
Publication of JP2019159609A publication Critical patent/JP2019159609A/ja
Application granted granted Critical
Publication of JP7120599B2 publication Critical patent/JP7120599B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)
  • Information Transfer Systems (AREA)

Abstract

【課題】高可用性サーバを含む情報処理システムを容易に構築できる基盤装置を提供する。【解決手段】基盤装置は、複数の情報処理装置のうち、同期が必要な情報処理装置の組み合わせを指定した同期グループ情報を取得する同期グループ情報取得部と、同期グループ情報に基づいて、同期が必要な一組みの情報処理装置に対して、同位相のクロック信号を送信するクロック配信部と、を備える。【選択図】図1

Description

本発明は、基盤装置、情報処理システム、制御方法及び情報処理システムの構成方法に関する。
プロセッサ、メモリ等を多重化した高可用性サーバが提供されている。例えば、特許文献1には、複数のCPU(central processing unit)モジュールの間で同期をとって、同じタイミングで同一の処理を実行させるロックステップ方式が採用された高可用性サーバにおいて、誤りが検出された場合でもロックステップを外すことなく安定した動作を実現する制御方法が記載されている。特許文献1に記載の制御方法では、1つのCPUモジュールで誤りが検出された場合、その情報を他のCPUモジュールへ送信する。次に全てのCPUモジュールで同期してエラー訂正処理を行う。特許文献1に記載の方法によれば、誤りが検出されたCPUモジュールを切り離すことがなく、エラー訂正処理を行う間も可用性を維持することができる。
特許文献2には、例えば、第1のサーバのデータを、第2のサーバの同期データ領域に保持するようにして複数のサーバ間でデータを同期するデータ同期システムが記載されている。このデータ同期システムでは、第1のサーバに障害が発生すると、第2のサーバを第1のサーバの代替として機能させる。
特開2012−73828号公報 特開2009−265973号公報
一般に高可用性が求められるシステムを構築する場合、システムの用途および重要度に応じてサーバ(高可用性サーバや一般的なサーバ)を選定し、これらを組み合わせてシステムを構築する。システムの構築時には、サーバの選定、構築、動作確認等で膨大な作業が発生する。特許文献1〜特許文献2には、高可用性システムの構築に必要な作業を軽減し、高可用性システムの構築を容易にする技術が開示されていない。
そこでこの発明は、上述の課題を解決する基盤装置、情報処理システム、制御方法及び情報処理システムの構成方法を提供することを目的としている。
本発明の一態様によれば、複数の情報処理装置のうち、同期が必要な情報処理装置の組み合わせを指定した同期グループ情報を取得する同期グループ情報取得部と、前記同期グループ情報に基づいて、同期が必要な一組みの前記情報処理装置に対して、同位相のクロック信号を配信するクロック配信部と、を備える基盤装置である。
本発明の一態様によれば、上記の基盤装置と、複数の前記情報処理装置と、を備え、前記情報処理装置は、前記基盤装置が備えるスイッチ部を介して授受される前記演算結果を比較して一組みの前記情報処理装置の間の同期がとれているかどうかを判定するロックステップ制御部、を備える情報処理システムである。
本発明の一態様によれば、複数の情報処理装置のうち、同期が必要な情報処理装置の組み合わせを指定した同期グループ情報を取得するステップと、前記同期グループ情報に基づいて、同期が必要な一組みの前記情報処理装置に対して、同位相のクロック信号を配信するステップと、を有する制御方法である。
本発明の一態様によれば、同期して動作することができる複数の情報処理装置と、複数の前記情報処理装置のうち、同期が必要な情報処理装置の組み合わせを指定した同期グループ情報に基づいて、同期が必要な一組みの前記情報処理装置に対して同位相のクロック信号を配信するクロック配信部と、を用いて、前記同期グループ情報を設定することにより、少なくとも1台の高可用性サーバを含む情報処理システムを構成する、情報処理システムの構成方法である。
本発明の基盤装置によれば、多重化された高可用性サーバを含む情報処理システムの構築を容易に行うことができる。
本発明の一実施形態による基盤装置の最小構成を示す図である。 本発明の一実施形態による情報処理システムの構成を示すブロック図である。 本発明の一実施形態による情報処理装置の構成を示すブロック図である。 本発明の一実施形態による同期が必要なサーバの設定情報の一例を示す図である。 本発明の一実施形態による同期が必要なサーバの設定処理の一例を示す図である。 本発明の一実施形態による同期処理の一例を示す図である。 本発明の一実施形態による情報処理システムの一例を示す図である。
<一実施形態>
以下、本発明の一実施形態による情報処理システムについて図1〜図7を参照して説明する。
図1は、本発明の一実施形態による基盤装置の最小構成を示す図である。
基盤装置100は、少なくとも1台の高可用性サーバを含む情報処理システムを容易に構築可能とする装置である。1台の高可用性サーバは、複数の情報処理装置を多重化して構成される。基盤装置100を用いると、処理の多重化が要求される高可用性サーバを構築することが可能である。処理の多重化は、例えば、複数の情報処理装置が備えるそれぞれのCPU(central processing unit)の間でロックステップ方式の同期を実行することにより実現する。基盤装置100は、このような要求にこたえる高可用性サーバの構築に必要な機能を提供する。また、基盤装置100によって構成される情報処理システムは、非多重化サーバを含むことができる。基盤装置100を用いると、高可用性サーバと非多重化サーバとが混在する情報処理システムを容易に構築することができる。
図示するように基盤装置100は、同期グループ情報取得部110と、クロック配信部101と、を備える。
同期グループ情報取得部110は、情報処理システムに含まれる複数の情報処理装置のうち、同期が必要な情報処理装置の組み合わせを示す同期グループ情報を取得する。同期グループ情報には、1台の前記情報処理装置に対して2台以上の同期相手となる情報処理装置を設定することが可能である。
クロック配信部101は、同期グループ情報に基づいて、同期が必要な一組みの情報処理装置に対して同位相のクロック信号を送信する。
図2は、本発明の一実施形態による情報処理システムの構成を示すブロック図である。情報処理システム1は、基盤装置100と、基盤装置100に接続される複数の情報処理装置(サーバ201〜20N)と、を含む。図2に例示する情報処理システム1は、例えば、ブレードサーバである。
基盤装置100は、クロック配信部101と、スイッチ部102と、バックプレーン103と、を備えている。
クロック配信部101は、CPUを備えたコンピュータである。クロック配信部101は、同期グループ情報取得部110を備える。同期グループ情報取得部110については図1で説明したとおりである。クロック配信部101は、例えば、水晶振動子などの源振を備える。源振は、所定の周期でクロック信号を出力する。クロック配信部101は、このクロック信号を、サーバ201〜20Nのうち、同期グループ情報に指定された一組みのサーバ群へ配信する。例えば、同期グループ情報に同期すべきサーバの組み合わせとして、サーバ201とサーバ202の組み合わせが指定されている場合、クロック配信部101は、同期グループ情報に基づいて、サーバ201とサーバ202に対して同位相のクロック信号を配信する。
スイッチ部102は、サーバ201〜20Nの間の通信を制御する。例えば、スイッチ部102は、同期が必要な一組みのサーバ201等の間の演算結果の授受を仲介する。例えば、サーバ201とサーバ202を同期させる場合、スイッチ部102は、クロック配信部101が配信するクロック信号の周期(クロック周期)で、サーバ201が出力したサーバ201が備えるCPU241による演算結果を取得し、これをサーバ202へ出力する。また、スイッチ部102は、クロック周期で、サーバ202が出力したサーバ202が備えるCPU242による演算結果を取得し、これをサーバ201へ出力する。
バックプレーン103は、クロック配信部101と、スイッチ部102とを備える。バックプレーン103は、サーバ201〜20Nを筐体104に収納するためのスロットを備えている。各スロットには、クロック配信部101およびスイッチ部102と、サーバ201〜20Nとを通信可能に接続するインタフェースが設けられている。バックプレーン103には、各インタフェースとクロック配信部101やスイッチ部102とを接続する配線が敷設されている。サーバ201〜20Nを、バックプレーン103に接続することにより、クロック配信部101とサーバ201〜20Nとの通信、スイッチ部102とサーバ201〜20Nとの通信、サーバ201〜20Nの間の通信が可能となる。バックプレーン103は、サーバ201〜20Nの各々とクロック配信部101とを接続する破線で示された通信線C1〜CNを備える。バックプレーン103は、サーバ201〜20Nの各々とスイッチ部102とを接続する実線で示された通信線L1〜LNを備える。通信線L1〜LNのことをロックステップインタフェースとも呼ぶ。バックプレーン103は、サーバ管理部261〜26Nの各々とクロック配信部101とを接続する一点鎖線で示された通信線H1〜HNを備える。サーバ管理部261〜26Nは、通信線L0によって互いが通信可能に接続される。
図3は、本発明の一実施形態による情報処理装置の構成を示すブロック図である。図3に情報処理システム1に用いられるサーバ201の構成例を示す。
サーバ201は、メモリ211と、不揮発性ストレージ221と、ネットワークI/F部231と、CPU241と、ロックステップ制御部251と、サーバ管理部261とを備える。サーバ管理部261は、通信ポート271を備えている。図3では、サーバ201を例に説明を行うが、他のサーバ20X(Xは2〜N)についても同様である。例えば、サーバ202は、メモリ212と、不揮発性ストレージ222と、ネットワークI/F部232と、CPU242と、ロックステップ制御部252と、サーバ管理部262とを備える。サーバ管理部262は、通信ポート272を備えている。また、各構成は、以下に説明するものと同様の機能を有している。
メモリ211、不揮発性ストレージ221、ネットワークI/F部231、CPU241は、一般的なサーバに搭載されたものと同様の部品である。
例えば、メモリ211は、RAM(random access memory)等で構成された主記憶装置である。
不揮発性ストレージ221はHDD(hard disk drive)やROM(read only memory)等で構成される。不揮発性ストレージ221は、例えば、以下に説明する制御プログラムαを記憶する。
ネットワークI/F部231は、LANカード等の通信用モジュールで構成される。
CPU241は、OSや各種ソフトウェアを実行するプロセッサである。サーバ201には、サーバ201を含む複数のサーバ20Xによる多重化構成での運用を実現するために必要な制御プログラムα(図示せず)がインストールされる。例えば、サーバ201とサーバ202が多重化して同期して動作する構成の場合にサーバ201でハードウェアの障害などが生じると、同期ずれが生じる。制御プログラムαは、このような場合にサーバ201を多重化構成から論理的に切り離す縮退制御を行う機能を有している。CPU241は、例えば、制御プログラムαを実行する。また、CPU241は、次に説明するロックステップ制御部251と連携して、他のサーバ20Xが備えるCPU24Xとロックステップ方式による同期状態での動作が可能である。また、CPU241は、他のCPU24Xと同期することなく単独で動作する非同期状態での動作が可能である。
ロックステップ制御部251は、ロックステップ方式の同期を実現するための機能を有するハードウェアである。ロックステップ制御部251は、CPU241に接続されている。ロックステップ方式の同期とは、複数のCPUが、クロック周期で同じデータを用いて同じ処理を行うことをいう。ロックステップ制御部251には、ロックステップ方式の同期の実現に必要な機能が実装されている。例えば、ロックステップ制御部251は、クロック周期で、同期が必要な複数のCPU241等が同じ動作を行ったかどうかを確認する判定処理を行う。例えば、サーバ201とサーバ202とが同期する場合、ロックステップ制御部251は、CPU241による演算結果(CPU241のレジスタやメモリ211に記録された情報)と、スイッチ部102を介して取得したCPU242による演算結果(CPU242のレジスタやメモリ212に記録された情報)とをクロック周期で比較して、両者が一致すれば同期が成功していると判定する。同期が成功している場合、サーバ201とサーバ202は、ロックステップ方式の同期を継続する。CPU241による演算結果とCPU242による演算結果とが一致しない場合、ロックステップ制御部251は、同期が失敗している(同期ずれ)と判定する。同期の判定処理は、サーバ202でも行われる。具体的には、ロックステップ制御部252は、CPU242による演算結果と、スイッチ部102を介して取得したCPU241による演算結果とをクロック周期で比較する。両者が一致する場合、ロックステップ制御部252は、同期が成功したと判定する。両者が一致しない場合、ロックステップ制御部252は、同期が失敗し同期ずれが生じたと判定する。
同期が失敗した場合、制御プログラムαが縮退制御を行う。縮退制御を行うと、残りのサーバの間だけでロックステップ方式の同期を継続する。例えば、サーバ205とサーバ206とサーバ207の3台を同期させる場合であって、CPU245の演算結果が、CPU246の演算結果およびCPU247の演算結果と異なる場合、サーバ205のロックステップ制御部255は、CPU245およびメモリ215の同期が失敗したと判定し、その判定結果を、サーバ205の制御プログラムαへ通知する。制御プログラムαは、サーバ205を縮退制御する。サーバ205の縮退後は、サーバ206とサーバ207とが同期した動作を継続する。なお、一般的には2台のサーバで多重化することが多いが、3台のサーバを多重化すると、1台だけ演算結果が異なることに基づいて、同期の成否を判定できるので、同期失敗の原因となるサーバ(上の例ではサーバ205)の特定が容易である。後述するように本実施形態の基盤装置100を用いると、比較的容易に3台のサーバ205〜207を多重化し、これら3台が同期するように構成することができる。
また、2台のサーバ201とサーバ202の同期中に、例えば、ロックステップ制御部251が同期の失敗を判定した場合、その判定の前にサーバ201またはサーバ202でハードウェアの故障が生じている可能性が高い。ロックステップ制御部251は、サーバ201に故障が生じた場合、故障を検出してログに記録する機能を有している。ロックステップ制御部251は、同期失敗を判定すると、ログの記録に基づき、サーバ201側の問題であると判定する。サーバ201にインストールされた制御プログラムαは、ロックステップ制御部251の指示により、サーバ201を縮退制御する。
サーバ管理部261は、サーバ201が備える管理用のコンピュータである。サーバ管理部261は、独自にCPU(図示せず)および当該CPUによって実行される管理プログラムを備え、CPU241とは独立して処理を行う。サーバ管理部261には、電源ユニット(図示せず)から電力が供給され、常時稼働している。サーバ管理部261は、サーバ201が起動していない状態でも稼働することができる。例えば、サーバ201の停止中に、サーバ管理部261は、通信ポート271に接続された外部(情報処理システム1に含まれない)のPC(personal computer)等と通信を行って、同期が必要なサーバの設定情報を、そのPC等から取得する。サーバ管理部261は、取得した設定情報を記憶する。
また、サーバ管理部261は、他のサーバ20X(Xは2〜N)が備えるサーバ管理部26Xと、通信路L0を介して通信を行う。サーバ管理部261は、同期が必要なサーバの設定情報を他のサーバ管理部26Xへ送信する。これにより、サーバ管理部261〜26Nは、設定情報を共有する。
また、サーバ管理部261は、同期が必要なサーバの設定情報から、同期すべきサーバの組み合わせを示す同期グループ情報を生成する。サーバ管理部261は、通信路H1を介して、同期グループ情報をクロック配信部101へ送信する。クロック配信部101は、送信された同期グループ情報に基づいてクロック信号を配信する。
次に同期が必要なサーバの設定情報について説明する。
図4は、本発明の一実施形態による同期が必要なサーバの設定情報の一例を示す図である。
図4に例示するように設定情報は、「サーバ実装位置」、「2ndCPU」、「2ndIO」、「3rdCPU」、「3rdIO」の各項目を有している。「サーバ実装位置」には、基準となるサーバ201〜20Nが収納されるスロットの情報が設定される。「2ndCPU」および「2ndIO」の各項目には、「サーバ実装位置」に設定したスロット位置に収納されたサーバ20x(1〜Nのうち何れか)と同期をとる2台目のサーバ20y(yはxを除く1〜Nのうち何れか)を収納するスロットのスロット番号が設定される。同期させる2台目のサーバが存在しない場合は0が設定される。「3rdCPU」および「3rdIO」の各項目には、「サーバ実装位置」で設定したスロット位置に収納されたサーバ20xと同期をとる3台目のサーバ20z(zはx、yを除く1〜Nのうち何れか)を収納するスロットのスロット番号が設定される。同期させる3台目のサーバが存在しない場合は0が設定される。
図4に例示する設定情報は、バックプレーン103に設けられた例えば7つのスロットにサーバ201〜207の何れかを収納する場合の設定例である。一例として、スロットXにサーバ20X(X:1〜7)を収納する場合を例に説明を行う。1行目のデータは、サーバ201に同期させる2台目のサーバにサーバ202を設定し、サーバ201に同期させる3台目のサーバを設定しないことを示している。2行目のデータには、1行目の設定と対応するデータが設定されている。つまり、2行目のデータは、サーバ202に同期させる2台目のサーバはサーバ201で、サーバ202に同期させる3台目のサーバは存在しないことを示している。具体的な動作については、図5〜図6を用いて説明するが、本実施形態の基盤装置100によれば1〜2行目に例示する設定により、2台のサーバを、高い可用性(ロックステップ方式の同期)を実現しつつ、多重化することができる。
3行目、4行目のデータは、サーバ203およびサーバ204に対して同期させるサーバが存在しないことを示している。つまり、3行目、4行目のデータの「2ndCPU」〜「3rdIO」には、何れも0が設定されている。本実施形態の基盤装置100によれば、1〜4行目に例示する設定を行うことで、高可用性サーバ(サーバ201、202)と、稼働能力を重視した非多重化サーバ(サーバ203、204)とが混在する情報処理システム1を構築することができる。
5行目のデータは、サーバ205に対し、サーバ206(2台目)とサーバ207(3台目)を同期させることを示している。同様に6行目のデータは、サーバ206に対し、サーバ205(2台目)とサーバ207(3台目)を同期させることを示している。7行目のデータは、サーバ207に対し、サーバ205(2台目)とサーバ206(3台目)を同期させることを示している。このような設定を行うことで3台のサーバを多重化し、3台のサーバをロックステップ方式で同期させることができる。なお、図4に例示する設定情報では、最大3台までを同期するサーバとして設定することができるが、これに限定されない。設定情報には、4台以上同期するサーバを設定することができても良いし、2台のみ設定できてもよい。
次に図4の設定情報に基づいて情報処理システム1を構築する場合を例に、情報処理システム1の構成を設定して、少なくとも1台の高可用性サーバを含む情報処理システムを構築する手順や、そのときの情報処理システム1の動作について説明する。
図5は、本発明の一実施形態による同期が必要なサーバの設定処理の一例を示す図である。一例として、サーバ201〜207がバックプレーン103に接続されているとする。また、情報処理システム1は通電しているが、システムとしては起動していない状態であるとする。上記の通り、サーバ201〜207の起動状態にかかわらず、サーバ管理部261〜267は常時稼働している。また、クロック配信部101はクロック信号の配信は行わないが、配信に必要な準備処理を行うことができる。
まず、ユーザが、例えば、サーバ201のサーバ管理部261の通信ポート271に作業用のPCを接続する。ユーザは、PCを操作することにより、図4で例示した設定情報をサーバ管理部261へ入力する。サーバ管理部261は、設定情報を取得する(ステップS11)。サーバ管理部261は、取得した管理情報を自装置の記憶部(図示せず)に書き込んで記憶する。次にサーバ管理部261は、通信路L0を介して、サーバ管理部262〜267へ設定情報を送信する(ステップS12)。サーバ管理部262〜267は、設定情報を取得し(ステップS13)、設定情報を記憶する。次に、例えば、サーバ管理部261が、設定情報に基づいて、同期グループ情報を作成する。図4の設定情報の場合、サーバ管理部261は、例えば、同期させるサーバが収納されたスロット番号を組み合わせて(1,2)、(5,6,7)という同期グループ情報を作成する。次にサーバ管理部261は、作成した同期グループ情報(1,2)、(5,6,7)を、通信路H1を介して、クロック配信部101へ送信する(ステップS14)。クロック配信部101では、同期グループ情報取得部110が、同期グループ情報((1,2)、(5,6,7))を取得する(ステップS15)。クロック配信部101は、同期グループ情報に基づいて、クロック信号を配信する配信先を設定する。
図6は、本発明の一実施形態による同期処理の一例を示す図である。図4に示す設定情報では、サーバ201とサーバ202が多重化される。また、サーバ205〜サーバ207が多重化される。図6にクロックは配信部101、サーバ201、サーバ202の動作の一例を示す。
ユーザが、情報処理システム1へ起動指示を入力する。情報処理システム1は、起動処理を行って起動状態となる。サーバ201は、起動時にサーバ管理部261へ同期相手の情報を問い合わせる。サーバ管理部261は、サーバ201の同期相手としてサーバ202が存在することをCPU241へ通知する。CPU241は、ロックステップ制御部251へ同期相手の情報を通知する。サーバ202においても同様である。つまり、ロックステップ制御部252は、同期相手としてサーバ201の情報を取得する。
基盤装置100およびサーバ201〜207が起動し、通常の運転状態となると、クロック配信部101は、例えば、水晶振動子の発振周期等、所定の周期でクロック信号を配信する。クロック配信部101は、クロック信号の配信タイミングが到来すると(ステップS21;Yes)、同期グループ情報に示される一組みのサーバに向けて、同時に同位相のクロック信号を配信する。例えば、クロック配信部101は、サーバ201に対して通信路C1を介してクロック信号を配信する(ステップS22)。それと同時にクロック配信部101は、サーバ202に対して通信路C2を介して同位相のクロック信号を配信する(ステップS22´)。CPU241とCPU242は、クロック配信部101から取得したクロック信号に同期して動作する。サーバ201とサーバ202は、CPU241による演算結果とCPU242による演算結果を、スイッチ部102を介して授受する(ステップS23)。例えば、ロックステップ制御部251は、クロック周期ごとにCPU241の演算結果を同期相手の情報と共に、通信路L1を介してスイッチ部102へ出力する。ロックステップ制御部252は、クロック周期ごとにCPU242の演算結果を同期相手の情報と共に、通信路L2を介してスイッチ部102へ出力する。スイッチ部102は、同期相手の情報に基づいて、ロックステップ制御部251から取得した演算結果をサーバ202へ出力する。サーバ202では、ロックステップ制御部252がこれを取得する。スイッチ部102は、同期相手の情報に基づいて、ロックステップ制御部252から取得した演算結果をサーバ201へ出力する。サーバ201では、ロックステップ制御部251がこれを取得する。
次にロックステップ制御部251は、CPU241による演算結果とCPU242による演算結果とを比較して同期の判定処理を行う(ステップS24)。それと同時にサーバ202では、ロックステップ制御部252が、CPU242による演算結果とCPU241による演算結果とを比較して同期の判定処理を行う(ステップS24´)。
ロックステップ制御部251による判定結果が成功の場合(ステップS25;Yes)、同期動作を継続する。つまり、CPU241は、クロック信号を所定の周期で受信しつつ、クロック信号と同期して動作し、ロックステップ制御部251は、クロック周期ごとに同期判定を行う。ロックステップ制御部252についても同様に、判定結果が成功の場合(ステップS25´;Yes)、同期動作を継続する。
ロックステップ制御部251による判定結果が失敗(同期ずれ)の場合(ステップS25;No)、失敗時の処理を行う。例えば、ロックステップ制御部251がサーバ201のハードウェア障害を検出しているような場合、サーバ201の制御プログラムαはサーバ201の縮退制御を行う(ステップS26)。同様にロックステップ制御部252による判定結果が失敗(同期ずれ)の場合(ステップS25´;No)、失敗時の処理を行う(ステップS26´)。例えば、サーバ201が原因で同期ずれが生じた場合、サーバ201は論理的に切り離された状態となり、サーバ201とサーバ202で多重化されていた高可用性サーバは、サーバ202のみが動作する運転状態となる。
以上の動作は、図4の設定情報で同期するように設定されたサーバ205〜207についても同様である。つまり、クロック配信部101は、サーバ205〜207に対し、同時に同位相のクロック信号を所定の周期で送信し、サーバ205〜207ではCPU245〜247が、このクロック信号に同期して動作する。そして、ロックステップ制御部255〜257がスイッチ部102を介してクロック周期ごとのCPU245〜247による演算結果を授受して、同期の判定を行う。サーバ205〜207の3台で多重化されている場合、同期の判定で縮退するサーバを特定できる可能性が高くなる。また、1台で同期ずれが生じた場合でも、残りの2台で処理を二重化したまま運用することができる。
また、図4の設定情報で同期相手の設定がないサーバ203〜204について、CPU233、243は、非同期の状態で動作する。クロック配信部101は、サーバ203〜204にはクロック信号を配信しなくてよい。
上記説明したように基盤装置100によれば、設定情報にて、同期相手の設定を行うことで、少なくとも1台の高可用性サーバを含む情報処理システム1を構築することができる。例えば、設定情報にて同期相手に2台のサーバを設定することで、3台のサーバによる同期が可能である。さらに基盤装置100によれば、設定情報にて、同期相手の設定を行わない(図4の例では、0を設定する)ことにより、高可用性サーバと非多重化サーバが混在する情報処理システム1を構築することができる。これにより、システム構築時のサーバ選定、システム構築、動作確認等の作業を軽減し、より短時間かつ柔軟にシステム構築を行うことができる。
図7は、本発明の一実施形態による情報処理システムの一例を示す図である。
図7に情報処理システム1の適用例として、フロント側に多重化したロードバランサを備えたWebシステムの構成例を示す。
Webシステムは、高可用性サーバ300,400A,400Bを含んで構成される。サーバ201Aとサーバ202Aは、同期を行う1台の高可用性サーバ300である。高可用性サーバ300は、ロードバランサである。サーバ203Aは非多重化サーバである。サーバ204A〜205Aは、同期を行う1台の高可用性サーバ400Aである。サーバ206A〜207Aは、同期を行う1台の高可用性サーバ400Bである。高可用性サーバ400A,400Bは、アプリケーションサーバである。高可用性サーバ300は、負荷に応じて高可用性サーバ400Aと高可用性サーバ400Bの何れかに処理を振り分ける。図7の例のようにロードバランサが同期する2台のサーバで構成されている場合、サーバ1台の故障でシステムが停止することがない。
また、ロードバランサはシステムの入口にあたり、停止しないシステムを実現するうえで非常に重要である。例えば、サーバ201A、202Aにサーバ203Aを加えた3台を同期させた構成とすることで、サーバ201A、202Aの2台が故障したような場合にも耐えられる非常に堅固なシステムを構築することが可能となる。また、基盤装置100を用いれば、サーバの多重度の変更も容易である。
また、アプリケーションサーバ(高可用性サーバ400A、400B)についても、処理の重要度に応じて、図7に示す例のように2台ずつを同期させた構成とすることができる。
本実施形態の基盤装置100によれば、ロックステップ方式で同期動作を実現できるサーバ201等を、バックプレーン103に実装したクロック配信部101を源振として動作させる。また、基盤装置100によれば、バックプレーン103に実装したスイッチ部102により、複数のサーバ201等の同期動作用のデータ通信を行う。また、基盤装置100によれば、各サーバ201〜20Nの多重化や非多重化の設定を、運用目的に応じてプログラムすることができる。これにより、ユーザが所望するシステム構成を実現することができる。
上述の基盤装置100は内部に、コンピュータシステムを有している。そして、上述した各処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、CD−ROM、DVD−ROM、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。また、基盤装置100の全ての機能又は一部の機能は、例えば、LSI(Large Scale Integration)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)、FPGA(Field-Programmable Gate Array)、集積回路等で構成されたハードウェアによって実現してもよい。
その他、本発明の趣旨を逸脱しない範囲で、上記した実施の形態における構成要素を周知の構成要素に置き換えることは適宜可能である。また、この発明の技術範囲は上記の実施形態に限られるものではなく、本発明の趣旨を逸脱しない範囲において種々の変更を加えることが可能である。
1・・・情報処理システム
100・・・基盤装置
101・・・クロック配信部
102・・・スイッチ部
103・・・バックプレーン
104・・・筐体
110・・・同期グループ情報取得部
201〜20N・・・サーバ
211・・・メモリ
221・・・不揮発性ストレージ
231・・・ネットワークI/F部
241・・・CPU
251・・・ロックステップ制御部
261・・・サーバ管理部
271・・・通信ポート
C1〜CN、H1〜HN、L0、L1〜LN・・・通信線

Claims (10)

  1. 複数の情報処理装置のうち、同期が必要な情報処理装置の組み合わせを指定した同期グループ情報を取得する同期グループ情報取得部と、
    前記同期グループ情報に基づいて、同期が必要な一組みの前記情報処理装置に対して、同位相のクロック信号を配信するクロック配信部と、
    を備える基盤装置。
  2. 前記同期グループ情報には、1台の前記情報処理装置に対して2台以上の同期相手を含めることが可能である、
    請求項1に記載の基盤装置。
  3. 一組みの前記情報処理装置の間におけるクロック周期での前記情報処理装置による演算結果の授受を制御するスイッチ部、
    をさらに備える請求項1または請求項2に記載の基盤装置。
  4. 前記同期グループ情報取得部と、
    前記クロック配信部と、
    前記スイッチ部と、
    複数の前記情報処理装置を収納するバックプレーンと、
    を備え、
    前記バックプレーンは、複数の前記情報処理装置の各々と、前記同期グループ情報取得部および前記クロック配信部および前記スイッチ部とを通信可能に接続する、
    請求項3に記載の基盤装置。
  5. 請求項4に記載の基盤装置と、
    複数の前記情報処理装置と、
    を備え、
    前記情報処理装置は、
    前記スイッチ部を介して授受される前記演算結果を比較して一組みの前記情報処理装置の同期がとれているかどうかを判定するロックステップ制御部、
    を備える情報処理システム。
  6. 前記情報処理装置が、複数の前記情報処理装置のうち同期が必要な前記情報処理装置を設定した設定情報を取得し、前記設定情報に基づく前記同期グループ情報を前記クロック配信部へ送信するサーバ管理部、
    を備える請求項5に記載の情報処理システム。
  7. 複数の前記情報処理装置が備える前記サーバ管理部を互いに接続する通信路、
    をさらに備え、
    前記設定情報を取得した前記サーバ管理部は、前記通信路を介して、他の前記情報処理装置が備える前記サーバ管理部へ前記設定情報を送信する、
    請求項6に記載の情報処理システム。
  8. 複数の前記情報処理装置のうち、一組みの前記情報処理装置は同期して動作し、他の情報処理装置は非同期で動作する、
    請求項5から請求項7の何れか1項に記載の情報処理システム。
  9. 複数の情報処理装置のうち、同期が必要な情報処理装置の組み合わせを指定した同期グループ情報を取得するステップと、
    前記同期グループ情報に基づいて、同期が必要な一組みの前記情報処理装置に対して、同位相のクロック信号を配信するステップと、
    を有する制御方法。
  10. 同期して動作することができる互いに通信可能な複数の情報処理装置と、
    複数の前記情報処理装置のうち、同期が必要な情報処理装置の組み合わせを指定した同期グループ情報に基づいて、同期が必要な一組みの前記情報処理装置に対して同位相のクロック信号を配信するクロック配信部と、を用いて、
    前記同期グループ情報を設定することにより、
    少なくとも1台の高可用性サーバを含む情報処理システムを構成する、
    情報処理システムの構成方法。
JP2018043575A 2018-03-09 2018-03-09 情報処理システム及び制御方法 Active JP7120599B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018043575A JP7120599B2 (ja) 2018-03-09 2018-03-09 情報処理システム及び制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018043575A JP7120599B2 (ja) 2018-03-09 2018-03-09 情報処理システム及び制御方法

Publications (2)

Publication Number Publication Date
JP2019159609A true JP2019159609A (ja) 2019-09-19
JP7120599B2 JP7120599B2 (ja) 2022-08-17

Family

ID=67993502

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018043575A Active JP7120599B2 (ja) 2018-03-09 2018-03-09 情報処理システム及び制御方法

Country Status (1)

Country Link
JP (1) JP7120599B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6449826B2 (ja) * 2015-12-25 2019-01-09 太陽誘電株式会社 積層セラミック電子部品及びその製造方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030061535A1 (en) * 2001-09-21 2003-03-27 Bickel Robert E. Fault tolerant processing architecture
JP2006209490A (ja) * 2005-01-28 2006-08-10 Fujitsu Ltd 設定情報同期プログラム
US20070294561A1 (en) * 2006-05-16 2007-12-20 Baker Marcus A Providing independent clock failover for scalable blade servers
JP2008046942A (ja) * 2006-08-18 2008-02-28 Nec Corp フォールトトレラントコンピュータ、そのトランザクション同期制御方法
WO2012081115A1 (ja) * 2010-12-16 2012-06-21 三菱電機株式会社 シーケンサシステムおよびその制御方法
JP2013206278A (ja) * 2012-03-29 2013-10-07 Nec Corp 冗長化システム、冗長化方法、冗長化システムの可用性向上方法、及びプログラム
US20130326259A1 (en) * 2011-02-03 2013-12-05 Indrani Paul System and method for multiple backplane time synchronization
JP2015194847A (ja) * 2014-03-31 2015-11-05 日本電気株式会社 フォールトトレラントサーバ、同期化方法、及びプログラム

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030061535A1 (en) * 2001-09-21 2003-03-27 Bickel Robert E. Fault tolerant processing architecture
JP2006209490A (ja) * 2005-01-28 2006-08-10 Fujitsu Ltd 設定情報同期プログラム
US20070294561A1 (en) * 2006-05-16 2007-12-20 Baker Marcus A Providing independent clock failover for scalable blade servers
JP2008046942A (ja) * 2006-08-18 2008-02-28 Nec Corp フォールトトレラントコンピュータ、そのトランザクション同期制御方法
WO2012081115A1 (ja) * 2010-12-16 2012-06-21 三菱電機株式会社 シーケンサシステムおよびその制御方法
US20130326259A1 (en) * 2011-02-03 2013-12-05 Indrani Paul System and method for multiple backplane time synchronization
JP2013206278A (ja) * 2012-03-29 2013-10-07 Nec Corp 冗長化システム、冗長化方法、冗長化システムの可用性向上方法、及びプログラム
JP2015194847A (ja) * 2014-03-31 2015-11-05 日本電気株式会社 フォールトトレラントサーバ、同期化方法、及びプログラム

Also Published As

Publication number Publication date
JP7120599B2 (ja) 2022-08-17

Similar Documents

Publication Publication Date Title
US6378021B1 (en) Switch control method and apparatus in a system having a plurality of processors
JP6084624B2 (ja) 高可用性クラスタにおけるスプリット・ブレイン耐性フェイルオーバ
EP1370945B1 (en) Failover processing in a storage system
US7487377B2 (en) Method and apparatus for fault tolerant time synchronization mechanism in a scaleable multi-processor computer
US8527681B2 (en) Data processing system, data processing method, and apparatus
US8140918B2 (en) Clock supply method and information processing apparatus
CN110580235B (zh) 一种sas扩展器通信方法及装置
JP2011253408A (ja) サーバシステム及びそのbios復旧方法
JP2019159609A (ja) 基盤装置、情報処理システム、制御方法及び情報処理システムの構成方法。
JP6511739B2 (ja) 冗長システムおよび冗長化方法
EP2118749B1 (en) Fast backup of compute nodes in a massively parallel computer system
JP2013114628A (ja) データ管理プログラム、データ管理方法およびストレージ装置
US20180088818A1 (en) Method of data backup and information processing system
US7287187B2 (en) Method and apparatus for supplying redundant power
US9971661B2 (en) Redundant system, method for redundant system, method for controlling node of redundant system and computer readable storage medium
US10996659B2 (en) Method and redundant automation system with a plurality of processor units per hardware unit
JP5604799B2 (ja) フォールトトレラントコンピュータ
JP2020123309A (ja) Ioモジュール二重化制御装置及び方法
US20080052473A1 (en) Information processing apparatus
JP2590239B2 (ja) ロック回路のロック取得方法
JP2012202897A (ja) クライアント端末、サーバ端末、時刻同期方法、プログラム
JP2012221063A (ja) 仮想マシン同期方法及びシステム及び運用系の仮想マシン及びプログラム
US20120254556A1 (en) Control apparatus, storage system, and control method
JP2012008819A (ja) 計算機システム及び計算機の管理方法
JP2019133508A (ja) 分散型構成管理装置、分散型構成管理方法、及び、分散型構成管理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220315

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220511

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220728

R150 Certificate of patent or registration of utility model

Ref document number: 7120599

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150