JP4371942B2 - Cluster system node control program and server - Google Patents
Cluster system node control program and server Download PDFInfo
- Publication number
- JP4371942B2 JP4371942B2 JP2004230425A JP2004230425A JP4371942B2 JP 4371942 B2 JP4371942 B2 JP 4371942B2 JP 2004230425 A JP2004230425 A JP 2004230425A JP 2004230425 A JP2004230425 A JP 2004230425A JP 4371942 B2 JP4371942 B2 JP 4371942B2
- Authority
- JP
- Japan
- Prior art keywords
- time
- node
- service
- cluster system
- predetermined 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Hardware Redundancy (AREA)
Description
本発明はクラスタシステムのノード制御プログラムおよびサーバに関し、特に独立して動作する複数のノードを構成要素とするクラスタシステムにおいて、所定のサービスを提供するノードを調停するためのノード制御プログラムおよびノードを構成するサーバに関する。 The present invention relates to a node control program and a server for a cluster system, and more particularly to a node control program and a node for arbitrating a node that provides a predetermined service in a cluster system including a plurality of nodes that operate independently. Related to the server.
従来、基幹業務などの重要なアプリケーションを実行するサーバの高信頼性を実現するために用いられている技法の1つにクラスタがある。クラスタとは、独立して動作する複数のコンピュータ(サーバ)が組み合わされて、全体として1つのシステムを構成する手法である。クラスタシステムの構成要素であるサーバは、一般にノードと呼ばれる。 Conventionally, there is a cluster as one of techniques used for realizing high reliability of a server that executes an important application such as a core business. A cluster is a technique in which a plurality of computers (servers) that operate independently are combined to form one system as a whole. A server that is a component of a cluster system is generally called a node.
図12は、一般的なクラスタシステムの構成図である。図の例では、クラスタシステム900は、ノードA910と、ノードB920から構成され、サービスを受けるクライアント951、952、953からは、1つのシステムとして認識される。なお、ノードの数は任意である。ノードA910とノードB920との間は、クライアント951、952、953とも接続されるパブリックLAN930と、クラスタシステム900内のノードを接続するプライベートLAN940によって接続される。
FIG. 12 is a configuration diagram of a general cluster system. In the illustrated example, the cluster system 900 includes a
クラスタシステムのノード間では、2重化されているパブリックLANもしくはプライベートLANのどちらかにより、どのノードがサービスを提供するかなどの調停を行っている。そして、クラスタシステム内のいずれかのノードが障害の発生や保守のために利用できなくなると、別のノードが直ちにサービスの提供を開始するフェールオーバー処理を行っている(たとえば、非特許文献1参照)。フェールオーバー処理によって、全体としての処理は中断されることがなく、サービスが提供され、システムの高信頼性を実現している。クラスタシステムが継続して稼動するためには、LAN経路の情報交換が必須であり、単一箇所での故障による影響を防ぐため、各ノード間のLAN経路は2重化されている。 Between nodes of the cluster system, arbitration is performed such as which node provides a service by using either a public LAN or a private LAN that is duplicated. When one of the nodes in the cluster system becomes unavailable due to a failure or maintenance, another node immediately performs a failover process to start providing a service (for example, see Non-Patent Document 1). ). With the failover process, the entire process is not interrupted, and the service is provided, thereby realizing high reliability of the system. In order for the cluster system to continue to operate, information exchange of LAN routes is indispensable, and LAN routes between nodes are duplicated in order to prevent the influence of a failure at a single location.
このようなクラスタシステムでノード間の相互通信ができなくなった場合には、事前に決めた優先度に従って高優先のノードを強制的に動作させたり、LAN以外の経路を利用して調停を行って、サービスの継続を図っている(たとえば、非特許文献2参照)。
しかし、従来の技法では、ノード間の相互通信ができない状態でサービスを継続すると判断されたノードが正常でないと、サービスの継続が困難になってしまうという問題点がある。 However, in the conventional technique, there is a problem that continuation of the service becomes difficult if the node determined to continue the service in a state where mutual communication between the nodes cannot be performed is not normal.
従来のクラスタシステムは、多重化された通信経路の双方が故障することは稀であるという前提にたっている。しかしながら、どのように多重化していてもすべての経路で通信ができなくなる状態が生じ得る。以下、このように相互通信ができなくなる状態をスプリットブレイン(split brain)と呼ぶ。 The conventional cluster system is based on the premise that it is rare that both multiplexed communication paths fail. However, no matter how multiplexed, communication may not be possible on all paths. Hereinafter, such a state in which mutual communication cannot be performed is referred to as a split brain.
スプリットブレインが発生した場合、従来の事前に決めた優先度で起動するノードを決める技法では、高優先度のノードが正常でない場合にはサービスを継続できないという問題点がある。 When split brain occurs, the conventional technique of determining a node to be activated with a predetermined priority has a problem that service cannot be continued if a high priority node is not normal.
また、LAN以外の経路、たとえば、ノード間で共有されるディスク装置と接続するSCSI(Small Computer System Interface)などを使ってどのノードがサービスを継続するか調停を行う技法では、SCSIを介した調停により1のノードが選ばれ、サービスを継続させる。このとき、調停によってサービスを継続しないと判断されたノードは、処理を停止してしまう。もし、サービスを継続したノードに何らかの故障、たとえば、サービスを起動させると検出されるLAN異常などがあったとしても、調停が行われてサービス継続が決定されると、他のノードが起動されることはない。このため、故障のないノードが停止されて故障のあるノードが生き残り、結局サービスが継続されないケースが発生する可能性がある。 In the technique of arbitrating which node continues the service using a route other than the LAN, for example, a SCSI (Small Computer System Interface) connected to a disk device shared between the nodes, arbitration via SCSI is used. As a result, one node is selected and the service is continued. At this time, the node determined not to continue the service due to the arbitration stops the processing. Even if there is some failure in the node that has continued the service, for example, a LAN abnormality detected when the service is activated, when the arbitration is performed and the service continuation is determined, another node is activated. There is nothing. For this reason, there is a possibility that a node without a failure is stopped, a node with a failure survives, and a service is not continued after all.
本発明はこのような点に鑑みてなされたものであり、ノード間の通信が不通となった場合であっても、正常なノードによるサービスの継続を可能にし、クラスタシステムの信頼性を向上させることが可能なクラスタシステムのノード制御プログラムおよびサーバを提供することを目的とする。 The present invention has been made in view of such points, and even when communication between nodes is interrupted, it is possible to continue service by a normal node and improve the reliability of the cluster system. It is an object of the present invention to provide a node control program and a server for a cluster system that can be used.
本発明では上記課題を解決するために、図1に示すようなクラスタシステムを構成するサーバ(ノード)の機能を実現するためのノード制御プログラムが提供される。本発明に係るクラスタシステムのノード制御プログラムは、ノード間の通信が不通となった場合に、所定のサービスが継続されるように各ノードの動作を制御するためのものである。このノード制御プログラムは、コンピュータに、以下の処理を実行させることができる。 In order to solve the above-described problems, the present invention provides a node control program for realizing the function of a server (node) constituting a cluster system as shown in FIG. The node control program of the cluster system according to the present invention is for controlling the operation of each node so that a predetermined service is continued when communication between nodes is interrupted. This node control program can cause a computer to execute the following processing.
コンピュータは、通信監視手段11によって所定のサービスを実行するノードを調停するための情報交換を行う通信路経由の通信不通が検出されると、当該サーバ(ノード)10aが所定のサービスを実行可能な割当て時間と割当て時間を取得する優先順位が予め定義された定義情報が格納された定義情報記憶手段16から定義情報を読み出し、計時手段12の計時する現在時刻を取得する。そして、定義情報に基づき、計時された現在時刻から最も近い次の割当て時間の開始時刻を算出する(ステップS1)。次に、算出された割当て時間の開始時刻まで、サービス処理の起動を遅延する(ステップS2)。そして、割当て時間の開始時刻に到達すると、サービスを起動させ、割当て時間内にサービスが実行できれば動作を継続し、割当て時間内にサービスが実行できない場合は、動作を停止する(ステップS3)。
When the
このようなクラスタシステムのノード制御プログラムをコンピュータに実行させることで、ノード間で行われている所定のサービスを実行するノードを調停するための情報交換に用いる通信路を経由した通信が不通になると、それぞれのノードでは、割当て時間と割当て時間の優先度が定義された定義情報に基づき、次の割当て時間の開始時刻が算出され、開始時刻に到達するまでサービス処理の起動は遅延される。それぞれのノードに付与された優先順位によって、割当て時間が重なることはない。そして、割当て時間の開始時刻になると、サービス処理が起動される。各ノードは、それぞれの割当て時間にサービス処理が実行できるかどうかを試みる。そして、割当て時間内にサービスが実行できれば、サービス処理を継続する。また、サービスが実行できなければ、動作を停止し、他のノードがサービスを実行するのを待つ。 By causing a computer to execute such a node control program of the cluster system, communication via a communication path used for information exchange for arbitrating a node that executes a predetermined service performed between nodes is interrupted. In each node, the start time of the next allocation time is calculated based on the definition information in which the allocation time and the priority of the allocation time are defined, and the activation of the service process is delayed until the start time is reached. The allocation time does not overlap depending on the priority assigned to each node. Then, when the start time of the allocation time is reached, the service process is activated. Each node attempts to perform service processing at its assigned time. If the service can be executed within the allocated time, the service process is continued. If the service cannot be executed, the operation is stopped, and the process waits for another node to execute the service.
また、本発明では上記課題を解決するために、ノードとしてクラスタシステムを構成し、所定のサービスを提供する前記ノードを調停するサーバにおいて、前記サービスを実行可能な割当て時間と、前記割当て時間を取得する優先順位が定義された定義情報を格納する定義情報記憶手段と、現在時刻を計時する計時手段と、前記ノード間の情報交換に用いられる通信路経由の通信の不通が検出されると、前記定義情報記憶手段に格納された前記定義情報に基づいて、前記計時手段より取得した前記現在時刻から最も近い次の割当て時間の開始時刻を算出する割当て時間算出手段と、前記開始時刻まで前記サービスの起動を遅延させる遅延手段と、前記開始時刻に到達すると、前記サービスを起動し、前記割当て時間内に前記サービスが実行できれば動作を継続させる処理手段と、を具備することを特徴とするサーバ、が提供される。 Further, in the present invention, in order to solve the above-mentioned problem, an allocation time for executing the service and the allocation time are acquired in a server that configures a cluster system as a node and arbitrates the node that provides a predetermined service. A definition information storage means for storing definition information in which priority order is defined, a time measuring means for measuring the current time, and when communication failure is detected via a communication path used for information exchange between the nodes, Based on the definition information stored in the definition information storage means, allocation time calculation means for calculating the start time of the next allocation time closest to the current time acquired from the time measuring means, and the service time until the start time Delay means for delaying start-up, and when the start time is reached, the service is started and the service is executed within the allotted time. Server, characterized by comprising processing means to continue the operation, the if Re is provided.
このような構成のサーバでは、定義情報記憶手段に割当て時間とサーバごとに設定される優先順位の定義情報が格納されている。割当て時間算出手段は、所定のサービスを提供するノードを調停するための情報交換を行う通信路経由の通信が不通となったことを検出すると、定義情報記憶手段から定義情報を読み出し、現在時刻から最も近い次の割当て時間の開始時刻を算出する。遅延手段は、現在時刻から割当て時間の開始時間までサービスの起動を遅延させる。そして、割当て時間の開始時刻になると、処理手段は、サービス処理を起動する。このとき、割当て時間内にサービスが実行できれば、動作を継続し、サービスを継続させる。また、割当て時間内にサービスが実行できない場合、処理を停止させる。 In the server having such a configuration, definition information of allocation time and priority order set for each server is stored in the definition information storage means. The allocation time calculation means reads the definition information from the definition information storage means when detecting that communication via the communication path for exchanging information for arbitrating the node providing the predetermined service is interrupted, and from the current time The start time of the next next assigned time is calculated. The delay means delays activation of the service from the current time to the start time of the allocated time. Then, when the allocation time start time is reached, the processing means starts the service processing. At this time, if the service can be executed within the allocated time, the operation is continued and the service is continued. If the service cannot be executed within the allocated time, the process is stopped.
本発明では、独立して動作を行うクラスタシステムのノード間の通信が不通となった場合、予めそれぞれのノードに設定された優先順位と割当て時間とに基づき、ノードが順々にサービスの起動を試みる。そして、サービスが実行できたノード(故障のないノード)にサービスを継続させる。このように、ノード間の通信が不通になった場合でも、各ノードがサービスの稼動を試行することで、故障のないノードがサービス処理を行えるようになり、結果として、サービスの継続性を高めることができる。 In the present invention, when communication between nodes of the cluster system that operates independently is interrupted, the nodes start the services in sequence based on the priority order and the allocation time set in advance for each node. Try. Then, the service is continued at the node that has been able to execute the service (the node without a failure). In this way, even when communication between nodes is interrupted, each node tries to operate the service, so that a node without a failure can perform service processing, and as a result, the continuity of service is improved. be able to.
以下、本発明の実施の形態を図面を参照して説明する。まず、実施の形態に適用される発明の概念について説明し、その後、実施の形態の具体的な内容を説明する。
図1は、本発明の実施の形態に適用される発明の概念図である。
Hereinafter, embodiments of the present invention will be described with reference to the drawings. First, the concept of the invention applied to the embodiment will be described, and then the specific contents of the embodiment will be described.
FIG. 1 is a conceptual diagram of the invention applied to the embodiment of the present invention.
本発明に係るクラスタシステム1は、複数のノード、図の例では、サーバ(ノード)10aとサーバ(ノード)10bとから構成され、それぞれのノードからアクセス可能な共有ディスク装置20を備える。
The
サーバ(ノード)10aは、通信状態を監視する通信監視手段11、時刻を計時する計時手段12、パブリックLAN3による通信を制御する通信制御手段13、プライベートLAN4による通信を制御する通信制御手段14、ノードの動作を制御するノード制御部15および定義情報記憶手段16を具備する。
The server (node) 10a includes a
通信監視手段11は、通信制御手段13および通信制御手段14による通信状態を監視し、双方の通信路においてサーバ(ノード)10aと他のノードとの間の通信状態を判定する。一般に、クラスタシステムでは、LANを通じ、ノード間で情報交換を行っている。そこで、パブリックLAN3およびプライベートLAN4のいずれの経路でも他のノードとの通信が不通となったとき、ノード制御部15はスプリットブレインの発生を検出する。
The
計時手段12は、自装置内で時刻を計時するとともに、たとえばパブリックLAN3を介して接続する管理装置から時間情報を取得し、時計の時刻調整を行う。管理装置は、クラスタシステムを含むグループ全体を管理する装置で、管理の一つに、グループ全体の装置の計時する時刻を合わせる時刻調整管理がある。計時手段12では、時刻調整のための時間情報を取得し、自装置の時計の時刻調整を行う。これにより、クラスタシステム内のノードの時刻がほぼ一致するようになる。なお、時間情報が取得できない場合は、そのまま計時を継続するとともに、定義情報の優先順位を下げる。たとえば、優先度の高い順に1から整数が振られている場合、最大の優先順位の次の値としたり、現在設定されている優先順位の値にノード数を加算する。
The time measuring means 12 measures the time in its own device, acquires time information from, for example, a management device connected via the
通信制御手段13は、サーバ(ノード)10aと他のノードを含む他装置との間で、パブリックLAN3を介して行われる通信を制御する。
通信制御手段14は、サーバ(ノード)10aと、クラスタシステムを構成する他のノードとの間で、プライベートLAN4を介して行われる通信を制御する。
The communication control means 13 controls communication performed via the
The
ノード制御部15は、通常状態では、パブリックLAN3の通信制御手段13もしくはプライベートLAN4の通信制御手段14経由で入力する他ノードの故障などの情報によって、所定のサービスを提供するノードの調停を行っている。そして、通信監視手段11によってスプリットブレインを検出すると、割当て時間算出処理(ステップS1)、遅延処理(ステップS2)、サービス起動処理(ステップS3)を順次行って、パブリックLAN3およびプライベートLAN4のどちらも用いることなく、ノードの調停を行う。割当て時間算出処理(ステップS1)では、定義情報記憶手段16に格納された定義情報を読み出し、割当て時間と自装置に設定された優先順位を取得し、計時手段12から現在時刻を取得する。割当て時間は、ノードに割当てられたサービス起動処理を行うための時間で、共通の時間が設定される。優先順位は、割当て時間が与えられる順番を示したもので、順位が高いほど、割当て時間の開始時刻が早くなる。割当て時間算出処理では、所定の基準点(特定の日時、またはグリニッジ標準時の0時など)から割当て時間を各ノードに割当てたとして自装置に割当てられる、現在時刻から最も近い次の割当て時間の開始時刻を算出する。また、算出の際には、割当て時間の終了時刻と、次の割当時間の開始時刻との間に、各ノードの時間のずれを調整する調整時間を加える。次に、遅延処理(ステップS2)では、算出された次の割当て時間の開始時刻までサービス起動処理(ステップS3)の開始を遅延させる。そして、開始時刻に到達すると、サービス起動処理(ステップS3)が開始され、サービス処理が起動される。割当て時間内にサービス処理が正常に実行できた場合は、サービス処理を継続させる。また、割当て時間内にサービス処理が実行できなかった場合は、動作を停止する。
In a normal state, the node control unit 15 performs arbitration of a node that provides a predetermined service based on information such as a failure of another node that is input via the
定義情報記憶手段16は、ノードがサービス処理を実行できる割当て時間と、ノードごとに設定された割当て時間の優先順位を含む定義情報を格納する。
なお、サーバ(ノード)10bの構成もサーバ(ノード)10aと同様である。
The definition
The configuration of the server (node) 10b is the same as that of the server (node) 10a.
このような構成のクラスタシステムの動作について説明する。
通常状態では、通信制御手段13もしくは通信制御手段14を介してノード間の情報交換が行われ、所定のサービスを実行するノードの調停が行われている。計時手段12は、管理装置から時刻情報を取得し、時刻調整を行っている。ところが、何らかの故障により、通信制御手段13および通信制御手段14経由の通信が不通になると、通信監視手段11がこれを検出し、スプリットブレイン発生にいたる。
The operation of the cluster system having such a configuration will be described.
In the normal state, information is exchanged between the nodes via the communication control means 13 or the communication control means 14, and a node that executes a predetermined service is arbitrated. The time measuring means 12 acquires time information from the management device and adjusts the time. However, if communication via the communication control means 13 and the communication control means 14 is interrupted due to some failure, the communication monitoring means 11 detects this, and split brain occurs.
ノード制御部15は、スプリットブレインを検出すると、定義情報記憶手段16から定義情報を読み出し、計時手段12より現在時刻を取得する。次に、定義情報に従って、次の割当て時間の開始時刻を算出し、開始時刻までサービス起動処理を遅延する。そして、開始時刻となったら、サービス起動処理を開始する。割当て時間内にサービス処理が実行できた場合は、そのままサービス処理を継続する。また、割当て時間内にサービス処理が実行できなかった場合は、動作を停止する。
When detecting the split brain, the node control unit 15 reads the definition information from the definition
以上のように、本発明によれば、クラスタシステムにおいて、所定のサービスを実行するノードを調停するための情報交換を行う通信が不通となった場合、それぞれのノードが予め設定されている定義情報に従って、サービス処理を起動するタイミング(割当て時間の開始時刻)を算出し、その割当て時間内にサービスを起動する処理を行う。これにより、スプリットブレインが発生した場合でも、それぞれのノードが割当てられた時間でサービス稼動を試行することができる。そして、試行の結果、最初に正常に動作できたノードがサービス処理を継続し、それ以外のノードは動作を停止したことにより、業務を継続させることができる。 As described above, according to the present invention, in the cluster system, when communication for exchanging information for arbitrating a node that executes a predetermined service is interrupted, the definition information in which each node is set in advance. Accordingly, the service processing start timing (allocation time start time) is calculated, and the service start processing is performed within the allocation time. Thereby, even when split brain occurs, it is possible to try service operation at the time when each node is allocated. Then, as a result of the trial, the node that has been able to operate normally first continues the service processing, and the other nodes stop operating, so that the business can be continued.
[第1の実施の形態]
次に、本発明の第1の実施の形態について図面を参照して詳細に説明する。以下、本発明の実施の形態では、クラスタシステムの一例として、Microsoft製クラスタサービス(以下、MSCSとする)を運用した場合について説明する。
[First Embodiment]
Next, a first embodiment of the present invention will be described in detail with reference to the drawings. Hereinafter, in the embodiment of the present invention, a case where a Microsoft cluster service (hereinafter referred to as MSCS) is operated as an example of a cluster system will be described.
図2は、第1の実施の形態のシステムの構成図である。
本発明にかかるクラスタシステムを含むネットワークの管理単位であるグループは、クラスタシステム1と、管理装置であるドメインコントローラ(Domain Controller;以下、DCとする)201、202と、クライアント951、952、953、954がパブリックLAN3を介して接続する。
FIG. 2 is a configuration diagram of a system according to the first embodiment.
A group which is a management unit of a network including a cluster system according to the present invention includes a
クラスタシステム1は、ノードAとなるサーバ100aと、ノードBとなるサーバ100bがパブリックLAN3とプライベートLAN4を介して接続され、共有の共有ディスク装置20に接続する。
In the
サーバ(ノードA)100a、サーバ(ノードB)100bは、それぞれ、パブリックLAN3に接続するLANインタフェース110a、110bと、プライベートLAN4に接続するLANインタフェース120a、120bと、共有ディスク装置20に接続するSCSI(Small Computer System Interface)130a、130bを具備する。また、DC201、202は、それぞれ、パブリックLAN3に接続するLANインタフェース211、212を具備する。
The server (node A) 100a and the server (node B) 100b are respectively connected to the LAN interfaces 110a and 110b connected to the
DC201、202は、サーバ(ノードA)100a、サーバ(ノードB)100bを管理しており、パブリックLAN3経由で、時間情報の送信を行っている。また、サーバ(ノードA)100a、サーバ(ノードB)100b間では、情報交換のため、パブリックLAN3もしくはプライベートLAN4経由で定期的な通信を行っている。この通信はハートビート(Haert Beat)と呼ばれる。そして、ハートビートによって、サーバ(ノードA)100aとサーバ(ノードB)100b間の調停が行われ、いずれかのノードがサービス(業務)を稼動させている。クライアント951、952、953、954は、クラスタシステム1を1つのシステムとして認識しており、いずれのノードで業務を稼動中であるかを知る必要はない。
The
以上の構成のクラスタシステムに適用されるサーバのハードウェア構成を説明する。図3は、第1の実施の形態のサーバのハードウェア構成例を示すブロック図である。
サーバ100は、CPU(Central Processing Unit)101によって装置全体が制御されている。CPU101には、バス107を介してRAM(Random Access Memory)102、ハードディスクドライブ(HDD:Hard Disk Drive)103、パブリックLANインタフェース110、プライベートLANインタフェース120およびSCSI130が接続されている。
A hardware configuration of a server applied to the cluster system having the above configuration will be described. FIG. 3 is a block diagram illustrating a hardware configuration example of the server according to the first embodiment.
The server 100 is entirely controlled by a CPU (Central Processing Unit) 101. A random access memory (RAM) 102, a hard disk drive (HDD) 103, a
RAM102には、CPU101に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM102には、CPU101による処理に必要な各種データが格納される。HDD103には、OSやアプリケーションのプログラムが格納される。パブリックLANインタフェース110は、パブリックLANに接続されており、パブリックLANを介して他ノード、DC、あるいはクライアントとの間でデータの送受信を行う。プライベートLANインタフェース120は、プライベートLANに接続されており、プライベートLANを介して他のノードとの間でデータの送受信を行う。SCSI130には、共有ディスク装置20が接続されており、CPU101からの命令に従って共有ディスク装置20のアクセス権を獲得し、データの読み書きを行う。
The
以上のハードウェア構成により、第1の実施の形態の処理機能を実現することができる。
次に、第1の実施の形態のサーバの内部構成について説明する。図4は、第1の実施の形態のサーバの内部構成を示すブロック図である。サーバ100は、パブリックLANインタフェース110、プライベートLANインタフェース120、SCSI130、異常検出マネージャー140、切替マネージャー150、定義情報記憶装置160、リソースマネージャー170およびアプリケーションマネージャー180を有する。
With the above hardware configuration, the processing functions of the first embodiment can be realized.
Next, the internal configuration of the server according to the first embodiment will be described. FIG. 4 is a block diagram illustrating an internal configuration of the server according to the first embodiment. The server 100 includes a
パブリックLANインタフェース110は、パブリックLAN3経由の通信を制御し、プライベートLANインタフェース120は、プライベートLAN4経由の通信を制御する。通常動作時、クラスタシステムのノード間では、ハートビート通信が行われている。SCSI130は、共有ディスク装置20の制御権を獲得するための制御コマンドなどを発行する。また、ハートビート通信が失われ、スプリットブレインが発生した場合、SCSIコマンドを用いてノード間の調停が行われる。
The
異常検出マネージャー140は、ネットワーク、HDD、アプリケーション、ノードなどの動作状態を監視し、異常を検出する。
切替マネージャー150は、異常検出マネージャー140が異常を検出した場合など、必要に応じて、ノード動作の切替制御を行う。ノード調停151では、ハートビート通信が正常な場合は、ハートビートにより得られた情報に基づいて、ノードの調停を行う。SCSI調停152では、ハートビート通信が失われた場合、SCSIコマンドを用いてクォーラムの獲得を試行して、ノードの調停を行う。クォーラムは、MSCSにおいて、クラスタを構成する全ノードから接続される共有ディスク装置20上にあり、クラスタ運用時には1つのノードだけからアクセスできる。そして、各ノード間でクラスタ構成情報の整合性を保つために使用されるとともに、スプリットブレイン発生時の調停手段を提供する。スプリットブレイン発生時には、クォーラムを所持できるノードが生き残る。自律調停153では、ハートビート通信が失われたとき、それぞれのノードが自律してサービスの起動を試行して、ノードの調停を行う。自律調停153では、割当て時間算出部153aは、定義情報記憶装置160に格納された定義情報に基づき、自ノードに与えられる試行のための割当て時間の開始時刻を算出し、遅延部153bは、算出された開始時刻まで待機状態を継続させ、サービス起動部153cは、開始時刻でサービス起動を試行し、試行の結果に応じてノードの動作を制御する。
The
The
リソースマネージャー170は、サーバ100が保有するリソースの管理を行う。アプリケーションマネージャー180は、サーバ100のアプリケーション実行を管理する。
以上のような構成のサーバを有するクラスタシステムにおけるスプリットブレイン発生時の自律調停153によるノード制御動作について説明する。
The
The node control operation by the autonomous arbitration 153 when a split brain occurs in the cluster system having the server configured as described above will be described.
自律調停153は、定義情報記憶装置160に格納された定義情報に基づいて行われる。図5は、第1の実施の形態の定義情報の一例を示した図である。
定義情報ファイル300は、定義情報記憶装置160に格納される。定義情報ファイル300には、時間情報301とノード情報302が設定されている。
The autonomous arbitration 153 is performed based on the definition information stored in the definition
The definition information file 300 is stored in the definition
時間情報301には、サービス処理を起動する割当て時間を示した業務起動完了タイムアウト値が定義されている。割当て時間、すなわち、開始時刻から業務起動完了タイムアウト値が経過するまでの時間内に業務(サービス)の起動を試行する。図の例では、360秒が設定されている。なお、実際の試行処理の終了時刻は、業務起動完了タイムアウト値で設定された値より前に設定する。たとえば、割当て時間の80%から90%を消費した時刻を終了時刻とし、その後を調整時間として残す。このように調整時間を設けることにより、各ノードが計時する時刻のずれを吸収することができる。調整時間の割合は、適宜調整されて設定される。
In the
また、ノード情報302には、クラスタシステムを構成するノード名と、その優先度が定義されている。図の例では、優先度1にはノードAが設定され、優先度2にはノードBが設定されている。
The
割当て時間算出部153aは、上記の説明の定義情報に基づいて、自ノードの割当て時間を算出する。図6は、第1の実施の形態の割当て時間の経過状態を示したイメージ図である。割当て時間算出部153aでは、基準時刻、図の例では、グリニッジ標準時(Greenwich Mean Time;以下、GMTとする)401から、計時手段の計時した現在時刻402までの時間差を算出し、自ノードの優先順位および調停時間の設定値より、自ノードの割当て時間を算出する。なお、現在時刻402が自ノードの割当て時間にあたる場合、サービス起動処理を終了できない場合があるので、次の割当て時間が開始時刻として算出されるようにする。したがって、優先順位をP、割当て時間をTw、基準時をGMTとすると、自ノードの現在時刻に最も近い次の割当て時間の開始時刻Tsは、
Ts=int[(現在時刻―GMT+Tw)/Tw]×Tw+(P−1)×Tw
・・・(1)
で表すことができる。ここで、int[]は、[]の値を整数化した値を示す。
The allocation
Ts = int [(current time−GMT + Tw) / Tw] × Tw + (P−1) × Tw
... (1)
Can be expressed as Here, int [] represents a value obtained by converting the value of [] into an integer.
そして、終了時刻Teは、調停時間の割合をRとして、
Te=Ts+Tw×(1−R) ・・・(2)
によって算出することができる。
And the end time Te is R as the ratio of mediation time.
Te = Ts + Tw × (1-R) (2)
Can be calculated.
これにより、次の優先順位1のノードの割当て時間の開始時刻Ts1と終了時刻Te1が算出される。同様にして、優先順位2のノードの割当て時間の開始時刻Ts2と終了時刻Te2が算出される。優先順位1のノードの割当て時間の終了時刻Te1と優先順位2のノードの割当て時間の開始時刻Ts2との間には、調整時間403が設けられる。
Thereby, the start time Ts1 and the end time Te1 of the allocation time of the
割当て時間が算出されると、遅延部153bは、割当て時間の開始時刻まで待機状態になる。なお、スプリットブレインが発生したとき、自ノードで業務継続稼動中(クォーラム所持)であれば、割当て時間に関係なく何もしない(処理を継続する)。そして、クォーラムを継続所持し、他ノードからのクォーラム獲得をガードする。また、クォーラムを所持しているが業務継続中でなければ、そのノードで業務稼動は不可のはずという判断により、クォーラムを手放して、他ノードでMSCSサービスの動作を可能とするため、即座にMSCSサービスを停止させる。
When the allocation time is calculated, the
そして、割当て時間の開始時刻になったら、サービス起動部153cは、MSCSサービスの起動を試みる。割当て時間の終了時刻になっても業務稼動まで行えなかった場合、自ノードを停止させる。このとき、必要に応じて、電源切断まで行う。
When the start time of the allocated time is reached, the
以上の処理により、スプリットブレイン発生時、どこかのノードで業務が正常稼動していた場合、そのノードで業務が稼動し続け、他のノードすべてが停止する。場合によっては、他ノードすべての電源が切断される。 With the above processing, when a split brain occurs, if a business is operating normally on some node, the business continues to operate on that node, and all other nodes stop. In some cases, the power to all other nodes is turned off.
また、スプリットブレイン発生時、業務は停止していたが、最低1台業務が正常稼動するノードがある場合、正常稼動するノードのうち、先に割当て時間を得たノードで業務が継続稼動し、他のノードは停止する。 Also, when the split brain occurred, the business was stopped, but if there is a node where at least one of the business is operating normally, among the nodes that are operating normally, the business will continue to operate on the node that got the allocated time first, The other nodes are stopped.
さらに、スプリットブレイン発生時、すべてのノードで業務継続不可の場合、全ノードが停止する。
このように、第1の実施の形態では、各ノードが割当て時間にサービス起動を試行することによって、正常なノードがあれば、そのノードによって業務を継続させることができる。
Furthermore, when a split brain occurs, if all the nodes cannot continue the business, all the nodes are stopped.
As described above, in the first embodiment, when each node tries to start the service at the allocated time, if there is a normal node, the business can be continued by that node.
次に、スプリットブレイン発生時の様々な状態における、2つのノード、ノードAとノードBのそれぞれの動作を説明する。
図7は、第1の実施の形態におけるスプリットブレイン発生時のノードの状態とその動作を示した図である。図の例では、割当て時間を300秒、調整時間を60秒としている。また、簡単のため、最初の割当て時間はノードA、次の割当て時間はノードBに与えられるとする。
Next, the operation of each of the two nodes, node A and node B, in various states when split brain occurs will be described.
FIG. 7 is a diagram showing a node state and its operation when split brain occurs in the first embodiment. In the illustrated example, the allocation time is 300 seconds and the adjustment time is 60 seconds. For the sake of simplicity, it is assumed that the first allocation time is given to node A and the next allocation time is given to node B.
(1)スプリットブレイン発生時、ノードAで業務稼動中であった場合
最初の割当て時間(〜240秒)では、ノードAでは何も処理しないので、業務稼動中を継続する。このとき、ノードBは、MSCSサービスを停止している。次の割当て時間(〜540秒)において、ノードBが稼動を試行するが、ノードAが稼動中であるため失敗し、割当て時間終了(〜600秒)で処理を停止させる。こうして、正常に業務稼動中であったノードAが業務を継続する。
(1) When split brain occurs and node A is in operation The node A does not process anything during the first allocation time (up to 240 seconds), so the operation is continued. At this time, the Node B stops the MSCS service. At the next allocation time (up to 540 seconds), the node B tries to operate, but fails because the node A is in operation, and stops processing at the end of the allocation time (up to 600 seconds). Thus, the node A that has been operating normally continues the operation.
(2)スプリットブレイン発生時、ノードBで業務稼動中であった場合
最初の割当て時間(〜240秒)において、ノードAが稼動を試行するが、ノードBが稼動中であるため失敗し、割当て時間終了(〜300秒)で処理を停止させる。一方、ノードBは、業務稼動中であるので、そのまま業務稼動を継続する。こうして、正常に業務稼動中であったノードBが業務を継続する。
(2) When split brain occurs and node B is in business operation Node A attempts to operate during the first allocation time (up to 240 seconds), but fails because node B is active Stop processing at the end of time (~ 300 seconds). On the other hand, since the node B is in business operation, the business operation is continued as it is. In this way, the node B that has been operating normally continues the operation.
(3)スプリットブレイン発生時、ノードAがクォーラムを所持しているが業務を停止しており、ノードBが業務稼動可である場合
最初の割当て時間(〜240秒)では、ノードAでは、一旦処理を停止させてクォーラムを手放した後、業務稼動中を試行するが失敗し、割当て時間終了(〜300秒)で処理を停止する。次の割当て時間(〜540秒)において、ノードBが稼動を試行し、成功するので、業務稼動を継続する。こうして、業務稼動可のノードBが業務を継続する。
(3) When split brain occurs, node A possesses quorum but the business is stopped, and node B is operational. At the first allocation time (~ 240 seconds), node A once After the process is stopped and the quorum is released, the business operation is attempted but fails, and the process stops at the end of the allocation time (up to 300 seconds). In the next allocation time (˜540 seconds), Node B tries to operate and succeeds, so the business operation continues. In this way, the node B where the business operation is possible continues the business.
(4)スプリットブレイン発生時、ノードBがクォーラムを所持しているが業務を停止しており、ノードAが業務稼動可である場合
最初の割当て時間(〜240秒)では、ノードBが処理を停止しクォーラムを手放す。ノードAでは業務稼動中を試行して成功し、割当て時間終了(〜300秒)で処理を継続する。次の割当て時間(〜540秒)において、ノードBが稼動を試行するが、失敗して処理を停止する。こうして、業務稼動可のノードAが業務を継続する。
(4) When split brain occurs, Node B possesses quorum but the business is stopped, and Node A is operational. Node B performs processing during the first allocation time (up to 240 seconds). Stop and let go of the quorum. At node A, the business operation is attempted and succeeded, and the processing is continued at the end of the allocation time (˜300 seconds). At the next allocation time (˜540 seconds), Node B tries to operate, but fails and stops processing. In this way, the node A where the business operation is possible continues the business.
(5)スプリットブレイン発生時、両ノードがサービスを停止し、ノードAで業務稼動可である場合
最初の割当て時間(〜240秒)では、ノードAが業務稼動中を試行して成功し、割当て時間終了(〜300秒)で処理を継続する。次の割当て時間(〜540秒)において、ノードBが稼動を試行するが、失敗して処理を停止する。こうして、業務稼動可のノードAが業務を継続する。
(5) When split brain occurs, both nodes stop the service, and the operation can be performed on node A. During the first allocation time (up to 240 seconds), node A tries to be in operation and succeeds. Continue processing at the end of time (~ 300 seconds). At the next allocation time (˜540 seconds), Node B tries to operate, but fails and stops processing. In this way, the node A where the business operation is possible continues the business.
(6)スプリットブレイン発生時、両ノードがサービスを停止し、ノードBで業務稼動可である場合
最初の割当て時間(〜240秒)では、ノードAでは業務稼動中を試行するが失敗し、割当て時間終了(〜300秒)で処理を停止する。次の割当て時間(〜540秒)において、ノードBが稼動を試行し、成功するので、業務稼動を継続する。こうして、業務稼動可のノードBが業務を継続する。
(6) When split brain occurs, both nodes stop the service, and the operation can be performed at node B. At the first allocation time (up to 240 seconds), node A tries to be in operation, but fails. Stop processing at the end of time (~ 300 seconds). In the next allocation time (˜540 seconds), Node B tries to operate and succeeds, so the business operation continues. In this way, the node B where the business operation is possible continues the business.
(7)スプリットブレイン発生時、両ノードがサービスを停止し、両ノードとも業務稼動不可である場合
最初の割当て時間(〜240秒)では、ノードAでは業務稼動中を試行するが失敗し、割当て時間終了(〜300秒)で処理を停止する。次の割当て時間(〜540秒)において、ノードBが稼動を試行するが、失敗して処理を停止する。この場合は、両ノードとも業務を継続することができない。
(7) When split brain occurs, both nodes stop service, and both nodes are unable to operate. At the first allocation time (up to 240 seconds), node A tries to be in operation but fails. Stop processing at the end of time (~ 300 seconds). At the next allocation time (˜540 seconds), Node B tries to operate, but fails and stops processing. In this case, both nodes cannot continue the business.
(8)スプリットブレイン発生時、ノードAが動作を停止し、ノードBはサービス停止中であるが業務稼動可である場合
ノードAは動作停止であるので、最初の割当て時間(〜240秒)は何も起こらない。次の割当て時間(〜540秒)において、ノードBが稼動を試行し、成功するので、業務稼動を継続する。こうして、業務稼動可のノードBが業務を継続する。
(8) When split brain occurs, node A stops operating, and node B is in service stop but business operation is possible. Since node A is in operation stop, the first allocation time (up to 240 seconds) is Nothing happens. In the next allocation time (˜540 seconds), Node B tries to operate and succeeds, so the business operation continues. In this way, the node B where the business operation is possible continues the business.
(9)スプリットブレイン発生時、ノードBが動作を停止し、ノードAはサービス停止中であるが業務稼動可である場合
最初の割当て時間(〜240秒)では、ノードAが業務稼動中を試行して成功し、割当て時間終了(〜300秒)で処理を継続する。次の割当て時間(〜540秒)において、ノードBは何もしない。こうして、業務稼動可のノードAが業務を継続する。
(9) When split brain occurs, node B stops operating, and node A is in service stop but business operation is possible. At the first allocation time (up to 240 seconds), node A tries to be in business operation. If the allocation time ends (up to 300 seconds), the process is continued. At the next allocation time (˜540 seconds), Node B does nothing. In this way, the node A where the business operation is possible continues the business.
(10)スプリットブレイン発生時、両ノードがサービスを停止し、ノードAが停止すればノードBで業務稼動可である場合
最初の割当て時間(〜240秒)では、ノードAでは業務稼動中を試行するが失敗し、割当て時間終了(〜300秒)で処理を停止する。次の割当て時間(〜540秒)において、ノードBが稼動を試行し、成功するので、業務稼動を継続する。こうして、業務稼動可のノードBが業務を継続する。
(10) When split brain occurs, both nodes stop the service, and if node A stops, business operation can be performed on node B. At the first allocation time (up to 240 seconds), node A tries to be in business operation. However, it fails, and the processing is stopped when the allocation time ends (up to 300 seconds). In the next allocation time (˜540 seconds), Node B tries to operate and succeeds, so the business operation continues. In this way, the node B where the business operation is possible continues the business.
(11)スプリットブレイン発生時、両ノードがサービスを停止し、ノードBが停止すればノードAで業務稼動可である場合
最初の割当て時間(〜240秒)では、ノードBが停止していないので、ノードAでは業務稼動中を試行するが失敗し、割当て時間終了(〜300秒)で処理を停止する。次の割当て時間(〜540秒)において、ノードBが稼動を試行するが、失敗して処理を停止する。この場合、両ノードとも業務を継続することができないが、たとえば、ノードAが試行をリトライすれば、ノードAで業務を継続することができる。また、ノードBの割当て時間が先であれば、ケース(11)と同様に、後から割当て時間になるノードAが業務を継続する。
(11) When split brain occurs, both nodes stop the service, and if node B stops, business operation can be performed on node A. Node B is not stopped at the first allocation time (up to 240 seconds). At node A, the business operation is attempted, but fails, and the processing is stopped at the end of the allocation time (˜300 seconds). At the next allocation time (˜540 seconds), Node B tries to operate, but fails and stops processing. In this case, although both nodes cannot continue the business, for example, if node A retries the trial, the business can be continued at node A. Further, if the allocation time of node B is earlier, as in the case (11), the node A that becomes the allocation time later continues the business.
以上、第1の実施の形態によれば、両ノードが業務稼動不可である場合を除き、正常なノードで業務を継続することができる。なお、上記では、2ノードの場合について説明したが、2ノード以上でも同様にノードの調停を行うことができる。 As described above, according to the first embodiment, a business can be continued on a normal node, except when both nodes cannot perform business operations. In the above description, the case of two nodes has been described, but node arbitration can be similarly performed with two or more nodes.
次に、第1の実施の形態のノード制御処理の手順について説明する。図8は、第1の実施の形態のノード制御処理の手順を示したフローチャートである。第1の実施の形態のノード制御では、スプリットブレイン発生時、まず、MSCSサービスによるSCSIを用いたノード調停を行った後、通信を用いない自律調停を行う。 Next, the procedure of node control processing according to the first embodiment will be described. FIG. 8 is a flowchart illustrating a procedure of node control processing according to the first embodiment. In the node control according to the first embodiment, when split brain occurs, first, node arbitration using SCSI by the MSCS service is performed, and then autonomous arbitration without using communication is performed.
[ステップS11] 通信監視処理でパブリックLANおよびプライベートLANを用いたハートビート通信を監視している。通信監視処理によって、パブリックLANによる通信不通が検出されたかどうかを判定し、検出された場合は、ステップS12へ処理を進める。正常に通信が行われている場合は、処理を終了する。 [Step S11] Heartbeat communication using the public LAN and private LAN is monitored in the communication monitoring process. It is determined by the communication monitoring process whether or not communication failure by the public LAN is detected. If detected, the process proceeds to step S12. If communication is performed normally, the process ends.
[ステップS12] 通信監視処理によって、プライベートLANによる通信不通が検出されたかどうかを判定する。通信不通の場合、処理をステップS13へ進める。正常に通信が行われている場合は、処理を終了する。 [Step S12] It is determined whether or not communication failure by the private LAN is detected by the communication monitoring process. If communication is not established, the process proceeds to step S13. If communication is performed normally, the process ends.
[ステップS13] パブリックLANおよびプライベートLANともに通信が不通となったので、スプリットブレインの発生を検出する。
[ステップS14] スプリットブレインにより、まず、MSCSクラスタサービスによるSCSIを用いたノードの調整を行う。
[Step S13] Since both the public LAN and private LAN have lost communication, the occurrence of split brain is detected.
[Step S14] First, node adjustment using SCSI by the MSCS cluster service is performed by split brain.
[ステップS15] クラスタによる調整の結果、自ノードがクォーラムを保持し、共有ディスクをロックしているかどうかを判定する。ロックしていない場合は、処理をステップS18へ進める。 [Step S15] As a result of adjustment by the cluster, it is determined whether or not the own node holds the quorum and locks the shared disk. If not locked, the process proceeds to step S18.
[ステップS16] クォーラムを保持し、共有ディスクをロックしている場合、業務を継続中であるかどうかを判定する。業務が継続中でなければ処理をステップS18へ進める。 [Step S16] If the quorum is held and the shared disk is locked, it is determined whether or not the business is ongoing. If the business is not ongoing, the process proceeds to step S18.
[ステップS17] 自ノードがクォーラムを所持して共有ディスクをロックし、業務継続中である場合、業務稼動可の状態と判断し、動作を継続する。これにより、スプリットブレイン発生後、このノードが業務を継続する。 [Step S17] When the own node has the quorum and locks the shared disk and the business is continuing, it is determined that the business is operational and the operation is continued. Thus, after the split brain occurs, this node continues the business.
[ステップS18] 自ノードがクォーラムを所持していないか、クォーラムを所持しているが業務を停止している場合、自律調停によるサービス起動処理を行う。
次に、サービス起動処理について説明する。図9は、第1の実施の形態のサービス起動処理の手順を示したフローチャートである。スプリットブレインの後、自ノードがクォーラムを所持していないか、所持していても業務継続中でない場合に処理が起動される。
[Step S18] When the own node does not have a quorum, or has a quorum but has stopped the business, a service activation process by autonomous arbitration is performed.
Next, service activation processing will be described. FIG. 9 is a flowchart illustrating a procedure of service activation processing according to the first embodiment. After the split brain, the process is started when the own node does not have the quorum or does not continue the business even if it has the quorum.
[ステップS21] ノードを停止する。これにより、クォーラムを所持していた場合、クォーラムを手放して他のノードのMSCSサービスの動作を可能とする。
[ステップS22] 定義情報記憶装置160に格納されている定義ファイルから定義情報を取得する。定義ファイルには、割当て時間を示す時間情報と、優先順位を示すノード情報が定義されている。
[Step S21] The node is stopped. As a result, when the quorum is possessed, the quorum is released, and the operation of the MSCS service of another node is enabled.
[Step S22] Definition information is acquired from a definition file stored in the definition
[ステップS23] 計時手段からシステム時刻を取得する。計時手段の計時する時刻は、DCからの時間情報によって、システムで同じ時刻となるように調整されている。
[ステップS24] 基準時刻から現在時刻までの経過時間と、割当て時間と優先順位を用いて、式(1)によって割当て時間の開始時刻を算出する。そして、スリープ状態になり、算出された自ノードの割当て時間の開始時刻まで待機する。
[Step S23] The system time is acquired from the time measuring means. The time measured by the time measuring means is adjusted to be the same time in the system based on time information from the DC.
[Step S24] Using the elapsed time from the reference time to the current time, the allocation time, and the priority order, the start time of the allocation time is calculated by Equation (1). Then, it enters a sleep state and waits until the start time of the calculated allocation time of its own node.
[ステップS25] 割当て時間の開始時刻でノードの起動を開始する。
[ステップS26] 割当て時間内に業務起動処理が完了したかどうかを判定する。自ノードが正常で、他ノードが業務稼動中でなければ、業務起動処理は正常に完了する。自ノードに故障があるか、他ノードが業務の稼動中であれば、業務起動処理は完了しない。割当て時間内に業務起動が完了すれば、処理をステップS27へ進め、業務が起動していなければ、処理をステップS29へ進める。
[Step S25] Start of the node is started at the start time of the allocation time.
[Step S26] It is determined whether or not the task activation processing is completed within the allocated time. If the local node is normal and the other nodes are not operating, the business activation process is completed normally. If the own node has a failure or the other node is operating, the business activation process is not completed. If the business activation is completed within the allocated time, the process proceeds to step S27. If the business is not activated, the process proceeds to step S29.
[ステップS27] 自ノードの業務起動処理が完了したので、動作を継続し、業務を継続させる。
[ステップS28] 自ノードの業務起動処理が完了しなかったので、ノードを停止させる。
[Step S27] Since the task activation process of the own node is completed, the operation is continued and the task is continued.
[Step S28] Since the task activation processing of the own node has not been completed, the node is stopped.
[ステップS29] 自ノードの電源を切断し、システムへの影響を断つ。
以上の処理手順が実行されることにより、スプリットブレイン発生によりノード間の通信が不通となっても、正常なノードが業務起動処理を完了し、業務処理を継続して行うことが可能なる。
[Step S29] The power supply of the own node is turned off to cut off the influence on the system.
By executing the above processing procedure, even if communication between nodes is interrupted due to the occurrence of a split brain, a normal node can complete the business activation processing and continue the business processing.
[第2の実施の形態]
ところで、クラスタシステムにおいては、起動時にもノード間の調停を行わなければならない。第1の実施の形態では、スプリットブレイン発生時に通信を行わずにノード間の調停を行ったが、第2の実施の形態では、クラスタシステムの起動時にノード間の通信を行わずに調停を行う。
[Second Embodiment]
By the way, in a cluster system, it is necessary to perform arbitration between nodes even at startup. In the first embodiment, arbitration between nodes is performed without performing communication when split brain occurs. In the second embodiment, arbitration is performed without performing communication between nodes when the cluster system is started. .
なお、第2の実施の形態におけるクラスタシステムの構成は、図2に示した第1の実施の形態のシステム構成と同様であり、サーバ(ノード)のハードウェア構成は、図3に示した第1の実施の形態のハードウェア構成と同様である。また、サーバ(ノード)が有する処理機能の構成要素は、図4に示した第1の実施の形態の構成要素と同様である。そこで、図4に示した構成要素の符号を用いて、第2の実施の形態における機能を説明する。 The configuration of the cluster system in the second embodiment is the same as the system configuration of the first embodiment shown in FIG. 2, and the hardware configuration of the server (node) is the same as that shown in FIG. The hardware configuration is the same as that of the first embodiment. Further, the components of the processing function possessed by the server (node) are the same as the components of the first embodiment shown in FIG. Therefore, functions in the second embodiment will be described using the reference numerals of the components shown in FIG.
第2の実施の形態では、定義情報記憶装置160には、システム起動時に通信を用いない自律起動処理を行うための定義情報が格納される。図10は、第2の実施の形態の定義情報の一例を示した図である。
In the second embodiment, the definition
定義情報ファイル500には、時間情報501とクラスタノード数502とノード情報503が設定されている。なお、図5に示した第1の実施の形態では、クラスタノード数はなかったが、たとえば、クラスタノード数が固定されている場合や、ノード情報からクラスタノード数が算出できる場合などには必要ない。定義情報ファイル500の場合も、ノード情報503からクラスタノード数を算出することができる。
In the definition information file 500,
時間情報501には、システム起動時のクラスタサービスを起動する割当て時間を示したクラスタサービス起動完了タイムアウト値が定義されている。割当て時間、すなわち、開始時刻からクラスタサービス起動完了タイムアウト値が経過するまでの時間内にクラスタサービスの起動を試行する。図の例では、20秒が設定されている。第1の実施の形態の業務起動完了タイムアウト値(図5の例では360秒)と比較して、小さい値が設定されているのは、業務の起動が正常にできるかどうかを試行する必要がないからである。なお、調整時間は、必要に応じて適宜設定される。
The
クラスタノード数502には、クラスタシステムを構成するノード数が定義される。図の例では、3が設定されている。
また、ノード情報503には、クラスタシステムを構成するノード名と、その優先度が定義されている。図の例では、優先度1にはノードA、優先度2にはノードBおよび優先度3にはノードCが設定されている。
The number of nodes constituting the cluster system is defined as the number of
The
第2の実施の形態におけるノード起動処理の全体的な流れは、図9に示した第1の実施の形態と同じである。ただし、時間内に業務起動が完了したかどうかの判断(図9のステップS26)以降の処理は行わない。 The overall flow of the node activation process in the second embodiment is the same as that of the first embodiment shown in FIG. However, the processing after the determination of whether or not the business activation is completed within the time (step S26 in FIG. 9) is not performed.
図11は、第2の実施の形態のサービス起動処理の手順を示したフローチャートである。電源投入などによってサーバが起動し、処理が開始される。
[ステップS31] 定義情報記憶装置160に格納されている定義ファイルから定義情報を取得する。定義情報には、割当て時間を示す時間情報と、優先順位を示すノード情報が定義されている。
FIG. 11 is a flowchart illustrating a procedure of service activation processing according to the second embodiment. When the power is turned on, the server is started and processing is started.
[Step S31] Definition information is acquired from a definition file stored in the definition
[ステップS32] 計時手段からシステム時刻を取得する。計時手段の計時する時刻は、DCからの時間情報によって、システムで同じ時刻となるように調整されている。
[ステップS33] 基準時刻から現在時刻までの経過時間と、割当て時間と優先順位を用いて、式(1)によって割当て時間の開始時刻を算出する。そして、スリープ状態になり、算出された自ノードの割当て時間の開始時刻まで待機する。
[Step S32] The system time is acquired from the time measuring means. The time measured by the time measuring means is adjusted to be the same time in the system based on time information from the DC.
[Step S33] Using the elapsed time from the reference time to the current time, the assigned time, and the priority order, the start time of the assigned time is calculated by Equation (1). Then, it enters a sleep state and waits until the start time of the calculated allocation time of its own node.
[ステップS34] 割当て時間の開始時刻で、MSCSクラスタサービス処理を開始してノードを起動する。
以上の手順が実行されることにより、クラスタシステムの立ち上げ時に、定義情報に従って、各ノードのMSCSクラスタサービスの開始時刻がずれる。これによって、複数のノードが一度に立ち上がり、クラスタシステムが正常に立ち上がらない状態となることを防止することができる。従来、クラスタシステムの立ち上げ時には、各ノードに立ち上がりを遅延させるプログラムを組込んで、複数のノードが同時に起動されることを防止していた。本発明の第2の実施の形態によれば、定義情報に割当て時間と優先順位を定義しておくことにより、クラスタシステムの起動を円滑に行うことが可能となる。
[Step S34] At the start time of the allocation time, the MSCS cluster service process is started to activate the node.
By executing the above procedure, the start time of the MSCS cluster service of each node is shifted according to the definition information when the cluster system is started up. As a result, it is possible to prevent a plurality of nodes from starting up at a time and the cluster system from starting up normally. Conventionally, when a cluster system is started up, a program for delaying the start-up is incorporated in each node to prevent a plurality of nodes from being started simultaneously. According to the second embodiment of the present invention, it is possible to start the cluster system smoothly by defining the allocation time and priority in the definition information.
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、クラスタシステムを構成するサーバが有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記録装置には、ハードディスク装置(HDD)、フレキシブルディスク(FD)、磁気テープなどがある。光ディスクには、DVD(Digital Versatile Disc)、DVD−RAM、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)などがある。光磁気記録媒体には、MO(Magneto-Optical disk)などがある。 The above processing functions can be realized by a computer. In this case, a program describing the processing contents of the functions that should be possessed by the servers constituting the cluster system is provided. By executing the program on a computer, the above processing functions are realized on the computer. The program describing the processing contents can be recorded on a computer-readable recording medium. Examples of the computer-readable recording medium include a magnetic recording device, an optical disk, a magneto-optical recording medium, and a semiconductor memory. Examples of the magnetic recording device include a hard disk device (HDD), a flexible disk (FD), and a magnetic tape. Optical disks include DVD (Digital Versatile Disc), DVD-RAM, CD-ROM (Compact Disc Read Only Memory), CD-R (Recordable) / RW (ReWritable), and the like. Magneto-optical recording media include MO (Magneto-Optical disk).
プログラムを流通させる場合には、たとえば、そのプログラムが記録されたDVD、CD−ROMなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。 When distributing the program, for example, portable recording media such as a DVD and a CD-ROM in which the program is recorded are sold. It is also possible to store the program in a storage device of a server computer and transfer the program from the server computer to another computer via a network.
プログラムを実行するコンピュータは、たとえば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。 The computer that executes the program stores, for example, the program recorded on the portable recording medium or the program transferred from the server computer in its own storage device. Then, the computer reads the program from its own storage device and executes processing according to the program. The computer can also read the program directly from the portable recording medium and execute processing according to the program. In addition, each time the program is transferred from the server computer, the computer can sequentially execute processing according to the received program.
(付記1) クラスタシステムを構成する複数のノードのうち所定のサービスを提供する前記ノードを調停するためのノード制御プログラムにおいて、
コンピュータに、
前記ノード間で情報交換を行う通信路経由の通信の不通が検出されると、前記サービスを実行可能な割当て時間と前記割当て時間を取得する優先順位が予め定義された定義情報に基づき、計時された現在時刻から最も近い次の割当て時間の開始時刻を算出し、
前記開始時刻まで前記サービスの起動を遅延し、
前記開始時刻に到達すると、前記サービスを起動させ、前記割当て時間内に前記サービスが実行できれば動作を継続し、前記割当て時間内に前記サービスが実行できない場合は、動作を停止する、
手順を実行させることを特徴とするノード制御プログラム。
(Supplementary Note 1) In a node control program for arbitrating the node that provides a predetermined service among a plurality of nodes constituting a cluster system,
On the computer,
When it is detected that communication via a communication path for exchanging information between the nodes is detected, an allocation time during which the service can be executed and a priority order for acquiring the allocation time are counted based on predefined definition information. Calculate the start time of the next assigned time that is closest to the current time,
Delay activation of the service until the start time,
When the start time is reached, the service is started, and if the service can be executed within the allocated time, the operation is continued.If the service cannot be executed within the allocated time, the operation is stopped.
A node control program characterized by causing a procedure to be executed.
(付記2) 前記次の割当て時間の開始時刻を算出する際に、
前記割当て時間が所定の基準時刻から前記優先順位に従って前記クラスタシステムを構成する各ノードに順に割当てられたとして前記ノードに割当てられる前記割当て時間の開始時刻を算出することを特徴とする付記1記載のノード制御プログラム。
(Appendix 2) When calculating the start time of the next allocated time,
The start time of the allocation time allocated to the node is calculated assuming that the allocation time is sequentially allocated to each node constituting the cluster system according to the priority from a predetermined reference time. Node control program.
(付記3) 前記次の割当て時間の開始時刻を算出する際に、
前記割当て時間の終了時刻と開始時刻との間に前記クラスタシステムの各ノードが計時する時間のずれを調整する調整時間を加えることを特徴とする付記1記載のノード制御プログラム。
(Supplementary Note 3) When calculating the start time of the next allocated time,
The node control program according to
(付記4) 前記クラスタシステムを含むグループ全体を管理する管理装置から時間情報を取得して時刻調整を行い、
前記管理装置から前記時間情報が取得できない場合には、前記定義情報の前記優先順位を下げることを特徴とする付記1記載のノード制御プログラム。
(Additional remark 4) Time information is acquired from the management apparatus which manages the whole group containing the said cluster system, time adjustment is performed,
The node control program according to
(付記5) 前記ノード間の通信不通が検出された際に、前記サービスを正常に実行していた場合は、動作を継続し、前記次の割当て時間の開始時刻からの手順を実行しないことを特徴とする付記1記載のノード制御プログラム。
(Supplementary Note 5) When communication failure between the nodes is detected, if the service is normally executed, the operation is continued and the procedure from the start time of the next allocation time is not executed. The node control program according to
(付記6) 前記ノード間の情報交換を行う前記通信路以外の第2の通信経路を有していた場合、前記第2の通信経路を用いて調停を行った後、前記次の割当て時間の開始時刻からの手順を実行することを特徴とする付記1記載のノード制御プログラム。
(Supplementary Note 6) When the second communication path other than the communication path for exchanging information between the nodes is included, after the arbitration is performed using the second communication path, the next allocated time The node control program according to
(付記7) 前記サービスが実行できない場合に動作を停止する際に、前記コンピュータの電源を切断することを特徴とする付記1記載のノード制御プログラム。
(付記8) ノードとしてクラスタシステムを構成し、所定のサービスを提供する前記ノードを調停するサーバにおいて、
前記サービスを実行可能な割当て時間と、前記割当て時間を取得する優先順位が定義された定義情報を格納する定義情報記憶手段と、
現在時刻を計時する計時手段と、
前記ノード間で情報交換を行う通信路経由の通信の不通が検出されると、前記定義情報記憶手段に格納された前記定義情報に基づいて、前記計時手段より取得した前記現在時刻から最も近い次の割当て時間の開始時刻を算出する割当て時間算出手段と、
前記開始時刻まで前記サービスの起動を遅延させる遅延手段と、
前記開始時刻に到達すると、前記サービスを起動し、前記割当て時間内に前記サービスが実行できれば動作を継続させる処理手段と、
を具備することを特徴とするサーバ。
(Supplementary note 7) The node control program according to
(Supplementary Note 8) In a server that configures a cluster system as a node and arbitrates the node that provides a predetermined service,
Definition information storage means for storing definition information in which the allocation time during which the service can be executed and the priority for obtaining the allocation time is defined;
A time measuring means for measuring the current time;
When it is detected that communication via a communication path for exchanging information between the nodes is detected, the next closest to the current time acquired from the time measuring means is based on the definition information stored in the definition information storage means. Allocation time calculation means for calculating the start time of the allocation time of
Delay means for delaying activation of the service until the start time;
Processing means for activating the service when the start time is reached and continuing the operation if the service can be executed within the allocated time;
A server comprising:
(付記9) 複数のノードで構成されるクラスタシステムの前記ノードの動作を制御するノード制御方法において、
前記ノード間の通信不通が検出されると、サービスを実行可能な割当て時間と前記割当て時間を取得する優先順位が予め定義された定義情報に基づき、計時された現在時刻から最も近い次の割当て時間の開始時刻を割当て時間算出手段で算出し、
前記開始時刻まで前記サービスの起動を遅延手段で遅延し、
前記開始時刻に到達すると、処理手段で、前記サービスを起動させ、前記割当て時間内に前記サービスが実行できれば動作を継続し、前記割当て時間内に前記サービスが実行できない場合は、動作を停止する、
手順を行うことを特徴とするノード制御方法。
(Supplementary Note 9) In a node control method for controlling the operation of the node in a cluster system composed of a plurality of nodes,
When communication interruption between the nodes is detected, the next allocation time that is closest to the current time measured based on the definition information in which the allocation time during which the service can be executed and the priority order for acquiring the allocation time are defined in advance Is calculated by the allocation time calculation means,
Delay the activation of the service by the delay means until the start time,
When the start time is reached, the processing means starts the service, and continues the operation if the service can be executed within the allocated time, and stops the operation if the service cannot be executed within the allocated time.
A node control method characterized by performing a procedure.
(付記10) クラスタシステムを構成する複数のノードを起動させるためのノード制御プログラムにおいて、
コンピュータに、
起動処理が開始されると、予め定義情報に定義されたサービスを実行可能な割当て時間と前記割当て時間を取得する優先順位に基づき、次の割当て時間の開始時刻を算出し、
前記次の割当て時間の開始時刻まで前記サービスを遅延し、
前記次の割当て時間の開始時刻で前記サービスを開始させる、
手順を実行させることを特徴とするノード制御プログラム。
(Supplementary Note 10) In a node control program for starting a plurality of nodes constituting a cluster system,
On the computer,
When the start process is started, the start time of the next allocation time is calculated based on the allocation time in which the service defined in the definition information can be executed and the priority order for acquiring the allocation time,
Delay the service until the start time of the next allocated time,
Starting the service at the start time of the next allocated time;
A node control program characterized by causing a procedure to be executed.
(付記11) クラスタシステムを構成するサーバにおいて、
前記クラスタシステムを含む所定のサービスを実行可能な割当て時間と、前記割当て時間を取得する優先順位が定義された定義情報を格納する定義情報記憶手段と、
現在時刻を計時する計時手段と、
起動処理が開始されると、前記定義情報記憶手段に格納された前記割当て時間と前記優先順位に基づいて、前記計時手段より取得した前記現在時刻から最も近い次の割当て時間の開始時刻を算出する割当て時間算出手段と、
前記割当て時間算出手段により算出された前記割当て時間の開始時刻に到達すると、前記サービスを開始し、前記割当て時間内に前記サービスが実行できれば動作を継続させる処理手段と、
を具備することを特徴とするサーバ。
(Additional remark 11) In the server which comprises a cluster system,
Definition information storage means for storing definition information in which a predetermined service including the cluster system can be executed and definition information in which a priority order for obtaining the allocation time is defined;
A time measuring means for measuring the current time;
When the start process is started, the start time of the next assigned time closest to the current time acquired from the time measuring means is calculated based on the assigned time and the priority order stored in the definition information storage means. Allocation time calculation means;
Processing means for starting the service when the start time of the allocation time calculated by the allocation time calculation means is reached, and continuing operation if the service can be executed within the allocation time;
A server comprising:
1 クラスタシステム
3 パブリックLAN
4 プライベートLAN
10a、10b サーバ(ノード)
11 通信監視手段
12 計時手段
13 通信制御手段(パブリックLAN)
14 通信制御手段(プライベートLAN)
15 ノード制御部
16 定義情報記憶手段
20 共有ディスク装置
1
4 Private LAN
10a, 10b server (node)
11 Communication monitoring means 12 Timekeeping means 13 Communication control means (public LAN)
14 Communication control means (private LAN)
15
Claims (5)
前記コンピュータに、
前記クラスタシステムを構成する他のノードとの情報交換に用いられる通信路で通信の不通が検出されたときに、前記所定のサービスが実行できるかどうかを試みることが可能な割当て時間と、前記クラスタシステムを構成する各ノードが前記割当て時間を取得する優先順位と、が予め定義された定義情報を定義情報記憶手段に記憶し、
前記通信路で通信の不通が検出されたときは、前記クラスタシステムを構成するノードで共通の基準時刻からの経過時間と、前記定義情報とに基づいて、前記割当て時間が前記基準時刻から前記優先順位に従って前記クラスタシステムを構成する各ノードに順に割当てられたとして、前記コンピュータに割当てられる現在時刻から最も近い次の割当て時間の開始時刻を算出し、
前記所定のサービスを実行していなかったときは前記開始時刻まで前記所定のサービスの起動を遅延し、前記開始時刻に到達すると、前記所定のサービスを起動させ、前記割当て時間内に前記所定のサービスが実行できれば前記所定のサービスの動作を継続させ、前記割当て時間内に前記所定のサービスが実行できない場合は、前記所定のサービスの動作を停止させる、
手順を実行させることを特徴とするノード制御プログラム。 In the node control program for controlling the operation of the computer to provide a predetermined service as node that make up the cluster system,
In the computer,
When the interruption of the communication in the communication channel used for information exchange with other nodes constituting the cluster system is detected, a predetermined service can attempt to whether execution assignment time, the cluster A priority order in which each node constituting the system obtains the allocated time, and pre-defined definition information is stored in the definition information storage means ,
When communication failure is detected on the communication path, the allocation time is prioritized from the reference time based on the elapsed time from the reference time common to the nodes constituting the cluster system and the definition information. Assuming that each node constituting the cluster system is assigned in order according to the rank, the start time of the next assigned time closest to the current time assigned to the computer is calculated,
If time was not executing the predetermined service delays the activation of the predetermined service to the start time, reaches the start time, starts a predetermined service, said predetermined service within the allotted time There if executed to continue the operation of said predetermined service, when said predetermined service can not be executed within the allotted time, Ru stops the operation of said predetermined service,
A node control program characterized by causing a procedure to be executed.
前記割当て時間の終了時刻と開始時刻との間に前記クラスタシステムの各ノードが計時する時間のずれを調整する調整時間を加えることを特徴とする請求項1記載のノード制御プログラム。2. The node control program according to claim 1, wherein an adjustment time for adjusting a time lag timed by each node of the cluster system is added between an end time and a start time of the allocation time.
前記管理装置から前記時間情報が取得できない場合には、前記定義情報の前記優先順位を下げることを特徴とする請求項1記載のノード制御プログラム。The node control program according to claim 1, wherein when the time information cannot be acquired from the management apparatus, the priority of the definition information is lowered.
前記クラスタシステムを構成する他のノードとの情報交換に用いられる通信路で通信の不通が検出されたときに、前記所定のサービスが実行できるかどうかを試みることが可能な割当て時間と、前記クラスタシステムを構成する各ノードが前記割当て時間を取得する優先順位と、が予め定義された定義情報を格納する定義情報記憶手段と、
前記通信路で通信の不通が検出されたときは、前記クラスタシステムを構成するノードで共通の基準時刻からの経過時間と、前記定義情報とに基づいて、前記割当て時間が前記基準時刻から前記優先順位に従って前記クラスタシステムを構成する各ノードに順に割当てられたとして、前記サーバに割当てられる現在時刻から最も近い次の割当て時間の開始時刻を算出する割当て時間算出手段と、
前記所定のサービスを実行していなかったときは前記開始時刻まで前記所定のサービスの起動を遅延させる遅延手段と、
前記開始時刻に到達すると、前記所定のサービスを起動させ、前記割当て時間内に前記サービスが実行できれば前記所定のサービスの動作を継続させ、前記割当て時間内に前記所定のサービスが実行できない場合は、前記所定のサービスの動作を停止させる処理手段と、
を具備することを特徴とするサーバ。
Configure cluster system as a node in Rusa over bus provides a predetermined service,
An allocation time during which it is possible to try to execute the predetermined service when communication failure is detected on a communication path used for information exchange with other nodes constituting the cluster system; and the cluster a priority nodes constituting the system to obtain the allocated time, but the definition information storage means for storing definition information defined in advance,
When communication failure is detected on the communication path, the allocation time is prioritized from the reference time based on the elapsed time from the reference time common to the nodes constituting the cluster system and the definition information. Allocation time calculation means for calculating the start time of the next allocation time closest to the current time allocated to the server, as assigned to each node constituting the cluster system in order according to the order ,
Delay means for delaying activation of the predetermined service until the start time when the predetermined service has not been executed ;
When the start time is reached, the predetermined service is started , and if the service can be executed within the allocated time, the operation of the predetermined service is continued.If the predetermined service cannot be executed within the allocated time, processing means Ru stops the operation of said predetermined service,
A server comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004230425A JP4371942B2 (en) | 2004-08-06 | 2004-08-06 | Cluster system node control program and server |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004230425A JP4371942B2 (en) | 2004-08-06 | 2004-08-06 | Cluster system node control program and server |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006048477A JP2006048477A (en) | 2006-02-16 |
JP4371942B2 true JP4371942B2 (en) | 2009-11-25 |
Family
ID=36026948
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004230425A Expired - Fee Related JP4371942B2 (en) | 2004-08-06 | 2004-08-06 | Cluster system node control program and server |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4371942B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010103695A (en) * | 2008-10-22 | 2010-05-06 | Ntt Data Corp | Cluster system, cluster server and cluster control method |
WO2016106682A1 (en) | 2014-12-31 | 2016-07-07 | 华为技术有限公司 | Post-cluster brain split quorum processing method and quorum storage device and system |
JP6724998B2 (en) | 2016-10-20 | 2020-07-15 | 日本電気株式会社 | Server device, cluster system, cluster control method and program |
-
2004
- 2004-08-06 JP JP2004230425A patent/JP4371942B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2006048477A (en) | 2006-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3468151B1 (en) | Acceleration resource processing method and apparatus | |
US7933995B2 (en) | Computer program and apparatus for controlling computing resources, and distributed processing system | |
US10509680B2 (en) | Methods, systems and apparatus to perform a workflow in a software defined data center | |
EP3518110B1 (en) | Designation of a standby node | |
US10609159B2 (en) | Providing higher workload resiliency in clustered systems based on health heuristics | |
US20130073894A1 (en) | Techniques for achieving high availability with multi-tenant storage when a partial fault occurs or when more than two complete faults occur | |
US20050138517A1 (en) | Processing device management system | |
CN111459749B (en) | Prometheus-based private cloud monitoring method and device, computer equipment and storage medium | |
US20090113034A1 (en) | Method And System For Clustering | |
JPWO2008126325A1 (en) | Cluster system, software update method, service providing node, and service providing program | |
JP2009025965A (en) | Computer system and method for autonomously changing succession destination in fail-over | |
JP2019185371A (en) | Server switching program, server switching method, and server switching system | |
JP2008027189A (en) | Transaction taking over system | |
JP2006014310A (en) | Method and apparatus for providing redundant connection services | |
KR20150121891A (en) | System for managing cloud streaming server, method of managing cloud streaming server and apparatus for the same | |
CN112887367B (en) | Method, system and computer readable medium for realizing high availability of distributed cluster | |
JP5998577B2 (en) | Cluster monitoring apparatus, cluster monitoring method, and program | |
CN112948128A (en) | Target terminal selection method, system and computer readable medium | |
CN111726388A (en) | Cross-cluster high-availability implementation method, device, system and equipment | |
CN111935244A (en) | Service request processing system and super-integration all-in-one machine | |
US6807623B2 (en) | Data processing control system, controller, data processing control method, program, and medium | |
JP4371942B2 (en) | Cluster system node control program and server | |
WO2018114740A1 (en) | A local sdn controller and corresponding method of performing network control and management functions | |
CN109474694A (en) | A kind of management-control method and device of the NAS cluster based on SAN storage array | |
JP5016696B2 (en) | High availability system, server, high availability maintenance method and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070725 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090519 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090721 |
|
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: 20090901 |
|
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: 20090901 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120911 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120911 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130911 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |