|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
E
- The type of the system that will manage the VMs.F
- The kind of the managed capacities behind the VMManager.public interface VMManager<E,F>
This interface intends to provide a generic overview of the VM management functionalities in a system.
Nested Class Summary | |
---|---|
static interface |
VMManager.CapacityChangeEvent<F>
|
static class |
VMManager.NoSuchVMException
Receiving this kind of exception shows that the system does not recognize the VM it should operate on. |
static class |
VMManager.VMManagementException
This is a generic class to represent all kinds of problems that could occur while managing VMs on the system. |
Method Summary | |
---|---|
ResourceConstraints |
getCapacities()
|
Collection<VirtualMachine> |
listVMs()
Provides an overview on the VMs currently in the system |
void |
migrateVM(VirtualMachine vm,
E target)
Migrates a VM from the current system to another. |
void |
reallocateResources(VirtualMachine vm,
ResourceConstraints newresources)
Allows fine-grained resource utilization setup of the particular VM after it was allocated on the system. |
VirtualMachine[] |
requestVM(VirtualAppliance va,
ResourceConstraints rc,
Repository vaSource,
int count,
HashMap<String,Object> schedulingConstraints)
Creates a new VM in the system and immediately returns with a new VM object. |
void |
subscribeToCapacityChanges(VMManager.CapacityChangeEvent<F> e)
|
void |
terminateVM(VirtualMachine vm,
boolean killTasks)
Terminates a VM in the system. |
void |
unsubscribeFromCapacityChanges(VMManager.CapacityChangeEvent<F> e)
|
Method Detail |
---|
VirtualMachine[] requestVM(VirtualAppliance va, ResourceConstraints rc, Repository vaSource, int count, HashMap<String,Object> schedulingConstraints) throws VMManager.VMManagementException, NetworkNode.NetworkException
va
- the kind of VM to be created
VMManager.VMManagementException
- if the request cannot be fulfilled for some reason
NetworkNode.NetworkException
void terminateVM(VirtualMachine vm, boolean killTasks) throws VMManager.NoSuchVMException, VMManager.VMManagementException
vm
- the VM to be terminated
VMManager.NoSuchVMException
- if the request was issued for a VM unknown in the system
VMManager.VMManagementException
- if the request cannot be fulfilled for some reasonvoid migrateVM(VirtualMachine vm, E target) throws VMManager.NoSuchVMException, VMManager.VMManagementException, NetworkNode.NetworkException
vm
- the VM to be relocatedtarget
- the target system that should host the VM in the future
VMManager.NoSuchVMException
- if the request was issued for a VM unknown in the system
VMManager.VMManagementException
- if the request cannot be fulfilled for some reason
NetworkNode.NetworkException
void reallocateResources(VirtualMachine vm, ResourceConstraints newresources) throws VMManager.NoSuchVMException, VMManager.VMManagementException
vm
- The VM to be adjustednewresources
- The new amount of resources needed (this could not only raise
the available resources of the VM but also decrease them
VMManager.NoSuchVMException
- if the request was issued for a VM unknown in the system
VMManager.VMManagementException
- if the request cannot be fulfilled for some reasonCollection<VirtualMachine> listVMs()
ResourceConstraints getCapacities()
void subscribeToCapacityChanges(VMManager.CapacityChangeEvent<F> e)
void unsubscribeFromCapacityChanges(VMManager.CapacityChangeEvent<F> e)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |