Node selection for a new application in a multi-tenant cloud hosting environment

US9842002B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9842002-B2
Application numberUS-201213461699-A
CountryUS
Kind codeB2
Filing dateMay 1, 2012
Priority dateMay 1, 2012
Publication dateDec 12, 2017
Grant dateDec 12, 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.

A mechanism for node selection for a new application in a multi-tenant cloud hosting environment is disclosed. A method of the invention includes receiving a request to host a software application on one of a plurality of nodes of a cloud computing infrastructure, each node configured to host multiple software applications. A set of available nodes from the plurality of nodes can be identified on which the software application can be hosted and the capacity of each identified node to host additional software applications can be determined. Then, a node is selected to host the software application using the determined capacities.

First claim

Opening claim text (preview).

What is claimed is: 1. A method, comprising: receiving, by a processing device, a first request from a first application owner to host a first Web application on a virtual machine of a plurality of virtual machines of a multi-tenant cloud computing infrastructure of the cloud provider; creating the first Web application for the first request on the virtual machine; receiving a second request from a second application owner to host a second Web application on one of the plurality of virtual machines in the multi-tenant cloud computing infrastructure, wherein the second application owner is different than the first application owner; determining that a first attribute of the first Web application being hosted for the first request on the virtual machine matches a second attribute of the second Web application in the second request, wherein the first attribute and the second attribute comprise an implementation related property of the first Web application and the second Web application, respectively; determining, responsive to the first attribute matching the second attribute, that the virtual machine hosting the first Web application for the first request has capacity to host the second Web application for the second request; creating the second Web application for the second request on the virtual machine hosting the first Web application; and preventing the second Web application from accessing the first Web application and preventing the first Web application from accessing the second Web application. 2. The method of claim 1 , wherein determining that the virtual machine hosting the first Web application for the first request has capacity comprises: comparing the capacity of the virtual machine that is hosting the first Web application to other virtual machines of the plurality of virtual machines; and determining the virtual machine that is hosting the first Web has the most capacity in view of the comparing. 3. The method of claim 1 , wherein creating the second Web application for the second request comprises: sending an instruction to the virtual machine hosting the first Web application to create a new software repository for the second Web application for the second request. 4. The method of claim 1 , wherein determining that the virtual machine hosting the first Web application for the first request has capacity comprises: determining a number of software repositories on the virtual machine; and determining a current virtual machine utilization using the number of software repositories. 5. The method of claim 4 , wherein determining the current virtual machine utilization comprises: weighing each software repository on the virtual machine in view of a source code language of a respective Web application hosted in each software repository. 6. The method of claim 1 , wherein determining that the virtual machine hosting the first Web application for the first request has capacity comprises: determining a number of active applications on the virtual machine that are currently executing; and determining a current virtual machine utilization using the number of active applications. 7. The method of claim 6 , wherein determining the current virtual machine utilization comprises: weighing each active application on the virtual machine in view of an expected memory footprint of each active application. 8. The method of claim 6 , wherein determining the current virtual machine utilization comprises: weighing each active application on the virtual machine in view of an indicated size of each active application. 9. The method of claim 6 , further comprising: determining a maximum virtual machine utilization for the virtual machine hosting the first Web application for the first request; and comparing the maximum virtual machine utilization to the current virtual machine utilization of the virtual machine. 10. A system, comprising: a memory; a communications interface to communicate with a plurality of virtual machines of a multi-tenant cloud computing infrastructure of cloud provider; and a processing device operably coupled to the memory and the communications interface to: receive a first request from a first application owner to host a first Web application on a virtual machine of the plurality of virtual machines of the multi-tenant cloud computing infrastructure; create the first Web application for the first request on the virtual machine; receive a second request from a second application owner to host a second Web application on one of the plurality of virtual machines in the multi-tenant cloud computing infrastructure, wherein the second application owner is different than the first application owner; determine that a first attribute of the first Web application being hosted for the first request on the virtual machine matches a second attribute of the second Web application in the second request, wherein the first attribute and the second attribute comprise an implementation related property of the first Web application and the second Web application, respectively; determine, responsive to a match of the first attribute to the second attribute, that the virtual machine hosting the first Web application for the first request has capacity to host the second Web application for the second request; create the second Web application for the second request on the virtual machine hosting the first Web application; and prevent the second Web application from accessing the first Web application and prevent the first Web application from accessing the second Web application. 11. The system of claim 10 , wherein to determine that the virtual machine hosting the first Web application for the first request has capacity comprises the processing device to: compare the capacity of the virtual machine that is hosting the first Web application to other virtual machines of the plurality of virtual machines; and determine the virtual machine that is hosting the first Web application has the most capacity in view of the comparing. 12. The system of claim 10 , wherein to create the second Web application for the second request comprises the processing device to: send an instruction to the virtual machine hosting the first Web application to create a new software repository for the second Web application for the second request. 13. The system of claim 10 , wherein to determine that the virtual machine hosting the first Web application for the first request has comprises the processing device to: determine a number of software repositories on the virtual machine; and determine a current virtual machine utilization using the number of software repositories. 14. The system of claim 13 , wherein to determine the current virtual machine utilization comprises the processing device to: weigh each software repository on the virtual machine in view of a source code language of a respective Web application hosted in each software repository. 15. The system of claim 10 , wherein to determine that the virtual machine hosting the first Web application for the first request has comprises the processing device to: determine a number of active applications on the virtual machine that are currently executing; and determine a current virtual machine utilization using the number of active applications. 16. The system of claim 15 , wherein to determine the current virtual machine utilization comprises the processing device to: weigh each active application on the virtual machine in view of an expected memory footprint of each active application. 17.

Assignees

Inventors

Classifications

  • by executing in a restricted environment, e.g. sandbox or secure virtual machine · CPC title

  • Partitioning or combining of resources · CPC title

  • G06F9/505Primary

    considering the load · CPC title

  • Grid computing · 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 US9842002B2 cover?
A mechanism for node selection for a new application in a multi-tenant cloud hosting environment is disclosed. A method of the invention includes receiving a request to host a software application on one of a plurality of nodes of a cloud computing infrastructure, each node configured to host multiple software applications. A set of available nodes from the plurality of nodes can be identified …
Who is the assignee on this patent?
Mcgrath Michael P, Hicks Matthew, Mcpherson Daniel Charles, and 1 more
What technology area does this patent fall under?
Primary CPC classification G06F9/505. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 12 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 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).