IP Library Granted Patent US 12,099,882
Granted Patent B2
US 12,099,882 · App. 17/494,495 · Granted Sep 24, 2024

Techniques for providing cloud services on demand

Inventors: Eden Grail Adogla (Seattle, WA); Matthew Victor Rushton (Portsmouth, NH); Iliya Roitburg (Seattle, WA); Brijesh Singh (Mercer Island, WA)
Assignee: Oracle International Corporation
G06F9/5072G06F9/4401G06F9/4881G06F9/5077G06N7/01
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,099,882
App. No.
17/494,495
Granted
Sep 24, 2024
Kind
B2
Abstract

Techniques are disclosed for deploying a computing resource (e.g., a service) in response to user input. A computer-implemented method can include operations of identifying a first set of computing components already deployed within the cloud-computing environment and identifying a second set of computing components available for deployment within the cloud-computing environment. A request for deployment may be subsequently received for one of the available computing components. A bootstrap request corresponding to the particular computing component requested may be transmitted to a deployment orchestrator, the deployment orchestrator being configured to deploy the particular computing component to the cloud-computing environment based at least in part on the bootstrap request. A user interface may present status indicators for each computing component (e.g., deployed, available, requested, etc.).

Claims (68)

1. A computer-implemented method, comprising:

identifying, by a computing device of a cloud-computing environment, a first set of computing components already deployed within the cloud-computing environment;

identifying, by the computing device, a second set of computing components available for deployment within the cloud-computing environment;

receiving, by the computing device, a request for deployment, the request for deployment identifying a particular computing component of the second set of computing components that are available for deployment;

transmitting, by the computing device to a deployment orchestrator of the cloud-computing environment, a bootstrap request corresponding to the particular computing component requested, the deployment orchestrator being configured to deploy the particular computing component to the cloud-computing environment based at least in part on the bootstrap request;

presenting a user interface that presents a first set of status indicators for the first set of computing components already deployed within the cloud-computing environment and a status indicator corresponding to the particular computing component; and

transmitting, to the deployment orchestrator, a spin-down request corresponding to the particular computing component, the spin-down request being transmitted in response to 1) receiving a new request to spin down the particular computing component, or 2) identifying a last time at which a last request for the particular computing component was received and determining that a difference between the last time and a current time exceeds a predefined threshold period of time.

2. The computer-implemented method of claim 1 , further comprising:

identifying that the particular computing component was successfully deployed;

adding an identifier associated with the particular computing component to a routing table;

receiving a subsequent request comprising the identifier; and

transmitting the subsequent request to the particular computing component for processing.

3. The computer-implemented method of claim 1 , wherein

transmitting the bootstrap request causes the deployment orchestrator to perform operations comprising:

identifying one or more computing components from which the particular computing component depends; and

deploying the one or more computing components prior to deploying the particular computing component.

4. The computer-implemented method of claim 3 , wherein

identifying the one or more computing components from which the particular computing component is based at least in part on determining the one or more computing components from a directed acyclic graph that defines computing component dependencies.

5. The computer-implemented method of claim 3 , further comprising:

presenting, at the user interface, information identifying the one or more computing components from which the particular computing component requested depends;

receiving, at the user interface, user input indicating acceptance of deploying the one or more computing components prior to deploying the particular computing component; and

transmitting, by the computing device to the deployment orchestrator, respective bootstrap requests corresponding to the one or more computing components, wherein the respective bootstrap requests are transmitted prior to transmitting the bootstrap request corresponding to the particular computing component requested.

6. The computer-implemented method of claim 1 ,

wherein transmitting the spin-down request is further based at least in part on determining that no other component of the cloud-computing environment depends on the particular computing component.

7. A computing device of a cloud-computing environment, comprising

one or more processors; and

one or more memories storing computer-executable instructions that, when executed by the one or more processors, causes the computing device to:

identify a first set of computing components already deployed within the cloud-computing environment;

identify a second set of computing components that are available for deployment within the cloud-computing environment;

receive a request for deployment, the request for deployment identifying a particular computing component of the second set of computing components available for deployment;

transmit, to a deployment orchestrator of the cloud-computing environment, a bootstrap request corresponding to the particular computing component requested, the deployment orchestrator being configured to deploy the particular computing component to the cloud-computing environment based at least in part on the bootstrap request;

present a user interface that presents a first set of status indicators for the first set of computing components already deployed within the cloud-computing environment and a status indicator corresponding to the particular computing component; and

transmit, to the deployment orchestrator, a spin-down request corresponding to the particular computing component, the spin-down request being transmitted in response to 1) receiving a new request to spin down the particular computing component, or 2) identifying a last time at which a last request for the particular computing component was received and determining that a difference between the last time and a current time exceeds a predefined threshold period of time.

8. The computing device of claim 7 , wherein executing the instructions further cause the computing device to:

identify that the particular computing component was successfully deployed;

add an identifier associated with the particular computing component to a routing table;

receive a subsequent request comprising the identifier; and

transmit the subsequent request to the particular computing component for processing.

9. The computing device of claim 7 , wherein transmitting the bootstrap request causes the deployment orchestrator to perform operations comprising:

identify one or more computing components from which the particular computing component depends; and

deploy the one or more computing components prior to deploying the particular computing component.

10. The computing device of claim 9 , wherein identifying the one or more computing components from which the particular computing component is based at least in part on determining the one or more computing components from a directed acyclic graph that defines computing component dependencies.

11. The computing device of claim 9 , wherein executing the instructions further cause the computing device to:

present, at the user interface, information identifying the one or more computing components from which the particular computing component requested depends;

receive, at the user interface, user input indicating acceptance of deploying the one or more computing components prior to deploying the particular computing component; and

transmit, by the computing device to the deployment orchestrator, respective bootstrap requests corresponding to the one or more computing components, wherein the respective bootstrap requests are transmitted prior to transmitting the bootstrap request corresponding to the particular computing component requested.

12. The computing device of claim 7 , wherein

transmitting the spin-down request is further based at least in part on determining that no other component of the cloud-computing environment depends on the particular computing component.

13. A non-transitory computer-readable storage medium storing computer-executable instructions that, when executed by one or more processors of a computing device, causes the computing device to:

identify a first set of computing components already deployed within a cloud-computing environment;

identify a second set of computing components that are available for deployment within the cloud-computing environment;

receive a request for deployment, the request for deployment identifying a particular computing component of the second set of computing components available for deployment;

transmit, to a deployment orchestrator of the cloud-computing environment, a bootstrap request corresponding to the particular computing component requested, the deployment orchestrator being configured to deploy the particular computing component to the cloud-computing environment based at least in part on the bootstrap request;

present a user interface that presents a first set of status indicators for the first set of computing components already deployed within the cloud-computing environment and a status indicator corresponding to the particular computing component; and

transmit, to the deployment orchestrator, a spin-down request corresponding to the particular computing component, the spin-down request being transmitted in response to 1) receiving a new request to spin down the particular computing component, or 2) identifying a last time at which a last request for the particular computing component was received and determining that a difference between the last time and a current time exceeds a predefined threshold period of time.

14. The non-transitory computer-readable storage medium of claim 13 , wherein executing the instructions further cause the computing device to:

identify that the particular computing component was successfully deployed;

add an identifier associated with the particular computing component to a routing table;

receive a subsequent request comprising the identifier; and

transmit the subsequent request to the particular computing component for processing.

15. The non-transitory computer-readable storage medium of claim 13 , wherein transmitting the bootstrap request causes the deployment orchestrator to perform operations comprising:

identify one or more computing components from which the particular computing component depends; and

deploy the one or more computing components prior to deploying the particular computing component.

16. The non-transitory computer-readable storage medium of claim 15 , wherein identifying the one or more computing components from which the particular computing component is based at least in part on determining the one or more computing components from a directed acyclic graph that defines computing component dependencies.

17. The non-transitory computer-readable storage medium of claim 15 , wherein executing the instructions further cause the computing device to:

present, at the user interface, information identifying the one or more computing components from which the particular computing component requested depends;

receive, at the user interface, user input indicating acceptance of deploying the one or more computing components prior to deploying the particular computing component; and

transmit, by the computing device to the deployment orchestrator, respective bootstrap requests corresponding to the one or more computing components, wherein the respective bootstrap requests are transmitted prior to transmitting the bootstrap request corresponding to the particular computing component requested.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 6, 2021
From: ADOGLA, EDEN GRAIL; RUSHTON, MATTHEW VICTOR; ROITBURG, ILIYA; SINGH, BRIJESH
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 057720/0865 →
Continuity (1)
Related Publication 20230105901A1 · Apr 6, 2023