IP Library Granted Patent US 12,206,729
Granted Patent B2
US 12,206,729 · App. 18/132,280 · Granted Jan 21, 2025

Platform-agnostic compute instance launches

Inventors: Jonathan Luke Herman (Seattle, WA); Art Plata (Kenmore, WA); Joshua Potter (Tarpon Springs, FL); John Matthew Mullins (Lexington, KY); Nathan Cook (Lexington, KY); Nathan Turner (Lexington, KY); Tianyi Wei (Bothell, WA); Amit Vasudevan (Seattle, WA); Haifeng Ren (Snoqualmie, WA); Harsh Verma (Seattle, WA); Jiafeng Yang (Seattle, WA); John David Martinez (Lexington, KY); Daniel Stuart Goldfein (Seattle, WA); Mahima Tomer (Noida, IN)
Assignee: Oracle International Corporation
H04L67/10G06F9/4401
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,206,729
App. No.
18/132,280
Granted
Jan 21, 2025
Kind
B2
Abstract

A technique may include receiving, by a management service a plurality of instance configurations from a client device. The technique may then include receiving, by the management service, information identifying a launch request for a compute instance. The technique may include determining, by the management service, one or more candidate shapes for the compute instance based at least in part on the plurality of instance configurations. The technique may include selecting, by the management service and from the one or more candidate shapes, a launch shape for the compute instance and launching the compute instance using the launch shape. The technique may then include providing, the client device access to the compute instance, launched based on the launch shape.

Claims (54)

1. A method, comprising:

receiving, by a management service and from a client device, a plurality of instance configurations;

receiving, by the management service and from the client device, information identifying a launch request for a compute instance, wherein the information identifying the launch request does not specify an instance configuration of the plurality of instance configurations or a specific configuration attribute;

responsive to the launch request: determining, by the management service, one or more candidate shapes for the compute instance based at least in part on the plurality of instance configurations;

selecting, by the management service and from the one or more candidate shapes, a launch shape for the compute instance;

launching, by the management service, the compute instance using the launch shape; and

providing, by the management service and to the client device, access to the compute instance, launched based, at least in part, on the launch shape.

2. The method of claim 1 , further comprising:

storing, by the management service and in a data store, an association between the launch shape and the information identifying the launch request;

accounting, by the management service, for a launch of the compute instance based at least in part on the launch shape; and

subsequent to accounting for the launch of the compute instance based on the launch shape:

retrieving, by the management service and from the data store, the launch shape based on the stored association between the launch shape and the information identifying the launch request, wherein launching the compute instance using the launch shape is based on the launch shape retrieved from the data store.

3. The method of claim 2 , wherein the information identifying the launch request is a launch identifier, the launch identifier stored by the management service for later use.

4. The method of claim 1 , further comprising determining whether the launch request references a single instance configuration.

5. The method of claim 1 , wherein the launch request comprises one or more image attributes based at least in part on the one or more candidate shapes and a workload, the image attributes used to select an image to be launched on the compute instance.

6. The method of claim 1 , wherein selecting the launch shape is based, at least in part, on an availability associated with a shape.

7. The method of claim 6 , wherein the availability associated with the shape comprises a total usage of compute instances associated with the shape, monitored by the management service.

8. The method of claim 6 , wherein the availability associated with the shape comprises a fragmentation associated with the shape.

9. The method of claim 1 , wherein the information identifying a launch request comprises a reference to an array, the array references the plurality of instance configurations, and the candidate shapes are determined based on the plurality of instance configurations.

10. The method of claim 1 , wherein determining the one or more candidate shapes further comprises:

accessing, by the management service, one or more prestored instance configurations associated with the client device and generated prior to receiving the launch request;

determining, by the management service, one or more shapes indicated by each of the one or more prestored instance configurations; and

selecting, by the management service, the one or more shapes indicated by each of the one or more prestored instance configurations as the one or more candidate shapes.

11. A system comprising:

one or more processors;

one or more non-transitory computer-readable media comprising instructions that, when executed by the one or more processors, cause the system to perform operations to:

receive, by a management service and from a client device, a plurality of instance configurations;

receive, by the management service and from the client device, information identifying a launch request for a compute instance, wherein the information identifying the launch request does not specify an instance configuration of the plurality of instance configurations or a specific configuration attribute;

responsive to the launch request: determine, by the management service, one or more candidate shapes for the compute instance based, at least in part, on the plurality of instance configurations;

select, by the management service and from the one or more candidate shapes, a launch shape for the compute instance;

launch, by the management service, the compute instance using the launch shape; and

provide, by the management service and to the client device, access to the compute instance, launched based, at least in part, on the launch shape.

12. The system of claim 11 , wherein the instructions further cause the system to perform operations to:

store, by the management service and in a data store, an association between the launch shape and the information identifying the launch request;

account, by the management service, for a launch of the compute instance based at least in part on the launch shape; and

subsequent to accounting for the launch of the compute instance based on the launch shape: retrieve, by the management service and from the data store, the launch shape based on the stored association between the launch shape and the information identifying the launch request, wherein launching the compute instance using the launch shape is based on the launch shape retrieved from the data store.

13. The system of claim 12 , wherein the information identifying the launch request is a launch identifier, the launch identifier stored by the management service for later use.

14. The system of claim 11 , wherein the instructions further cause the system to perform operations to determine whether the launch request references a single instance.

15. The system of claim 14 , wherein the launch request comprises one or more image attributes, the image attributes used to select an image to be launched on the compute instance.

16. One or more non-transitory computer-readable storage media storing a set of instructions that, when executed by one or more processors of a computer system, cause the computer system to perform operations comprising:

receiving, by a management service, and from a client device, a plurality of instance configurations;

receiving, by the management service and from the client device, information identifying a launch request for a compute instance, wherein the information identifying the launch request does not specify an instance configuration of the plurality of instance configurations or a specific configuration attribute;

responsive to the launch request: determining, by the management service, one or more candidate shapes for the compute instance based at least in part on the plurality of instance configurations;

selecting, by the management service and from the one or more candidate shapes, a launch shape for the compute instance;

launching, by the management service, the compute instance using the launch shape; and

providing, by the management service and to the client device, access to the compute instance, launched based at least in part on the launch shape.

17. The one or more non-transitory computer-readable storage media of claim 16 , wherein the instructions cause the system to perform operations further comprising:

storing, by the management service and in a data store, an association between the launch shape and the information identifying the launch request;

accounting, by the management service, for a launch of the compute instance based at least in part on the launch shape; and

subsequent to accounting for the launch of the compute instance based on the launch shape:

retrieving, by the management service and from the data store, the launch shape based on the stored association between the launch shape and the information identifying the launch request, wherein launching the compute instance using the launch shape is based on the launch shape retrieved from the data store.

18. The one or more non-transitory computer-readable storage media of claim 17 , wherein the information identifying the launch request is a launch identifier, the launch identifier stored by the management service for later use.

19. The one or more non-transitory computer-readable storage media of claim 16 , wherein the plurality of instance configurations comprise at least one of an architecture or a number of cores.

20. The one or more non-transitory computer-readable storage media of claim 16 , wherein selecting the launch shape is based, at least in part, on an availability of a shape.

Assignments (2)
CORRECTIVE ASSIGNMENT TO CORRECT THE 9TH INVENTORS FIRST NAME FROM HAIGENG TO HAIFENG PREVIOUSLY RECORDED AT REEL: 063283 FRAME: 0453. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Apr 12, 2023
From: HERMAN, JONATHAN LUKE; PLATA, ART; POTTER, JOSHUA; MULLINS, JOHN MATTHEW; COOK, NATHAN; TURNER, NATHAN; WEI, TIANYI; VASUDEVAN, AMIT; REN, HAIFENG; YANG, JIAFENG; MARTINEZ, JOHN DAVID; GOLDFEIN, DANIEL STUART; TOMER, MAHIMA; VERMA, HARSH
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 066253/0579 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 10, 2023
From: HERMAN, JONATHAN LUKE; PLATA, ART; POTTER, JOSHUA; MULLINS, JOHN MATTHEW; COOK, NATHAN; TURNER, NATHAN; WEI, TIANYI; VASUDEVAN, AMIT; REN, HAIGENG; YANG, JIAFENG; MARTINEZ, JOHN DAVID; GOLDFEIN, DANIEL STUART; TOMER, MAHIMA; VERMA, HARSH
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 063283/0453 →
Continuity (1)
Related Publication 20240340336A1 · Oct 10, 2024
References Cited (2)
US 10979534B1 · Parulkar · 2021 [cited by examiner]
US 20140365626A1 · Radhakrishnan · 2014 [cited by examiner]