# US 9,521,151 B2 · Automated and policy driven optimization of cloud infrastructure through delegated actions

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 9,521,151 B2
- Document ID: US9521151B2
- Status: Granted
- Kind: B2
- Application number: 14/520,727
- Filed: 2014-10-22
- Published: 2016-04-28
- Granted: 2016-12-13
- Earliest claimed: 2014-10-22
- Assignees: CloudHealth Technologies, Inc.
- Applicants: CloudHealth Technologies, Inc.
- Inventors: Joe Kinsella; Andi Abes
- Web page: https://patentgrep.com/patent/US9521151B2

## CPC

- H04L 63/102: {Entity profiles}
- H04L 41/0813: characterised by the conditions triggering a change of settings
- H04L 41/5009: Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF]
- H04L 41/5025: by proactively reacting to service quality change, e.g. by reconfiguration after service quality degradation or upgrade
- H04L 63/20: {for managing network security; network security policies in general (filtering policies H04L63/0227)}
- H04L 67/10: in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46)
- H04L 67/1029: using data related to the state of servers by a load balancer
- H04L 41/5096: {wherein the managed service relates to distributed or central networked applications}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A system and method for optimizing a cloud environment using a workflow.

## Claims

### Claim 1

A computer-implemented method for optimizing cloud environment through delegated actions using a cloud infrastructure optimization system, including at least a computer processor and a memory, the memory storing at least one data module, the method comprising the steps of:
gathering data representing operating conditions of a cloud environment using a monitoring system executing at the computer processor, which is operatively connected to the cloud environment over a network;
determining a current state of the operating conditions of the cloud environment;
storing, at the memory, at least one policy representing user desired operation of the cloud environment, and at least one user-defined policy to authorize a change to the cloud environment;
evaluating, using a policy engine executing at the computer processor, whether the cloud environment should be changed to achieve a more desired state based on the current state of the operating conditions and the at least one policy set representing user desired operation of the cloud environment and the at least one user-defined policy to authorize a change to the operating conditions of the cloud environment;
based on the evaluation, generating, using a recommendation engine executing at the computer processor, a recommended change to the operating conditions of the cloud environment to achieve at least one desired state consistent with the at least one user-defined policy;
transmitting the recommended change to the cloud environment for changing the cloud environment from the current state to the desired state;
performing at least one change to the cloud environment consistent with the recommended change; and
determining at least one result of the at least one change to the cloud environment consistent with the at least one recommended change.

### Claim 2 (depends on 1)

The method of claim 1, further comprising the steps of:
monitoring the cloud environment by the monitoring system for deviation from the at least one user-defined policy;
determining whether a user-defined threshold is met;
making at least one recommended action for changing the cloud environment to achieve the at least one desired state.

### Claim 3 (depends on 1)

The method of claim 1, wherein the at least one user-defined policy defines at least one objective.

### Claim 4 (depends on 3)

The computer-implemented automated and policy-driven method of claim 3, wherein the at least one objective is at least one of the following:
lower cost; increased availability; better performance; and higher security.

### Claim 5 (depends on 2)

The method of claim 2, wherein the at least one recommended action, if executed, will bring the respective aspects of the cloud environment closer to compliance with the at least one user-defined policy.

### Claim 6 (depends on 2)

The method of claim 2, further comprising the step of:
delivering at least one recommended action to at least one approver based on at least one predefined approval policy.

### Claim 7 (depends on 6)

The method of claim 6, further comprising the step of:
interfacing with at least one security system to receive at least one temporary credential to authorize execution of the approved at least one recommended action.

### Claim 8 (depends on 1)

The method of claim 1, further comprising the step of:
communicating the at least one result to at least one user.

### Claim 9 (depends on 1)

The method of claim 1, further comprising the step of:
managing the cloud environment optimization system by at least one third party agent.

### Claim 10 (depends on 1)

The method of claim 1, further comprising the step of:
migrating at least one workload between at least two cloud service providers to achieve at least one desired state consistent with the at least one user-defined policy.

### Claim 11 (depends on 6)

The method of claim 6, wherein the at least one predefined approval policy dynamically adjusts based on the recommended action.

### Claim 12

A computer-implemented cloud infrastructure optimization system including at least a computer processor and a memory, the system operable to optimize a cloud environment through delegated actions, the system comprising:
a monitoring system for gathering data from a cloud environment executing at the computer processor which is operatively connected to a cloud environment over a network representing operating conditions of the cloud environment to determine the current state of the operating conditions of the cloud environment;
a policy database, maintained at the memory, storing at least one policy representing user desired operation of the cloud environment, and at least one user-defined policy to authorize a change to the cloud environment;
a policy engine executing at the computer processor operable to evaluate whether the cloud environment should be changed to achieve a more desired state based on the current state of the operating conditions and the at least one policy set representing user-desired operation of the cloud environment and the at least one user-defined policy to authorize a change to the operating conditions of the cloud environment;
a recommendation engine executing at the computer processor for generating, based on the evaluation, a recommended change to the operating conditions of the cloud environment to achieve at least one desired state consistent with the at least one user-defined policy,
wherein the recommended change is transmitted to the cloud environment for changing the cloud environment from the current state to the desired state; and
a performance engine to perform at least one change to the cloud environment consistent with the recommended change,
wherein the monitoring system determines at least one result of the at least one change to the could environment with the at least one recommended change.

### Claim 13 (depends on 12)

The system of claim 12, further comprising:
a monitoring engine executing at the computer processor for monitoring the cloud environment's deviation from the at least one user-defined policy;
a determination engine executing at the computer processor for determining whether a user-defined threshold is met; and
wherein the recommendation engine producing at least one recommended change to the cloud environment achieves the at least one desired state.

### Claim 14 (depends on 12)

The system of claim 12, wherein the at least one user-defined policy defines at least one objective.

### Claim 15 (depends on 14)

The system of claim 14, wherein the at least one objective is at least one of the following: lower cost; increased availability; better performance; and higher security.

### Claim 16 (depends on 13)

The system of claim 13, wherein the recommended change brings the cloud environment into compliance with the at least one user-defined policy.

### Claim 17 (depends on 13)

The system of claim 13, further comprising:
a delivery engine for delivering the at least one recommended action to at least one approver based on at least one predefined approval process.

### Claim 18 (depends on 13)

The system of claim 13, further comprising:
an interface for interfacing with at least one security system to receive at least one temporary credential to authorize execution of the approved at least one recommended action.

### Claim 19 (depends on 13)

The system of claim 13, further comprising:
a third-party management engine for managing the cloud infrastructure optimization system by at least one third-party agent.

### Claim 20 (depends on 13)

The system of claim 13, further comprising:
a migration engine for migrating at least one workload between at least two cloud service providers to achieve the user-defined policy.
