IP Library Granted Patent US 12,021,692
Granted Patent B2
US 12,021,692 · App. 17/492,494 · Granted Jun 25, 2024

Policy implementation and management

Inventors: Sumeet Singh (Saratoga, CA); Travis Gregory Newhouse (Encinitas, CA); Harshit Naresh Chitalia (Mountain View, CA); Parantap Roy (Mountain View, CA); Tarun Banka (Milpitas, CA); Moitrayee Gupta (San Jose, CA); Pawan Prakash (San Francisco, CA)
Assignee: Juniper Networks, Inc.
H04L41/0893G06F9/45533G06F9/45558G06F9/50H04L41/50H04L41/5025H04L41/5045H04L43/12H04L67/01H04L67/02H04L43/065H04L43/08
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 12,021,692
App. No.
17/492,494
Granted
Jun 25, 2024
Kind
B2
Abstract

The present invention addresses the need for improved virtualized cloud infrastructure policy implementation and management in order allow real-time monitoring and optimization of virtualized resources. It provides systems and methods for real-time cloud infrastructure policy implementation and management that include a plurality of host devices, a plurality of real-time probe agents associated with the plurality of host devices operating on each of the plurality of host devices, and a policy engine communicatively coupled to the plurality of host devices and containing a policy associated with an application program deployed in at least one of the plurality of host devices. The policy engine is programmed to monitor in real time changes in deployment of the application program across the plurality of host devices and to push the policy to the real-time probe agent operating on each host device on which the application program is deployed.

Claims (60)

1. A method comprising:

receiving, by a probe agent executing on a host device within a network, a policy associated with an application deployed to and executing on the host device, wherein the policy includes a rule based on one or more performance metrics associated with the application, and wherein the application executes within a virtual computing instance on the host device, the virtual computing instance being one of a plurality of virtual computing instances executing on the host device;

monitoring, by the probe agent, the one or more performance metrics associated with the application executing within the virtual computing instance on the host device, wherein monitoring the one or more performance metrics associated with the application is performed across each of the plurality of virtual computing instances on which the application executes on the host device;

analyzing the one or more performance metrics associated with the application, by the probe agent, to determine if, based on whether conditions of the rule are met, demand for the application on the host device has increased;

taking an action, by the probe agent and on the host device, to implement the policy on the host device in response to determining that the conditions of the rule are met, wherein taking the action includes scaling the application by creating an additional instance of the application executing on the host device to meet the increased demand;

monitoring, by the probe agent and after taking the action, the one or more performance metrics across each of a plurality of instances of the application executing on the host device including the additional instance of the application executing on the host device;

determining that the application is no longer executing on the host device; and

retracting, based on determining that the application is no longer executing on the host device, the policy from the probe agent.

2. The method of claim 1 , wherein the policy is a first policy associated with a first application, wherein the one or more performance metrics are a first set of performance metrics, and wherein the rule is a first rule, the method further comprising:

receiving, by the probe agent executing on the host device, a second policy associated with a second application;

monitoring, by the probe agent, a second metric associated with the host device, wherein monitoring the second metric is performed across each of the plurality of virtual computing instances executing on the host device;

analyzing the second metric, by the probe agent, to determine if conditions of a second rule are met; and

taking an action, by the probe agent and on the host device, to implement the second policy on the host device in response to determining that the conditions of the second rule are met.

3. The method of claim 2 , wherein taking the action to implement the second policy includes:

instantiating an additional virtual computing instance on the host device.

4. The method of claim 3 , further comprising:

monitoring, by the probe agent and after taking the action to implement the second policy, the second metric across each of the plurality of virtual computing instances including the additional virtual computing instance executing on the host device.

5. The method of claim 2 , wherein taking the action to implement the second policy includes:

moving one of the plurality of virtual computing instances executing on the host device to a different host device.

6. The method of claim 1 ,

wherein the policy includes instructions to cause the probe agent to report, over the network, information about the one or more performance metrics to a data manager.

7. The method of claim 1 , wherein the host device provides full virtualization virtual machines.

8. The method of claim 1 , wherein the host device provides operating system level virtualization.

9. The method of claim 1 , wherein the plurality of virtual computing instances executing on the host device include at least one of a virtual machine or a container.

10. The method of claim 2 ,

wherein the second metric is included within a second set of performance metrics,

wherein the first set of performance metrics and the second set of performance metrics are the same, and

wherein the first rule and the second rule are the same.

11. A host device on a network comprising processing circuitry and a storage device, wherein the processing circuitry has access to the storage device and is configured to:

receive, over the network, a policy associated with an application deployed to and executing on the host device, wherein the policy includes a rule based on one or more performance metrics associated with the application, and wherein the application executes within a virtual computing instance on the host device, the virtual computing instance being one of a plurality of virtual computing instances executing on the host device;

monitor the one or more performance metrics associated with the application executing within the virtual computing instance on the host device, wherein monitoring the one or more performance metrics associated with the application is performed across each of the plurality of virtual computing instances on which the application executes on the host device;

analyze the one or more performance metrics associated with the application to determine if, based on whether conditions of the rule are met, demand for the application on the host device has increased;

take an action to implement the policy on the host device in response to determining that the conditions of the rule are met, wherein taking the action includes scaling the application by creating an additional instance of the application executing on the host device to meet the increased demand;

monitor, after taking the action, the one or more performance metrics across each of a plurality of instances of the application executing on the host device including the additional instance of the application executing on the host device;

determine that the application is no longer executing on the host device; and

retract, based on determining that the application is no longer executing on the host device, the policy from the host device.

12. The host device of claim 11 , wherein the policy is a first policy associated with a first application, wherein the one or more performance metrics are a first set of performance metrics, wherein the rule is a first rule, and wherein the processing circuitry is further configured to:

receive a second policy associated with a second application;

monitor a second metric associated with the host device, wherein monitoring the second metric is performed across each of the plurality of virtual computing instances executing on the host device;

analyze the second metric, to determine if conditions of a second rule are met; and

take an action to implement the second policy on the host device in response to determining that the conditions of the second rule are met.

13. The host device of claim 12 , wherein to take the action to implement the second policy, the processing circuitry is further configured to:

instantiate an additional virtual computing instance on the host device.

14. The host device of claim 13 , wherein the processing circuitry is further configured to:

monitor, after taking the action to implement the second policy, the second metric across each of the plurality of virtual computing instances including the additional virtual computing instance executing on the host device.

15. The host device of claim 12 , wherein to take the action to implement the second policy, the processing circuitry is further configured to:

move one of the plurality of virtual computing instances executing on the host device to a different host device.

16. The host device of claim 11 , wherein the processing circuitry is further configured to:

report, over the network and based on instructions included within the policy, information about the one or more performance metrics to a data manager.

17. The host device of claim 11 , wherein the host device provides full virtualization virtual machines.

18. The host device of claim 11 , wherein the host device provides operating system level virtualization.

19. The host device of claim 11 , wherein the plurality of virtual computing instances executing on the host device include at least one of a virtual machine or a container.

20. A non-transitory computer-readable storage medium comprising instructions that, when executed, configure processing circuitry of a host device to:

receive, over a network, a policy associated with an application deployed to and executing on the host device, wherein the policy includes a rule based on one or more performance metrics associated with the application, and wherein the application executes within a virtual computing instance on the host device, the virtual computing instance being one of a plurality of virtual computing instances executing on the host device;

monitor the one or more performance metrics associated with the application executing within the virtual computing instance on the host device, wherein monitoring the one or more performance metrics associated with the application is performed across each of the plurality of virtual computing instances on which the application executes on the host device;

analyze the one or more performance metrics associated with the application to determine if, based on whether conditions of the rule are met, demand for the application on the host device has increased;

take an action to implement the policy on the host device in response to determining that the conditions of the rule are met, wherein taking the action includes scaling the application by creating an additional instance of the application executing on the host device to meet the increased demand;

monitor, after taking the action, the one or more performance metrics across each of a plurality of instances of the application executing on the host device including the additional instance of the application executing on the host device;

determine that the application is no longer executing on the host device; and

retract, based on determining that the application is no longer executing on the host device, the policy from the host device.

Assignments (1)
NUNC PRO TUNC ASSIGNMENT Recorded May 6, 2026
From: JUNIPER NETWORKS, INC.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 075513/0034 →
Continuity (7)
Continuation 16783160 · Feb 5, 2020
Continuation 15084927 · Mar 30, 2016
Continuation In Part 14811957 · Jul 29, 2015
Continuation In Part 14290509 · May 29, 2014
Continuation In Part 14149621 · Jan 7, 2014
Provisional Application 61882768 · Sep 26, 2013
Related Publication 20220103431A1 · Mar 31, 2022