# US 9,882,829 B2 · Orchestrating hybrid cloud services

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

- Number: US 9,882,829 B2
- Document ID: US9882829B2
- Status: Granted
- Kind: B2
- Application number: 14/394,656
- Filed: 2012-07-31
- Published: 2015-03-12
- Granted: 2018-01-30
- Earliest claimed: 2012-07-31
- Assignees: Hewlett Packard Enterprise Development LP
- Applicants: Stephane Herman Maes; Mark Perreira; Bryan P. Murray; Rajeev Bharadhwaj
- Inventors: Stephane Herman Maes; Mark Perreira; Bryan P. Murray; Rajeev Bharadhwaj
- Web page: https://patentgrep.com/patent/US9882829B2

## CPC

- H04L 47/781: {Centralised allocation of resources}
- G06F 9/5072: {Grid computing}
- H04L 67/51: Discovery or management thereof, e.g. service location protocol [SLP] or web services
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A technique includes providing a first interface to manage a plurality of cloud services that are provided by a plurality of cloud resources that form a hybrid cloud. Each of the cloud resources is associated with an application programming interface. The technique includes using the first interface to orchestrate the cloud services, where the orchestration includes using the first interface to orchestrate the application programming interfaces to allow at least one cloud resource management function provided by the first interface to be performed across at least two of the cloud resources.

## Claims

### Claim 1

A method comprising:
providing a hybrid cloud service interface to manage a plurality of cloud services provided by a plurality of cloud resources that form a hybrid cloud, the hybrid cloud service interface containing an overarching application programming interface that is a superset of coarse grain cloud application programming interfaces of the hybrid cloud service interface, each of the cloud application programming interfaces corresponding to a cloud resource of the plurality of cloud resources, and each of the cloud application programming interfaces forming an interface to at least one application programming interface of a corresponding cloud resource; and
orchestrating, by the hybrid cloud service interface, the cloud services by execution of the cloud application programming interfaces in the superset contained by the overarching application programming interface to perform at least one cloud resource management function provided by the hybrid cloud service interface across at least two of the plurality of cloud resources that form the hybrid cloud,
wherein the overarching application programming interface provides a cloud application programming interface for at least one function shared in common among the plurality of cloud resources.

### Claim 2 (depends on 1)

The method of claim 1, wherein orchestrating the hybrid cloud service interface comprises using a service shared in common by the cloud application programming interfaces.

### Claim 3 (depends on 1)

The method of claim 1, further comprising automatically selecting, by the hybrid cloud service interface, one of the cloud resources based on at least one of user provided criteria and criteria other than the user provided criteria.

### Claim 4 (depends on 1)

The method of claim 1, further comprising checking, by the hybrid cloud service interface, a user request for a cloud service action against a policy.

### Claim 5 (depends on 1)

The method of claim 1, further comprising providing, by the hybrid cloud service interface, at least one additional overarching application programming interface in response to an additional cloud service.

### Claim 6 (depends on 1)

The method of claim 1, wherein the providing the hybrid cloud service interface comprises providing a service blueprint triggered by at least one of the cloud application programming interfaces to orchestrate the cloud application programming interfaces.

### Claim 7 (depends on 1)

The method of claim 1, comprising:
providing, by the cloud application programming interfaces, metadata; and
using, by the hybrid cloud service interface, the metadata to determine cloud resources to be provisioned in response to a request.

### Claim 8 (depends on 1)

The method of claim 1, wherein the hybrid cloud service interface includes service blueprints, each service blueprint including at least one recipe for executing cloud application programming interfaces, and
the orchestrating includes executing a recipe of a service blueprint of the service blueprints.

### Claim 9 (depends on 1)

The method of claim 1, wherein the orchestrating includes executing a recipe that includes multiple branches associated with multiple cloud resources of the plurality of cloud resources, and each branch of the multiple branches making calls by an associated cloud application programming interface in the superset contained by the overarching application programming interface.

### Claim 10 (depends on 1)

The method of claim 1, further comprising introducing, by the hybrid cloud service interface, a new cloud service for orchestration by binding service blueprints to a new cloud application programming interface.

### Claim 11

An article comprising a non-transitory computer readable storage medium to store instructions that when executed by a processor cause the processor to:
provide a hybrid cloud service interface to manage a plurality of cloud services provided by a plurality of cloud resources that form a hybrid cloud;
provide at least one overarching application programming interface within the hybrid cloud service interface, the overarching application programming interface being a superset of coarse grain cloud application programming interfaces of the hybrid cloud service interface, each of the cloud application programming interfaces corresponding to a cloud resource of the plurality of cloud resources, and each of the cloud application programming interfaces forming an interface to at least one application programming interface of a corresponding cloud resource;
orchestrate the cloud services by execution of the cloud application programming interfaces in the superset contained by the overarching application programming interface to perform at least one cloud resource management function provided by the hybrid cloud service interface to be performed across at least two of the plurality of cloud resources; and
provide a cloud application programming interface in the overarching application programming interface for at least one function shared in common among the plurality of cloud resources.

### Claim 12 (depends on 11)

The article of claim 11, the storage medium storing instructions that when executed by the processor cause the processor to provide an orchestrating application programming interface to orchestrate the application programming interfaces associated with the cloud resources.

### Claim 13 (depends on 11)

The article of claim 11, the storage medium storing instructions that when executed by the processor cause the processor to provide a service blueprint triggered by at least one of the cloud application programming interfaces to orchestrate the cloud application programming interfaces.

### Claim 14 (depends on 11)

The article of claim 11, the storage medium storing instructions that when executed by the processor cause the processor to:
provide metadata as a result of a search; and
use the metadata to determine cloud resources to provision in response to a request for cloud resources.

### Claim 15

A system comprising:
a plurality of cloud containers, each of the cloud containers being associated with a cloud resource of a plurality of cloud resources forming a hybrid cloud and being associated with cloud services available for an associated cloud resource; and
a processor to provide a hybrid cloud service interface that
contains an overarching application programming interface that is a superset of coarse grain cloud application programming interfaces of the hybrid cloud service interface, each of the cloud application programming interfaces to communicate with a corresponding cloud container of the plurality of cloud containers, and each of the cloud application programming interfaces forming an interface to at least one application programming interface of the corresponding cloud container, and
orchestrates the cloud services by execution of the cloud application programming interfaces in the superset to perform at least one cloud resource management function provided by the hybrid cloud service interface across at least two of the plurality of cloud resources that form the hybrid cloud;
wherein the overarching application programming interface is to orchestrate cloud services that are shared in common among the cloud containers.

### Claim 16 (depends on 15)

The system of claim 15, wherein at least one of the cloud containers comprises additional application programming interfaces, each of the additional application programming interfaces being associated with one of the cloud services associated with the container.

### Claim 17 (depends on 16)

The system of claim 16, wherein the cloud services comprise at least one of a compute service, a storage service, a network service and an image management service.

### Claim 18 (depends on 15)

The system of claim 15, comprising:
metadata generated by the cloud application programming interfaces, responsive to a search, wherein the metadata is usable to determine cloud resources to be provisioned in response to a request for cloud resources.

### Claim 19 (depends on 15)

The system of claim 15, wherein the hybrid cloud service interface includes service blueprints, each service blueprint including at least one recipe for executing cloud application programming interfaces, and
the execution of the cloud application programming interfaces to orchestrate the cloud services includes execution of a recipe of a service blueprint of the service blueprints.

### Claim 20 (depends on 15)

The system of claim 15, wherein the execution of the cloud application programming interfaces by the hybrid cloud service interface includes execution, by the processor, of a recipe that includes multiple branches associated with multiple cloud resources of the plurality of cloud resources, and each branch of the multiple branches including making calls by an associated cloud application programming interface in the superset contained by the overarching application programming interface.
