High-availability cluster virtual server system
First Claim
1. A file server system, comprising:
- two or more nodes, each node configured to run two or more virtual servers, each virtual server having as exclusive resources a virtual interface to clients and one or more file systems.
3 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods, including computer program products, providing high-availability in server systems. In one implementation, a server system is cluster of two or more autonomous server nodes, each running one or more virtual servers. When a node fails, its virtual servers are migrated to one or more other nodes. Connectivity between nodes and clients is based on virtual IP addresses, where each virtual server has one or more virtual IP addresses. Virtual servers can be assigned failover priorities, and, in failover, higher priority virtual servers can be migrated before lower priority ones. Load balancing can be provided by distributing virtual servers from a failed node to multiple different nodes. When a port within a node fails, the node can reassign virtual IP addresses from the failed port to other ports on the node until no good ports remain and only then migrate virtual servers to another node or nodes.
1882 Citations
34 Claims
-
1. A file server system, comprising:
two or more nodes, each node configured to run two or more virtual servers, each virtual server having as exclusive resources a virtual interface to clients and one or more file systems. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
22. A file server system, comprising:
a node configured with a virtual server having two or more simultaneously active virtual IP addresses. - View Dependent Claims (23, 26, 27, 28, 29, 30, 31, 32, 33)
-
24. A file server system, comprising:
-
two or more nodes, each node being configured to run a virtual server having a virtual IP address, and each node being configured with two or more physical ports;
wherein a first node is further configured to;
detect a failure of a physical port on the first node;
determine whether any other physical port on the first node is good;
migrate all virtual IP addresses associated with the failed physical port to a good physical port on the first node if there is such a good port; and
migrate all virtual IP addresses associated with the failed physical port along with all virtual servers attached to such virtual IP addresses to a different, second node if there is no such good port on the first node.
-
-
25. A computer program product, tangibly stored on a computer-readable medium or propagated signal, for execution in multiple nodes of a file server system cluster, comprising instructions operable to cause a programmable processor to:
-
detect a failure of a first node of the cluster; and
migrate each of multiple virtual servers on the first node to a different node in the cluster.
-
-
34. A computer program product, tangibly stored on a computer-readable medium or propagated signal, for execution in a node of a file server system cluster in which virtual servers have virtual IP addresses associated with physical ports, the product comprising instructions operable to cause a programmable processor to:
-
detect a failure of a physical port on a first node of the cluster;
determine whether any other physical port on the first node is good;
migrate all virtual IP addresses associated with the failed physical port to a good physical port on the first node if there is such a good port; and
migrate all virtual IP addresses associated with the failed physical port along with all virtual servers attached to such virtual IP addresses to a different, second node if there is no such good port on the first node.
-
Specification