Class VirtualMachineArgs
Inherited Members
Namespace: Pulumi.VSphere
Assembly: Pulumi.VSphere.dll
Syntax
public sealed class VirtualMachineArgs : ResourceArgs
Constructors
View SourceVirtualMachineArgs()
Declaration
public VirtualMachineArgs()
Properties
View SourceAlternateGuestName
The guest name for the operating system
when guest_id is other or other-64.
Declaration
public Input<string> AlternateGuestName { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.String> |
Annotation
A user-provided description of the virtual machine. The default is no annotation.
Declaration
public Input<string> Annotation { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.String> |
BootDelay
The number of milliseconds to wait before starting the boot sequence. The default is no delay.
Declaration
public Input<int> BootDelay { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Int32> |
BootRetryDelay
The number of milliseconds to wait before
retrying the boot sequence. This only valid if boot_retry_enabled is true.
Default: 10000 (10 seconds).
Declaration
public Input<int> BootRetryDelay { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Int32> |
BootRetryEnabled
If set to true, a virtual machine that
fails to boot will try again after the delay defined in boot_retry_delay.
Default: false.
Declaration
public Input<bool> BootRetryEnabled { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Boolean> |
Cdrom
A specification for a CDROM device on this virtual machine. See CDROM options below.
Declaration
public Input<VirtualMachineCdromArgs> Cdrom { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<VirtualMachineCdromArgs> |
Clone
When specified, the VM will be created as a clone of a specified template. Optional customization options can be submitted as well. See creating a virtual machine from a template for more details.
Declaration
public Input<VirtualMachineCloneArgs> Clone { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<VirtualMachineCloneArgs> |
CpuHotAddEnabled
Allow CPUs to be added to this virtual machine while it is running.
Declaration
public Input<bool> CpuHotAddEnabled { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Boolean> |
CpuHotRemoveEnabled
Allow CPUs to be removed to this virtual machine while it is running.
Declaration
public Input<bool> CpuHotRemoveEnabled { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Boolean> |
CpuLimit
The maximum amount of CPU (in MHz) that this virtual machine can consume, regardless of available resources. The default is no limit.
Declaration
public Input<int> CpuLimit { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Int32> |
CpuPerformanceCountersEnabled
Enable CPU performance
counters on this virtual machine. Default: false.
Declaration
public Input<bool> CpuPerformanceCountersEnabled { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Boolean> |
CpuReservation
The amount of CPU (in MHz) that this virtual machine is guaranteed. The default is no reservation.
Declaration
public Input<int> CpuReservation { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Int32> |
CpuShareCount
The number of CPU shares allocated to the
virtual machine when the cpu_share_level is custom.
Declaration
public Input<int> CpuShareCount { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Int32> |
CpuShareLevel
The allocation level for CPU resources. Can be
one of high, low, normal, or custom. Default: custom.
Declaration
public Input<string> CpuShareLevel { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.String> |
CustomAttributes
Map of custom attribute ids to attribute value strings to set for virtual machine.
Declaration
public InputMap<string> CustomAttributes { get; set; }
Property Value
| Type | Description |
|---|---|
| InputMap<System.String> |
DatacenterId
The datacenter id. Required only when deploying an ovf template.
Declaration
public Input<string> DatacenterId { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.String> |
DatastoreClusterId
The managed object reference ID of the datastore cluster ID to use. This setting applies to entire virtual machine and implies that you wish to use Storage DRS with this virtual machine. See the section on virtual machine migration for details on changing this value.
Declaration
public Input<string> DatastoreClusterId { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.String> |
DatastoreId
The datastore ID that the ISO is located in.
Requried for using a datastore ISO. Conflicts with client_device.
Declaration
public Input<string> DatastoreId { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.String> |
Disks
A specification for a virtual disk device on this virtual machine. See disk options below.
Declaration
public InputList<VirtualMachineDiskArgs> Disks { get; set; }
Property Value
| Type | Description |
|---|---|
| InputList<VirtualMachineDiskArgs> |
EfiSecureBootEnabled
When the firmware type is set to is
efi, this enables EFI secure boot. Default: false.
Declaration
public Input<bool> EfiSecureBootEnabled { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Boolean> |
EnableDiskUuid
Expose the UUIDs of attached virtual disks to
the virtual machine, allowing access to them in the guest. Default: false.
Declaration
public Input<bool> EnableDiskUuid { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Boolean> |
EnableLogging
Enable logging of virtual machine events to a
log file stored in the virtual machine directory. Default: false.
Declaration
public Input<bool> EnableLogging { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Boolean> |
EptRviMode
The EPT/RVI (hardware memory virtualization)
setting for this virtual machine. Can be one of automatic, on, or off.
Default: automatic.
Declaration
public Input<string> EptRviMode { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.String> |
ExtraConfig
Extra configuration data for this virtual machine. Can be used to supply advanced parameters not normally in configuration, such as instance metadata.
Declaration
public InputMap<string> ExtraConfig { get; set; }
Property Value
| Type | Description |
|---|---|
| InputMap<System.String> |
Firmware
The firmware interface to use on the virtual machine.
Can be one of bios or EFI. Default: bios.
Declaration
public Input<string> Firmware { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.String> |
Folder
The path to the folder to put this virtual machine in, relative to the datacenter that the resource pool is in.
Declaration
public Input<string> Folder { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.String> |
ForcePowerOff
If a guest shutdown failed or timed out while
updating or destroying (see
shutdown_wait_timeout), force the power-off of
the virtual machine. Default: true.
Declaration
public Input<bool> ForcePowerOff { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Boolean> |
GuestId
The guest ID for the operating system type. For a
full list of possible values, see [here][vmware-docs-guest-ids]. Default: other-64.
Declaration
public Input<string> GuestId { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.String> |
HardwareVersion
The hardware version number. Valid range is from 4 to 15. The hardware version cannot be downgraded. See [virtual machine hardware compatibility][virtual-machine-hardware-compatibility] for more details.
Declaration
public Input<int> HardwareVersion { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Int32> |
HostSystemId
An optional managed object reference
ID of a host to put this virtual machine on. See the
section on virtual machine migration for
details on changing this value. If a host_system_id is not supplied,
vSphere will select a host in the resource pool to place the virtual machine,
according to any defaults or DRS policies in place.
Declaration
public Input<string> HostSystemId { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.String> |
HvMode
The (non-nested) hardware virtualization setting for
this virtual machine. Can be one of hvAuto, hvOn, or hvOff. Default:
hvAuto.
Declaration
public Input<string> HvMode { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.String> |
IgnoredGuestIps
List of IP addresses and CIDR networks to ignore while waiting for an available IP address using either of the waiters. Any IP addresses in this list will be ignored if they show up so that the waiter will continue to wait for a real IP address. Default: [].
Declaration
public InputList<string> IgnoredGuestIps { get; set; }
Property Value
| Type | Description |
|---|---|
| InputList<System.String> |
LatencySensitivity
Controls the scheduling delay of the
virtual machine. Use a higher sensitivity for applications that require lower
latency, such as VOIP, media player applications, or applications that
require frequent access to mouse or keyboard devices. Can be one of low,
normal, medium, or high.
Declaration
public Input<string> LatencySensitivity { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.String> |
Memory
The size of the virtual machine's memory, in MB.
Default: 1024 (1 GB).
Declaration
public Input<int> Memory { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Int32> |
MemoryHotAddEnabled
Allow memory to be added to this virtual machine while it is running.
Declaration
public Input<bool> MemoryHotAddEnabled { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Boolean> |
MemoryLimit
The maximum amount of memory (in MB) that this virtual machine can consume, regardless of available resources. The default is no limit.
Declaration
public Input<int> MemoryLimit { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Int32> |
MemoryReservation
The amount of memory (in MB) that this virtual machine is guaranteed. The default is no reservation.
Declaration
public Input<int> MemoryReservation { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Int32> |
MemoryShareCount
The number of memory shares allocated to
the virtual machine when the memory_share_level is custom.
Declaration
public Input<int> MemoryShareCount { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Int32> |
MemoryShareLevel
The allocation level for memory resources.
Can be one of high, low, normal, or custom. Default: custom.
Declaration
public Input<string> MemoryShareLevel { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.String> |
MigrateWaitTimeout
The amount of time, in minutes, to wait for a virtual machine migration to complete before failing. Default: 10 minutes. Also see the section on virtual machine migration.
Declaration
public Input<int> MigrateWaitTimeout { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Int32> |
Name
An alias for both label and path, the latter when
using attach. Required if not using label.
Declaration
public Input<string> Name { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.String> |
NestedHvEnabled
Enable nested hardware virtualization on
this virtual machine, facilitating nested virtualization in the guest.
Default: false.
Declaration
public Input<bool> NestedHvEnabled { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Boolean> |
NetworkInterfaces
A specification for a virtual NIC on this virtual machine. See network interface options below.
Declaration
public InputList<VirtualMachineNetworkInterfaceArgs> NetworkInterfaces { get; set; }
Property Value
| Type | Description |
|---|---|
| InputList<VirtualMachineNetworkInterfaceArgs> |
NumCoresPerSocket
The number of cores per socket in this
virtual machine. The number of vCPUs on the virtual machine will be
num_cpus divided by num_cores_per_socket. If specified, the value
supplied to num_cpus must be evenly divisible by this value. Default: 1.
Declaration
public Input<int> NumCoresPerSocket { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Int32> |
NumCpus
The total number of virtual processor cores to assign
to this virtual machine. Default: 1.
Declaration
public Input<int> NumCpus { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Int32> |
OvfDeploy
When specified, the VM will be deployed from the provided ovf template. See creating a virtual machine from a ovf template for more details.
Declaration
public Input<VirtualMachineOvfDeployArgs> OvfDeploy { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<VirtualMachineOvfDeployArgs> |
PoweronTimeout
The amount of time, in seconds, that we will be trying to power on a VM
Declaration
public Input<int> PoweronTimeout { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Int32> |
ResourcePoolId
The managed object reference ID of the resource pool to put this virtual machine in. See the section on virtual machine migration for details on changing this value.
Declaration
public Input<string> ResourcePoolId { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.String> |
RunToolsScriptsAfterPowerOn
Enable the execution of
post-power-on scripts when VMware tools is installed. Default: true.
Declaration
public Input<bool> RunToolsScriptsAfterPowerOn { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Boolean> |
RunToolsScriptsAfterResume
Enable the execution of
post-resume scripts when VMware tools is installed. Default: true.
Declaration
public Input<bool> RunToolsScriptsAfterResume { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Boolean> |
RunToolsScriptsBeforeGuestReboot
Enable the execution of
pre-reboot scripts when VMware tools is installed. Default: false.
Declaration
public Input<bool> RunToolsScriptsBeforeGuestReboot { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Boolean> |
RunToolsScriptsBeforeGuestShutdown
Enable the execution
of pre-shutdown scripts when VMware tools is installed. Default: true.
Declaration
public Input<bool> RunToolsScriptsBeforeGuestShutdown { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Boolean> |
RunToolsScriptsBeforeGuestStandby
Enable the execution of
pre-standby scripts when VMware tools is installed. Default: true.
Declaration
public Input<bool> RunToolsScriptsBeforeGuestStandby { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Boolean> |
ScsiBusSharing
Mode for sharing the SCSI bus. The modes are
physicalSharing, virtualSharing, and noSharing. Default: noSharing.
Declaration
public Input<string> ScsiBusSharing { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.String> |
ScsiControllerCount
The number of SCSI controllers that
this provider manages on this virtual machine. This directly affects the amount
of disks you can add to the virtual machine and the maximum disk unit number.
Note that lowering this value does not remove controllers. Default: 1.
Declaration
public Input<int> ScsiControllerCount { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Int32> |
ScsiType
The type of SCSI bus this virtual machine will have.
Can be one of lsilogic (LSI Logic Parallel), lsilogic-sas (LSI Logic SAS) or
pvscsi (VMware Paravirtual). Defualt: pvscsi.
Declaration
public Input<string> ScsiType { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.String> |
ShutdownWaitTimeout
The amount of time, in minutes, to wait
for a graceful guest shutdown when making necessary updates to the virtual
machine. If force_power_off is set to true, the VM will be force powered-off
after this timeout, otherwise an error is returned. Default: 3 minutes.
Declaration
public Input<int> ShutdownWaitTimeout { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Int32> |
StoragePolicyId
The UUID of the storage policy to assign to this disk.
Declaration
public Input<string> StoragePolicyId { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.String> |
SwapPlacementPolicy
The swap file placement policy for this
virtual machine. Can be one of inherit, hostLocal, or vmDirectory.
Default: inherit.
Declaration
public Input<string> SwapPlacementPolicy { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.String> |
SyncTimeWithHost
Enable guest clock synchronization with
the host. Requires VMware tools to be installed. Default: false.
Declaration
public Input<bool> SyncTimeWithHost { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Boolean> |
Tags
The IDs of any tags to attach to this resource.
Declaration
public InputList<string> Tags { get; set; }
Property Value
| Type | Description |
|---|---|
| InputList<System.String> |
Vapp
Optional vApp configuration. The only sub-key available
is properties, which is a key/value map of properties for virtual machines
imported from OVF or OVA files. See Using vApp properties to supply OVF/OVA
configuration for
more details.
Declaration
public Input<VirtualMachineVappArgs> Vapp { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<VirtualMachineVappArgs> |
WaitForGuestIpTimeout
The amount of time, in minutes, to
wait for an available guest IP address on this virtual machine. This should
only be used if your version of VMware Tools does not allow the
wait_for_guest_net_timeout waiter to be
used. A value less than 1 disables the waiter. Default: 0.
Declaration
public Input<int> WaitForGuestIpTimeout { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Int32> |
WaitForGuestNetRoutable
Controls whether or not the guest
network waiter waits for a routable address. When false, the waiter does
not wait for a default gateway, nor are IP addresses checked against any
discovered default gateways as part of its success criteria. This property is
ignored if the wait_for_guest_ip_timeout
waiter is used. Default: true.
Declaration
public Input<bool> WaitForGuestNetRoutable { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Boolean> |
WaitForGuestNetTimeout
The amount of time, in minutes, to
wait for an available IP address on this virtual machine's NICs. Older
versions of VMware Tools do not populate this property. In those cases, this
waiter can be disabled and the
wait_for_guest_ip_timeout waiter can be used
instead. A value less than 1 disables the waiter. Default: 5 minutes.
Declaration
public Input<int> WaitForGuestNetTimeout { get; set; }
Property Value
| Type | Description |
|---|---|
| Input<System.Int32> |