IP Library Granted Patent US 9,667,490
Granted Patent B1
US 9,667,490 · App. 14/823,097 · Granted May 30, 2017

Method for high availability of services in cloud computing systems

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,667,490
App. No.
14/823,097
Granted
May 30, 2017
Kind
B1
Abstract

A method and computer program product for providing High Availability (HA) of services in a cloud-based system. The services are the applications used by the end users of the cloud system. The system uses shared cloud distributed storage. The cloud data is distributed over several nodes and is duplicated in an on-line mode. Each user launches and runs his own Virtual Execution Environment VEE (VM or Container) used as a cloud service. If one of the hardware nodes becomes unavailable, the HA system restores all of the VEEs of the failed node on a functional hardware node. Each node has a daemon, which monitors the situation and, if one of the nodes crashes, a master daemon provides for the restoration of the services of this node on other available nodes of the cloud.

Claims (42)

1. A system for providing a high availability (HA) of services, the system comprising:

a plurality of nodes having at least one Virtual Execution Environment (VEE) running on at least some of the nodes, where each VEE uses at least one file divided into data chunks;

a plurality of node file locks active while accessing the active nodes;

a plurality of chunk servers accessible by the nodes for storing the data chunks;

a metadata server (MDS) communicating with the chunk servers and the nodes for providing metadata related to the data chunks;

a router providing access to services hosted on the nodes;

an HA daemon running on each node;

an HA master daemon running on one of the nodes,

wherein the HA daemons tracking availability of services hosted on the nodes and generate requests to HA master daemon to restore failed services and redirect router to live services instead failed;

the activate file locks and

master daemon re-launches a corresponding VEE on another node based on the node file locks and updates the router so as to redirect routers to active services.

2. The system of claim 1 , wherein each HA daemon has a lease flag identifying the node the daemon belongs to.

3. The system of claim 2 , wherein the HA master daemon detects a node as failed, if the HA master daemon cannot obtain the lease flag corresponding to the node corresponding to the node.

4. The system of claim 1 , wherein the router contain service name service translating service description to network address of node providing requested service.

5. The system of claim 1 , wherein after the mode fail the VEE is starting to re-launched on another node from a state when it was interrupted on the failed node.

6. The system of claim 5 further comprising restarting the VEE on a restored node after failure if the process of restarting has not been completed.

7. The system of claim 1 , wherein the HA master daemon detects the failed node by sending keep-alive requests to the VEEs on the nodes.

8. The system of claim 7 , further comprising a dedicated spare node for reserve hosting the HA master daemon if the main node for the HA master daemon fails.

9. The system of claim 1 , wherein, if a particular node is unreliable, then that node is not used as a rescue node, and unreliable nodes perform fewer functions until removal from the system.

10. The system of claim 1 , wherein at least some of the nodes are either hosting nodes or rescue nodes.

11. The system of claim 1 , wherein the MDS maintains a record of a type of each node and whether a particular node has free space for rescuing a VEE.

12. A computer-implemented method for providing a high availability (HA) of services in a cloud-based environment, the method comprising:

(a) starting a plurality of nodes;

(b) starting an HA daemon on each node;

(c) connecting the nodes to a storage containing files corresponding to each of the nodes and locks corresponding to each file of an active node where locks are controlled by HA daemons;

(d) connecting the nodes to a router which keeps track of Virtual Execution Environment (VEE) locations;

(e) launching at least one VEE on each node;

(g) when opening files on a node, detecting a failed node by recognizing an unlocked file of that node;

(i) re-launching VEEs of the failed node on at least one other node; and

(j) notifying the router of new VEE locations.

13. A system for providing a high availability (HA) of services in a cloud-based environment, the system comprising:

a processor;

a memory coupled to the processor;

a computer program logic stored in the memory and executed on the processor, the computer program logic for executing the steps of:

(a) starting a plurality of nodes;

(b) starting an HA daemon on each node;

(c) connecting the nodes to a storage containing files corresponding to each of the nodes and locks corresponding to each file of an active node where locks are controlled by HA daemons;

(d) connecting the nodes to a router which keeps track of Virtual Execution Environment (VEE) locations;

(e) launching at least one VEE on each node;

(g) when opening files on a node, detecting a failed node by recognizing an unlocked file of that node;

(i) re-launching VEEs of the failed node on at least one other node; and

(j) notifying the router of new VEE locations.

Assignments (3)
SECURITY INTEREST IN TRADEMARK, PATENT, AND COPYRIGHT RIGHTS Recorded Dec 22, 2022
From: VIRTUOZZO INTERNATIONAL GMBH; ONAPP LIMITED
To: WILMINGTON TRUST (LONDON) LIMITED
Reel/Frame 062206/0557 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2018
From: PARALLELS IP HOLDINGS GMBH
To: VIRTUOZZO INTERNATIONAL GMBH
Reel/Frame 045179/0537 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 11, 2015
From: EMELYANOV, PAVEL; PROTASSOV, STANISLAV S.; BELOUSSOV, SERGUEI M.
To: PARALLELS IP HOLDINGS GMBH
Reel/Frame 036296/0632 →