Automatic scaling of at least one user application to external clouds

US9871745B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9871745-B2
Application numberUS-201414539543-A
CountryUS
Kind codeB2
Filing dateNov 12, 2014
Priority dateNov 12, 2014
Publication dateJan 16, 2018
Grant dateJan 16, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Embodiments of the invention provide a method, a system and a computer program product configured to automatically auto-scale a user compute instance to multiple cloud providers while considering a multiplicity of user requirements. The method, executed on a digital data processor, includes obtaining information, via a user interface, that is descriptive of user cloud computing related preferences, including a user cloud computing budgetary preference. The method further includes sensing properties of a plurality of clouds and making decisions, based at least on the obtained information and on the sensed properties, of when to scale up or scale down the user cloud instance, of selecting one of the plurality of clouds as where to scale the user cloud instance, and determining which resource or resources of the selected cloud to add or remove from the selected cloud. The method further includes automatically executing the decisions on the selected cloud.

First claim

Opening claim text (preview).

What is claimed is: 1. A method executed at least in part by a digital data processor, comprising: obtaining information, via a user interface, that is descriptive of user cloud computing related preferences, wherein the user cloud computing related preferences comprises at least a user cloud computing budgetary preference, a location preference, a performance preference, and a reliability level preference, and wherein obtaining the information further comprises obtaining indications on whether each of the user cloud computing related preferences is either required or preferred; sensing properties of a plurality of clouds including at least reliability, cost, security, location, performance and infrastructure properties, wherein the sensed cost and infrastructure properties are obtained directly from a cloud provider via an application program interface of the cloud provider, and wherein the reliability, security, and performance properties are obtained at least in part based on one or more historical records of application deployments in each of the plurality of clouds; making decisions, based at least on the obtained information and on the sensed properties of the plurality of clouds, of when to scale up or scale down a user cloud instance, of selecting one of the plurality of clouds as where to scale the user cloud instance, and determining which resource or resources of the selected cloud to add or remove from the selected cloud; where in response to detecting a presence of a trigger to perform a user cloud instance scale up operation, solving a first optimization problem to select where to scale up the user cloud instance by selecting one of the plurality of clouds to add the user cloud instance to and then solving a second optimization problem to select which resource or resources in the selected cloud to add the user cloud instance to, where the selected resource or resources comprise at least one of memory, communication adapters and operating system, wherein selecting one of the plurality of clouds to add comprises generating a requirement satisfaction vector for each of the user cloud computing related preferences comprising binary values indicating whether each of the plurality of clouds satisfy a given one of the user cloud computing related preferences, and selecting the cloud based on both the requirement satisfaction vectors and the obtained indications on whether each of the user cloud computing related preferences is either required or preferred; and automatically executing the decisions on the selected cloud. 2. The method of claim 1 , where the user's cloud instance is being executed on a private cloud when the decisions are executed, and where the selected cloud is a public cloud. 3. The method of claim 1 , where the obtained information descriptive of user cloud computing related preferences comprises a latency preference, in addition to the user cloud computing budgetary preference, location preference reliability level preference, and performance preference. 4. The method of claim 1 , where the obtained information is further descriptive of a user objective preference as to a certain cloud provider or cloud providers. 5. The method of claim 1 , where the step of making decisions is automatically triggered by at least a change in a user application instance so as to require more cloud resources or less cloud resources. 6. The method of claim 1 , comprising in response to the presence of the trigger initially determining whether the trigger is to scale up or scale down the user cloud instance, where in response to determining that the trigger is to scale up the user cloud instance, determining if there exists a user-defined objective preference and, if the objective preference is determined to exist, then solving the first optimization problem and the second optimization problem. 7. The method of claim 6 , where if it is determined that the user-defined objective preference does not exist, the method further comprises attempting to find a feasible solution by selecting a suitable cloud to add the user cloud instance to and selecting a suitable resource in the selected cloud for adding the user cloud instance to; and if no feasible solution can be found for selecting either a suitable cloud or a suitable resource in a selected cloud, informing the user. 8. The method of claim 1 , comprising in response to the presence of the trigger initially determining whether the trigger is to scale up or scale down the user cloud instance, where in response to determining that the trigger is to scale down the user cloud instance, determining if there exists a user-defined objective preference and, if the objective preference is determined to exist, then solving a first optimization problem to select where to scale down the user cloud instance by selecting one of the plurality of clouds to remove the user cloud instance from and then solving a second optimization problem to select which resource or resources in the selected cloud to remove the user cloud instance from. 9. The method of claim 8 , where if it is determined that the user-defined objective preference does not exist, the method further comprises attempting to find a feasible solution by selecting a suitable cloud to remove the user cloud instance from and selecting a suitable resource in the selected cloud to remove the user cloud instance from; and if no feasible solution can be found for selecting either a suitable cloud or a suitable resource in a selected cloud, informing the user. 10. A method executed at least in part by a digital data processor, comprising: obtaining information, via a user interface, that is descriptive of user cloud computing related preferences, wherein the user cloud computing related preferences comprises at least a user cloud computing budgetary preference, a location preference, a performance preference, and a reliability level preference, and wherein obtaining the information further comprises obtaining indications on whether each of the user cloud computing related preferences is either required or preferred; sensing properties of a plurality of clouds including at least reliability, cost, security, location, performance, and infrastructure properties, wherein the sensed cost and infrastructure properties are obtained directly from a cloud provider via an application program interface of the cloud provider, and wherein the reliability, security, and performance properties are obtained at least in part based on one or more historical records of application deployments in each of the plurality of clouds; making decisions, based at least on the obtained information and on the sensed properties of the plurality of clouds, of when to scale up or scale down a user cloud instance, of selecting one of the plurality of clouds as where to scale the user cloud instance, and determining which resource or resources of the selected cloud to add or remove from the selected cloud, wherein selecting one of the plurality of clouds to add comprises generating a requirement satisfaction vector for each of the user cloud computing related preferences comprising binary values indicating whether each of the plurality of clouds satisfy a given one of the user cloud computing related preferences, and selecting the cloud based on both the requirement satisfaction vectors and the obtained indications on whether each of the user cloud computing related preferences is either required or preferred; and automatically executing the decisions on the selected cloud; where in response to the presence of a trigger that is automatically generated by at least a change in a user application instance so as to require more cloud resources or less cloud resources, t

Assignees

Inventors

Classifications

  • G06Q10/063Primary

    Operations research, analysis or management · CPC title

  • Electricity · mapped topic

  • in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46) · CPC title

  • H04L47/783Primary

    Distributed allocation of resources, e.g. bandwidth brokers · CPC title

  • Discovery or management thereof, e.g. service location protocol [SLP] or web services · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9871745B2 cover?
Embodiments of the invention provide a method, a system and a computer program product configured to automatically auto-scale a user compute instance to multiple cloud providers while considering a multiplicity of user requirements. The method, executed on a digital data processor, includes obtaining information, via a user interface, that is descriptive of user cloud computing related preferen…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06Q10/063. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 16 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 7 related publications on this page (citations in our corpus or others sharing the same primary CPC).