IP Library Granted Patent US 9,912,570
Granted Patent B2
US 9,912,570 · App. 14/316,161 · Granted Mar 6, 2018

Dynamic cloning of application infrastructures

Inventors: Jeffrey P. Hartley (Dublin, OH); Atul Gosain (Bangalore, IN)
Assignee: Brocade Communications Systems LLC
H04L43/16G06F9/45558G06F9/5027H04L41/0846H04L67/101H04L67/1008H04L67/1029H04L67/1031G06F2009/45562G06F2009/45591
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,912,570
App. No.
14/316,161
Granted
Mar 6, 2018
Kind
B2
Abstract

Techniques for dynamically cloning application infrastructures are provided. In one embodiment, a computer system can monitor one or more metrics pertaining to an infrastructure for an application at a first site. If the one or more metrics exceed or fall below one or more corresponding thresholds, the computer system can clone the infrastructure at a second site distinct from the first site, thereby enabling the application to be hosted at the second site.

Claims (41)

1. A method comprising:

monitoring, by a computer system, one or more metrics pertaining to an infrastructure for an application at a first site, wherein the infrastructure includes a first virtual server and a plurality of first application servers, and wherein the first virtual server is configured to receive, at a first virtual IP address (VIP), client requests for the application and redirect the client requests to one or more of the plurality of first application servers; and

if the one or more metrics exceeds or falls below one or more corresponding thresholds, cloning, by the computer system, the infrastructure at a second site distinct from the first site, thereby enabling the application to be hosted at the second site,

wherein the one or more thresholds are specified in a cloning policy defined by a user.

2. The method of claim 1 , wherein the first virtual server is maintained by a first application delivery controller (ADC) at the first site.

3. The method of claim 2 , wherein cloning the infrastructure at the second site comprises:

identifying a second ADC at the second site; and

creating, on the second ADC, a second virtual server for the application based on the first virtual server.

4. The method of claim 3 , wherein the first ADC maintains configuration information for the first virtual server, and wherein creating the second virtual server comprises:

copying the configuration information from the first ADC to the second ADC; and

associating the copied configuration information with the second virtual server.

5. The method of claim 3 , wherein cloning the infrastructure at the second site further comprises:

causing the second virtual server to redirect traffic destined for a second VIP to one or more of a plurality of second application servers at the second site.

6. The method of claim 2 , wherein the one or more metrics include a load or health metric for the first ADC.

7. The method of claim 6 wherein the load or health metric for the first ADC is a CPU or memory utilization of the ADC.

8. The method of claim 1 , wherein the plurality of first application servers run within virtual machines (VMs) hosted on one or more first host systems at the first site.

9. The method of claim 8 , wherein cloning the infrastructure at the second site further comprises:

identifying one or more second host systems at the second site; and

creating, on the one or more second host systems, a plurality of second application servers for the application based on the plurality of first application servers.

10. The method of claim 9 , wherein creating the plurality of second application servers comprises:

cloning the VMs running the plurality of first application servers.

11. The method of claim 1 , wherein the one or more metrics include a load or health metric for the first virtual server.

12. The method of claim 11 wherein the load or health metric for the first virtual server is a number of concurrent connections to the first VIP.

13. The method of claim 1 , wherein the one or more metrics include a load or health metric for the plurality of first application servers.

14. The method of claim 13 wherein the load or health metric for the plurality of first application servers is a runtime status of the plurality of first application servers.

15. The method of claim 1 , further comprising, subsequently to cloning the infrastructure at the second site:

transmitting, to a global server load balancer, a notification that the second site is available for hosting the application.

16. The method of claim 15 , wherein the notification includes a second VIP associated with a second virtual server created at the second site and a host name of the application.

17. The method of claim 1 , further comprising, subsequently to cloning the infrastructure at the second site:

monitoring a load metric of the infrastructure at the first site; and

if the load metric falls below a threshold, dismantling the cloned infrastructure at the second site, such that the application can no longer be hosted at the second site.

18. A non-transitory computer readable medium having stored thereon program code executable by a processor, the program code comprising:

code that causes the processor to monitor one or more metrics pertaining to an infrastructure for an application at a first site, wherein the infrastructure includes a first virtual server and a plurality of first application servers, and wherein the first virtual server is configured to receive, at a first virtual IP address (VIP), client requests for the application and redirect the client requests to one or more of the plurality of first application servers; and

if the one or more metrics exceeds or falls below one or more corresponding thresholds, code that causes the processor to clone the infrastructure at a second site distinct from the first site, thereby enabling the application to be hosted at the second site,

wherein the one or more thresholds are specified in a cloning policy defined by a user.

19. A computer system comprising:

a processor; and

a non-transitory computer readable medium having stored thereon executable program code which, when executed by the processor, causes the processor to:

monitor one or more metrics pertaining to an infrastructure for an application at a first site, wherein the infrastructure includes a first virtual server and a plurality of first application servers, and wherein the first virtual server is configured to receive, at a first virtual IP address (VIP), client requests for the application and redirect the client requests to one or more of the plurality of first application servers; and

if the one or more metrics exceeds or falls below one or more corresponding thresholds, clone the infrastructure at a second site distinct from the first site, thereby enabling the application to be hosted at the second site,

wherein the one or more thresholds are specified in a cloning policy defined by a user.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 18, 2018
From: BROCADE COMMUNICATIONS SYSTEMS LLC
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047270/0247 →
CHANGE OF NAME Recorded Dec 13, 2017
From: BROCADE COMMUNICATIONS SYSTEMS, INC.
To: BROCADE COMMUNICATIONS SYSTEMS LLC
Reel/Frame 044891/0536 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 26, 2014
From: HARTLEY, JEFFREY P.; GOSAIN, ATUL
To: BROCADE COMMUNICATIONS SYSTEMS, INC.
Reel/Frame 033189/0693 →
Continuity (2)
Provisional Application 61895762 · Oct 25, 2013
Related Publication 20150120913A1 · Apr 30, 2015