wrench::VirtualizedClusterComputeService

class VirtualizedClusterComputeService : public wrench::CloudComputeService

A virtualized cluster-based compute service.

Public Functions

VirtualizedClusterComputeService(const std::string &hostname, std::vector<std::string> &execution_hosts, std::string scratch_space_mount_point, WRENCH_PROPERTY_COLLECTION_TYPE property_list = {}, WRENCH_MESSAGE_PAYLOADCOLLECTION_TYPE messagepayload_list = {})

Constructor.

Parameters
  • hostname – the name of the hostcreate on which to start the service

  • execution_hosts – the hosts available for running virtual machines

  • scratch_space_mount_point – the mount of of the scratch space of the cloud service (”” means none)

  • property_list – a property list ({} means “use all defaults”)

  • messagepayload_list – a message payload list ({} means “use all defaults”)

Throws

std::runtime_error

virtual void migrateVM(const std::string &vm_name, const std::string &dest_pm_hostname)

Synchronously migrate a VM to another physical host.

Parameters
  • vm_name – virtual machine name

  • dest_pm_hostname – the name of the destination physical machine host

Throws

std::invalid_argument

std::shared_ptr<BareMetalComputeService> startVM(const std::string &vm_name)

Start a VM.

Parameters

vm_name – the name of the VM

Throws
Returns

A BareMetalComputeService that runs on the VM

virtual std::shared_ptr<BareMetalComputeService> startVM(const std::string &vm_name, const std::string &pm_name)

Start a VM.

Parameters
  • vm_name – the name of the VM

  • pm_name – the physical host on which to start the VM

Throws
Returns

The compute service running on the VM