IP Library Granted Patent US 10,860,364
Granted Patent B2
US 10,860,364 · App. 16/381,018 · Granted Dec 8, 2020

Containerized management services with high availability

Inventors: Ammar Rizvi (Bangalore, IN); Krishnendu Gorai (Bangalore, IN); Aakash Bhattacharya (Bangalore, IN); Saket Singh (Bangalore, IN); Dinesh Sharma (Bangalore, IN)
Assignee: VMWARE, INC.
G06F9/45558G06F9/5077G06F9/545G06F11/1402G06F11/203G06F11/301G06F2009/45595
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 10,860,364
App. No.
16/381,018
Granted
Dec 8, 2020
Kind
B2
Abstract

In one example, a management service may be deployed in a first container. Further, a shadow service corresponding to the management service may be generated in the first container. Furthermore, network traffic may be routed to an active one of the management service and the shadow service, via a watchdog service in the first container, to provide high availability at a service level.

Claims (62)

1. A method comprising:

deploying a management service in a first container;

generating a shadow service corresponding to the management service in the first container; and

routing, by a watchdog service in the first container, network traffic to an active one of the management service and the shadow service to provide high availability at a service level.

2. The method of claim 1 , wherein the management service and the shadow service run in an active mode and a passive mode, respectively or vice versa.

3. The method of claim 1 , wherein routing the network traffic to the active one of the management service and the shadow service comprises:

detecting, by the watchdog service, a failure associated with the management service when the management service is in an active mode; and

routing the network traffic to the shadow service upon detecting the failure of the management service to provide the high availability.

4. The method of claim 3 , further comprising:

restarting, by the watchdog service, the management service in the first container; and

routing back the network traffic to the management service upon successful restart of the management service.

5. The method of claim 1 , further comprising:

independently upgrading the management service by replacing the first container with a second container having an updated docker image corresponding to an updated management service.

6. The method of claim 5 , wherein independently upgrading the management service comprises:

updating a shared database associated with the first container with an updated database script associated with the updated management service while the management service is using the shared database, wherein the shared database is backward compatible;

deploying the second container having the updated docker image that corresponds to the updated management service and an updated shadow service, wherein the second container is to have access to the updated shared database; and

routing the network traffic to an active one of the updated management service and the updated shadow service via a watchdog service in the second container.

7. The method of claim 6 , further comprising:

decommissioning the first container upon successfully routing the network traffic to the second container.

8. The method of claim 1 , wherein the management service and the shadow service are to store a shared state in a shared memory, wherein the management service and the shadow service are to access a shared database, and wherein the management service and the shadow service comprise separate application memories.

9. A system comprising:

a container host;

a first container running on the container host; and

a management host communicatively coupled to the container host, wherein the management host comprises a high availability service provisioning unit to:

deploy a management service in the first container; and

generate a shadow service corresponding to the management service in the first container; and

enable a watchdog service in the first container to monitor and route network traffic to an active one of the management service and the shadow service to provide high availability at a service level.

10. The system of claim 9 , wherein the watchdog service in the first container is to:

detect a failure associated with the management service when the management service is in an active mode; and

route the network traffic to the shadow service upon detecting the failure of the management service to provide the high availability.

11. The system of claim 10 , wherein the watchdog service in the first container is to:

restart the management service in the first container; and

route back the network traffic to the management service upon successful restart of the management service.

12. The system of claim 9 , wherein the management host further comprises a service upgrading unit to:

independently upgrade the management service by replacing the first container with a second container having an updated docker image corresponding to an updated management service.

13. The system of claim 12 , wherein the service upgrading unit is to:

update a shared database associated with the first container with an updated database script associated with the updated management service while the management service is using the shared database, wherein the shared database is backward compatible;

enable a deployment unit in the management host to deploy the second container having the updated docker image that corresponds to the updated management service and an updated shadow service, wherein the second container is to have access to the updated shared database; and

initialize one of the updated management service and the updated shadow service such that a watchdog service in the second container is to route the network traffic to an active one of the updated management service and the updated shadow service.

14. The system of claim 13 , wherein the deployment unit is to:

decommission the first container upon successfully routing the network traffic to the second container.

15. The system of claim 9 , further comprising

a shared memory to store a shared state of the management service and the shadow service;

a shared database accessed by the management service and the shadow service; and

a first application memory and a second application memory associated with the management service and the shadow service, respectively.

16. A non-transitory machine-readable storage medium encoded with instructions that, when executed by a processor of a computing system, cause the processor to:

deploy a management service in a first container;

generate a shadow service corresponding to the management service in the first container; and

route network traffic to an active one of the management service and the shadow service to provide high availability at a service level.

17. The non-transitory machine-readable storage medium of claim 16 , wherein the instructions to route the network traffic to the active one of the management service and the shadow service comprises instructions to:

detect a failure associated with the management service when the management service is in an active mode; and

route the network traffic to the shadow service upon detecting the failure of the management service to provide the high availability.

18. The non-transitory machine-readable storage medium of claim 17 , further comprising instructions, when executed by the processor of the computing system, cause the processor to:

restart the management service in the first container; and

route back the network traffic to the management service upon successful restart of the management service.

19. The non-transitory machine-readable storage medium of claim 16 , further comprising instructions, when executed by the processor of the computing system, cause the processor to:

independently upgrade the management service by replacing the first container with a second container having an updated docker image corresponding to an updated management service.

20. The non-transitory machine-readable storage medium of claim 19 , wherein the instructions to independently upgrade the management service comprises instructions to:

update a shared database associated with the first container with an updated database script associated with the updated management service while the management service is using the shared database, wherein the shared database is backward compatible;

deploy the second container having the updated docker image that corresponds to the updated management service and an updated shadow service, wherein the second container is to have access to the updated shared database;

initialize one of the updated management service and the updated shadow service such that a watchdog service in the second container is to route the network traffic to the active one of the updated management service and the updated shadow service; and

decommission the first container upon successfully routing the network traffic to the second container.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067103/0030 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 11, 2019
From: RIZVI, AMMAR; GORAI, KRISHNENDU; BHATTACHARYA, AAKASH; SINGH, SAKET; SHARMA, DINESH
To: VMWARE, INC.
Reel/Frame 048853/0564 →
Priority Claims (1)
IN 201941002811 · Jan 23, 2019 · national
Continuity (1)
Related Publication 20200233691A1 · Jul 23, 2020