Abstract:
In general, embodiments of the present invention provide an approach for pre-provisioning cloud computing resources such as virtual machines (VMs) in order to achieve faster and more consistent provisioning times. Embodiments of the present invention describe an approach to generate a pre-provisioned pool of virtual machines that are utilized when one or more consumers start to initiate a large volume of requests (e.g., instantiate/populate multiple e-commerce ‘shopping carts’). In a typical embodiment, a selection of an operating system to be associated with a VM is received in a computer data structure. A provisioning of the VM will then be initiated based on the selection of the operating system. Thereafter, at least one selection of at least one software program to be associated with the VM will be received in the computer data structure. The provisioning of the VM can then be completed based on the at least one selection of the at least one software program in response to a provisioning request received in the computer data structure.
Abstract:
Embodiments of the present invention provide a set of algorithmic methods that can be used to select which partially and/or pre-provisioned virtual machines (VMs) should be used as a base platform to satisfy a new workload (e.g., provisioning) request received in a networked computing environment (e.g., a cloud computing environment). Specifically, when a workload request is received, a set (e.g., at last one) of software programs needed to process the workload request is identified. Then, a set of VMs is selected from a pool of pre-provisioned VMs having the set of software programs. In general, multiple methods and/or factors can be followed to select the set of VMs. Examples include a length of time to install the set of VMs, a probability of the set of VMs being in demand, and/or or a quantity of the set of VMs having the set of software programs. Once the set of VMs has been selected, the set of VMs may be installed, and the workload request can be processed using the set of software programs.
Abstract:
In general, embodiments of the present invention provide an approach for pre-provisioning cloud computing resources such as virtual machines (VMs) in order to achieve faster and more consistent provisioning times. Embodiments of the present invention describe an approach to generate a pre-provisioned pool of virtual machines that are utilized when one or more consumers start to initiate a large volume of requests (e.g., instantiate/populate multiple e-commerce ‘shopping carts’). In a typical embodiment, a selection of an operating system to be associated with a VM is received in a computer data structure. A provisioning of the VM will then be initiated based on the selection of the operating system. Thereafter, at least one selection of at least one software program to be associated with the VM will be received in the computer data structure. The provisioning of the VM can then be completed based on the at least one selection of the at least one software program in response to a provisioning request received in the computer data structure.
Abstract:
Embodiments of the present invention provide an approach for determining distributions of virtual machine (VM) patterns across pools of VM instances based upon historical data (e.g., to achieve faster provisioning times). In a typical embodiment, a total pool size for a pool of VM instances is determined (e.g., based on historical data). Then, a distribution of a set of VM instance patterns across the pool is determined (e.g., also based upon historical data). Once the distribution has been determined, the pool of VM instances may be provisioned according to the distribution. In one embodiment, the VM patterns may be evenly distributed across the pool. In another embodiment, the VM patterns may be distributed according to percentages with which the VM patterns were previously requested. In yet another embodiment, the VM patterns may be grouped into two or more groups that are associated with particular user/customer level(s) (e.g., privilege and/or permission level, a service level purchased and/or specified by the consumer, etc).
Abstract:
Embodiments of the present invention provide a set of algorithmic methods that can be used to select which partially and/or pre-provisioned virtual machines (VMs) should be used as a base platform to satisfy a new workload (e.g., provisioning) request received in a networked computing environment (e.g., a cloud computing environment). Specifically, when a workload request is received, a set (e.g., at last one) of software programs needed to process the workload request is identified. Then, a set of VMs is selected from a pool of pre-provisioned VMs having the set of software programs. In general, multiple methods and/or factors can be followed to select the set of VMs. Examples include a length of time to install the set of VMs, a probability of the set of VMs being in demand, and/or or a quantity of the set of VMs having the set of software programs. Once the set of VMs has been selected, the set of VMs may be installed, and the workload request can be processed using the set of software programs.
Abstract:
Embodiments of the present invention provide an approach for determining distributions of virtual machine (VM) patterns across pools of VM instances based upon historical data (e.g., to achieve faster provisioning times). In a typical embodiment, a total pool size for a pool of VM instances is determined (e.g., based on historical data). Then, a distribution of a set of VM instance patterns across the pool is determined (e.g., also based upon historical data). Once the distribution has been determined, the pool of VM instances may be provisioned according to the distribution. In one embodiment, the VM patterns may be evenly distributed across the pool. In another embodiment, the VM patterns may be distributed according to percentages with which the VM patterns were previously requested. In yet another embodiment, the VM patterns may be grouped into two or more groups that are associated with particular user/customer level(s) (e.g., privilege and/or permission level, a service level purchased and/or specified by the consumer, etc).