(19)
(11)EP 2 637 102 B1

(12)EUROPEAN PATENT SPECIFICATION

(45)Mention of the grant of the patent:
17.06.2020 Bulletin 2020/25

(21)Application number: 13152199.9

(22)Date of filing:  22.01.2013
(51)Int. Cl.: 
G06F 11/16  (2006.01)
G06F 11/20  (2006.01)

(54)

Cluster system with network node failover

Clustersystem mit netzwerkknoten-failover

Système de grappe avec reprise de noeuds de réseau


(84)Designated Contracting States:
AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

(30)Priority: 09.03.2012 JP 2012052640

(43)Date of publication of application:
11.09.2013 Bulletin 2013/37

(73)Proprietor: NEC Corporation
Tokyo 108-8001 (JP)

(72)Inventor:
  • Ohtake, Takamasa
    Tokyo, 108-8001 (JP)

(74)Representative: Vossius & Partner Patentanwälte Rechtsanwälte mbB 
Siebertstrasse 3
81675 München
81675 München (DE)


(56)References cited: : 
EP-A2- 1 117 041
US-A1- 2010 185 894
US-A1- 2008 201 470
  
      
    Note: Within nine months from the publication of the mention of the grant of the European patent, any person may give notice to the European Patent Office of opposition to the European patent granted. Notice of opposition shall be filed in a written reasoned statement. It shall not be deemed to have been filed until the opposition fee has been paid. (Art. 99(1) European Patent Convention).


    Description


    [0001] The present invention relates to a cluster system, specifically, a cluster system configured by a plurality of nodes and managing whether the nodes are alive.

    [0002] In recent years, the advent of cloud computing leads to an issue how to guarantee the quality of a service provided to a user by a provider, namely, how to keep SLA (Service Level Agreement). Therefore, a cluster system configured by a plurality of nodes as shown in Patent Document 1 has a redundant configuration to, even when a node providing a service comes into a down state, take over the service to another node, thereby guaranteeing the quality of the service. On the other hand, it is also an issue for clusterware installed in such a cluster system how quickly and accurately grasp the states (operation statues, or whether a fault has occurred or not) of the nodes in order to realize higher SLA.

    [0003] Alive monitoring of nodes in a cluster system is performed in a manner that the nodes check the operation states each other by using, as a communication path, something that enables the nodes to exchange information, such as a LAN (Local Area Network), serial ports or a shared disk. In a case that it is impossible to perform communication with a certain node for a given time or more, the certain node is judged to be in the down state.

    [0004] Another example of an alive monitoring of nodes in a cluster system is given in document US 2010/0185894 A1. Here, the communication is arranged in a ring or tiered ring configuration to provide networks status monitoring and failure recovery in a highly redundant and flexible manner at increased speed. Therefore, providing protection against positive failure detection through redundant links and verification across the network.

    [0005] Document US2008/0201470 discloses a network monitor program operating in each node included in a cluster system, for causing the node to execute: when a response to an existence confirmation message from a relay apparatus, which relays a business request to the node, could not be received, obtaining status data of other nodes included in the cluster system; when the status data of the other nodes represents that one of the other nodes is in a usable state, confirming whether or not the node in the usable state can communicate with the relay apparatus; and when it is confirmed that the node in the usable state can communicate with the relay apparatus, notifying a cluster manager of an occurrence of a communication failure.

    [0006] [Patent Document 1] Japanese Unexamined Patent Application Publication No. JP-A 2006-79161

    [0007] However, in the abovementioned method, a LAN, serial ports, a shared disk and so on are all controlled as management resources of an OS (Operating System), and therefore, are affected by the operation state of the OS, other than a physical fault of a communication path. For example, in a case that the OS of a specific node comes into a high load condition and cannot perform communication with other nodes for a given time or more, the specific node is considered to be in the down state by the other nodes though the node is not down actually.

    [0008] Further, in a case that a node goes down due to a hardware fault or the like, it takes a specific time or more before the node is judged to be in the down state, and therefore, it is impossible to instantly execute system switching. For example, when power interruption is caused by a CPU (Central Processing Unit) fault and one node comes into a down state, it takes a specific time or more before another node judges the one node to be in the down state.

    [0009] Thus, there is a problem for a cluster system that it is impossible to accurately and rapidly grasp the statuses of nodes, and therefore, it is impossible to rapidly switch the nodes and the reliability of the system decreases.

    [0010] Accordingly, an object of the present invention is to solve the abovementioned problem, "the reliability of the system decreases."

    [0011] The invention is defined by the independent claims. Particular embodiments are defined by the subject-matter of the dependent claims. The embodiment labelled second exemplary embodiment does not form part of the invention and should be interpreted merely as an example useful for understanding the invention.

    [0012] A cluster system of an exemplary embodiment of the present invention is a cluster system including a plurality of node devices.

    [0013] Each of the node devices is connected with the other node devices by a first network and a second network, and includes:

    a first node managing unit configured to operate on an operating system embedded in an own device and detect operation statuses of the other node devices via the first network;

    a second node managing unit configured to operate without being affected by the operating system and detect operation statuses of the other node devices via the second network; and

    a node status judging unit configured to judge whether each of the node devices is in a down state according to a preset standard, based on results of the detection of the other node devices by the first node managing unit and the second node managing unit.



    [0014] Further, a program of another exemplary embodiment of the present invention is a program for causing each of a plurality of node devices configuring a cluster system including the plurality of node devices, to realize:

    a first node managing unit configured to operate on an operating system embedded in an own device and detect operation statuses of the other node devices via a first network connected to the other node devices;

    a second node managing unit configured to operate without being affected by the operating system and detect operation statuses of the other node devices via a second network connected to the other node device; and

    a node status judging unit configured to judge whether each of the node devices is in a down state according to a preset standard, based on results of the detection of the other node devices by the first node managing unit and the second node managing unit.



    [0015] Further, a node management method of another exemplary embodiment of the present invention includes, in a cluster system including a plurality of node devices:

    by a first node managing unit configured to operate on an operating system embedded in each of the node devices, detecting operation statuses of the other node devices via a first network connected with the other node devices;

    by a second node managing unit configured to operate without being affected by the operating system embedded in the node device, detecting operation statuses of the other node devices via a second network connected with the other node device; and

    judging whether each of the node devices is in a down state according to a preset standard, based on results of the detection of the other node devices by the first node managing unit and the second node managing unit.



    [0016] With the configurations as described above, the present invention can increase the reliability of a cluster system.

    BRIEF DESCRIPTION OF DRAWINGS



    [0017] 

    Fig. 1 is a block diagram showing the configuration of a cluster system in a first exemplary embodiment of the present invention;

    Fig. 2 is a block diagram showing the configuration of a node configuring the cluster system disclosed in Fig. 1;

    Fig. 3 is an explanation diagram for explaining the operation of the cluster system disclosed in Fig. 1;

    Fig. 4 is a flowchart showing the operation of a cluster controlling unit of the node disclosed in Fig. 2;

    Fig. 5 is a flowchart showing the operation of a node managing unit of the node disclosed in Fig. 2;

    Fig. 6 is a flowchart showing the operation of an operation status transmitting unit of the node disclosed in Fig. 2;

    Fig. 7 is a flowchart showing the operation of an operation status receiving unit of the node disclosed in Fig. 2;

    Fig. 8 is a flowchart showing the operation of a BMC node managing unit of the node disclosed in Fig. 2;

    Fig. 9 is a flowchart showing the operation of a BMC operation status acquiring unit of the node disclosed in Fig. 2;

    Fig. 10 is a flowchart showing the operation of a BMC controlling unit of the node disclosed in Fig. 2;

    Fig. 11 is a flowchart showing the operation of a hardware monitoring unit of the node disclosed in Fig. 2;

    Fig. 12 is a block diagram showing the configuration of a cluster system in a second exemplary embodiment of the present invention

    Fig. 13 is a block diagram showing the configuration of a virtual infrastructure configuring the cluster system disclosed in Fig. 12; and

    Fig. 14 is a block diagram showing the configuration of a cluster system in Supplementary Note 1 of the present invention.


    EXEMPLARY EMBODIMENT



    [0018] A cluster system (also referred to as a "cluster" hereinafter) according to the present invention includes a plurality of node devices (also referred to as "nodes" hereinafter). The respective nodes execute alive monitoring each other. The cluster system has a function to, in a case that one node comes into a down state, execute a system switching process of causing another node to restart a service having been executed by the one node. Below, the cluster system according to the present invention will be described.

    <First Exemplary Embodiment>



    [0019] A first exemplary embodiment of the present invention will be described with reference to Figs. 1 to 11. Figs. 1 and 2 are diagrams for describing the configuration of the cluster system. Figs. 3 to 11 are views for describing the operation of the cluster system.

    [0020] As shown in Fig. 1, the cluster system according to the present invention includes a plurality of node devices as shown with a node (1) 101, a node (2) 102, and a node (N) 103. The node devices 101 ... are each configured by an information processing device like a server computer. However, the node devices 101 ... may be each configured by an information processing device virtually structured as explained in a second exemplary embodiment described later. The number of the node devices 101 ... configuring the cluster system according to the present invention is not limited to the number thereof in Fig. 1.

    [0021] The node devices 101 ... described above, in each of which an operating system (also referred to as "OS" hereinafter) is embedded, has service units 106 ... for performing a predetermined service process provided to users and clusterwares 107 ... for controlling the operation of the cluster system, respectively. The service units 106 ... and the clusterwares 107 ... are structured by embedding programs into arithmetic devices installed in the node devices 101 ..., respectively. Hereinafter, the node devices 101 ... will be shown and described with reference numeral 201 in Fig. 2.

    [0022] Among the service units described above, the service unit 106 included in the node device 101, which is an active system among the node devices 101 ... configuring the cluster system, operates and provides a service process to a user. On the other hand, the service units 109 and 112 included in the other node devices 102 and 103, which are standby systems, are on standby (refer to dotted lines in Fig. 1). Then, the clusterware 107 controls a process to start or stop the service units 106 .... Therefore, in a case that the service unit 106 is incapable of continuing to operate because of, for example, a fault of the node device 101, the clusterware 107 executes system switching, which is switching between the active system and the standby system regarding the node devices, and the service unit included in another one of the node devices restarts the service.

    [0023] The clusterware 107, which is denoted by reference numeral 203 in Fig. 2, includes a cluster controlling unit 205, a node managing unit 206, an operation status transmitting unit 207 and an operation status receiving unit 208 as shown in Fig. 2. The node managing unit 206 manages a node list A 209 for holding "identifiers," "addresses" and "operation statuses" of all of the nodes contained in the cluster system. The respective units 205 to 208 and the node list A 209 will be described in detail in explanation of the operation later.

    [0024] Further, as shown in Fig. 1, the respective node devices 101 ... are connected to a wired or wireless LAN (Local Area Network) (a first network). The respective node devices 101 ... are enabled to perform communication with each other via the LAN and a network switch (1) 104 by the clusterware 107 operating on the operating system.

    [0025] Furthermore, as shown in Fig. 1, the node devices 101 ... include baseboard management controllers 108 ..., respectively. Each of the baseboard management controllers 108 ... operates as firmware implemented on hardware such as a processor installed in each of the node device 101 ..., and operates independently of the aforementioned OS embedded in each of the node device 101 .... Therefore, even when any of the node devices 101 ... comes to a standstill, a baseboard management controller 204 installed in each of the node devices 101 ... can keep operating.

    [0026] The baseboard management controllers 108 ...installed in the node devices 101 ..., respectively, are connected to a wired or wireless management LAN (a second network), and are capable of performing communication with each other via the management LAN and a network switch (2) 105. Because the network switch (1) 104 and the network switch (2) 105 are connected by a predetermined network, the clusterwares 107 ... and the baseboard management controllers 108 ... can also perform communication with each other.

    [0027] In Fig. 2, the baseboard management controllers 108 ... are denoted by reference numeral 204. The baseboard management controller 204 includes a BMC node managing unit 210, a BMC operation status acquiring unit 211, a BMC controlling unit 212 and a hardware monitoring unit 213 as shown in Fig. 2. Then, the BMC node managing unit 210 manages a node list B 214 for holding "identifiers" and "addresses" of all of the nodes contained in the cluster system. The respective units 210 to 213 and the node list B 214 will be described in detail in explanation of an operation later.

    [0028] Next, the operation of the abovementioned node device 210 (each of the node devices 101 ...) will be described with reference to Figs. 2 to 11.

    [0029] First, the cluster controlling unit 205 requests the node managing unit 206 to start alive monitoring of the node devices, that is, start detection of operation statuses representing whether the own node and the other nodes are normally operating or are down (are not normally operating) (step S1 in Fig. 4). The cluster controlling unit 205 waits for notification of the operation statuses from the respective node devices (step S2 in Fig. 4).

    [0030] Upon reception of the request for alive monitoring of the operation statuses from the cluster controlling unit 205 as described above, the node managing unit 206 (a first node managing unit) requests the operation status transmitting unit 207 to notify the operation status "operating" of the own node (step S21 in Fig. 5). Then, based on the addresses of all of the nodes acquired from the node list A 209 via the node managing unit 206 (step S31 in Fig. 6), the operation status transmitting unit 207 notifies the operation status "operating" of the own node to all of the nodes (steps S32 and S33 in Fig. 6). The notification of the operation status by the operation status transmitting unit 207 is received by the operation status receiving unit 208 of each of the nodes, and the operation status receiving unit 208 notifies the notified operation status of each of the nodes to the node managing unit 206 every time receiving the notification (steps S41 and S42 in Fig. 7). The node managing unit 206 receives the operation status of each of the nodes from the operation status receiving unit 208 (step S23 in Fig. 5), and holds as the result of detection of the operation status of each of the nodes.

    [0031] The node managing unit 206 judges a node device having not notified to the operation status receiving unit 208 for a given time or more to be in the down state, and holds the result of detection of the operation status of the node device. Because detection of the operation statuses of all of the nodes by the node managing unit 206 is executed on the OS, in such a case that the OS of any of the own node device or the other node devices is in a high-load condition, the node device cannot perform communication with the other nodes for a given time or more, and the node device is judged to be in the down state though the node device is not in the down state actually as mentioned above.

    [0032] Further, the node managing unit 206 requests the BMC node managing unit 210 to acquire the operation statuses of all of the node devices almost in tandem with the process of detection of the operation statuses of all of the nodes executed on the OS described above (step S22 in Fig. 5). Thus, the BMC node managing unit 210 (a second node managing unit) requests the BMC operation status acquiring unit 211 to acquire the operation statuses of all of the nodes (step S51 in Fig. 8).

    [0033] Based on the addresses of all of the nodes acquired from the node list B 214 via the BMC node managing unit 210 (step S61 in Fig. 9), the BMC operation status acquiring unit 211 acquires the operation status from the BMC operation status acquiring unit 211 of each of the nodes (steps S62 and S63 in Fig. 9). The acquired operation status result is notified to the BMC node managing unit 210 (step S64 in Fig. 9, step S52 in Fig. 8), and notified from the BMC node managing unit 210 to the node managing unit 206 (step S53 in Fig. 8).

    [0034] Thus, by notification from the BMC node managing unit 210, the node managing unit 206 accepts and holds the result of detection of the operation statuses of all of the nodes without being affected by the OS, via the baseboard management controller 204 (step S24 in Fig. 5). Although the request to the BMC node managing unit 210 by the node managing unit 206 (step S22 in Fig. 5 described above) is periodically made, it is detected that the operation status of the own node in the BMC node managing unit 210 is a down state in a case that there is no request for a given time or more.

    [0035] Subsequently, based on the result of detection of the operation statuses of all of the node devices executed on the OS received from the operation status receiving unit 208 as described above and the result of detection of the operation statuses of all of the node devices executed without affected by the OS received from the BMC node managing unit 210, the node managing unit 206 (a node status judging unit) judges the operation status of the node device (step S25 in Fig. 5). To be specific, the node managing unit 206 judges only a node device considered in the down state based on both the detection results to be in the down state that the node device is not normally operating actually.

    [0036] Then, in a case that there is a node device judged to be in the down state ("Yes" at step S26 in Fig. 5), the node managing unit 206 updates the operation status of a corresponding node in the node list A 209 (step S28 in Fig. 5). In a case that the service unit 202 is operating in the node device judged to be in the down state, the node managing unit 206 requests the cluster controlling unit 205 to execute a system switching process (step S29 in Fig. 5). After that, upon reception of the system switching request (step S3 in Fig. 4), the cluster controlling unit 205 executes the system switching process, and the node managing unit 206 comes to standby for a given time (step S27 in Fig. 5).

    [0037] Next, an operation of monitoring the hardware of a node device by the baseboard management controller 204 (a second node managing unit) will be described. The hardware monitoring unit 213 monitors the hardware of the own node (step S91 in Fig. 11) and, when detecting a fault, notifies to the BMC controlling unit 212 ("Yes" at step S92 and step S94 in Fig. 11, step S71 in Fig. 10). The BMC controlling unit 212 judges whether there is a need to stop the node depending on the severity of the fault, and takes the following measures.

    (1) When There Is a Need to Immediately Stop the Node ("Yes" at Step S72 and "Yes" at Step S74 in Fig. 10)



    [0038] The BMC controlling unit 212 forcibly stops the node (step S81 in Fig. 10), and notifies stoppage of the node to the cluster controlling unit 205 of the other node (step S82 in Fig. 10, step S93 in Fig. 11). In a case that the service unit 202 of the node 201 having been stopped has been operating, the cluster controlling unit 205 of the node 201 having received the notification executes system switching.

    (2) When There Is a Need to Stop the Node within a Predetermined Time ("Yes" at Step S72 in Fig. 10 and "No" at Step S74 in Fig. 10)



    [0039] The BMC controlling unit 212 gives an advance notice of stoppage to the cluster controlling unit 205 of the own node 201 (step S75 in Fig. 10, arrow Y1 in Fig. 3). In a case that the service unit 202 is not operating in the own node ("from own node" at step S3 and "No" at step S6 in Fig. 4), the cluster controlling unit 205 requests the BMC controlling unit 212 to stop the node (step 11 in Fig. 4, step S76 and "Yes" at step S77 in Fig. 10), and the BMC controlling unit 212 stops the node 201 (step S81 in Fig. 10).

    [0040] Further, in a case that the service unit 202 is operating in the own node ("Yes" at step S6 in Fig. 4), the cluster controlling unit 205 requests the BMC controlling unit 212 to wait for completion of the system switching, in order to inhibit the stoppage process by the BMC controlling unit 212 ("No" at step S77 and step S78 in Fig. 10, step S7 in Fig. 4, arrow Y2 shown in Fig. 3). The cluster controlling unit 205 executes the system switching (step S8 in Fig. 4). For example, in the example shown in Fig. 3, the cluster controlling unit 205 stops the service unit 106 operating in the node (1) denoted by reference numeral 101, and executes the system switching so that the service unit 109 can move in the node (2) denoted by reference numeral 102 (arrow Y3 and Y4 in Fig. 3).

    [0041]  After completion of the system switching, in order to cancel the inhibition of the stoppage process by the BMC controlling unit 212, the cluster controlling unit 205 notifies the completion of the system switching to the BMC controlling unit 212 (step S9 in Fig. 4. arrow Y5 in Fig. 3). The BMC controlling unit 212 having received the notification stops the node 201 ("No" at step S79 and step S80 in Fig. 10, arrow Y6 in Fig. 3). However, in a case that the system switching is not completed within a predetermined time ("Yes" at step S79 in Fig. 10), the BMC controlling unit 212 forcibly stops the node 201 (step S81 in Fig. 10), and notifies the stoppage of the node 201 to the cluster controlling unit 205 of the other node 201 (step S82 in Fig. 10). The cluster controlling unit 205 of the other node 201 having received the notification executes system switching (step S10, "from other node" at step S3, step S4, and step S5 in Fig. 4).

    (3) When There Is No Need to Stop the Node ("No" at step S72 in Fig. 10)



    [0042] The BMC controlling unit 212 takes measures for restoration of hardware in which a fault is caused (step S73 in Fig. 10).

    [0043] Thus, in the cluster system according to the present invention, alive monitoring of nodes by the baseboard management controller 108 is not affected by the operation status of the OS, so that it is possible, even when a node comes into a state incapable of performing communication with another node due to the operation status of the OS, to accurately grasp the operation status of the node. Therefore, it is possible to avoid judging that a node device is in the down state, and it is possible to increase the reliability of the cluster system.

    [0044] Further, the cluster system according to the present invention detects a hardware fault in hardware monitoring by the baseboard management controller 108 that is not affected by the operation status of the OS and immediately notifies to all nodes, and hence, can immediately execute system switching in a case that a node goes down due to a hardware fault. As a result, it is possible to increase the reliability of the cluster system.

    <Second Exemplary Embodiment>



    [0045] Next, a second exemplary embodiment of the present invention will be described with reference to Figs. 12 and 13. As shown in Figs. 12 and 13, it is possible to realize the cluster system according to the present invention in a virtual environment.

    [0046] In a virtual environment, as shown in Fig. 12, a plurality of nodes 1105 ... operate within a virtual infrastructure (1) 1101, but it is enough to install only one baseboard management controller 1108. Each of K nodes within a virtual infrastructure 1201 shown in Fig. 13 acquires the operation statuses of the other nodes via the same baseboard management controller 1205 without being affected by the OS.

    [0047] A node list A 1212 managed by a node managing unit 1209 has the same configuration as the node list described in the first exemplary embodiment, whereas a node list B 1217 managed by a BMC node managing unit 1213 holds the "addresses" of virtual infrastructures and the "operation statuses of nodes within each of virtual infrastructures." Thus, it is possible to acquire the operations statuses of a plurality of nodes in bulk from one virtual infrastructure.

    [0048] The program disclosed above is stored in a storage device, or recorded on a non-transitory computer-readable recording medium. For example, the non-transitory computer-readable recording medium is a portable medium such as a flexible disk, an optical disk, a magneto-optical disk and a semiconductor memory.


    Claims

    1. A cluster system comprising a plurality of nodes (201, 101, 102, 103), wherein each of the nodes (201, 101, 102, 103) has an operating system embedded therein, respectively, and is connected with the other nodes (201, 101, 102, 103) by a first network - LAN - (104) and a second network - management LAN (105), and each node (201, 101, 102, 103) includes:

    a clusterware (203) comprising a cluster controlling unit (205); and

    a first node managing unit (206) configured to operate on the operating system and detect operation statuses of the other nodes (201, 101, 102, 103) via the first network - LAN - (104), the first node managing unit (206) managing a first node list (209) for holding identifiers, addresses and operation statuses of the plurality of nodes (201, 101, 102, 103);

    a baseboard management controller (204) comprising a second node managing unit (210) operating as firmware implemented on hardware so as to be configured to operate independently of the operating system and to detect operation statuses of the other nodes (201, 101, 102, 103) via the second network, the second node managing unit (210) managing a second node list (214) for holding identifiers and addresses of the plurality of nodes (201, 101, 102, 103);

    wherein the first node managing unit (206) is configured to judge whether any of the other nodes (201, 101, 102, 103) is in a down state for a given time, based on results of the detection of the other nodes (201, 101, 102, 103) by the first node managing unit (206) and the second node managing unit (210),

    wherein the second node managing unit (210) is configured to receive an operation status request periodically from the first managing unit (206) and is configured to detect that the operation status of the own node (201) in the second managing unit (210) is in a down state in case that there is no request for a given time, and

    wherein the cluster controlling unit (205) is configured to execute a system switching process of causing another node (201, 101, 102, 103) than the node (201, 101, 102, 103) being in the down state to restart a service having been executed by the node (201, 101, 102, 103) being in the down state.


     
    2. The cluster system according to Claim 1, wherein the second node managing unit (210) is configured to monitor an operation status of hardware installed in the own device and, depending on a result of the monitoring, stop operation of the own device.
     
    3. The cluster system according to Claim 2, wherein:

    the second node managing unit (210) is configured to notify, to the cluster controlling unit (205), that the operation of the own device is due to be stopped based on the result of the monitoring;

    the cluster controlling unit (205) is configured to receive notification that the operation of the own device is due to be stopped from the second node managing unit (210) and, in a case that the own device is executing a preset process, execute the node switching process of switching so that another of the other nodes (201, 101, 102, 103) executes the process, and notify completion of the node switching process to the second node managing unit (210) after the completion of the node switching process; and

    the second node managing unit (210) is configured to stop the operation of the own device after receiving notification that the node switching process by the cluster controlling unit (205) is completed.


     
    4. A program for causing each of a plurality of nodes (201, 101, 102, 103) configuring a cluster system, wherein each of the nodes (201, 101, 102, 103) has an operating system embedded therein, respectively, to realize:

    a clusterware (203) comprising a cluster controlling unit (205); and a first node managing unit (206) configured to operate on the operating system and detect operation statuses of the other nodes (201, 101, 102, 103) via the first network - LAN - (104), the first node managing unit (206) managing a first node list (209) for holding identifiers, addresses and operation statuses of the plurality of nodes (201, 101, 102, 103);

    a baseboard management controller (204) comprising a second node managing unit (210) operating as firmware implemented on hardware so as to be configured to operate independently of the operating system and detect operation statuses of the other nodes via the second network, the second node managing unit (210) managing a second node list (214) for holding identifiers and addresses of the plurality of nodes (201, 101, 102, 103);

    wherein the first node managing unit (206) is configured to judge whether any of the other nodes is in a down state for a given time, based on results of the detection of the other nodes by the first node managing unit (206) and the second node managing unit (210),

    wherein the second node managing unit (210) is configured to receive an operation status request periodically from the first managing unit (206) and is configured to detect that the operation status of the own node (201) in the second managing unit (210) is in a down state in case that there is no request for a given time, and

    wherein the cluster controlling unit (205) is configured to execute a system switching process of causing another node than the node being in the down state to restart a service having been executed by the node being in the down state.


     
    5. A node management method comprising, in a cluster system including a plurality of nodes (201, 101, 102, 103) each of which comprising an operating system embedded therein, respectively:

    operating on the operating system and detecting operation statuses of the other nodes via the first network - LAN - (104), by a first node managing unit (206), the first node managing unit (206) managing a first node list (209) for holding identifiers, addresses and operation statuses of the plurality of nodes (201, 101, 102, 103);

    operating as firmware implemented on hardware so as to operating independently of the operating system and detecting operation statuses of the other nodes via the second network by a second node managing unit (210) comprised in a baseboard management controller (204), the second node managing unit (210) managing a second node list (214) for holding identifiers and addresses of the plurality of nodes (201, 101, 102, 103);

    judging, by the first node managing unit (206), whether any of the other nodes (201, 101, 102, 103) is in a down state for a given time, based on results of the detection of the other nodes (201, 101, 102, 103) by the first node managing unit (206) and the second node managing unit (210),

    receiving, by the second node managing unit (210), an operation status request periodically from the first managing unit (206) and detecting that the operation status of the own node (201) in the second managing unit (210) is in a down state in case that there is no request for a given time, and

    executing a system switching process of causing another node than the node being in the down state to restart a service having been executed by the node being in the down state by the cluster controlling unit (205).


     


    Ansprüche

    1. Clustersystem, das mehrere Knoten (201, 101, 102, 103) aufweist, wobei jeder der Knoten (201, 101, 102, 103) jeweils ein darin eingebettetes Betriebssystem aufweist und mit den anderen Knoten (201, 101, 102, 103) durch ein erstes Netzwerk - LAN - (104) und ein zweites Netzwerk - Verwaltungs-LAN (105) verbunden ist, und jeder Knoten (201, 101, 102, 103) aufweist:

    eine Clusterware (203), die eine Clustersteuereinheit (205) aufweist; und

    eine erste Knotenverwaltungseinheit (206), die konfiguriert ist, auf dem Betriebssystem zu arbeiten und Betriebszustände der anderen Knoten (201, 101, 102, 103) über das erste Netzwerk - LAN - (104) zu erfassen, wobei die erste Knotenverwaltungseinheit (206) eine erste Knotenliste (209) zum Speichern von Kennungen, Adressen und Betriebszuständen der mehreren Knoten (201, 101, 102, 103) verwaltet;

    eine Baseboard-Verwaltungssteuereinrichtung (204), die eine zweite Knotenverwaltungseinheit (210) aufweist, die als auf Hardware implementierte Firmware arbeitet, so dass sie konfiguriert ist, unabhängig vom Betriebssystem zu arbeiten und Betriebszustände der anderen Knoten (201, 101, 102, 103) über das zweite Netzwerk zu erfassen, wobei die zweite Knotenverwaltungseinheit (210) eine zweite Knotenliste (214) zum Speichern von Kennungen und Adressen der mehreren Knoten (201, 101, 102, 103) verwaltet;

    wobei die erste Knotenverwaltungseinheit (206) konfiguriert ist zu entscheiden, ob sich irgendeiner der anderen Knoten (201, 101, 102, 103) für eine gegebene Zeit in einem nicht verfügbaren Zustand befindet, beruhend auf Ergebnissen der Erfassung der anderen Knoten (201, 101, 102, 103) durch die erste Knotenverwaltungseinheit (206) und die zweite Knotenverwaltungseinheit (210),

    wobei die zweite Knotenverwaltungseinheit (210) konfiguriert ist, periodisch eine Betriebszustandsabfrage von der ersten Verwaltungseinheit (206) zu empfangen, und konfiguriert ist, zu erfassen, dass der Betriebszustand des eigenen Knoten (201) in der zweiten Verwaltungseinheit (210) sich in einem nicht verfügbaren Zustand befindet, falls es für eine gegebene Zeit keine Abfrage gegeben hat, und

    wobei die Clustersteuereinheit (205) konfiguriert ist, einen Systemumschaltprozess auszuführen, um einen anderen Knoten, (201, 101, 102, 103) als den Knoten (201, 101, 102, 103), der sich im nicht verfügbaren Zustand befindet, zu veranlassen, einen Dienst neu zu starten, der durch den Knoten (201, 101, 102, 103) ausgeführt worden ist, der sich im nicht verfügbaren Zustand befindet,.


     
    2. Clustersystem nach Anspruch 1, wobei die zweite Knotenverwaltungseinheit (210) konfiguriert ist, einen Betriebszustand einer Hardware zu überwachen, die in ihrer eigenen Vorrichtung installiert ist, und abhängig von einem Ergebnis der Überwachung den Betrieb der eigenen Vorrichtung zu stoppen.
     
    3. Clustersystem nach Anspruch 2, wobei:

    die zweite Knotenverwaltungseinheit (210) konfiguriert ist, der Clustersteuereinheit (205) zu melden, dass der Betrieb der eigenen Vorrichtung beruhend auf dem Ergebnis der Überwachung gestoppt werden soll;

    die Clustersteuereinheit (205) konfiguriert ist, eine Meldung, dass der Betrieb der eigenen Vorrichtung gestoppt werden soll, von der zweiten Knotenverwaltungseinheit (210) zu empfangen und in einem Fall, dass die eigene Vorrichtung einen voreingestellten Prozess ausführt, den Knotenumschaltprozess zum Umschalten auszuführen, so dass ein anderer der anderen Knoten (201, 101, 102, 103) den Prozess ausführt, und die Beendigung des Knotenumschaltprozesses der zweiten Knotenverwaltungseinheit (210) nach der Beendigung des Knotenumschaltprozesses zu melden; und

    die zweite Knotenverwaltungseinheit (210) konfiguriert ist, den Betrieb der eigenen Vorrichtung nach dem Empfang der Meldung zu stoppen, dass der Knotenumschaltprozess durch die Clustersteuereinheit (205) beendet ist.


     
    4. Programm, um mehrere Knoten (201, 101, 102, 103), die ein Clustersystem bilden, wobei jeder der Knoten (201, 101, 102, 103) jeweils ein darin eingebettetes Betriebssystem aufweist, zu verwirklichen:

    eine Clusterware (203), die eine Clustersteuereinheit (205) aufweist; und

    eine erste Knotenverwaltungseinheit (206), die konfiguriert ist, auf dem Betriebssystem zu arbeiten und Betriebszustände der anderen Knoten (201, 101, 102, 103) über das erste Netzwerk - LAN - (104) zu erfassen, wobei die erste Knotenverwaltungseinheit (206) eine erste Knotenliste (209) zum Speichern von Kennungen, Adressen und Betriebszuständen der mehreren Knoten (201, 101, 102, 103) verwaltet;

    eine Baseboard-Verwaltungssteuereinrichtung (204), die eine zweite Knotenverwaltungseinheit (210) aufweist, die als auf Hardware implementierte Firmware arbeitet, so dass sie konfiguriert ist, unabhängig vom Betriebssystem zu arbeiten und Betriebszustände der anderen Knoten über das zweite Netzwerk zu erfassen, wobei die zweite Knotenverwaltungseinheit (210) eine zweite Knotenliste (214) zum Speichern von Kennungen und Adressen der mehreren Knoten (201, 101, 102, 103) verwaltet;

    wobei die erste Knotenverwaltungseinheit (206) konfiguriert ist, zu entscheiden, ob sich irgendeiner der anderen Knoten für eine gegebene Zeit in einem nicht verfügbaren Zustand befindet, beruhend auf Ergebnissen der Erfassung der anderen Knoten durch die erste Knotenverwaltungseinheit (206) und die zweite Knotenverwaltungseinheit (210),

    wobei die zweite Knotenverwaltungseinheit (210) konfiguriert ist, periodisch eine Betriebszustandsabfrage von der ersten Verwaltungseinheit (206) zu empfangen, und konfiguriert ist, zu erfassen, dass sich der Betriebszustand des eigenen Knoten (201) in der zweiten Verwaltungseinheit (210) in einem nicht verfügbaren Zustand befindet, falls es für eine gegebene Zeit keine Abfrage gegeben hat, und

    wobei die Clustersteuereinheit (205) konfiguriert ist, einen Systemumschaltprozess auszuführen, um einen anderen Knoten als den Knoten, der sich im nicht verfügbaren Zustand befindet, zu veranlassen einen Dienst neu zu starten, der durch den Knoten ausgeführt worden ist, der sich im nicht verfügbaren Zustand befindet.


     
    5. Knotenverwaltungsverfahren, das in einem Clustersystem, das mehrere Knoten (201, 101, 102, 103) aufweist, von denen jeder jeweils ein darin eingebettetes Betriebssystem aufweist, aufweist:

    Arbeiten auf dem Betriebssystem und Erfassen von Betriebszuständen der anderen Knoten über das erste Netzwerk - LAN - (104) durch eine erste Knotenverwaltungseinheit (206), wobei die erste Knotenverwaltungseinheit (206) eine erste Knotenliste (209) zum Speichern von Kennungen, Adressen und Betriebszuständen der mehreren Knoten (201, 101, 102, 103) verwaltet;

    Arbeiten als auf Hardware implementierte Firmware, um unabhängig vom Betriebssystem zu arbeiten, und Erfassen von Betriebszuständen der anderen Knoten über das zweite Netzwerk durch eine zweite Knotenverwaltungseinheit (210), die in einer Baseboard-Verwaltungssteuereinrichtung (204) enthalten ist, wobei die zweite Knotenverwaltungseinheit (210) eine zweite Knotenliste (214) zum Speichern von Kennungen und Adressen der mehreren Knoten (201, 101, 102, 103) verwaltet;

    Entscheiden durch die erste Knotenverwaltungseinheit (206), ob sich irgendeiner der anderen Knoten (201, 101, 102, 103) für eine gegebene Zeit in einem nicht verfügbaren Zustand befindet, beruhend auf Ergebnissen der Erfassung der anderen Knoten (201, 101, 102, 103) durch die erste Knotenverwaltungseinheit (206) und die zweite Knotenverwaltungseinheit (210),

    periodisches Empfangen durch die zweite Knotenverwaltungseinheit (210) einer Betriebszustandsabfrage von der ersten Verwaltungseinheit (206) und Erfassen, dass sich der Betriebszustand des eigenen Knoten (201) in der zweiten Verwaltungseinheit (210) in einem nicht verfügbaren Zustand befindet, falls es für eine gegebene Zeit keine Abfrage gegeben hat, und

    Ausführen eines Systemumschaltprozesses, um einen anderen Knoten als den Knoten, der sich im nicht verfügbaren Zustand befindet, zu veranlassen, einen Dienst neu zu starten, der durch den Knoten ausgeführt worden ist, der sich im nicht verfügbaren Zustand befindet, durch die Clustersteuereinheit (205).


     


    Revendications

    1. Système en grappe comprenant une pluralité de nœuds (201, 101, 102, 103), où chacun des nœuds (201, 101, 102, 103) comporte un système d'exploitation qui lui est respectivement intégré, et est relié aux autres nœuds (201, 101, 102, 103) par un premier réseau - LAN - (104) et un deuxième réseau - LAN de gestion (105), et où chaque nœud (201, 101, 102, 103) comprend :

    un clusterware (203) comprenant une unité de commande de grappe (205) ; et

    une première unité de gestion de nœuds (206) prévue pour fonctionner sur le système d'exploitation et détecter des états de fonctionnement des autres nœuds (201, 101, 102, 103) via le premier réseau - LAN - (104), la première unité de gestion de nœuds (206) gérant une première liste de nœuds (209) pour la conservation d'identifiants, d'adresses et d'états de fonctionnement de la pluralité de nœuds (201, 101, 102, 103) ;

    un contrôleur d'administration BMC (204) comprenant une deuxième unité de gestion de nœuds (210) fonctionnant comme micrologiciel implémenté sur le matériel, de manière à être prévue pour fonctionner indépendamment du système d'exploitation et détecter des états de fonctionnement des autres nœuds (201, 101, 102, 103) via le deuxième réseau, la deuxième unité de gestion de nœuds (210) gérant une deuxième liste de nœuds (214) pour la conservation d'identifiants et d'adresses de la pluralité de nœuds (201, 101, 102, 103) ; où la première unité de gestion de nœuds (206) est prévue pour estimer si un des autres nœuds (201, 101, 102, 103) est en état d'indisponibilité pendant un temps donné, sur la base de résultats de détection des autres nœuds (201, 101, 102, 103) par la première unité de gestion de nœuds (206) et la deuxième unité de gestion de nœuds (210),

    où la deuxième unité de gestion de nœuds (210) est prévue pour recevoir périodiquement une demande d'état de fonctionnement de la première unité de gestion (206) et est prévue pour détecter que l'état de fonctionnement du nœud propre (201) dans la deuxième unité de gestion (210) est l'état d'indisponibilité si aucune demande n'est présentée pendant un temps donné, et

    où l'unité de commande de grappe (205) est prévue pour exécuter un processus de commutation de système provoquant le redémarrage par un nœud (201, 101, 102, 103) autre que le nœud (201, 101, 102, 103) en état d'indisponibilité d'un service ayant été exécuté par le nœud (201, 101, 102, 103) en état d'indisponibilité.


     
    2. Système en grappe selon la revendication 1, où la deuxième unité de gestion de nœuds (210) est prévue pour surveiller un état de fonctionnement du matériel installé dans le dispositif propre et, en fonction d'un résultat de surveillance, arrêter le fonctionnement du dispositif propre.
     
    3. Système en grappe selon la revendication 2, où :

    la deuxième unité de gestion de nœuds (210) est prévue pour notifier à l'unité de commande de grappe (205) que le fonctionnement du dispositif propre doit être arrêté sur la base du résultat de surveillance ;

    l'unité de commande de grappe (205) est prévue pour recevoir une notification que le fonctionnement du dispositif propre doit être arrêté depuis la deuxième unité de gestion de nœuds (210) et, si le dispositif propre exécute un processus prédéfini, exécuter le processus de commutation de nœud de sorte qu'un autre parmi les autres nœuds (201, 101, 102, 103) exécute le processus, et notifier l'achèvement du processus de commutation de nœud à la deuxième unité de gestion de nœuds (210) après exécution du processus de commutation de nœud ; et

    la deuxième unité de gestion de nœuds (210) est prévue pour arrêter le fonctionnement du dispositif propre après réception de la notification que le processus de commutation de nœud par l'unité de commande de grappe (205) est terminé.


     
    4. Programme destiné à entraîner la réalisation par chaque nœud d'une pluralité de nœuds (201, 101, 102, 103) configurant un système en grappe, chacun des nœuds (201, 101, 102, 103) comportant un système d'exploitation qui lui est respectivement intégré :

    d'un clusterware (203) comprenant une unité de commande de grappe (205) ; et d'une première unité de gestion de nœuds (206) prévue pour fonctionner sur le système d'exploitation et détecter des états de fonctionnement des autres nœuds (201, 101, 102, 103) via le premier réseau - LAN - (104), la première unité de gestion de nœuds (206) gérant une première liste de nœuds (209) pour la conservation d'identifiants, d'adresses et d'états de fonctionnement de la pluralité de nœuds (201, 101, 102, 103) ;

    d'un contrôleur d'administration BMC (204) comprenant une deuxième unité de gestion de nœuds (210) fonctionnant comme micrologiciel implémenté sur le matériel, de manière à être prévue pour fonctionner indépendamment du système d'exploitation et détecter des états de fonctionnement des autres nœuds via le deuxième réseau, la deuxième unité de gestion de nœuds (210) gérant une deuxième liste de nœuds (214) pour la conservation d'identifiants et d'adresses de la pluralité de nœuds (201, 101, 102, 103) ;

    où la première unité de gestion de nœuds (206) est prévue pour estimer si un des autres nœuds est en état d'indisponibilité pendant un temps donné, sur la base de résultats de détection des autres nœuds par la première unité de gestion de nœuds (206) et la deuxième unité de gestion de nœuds (210),

    où la deuxième unité de gestion de nœuds (210) est prévue pour recevoir périodiquement une demande d'état de fonctionnement de la première unité de gestion (206) et est prévue pour détecter que l'état de fonctionnement du nœud propre (201) dans la deuxième unité de gestion (210) est l'état d'indisponibilité si aucune demande n'est présentée pendant un temps donné, et

    où l'unité de commande de grappe (205) est prévue pour exécuter un processus de commutation de système provoquant le redémarrage par un nœud autre que le nœud en état d'indisponibilité d'un service ayant été exécuté par le nœud en état d'indisponibilité.


     
    5. Procédé de gestion de nœuds comprenant, dans un système en grappe comprenant une pluralité de nœuds (201, 101, 102, 103) dont chacun comporte un système d'exploitation qui lui est respectivement intégré :

    le fonctionnement sur le système d'exploitation et la détection d'états de fonctionnement des autres nœuds via le premier réseau - LAN - (104) par une première unité de gestion de nœuds (206), la première unité de gestion de nœuds (206) gérant une première liste de nœuds (209) pour la conservation d'identifiants, d'adresses et d'états de fonctionnement de la pluralité de nœuds (201, 101, 102, 103) ;

    le fonctionnement comme micrologiciel implémenté sur le matériel de manière à fonctionner indépendamment du système d'exploitation et détecter des états de fonctionnement des autres nœuds via le deuxième réseau par une deuxième unité de gestion de nœuds (210) comprise dans un contrôleur d'administration BMC (204), ladite deuxième unité de gestion de nœuds (210) gérant une deuxième liste de nœuds (214) pour la conservation d'identifiants et d'adresses de la pluralité de nœuds (201, 101, 102, 103) ;

    l'estimation, par la première unité de gestion de nœuds (206), si un des autres nœuds (201, 101, 102, 103) est en état d'indisponibilité pendant un temps donné, sur la base de résultats de détection des autres nœuds (201, 101, 102, 103) par la première unité de gestion de nœuds (206) et la deuxième unité de gestion de nœuds (210),

    la réception périodique par la deuxième unité de gestion de nœuds (210) d'une demande d'état de fonctionnement de la première unité de gestion (206) et la détection que l'état de fonctionnement du nœud propre (201) dans la deuxième unité de gestion (210) est l'état d'indisponibilité si aucune demande n'est présentée pendant un temps donné, et

    l'exécution par l'unité de commande de grappe (205) d'un processus de commutation de système provoquant le redémarrage par un nœud autre que le nœud en état d'indisponibilité d'un service ayant été exécuté par le nœud en état d'indisponibilité.


     




    Drawing







































    REFERENCES CITED IN THE DESCRIPTION



    This list of references cited by the applicant is for the reader's convenience only. It does not form part of the European patent document. Even though great care has been taken in compiling the references, errors or omissions cannot be excluded and the EPO disclaims all liability in this regard.

    Patent documents cited in the description