Method and system for achieving high availability in a networked computer system
First Claim
1. A method for achieving high availability in a networked computer system, the networked computer system including a plurality of nodes connected by a network, the method comprising:
- using a plurality of components to each represent a set of hardware and software in the networked computer system, wherein the plurality of components are high-availability aware;
maintaining a desired level or levels of redundancy comprising assigning at least one of the plurality of components to provide a service within the networked computer system;
assigning operating states to the assigned components;
detecting failure of or request for change of state from one of the assigned components; and
modifying the assigned operating states including a state of the one of the assigned components associated with the detected failure or the detected request for change of state.
2 Assignments
0 Petitions
Accused Products
Abstract
The present invention describes a method and system for achieving high availability in a networked computer system. In particular, the method for achieving high-availability is executed in a networked computer system. The networked computer system includes nodes connected by a network. The method includes using high-availability-aware components to represent hardware and software in the networked computer system, managing the components to achieve a desired level of redundancy, and monitoring health of the networked computer system, including health of components and nodes. The method further includes detecting a failure in the networked computer system. Failures detected by the method include failures of a component and/or node. Finally, the method includes recovering from the failure by performing an appropriate failure recovery procedure.
321 Citations
25 Claims
-
1. A method for achieving high availability in a networked computer system, the networked computer system including a plurality of nodes connected by a network, the method comprising:
-
using a plurality of components to each represent a set of hardware and software in the networked computer system, wherein the plurality of components are high-availability aware;
maintaining a desired level or levels of redundancy comprising assigning at least one of the plurality of components to provide a service within the networked computer system;
assigning operating states to the assigned components;
detecting failure of or request for change of state from one of the assigned components; and
modifying the assigned operating states including a state of the one of the assigned components associated with the detected failure or the detected request for change of state. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method for achieving high availability in a networked computer system, the networked computer system including a plurality of nodes connected by a network, the method comprising:
-
using a plurality of components in each of the plurality of nodes to represent hardware and software in the networked computer system, wherein the plurality of components are high-availability aware;
managing the plurality of components to achieve a desired level or levels of redundancy;
monitoring health of the networked computer system, including health of the plurality of components and health of the plurality of nodes;
detecting a failure in the networked computer system, including a failure of a component in the plurality of components and a failure of a node in the plurality of nodes;
recovering from the failures by performing appropriate failure recovery procedure; and
migrating one of the plurality of components from one node to another node in the plurality of nodes. - View Dependent Claims (17, 18, 19, 20, 21)
-
-
22. A system for making a networked computer system highly available, wherein the networked computer system includes a plurality of nodes connected by a network, the system comprising:
-
means for using a plurality of components to each represent a set of hardware and software in the networked computer system, wherein the plurality of components are high-availability aware;
means for maintaining a desired level or levels of redundancy comprising assigning at least one of the plurality of components to provide a service within the networked computer system;
means for assigning operating states to the assigned components;
means for detecting failure of or request for change of state from one of the assigned components; and
means for modifying the assigned operating states including a state of the one of the assigned components associated with the detected failure or the detected request for change of state.
-
-
23. A system for making a networked computer system highly available, wherein the networked computer system includes a plurality of nodes connected by a network, the system comprising:
-
means for using a plurality of components in each of the plurality of nodes to represent hardware and software in the networked computer system, wherein the plurality of components are high-availability aware;
means for managing the plurality of components to achieve a desired level or levels of redundancy;
means for monitoring health of the networked computer system, including health of the plurality of components and health of the plurality of nodes;
means for detecting a failure in the networked computer system, including a failure of a component in the plurality of components and a failure of a node in the plurality of nodes;
means for recovering from the failures by performing appropriate fault recovery procedure; and
means for migrating one of the plurality of components from one node to another node in the plurality of nodes.
-
-
24. A computer program product configured to achieve high availability in a networked computer system, the networked computer system including a plurality of nodes connected by a network, the computer program product comprising:
-
computer readable program code configured to create a plurality of components to each represent a set of hardware and software in the networked computer system, wherein the plurality of components are high-availability aware;
computer readable program code configured to maintain a desired level or levels of redundancy of the plurality of components, the maintaining comprising assigning at least one of the plurality of components to provide a service;
computer readable program code configured to assign operating states to the assigned components;
computer readable program code configured to detect failure of one of the assigned components;
computer readable program code configured to detect the assigned operating states including a state of the one of the assigned components associated with the detected failure; and
a computer readable medium having the computer readable program codes embodied therein.
-
-
25. A computer program product configured to achieve high availability in a networked computer system, the networked computer system including a plurality of nodes connected by a network, the computer program product comprising:
-
computer readable program code configured to use a plurality of components in at least some of the nodes to represent hardware and software in the networked computer system, wherein the plurality of components are high-availability aware;
computer readable program code configured to manage the plurality of components to achieve a desired level or levels of redundancy;
computer readable program code configured to monitor health of the networked computer system, including health of the plurality of components and health of the plurality of nodes;
computer readable program code configured to detect a failure in the networked computer system, including a failure of a component in the plurality of components and a failure of a node in the plurality of nodes;
computer readable program code configured to recover from the failures by performing appropriate failure recovery procedure;
computer readable program code configured to migrate one of the plurality or components from one of the plurality of nodes to another one of the plurality of nodes; and
a computer readable medium having the computer readable program codes embodied therein.
-
Specification