JP2016206965A - Computer system and computer system control method - Google Patents
Computer system and computer system control method Download PDFInfo
- Publication number
- JP2016206965A JP2016206965A JP2015088221A JP2015088221A JP2016206965A JP 2016206965 A JP2016206965 A JP 2016206965A JP 2015088221 A JP2015088221 A JP 2015088221A JP 2015088221 A JP2015088221 A JP 2015088221A JP 2016206965 A JP2016206965 A JP 2016206965A
- Authority
- JP
- Japan
- Prior art keywords
- computer
- active
- standby
- operation information
- active computer
- 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
Links
Images
Landscapes
- Hardware Redundancy (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
本発明は、計算機システムの多重系制御方法に関する。 The present invention relates to a multi-system control method for a computer system.
多重系の計算機システムは、業務を実行する現用系計算機と、現用系計算機を監視して異常を検知したときにその業務を引き継ぐ待機系計算機から構成される。この現用系計算機で異常が発生したときに、待機系計算機が業務を引き継ぐ一連の処理をフェイルオーバ(もしくは系切り替え)と呼ぶ。 The multi-computer system includes an active computer that executes a job and a standby computer that takes over the job when the active computer is monitored and an abnormality is detected. A series of processes in which the standby computer takes over work when an abnormality occurs in the active computer is called failover (or system switching).
フェイルオーバについては、次の3点が求められる。第一に、異常が発生した原因の解析を支援する目的で、異常を起こした現用系計算機のメモリダンプを採取する。第2に、異常を起こした現用系計算機が不適切なデータ出力を行わないように、待機系計算機が業務を引き継ぐ前に現用系計算機の業務を完全に停止させる、あるいは現用系計算機が停止したことを確認する。第三に、フェイルオーバ中の業務停止時間を短くするために、前記現用系計算機の業務停止を極力早いタイミングで実施する。 The following three points are required for failover. First, in order to support the analysis of the cause of the abnormality, a memory dump of the active computer that caused the abnormality is collected. Secondly, to prevent the active computer that caused the abnormality from outputting inappropriate data, the operation of the active computer was completely stopped before the standby computer took over the operation, or the active computer was stopped. Make sure. Third, in order to shorten the business stop time during failover, the current computer is stopped at the earliest possible timing.
近年のオペレーティングシステム(以下OS)は、自身で異常を検知した場合、あるいはマスク不可割込み(NMI=Non Maskable Interrupt)を受信した場合、その時点での第一のOSのメモリ内容を保持したまま第2のOSを起動し、第2のOSがメモリダンプとして第一のOSのメモリ内容を永続的に保存する。 When a recent operating system (hereinafter referred to as OS) detects an abnormality by itself or receives a non-maskable interrupt (NMI = Non Maskable Interrupt), it retains the memory contents of the first OS at that time. The second OS is activated, and the second OS permanently saves the memory contents of the first OS as a memory dump.
特に多重系システムにおいては、現用系計算機の異常を検知した待機系計算機が、公知または周知の手法で現用系計算機にNMIを入力することで、現用系計算機の業務停止と、メモリダンプ処理の開始を同時に実現する。 Especially in a multi-system, a standby computer that detects an abnormality in the active computer inputs the NMI to the active computer using a known or well-known method, so that the operation of the active computer is stopped and memory dump processing is started. At the same time.
しかし、現用系計算機のOSが既にメモリダンプ処理を開始している場合、前記手順に従って待機系計算機が現用系計算機にNMIを入力すると、メモリダンプ処理が停止してしまい、メモリダンプに失敗することがある。 However, if the OS of the active computer has already started memory dump processing, if the standby computer inputs NMI to the active computer according to the above procedure, the memory dump processing stops and the memory dump fails. There is.
メモリダンプ処理を開始した後のNMI入力を抑止する方法として、特許文献1には、「障害の発生した計算機に搭載された機能拡張ボードが割込み指示メッセージに対して発生する割込みに対する割込み処理において、障害情報の保存を実行し、かつ前記機能拡張ボードに対して、前記割込み発生機能と計算機動作停止機能の抑止を指示し、後から送信される計算機の停止を指示するメッセージを無視して障害情報の保存を継続する」技術が開示されている。
As a method of suppressing NMI input after starting the memory dump process,
しかしながら、上記特許文献1では、上述した機能を有する機能拡張ボードを必要とするが、このような特別なハードウェアは広く一般に普及しておらず、様々な地域で、かつ安価に入手することは難しい。さらに、標準的なOSは、当該特別なハードウェアを利用するためのデバイスドライバをサポートしているとは限らない。
However, in
そこで本発明は、上記問題点に鑑みてなされたもので、特別なハードウェアを必要とせずに現用系計算機に異常が発生した時に、メモリダンプが強制的に停止されるのを抑止することを目的とする。 Therefore, the present invention has been made in view of the above problems, and it is possible to prevent a memory dump from being forcibly stopped when an abnormality occurs in an active computer without requiring special hardware. Objective.
本発明は、プロセッサとメモリとを有する計算機を複数有し、前記複数の計算機のうち少なくとも一つを現用系計算機とし、他の計算機のうち少なくとも一つを待機系計算機とし、前記現用系計算機と前記待機系計算機を接続するネットワークとを有する計算機システムであって、前記現用系計算機は、当該現用系計算機に接続されて、当該現用系計算機を管理する計算機管理装置と、業務を提供する第1のOSと、前記第1のOSが稼働中であることを示す第1の稼働情報を前記待機系計算機へ送信する通信部と、前記第1のOSに障害が発生した後に前記メモリの内容を出力する第2のOSと、を有し、前記計算機管理装置は、前記第1のOSの稼働状態を設定可能な第2の稼働情報と、前記待機系計算機に接続されたアダプタと、を有し、前記現用系計算機は、前記業務の開始時に前記計算機管理装置の前記第2の稼働情報に稼働開始を設定し、前記第1のOSが障害により停止したときには、前記第2の稼働情報に稼働停止を設定してから前記第2のOSを起動し、前記待機系計算機は、前記第1の稼働情報を受信してから第1の所定時間が経過した後に、前記第2の稼働情報を取得し、前記第2の稼働情報が前記稼働停止であれば、前記第1のOSが停止したと判定して前記現用系計算機の業務を引き継ぐ。 The present invention includes a plurality of computers having a processor and a memory, wherein at least one of the plurality of computers is an active computer, at least one of the other computers is a standby computer, and the active computer A computer system having a network for connecting the standby computer, wherein the active computer is connected to the active computer, and a computer management device that manages the active computer and a first that provides a service A communication unit that transmits first operating information indicating that the first OS is operating to the standby computer, and the contents of the memory after a failure occurs in the first OS. A second OS for outputting, and the computer management apparatus has second operation information capable of setting an operation state of the first OS, and an adapter connected to the standby computer. The active computer sets the operation start in the second operation information of the computer management apparatus at the start of the operation, and operates in the second operation information when the first OS is stopped due to a failure. After setting the stop, the second OS is started, and the standby computer acquires the second operation information after a first predetermined time has elapsed after receiving the first operation information. If the second operation information is the operation stop, it is determined that the first OS has stopped, and the work of the active computer is taken over.
本発明によれば、特別なハードウェアを必要とせずに、現用系計算機に異常が発生したときには第2のOSによるメモリダンプが強制的に停止されてしまうことを抑止できる。また、待機系計算機は、異常の発生によって停止した現用系計算機が第2のOSに移行するタイミングで現用系計算機の第1のOSの停止を検知できる。これにより、現用系計算機の異常による停止から短時間で待機系計算機に業務を引き継がせることができる。さらに、現用系計算機及び待機系計算機では、OSの改造や特殊なドライバは不要なため、汎用OSを利用することができる。 According to the present invention, it is possible to prevent the memory dump by the second OS from being forcibly stopped when an abnormality occurs in the active computer without requiring special hardware. Further, the standby computer can detect the stop of the first OS of the active computer at the timing when the active computer that has been stopped due to the occurrence of an abnormality shifts to the second OS. As a result, the standby computer can be handed over in a short time from a stop due to an abnormality in the active computer. Furthermore, since the active computer and the standby computer do not require OS modification or special drivers, a general-purpose OS can be used.
以下、本発明の実施形態を添付図面に基づいて説明する。 Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings.
図1は、本発明の第1の実施例を示し、多重系の計算機システムの一例を示すブロック図である。多重系の計算機システムは、複数の計算機のうち少なくとも1台の現用系計算機10と、現用系計算機10を管理する現用系BMC(Baseboard Management Controller)6と、少なくとも1台の待機系計算機20と、待機系計算機20を管理する待機系BMC7と、現用系計算機10と待機系計算機20を接続するネットワーク32と、現用系計算機10と待機系BMC7を接続し、待機系計算機20と現用系BMC6を接続するネットワーク31から構成される。
FIG. 1 is a block diagram showing an example of a multiplex computer system according to the first embodiment of this invention. The multi-computer system includes at least one
現用系計算機10と待機系計算機20は同様に構成され、少なくとも、後述するようにOSを含むソフトウェアプログラムを実行する演算装置11と、前記プログラムおよびその実行に必要なデータを格納するメモリ12と、ハートビート(以下、HB)通信を行う通信装置13と、他系BMCにコマンドを送信するためのLANアダプタ14と、データやメモリダンプの内容を格納するストレージ装置15と、を備える。ここでストレージ装置15は、例えばハードディスクや不揮発性記憶媒体を含む。また、通信装置13は、例えばLANアダプタなどである。
The
現用系計算機10のメモリ12には、業務(図示省略)を提供するための第1のOS(図中1stOS)1と、HBの生成などを行うミドルウェア(図中Middle)2と、第1のOS1が停止した後にメモリダンプを実行する第2のOS(図中2ndOS)3とが格納される。現用系計算機10の演算装置11は、障害が発生するまでは第1のOS1とミドルウェア2を実行する。なお、第1のOS1上で稼働するアプリケーションやサービスが業務として現用系計算機10から提供される。
The
待機系計算機20のメモリ12には、OS4と、現用系計算機10のHBを監視するミドルウェア(図中Middle)5が格納され、演算装置11によって実行される。
The
現用系BMC6は待機系BMC7も同様に構成され、現用系BMC6は現用系計算機10に搭載され、待機系BMC7は待機系計算機20に搭載される。
The active BMC 6 is configured in the same manner as the standby BMC 7. The active BMC 6 is mounted on the
現用系BMC6はネットワーク31を介して待機系計算機20からのコマンドを受信するためのLANアダプタ16と、演算装置19とメモリ8を有する。待機系BMC7も同様に構成され、LANアダプタ16が現用系計算機10からのコマンドを受信する。
The active BMC 6 includes a
メモリ8にはウォッチドッグタイマ(WatchDog Timer、以下WDTとする)18と、WDT18の状態を保持するWDT設定状態17が格納される。WDT設定状態17は、少なくとも「有効状態」と「無効状態」のいずれかが設定される。これらの状態は互いに区別できれば任意の状態や他の値を用いても良い。
The
なお、本実施例において、「有効状態」は現用系計算機10の稼働状態が業務を「開始」していることを示す。また、「無効状態」は現用系計算機10の稼働状態が業務を「停止」していることを示す。
In this embodiment, the “valid state” indicates that the operating state of the
現用系計算機10と現用系BMC6の間はシステムインタフェース30で接続され、例えばシンプルなI/Oポート操作により通信を行うKCS(Keyboard Controller Style)インタフェースが使用される。待機系計算機20と待機系BMC7の間のシステムインタフェース30も同様である。
The
現用系計算機10と待機系計算機20は、現用系BMC6と待機系BMC7を含めて対称的な構成をとり、互いに役割を入れ替えて相互に監視制御しても良い。
The
なお、本実施例1では、メモリ8のメモリ8内にWDT18を設定する例を示したが、図示しないハードウェアでWDTを構成してもよい。
In the first embodiment, the example in which the WDT 18 is set in the
図2は、現用系計算機10が障害によって自発的に停止するケースのタイムチャートである。図2の例では、現用系計算機10自身が異常を検知してOS停止処理(カーネルパニック)と、およびメモリダンプ採取のための第2のOS3の起動処理を行うケースにおいて、現用系計算機10と現用系BMC6、および待機系計算機20の処理の流れを示している。
FIG. 2 is a time chart of a case where the
前述のとおり、現用系計算機10と待機系計算機20はネットワーク32で接続され、現用系計算機10と現用系BMC6はシステムインタフェース30で接続され、さらに現用系BMC6と待機系計算機20はネットワーク31で接続されている。各ステップの詳細は以下の通りである。
As described above, the
ステップ100では、現用系計算機10にて業務を開始する前に、ミドルウェア2が初期設定としてウォッチドッグタイマ(WDT)18を有効化するコマンドを現用系BMC6に送信する。本実施例1ではWDT18を有効状態にするだけであり、WDT18のタイマは開始させない。なお、現用系計算機10は、起動時や業務開始時などで上記初期設定(初期化処理)を行えば良い。
In
ステップ101で、現用系BMC6は、WDT設定状態17を「有効状態」に設定する。
In
ステップ102、102nで、現用系計算機10のミドルウェア5は、所定の時間間隔Tiでネットワーク32を介してハートビート(HB)を待機系計算機20に送信し、現用系計算機10が正常に稼働中であることを繰り返し通知する。
In
ステップ103、103nで、待機系計算機20のミドルウェア2は、現用系計算機10からHBメッセージを受信し、受信時刻を記憶する。
In
ステップ104で、現用系計算機10上で稼働する第1のOS1が自身の不整合を検知し、カーネルパニックとなる。現用系計算機10は、メモリダンプ採取用の第2のOSへの移行処理を開始する。
In
ステップ105では、現用系計算機10が、前記第1のOS1から前記第2のOS3へ移行する中間で実行されるOS非依存処理で、WDT18を無効化するコマンドを、システムインタフェース30を介して現用系BMC6に送信する。
In
ここでOS非依存処理とは、VGAなどの標準的に搭載されるデバイスをシンプルなI/Oポート操作などにより初期化し、第2のOS3の起動に備える処理である。上述のKCSインタフェースによる通信もまたシンプルなI/Oポート操作により実現できるため、OS無しの状態で動作するように実装することは容易である。例えば、メモリ12に格納される第2のOS3の直前に、I/Oポートを操作するコマンドなどをロードしておけば良い。
Here, the OS-independent processing is processing that initializes a standardly mounted device such as VGA by a simple I / O port operation or the like and prepares for the startup of the second OS 3. Since the communication using the above-mentioned KCS interface can also be realized by a simple I / O port operation, it is easy to implement so as to operate without an OS. For example, a command for operating an I / O port may be loaded immediately before the second OS 3 stored in the
ステップ106で、現用系BMC6は、現用系計算機10から無効化コマンドを受信してWDT設定状態17を「無効状態」に更新する。
In
ステップ107で、待機系計算機20は最後にHBを受信してから所定時間Tc202経過したと判定すると、ネットワーク31を介して現用系BMC6に対してWDT状態取得コマンドを送信する。現用系BMC6は、現在のWDT設定状態17である「無効状態」を応答する。待機系計算機20は現用系BMC6のWDT設定状態17が「無効状態」であることを検知する。
If the
ステップ108では、現用系計算機10の異常停止から業務引継ぎまでの時間の要求仕様がTf203とした場合、待機系計算機20は最後にHBを受信してからTf203時間経過したときに、ステップ107で取得したWDT設定状態17を判定する。待機系計算機20は、判定結果が「無効状態」であった場合、現用系計算機10の業務は完全に停止していると認識し、現用系計算機10上で実行していた業務の引継ぎを行う。業務の引継ぎについては、周知または公知の技術を適用すれば良いので、ここでは詳述しない。
In
ステップ109で、現用系計算機10は、第2のOS3の起動処理を行う。
In
ステップ110で、現用系計算機10は、第2のOS3の起動処理が完了すると、メモリダンプ処理を開始する。なお、第2のOS3の起動処理も含め、メモリダンプ処理にはkdump等を採用することができる。
In
ステップ111で、現用系計算機10は、前記第1のOS1のメモリ12の内容を、例えばストレージ装置15などに保存し、メモリダンプを完了する。
In
ステップ112で、現用系計算機10はメモリダンプ完了後、第1のOS1を再起動する。現用系計算機10は、第1のOSを再起動した後は新たな待機系として機能しても良いし、あるいは、再起動させずに停止させても良い。
In
ここで、待機系計算機20が、最後にHBを受信してからWDT状態取得(107)を行うまでの時間Tc202は次のように求める。HBの送信間隔をTi200、カーネルパニック(104)からWDT無効化(105)までの最大所要時間をTd201とする(例えば、Td201は数百ミリ秒である)。このとき、Tc > Ti + Td かつ Tc < Tf を満たす時間Tc202を待機系計算機20のミドルウェア2に設定しておけばよい。また、最後にHBを受信してから業務引継ぎ(108)までの時間Tf203は、上記時間Tc202に所定値を加算してミドルウェア2に設定しておけばよい。
Here, the time Tc202 from when the
以上の処理によって、現用系計算機10及び待機系計算機20は、前記従来例のように特別なハードウェアを必要とせずに、BMCを搭載した標準的な計算機を採用しながら、現用系計算機10に異常が発生したときにはメモリダンプが強制的に停止されてしまうことを抑止できる。
As a result of the above processing, the
そして、また、待機系計算機20は、異常の発生によって停止した現用系計算機10が第2のOS3に移行するタイミングで現用系計算機の第1のOS1の停止を検知できる。これにより、現用系計算機10の異常による業務の停止から短時間で待機系計算機20に業務を引き継がせることができる。さらに、現用系計算機10及び待機系計算機20では、OSの改造や特殊なドライバは不要であるため、汎用OSを利用することができる。
Further, the
図3は、上記図2において、現用系計算機10の第1のOS1がカーネルパニックする代わりに、ハングアップ、例えばOS内部処理の無限ループなどの無応答の障害が発生したケースにおけるタイムチャートである。各ステップにおける詳細は以下の通りである。
FIG. 3 is a time chart in the case where, in FIG. 2, the
ステップ100〜103nは、上記図2のケースと同様である。
ステップ120では、現用系計算機10の第1のOS1がハングアップし、定期的なHBの送信(102)が停止する。
In
ステップ107で、待機系計算機20は最後にHBを受信してから所定時間Tc202経過すると、ネットワーク31を介して現用系BMC6に対してWDT状態取得コマンドを送信する。現用系BMC6は、WDT設定状態17を応答する。待機系計算機20は現用系BMC6のWDT設定状態17が「有効状態」のままであることを検知する。
In
ステップ121で、現用系計算機10の第1のOS1の異常停止から業務引継ぎまでの時間の要求仕様がTf203とした場合、待機系計算機20は最後にHBを受信してからTf203時間経過したときに、前記ステップ107で取得したWDT設定状態17を判定する。そして、WDT設定状態17が「有効状態」であった場合、現用系計算機10の業務は稼働を続けている可能性があるため、待機系計算機20はネットワーク31を介して現用系BMC6にNMIの入力指示を送信し、現用系計算機10における業務の停止とメモリダンプ処理の開始を指令する。
In
ステップ108で、現用系計算機10へのNMIの入力により現用系計算機10の第1のOS1が停止するので、待機系計算機20は現用系計算機10上で実行していた業務の引継ぎを行う。
In
ステップ122で、NMIの入力指示を受信した現用系BMC6は、システムインタフェース30を介して現用系計算機10にNMIを入力する。
In
ステップ104では、NMIを受信した現用系計算機10が、NMIハンドリングとしてカーネルパニック処理を実施する。
In
ステップ105〜106では、上記図2と同様にして、現用系計算機10がWDT18の無効化コマンドを送信し、現用系BMC6がWDT設定状態17を「無効状態」に更新する。
In
ステップ123ではNMIの入力によって現用系計算機10上で稼働する第1のOS1が確実に停止しない場合も想定されるので、待機系計算機20は、NMI入力指示(121)から所定の(Tc−Ti)210時間が経過した後に再度、WDT状態取得を行う。そして、待機系計算機20は、再度取得したWDT設定状態17が「無効状態」であることを判定しても良い。その場合、業務引き継ぎはステップ108では行わず、ステップ123においてWDT設定状態17が「無効状態」であることを判定した後に行う。
In
ステップ109〜112は、上記図2の処理と同様であり、現用系計算機10が第2のOS3を起動してメモリダンプを実行し、メモリダンプの完了後に第1のOS1の再起動を実行する。
以上の処理により、本実施例1では、BMCを搭載した計算機および汎用OSにより構成される多重系の計算機システムにおいて、現用系計算機10で実施されるメモリダンプ処理を止めることなく、現用系計算機10の第1のOSがハングアップなどによって異常停止したことを、待機系計算機20で短時間で検知することができる。
Through the above processing, in the first embodiment, in the multi-computer system configured by the computer equipped with the BMC and the general-purpose OS, the
さらに、障害が発生した現用系計算機10は、メモリダンプ採取用の第2のOS3を起動する前にWDT18を無効化して、待機系計算機20に現用系の業務が停止したことを通知することができる。これによって、現用系計算機10の障害発生から、待機系計算機20が業務を引きつぐまでの時間を短縮することができる。
Further, the
前記従来例のような機能拡張ボードやBMCを使用しない場合では、メモリダンプ採取用の第2のOS3を起動してからLANアダプタ14等の初期化が完了するまでは、待機系計算機20に現用系の業務が停止したことを通知できない。このため、現用系計算機10で障害が発生してから、待機系計算機20が現用系計算機10の業務を引き継ぐまでの待ち時間が長くなる。
In the case where the function expansion board or BMC as in the conventional example is not used, the
これに対して、本実施例1のように、第2のOS3を起動する前にWDT18を無効化しておくことで、待機系計算機20は最後のHBを受信してから時間Tcの経過後にWDT設定状態17を取得して現用系の業務が停止したことを判定することができる。これにより、迅速なフェイルオーバを実現することができる。
On the other hand, as in the first embodiment, by disabling the
なお、上記実施例1では現用系計算機10のミドルウェア2がHBを送信し、待機系計算機20のミドルウェア5で現用系計算機10の障害発生を監視する例を示したが、これらの処理をOSで行ってもよい。
In the first embodiment, the middleware 2 of the
また、本実施例1では、現用系BMC6に搭載されたWDT18の状態を格納するWDT設定状態17を設ける例を示したが、これに限定されるものではない。例えば、現用系計算機10の実行に影響(意図しない作用)を与えることなく、現用系BMC6等で「有効状態」と「無効状態」を設定可能であればよい。すなわち、現用系BMC6のメモリ8に確保した領域や、演算装置11のレジスタ等のリソースうち、現用系計算機10に影響を与えずに利用可能なリソースで「有効状態」と「無効状態」を表せばよい。
Further, in the first embodiment, the example in which the
本発明の第2の実施例は、前記実施例1の図2、3に示したメモリダンプ採取用の第2のOS(Operating System)3の起動を開始した後に、第2のOS3がハングアップした場合に、現用系計算機10にハードリセットを入力し、第1のOS1を再起動させるように変更したものである。これにより、異常発生によって停止した現用系計算機10で、第2のOS3に障害が発生しても新たな待機系として早期に復帰させることを保証できる。
In the second embodiment of the present invention, after starting the second OS (Operating System) 3 for collecting a memory dump shown in FIGS. 2 and 3 of the first embodiment, the second OS 3 hangs up. In this case, a hard reset is input to the
なお、本実施例2の計算機システムの構成は前記実施例1と同様であり、前記実施例1では利用していなかったWDT18の機能を使用する点が相違する。
The configuration of the computer system of the second embodiment is the same as that of the first embodiment, except that the function of the
図5は、本実施例2で現用系BMC6のWDT18を活用するにあたり、WDT設定状態17の状態遷移を簡単に示したものであり、より正確にはIPMI(Intelligent Platform Management Interface)の仕様に準拠する。
FIG. 5 simply shows the state transition of the
まずWDT設定状態17が任意の状態のときに演算装置19が初期設定500を行い、有効状態501に遷移する。このとき、演算装置19がWDT設定状態17の設定項目の一部である初期カウンタをTt、アクションをハードリセットに設定する。
First, when the
次にWDT開始502(実際にはWDTリセットと同じ)コマンドが現用系BMC6に送信されると、WDT設定状態17は開始状態503となり、演算装置19がWDT設定状態17の一部である現在カウンタを前記初期カウンタの値Ttにセットする。
Next, when a WDT start 502 (actually, the same as WDT reset) command is transmitted to the active BMC 6, the
WDT設定状態17が開始状態503にあるとき、予め設定された単位時間経過504すると、演算装置19が前記現在カウンタを1ずつ減算する。
When the
同じくWDT設定状態17が開始状態503にあるとき、WDTリセット505コマンドが現用系BMC6に送信されると、演算装置19は前記現在カウンタの値を前記初期カウンタの値Ttにセットし直す。
Similarly, when the
さらにWDT設定状態17が開始状態503にあるとき、前記現在カウンタが0になると、前記アクションの設定に従い当該現用系BMC6を搭載する計算機にハードリセットを入力し、タイマ発火状態507に遷移する。これにより、現用系計算機10はWDT18のカウントアップによって所定のアクションであるハードリセットが入力されて、強制的に再起動する。
Further, when the
以上を踏まえて、図4、図5を用いて本実施例2を実現する処理を説明する。図4は、メモリダンプ処理用の第2のOS3がハングアップした場合に、自動的に第1のOS1を再起動させる処理の一例を示すタイムチャートである。図4の処理は、前記実施例1の図2のケースに対し、本実施例2を適用するものであるが、前記実施例1の図3のケースについても同様に適用することができる。各ステップの詳細は以下の通りである。
Based on the above, processing for realizing the second embodiment will be described with reference to FIGS. 4 and 5. FIG. 4 is a time chart showing an example of processing for automatically restarting the
ステップ130では、現用系計算機10は業務を開始する前に、初期設定としてWDT18を有効状態501にするコマンドを現用系BMC6に送信する。ここではWDT18を有効状態501にするだけであり、タイマ(現在カウンタ)は開始させない。
In
ステップ131では、現用系BMC6がWDT18の有効化コマンドを受信し、WDT設定状態17を有効状態501に設定する。
In
ステップ102〜104は、前記実施例1の図2と同様であり、HBの送信後に現用系計算機10の第1のOS1が異常の発生によってカーネルパニックとなる。
ステップ132では、メモリダンプ採取用の第2のOS3を起動する前のOS非依存処理において、WDT開始502コマンドを、システムインタフェース30を介して現用系BMC6に送信する。本実施例2も前記実施例1と同様に、第2のOS3を起動する前に、現用系BMC6に対して設定の変更を指令する。
In
ステップ133では、現用系BMC6は、WDT設定状態17を開始状態503に更新する。
In
ステップ107〜109は、前記実施例1の図2と同様であり、更新されたWDT設定状態17を取得した待機系計算機20は、現用系計算機10の業務を引き継ぎ、現用系計算機10では第2のOS3を起動する。
ステップ134〜134nでは、第2のOS3が起動した後、およびメモリダンプ最中において、現用系計算機10は予め設定された一定の周期でWDTリセット505コマンドを、システムインタフェース30を介して現用系BMC6に送信する。
In
ステップ135〜134nでは、現用系BMC6は、WDTリセット505コマンドを受け取り、前記現在カウンタを前記初期カウンタ値Ttにリセットする。そして、現用系BMC6では現在カウンタのカウントを上述のように繰り返す。
In
ステップ110では、現用系計算機10は、第2のOS3の起動処理が完了すると、メモリダンプ処理を開始する。
In
ステップ136では、何らかの原因で、第2のOS3のメモリダンプ処理がハングアップする。ステップ137では、最後のWDTリセット135nから所定の時間Ttが経過した後に、前記現在カウンタが0になり、タイマが発火する。現用系BMC6は、WDT設定状態17を発火状態507に設定し、前記アクションに設定された通り、現用系計算機10にハードリセットを入力する。
In
ステップ138では、ステップ137のハードリセット入力により、現用系計算機10は強制的に再起動される。これにより、現用系計算機10は新たな待機系計算機として復帰することができる。
In
なお、第2のOS3のハングアップ(136)は、ステップ109およびそれ以降のタイミングで起こる場合も同様である。
Note that the hang-up (136) of the second OS 3 is the same when it occurs at the timing of
以上の処理により、本実施例2ではさらに、第1のOS1が停止した後の現用系計算機10で実施される第2のOS3によるメモリダンプ処理において、第2のOS3の起動からメモリダンプ完了までの間にハングアップした場合であっても、待機系計算機20に業務を引き継がせて、予測可能な時間内に現用系計算機10を再起動して新たな待機系として復帰させることが可能となる。
With the above processing, in the second embodiment, in the memory dump processing by the second OS 3 performed by the
また、上記実施例1、2ではNMIやハードリセットを現用系計算機10へ入力する装置として現用系BMC6を用いる例を示したが、これに限定されるものではない。例えば、現用系計算機10にNMIやハードリセットを入力可能な計算機管理装置であれば良い。
In the first and second embodiments, the example in which the active BMC 6 is used as a device for inputting the NMI and the hard reset to the
また、上記実施例1、2では待機系計算機20が現用系BMC6のWDT設定状態17を参照して、現用系計算機10で業務が確実に停止したことを判定したが、WDT設定状態17に限定されるものではない。例えば、現用系計算機10が業務を開始するとき(または開始前)にミドルウェア2または第1のOSが、現用系BMC6または計算機管理装置の業務の開始を示す業務稼働状態に「開始」(=WDT有効)を設定する。
Further, in the first and second embodiments, the
そして、第1のOSがカーネルパニックとなって、第2のOS3を起動する前に、所定のI/O操作によって業務の停止を示す状態を現用系BMC6または現用系の計算機管理装置の業務稼働状態に「停止」(=WDT無効)を設定する。待機系計算機20は、最後のHBから所定時間Tcの経過後に、現用系BMC6または計算機管理装置の業務稼働状態を取得して、「停止」であれば現用系計算機10の業務が確実に停止したと判定して業務を引き継ぐことができる。
Then, before the first OS becomes a kernel panic and the second OS 3 is started, the status indicating that the task has been stopped by a predetermined I / O operation indicates the operation status of the active BMC 6 or the active computer management device. Set “Stop” (= WDT invalid) to the state. The
このように、本発明では、現用系計算機10に接続された計算機管理装置に、業務稼働状態の「開始」または「停止」が設定され、待機系計算機20は、障害の発生を検知したときに業務稼働状態が「停止」であれば、現用系計算機10の業務を引き継いで、迅速なフェイルオーバを実現できる。
As described above, according to the present invention, “start” or “stop” of the business operation state is set in the computer management apparatus connected to the
また、本実施例1、2では、通信装置13が待機系計算機20に所定の周期で送信するHBと、現用系計算機10がWDT設定状態17に設定する状態を用いる例を示したが、これに限定されるものではない。例えば、現用系計算機10が稼働していることを示す第1の稼働情報と、現用系計算機10の第1のOS1が停止したことを示す第2の稼働情報を計算機管理装置に設けてもよい。この場合、待機系計算機20は、最後の第1の稼働情報を受信したときから所定時間後に、計算機管理装置から第2の稼働情報を取得することで、第1のOS1に障害が発生した後に、第1のOS1が確実に停止ししたことを判定することができる。
In the first and second embodiments, the example in which the
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に記載したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加、削除、又は置換のいずれもが、単独で、又は組み合わせても適用可能である。 In addition, this invention is not limited to an above-described Example, Various modifications are included. For example, the above-described embodiments are described in detail for easy understanding of the present invention, and are not necessarily limited to those having all the configurations described. Further, a part of the configuration of one embodiment can be replaced with the configuration of another embodiment, and the configuration of another embodiment can be added to the configuration of one embodiment. In addition, any of the additions, deletions, or substitutions of other configurations can be applied to a part of the configuration of each embodiment, either alone or in combination.
また、上記の各構成、機能、処理部、及び処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、及び機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。 Each of the above-described configurations, functions, processing units, processing means, and the like may be realized by hardware by designing a part or all of them with, for example, an integrated circuit. In addition, each of the above-described configurations, functions, and the like may be realized by software by the processor interpreting and executing a program that realizes each function. Information such as programs, tables, and files for realizing each function can be stored in a memory, a hard disk, a recording device such as an SSD (Solid State Drive), or a recording medium such as an IC card, an SD card, or a DVD.
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。 Further, the control lines and information lines indicate what is considered necessary for the explanation, and not all the control lines and information lines on the product are necessarily shown. Actually, it may be considered that almost all the components are connected to each other.
6 現用系BMC
7 待機系BMC
10 現用系計算機
11 演算装置
12 メモリ
13 通信装置
14 LANアダプタ
15 ストレージ装置
17 WDT設定状態
18 ウォッチドッグタイマ
20 待機系計算機
30 システムインタフェース
31、32 ネットワーク
6 Active BMC
7 Standby BMC
DESCRIPTION OF
Claims (6)
前記現用系計算機は、
当該現用系計算機に接続されて、当該現用系計算機を管理する計算機管理装置と、
業務を提供する第1のOSと、
前記第1のOSが稼働中であることを示す第1の稼働情報を前記待機系計算機へ送信する通信部と、
前記第1のOSに障害が発生した後に前記メモリの内容を出力する第2のOSと、を有し、
前記計算機管理装置は、
前記第1のOSの稼働状態を設定可能な第2の稼働情報と、
前記待機系計算機に接続されたアダプタと、を有し、
前記現用系計算機は、
前記業務の開始時に前記計算機管理装置の前記第2の稼働情報に稼働開始を設定し、
前記第1のOSが障害により停止したときには、前記第2の稼働情報に稼働停止を設定してから前記第2のOSを起動し、
前記待機系計算機は、
前記第1の稼働情報を受信してから第1の所定時間が経過した後に、前記第2の稼働情報を取得し、前記第2の稼働情報が前記稼働停止であれば、前記第1のOSが停止したと判定して前記現用系計算機の業務を引き継ぐことを特徴とする計算機システム。 A plurality of computers each having a processor and a memory; at least one of the plurality of computers is an active computer; at least one of the other computers is a standby computer; and the active computer and the standby computer A computer system having a network connecting
The working computer is
A computer management device that is connected to the active computer and manages the active computer;
A first OS that provides business;
A communication unit that transmits first operation information indicating that the first OS is in operation to the standby computer;
A second OS that outputs the contents of the memory after a failure has occurred in the first OS;
The computer management device is
Second operating information capable of setting the operating state of the first OS;
An adapter connected to the standby computer,
The working computer is
Set the operation start in the second operation information of the computer management device at the start of the business,
When the first OS is stopped due to a failure, the second OS is started after the operation stop is set in the second operation information,
The standby computer is
After the first predetermined time has elapsed since the reception of the first operation information, the second operation information is acquired, and if the second operation information is the operation stop, the first OS A computer system characterized in that it is determined that has stopped and takes over the work of the active computer.
前記計算機管理装置は、
第2の所定時間までカウントすると所定のアクションを実行するウォッチドッグタイマで構成され、
前記現用系計算機は、
前記第2のOSの起動の際に前記ウォッチドッグタイマを開始させ、前記アクションに当該現用系計算機のハードリセットを設定し、第3の所定時間毎に前記ウォッチドッグタイマをリセットすることを特徴とする計算機システム。 The computer system according to claim 1,
The computer management device is
It consists of a watchdog timer that executes a predetermined action when counted up to a second predetermined time,
The working computer is
The watchdog timer is started when the second OS is started, a hard reset of the active computer is set in the action, and the watchdog timer is reset every third predetermined time. Computer system to do.
前記待機系計算機は、
前記第1の稼働情報を受信してから前記第1の所定時間が経過した後に、前記第2の稼働情報を取得し、前記第2の稼働情報が前記稼働開始であれば、前記計算機管理装置にNMIの入力を指令した後に、前記現用系計算機の業務を引き継ぎ、
前記計算機管理装置は、
前記待機系計算機からの指令に基づいて、前記現用系計算機にNMIを入力することを特徴とする計算機システム。 The computer system according to claim 1,
The standby computer is
The computer management device acquires the second operation information after the first predetermined time has elapsed after receiving the first operation information, and the second operation information is the operation start. After instructing the NMI to input, take over the work of the active computer,
The computer management device is
A computer system, wherein an NMI is input to the active computer based on a command from the standby computer.
前記現用系計算機が、業務を提供する第1のOSを稼働させる第1のステップと、
前記現用系計算機が、当該現用系計算機を管理する計算機管理装置の第2の稼働情報に前記第1のOSの稼働開始を設定する第2のステップと、
前記現用系計算機が、前記第1のOSが稼働中であることを示す第1の稼働情報をネットワークを介して前記待機系計算機へ送信する第3のステップと、
前記現用系計算機は、前記第1のOSが障害により停止したときには、前記計算機管理装置の前記第2の稼働情報に稼働停止を設定する第4のステップと、
前記現用系計算機は、前記第1のOSに障害が発生した後に前記メモリの内容を出力する第2のOSを起動する第5のステップと、
前記待機系計算機が、前記第1の稼働情報を受信してから第1の所定時間が経過した後に、前記第2の稼働情報を取得し、前記第2の稼働情報が前記稼働停止であるか否かを判定する第6のステップと、
前記待機系計算機は、前記判定の結果が前記稼働停止であれば、前記第1のOSが停止したと判定して前記現用系計算機の業務を引き継ぐ第7のステップと、
を含むことを特徴とする計算機システムの制御方法。 A plurality of computers having a processor and a memory; at least one of the plurality of computers is an active computer; at least one of the other computers is a standby computer; and the operation provided by the active computer A computer system control method for switching to the standby computer,
A first step in which the active computer operates a first OS that provides business;
A second step in which the active computer sets the start of operation of the first OS in the second operation information of the computer management apparatus that manages the active computer;
A third step in which the active computer transmits first operation information indicating that the first OS is in operation to the standby computer via a network;
A fourth step of setting the operation stop to the second operation information of the computer management apparatus when the first OS is stopped due to a failure;
The active computer starts a second OS that outputs the contents of the memory after a failure occurs in the first OS;
Whether the standby computer obtains the second operation information after the first predetermined time has elapsed since the reception of the first operation information, and whether the second operation information is the operation stop. A sixth step of determining whether or not;
If the result of the determination is the operation stop, the standby computer determines that the first OS has stopped, and a seventh step of taking over the work of the active computer;
A control method for a computer system, comprising:
前記計算機管理装置は、
第2の所定時間までカウントすると所定のアクションを実行するウォッチドッグタイマで構成され、
前記第5のステップは、
前記第2のOSの起動の際に前記ウォッチドッグタイマを開始させ、前記アクションに当該現用系計算機のハードリセットを設定するステップと、
第3の所定時間毎に前記ウォッチドッグタイマをリセットするステップと、
を含むことを特徴とする計算機システムの制御方法。 A control method for a computer system according to claim 4,
The computer management device is
It consists of a watchdog timer that executes a predetermined action when counted up to a second predetermined time,
The fifth step includes
Starting the watchdog timer when starting the second OS, and setting a hard reset of the active computer in the action;
Resetting the watchdog timer every third predetermined time;
A control method for a computer system, comprising:
前記待機系計算機は、前記判定の結果が前記稼働開始であれば、前記計算機管理装置にNMIの入力を指令した後に、前記現用系計算機の業務を引き継ぐ第8のステップと、
前記計算機管理装置が、前記待機系計算機からの指令に基づいて、前記現用系計算機にNMIを入力する第9のステップと、をさらに含み、
前記第4のステップは、
前記第1のOSが前記NMIにより停止したときには、前記計算機管理装置の前記第2の稼働情報に稼働停止を設定し、
前記第5のステップは、
前記第1のOSが前記NMIにより停止した後に前記メモリの内容を出力する第2のOSを起動することを特徴とする計算機システムの制御方法。 A control method for a computer system according to claim 4,
The standby computer, if the result of the determination is the start of operation, after instructing the computer management device to input NMI, the eighth step of taking over the work of the active computer;
The computer management device further includes a ninth step of inputting an NMI to the active computer based on a command from the standby computer;
The fourth step includes
When the first OS is stopped by the NMI, an operation stop is set in the second operation information of the computer management apparatus,
The fifth step includes
A computer system control method, comprising: starting a second OS that outputs the contents of the memory after the first OS is stopped by the NMI.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015088221A JP6424134B2 (en) | 2015-04-23 | 2015-04-23 | Computer system and computer system control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015088221A JP6424134B2 (en) | 2015-04-23 | 2015-04-23 | Computer system and computer system control method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016206965A true JP2016206965A (en) | 2016-12-08 |
JP6424134B2 JP6424134B2 (en) | 2018-11-14 |
Family
ID=57489889
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015088221A Active JP6424134B2 (en) | 2015-04-23 | 2015-04-23 | Computer system and computer system control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6424134B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019078728A (en) * | 2017-10-27 | 2019-05-23 | ローム株式会社 | Monitoring device |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003186681A (en) * | 2001-12-18 | 2003-07-04 | Hitachi Ltd | Multiple computer system |
JP2006072931A (en) * | 2004-09-06 | 2006-03-16 | Fujitsu Ltd | Program for panic dump collection, method, and mechanism |
WO2007077604A1 (en) * | 2005-12-28 | 2007-07-12 | Fujitsu Limited | Information processor and method of monitoring hang-up |
JP2013186781A (en) * | 2012-03-09 | 2013-09-19 | Nec Corp | Cluster system |
JP2014170394A (en) * | 2013-03-04 | 2014-09-18 | Nec Corp | Cluster system |
-
2015
- 2015-04-23 JP JP2015088221A patent/JP6424134B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003186681A (en) * | 2001-12-18 | 2003-07-04 | Hitachi Ltd | Multiple computer system |
JP2006072931A (en) * | 2004-09-06 | 2006-03-16 | Fujitsu Ltd | Program for panic dump collection, method, and mechanism |
WO2007077604A1 (en) * | 2005-12-28 | 2007-07-12 | Fujitsu Limited | Information processor and method of monitoring hang-up |
JP2013186781A (en) * | 2012-03-09 | 2013-09-19 | Nec Corp | Cluster system |
JP2014170394A (en) * | 2013-03-04 | 2014-09-18 | Nec Corp | Cluster system |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019078728A (en) * | 2017-10-27 | 2019-05-23 | ローム株式会社 | Monitoring device |
JP7010663B2 (en) | 2017-10-27 | 2022-01-26 | ローム株式会社 | Monitoring device |
Also Published As
Publication number | Publication date |
---|---|
JP6424134B2 (en) | 2018-11-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4345334B2 (en) | Fault tolerant computer system, program parallel execution method and program | |
JP5851503B2 (en) | Providing high availability for applications in highly available virtual machine environments | |
US9582373B2 (en) | Methods and systems to hot-swap a virtual machine | |
US9176833B2 (en) | Tolerating failures using concurrency in a cluster | |
WO2018095107A1 (en) | Bios program abnormal processing method and apparatus | |
US8880936B2 (en) | Method for switching application server, management computer, and storage medium storing program | |
EP2518627B1 (en) | Partial fault processing method in computer system | |
JP6130520B2 (en) | MULTISYSTEM SYSTEM AND MULTISYSTEM SYSTEM MANAGEMENT METHOD | |
US20150019671A1 (en) | Information processing system, trouble detecting method, and information processing apparatus | |
US7089413B2 (en) | Dynamic computer system reset architecture | |
TW200426571A (en) | Policy-based response to system errors occurring during os runtime | |
EP2835716A1 (en) | Information processing device and virtual machine control method | |
CN109358982B (en) | Hard disk self-healing device and method and hard disk | |
JP6424134B2 (en) | Computer system and computer system control method | |
EP4443291A1 (en) | Cluster management method and device, and computing system | |
JP5342701B2 (en) | Multisystem system and system switching method for multisystem | |
US10817400B2 (en) | Management apparatus and management method | |
JPH1153225A (en) | Fault processor | |
JP6654662B2 (en) | Server device and server system | |
TWI461905B (en) | Computing device capable of remote crash recovery, method for remote crash recovery of computing device, and computer readable medium | |
JP4633553B2 (en) | Debug system, debugging method and program | |
JP7351129B2 (en) | Information processing device and control program for the information processing device | |
JP2015088124A (en) | Information processing device, management device, monitoring device, monitoring program, and monitoring device monitoring method | |
JP7389877B2 (en) | Network optimal boot path method and system | |
JP2016224490A (en) | Redundant system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20171120 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180713 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180904 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20181004 |
|
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: 20181016 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20181022 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6424134 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |