Vm#

class Vm(name=None, description=None, create_time=None, update_time=None, source=None, num_sockets=None, num_cores_per_socket=1, num_threads_per_core=1, num_numa_nodes=None, memory_size_bytes=None, is_vcpu_hard_pinning_enabled=None, is_cpu_passthrough_enabled=None, enabled_cpu_features=None, is_memory_overcommit_enabled=None, is_gpu_console_enabled=None, generation_uuid=None, bios_uuid=None, categories=None, ownership_info=None, host=None, cluster=None, availability_zone=None, guest_customization=None, guest_tools=None, hardware_clock_timezone='UTC', is_branding_enabled=True, boot_config=None, is_vga_console_enabled=True, machine_type=None, power_state=None, vtpm_config=None, is_agent_vm=None, is_live_migrate_capable=None, is_cross_cluster_migration_in_progress=None, storage_config=None, disks=None, cd_roms=None, nics=None, gpus=None, serial_ports=None, protection_type=None, protection_policy_state=None, recovery_plan_states=None, ext_id=None, links=None, tenant_id=None, *args, **kwargs)[source]#

Bases: ExternalizableAbstractModel

VM configuration.

Parameters:
  • name – (name) VM name.

  • description – (description) VM description.

  • create_time – (create_time) VM creation time.

  • update_time – (update_time) VM last updated time.

  • source – (source)

  • num_sockets – (num_sockets) Number of vCPU sockets.

  • num_cores_per_socket – (num_cores_per_socket) Number of cores per socket. (Default 1)

  • num_threads_per_core – (num_threads_per_core) Number of threads per core. (Default 1)

  • num_numa_nodes – (num_numa_nodes) Number of NUMA nodes. 0 means NUMA is disabled.

  • memory_size_bytes – (memory_size_bytes) Memory size in bytes.

  • is_vcpu_hard_pinning_enabled – (is_vcpu_hard_pinning_enabled) Indicates whether the vCPUs should be hard pinned to specific pCPUs or not.

  • is_cpu_passthrough_enabled – (is_cpu_passthrough_enabled) Indicates whether to passthrough the host CPU features to the guest or not. Enabling this will make VM incapable of live migration.

  • enabled_cpu_features – (enabled_cpu_features) The list of additional CPU features to be enabled. HardwareVirtualization: Indicates whether hardware assisted virtualization should be enabled for the Guest OS or not. Once enabled, the Guest OS can deploy a nested hypervisor.

  • is_memory_overcommit_enabled – (is_memory_overcommit_enabled) Indicates whether the memory overcommit feature should be enabled for the VM or not. If enabled, parts of the VM memory may reside outside of the hypervisor physical memory. Once enabled, it should be expected that the VM may suffer performance degradation.

  • is_gpu_console_enabled – (is_gpu_console_enabled) Indicates whether the vGPU console is enabled or not.

  • generation_uuid – (generation_uuid) Generation UUID of the VM. It should be of type UUID.

  • bios_uuid – (bios_uuid) BIOS UUID of the VM. It should be of type UUID.

  • categories – (categories) Categories for the VM.

  • ownership_info – (ownership_info)

  • host – (host)

  • cluster – (cluster)

  • availability_zone – (availability_zone)

  • guest_customization – (guest_customization)

  • guest_tools – (guest_tools)

  • hardware_clock_timezone – (hardware_clock_timezone) VM hardware clock timezone in IANA TZDB format (America/Los_Angeles). (Default ‘UTC’)

  • is_branding_enabled – (is_branding_enabled) Indicates whether to remove AHV branding from VM firmware tables or not. (Default True)

  • boot_config – (boot_config) Indicates the order of device types in which the VM should try to boot from. If the boot device order is not provided the system will decide an appropriate boot device order.

  • is_vga_console_enabled – (is_vga_console_enabled) Indicates whether the VGA console should be disabled or not. (Default True)

  • machine_type – (machine_type)

  • power_state – (power_state)

  • vtpm_config – (vtpm_config)

  • is_agent_vm – (is_agent_vm) Indicates whether the VM is an agent VM or not. When their host enters maintenance mode, once the normal VMs are evacuated, the agent VMs are powered off. When the host is restored, agent VMs are powered on before the normal VMs are restored. In other words, agent VMs cannot be HA-protected or live migrated.

  • is_live_migrate_capable – (is_live_migrate_capable) Indicates whether the VM is capable of live migrating to another host or not, based on its configuration.

  • is_cross_cluster_migration_in_progress – (is_cross_cluster_migration_in_progress) Indicates whether the VM is currently undergoing cross cluster migration.

  • storage_config – (storage_config)

  • disks – (disks) Disks attached to the VM.

  • cd_roms – (cd_roms) CD-ROMs attached to the VM.

  • nics – (nics) NICs attached to the VM.

  • gpus – (gpus) GPUs attached to the VM.

  • serial_ports – (serial_ports) Serial ports configured on the VM.

  • protection_type – (protection_type)

  • protection_policy_state – (protection_policy_state)

  • recovery_plan_states – (recovery_plan_states) Status of the recovery plans associated with the VM.

property availability_zone#
Type:

AvailabilityZoneReference

property bios_uuid#

BIOS UUID of the VM. It should be of type UUID.

Type:

str

property boot_config#

Indicates the order of device types in which the VM should try to boot from. If the boot device order is not provided the system will decide an appropriate boot device order.

Type:

LegacyBoot | UefiBoot

property categories#

Categories for the VM.

Type:

list[ CategoryReference ]

property cd_roms#

CD-ROMs attached to the VM.

Type:

list[ CdRom ]

property cluster#
Type:

ClusterReference

property create_time#

VM creation time.

Type:

datetime

property description#

VM description.

Type:

str

property disks#

Disks attached to the VM.

Type:

list[ Disk ]

property enabled_cpu_features#

The list of additional CPU features to be enabled. HardwareVirtualization: Indicates whether hardware assisted virtualization should be enabled for the Guest OS or not. Once enabled, the Guest OS can deploy a nested hypervisor.

Type:

list[ CpuFeature ]

property generation_uuid#

Generation UUID of the VM. It should be of type UUID.

Type:

str

property gpus#

GPUs attached to the VM.

Type:

list[ Gpu ]

property guest_customization#
Type:

GuestCustomizationParams

property guest_tools#
Type:

GuestTools

property hardware_clock_timezone#

VM hardware clock timezone in IANA TZDB format (America/Los_Angeles).

Type:

str

property host#
Type:

HostReference

property is_agent_vm#

Indicates whether the VM is an agent VM or not. When their host enters maintenance mode, once the normal VMs are evacuated, the agent VMs are powered off. When the host is restored, agent VMs are powered on before the normal VMs are restored. In other words, agent VMs cannot be HA-protected or live migrated.

Type:

bool

property is_branding_enabled#

Indicates whether to remove AHV branding from VM firmware tables or not.

Type:

bool

property is_cpu_passthrough_enabled#

Indicates whether to passthrough the host CPU features to the guest or not. Enabling this will make VM incapable of live migration.

Type:

bool

property is_cross_cluster_migration_in_progress#

Indicates whether the VM is currently undergoing cross cluster migration.

Type:

bool

property is_gpu_console_enabled#

Indicates whether the vGPU console is enabled or not.

Type:

bool

property is_live_migrate_capable#

Indicates whether the VM is capable of live migrating to another host or not, based on its configuration.

Type:

bool

property is_memory_overcommit_enabled#

Indicates whether the memory overcommit feature should be enabled for the VM or not. If enabled, parts of the VM memory may reside outside of the hypervisor physical memory. Once enabled, it should be expected that the VM may suffer performance degradation.

Type:

bool

property is_vcpu_hard_pinning_enabled#

Indicates whether the vCPUs should be hard pinned to specific pCPUs or not.

Type:

bool

property is_vga_console_enabled#

Indicates whether the VGA console should be disabled or not.

Type:

bool

property machine_type#
Type:

MachineType

property memory_size_bytes#

Memory size in bytes.

Type:

int

property name#

VM name.

Type:

str

property nics#

NICs attached to the VM.

Type:

list[ Nic ]

property num_cores_per_socket#

Number of cores per socket.

Type:

int

property num_numa_nodes#

Number of NUMA nodes. 0 means NUMA is disabled.

Type:

int

property num_sockets#

Number of vCPU sockets.

Type:

int

property num_threads_per_core#

Number of threads per core.

Type:

int

property ownership_info#
Type:

OwnershipInfo

property power_state#
Type:

PowerState

property protection_policy_state#
Type:

ProtectionPolicyState

property protection_type#
Type:

ProtectionType

property recovery_plan_states#

Status of the recovery plans associated with the VM.

Type:

list[ RecoveryPlanState ]

property serial_ports#

Serial ports configured on the VM.

Type:

list[ SerialPort ]

property source#
Type:

VmSourceReference

property storage_config#
Type:

ADSFVmStorageConfig

to_dict()[source]#

Returns the model properties as a dictionary

to_str()[source]#

Returns the string representation of the model

property update_time#

VM last updated time.

Type:

datetime

property vtpm_config#
Type:

VtpmConfig