IP Library › Granted Patent US 10,747,568
Granted Patent B2
US 10,747,568 · App. 15/991,781 · Granted Aug 18, 2020

Systems and methods for managing a cloud computing environment

Inventor: Mohamed Ahmed (Redmond, WA)
Assignee: Magalix Corporation
G06F9/45558G06F9/5077G06F11/3433G06N3/0445G06N3/084H04L41/0806H04L41/0816H04L41/0896H04L41/147H04L43/0876G06F9/5027G06F9/5072G06F11/34G06F2009/4557G06F2009/45562G06F2009/45575G06F2009/45579G06F2009/45591G06F2201/815G06N3/006G06N3/126G06N7/005G06N20/00G06Q10/04H04L41/5009H04L43/08H04L67/10
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 10,747,568
App. No.
15/991,781
Filed
May 29, 2018
Granted
Aug 18, 2020
Kind
B2
Art Unit
2199
USPC
718/1
Abstract

The disclosed technology relates to cloud computing and, more specifically, to a cloud computing platform that manages cloud infrastructure to provide autonomous management of containers hosting applications. Based on prediction computations, the disclosed technology can scale up a VM or container, scale down a VM or container, shutdown a VM or container, change the location of a container, open a new container, or close a container.

Claims (61)

1. A system for managing cloud computing, the system comprising:

a processor; and

a memory storing instructions that when executed by the processor provide:

a cluster scanner configured to scan a cluster and receive scanned information associated with the cluster,

wherein the cluster includes a container running an application on a host virtual machine (VM);

a feature extractor configured to extract features from the cluster based on the scanned information,

wherein the extracted features include name, memory size, processing power, and input/output configuration information for the container running the application;

a performance data monitor configured to receive performance data associated with the container,

wherein the performance data relates to performance of memory utilization of the container, processing power utilization of the container, input/output utilization for the container, and a performance measure parameter of the container while running the application;

a resolution adjuster configured to adjust a first resolution of an interval of the performance data by calculating average data points from the performance data and downsampling the first resolution into a second resolution that is longer than the first resolution;

a forecaster configured to predict first and second forecast values of the container, based on the performance data, the first resolution, and the second resolution,

wherein the resolution adjuster is further configured to:

calculate a first confidence value, at the first resolution, and a second confidence value, at the second resolution, each of the first resolution and second resolution measuring a likelihood that each respective forecast value matches the performance data of the container running the application;

compare the second confidence value, at the downsampled second resolution, to a confidence threshold;

in response to the comparison, determining that the second confidence value reaches or exceeds the confidence threshold; and

providing the second confidence value as an optimal confidence value;

the forecaster further configured to determine corresponding container requirements, based on the optimal confidence value; and

a decision maker configured to automatically transmit control instructions to the cluster; based on the optimal confidence value retrieved from the forecaster and corresponding container requirements determined by the forecaster,

wherein the control instructions cause the container to scale up, scale down, shutdown, or migrate to another VM, and

wherein the control instructions are based on the forecast value received from the forecaster.

2. The system of claim 1 , wherein the resolution adjustor is further configured to downsample the performance data to a third and fourth resolution.

3. A non-transitory computer-readable medium storing instructions that, when executed by a processor, cause a machine to perform operations, the operations comprising steps to:

scan a cluster,

wherein the cluster includes a virtual machine (VM) and a container, and

wherein the VM is hosting the container and the container is running an application;

extract features from the cluster based on the scan,

wherein features include name, memory size, processing power, and input/output configuration information for the container running the application;

receive performance data from the cluster,

wherein the performance data relates to memory utilization, processor utilization, input/output utilization, and a performance measure parameter of the container while running the application;

adjust a first resolution of an interval for the performance data,

wherein adjusting the first resolution of the interval comprises adjusting the first resolution by calculating average data points from the performance data and downsampling the first resolution into a second resolution that is longer than the first resolution;

predict first and second forecast values of the container, based on the performance data, the first resolution, and the second resolution;

calculate a first confidence value, at the first resolution, and a second confidence value, at the second resolution, each of the first resolution and second resolution measuring a likelihood that each respective forecast value matches the performance data of the container running the application;

compare the second confidence value, at the downsampled second revolution, to a confidence threshold;

in response to the comparison, determining that the second confidence value reaches or exceeds the confidence threshold; and

providing the second confidence value as an optimal confidence value;

determine corresponding container requirements, based on the optimal confidence value; and

automatically transmit control instructions to the cluster based on the optimal confidence value retrieved from the forecaster and corresponding container requirements determined by the forecaster,

wherein the control instructions cause the container to scale up, scale down, shutdown, or migrate to another VM, and

wherein the control instructions are based on the forecast value received from the forecaster.

4. The non-transitory computer-readable medium of claim 3 , wherein the adjusting the first resolution further includes downsampling the performance data to a third or fourth resolution.

5. A method for managing cloud computing:

scanning a cluster,

wherein the cluster includes a VM and a container, and

wherein the VM is hosting the container and the container is running an application;

extracting features from the cluster,

wherein the features include name, memory size, processing power, and input/output configuration information for the container running the application;

receiving performance data from the cluster,

wherein the performance data relates to memory utilization, processor utilization, input/output utilization, and a performance measure parameter of the container while running the application;

adjusting a first resolution of an interval for the performance data,

wherein adjusting the first resolution of the interval adjusting the first resolution by calculating average data points from the performance data and downsampling the first resolution into a second resolution that is longer than the first resolution;

predicting first and second forecast values of the container, based on the performance data, the first resolution, and the second resolution of the performance data;

calculating a first confidence value, at the first revolution, and a second confidence value, at the second resolution, each of the first resolution and second revolution measuring a likelihood that each respective forecast value matches the performance data of the container running the application;

comparing the second confidence value, at the downsampled second resolution, to a confidence threshold;

in response to the comparison, determining that the second confidence value reaches or exceeds the confidence threshold;

providing the second confidence value as an optimal confidence value;

determining corresponding container requirements, based on the optimal confidence value; and

automatically transmitting control instructions to the cluster based on the optimal confidence value retrieved from the forecaster, and corresponding container requirements determined by the forecaster,

wherein the control instructions cause the container to scale up, scale down, shutdown, or migrate to another VM, and

wherein the control instructions are based on the forecast value received from the forecaster.

6. The method of claim 5 , wherein the adjusting the first resolution further includes downsampling the performance data to a third or fourth resolution.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2018
From: AHMED, MOHAMED
To: MAGALIX CORPORATION
Reel/Frame 045925/0385 →
Continuity (2)
Provisional Application 62512704 · May 30, 2017
Related Publication 20180349168A1 · Dec 6, 2018
Cited By (5)
US 12,242,602 US 12,271,490 US 12,609,985 US 12,683,989 US 12,693,881