Systems and methods for adaptive application provisioning

US9769085B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9769085-B2
Application numberUS-201313887001-A
CountryUS
Kind codeB2
Filing dateMay 3, 2013
Priority dateMay 4, 2012
Publication dateSep 19, 2017
Grant dateSep 19, 2017

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.

The present application is directed towards systems and methods for adaptive application provisioning for cloud services. An appliance deployed in a network as a gateway may be able to transparently monitor application activity in a cloud computing environment provided by one or more servers, including servers executed by virtual machines, bare-metal or non-virtual servers, or other computing devices. In some embodiments, the appliance may monitor one or more network metrics, including bandwidth usage, latency, congestion, or other issues; and/or may monitor application health or server or virtual machine statistics, including memory and processor usage, bandwidth usage, latency, or other metrics. Responsive to one or more metrics exceeding a threshold, the appliance may automatically provision or start, or deprovision or shut down, one or more virtual or physical machines from a cloud service provider, and may provide configuration information to the provisioned or started machines as needed.

First claim

Opening claim text (preview).

What is claimed: 1. A method for automatically scaling a number of instances of an application provisioned via a cloud service provider, the method comprising: (a) identifying, by a device intermediary to a plurality of clients and a cloud service provider executing a plurality of instances of an application provisioned by the device via the cloud service provider, one or more policies for scaling a number of instances of the application via the cloud service provider, a policy of the one or more policies identifying a predetermined number of instances of the application via the cloud service provider to scale by at least one of provisioning or deprovisioning the predetermined number of instances of the application, and one or more metrics and a threshold for each of the one or more metrics and a predetermined time period for exceeding the threshold; (b) monitoring, by the device, each of the one or more metrics for the plurality of instances of the application executing via the cloud service provider; (c) determining, by the device, that each metric of the one or more metrics exceeds each metric's threshold for the predetermined time period identified by the policy; (d) transmitting, by the device automatically responsive to the determination, a request to the cloud service provider to one of provision or deprovision the predetermined number of instances of the application via the cloud service provider in accordance with the policy; and (e) adjusting, by one or more virtual servers of the device responsive to one of the provision or deprovision of the one or more instances of the application via the cloud service provider, load balancing requests to the application from the plurality of clients across a current number of instances of the application on the cloud service provider. 2. The method of claim 1 , wherein step (a) further comprises establishing, by the device, one or more instances of the plurality of instances of the application as one of a virtual or physical machine executing on one or more servers of the cloud service provider. 3. The method of claim 1 , wherein policy specifies to one of scale up or scale down the predetermined number of instances of the application responsive to each metric of the one or more metrics exceeding each metric's threshold. 4. The method of claim 1 , wherein step (a) further comprising identifying, by the device, a time interval that identifies a duration of time which the policy is not evaluated once a provision or deprovision request is made to the cloud service provider. 5. The method of claim 1 , wherein step (b) further comprises monitoring, by the device, each metric of the one or more metrics at time intervals specified by the policy. 6. The method of claim 1 , wherein step (b) further comprises monitoring, by the device, the one or more metrics identifying a load across the plurality of instances of the application. 7. The method of claim 1 , wherein step (c) further comprises determining, by the device, that each of the one or more metric exceeds each metric's threshold for each evaluation during the predetermined time period specified by the policy. 8. The method of claim 1 , wherein step (d) further comprises transmitting, by the device, the request to provision the instance of the application via the cloud service provider and the device receiving one or more internet protocol (IP) addresses of one or more machines executing the requested one or more instances of the application. 9. The method of claim 1 , wherein step (d) further comprises providing, by the device to the cloud service provider configuration information to provision the requested instance of the application. 10. The method of claim 1 , wherein step (d) further comprising transmitting, by the device, the request to the cloud service provider in accordance with a cloud profile configured on the device, the cloud profile identifying one or more parameters for communicating with the cloud service provide and identifying the cloud service provider via at least one of a domain name, an internet protocol address or a port number. 11. A system for automatically scaling a number of instances of an application provisioned via a cloud service provider, the system comprising: a device comprising a processor, coupled to memory, and intermediary to a plurality of clients and a cloud service provider executing a plurality of instances of an application provisioned by the device via the cloud service provider; a policy engine comprising one or more policies for scaling a number of instances of the application via the cloud service provider, a policy of the one or more policies identifying a predetermined number of instances of the application on the cloud service provider to scale by at least one of provisioning or deprovisioning the predetermined number of instances of the application and one or more metrics and a threshold for each of the one or more metrics and a predetermined time period for exceeding the threshold; a monitor of the device configured to monitor each of the one or more metrics for the plurality of instances of the application executing via the cloud service provider; wherein the device is configured to determine that each metric of the one or more metrics exceeds each metric's threshold for the predetermined time period identified by the policy and to transmit automatically responsive to the determination a request to the cloud service provider to one of provision or deprovision the predetermined number of the application via the cloud service provider in accordance with the policy; and wherein one or more virtual servers of the device are configured to adjust to load balancing requests to the application from the plurality of clients across a current number of instances of the application executing on the cloud service provider responsive to one of the provision or deprovision of the one or more instances of the application. 12. The system of claim 11 , wherein the device is configured to establish one or more instances of the plurality of instances of the application as one of a virtual or physical machine executing on one or more servers of the cloud service provider. 13. The system of claim 11 , wherein the policy specifies to one of scale up or scale down the predetermined number of instances of the application responsive to each metric of the one or more metrics exceeding each metric's threshold. 14. The system of claim 11 , wherein the policy engine comprises a time interval that identifies a duration of time which the policy is not evaluated once a provision or deprovision request is made to the cloud service provider. 15. The system of claim 11 , wherein the monitor is configured to monitor each metric of the one or more metrics at time intervals specified by the policy. 16. The system of claim 11 , wherein the monitor is configured to monitor the one or more metrics identifying a load across the plurality of instances of the application. 17. The system of claim 11 , wherein the device is configured to determine that that each of the one or more metric exceeds each metric's threshold for each evaluation during the predetermined time period specified by the policy. 18. The system of claim 11 , wherein the device is configured to determine he request to provision the instance of the application via the cloud service provider and to receive one or more internet protocol (IP) addresses of one or more machines executing the requested one or more instances of the application. 19. The system of claim 11 , wherein t

Assignees

Inventors

Classifications

  • H04L47/80Primary

    Actions related to the user profile or the type of traffic · CPC title

  • Hybrid transport · CPC title

  • for planning or managing the needed capacity · CPC title

  • where the computing system is a virtual computing platform, e.g. logically partitioned systems (virtual machines G06F9/45533; logical partitioning of resources G06F9/5077) · CPC title

  • where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems (multiprogramming arrangements G06F9/46; allocation of resources G06F9/50) · 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 US9769085B2 cover?
The present application is directed towards systems and methods for adaptive application provisioning for cloud services. An appliance deployed in a network as a gateway may be able to transparently monitor application activity in a cloud computing environment provided by one or more servers, including servers executed by virtual machines, bare-metal or non-virtual servers, or other computing d…
Who is the assignee on this patent?
Citrix Systems Inc
What technology area does this patent fall under?
Primary CPC classification H04L47/80. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Sep 19 2017 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).