1. Packages
  2. vSphere
  3. API Docs
  4. VirtualMachine
vSphere v4.9.0 published on Tuesday, Nov 28, 2023 by Pulumi

vsphere.VirtualMachine

Explore with Pulumi AI

vsphere logo
vSphere v4.9.0 published on Tuesday, Nov 28, 2023 by Pulumi

    Create VirtualMachine Resource

    new VirtualMachine(name: string, args: VirtualMachineArgs, opts?: CustomResourceOptions);
    @overload
    def VirtualMachine(resource_name: str,
                       opts: Optional[ResourceOptions] = None,
                       alternate_guest_name: Optional[str] = None,
                       annotation: Optional[str] = None,
                       boot_delay: Optional[int] = None,
                       boot_retry_delay: Optional[int] = None,
                       boot_retry_enabled: Optional[bool] = None,
                       cdroms: Optional[Sequence[VirtualMachineCdromArgs]] = None,
                       clone: Optional[VirtualMachineCloneArgs] = None,
                       cpu_hot_add_enabled: Optional[bool] = None,
                       cpu_hot_remove_enabled: Optional[bool] = None,
                       cpu_limit: Optional[int] = None,
                       cpu_performance_counters_enabled: Optional[bool] = None,
                       cpu_reservation: Optional[int] = None,
                       cpu_share_count: Optional[int] = None,
                       cpu_share_level: Optional[str] = None,
                       custom_attributes: Optional[Mapping[str, str]] = None,
                       datacenter_id: Optional[str] = None,
                       datastore_cluster_id: Optional[str] = None,
                       datastore_id: Optional[str] = None,
                       disks: Optional[Sequence[VirtualMachineDiskArgs]] = None,
                       efi_secure_boot_enabled: Optional[bool] = None,
                       enable_disk_uuid: Optional[bool] = None,
                       enable_logging: Optional[bool] = None,
                       ept_rvi_mode: Optional[str] = None,
                       extra_config: Optional[Mapping[str, str]] = None,
                       extra_config_reboot_required: Optional[bool] = None,
                       firmware: Optional[str] = None,
                       folder: Optional[str] = None,
                       force_power_off: Optional[bool] = None,
                       guest_id: Optional[str] = None,
                       hardware_version: Optional[int] = None,
                       host_system_id: Optional[str] = None,
                       hv_mode: Optional[str] = None,
                       ide_controller_count: Optional[int] = None,
                       ignored_guest_ips: Optional[Sequence[str]] = None,
                       latency_sensitivity: Optional[str] = None,
                       memory: Optional[int] = None,
                       memory_hot_add_enabled: Optional[bool] = None,
                       memory_limit: Optional[int] = None,
                       memory_reservation: Optional[int] = None,
                       memory_share_count: Optional[int] = None,
                       memory_share_level: Optional[str] = None,
                       migrate_wait_timeout: Optional[int] = None,
                       name: Optional[str] = None,
                       nested_hv_enabled: Optional[bool] = None,
                       network_interfaces: Optional[Sequence[VirtualMachineNetworkInterfaceArgs]] = None,
                       num_cores_per_socket: Optional[int] = None,
                       num_cpus: Optional[int] = None,
                       ovf_deploy: Optional[VirtualMachineOvfDeployArgs] = None,
                       pci_device_ids: Optional[Sequence[str]] = None,
                       poweron_timeout: Optional[int] = None,
                       replace_trigger: Optional[str] = None,
                       resource_pool_id: Optional[str] = None,
                       run_tools_scripts_after_power_on: Optional[bool] = None,
                       run_tools_scripts_after_resume: Optional[bool] = None,
                       run_tools_scripts_before_guest_reboot: Optional[bool] = None,
                       run_tools_scripts_before_guest_shutdown: Optional[bool] = None,
                       run_tools_scripts_before_guest_standby: Optional[bool] = None,
                       sata_controller_count: Optional[int] = None,
                       scsi_bus_sharing: Optional[str] = None,
                       scsi_controller_count: Optional[int] = None,
                       scsi_type: Optional[str] = None,
                       shutdown_wait_timeout: Optional[int] = None,
                       storage_policy_id: Optional[str] = None,
                       swap_placement_policy: Optional[str] = None,
                       sync_time_with_host: Optional[bool] = None,
                       sync_time_with_host_periodically: Optional[bool] = None,
                       tags: Optional[Sequence[str]] = None,
                       tools_upgrade_policy: Optional[str] = None,
                       vapp: Optional[VirtualMachineVappArgs] = None,
                       vbs_enabled: Optional[bool] = None,
                       vvtd_enabled: Optional[bool] = None,
                       wait_for_guest_ip_timeout: Optional[int] = None,
                       wait_for_guest_net_routable: Optional[bool] = None,
                       wait_for_guest_net_timeout: Optional[int] = None)
    @overload
    def VirtualMachine(resource_name: str,
                       args: VirtualMachineArgs,
                       opts: Optional[ResourceOptions] = None)
    func NewVirtualMachine(ctx *Context, name string, args VirtualMachineArgs, opts ...ResourceOption) (*VirtualMachine, error)
    public VirtualMachine(string name, VirtualMachineArgs args, CustomResourceOptions? opts = null)
    public VirtualMachine(String name, VirtualMachineArgs args)
    public VirtualMachine(String name, VirtualMachineArgs args, CustomResourceOptions options)
    
    type: vsphere:VirtualMachine
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    name string
    The unique name of the resource.
    args VirtualMachineArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args VirtualMachineArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args VirtualMachineArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args VirtualMachineArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args VirtualMachineArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    VirtualMachine Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The VirtualMachine resource accepts the following input properties:

    ResourcePoolId string

    The managed object reference ID of the resource pool in which to place the virtual machine. See the Virtual Machine Migration section for more information on modifying this value.

    NOTE: All clusters and standalone hosts have a default root resource pool. This resource argument does not directly accept the cluster or standalone host resource. For more information, see the section on specifying the Root Resource Pool in the vsphere.ResourcePool data source documentation on using the root resource pool.

    AlternateGuestName string

    The guest name for the operating system when guest_id is otherGuest or otherGuest64.

    Annotation string

    A user-provided description of the virtual machine.

    BootDelay int

    The number of milliseconds to wait before starting the boot sequence. The default is no delay.

    BootRetryDelay int

    The number of milliseconds to wait before retrying the boot sequence. This option is only valid if boot_retry_enabled is true. Default: 10000 (10 seconds).

    BootRetryEnabled bool

    If set to true, a virtual machine that fails to boot will try again after the delay defined in boot_retry_delay. Default: false.

    Cdroms List<Pulumi.VSphere.Inputs.VirtualMachineCdrom>

    A specification for a CD-ROM device on the virtual machine. See CD-ROM options for more information.

    Clone Pulumi.VSphere.Inputs.VirtualMachineClone

    When specified, the virtual machine will be created as a clone of a specified template. Optional customization options can be submitted for the resource. See creating a virtual machine from a template for more information.

    CpuHotAddEnabled bool

    Allow CPUs to be added to the virtual machine while it is powered on.

    CpuHotRemoveEnabled bool

    Allow CPUs to be removed to the virtual machine while it is powered on.

    CpuLimit int

    The maximum amount of CPU (in MHz) that the virtual machine can consume, regardless of available resources. The default is no limit.

    CpuPerformanceCountersEnabled bool

    Enable CPU performance counters on the virtual machine. Default: false.

    CpuReservation int

    The amount of CPU (in MHz) that the virtual machine is guaranteed. The default is no reservation.

    CpuShareCount int

    The number of CPU shares allocated to the virtual machine when the cpu_share_level is custom.

    CpuShareLevel string

    The allocation level for the virtual machine CPU resources. One of high, low, normal, or custom. Default: custom.

    CustomAttributes Dictionary<string, string>

    Map of custom attribute ids to attribute value strings to set for virtual machine. Please refer to the vsphere_custom_attributes resource for more information on setting custom attributes.

    NOTE: Custom attributes requires vCenter Server and is not supported on direct ESXi host connections.

    DatacenterId string

    The datacenter ID. Required only when deploying an OVF/OVA template.

    DatastoreClusterId string

    The managed object reference ID of the datastore cluster in which to place the virtual machine. This setting applies to entire virtual machine and implies that you wish to use vSphere Storage DRS with the virtual machine. See the section on virtual machine migration for more information on modifying this value.

    NOTE: One of datastore_id or datastore_cluster_id must be specified.

    NOTE: Use of datastore_cluster_id requires vSphere Storage DRS to be enabled on the specified datastore cluster.

    NOTE: The datastore_cluster_id setting applies to the entire virtual machine resource. You cannot assign individual individual disks to datastore clusters. In addition, you cannot use the attach setting to attach external disks on virtual machines that are assigned to datastore clusters.

    DatastoreId string

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    Disks List<Pulumi.VSphere.Inputs.VirtualMachineDisk>

    A specification for a virtual disk device on the virtual machine. See disk options for more information.

    EfiSecureBootEnabled bool

    Use this option to enable EFI secure boot when the firmware type is set to is efi. Default: false.

    NOTE: EFI secure boot is only available on vSphere 6.5 and later.

    EnableDiskUuid bool

    Expose the UUIDs of attached virtual disks to the virtual machine, allowing access to them in the guest. Default: false.

    EnableLogging bool

    Enable logging of virtual machine events to a log file stored in the virtual machine directory. Default: false.

    EptRviMode string

    The EPT/RVI (hardware memory virtualization) setting for the virtual machine. One of automatic, on, or off. Default: automatic.

    ExtraConfig Dictionary<string, string>

    Extra configuration data for the virtual machine. Can be used to supply advanced parameters not normally in configuration, such as instance metadata and userdata.

    NOTE: Do not use extra_config when working with a template imported from OVF/OVA as your settings may be ignored. Use the vapp block properties section as described in Using vApp Properties for OVF/OVA Configuration.

    ExtraConfigRebootRequired bool

    Allow the virtual machine to be rebooted when a change to extra_config occurs. Default: true.

    Firmware string

    The firmware for the virtual machine. One of bios or efi.

    Folder string

    The path to the virtual machine folder in which to place the virtual machine, relative to the datacenter path (/<datacenter-name>/vm). For example, /dc-01/vm/foo

    ForcePowerOff bool

    If a guest shutdown failed or times out while updating or destroying (see shutdown_wait_timeout), force the power-off of the virtual machine. Default: true.

    GuestId string

    The guest ID for the operating system type. For a full list of possible values, see here. Default: otherGuest64.

    HardwareVersion int

    The hardware version number. Valid range is from 4 to 21. The hardware version cannot be downgraded. See virtual machine hardware versions and compatibility for more information on supported settings.

    HostSystemId string

    The managed object reference ID of a host on which to place the virtual machine. See the section on virtual machine migration for more information on modifying this value. When using a vSphere cluster, if a host_system_id is not supplied, vSphere will select a host in the cluster to place the virtual machine, according to any defaults or vSphere DRS placement policies.

    HvMode string

    The hardware virtualization (non-nested) setting for the virtual machine. One of hvAuto, hvOn, or hvOff. Default: hvAuto.

    IdeControllerCount int

    The number of IDE controllers that the virtual machine. This directly affects the number 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: 2.

    IgnoredGuestIps List<string>

    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 so that the waiter will continue to wait for a valid IP address. Default: [].

    LatencySensitivity string

    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. One of low, normal, medium, or high.

    NOTE: On higher sensitivities, you may need to adjust the memory_reservation to the full amount of memory provisioned for the virtual machine.

    Memory int

    The memory size to assign to the virtual machine, in MB. Default: 1024 (1 GB).

    MemoryHotAddEnabled bool

    Allow memory to be added to the virtual machine while it is powered on.

    NOTE: CPU and memory hot add options are not available on all guest operating systems. Please refer to the VMware Guest OS Compatibility Guide to which settings are allow for your guest operating system. In addition, at least one pulumi up must be run before you are able to use CPU and memory hot add.

    NOTE: For Linux 64-bit guest operating systems with less than or equal to 3GB, the virtual machine must powered off to add memory beyond 3GB. Subsequent hot add of memory does not require the virtual machine to be powered-off to apply the plan. Please refer to VMware KB 2008405.

    MemoryLimit int

    The maximum amount of memory (in MB) that th virtual machine can consume, regardless of available resources. The default is no limit.

    MemoryReservation int

    The amount of memory (in MB) that the virtual machine is guaranteed. The default is no reservation.

    MemoryShareCount int

    The number of memory shares allocated to the virtual machine when the memory_share_level is custom.

    MemoryShareLevel string

    The allocation level for the virtual machine memory resources. One of high, low, normal, or custom. Default: custom.

    MigrateWaitTimeout int

    The amount of time, in minutes, to wait for a virtual machine migration to complete before failing. Default: 10 minutes. See the section on virtual machine migration for more information.

    Name string

    The name of the virtual machine.

    NestedHvEnabled bool

    Enable nested hardware virtualization on the virtual machine, facilitating nested virtualization in the guest operating system. Default: false.

    NetworkInterfaces List<Pulumi.VSphere.Inputs.VirtualMachineNetworkInterface>

    A specification for a virtual NIC on the virtual machine. See network interface options for more information.

    NumCoresPerSocket int

    The number of cores per socket in the 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.

    NumCpus int

    The total number of virtual processor cores to assign to the virtual machine. Default: 1.

    OvfDeploy Pulumi.VSphere.Inputs.VirtualMachineOvfDeploy

    When specified, the virtual machine will be deployed from the provided OVF/OVA template. See creating a virtual machine from an OVF/OVA template for more information.

    PciDeviceIds List<string>

    List of host PCI device IDs in which to create PCI passthroughs.

    NOTE: Cloning requires vCenter Server and is not supported on direct ESXi host connections.

    PoweronTimeout int

    The amount of time, in seconds, that we will be trying to power on a VM

    ReplaceTrigger string

    Triggers replacement of resource whenever it changes.

    For example, replace_trigger = sha256(format("%s-%s",data.template_file.cloud_init_metadata.rendered,data.template_file.cloud_init_userdata.rendered)) will fingerprint the changes in cloud-init metadata and userdata templates. This will enable a replacement of the resource whenever the dependant template renders a new configuration. (Forces a replacement.)

    RunToolsScriptsAfterPowerOn bool

    Enable post-power-on scripts to run when VMware Tools is installed. Default: true.

    RunToolsScriptsAfterResume bool

    Enable ost-resume scripts to run when VMware Tools is installed. Default: true.

    RunToolsScriptsBeforeGuestReboot bool

    Enable pre-reboot scripts to run when VMware Tools is installed. Default: false.

    RunToolsScriptsBeforeGuestShutdown bool

    Enable pre-shutdown scripts to run when VMware Tools is installed. Default: true.

    RunToolsScriptsBeforeGuestStandby bool

    Enable pre-standby scripts to run when VMware Tools is installed. Default: true.

    SataControllerCount int

    The number of SATA controllers that Terraform 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.

    ScsiBusSharing string

    The type of SCSI bus sharing for the virtual machine SCSI controller. One of physicalSharing, virtualSharing, and noSharing. Default: noSharing.

    ScsiControllerCount int

    The number of SCSI controllers that Terraform 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.

    ScsiType string

    The SCSI controller type for the virtual machine. One of lsilogic (LSI Logic Parallel), lsilogic-sas (LSI Logic SAS) or pvscsi (VMware Paravirtual). Default: pvscsi.

    ShutdownWaitTimeout int

    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 virtual machine will be forced to power-off after the timeout, otherwise an error is returned. Default: 3 minutes.

    StoragePolicyId string

    The UUID of the storage policy to assign to the virtual disk.

    SwapPlacementPolicy string

    The swap file placement policy for the virtual machine. One of inherit, hostLocal, or vmDirectory. Default: inherit.

    SyncTimeWithHost bool

    Enable the guest operating system to synchronization its clock with the host when the virtual machine is powered on or resumed. Requires vSphere 7.0 Update 1 and later. Requires VMware Tools to be installed. Default: false.

    SyncTimeWithHostPeriodically bool

    Enable the guest operating system to periodically synchronize its clock with the host. Requires vSphere 7.0 Update 1 and later. On previous versions, setting sync_time_with_host is will enable periodic synchronization. Requires VMware Tools to be installed. Default: false.

    Tags List<string>

    The IDs of any tags to attach to this resource. Please refer to the vsphere.Tag resource for more information on applying tags to virtual machine resources.

    NOTE: Tagging support is unsupported on direct ESXi host connections and requires vCenter Server instance.

    ToolsUpgradePolicy string

    Enable automatic upgrade of the VMware Tools version when the virtual machine is rebooted. If necessary, VMware Tools is upgraded to the latest version supported by the host on which the virtual machine is running. Requires VMware Tools to be installed. One of manual or upgradeAtPowerCycle. Default: manual.

    Vapp Pulumi.VSphere.Inputs.VirtualMachineVapp

    Used for vApp configurations. The only sub-key available is properties, which is a key/value map of properties for virtual machines imported from and OVF/OVA. See Using vApp Properties for OVF/OVA Configuration for more information.

    VbsEnabled bool

    Enable Virtualization Based Security. Requires firmware to be efi. In addition, vvtd_enabled, nested_hv_enabled, and efi_secure_boot_enabled must all have a value of true. Supported on vSphere 6.7 and later. Default: false.

    VvtdEnabled bool

    Enable Intel Virtualization Technology for Directed I/O for the virtual machine (I/O MMU in the vSphere Client). Supported on vSphere 6.7 and later. Default: false.

    WaitForGuestIpTimeout int

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. This should only be used if the version 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.

    WaitForGuestNetRoutable bool

    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.

    WaitForGuestNetTimeout int

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. 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.

    ResourcePoolId string

    The managed object reference ID of the resource pool in which to place the virtual machine. See the Virtual Machine Migration section for more information on modifying this value.

    NOTE: All clusters and standalone hosts have a default root resource pool. This resource argument does not directly accept the cluster or standalone host resource. For more information, see the section on specifying the Root Resource Pool in the vsphere.ResourcePool data source documentation on using the root resource pool.

    AlternateGuestName string

    The guest name for the operating system when guest_id is otherGuest or otherGuest64.

    Annotation string

    A user-provided description of the virtual machine.

    BootDelay int

    The number of milliseconds to wait before starting the boot sequence. The default is no delay.

    BootRetryDelay int

    The number of milliseconds to wait before retrying the boot sequence. This option is only valid if boot_retry_enabled is true. Default: 10000 (10 seconds).

    BootRetryEnabled bool

    If set to true, a virtual machine that fails to boot will try again after the delay defined in boot_retry_delay. Default: false.

    Cdroms []VirtualMachineCdromArgs

    A specification for a CD-ROM device on the virtual machine. See CD-ROM options for more information.

    Clone VirtualMachineCloneArgs

    When specified, the virtual machine will be created as a clone of a specified template. Optional customization options can be submitted for the resource. See creating a virtual machine from a template for more information.

    CpuHotAddEnabled bool

    Allow CPUs to be added to the virtual machine while it is powered on.

    CpuHotRemoveEnabled bool

    Allow CPUs to be removed to the virtual machine while it is powered on.

    CpuLimit int

    The maximum amount of CPU (in MHz) that the virtual machine can consume, regardless of available resources. The default is no limit.

    CpuPerformanceCountersEnabled bool

    Enable CPU performance counters on the virtual machine. Default: false.

    CpuReservation int

    The amount of CPU (in MHz) that the virtual machine is guaranteed. The default is no reservation.

    CpuShareCount int

    The number of CPU shares allocated to the virtual machine when the cpu_share_level is custom.

    CpuShareLevel string

    The allocation level for the virtual machine CPU resources. One of high, low, normal, or custom. Default: custom.

    CustomAttributes map[string]string

    Map of custom attribute ids to attribute value strings to set for virtual machine. Please refer to the vsphere_custom_attributes resource for more information on setting custom attributes.

    NOTE: Custom attributes requires vCenter Server and is not supported on direct ESXi host connections.

    DatacenterId string

    The datacenter ID. Required only when deploying an OVF/OVA template.

    DatastoreClusterId string

    The managed object reference ID of the datastore cluster in which to place the virtual machine. This setting applies to entire virtual machine and implies that you wish to use vSphere Storage DRS with the virtual machine. See the section on virtual machine migration for more information on modifying this value.

    NOTE: One of datastore_id or datastore_cluster_id must be specified.

    NOTE: Use of datastore_cluster_id requires vSphere Storage DRS to be enabled on the specified datastore cluster.

    NOTE: The datastore_cluster_id setting applies to the entire virtual machine resource. You cannot assign individual individual disks to datastore clusters. In addition, you cannot use the attach setting to attach external disks on virtual machines that are assigned to datastore clusters.

    DatastoreId string

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    Disks []VirtualMachineDiskArgs

    A specification for a virtual disk device on the virtual machine. See disk options for more information.

    EfiSecureBootEnabled bool

    Use this option to enable EFI secure boot when the firmware type is set to is efi. Default: false.

    NOTE: EFI secure boot is only available on vSphere 6.5 and later.

    EnableDiskUuid bool

    Expose the UUIDs of attached virtual disks to the virtual machine, allowing access to them in the guest. Default: false.

    EnableLogging bool

    Enable logging of virtual machine events to a log file stored in the virtual machine directory. Default: false.

    EptRviMode string

    The EPT/RVI (hardware memory virtualization) setting for the virtual machine. One of automatic, on, or off. Default: automatic.

    ExtraConfig map[string]string

    Extra configuration data for the virtual machine. Can be used to supply advanced parameters not normally in configuration, such as instance metadata and userdata.

    NOTE: Do not use extra_config when working with a template imported from OVF/OVA as your settings may be ignored. Use the vapp block properties section as described in Using vApp Properties for OVF/OVA Configuration.

    ExtraConfigRebootRequired bool

    Allow the virtual machine to be rebooted when a change to extra_config occurs. Default: true.

    Firmware string

    The firmware for the virtual machine. One of bios or efi.

    Folder string

    The path to the virtual machine folder in which to place the virtual machine, relative to the datacenter path (/<datacenter-name>/vm). For example, /dc-01/vm/foo

    ForcePowerOff bool

    If a guest shutdown failed or times out while updating or destroying (see shutdown_wait_timeout), force the power-off of the virtual machine. Default: true.

    GuestId string

    The guest ID for the operating system type. For a full list of possible values, see here. Default: otherGuest64.

    HardwareVersion int

    The hardware version number. Valid range is from 4 to 21. The hardware version cannot be downgraded. See virtual machine hardware versions and compatibility for more information on supported settings.

    HostSystemId string

    The managed object reference ID of a host on which to place the virtual machine. See the section on virtual machine migration for more information on modifying this value. When using a vSphere cluster, if a host_system_id is not supplied, vSphere will select a host in the cluster to place the virtual machine, according to any defaults or vSphere DRS placement policies.

    HvMode string

    The hardware virtualization (non-nested) setting for the virtual machine. One of hvAuto, hvOn, or hvOff. Default: hvAuto.

    IdeControllerCount int

    The number of IDE controllers that the virtual machine. This directly affects the number 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: 2.

    IgnoredGuestIps []string

    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 so that the waiter will continue to wait for a valid IP address. Default: [].

    LatencySensitivity string

    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. One of low, normal, medium, or high.

    NOTE: On higher sensitivities, you may need to adjust the memory_reservation to the full amount of memory provisioned for the virtual machine.

    Memory int

    The memory size to assign to the virtual machine, in MB. Default: 1024 (1 GB).

    MemoryHotAddEnabled bool

    Allow memory to be added to the virtual machine while it is powered on.

    NOTE: CPU and memory hot add options are not available on all guest operating systems. Please refer to the VMware Guest OS Compatibility Guide to which settings are allow for your guest operating system. In addition, at least one pulumi up must be run before you are able to use CPU and memory hot add.

    NOTE: For Linux 64-bit guest operating systems with less than or equal to 3GB, the virtual machine must powered off to add memory beyond 3GB. Subsequent hot add of memory does not require the virtual machine to be powered-off to apply the plan. Please refer to VMware KB 2008405.

    MemoryLimit int

    The maximum amount of memory (in MB) that th virtual machine can consume, regardless of available resources. The default is no limit.

    MemoryReservation int

    The amount of memory (in MB) that the virtual machine is guaranteed. The default is no reservation.

    MemoryShareCount int

    The number of memory shares allocated to the virtual machine when the memory_share_level is custom.

    MemoryShareLevel string

    The allocation level for the virtual machine memory resources. One of high, low, normal, or custom. Default: custom.

    MigrateWaitTimeout int

    The amount of time, in minutes, to wait for a virtual machine migration to complete before failing. Default: 10 minutes. See the section on virtual machine migration for more information.

    Name string

    The name of the virtual machine.

    NestedHvEnabled bool

    Enable nested hardware virtualization on the virtual machine, facilitating nested virtualization in the guest operating system. Default: false.

    NetworkInterfaces []VirtualMachineNetworkInterfaceArgs

    A specification for a virtual NIC on the virtual machine. See network interface options for more information.

    NumCoresPerSocket int

    The number of cores per socket in the 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.

    NumCpus int

    The total number of virtual processor cores to assign to the virtual machine. Default: 1.

    OvfDeploy VirtualMachineOvfDeployArgs

    When specified, the virtual machine will be deployed from the provided OVF/OVA template. See creating a virtual machine from an OVF/OVA template for more information.

    PciDeviceIds []string

    List of host PCI device IDs in which to create PCI passthroughs.

    NOTE: Cloning requires vCenter Server and is not supported on direct ESXi host connections.

    PoweronTimeout int

    The amount of time, in seconds, that we will be trying to power on a VM

    ReplaceTrigger string

    Triggers replacement of resource whenever it changes.

    For example, replace_trigger = sha256(format("%s-%s",data.template_file.cloud_init_metadata.rendered,data.template_file.cloud_init_userdata.rendered)) will fingerprint the changes in cloud-init metadata and userdata templates. This will enable a replacement of the resource whenever the dependant template renders a new configuration. (Forces a replacement.)

    RunToolsScriptsAfterPowerOn bool

    Enable post-power-on scripts to run when VMware Tools is installed. Default: true.

    RunToolsScriptsAfterResume bool

    Enable ost-resume scripts to run when VMware Tools is installed. Default: true.

    RunToolsScriptsBeforeGuestReboot bool

    Enable pre-reboot scripts to run when VMware Tools is installed. Default: false.

    RunToolsScriptsBeforeGuestShutdown bool

    Enable pre-shutdown scripts to run when VMware Tools is installed. Default: true.

    RunToolsScriptsBeforeGuestStandby bool

    Enable pre-standby scripts to run when VMware Tools is installed. Default: true.

    SataControllerCount int

    The number of SATA controllers that Terraform 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.

    ScsiBusSharing string

    The type of SCSI bus sharing for the virtual machine SCSI controller. One of physicalSharing, virtualSharing, and noSharing. Default: noSharing.

    ScsiControllerCount int

    The number of SCSI controllers that Terraform 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.

    ScsiType string

    The SCSI controller type for the virtual machine. One of lsilogic (LSI Logic Parallel), lsilogic-sas (LSI Logic SAS) or pvscsi (VMware Paravirtual). Default: pvscsi.

    ShutdownWaitTimeout int

    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 virtual machine will be forced to power-off after the timeout, otherwise an error is returned. Default: 3 minutes.

    StoragePolicyId string

    The UUID of the storage policy to assign to the virtual disk.

    SwapPlacementPolicy string

    The swap file placement policy for the virtual machine. One of inherit, hostLocal, or vmDirectory. Default: inherit.

    SyncTimeWithHost bool

    Enable the guest operating system to synchronization its clock with the host when the virtual machine is powered on or resumed. Requires vSphere 7.0 Update 1 and later. Requires VMware Tools to be installed. Default: false.

    SyncTimeWithHostPeriodically bool

    Enable the guest operating system to periodically synchronize its clock with the host. Requires vSphere 7.0 Update 1 and later. On previous versions, setting sync_time_with_host is will enable periodic synchronization. Requires VMware Tools to be installed. Default: false.

    Tags []string

    The IDs of any tags to attach to this resource. Please refer to the vsphere.Tag resource for more information on applying tags to virtual machine resources.

    NOTE: Tagging support is unsupported on direct ESXi host connections and requires vCenter Server instance.

    ToolsUpgradePolicy string

    Enable automatic upgrade of the VMware Tools version when the virtual machine is rebooted. If necessary, VMware Tools is upgraded to the latest version supported by the host on which the virtual machine is running. Requires VMware Tools to be installed. One of manual or upgradeAtPowerCycle. Default: manual.

    Vapp VirtualMachineVappArgs

    Used for vApp configurations. The only sub-key available is properties, which is a key/value map of properties for virtual machines imported from and OVF/OVA. See Using vApp Properties for OVF/OVA Configuration for more information.

    VbsEnabled bool

    Enable Virtualization Based Security. Requires firmware to be efi. In addition, vvtd_enabled, nested_hv_enabled, and efi_secure_boot_enabled must all have a value of true. Supported on vSphere 6.7 and later. Default: false.

    VvtdEnabled bool

    Enable Intel Virtualization Technology for Directed I/O for the virtual machine (I/O MMU in the vSphere Client). Supported on vSphere 6.7 and later. Default: false.

    WaitForGuestIpTimeout int

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. This should only be used if the version 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.

    WaitForGuestNetRoutable bool

    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.

    WaitForGuestNetTimeout int

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. 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.

    resourcePoolId String

    The managed object reference ID of the resource pool in which to place the virtual machine. See the Virtual Machine Migration section for more information on modifying this value.

    NOTE: All clusters and standalone hosts have a default root resource pool. This resource argument does not directly accept the cluster or standalone host resource. For more information, see the section on specifying the Root Resource Pool in the vsphere.ResourcePool data source documentation on using the root resource pool.

    alternateGuestName String

    The guest name for the operating system when guest_id is otherGuest or otherGuest64.

    annotation String

    A user-provided description of the virtual machine.

    bootDelay Integer

    The number of milliseconds to wait before starting the boot sequence. The default is no delay.

    bootRetryDelay Integer

    The number of milliseconds to wait before retrying the boot sequence. This option is only valid if boot_retry_enabled is true. Default: 10000 (10 seconds).

    bootRetryEnabled Boolean

    If set to true, a virtual machine that fails to boot will try again after the delay defined in boot_retry_delay. Default: false.

    cdroms List<VirtualMachineCdrom>

    A specification for a CD-ROM device on the virtual machine. See CD-ROM options for more information.

    clone_ VirtualMachineClone

    When specified, the virtual machine will be created as a clone of a specified template. Optional customization options can be submitted for the resource. See creating a virtual machine from a template for more information.

    cpuHotAddEnabled Boolean

    Allow CPUs to be added to the virtual machine while it is powered on.

    cpuHotRemoveEnabled Boolean

    Allow CPUs to be removed to the virtual machine while it is powered on.

    cpuLimit Integer

    The maximum amount of CPU (in MHz) that the virtual machine can consume, regardless of available resources. The default is no limit.

    cpuPerformanceCountersEnabled Boolean

    Enable CPU performance counters on the virtual machine. Default: false.

    cpuReservation Integer

    The amount of CPU (in MHz) that the virtual machine is guaranteed. The default is no reservation.

    cpuShareCount Integer

    The number of CPU shares allocated to the virtual machine when the cpu_share_level is custom.

    cpuShareLevel String

    The allocation level for the virtual machine CPU resources. One of high, low, normal, or custom. Default: custom.

    customAttributes Map<String,String>

    Map of custom attribute ids to attribute value strings to set for virtual machine. Please refer to the vsphere_custom_attributes resource for more information on setting custom attributes.

    NOTE: Custom attributes requires vCenter Server and is not supported on direct ESXi host connections.

    datacenterId String

    The datacenter ID. Required only when deploying an OVF/OVA template.

    datastoreClusterId String

    The managed object reference ID of the datastore cluster in which to place the virtual machine. This setting applies to entire virtual machine and implies that you wish to use vSphere Storage DRS with the virtual machine. See the section on virtual machine migration for more information on modifying this value.

    NOTE: One of datastore_id or datastore_cluster_id must be specified.

    NOTE: Use of datastore_cluster_id requires vSphere Storage DRS to be enabled on the specified datastore cluster.

    NOTE: The datastore_cluster_id setting applies to the entire virtual machine resource. You cannot assign individual individual disks to datastore clusters. In addition, you cannot use the attach setting to attach external disks on virtual machines that are assigned to datastore clusters.

    datastoreId String

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    disks List<VirtualMachineDisk>

    A specification for a virtual disk device on the virtual machine. See disk options for more information.

    efiSecureBootEnabled Boolean

    Use this option to enable EFI secure boot when the firmware type is set to is efi. Default: false.

    NOTE: EFI secure boot is only available on vSphere 6.5 and later.

    enableDiskUuid Boolean

    Expose the UUIDs of attached virtual disks to the virtual machine, allowing access to them in the guest. Default: false.

    enableLogging Boolean

    Enable logging of virtual machine events to a log file stored in the virtual machine directory. Default: false.

    eptRviMode String

    The EPT/RVI (hardware memory virtualization) setting for the virtual machine. One of automatic, on, or off. Default: automatic.

    extraConfig Map<String,String>

    Extra configuration data for the virtual machine. Can be used to supply advanced parameters not normally in configuration, such as instance metadata and userdata.

    NOTE: Do not use extra_config when working with a template imported from OVF/OVA as your settings may be ignored. Use the vapp block properties section as described in Using vApp Properties for OVF/OVA Configuration.

    extraConfigRebootRequired Boolean

    Allow the virtual machine to be rebooted when a change to extra_config occurs. Default: true.

    firmware String

    The firmware for the virtual machine. One of bios or efi.

    folder String

    The path to the virtual machine folder in which to place the virtual machine, relative to the datacenter path (/<datacenter-name>/vm). For example, /dc-01/vm/foo

    forcePowerOff Boolean

    If a guest shutdown failed or times out while updating or destroying (see shutdown_wait_timeout), force the power-off of the virtual machine. Default: true.

    guestId String

    The guest ID for the operating system type. For a full list of possible values, see here. Default: otherGuest64.

    hardwareVersion Integer

    The hardware version number. Valid range is from 4 to 21. The hardware version cannot be downgraded. See virtual machine hardware versions and compatibility for more information on supported settings.

    hostSystemId String

    The managed object reference ID of a host on which to place the virtual machine. See the section on virtual machine migration for more information on modifying this value. When using a vSphere cluster, if a host_system_id is not supplied, vSphere will select a host in the cluster to place the virtual machine, according to any defaults or vSphere DRS placement policies.

    hvMode String

    The hardware virtualization (non-nested) setting for the virtual machine. One of hvAuto, hvOn, or hvOff. Default: hvAuto.

    ideControllerCount Integer

    The number of IDE controllers that the virtual machine. This directly affects the number 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: 2.

    ignoredGuestIps List<String>

    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 so that the waiter will continue to wait for a valid IP address. Default: [].

    latencySensitivity String

    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. One of low, normal, medium, or high.

    NOTE: On higher sensitivities, you may need to adjust the memory_reservation to the full amount of memory provisioned for the virtual machine.

    memory Integer

    The memory size to assign to the virtual machine, in MB. Default: 1024 (1 GB).

    memoryHotAddEnabled Boolean

    Allow memory to be added to the virtual machine while it is powered on.

    NOTE: CPU and memory hot add options are not available on all guest operating systems. Please refer to the VMware Guest OS Compatibility Guide to which settings are allow for your guest operating system. In addition, at least one pulumi up must be run before you are able to use CPU and memory hot add.

    NOTE: For Linux 64-bit guest operating systems with less than or equal to 3GB, the virtual machine must powered off to add memory beyond 3GB. Subsequent hot add of memory does not require the virtual machine to be powered-off to apply the plan. Please refer to VMware KB 2008405.

    memoryLimit Integer

    The maximum amount of memory (in MB) that th virtual machine can consume, regardless of available resources. The default is no limit.

    memoryReservation Integer

    The amount of memory (in MB) that the virtual machine is guaranteed. The default is no reservation.

    memoryShareCount Integer

    The number of memory shares allocated to the virtual machine when the memory_share_level is custom.

    memoryShareLevel String

    The allocation level for the virtual machine memory resources. One of high, low, normal, or custom. Default: custom.

    migrateWaitTimeout Integer

    The amount of time, in minutes, to wait for a virtual machine migration to complete before failing. Default: 10 minutes. See the section on virtual machine migration for more information.

    name String

    The name of the virtual machine.

    nestedHvEnabled Boolean

    Enable nested hardware virtualization on the virtual machine, facilitating nested virtualization in the guest operating system. Default: false.

    networkInterfaces List<VirtualMachineNetworkInterface>

    A specification for a virtual NIC on the virtual machine. See network interface options for more information.

    numCoresPerSocket Integer

    The number of cores per socket in the 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.

    numCpus Integer

    The total number of virtual processor cores to assign to the virtual machine. Default: 1.

    ovfDeploy VirtualMachineOvfDeploy

    When specified, the virtual machine will be deployed from the provided OVF/OVA template. See creating a virtual machine from an OVF/OVA template for more information.

    pciDeviceIds List<String>

    List of host PCI device IDs in which to create PCI passthroughs.

    NOTE: Cloning requires vCenter Server and is not supported on direct ESXi host connections.

    poweronTimeout Integer

    The amount of time, in seconds, that we will be trying to power on a VM

    replaceTrigger String

    Triggers replacement of resource whenever it changes.

    For example, replace_trigger = sha256(format("%s-%s",data.template_file.cloud_init_metadata.rendered,data.template_file.cloud_init_userdata.rendered)) will fingerprint the changes in cloud-init metadata and userdata templates. This will enable a replacement of the resource whenever the dependant template renders a new configuration. (Forces a replacement.)

    runToolsScriptsAfterPowerOn Boolean

    Enable post-power-on scripts to run when VMware Tools is installed. Default: true.

    runToolsScriptsAfterResume Boolean

    Enable ost-resume scripts to run when VMware Tools is installed. Default: true.

    runToolsScriptsBeforeGuestReboot Boolean

    Enable pre-reboot scripts to run when VMware Tools is installed. Default: false.

    runToolsScriptsBeforeGuestShutdown Boolean

    Enable pre-shutdown scripts to run when VMware Tools is installed. Default: true.

    runToolsScriptsBeforeGuestStandby Boolean

    Enable pre-standby scripts to run when VMware Tools is installed. Default: true.

    sataControllerCount Integer

    The number of SATA controllers that Terraform 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.

    scsiBusSharing String

    The type of SCSI bus sharing for the virtual machine SCSI controller. One of physicalSharing, virtualSharing, and noSharing. Default: noSharing.

    scsiControllerCount Integer

    The number of SCSI controllers that Terraform 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.

    scsiType String

    The SCSI controller type for the virtual machine. One of lsilogic (LSI Logic Parallel), lsilogic-sas (LSI Logic SAS) or pvscsi (VMware Paravirtual). Default: pvscsi.

    shutdownWaitTimeout Integer

    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 virtual machine will be forced to power-off after the timeout, otherwise an error is returned. Default: 3 minutes.

    storagePolicyId String

    The UUID of the storage policy to assign to the virtual disk.

    swapPlacementPolicy String

    The swap file placement policy for the virtual machine. One of inherit, hostLocal, or vmDirectory. Default: inherit.

    syncTimeWithHost Boolean

    Enable the guest operating system to synchronization its clock with the host when the virtual machine is powered on or resumed. Requires vSphere 7.0 Update 1 and later. Requires VMware Tools to be installed. Default: false.

    syncTimeWithHostPeriodically Boolean

    Enable the guest operating system to periodically synchronize its clock with the host. Requires vSphere 7.0 Update 1 and later. On previous versions, setting sync_time_with_host is will enable periodic synchronization. Requires VMware Tools to be installed. Default: false.

    tags List<String>

    The IDs of any tags to attach to this resource. Please refer to the vsphere.Tag resource for more information on applying tags to virtual machine resources.

    NOTE: Tagging support is unsupported on direct ESXi host connections and requires vCenter Server instance.

    toolsUpgradePolicy String

    Enable automatic upgrade of the VMware Tools version when the virtual machine is rebooted. If necessary, VMware Tools is upgraded to the latest version supported by the host on which the virtual machine is running. Requires VMware Tools to be installed. One of manual or upgradeAtPowerCycle. Default: manual.

    vapp VirtualMachineVapp

    Used for vApp configurations. The only sub-key available is properties, which is a key/value map of properties for virtual machines imported from and OVF/OVA. See Using vApp Properties for OVF/OVA Configuration for more information.

    vbsEnabled Boolean

    Enable Virtualization Based Security. Requires firmware to be efi. In addition, vvtd_enabled, nested_hv_enabled, and efi_secure_boot_enabled must all have a value of true. Supported on vSphere 6.7 and later. Default: false.

    vvtdEnabled Boolean

    Enable Intel Virtualization Technology for Directed I/O for the virtual machine (I/O MMU in the vSphere Client). Supported on vSphere 6.7 and later. Default: false.

    waitForGuestIpTimeout Integer

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. This should only be used if the version 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.

    waitForGuestNetRoutable Boolean

    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.

    waitForGuestNetTimeout Integer

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. 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.

    resourcePoolId string

    The managed object reference ID of the resource pool in which to place the virtual machine. See the Virtual Machine Migration section for more information on modifying this value.

    NOTE: All clusters and standalone hosts have a default root resource pool. This resource argument does not directly accept the cluster or standalone host resource. For more information, see the section on specifying the Root Resource Pool in the vsphere.ResourcePool data source documentation on using the root resource pool.

    alternateGuestName string

    The guest name for the operating system when guest_id is otherGuest or otherGuest64.

    annotation string

    A user-provided description of the virtual machine.

    bootDelay number

    The number of milliseconds to wait before starting the boot sequence. The default is no delay.

    bootRetryDelay number

    The number of milliseconds to wait before retrying the boot sequence. This option is only valid if boot_retry_enabled is true. Default: 10000 (10 seconds).

    bootRetryEnabled boolean

    If set to true, a virtual machine that fails to boot will try again after the delay defined in boot_retry_delay. Default: false.

    cdroms VirtualMachineCdrom[]

    A specification for a CD-ROM device on the virtual machine. See CD-ROM options for more information.

    clone VirtualMachineClone

    When specified, the virtual machine will be created as a clone of a specified template. Optional customization options can be submitted for the resource. See creating a virtual machine from a template for more information.

    cpuHotAddEnabled boolean

    Allow CPUs to be added to the virtual machine while it is powered on.

    cpuHotRemoveEnabled boolean

    Allow CPUs to be removed to the virtual machine while it is powered on.

    cpuLimit number

    The maximum amount of CPU (in MHz) that the virtual machine can consume, regardless of available resources. The default is no limit.

    cpuPerformanceCountersEnabled boolean

    Enable CPU performance counters on the virtual machine. Default: false.

    cpuReservation number

    The amount of CPU (in MHz) that the virtual machine is guaranteed. The default is no reservation.

    cpuShareCount number

    The number of CPU shares allocated to the virtual machine when the cpu_share_level is custom.

    cpuShareLevel string

    The allocation level for the virtual machine CPU resources. One of high, low, normal, or custom. Default: custom.

    customAttributes {[key: string]: string}

    Map of custom attribute ids to attribute value strings to set for virtual machine. Please refer to the vsphere_custom_attributes resource for more information on setting custom attributes.

    NOTE: Custom attributes requires vCenter Server and is not supported on direct ESXi host connections.

    datacenterId string

    The datacenter ID. Required only when deploying an OVF/OVA template.

    datastoreClusterId string

    The managed object reference ID of the datastore cluster in which to place the virtual machine. This setting applies to entire virtual machine and implies that you wish to use vSphere Storage DRS with the virtual machine. See the section on virtual machine migration for more information on modifying this value.

    NOTE: One of datastore_id or datastore_cluster_id must be specified.

    NOTE: Use of datastore_cluster_id requires vSphere Storage DRS to be enabled on the specified datastore cluster.

    NOTE: The datastore_cluster_id setting applies to the entire virtual machine resource. You cannot assign individual individual disks to datastore clusters. In addition, you cannot use the attach setting to attach external disks on virtual machines that are assigned to datastore clusters.

    datastoreId string

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    disks VirtualMachineDisk[]

    A specification for a virtual disk device on the virtual machine. See disk options for more information.

    efiSecureBootEnabled boolean

    Use this option to enable EFI secure boot when the firmware type is set to is efi. Default: false.

    NOTE: EFI secure boot is only available on vSphere 6.5 and later.

    enableDiskUuid boolean

    Expose the UUIDs of attached virtual disks to the virtual machine, allowing access to them in the guest. Default: false.

    enableLogging boolean

    Enable logging of virtual machine events to a log file stored in the virtual machine directory. Default: false.

    eptRviMode string

    The EPT/RVI (hardware memory virtualization) setting for the virtual machine. One of automatic, on, or off. Default: automatic.

    extraConfig {[key: string]: string}

    Extra configuration data for the virtual machine. Can be used to supply advanced parameters not normally in configuration, such as instance metadata and userdata.

    NOTE: Do not use extra_config when working with a template imported from OVF/OVA as your settings may be ignored. Use the vapp block properties section as described in Using vApp Properties for OVF/OVA Configuration.

    extraConfigRebootRequired boolean

    Allow the virtual machine to be rebooted when a change to extra_config occurs. Default: true.

    firmware string

    The firmware for the virtual machine. One of bios or efi.

    folder string

    The path to the virtual machine folder in which to place the virtual machine, relative to the datacenter path (/<datacenter-name>/vm). For example, /dc-01/vm/foo

    forcePowerOff boolean

    If a guest shutdown failed or times out while updating or destroying (see shutdown_wait_timeout), force the power-off of the virtual machine. Default: true.

    guestId string

    The guest ID for the operating system type. For a full list of possible values, see here. Default: otherGuest64.

    hardwareVersion number

    The hardware version number. Valid range is from 4 to 21. The hardware version cannot be downgraded. See virtual machine hardware versions and compatibility for more information on supported settings.

    hostSystemId string

    The managed object reference ID of a host on which to place the virtual machine. See the section on virtual machine migration for more information on modifying this value. When using a vSphere cluster, if a host_system_id is not supplied, vSphere will select a host in the cluster to place the virtual machine, according to any defaults or vSphere DRS placement policies.

    hvMode string

    The hardware virtualization (non-nested) setting for the virtual machine. One of hvAuto, hvOn, or hvOff. Default: hvAuto.

    ideControllerCount number

    The number of IDE controllers that the virtual machine. This directly affects the number 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: 2.

    ignoredGuestIps string[]

    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 so that the waiter will continue to wait for a valid IP address. Default: [].

    latencySensitivity string

    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. One of low, normal, medium, or high.

    NOTE: On higher sensitivities, you may need to adjust the memory_reservation to the full amount of memory provisioned for the virtual machine.

    memory number

    The memory size to assign to the virtual machine, in MB. Default: 1024 (1 GB).

    memoryHotAddEnabled boolean

    Allow memory to be added to the virtual machine while it is powered on.

    NOTE: CPU and memory hot add options are not available on all guest operating systems. Please refer to the VMware Guest OS Compatibility Guide to which settings are allow for your guest operating system. In addition, at least one pulumi up must be run before you are able to use CPU and memory hot add.

    NOTE: For Linux 64-bit guest operating systems with less than or equal to 3GB, the virtual machine must powered off to add memory beyond 3GB. Subsequent hot add of memory does not require the virtual machine to be powered-off to apply the plan. Please refer to VMware KB 2008405.

    memoryLimit number

    The maximum amount of memory (in MB) that th virtual machine can consume, regardless of available resources. The default is no limit.

    memoryReservation number

    The amount of memory (in MB) that the virtual machine is guaranteed. The default is no reservation.

    memoryShareCount number

    The number of memory shares allocated to the virtual machine when the memory_share_level is custom.

    memoryShareLevel string

    The allocation level for the virtual machine memory resources. One of high, low, normal, or custom. Default: custom.

    migrateWaitTimeout number

    The amount of time, in minutes, to wait for a virtual machine migration to complete before failing. Default: 10 minutes. See the section on virtual machine migration for more information.

    name string

    The name of the virtual machine.

    nestedHvEnabled boolean

    Enable nested hardware virtualization on the virtual machine, facilitating nested virtualization in the guest operating system. Default: false.

    networkInterfaces VirtualMachineNetworkInterface[]

    A specification for a virtual NIC on the virtual machine. See network interface options for more information.

    numCoresPerSocket number

    The number of cores per socket in the 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.

    numCpus number

    The total number of virtual processor cores to assign to the virtual machine. Default: 1.

    ovfDeploy VirtualMachineOvfDeploy

    When specified, the virtual machine will be deployed from the provided OVF/OVA template. See creating a virtual machine from an OVF/OVA template for more information.

    pciDeviceIds string[]

    List of host PCI device IDs in which to create PCI passthroughs.

    NOTE: Cloning requires vCenter Server and is not supported on direct ESXi host connections.

    poweronTimeout number

    The amount of time, in seconds, that we will be trying to power on a VM

    replaceTrigger string

    Triggers replacement of resource whenever it changes.

    For example, replace_trigger = sha256(format("%s-%s",data.template_file.cloud_init_metadata.rendered,data.template_file.cloud_init_userdata.rendered)) will fingerprint the changes in cloud-init metadata and userdata templates. This will enable a replacement of the resource whenever the dependant template renders a new configuration. (Forces a replacement.)

    runToolsScriptsAfterPowerOn boolean

    Enable post-power-on scripts to run when VMware Tools is installed. Default: true.

    runToolsScriptsAfterResume boolean

    Enable ost-resume scripts to run when VMware Tools is installed. Default: true.

    runToolsScriptsBeforeGuestReboot boolean

    Enable pre-reboot scripts to run when VMware Tools is installed. Default: false.

    runToolsScriptsBeforeGuestShutdown boolean

    Enable pre-shutdown scripts to run when VMware Tools is installed. Default: true.

    runToolsScriptsBeforeGuestStandby boolean

    Enable pre-standby scripts to run when VMware Tools is installed. Default: true.

    sataControllerCount number

    The number of SATA controllers that Terraform 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.

    scsiBusSharing string

    The type of SCSI bus sharing for the virtual machine SCSI controller. One of physicalSharing, virtualSharing, and noSharing. Default: noSharing.

    scsiControllerCount number

    The number of SCSI controllers that Terraform 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.

    scsiType string

    The SCSI controller type for the virtual machine. One of lsilogic (LSI Logic Parallel), lsilogic-sas (LSI Logic SAS) or pvscsi (VMware Paravirtual). Default: pvscsi.

    shutdownWaitTimeout number

    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 virtual machine will be forced to power-off after the timeout, otherwise an error is returned. Default: 3 minutes.

    storagePolicyId string

    The UUID of the storage policy to assign to the virtual disk.

    swapPlacementPolicy string

    The swap file placement policy for the virtual machine. One of inherit, hostLocal, or vmDirectory. Default: inherit.

    syncTimeWithHost boolean

    Enable the guest operating system to synchronization its clock with the host when the virtual machine is powered on or resumed. Requires vSphere 7.0 Update 1 and later. Requires VMware Tools to be installed. Default: false.

    syncTimeWithHostPeriodically boolean

    Enable the guest operating system to periodically synchronize its clock with the host. Requires vSphere 7.0 Update 1 and later. On previous versions, setting sync_time_with_host is will enable periodic synchronization. Requires VMware Tools to be installed. Default: false.

    tags string[]

    The IDs of any tags to attach to this resource. Please refer to the vsphere.Tag resource for more information on applying tags to virtual machine resources.

    NOTE: Tagging support is unsupported on direct ESXi host connections and requires vCenter Server instance.

    toolsUpgradePolicy string

    Enable automatic upgrade of the VMware Tools version when the virtual machine is rebooted. If necessary, VMware Tools is upgraded to the latest version supported by the host on which the virtual machine is running. Requires VMware Tools to be installed. One of manual or upgradeAtPowerCycle. Default: manual.

    vapp VirtualMachineVapp

    Used for vApp configurations. The only sub-key available is properties, which is a key/value map of properties for virtual machines imported from and OVF/OVA. See Using vApp Properties for OVF/OVA Configuration for more information.

    vbsEnabled boolean

    Enable Virtualization Based Security. Requires firmware to be efi. In addition, vvtd_enabled, nested_hv_enabled, and efi_secure_boot_enabled must all have a value of true. Supported on vSphere 6.7 and later. Default: false.

    vvtdEnabled boolean

    Enable Intel Virtualization Technology for Directed I/O for the virtual machine (I/O MMU in the vSphere Client). Supported on vSphere 6.7 and later. Default: false.

    waitForGuestIpTimeout number

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. This should only be used if the version 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.

    waitForGuestNetRoutable boolean

    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.

    waitForGuestNetTimeout number

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. 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.

    resource_pool_id str

    The managed object reference ID of the resource pool in which to place the virtual machine. See the Virtual Machine Migration section for more information on modifying this value.

    NOTE: All clusters and standalone hosts have a default root resource pool. This resource argument does not directly accept the cluster or standalone host resource. For more information, see the section on specifying the Root Resource Pool in the vsphere.ResourcePool data source documentation on using the root resource pool.

    alternate_guest_name str

    The guest name for the operating system when guest_id is otherGuest or otherGuest64.

    annotation str

    A user-provided description of the virtual machine.

    boot_delay int

    The number of milliseconds to wait before starting the boot sequence. The default is no delay.

    boot_retry_delay int

    The number of milliseconds to wait before retrying the boot sequence. This option is only valid if boot_retry_enabled is true. Default: 10000 (10 seconds).

    boot_retry_enabled bool

    If set to true, a virtual machine that fails to boot will try again after the delay defined in boot_retry_delay. Default: false.

    cdroms Sequence[VirtualMachineCdromArgs]

    A specification for a CD-ROM device on the virtual machine. See CD-ROM options for more information.

    clone VirtualMachineCloneArgs

    When specified, the virtual machine will be created as a clone of a specified template. Optional customization options can be submitted for the resource. See creating a virtual machine from a template for more information.

    cpu_hot_add_enabled bool

    Allow CPUs to be added to the virtual machine while it is powered on.

    cpu_hot_remove_enabled bool

    Allow CPUs to be removed to the virtual machine while it is powered on.

    cpu_limit int

    The maximum amount of CPU (in MHz) that the virtual machine can consume, regardless of available resources. The default is no limit.

    cpu_performance_counters_enabled bool

    Enable CPU performance counters on the virtual machine. Default: false.

    cpu_reservation int

    The amount of CPU (in MHz) that the virtual machine is guaranteed. The default is no reservation.

    cpu_share_count int

    The number of CPU shares allocated to the virtual machine when the cpu_share_level is custom.

    cpu_share_level str

    The allocation level for the virtual machine CPU resources. One of high, low, normal, or custom. Default: custom.

    custom_attributes Mapping[str, str]

    Map of custom attribute ids to attribute value strings to set for virtual machine. Please refer to the vsphere_custom_attributes resource for more information on setting custom attributes.

    NOTE: Custom attributes requires vCenter Server and is not supported on direct ESXi host connections.

    datacenter_id str

    The datacenter ID. Required only when deploying an OVF/OVA template.

    datastore_cluster_id str

    The managed object reference ID of the datastore cluster in which to place the virtual machine. This setting applies to entire virtual machine and implies that you wish to use vSphere Storage DRS with the virtual machine. See the section on virtual machine migration for more information on modifying this value.

    NOTE: One of datastore_id or datastore_cluster_id must be specified.

    NOTE: Use of datastore_cluster_id requires vSphere Storage DRS to be enabled on the specified datastore cluster.

    NOTE: The datastore_cluster_id setting applies to the entire virtual machine resource. You cannot assign individual individual disks to datastore clusters. In addition, you cannot use the attach setting to attach external disks on virtual machines that are assigned to datastore clusters.

    datastore_id str

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    disks Sequence[VirtualMachineDiskArgs]

    A specification for a virtual disk device on the virtual machine. See disk options for more information.

    efi_secure_boot_enabled bool

    Use this option to enable EFI secure boot when the firmware type is set to is efi. Default: false.

    NOTE: EFI secure boot is only available on vSphere 6.5 and later.

    enable_disk_uuid bool

    Expose the UUIDs of attached virtual disks to the virtual machine, allowing access to them in the guest. Default: false.

    enable_logging bool

    Enable logging of virtual machine events to a log file stored in the virtual machine directory. Default: false.

    ept_rvi_mode str

    The EPT/RVI (hardware memory virtualization) setting for the virtual machine. One of automatic, on, or off. Default: automatic.

    extra_config Mapping[str, str]

    Extra configuration data for the virtual machine. Can be used to supply advanced parameters not normally in configuration, such as instance metadata and userdata.

    NOTE: Do not use extra_config when working with a template imported from OVF/OVA as your settings may be ignored. Use the vapp block properties section as described in Using vApp Properties for OVF/OVA Configuration.

    extra_config_reboot_required bool

    Allow the virtual machine to be rebooted when a change to extra_config occurs. Default: true.

    firmware str

    The firmware for the virtual machine. One of bios or efi.

    folder str

    The path to the virtual machine folder in which to place the virtual machine, relative to the datacenter path (/<datacenter-name>/vm). For example, /dc-01/vm/foo

    force_power_off bool

    If a guest shutdown failed or times out while updating or destroying (see shutdown_wait_timeout), force the power-off of the virtual machine. Default: true.

    guest_id str

    The guest ID for the operating system type. For a full list of possible values, see here. Default: otherGuest64.

    hardware_version int

    The hardware version number. Valid range is from 4 to 21. The hardware version cannot be downgraded. See virtual machine hardware versions and compatibility for more information on supported settings.

    host_system_id str

    The managed object reference ID of a host on which to place the virtual machine. See the section on virtual machine migration for more information on modifying this value. When using a vSphere cluster, if a host_system_id is not supplied, vSphere will select a host in the cluster to place the virtual machine, according to any defaults or vSphere DRS placement policies.

    hv_mode str

    The hardware virtualization (non-nested) setting for the virtual machine. One of hvAuto, hvOn, or hvOff. Default: hvAuto.

    ide_controller_count int

    The number of IDE controllers that the virtual machine. This directly affects the number 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: 2.

    ignored_guest_ips Sequence[str]

    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 so that the waiter will continue to wait for a valid IP address. Default: [].

    latency_sensitivity str

    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. One of low, normal, medium, or high.

    NOTE: On higher sensitivities, you may need to adjust the memory_reservation to the full amount of memory provisioned for the virtual machine.

    memory int

    The memory size to assign to the virtual machine, in MB. Default: 1024 (1 GB).

    memory_hot_add_enabled bool

    Allow memory to be added to the virtual machine while it is powered on.

    NOTE: CPU and memory hot add options are not available on all guest operating systems. Please refer to the VMware Guest OS Compatibility Guide to which settings are allow for your guest operating system. In addition, at least one pulumi up must be run before you are able to use CPU and memory hot add.

    NOTE: For Linux 64-bit guest operating systems with less than or equal to 3GB, the virtual machine must powered off to add memory beyond 3GB. Subsequent hot add of memory does not require the virtual machine to be powered-off to apply the plan. Please refer to VMware KB 2008405.

    memory_limit int

    The maximum amount of memory (in MB) that th virtual machine can consume, regardless of available resources. The default is no limit.

    memory_reservation int

    The amount of memory (in MB) that the virtual machine is guaranteed. The default is no reservation.

    memory_share_count int

    The number of memory shares allocated to the virtual machine when the memory_share_level is custom.

    memory_share_level str

    The allocation level for the virtual machine memory resources. One of high, low, normal, or custom. Default: custom.

    migrate_wait_timeout int

    The amount of time, in minutes, to wait for a virtual machine migration to complete before failing. Default: 10 minutes. See the section on virtual machine migration for more information.

    name str

    The name of the virtual machine.

    nested_hv_enabled bool

    Enable nested hardware virtualization on the virtual machine, facilitating nested virtualization in the guest operating system. Default: false.

    network_interfaces Sequence[VirtualMachineNetworkInterfaceArgs]

    A specification for a virtual NIC on the virtual machine. See network interface options for more information.

    num_cores_per_socket int

    The number of cores per socket in the 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.

    num_cpus int

    The total number of virtual processor cores to assign to the virtual machine. Default: 1.

    ovf_deploy VirtualMachineOvfDeployArgs

    When specified, the virtual machine will be deployed from the provided OVF/OVA template. See creating a virtual machine from an OVF/OVA template for more information.

    pci_device_ids Sequence[str]

    List of host PCI device IDs in which to create PCI passthroughs.

    NOTE: Cloning requires vCenter Server and is not supported on direct ESXi host connections.

    poweron_timeout int

    The amount of time, in seconds, that we will be trying to power on a VM

    replace_trigger str

    Triggers replacement of resource whenever it changes.

    For example, replace_trigger = sha256(format("%s-%s",data.template_file.cloud_init_metadata.rendered,data.template_file.cloud_init_userdata.rendered)) will fingerprint the changes in cloud-init metadata and userdata templates. This will enable a replacement of the resource whenever the dependant template renders a new configuration. (Forces a replacement.)

    run_tools_scripts_after_power_on bool

    Enable post-power-on scripts to run when VMware Tools is installed. Default: true.

    run_tools_scripts_after_resume bool

    Enable ost-resume scripts to run when VMware Tools is installed. Default: true.

    run_tools_scripts_before_guest_reboot bool

    Enable pre-reboot scripts to run when VMware Tools is installed. Default: false.

    run_tools_scripts_before_guest_shutdown bool

    Enable pre-shutdown scripts to run when VMware Tools is installed. Default: true.

    run_tools_scripts_before_guest_standby bool

    Enable pre-standby scripts to run when VMware Tools is installed. Default: true.

    sata_controller_count int

    The number of SATA controllers that Terraform 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.

    scsi_bus_sharing str

    The type of SCSI bus sharing for the virtual machine SCSI controller. One of physicalSharing, virtualSharing, and noSharing. Default: noSharing.

    scsi_controller_count int

    The number of SCSI controllers that Terraform 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.

    scsi_type str

    The SCSI controller type for the virtual machine. One of lsilogic (LSI Logic Parallel), lsilogic-sas (LSI Logic SAS) or pvscsi (VMware Paravirtual). Default: pvscsi.

    shutdown_wait_timeout int

    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 virtual machine will be forced to power-off after the timeout, otherwise an error is returned. Default: 3 minutes.

    storage_policy_id str

    The UUID of the storage policy to assign to the virtual disk.

    swap_placement_policy str

    The swap file placement policy for the virtual machine. One of inherit, hostLocal, or vmDirectory. Default: inherit.

    sync_time_with_host bool

    Enable the guest operating system to synchronization its clock with the host when the virtual machine is powered on or resumed. Requires vSphere 7.0 Update 1 and later. Requires VMware Tools to be installed. Default: false.

    sync_time_with_host_periodically bool

    Enable the guest operating system to periodically synchronize its clock with the host. Requires vSphere 7.0 Update 1 and later. On previous versions, setting sync_time_with_host is will enable periodic synchronization. Requires VMware Tools to be installed. Default: false.

    tags Sequence[str]

    The IDs of any tags to attach to this resource. Please refer to the vsphere.Tag resource for more information on applying tags to virtual machine resources.

    NOTE: Tagging support is unsupported on direct ESXi host connections and requires vCenter Server instance.

    tools_upgrade_policy str

    Enable automatic upgrade of the VMware Tools version when the virtual machine is rebooted. If necessary, VMware Tools is upgraded to the latest version supported by the host on which the virtual machine is running. Requires VMware Tools to be installed. One of manual or upgradeAtPowerCycle. Default: manual.

    vapp VirtualMachineVappArgs

    Used for vApp configurations. The only sub-key available is properties, which is a key/value map of properties for virtual machines imported from and OVF/OVA. See Using vApp Properties for OVF/OVA Configuration for more information.

    vbs_enabled bool

    Enable Virtualization Based Security. Requires firmware to be efi. In addition, vvtd_enabled, nested_hv_enabled, and efi_secure_boot_enabled must all have a value of true. Supported on vSphere 6.7 and later. Default: false.

    vvtd_enabled bool

    Enable Intel Virtualization Technology for Directed I/O for the virtual machine (I/O MMU in the vSphere Client). Supported on vSphere 6.7 and later. Default: false.

    wait_for_guest_ip_timeout int

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. This should only be used if the version 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.

    wait_for_guest_net_routable bool

    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.

    wait_for_guest_net_timeout int

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. 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.

    resourcePoolId String

    The managed object reference ID of the resource pool in which to place the virtual machine. See the Virtual Machine Migration section for more information on modifying this value.

    NOTE: All clusters and standalone hosts have a default root resource pool. This resource argument does not directly accept the cluster or standalone host resource. For more information, see the section on specifying the Root Resource Pool in the vsphere.ResourcePool data source documentation on using the root resource pool.

    alternateGuestName String

    The guest name for the operating system when guest_id is otherGuest or otherGuest64.

    annotation String

    A user-provided description of the virtual machine.

    bootDelay Number

    The number of milliseconds to wait before starting the boot sequence. The default is no delay.

    bootRetryDelay Number

    The number of milliseconds to wait before retrying the boot sequence. This option is only valid if boot_retry_enabled is true. Default: 10000 (10 seconds).

    bootRetryEnabled Boolean

    If set to true, a virtual machine that fails to boot will try again after the delay defined in boot_retry_delay. Default: false.

    cdroms List<Property Map>

    A specification for a CD-ROM device on the virtual machine. See CD-ROM options for more information.

    clone Property Map

    When specified, the virtual machine will be created as a clone of a specified template. Optional customization options can be submitted for the resource. See creating a virtual machine from a template for more information.

    cpuHotAddEnabled Boolean

    Allow CPUs to be added to the virtual machine while it is powered on.

    cpuHotRemoveEnabled Boolean

    Allow CPUs to be removed to the virtual machine while it is powered on.

    cpuLimit Number

    The maximum amount of CPU (in MHz) that the virtual machine can consume, regardless of available resources. The default is no limit.

    cpuPerformanceCountersEnabled Boolean

    Enable CPU performance counters on the virtual machine. Default: false.

    cpuReservation Number

    The amount of CPU (in MHz) that the virtual machine is guaranteed. The default is no reservation.

    cpuShareCount Number

    The number of CPU shares allocated to the virtual machine when the cpu_share_level is custom.

    cpuShareLevel String

    The allocation level for the virtual machine CPU resources. One of high, low, normal, or custom. Default: custom.

    customAttributes Map<String>

    Map of custom attribute ids to attribute value strings to set for virtual machine. Please refer to the vsphere_custom_attributes resource for more information on setting custom attributes.

    NOTE: Custom attributes requires vCenter Server and is not supported on direct ESXi host connections.

    datacenterId String

    The datacenter ID. Required only when deploying an OVF/OVA template.

    datastoreClusterId String

    The managed object reference ID of the datastore cluster in which to place the virtual machine. This setting applies to entire virtual machine and implies that you wish to use vSphere Storage DRS with the virtual machine. See the section on virtual machine migration for more information on modifying this value.

    NOTE: One of datastore_id or datastore_cluster_id must be specified.

    NOTE: Use of datastore_cluster_id requires vSphere Storage DRS to be enabled on the specified datastore cluster.

    NOTE: The datastore_cluster_id setting applies to the entire virtual machine resource. You cannot assign individual individual disks to datastore clusters. In addition, you cannot use the attach setting to attach external disks on virtual machines that are assigned to datastore clusters.

    datastoreId String

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    disks List<Property Map>

    A specification for a virtual disk device on the virtual machine. See disk options for more information.

    efiSecureBootEnabled Boolean

    Use this option to enable EFI secure boot when the firmware type is set to is efi. Default: false.

    NOTE: EFI secure boot is only available on vSphere 6.5 and later.

    enableDiskUuid Boolean

    Expose the UUIDs of attached virtual disks to the virtual machine, allowing access to them in the guest. Default: false.

    enableLogging Boolean

    Enable logging of virtual machine events to a log file stored in the virtual machine directory. Default: false.

    eptRviMode String

    The EPT/RVI (hardware memory virtualization) setting for the virtual machine. One of automatic, on, or off. Default: automatic.

    extraConfig Map<String>

    Extra configuration data for the virtual machine. Can be used to supply advanced parameters not normally in configuration, such as instance metadata and userdata.

    NOTE: Do not use extra_config when working with a template imported from OVF/OVA as your settings may be ignored. Use the vapp block properties section as described in Using vApp Properties for OVF/OVA Configuration.

    extraConfigRebootRequired Boolean

    Allow the virtual machine to be rebooted when a change to extra_config occurs. Default: true.

    firmware String

    The firmware for the virtual machine. One of bios or efi.

    folder String

    The path to the virtual machine folder in which to place the virtual machine, relative to the datacenter path (/<datacenter-name>/vm). For example, /dc-01/vm/foo

    forcePowerOff Boolean

    If a guest shutdown failed or times out while updating or destroying (see shutdown_wait_timeout), force the power-off of the virtual machine. Default: true.

    guestId String

    The guest ID for the operating system type. For a full list of possible values, see here. Default: otherGuest64.

    hardwareVersion Number

    The hardware version number. Valid range is from 4 to 21. The hardware version cannot be downgraded. See virtual machine hardware versions and compatibility for more information on supported settings.

    hostSystemId String

    The managed object reference ID of a host on which to place the virtual machine. See the section on virtual machine migration for more information on modifying this value. When using a vSphere cluster, if a host_system_id is not supplied, vSphere will select a host in the cluster to place the virtual machine, according to any defaults or vSphere DRS placement policies.

    hvMode String

    The hardware virtualization (non-nested) setting for the virtual machine. One of hvAuto, hvOn, or hvOff. Default: hvAuto.

    ideControllerCount Number

    The number of IDE controllers that the virtual machine. This directly affects the number 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: 2.

    ignoredGuestIps List<String>

    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 so that the waiter will continue to wait for a valid IP address. Default: [].

    latencySensitivity String

    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. One of low, normal, medium, or high.

    NOTE: On higher sensitivities, you may need to adjust the memory_reservation to the full amount of memory provisioned for the virtual machine.

    memory Number

    The memory size to assign to the virtual machine, in MB. Default: 1024 (1 GB).

    memoryHotAddEnabled Boolean

    Allow memory to be added to the virtual machine while it is powered on.

    NOTE: CPU and memory hot add options are not available on all guest operating systems. Please refer to the VMware Guest OS Compatibility Guide to which settings are allow for your guest operating system. In addition, at least one pulumi up must be run before you are able to use CPU and memory hot add.

    NOTE: For Linux 64-bit guest operating systems with less than or equal to 3GB, the virtual machine must powered off to add memory beyond 3GB. Subsequent hot add of memory does not require the virtual machine to be powered-off to apply the plan. Please refer to VMware KB 2008405.

    memoryLimit Number

    The maximum amount of memory (in MB) that th virtual machine can consume, regardless of available resources. The default is no limit.

    memoryReservation Number

    The amount of memory (in MB) that the virtual machine is guaranteed. The default is no reservation.

    memoryShareCount Number

    The number of memory shares allocated to the virtual machine when the memory_share_level is custom.

    memoryShareLevel String

    The allocation level for the virtual machine memory resources. One of high, low, normal, or custom. Default: custom.

    migrateWaitTimeout Number

    The amount of time, in minutes, to wait for a virtual machine migration to complete before failing. Default: 10 minutes. See the section on virtual machine migration for more information.

    name String

    The name of the virtual machine.

    nestedHvEnabled Boolean

    Enable nested hardware virtualization on the virtual machine, facilitating nested virtualization in the guest operating system. Default: false.

    networkInterfaces List<Property Map>

    A specification for a virtual NIC on the virtual machine. See network interface options for more information.

    numCoresPerSocket Number

    The number of cores per socket in the 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.

    numCpus Number

    The total number of virtual processor cores to assign to the virtual machine. Default: 1.

    ovfDeploy Property Map

    When specified, the virtual machine will be deployed from the provided OVF/OVA template. See creating a virtual machine from an OVF/OVA template for more information.

    pciDeviceIds List<String>

    List of host PCI device IDs in which to create PCI passthroughs.

    NOTE: Cloning requires vCenter Server and is not supported on direct ESXi host connections.

    poweronTimeout Number

    The amount of time, in seconds, that we will be trying to power on a VM

    replaceTrigger String

    Triggers replacement of resource whenever it changes.

    For example, replace_trigger = sha256(format("%s-%s",data.template_file.cloud_init_metadata.rendered,data.template_file.cloud_init_userdata.rendered)) will fingerprint the changes in cloud-init metadata and userdata templates. This will enable a replacement of the resource whenever the dependant template renders a new configuration. (Forces a replacement.)

    runToolsScriptsAfterPowerOn Boolean

    Enable post-power-on scripts to run when VMware Tools is installed. Default: true.

    runToolsScriptsAfterResume Boolean

    Enable ost-resume scripts to run when VMware Tools is installed. Default: true.

    runToolsScriptsBeforeGuestReboot Boolean

    Enable pre-reboot scripts to run when VMware Tools is installed. Default: false.

    runToolsScriptsBeforeGuestShutdown Boolean

    Enable pre-shutdown scripts to run when VMware Tools is installed. Default: true.

    runToolsScriptsBeforeGuestStandby Boolean

    Enable pre-standby scripts to run when VMware Tools is installed. Default: true.

    sataControllerCount Number

    The number of SATA controllers that Terraform 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.

    scsiBusSharing String

    The type of SCSI bus sharing for the virtual machine SCSI controller. One of physicalSharing, virtualSharing, and noSharing. Default: noSharing.

    scsiControllerCount Number

    The number of SCSI controllers that Terraform 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.

    scsiType String

    The SCSI controller type for the virtual machine. One of lsilogic (LSI Logic Parallel), lsilogic-sas (LSI Logic SAS) or pvscsi (VMware Paravirtual). Default: pvscsi.

    shutdownWaitTimeout Number

    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 virtual machine will be forced to power-off after the timeout, otherwise an error is returned. Default: 3 minutes.

    storagePolicyId String

    The UUID of the storage policy to assign to the virtual disk.

    swapPlacementPolicy String

    The swap file placement policy for the virtual machine. One of inherit, hostLocal, or vmDirectory. Default: inherit.

    syncTimeWithHost Boolean

    Enable the guest operating system to synchronization its clock with the host when the virtual machine is powered on or resumed. Requires vSphere 7.0 Update 1 and later. Requires VMware Tools to be installed. Default: false.

    syncTimeWithHostPeriodically Boolean

    Enable the guest operating system to periodically synchronize its clock with the host. Requires vSphere 7.0 Update 1 and later. On previous versions, setting sync_time_with_host is will enable periodic synchronization. Requires VMware Tools to be installed. Default: false.

    tags List<String>

    The IDs of any tags to attach to this resource. Please refer to the vsphere.Tag resource for more information on applying tags to virtual machine resources.

    NOTE: Tagging support is unsupported on direct ESXi host connections and requires vCenter Server instance.

    toolsUpgradePolicy String

    Enable automatic upgrade of the VMware Tools version when the virtual machine is rebooted. If necessary, VMware Tools is upgraded to the latest version supported by the host on which the virtual machine is running. Requires VMware Tools to be installed. One of manual or upgradeAtPowerCycle. Default: manual.

    vapp Property Map

    Used for vApp configurations. The only sub-key available is properties, which is a key/value map of properties for virtual machines imported from and OVF/OVA. See Using vApp Properties for OVF/OVA Configuration for more information.

    vbsEnabled Boolean

    Enable Virtualization Based Security. Requires firmware to be efi. In addition, vvtd_enabled, nested_hv_enabled, and efi_secure_boot_enabled must all have a value of true. Supported on vSphere 6.7 and later. Default: false.

    vvtdEnabled Boolean

    Enable Intel Virtualization Technology for Directed I/O for the virtual machine (I/O MMU in the vSphere Client). Supported on vSphere 6.7 and later. Default: false.

    waitForGuestIpTimeout Number

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. This should only be used if the version 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.

    waitForGuestNetRoutable Boolean

    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.

    waitForGuestNetTimeout Number

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. 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.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the VirtualMachine resource produces the following output properties:

    ChangeVersion string

    A unique identifier for a given version of the last configuration was applied.

    DefaultIpAddress string

    The IP address selected by the provider to be used with any provisioners configured on this resource. When possible, this is the first IPv4 address that is reachable through the default gateway configured on the machine, then the first reachable IPv6 address, and then the first general discovered address if neither exists. If VMware Tools is not running on the virtual machine, or if the virtual machine is powered off, this value will be blank.

    GuestIpAddresses List<string>

    The current list of IP addresses on this machine, including the value of default_ip_address. If VMware Tools is not running on the virtual machine, or if the virtul machine is powered off, this list will be empty.

    Id string

    The provider-assigned unique ID for this managed resource.

    Imported bool

    Indicates if the virtual machine resource has been imported, or if the state has been migrated from a previous version of the resource. It influences the behavior of the first post-import apply operation. See the section on importing below.

    Moid string

    The managed object reference ID of the created virtual machine.

    PowerState string

    A computed value for the current power state of the virtual machine. One of on, off, or suspended.

    RebootRequired bool

    Value internal to Terraform used to determine if a configuration set change requires a reboot.

    Uuid string

    The UUID of the virtual disk VMDK file. This is used to track the virtual disk on the virtual machine.

    VappTransports List<string>

    Computed value which is only valid for cloned virtual machines. A list of vApp transport methods supported by the source virtual machine or template.

    VmwareToolsStatus string

    The state of VMware Tools in the guest. This will determine the proper course of action for some device operations.

    VmxPath string

    The path of the virtual machine configuration file on the datastore in which the virtual machine is placed.

    ChangeVersion string

    A unique identifier for a given version of the last configuration was applied.

    DefaultIpAddress string

    The IP address selected by the provider to be used with any provisioners configured on this resource. When possible, this is the first IPv4 address that is reachable through the default gateway configured on the machine, then the first reachable IPv6 address, and then the first general discovered address if neither exists. If VMware Tools is not running on the virtual machine, or if the virtual machine is powered off, this value will be blank.

    GuestIpAddresses []string

    The current list of IP addresses on this machine, including the value of default_ip_address. If VMware Tools is not running on the virtual machine, or if the virtul machine is powered off, this list will be empty.

    Id string

    The provider-assigned unique ID for this managed resource.

    Imported bool

    Indicates if the virtual machine resource has been imported, or if the state has been migrated from a previous version of the resource. It influences the behavior of the first post-import apply operation. See the section on importing below.

    Moid string

    The managed object reference ID of the created virtual machine.

    PowerState string

    A computed value for the current power state of the virtual machine. One of on, off, or suspended.

    RebootRequired bool

    Value internal to Terraform used to determine if a configuration set change requires a reboot.

    Uuid string

    The UUID of the virtual disk VMDK file. This is used to track the virtual disk on the virtual machine.

    VappTransports []string

    Computed value which is only valid for cloned virtual machines. A list of vApp transport methods supported by the source virtual machine or template.

    VmwareToolsStatus string

    The state of VMware Tools in the guest. This will determine the proper course of action for some device operations.

    VmxPath string

    The path of the virtual machine configuration file on the datastore in which the virtual machine is placed.

    changeVersion String

    A unique identifier for a given version of the last configuration was applied.

    defaultIpAddress String

    The IP address selected by the provider to be used with any provisioners configured on this resource. When possible, this is the first IPv4 address that is reachable through the default gateway configured on the machine, then the first reachable IPv6 address, and then the first general discovered address if neither exists. If VMware Tools is not running on the virtual machine, or if the virtual machine is powered off, this value will be blank.

    guestIpAddresses List<String>

    The current list of IP addresses on this machine, including the value of default_ip_address. If VMware Tools is not running on the virtual machine, or if the virtul machine is powered off, this list will be empty.

    id String

    The provider-assigned unique ID for this managed resource.

    imported Boolean

    Indicates if the virtual machine resource has been imported, or if the state has been migrated from a previous version of the resource. It influences the behavior of the first post-import apply operation. See the section on importing below.

    moid String

    The managed object reference ID of the created virtual machine.

    powerState String

    A computed value for the current power state of the virtual machine. One of on, off, or suspended.

    rebootRequired Boolean

    Value internal to Terraform used to determine if a configuration set change requires a reboot.

    uuid String

    The UUID of the virtual disk VMDK file. This is used to track the virtual disk on the virtual machine.

    vappTransports List<String>

    Computed value which is only valid for cloned virtual machines. A list of vApp transport methods supported by the source virtual machine or template.

    vmwareToolsStatus String

    The state of VMware Tools in the guest. This will determine the proper course of action for some device operations.

    vmxPath String

    The path of the virtual machine configuration file on the datastore in which the virtual machine is placed.

    changeVersion string

    A unique identifier for a given version of the last configuration was applied.

    defaultIpAddress string

    The IP address selected by the provider to be used with any provisioners configured on this resource. When possible, this is the first IPv4 address that is reachable through the default gateway configured on the machine, then the first reachable IPv6 address, and then the first general discovered address if neither exists. If VMware Tools is not running on the virtual machine, or if the virtual machine is powered off, this value will be blank.

    guestIpAddresses string[]

    The current list of IP addresses on this machine, including the value of default_ip_address. If VMware Tools is not running on the virtual machine, or if the virtul machine is powered off, this list will be empty.

    id string

    The provider-assigned unique ID for this managed resource.

    imported boolean

    Indicates if the virtual machine resource has been imported, or if the state has been migrated from a previous version of the resource. It influences the behavior of the first post-import apply operation. See the section on importing below.

    moid string

    The managed object reference ID of the created virtual machine.

    powerState string

    A computed value for the current power state of the virtual machine. One of on, off, or suspended.

    rebootRequired boolean

    Value internal to Terraform used to determine if a configuration set change requires a reboot.

    uuid string

    The UUID of the virtual disk VMDK file. This is used to track the virtual disk on the virtual machine.

    vappTransports string[]

    Computed value which is only valid for cloned virtual machines. A list of vApp transport methods supported by the source virtual machine or template.

    vmwareToolsStatus string

    The state of VMware Tools in the guest. This will determine the proper course of action for some device operations.

    vmxPath string

    The path of the virtual machine configuration file on the datastore in which the virtual machine is placed.

    change_version str

    A unique identifier for a given version of the last configuration was applied.

    default_ip_address str

    The IP address selected by the provider to be used with any provisioners configured on this resource. When possible, this is the first IPv4 address that is reachable through the default gateway configured on the machine, then the first reachable IPv6 address, and then the first general discovered address if neither exists. If VMware Tools is not running on the virtual machine, or if the virtual machine is powered off, this value will be blank.

    guest_ip_addresses Sequence[str]

    The current list of IP addresses on this machine, including the value of default_ip_address. If VMware Tools is not running on the virtual machine, or if the virtul machine is powered off, this list will be empty.

    id str

    The provider-assigned unique ID for this managed resource.

    imported bool

    Indicates if the virtual machine resource has been imported, or if the state has been migrated from a previous version of the resource. It influences the behavior of the first post-import apply operation. See the section on importing below.

    moid str

    The managed object reference ID of the created virtual machine.

    power_state str

    A computed value for the current power state of the virtual machine. One of on, off, or suspended.

    reboot_required bool

    Value internal to Terraform used to determine if a configuration set change requires a reboot.

    uuid str

    The UUID of the virtual disk VMDK file. This is used to track the virtual disk on the virtual machine.

    vapp_transports Sequence[str]

    Computed value which is only valid for cloned virtual machines. A list of vApp transport methods supported by the source virtual machine or template.

    vmware_tools_status str

    The state of VMware Tools in the guest. This will determine the proper course of action for some device operations.

    vmx_path str

    The path of the virtual machine configuration file on the datastore in which the virtual machine is placed.

    changeVersion String

    A unique identifier for a given version of the last configuration was applied.

    defaultIpAddress String

    The IP address selected by the provider to be used with any provisioners configured on this resource. When possible, this is the first IPv4 address that is reachable through the default gateway configured on the machine, then the first reachable IPv6 address, and then the first general discovered address if neither exists. If VMware Tools is not running on the virtual machine, or if the virtual machine is powered off, this value will be blank.

    guestIpAddresses List<String>

    The current list of IP addresses on this machine, including the value of default_ip_address. If VMware Tools is not running on the virtual machine, or if the virtul machine is powered off, this list will be empty.

    id String

    The provider-assigned unique ID for this managed resource.

    imported Boolean

    Indicates if the virtual machine resource has been imported, or if the state has been migrated from a previous version of the resource. It influences the behavior of the first post-import apply operation. See the section on importing below.

    moid String

    The managed object reference ID of the created virtual machine.

    powerState String

    A computed value for the current power state of the virtual machine. One of on, off, or suspended.

    rebootRequired Boolean

    Value internal to Terraform used to determine if a configuration set change requires a reboot.

    uuid String

    The UUID of the virtual disk VMDK file. This is used to track the virtual disk on the virtual machine.

    vappTransports List<String>

    Computed value which is only valid for cloned virtual machines. A list of vApp transport methods supported by the source virtual machine or template.

    vmwareToolsStatus String

    The state of VMware Tools in the guest. This will determine the proper course of action for some device operations.

    vmxPath String

    The path of the virtual machine configuration file on the datastore in which the virtual machine is placed.

    Look up Existing VirtualMachine Resource

    Get an existing VirtualMachine resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: VirtualMachineState, opts?: CustomResourceOptions): VirtualMachine
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            alternate_guest_name: Optional[str] = None,
            annotation: Optional[str] = None,
            boot_delay: Optional[int] = None,
            boot_retry_delay: Optional[int] = None,
            boot_retry_enabled: Optional[bool] = None,
            cdroms: Optional[Sequence[VirtualMachineCdromArgs]] = None,
            change_version: Optional[str] = None,
            clone: Optional[VirtualMachineCloneArgs] = None,
            cpu_hot_add_enabled: Optional[bool] = None,
            cpu_hot_remove_enabled: Optional[bool] = None,
            cpu_limit: Optional[int] = None,
            cpu_performance_counters_enabled: Optional[bool] = None,
            cpu_reservation: Optional[int] = None,
            cpu_share_count: Optional[int] = None,
            cpu_share_level: Optional[str] = None,
            custom_attributes: Optional[Mapping[str, str]] = None,
            datacenter_id: Optional[str] = None,
            datastore_cluster_id: Optional[str] = None,
            datastore_id: Optional[str] = None,
            default_ip_address: Optional[str] = None,
            disks: Optional[Sequence[VirtualMachineDiskArgs]] = None,
            efi_secure_boot_enabled: Optional[bool] = None,
            enable_disk_uuid: Optional[bool] = None,
            enable_logging: Optional[bool] = None,
            ept_rvi_mode: Optional[str] = None,
            extra_config: Optional[Mapping[str, str]] = None,
            extra_config_reboot_required: Optional[bool] = None,
            firmware: Optional[str] = None,
            folder: Optional[str] = None,
            force_power_off: Optional[bool] = None,
            guest_id: Optional[str] = None,
            guest_ip_addresses: Optional[Sequence[str]] = None,
            hardware_version: Optional[int] = None,
            host_system_id: Optional[str] = None,
            hv_mode: Optional[str] = None,
            ide_controller_count: Optional[int] = None,
            ignored_guest_ips: Optional[Sequence[str]] = None,
            imported: Optional[bool] = None,
            latency_sensitivity: Optional[str] = None,
            memory: Optional[int] = None,
            memory_hot_add_enabled: Optional[bool] = None,
            memory_limit: Optional[int] = None,
            memory_reservation: Optional[int] = None,
            memory_share_count: Optional[int] = None,
            memory_share_level: Optional[str] = None,
            migrate_wait_timeout: Optional[int] = None,
            moid: Optional[str] = None,
            name: Optional[str] = None,
            nested_hv_enabled: Optional[bool] = None,
            network_interfaces: Optional[Sequence[VirtualMachineNetworkInterfaceArgs]] = None,
            num_cores_per_socket: Optional[int] = None,
            num_cpus: Optional[int] = None,
            ovf_deploy: Optional[VirtualMachineOvfDeployArgs] = None,
            pci_device_ids: Optional[Sequence[str]] = None,
            power_state: Optional[str] = None,
            poweron_timeout: Optional[int] = None,
            reboot_required: Optional[bool] = None,
            replace_trigger: Optional[str] = None,
            resource_pool_id: Optional[str] = None,
            run_tools_scripts_after_power_on: Optional[bool] = None,
            run_tools_scripts_after_resume: Optional[bool] = None,
            run_tools_scripts_before_guest_reboot: Optional[bool] = None,
            run_tools_scripts_before_guest_shutdown: Optional[bool] = None,
            run_tools_scripts_before_guest_standby: Optional[bool] = None,
            sata_controller_count: Optional[int] = None,
            scsi_bus_sharing: Optional[str] = None,
            scsi_controller_count: Optional[int] = None,
            scsi_type: Optional[str] = None,
            shutdown_wait_timeout: Optional[int] = None,
            storage_policy_id: Optional[str] = None,
            swap_placement_policy: Optional[str] = None,
            sync_time_with_host: Optional[bool] = None,
            sync_time_with_host_periodically: Optional[bool] = None,
            tags: Optional[Sequence[str]] = None,
            tools_upgrade_policy: Optional[str] = None,
            uuid: Optional[str] = None,
            vapp: Optional[VirtualMachineVappArgs] = None,
            vapp_transports: Optional[Sequence[str]] = None,
            vbs_enabled: Optional[bool] = None,
            vmware_tools_status: Optional[str] = None,
            vmx_path: Optional[str] = None,
            vvtd_enabled: Optional[bool] = None,
            wait_for_guest_ip_timeout: Optional[int] = None,
            wait_for_guest_net_routable: Optional[bool] = None,
            wait_for_guest_net_timeout: Optional[int] = None) -> VirtualMachine
    func GetVirtualMachine(ctx *Context, name string, id IDInput, state *VirtualMachineState, opts ...ResourceOption) (*VirtualMachine, error)
    public static VirtualMachine Get(string name, Input<string> id, VirtualMachineState? state, CustomResourceOptions? opts = null)
    public static VirtualMachine get(String name, Output<String> id, VirtualMachineState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    AlternateGuestName string

    The guest name for the operating system when guest_id is otherGuest or otherGuest64.

    Annotation string

    A user-provided description of the virtual machine.

    BootDelay int

    The number of milliseconds to wait before starting the boot sequence. The default is no delay.

    BootRetryDelay int

    The number of milliseconds to wait before retrying the boot sequence. This option is only valid if boot_retry_enabled is true. Default: 10000 (10 seconds).

    BootRetryEnabled bool

    If set to true, a virtual machine that fails to boot will try again after the delay defined in boot_retry_delay. Default: false.

    Cdroms List<Pulumi.VSphere.Inputs.VirtualMachineCdrom>

    A specification for a CD-ROM device on the virtual machine. See CD-ROM options for more information.

    ChangeVersion string

    A unique identifier for a given version of the last configuration was applied.

    Clone Pulumi.VSphere.Inputs.VirtualMachineClone

    When specified, the virtual machine will be created as a clone of a specified template. Optional customization options can be submitted for the resource. See creating a virtual machine from a template for more information.

    CpuHotAddEnabled bool

    Allow CPUs to be added to the virtual machine while it is powered on.

    CpuHotRemoveEnabled bool

    Allow CPUs to be removed to the virtual machine while it is powered on.

    CpuLimit int

    The maximum amount of CPU (in MHz) that the virtual machine can consume, regardless of available resources. The default is no limit.

    CpuPerformanceCountersEnabled bool

    Enable CPU performance counters on the virtual machine. Default: false.

    CpuReservation int

    The amount of CPU (in MHz) that the virtual machine is guaranteed. The default is no reservation.

    CpuShareCount int

    The number of CPU shares allocated to the virtual machine when the cpu_share_level is custom.

    CpuShareLevel string

    The allocation level for the virtual machine CPU resources. One of high, low, normal, or custom. Default: custom.

    CustomAttributes Dictionary<string, string>

    Map of custom attribute ids to attribute value strings to set for virtual machine. Please refer to the vsphere_custom_attributes resource for more information on setting custom attributes.

    NOTE: Custom attributes requires vCenter Server and is not supported on direct ESXi host connections.

    DatacenterId string

    The datacenter ID. Required only when deploying an OVF/OVA template.

    DatastoreClusterId string

    The managed object reference ID of the datastore cluster in which to place the virtual machine. This setting applies to entire virtual machine and implies that you wish to use vSphere Storage DRS with the virtual machine. See the section on virtual machine migration for more information on modifying this value.

    NOTE: One of datastore_id or datastore_cluster_id must be specified.

    NOTE: Use of datastore_cluster_id requires vSphere Storage DRS to be enabled on the specified datastore cluster.

    NOTE: The datastore_cluster_id setting applies to the entire virtual machine resource. You cannot assign individual individual disks to datastore clusters. In addition, you cannot use the attach setting to attach external disks on virtual machines that are assigned to datastore clusters.

    DatastoreId string

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    DefaultIpAddress string

    The IP address selected by the provider to be used with any provisioners configured on this resource. When possible, this is the first IPv4 address that is reachable through the default gateway configured on the machine, then the first reachable IPv6 address, and then the first general discovered address if neither exists. If VMware Tools is not running on the virtual machine, or if the virtual machine is powered off, this value will be blank.

    Disks List<Pulumi.VSphere.Inputs.VirtualMachineDisk>

    A specification for a virtual disk device on the virtual machine. See disk options for more information.

    EfiSecureBootEnabled bool

    Use this option to enable EFI secure boot when the firmware type is set to is efi. Default: false.

    NOTE: EFI secure boot is only available on vSphere 6.5 and later.

    EnableDiskUuid bool

    Expose the UUIDs of attached virtual disks to the virtual machine, allowing access to them in the guest. Default: false.

    EnableLogging bool

    Enable logging of virtual machine events to a log file stored in the virtual machine directory. Default: false.

    EptRviMode string

    The EPT/RVI (hardware memory virtualization) setting for the virtual machine. One of automatic, on, or off. Default: automatic.

    ExtraConfig Dictionary<string, string>

    Extra configuration data for the virtual machine. Can be used to supply advanced parameters not normally in configuration, such as instance metadata and userdata.

    NOTE: Do not use extra_config when working with a template imported from OVF/OVA as your settings may be ignored. Use the vapp block properties section as described in Using vApp Properties for OVF/OVA Configuration.

    ExtraConfigRebootRequired bool

    Allow the virtual machine to be rebooted when a change to extra_config occurs. Default: true.

    Firmware string

    The firmware for the virtual machine. One of bios or efi.

    Folder string

    The path to the virtual machine folder in which to place the virtual machine, relative to the datacenter path (/<datacenter-name>/vm). For example, /dc-01/vm/foo

    ForcePowerOff bool

    If a guest shutdown failed or times out while updating or destroying (see shutdown_wait_timeout), force the power-off of the virtual machine. Default: true.

    GuestId string

    The guest ID for the operating system type. For a full list of possible values, see here. Default: otherGuest64.

    GuestIpAddresses List<string>

    The current list of IP addresses on this machine, including the value of default_ip_address. If VMware Tools is not running on the virtual machine, or if the virtul machine is powered off, this list will be empty.

    HardwareVersion int

    The hardware version number. Valid range is from 4 to 21. The hardware version cannot be downgraded. See virtual machine hardware versions and compatibility for more information on supported settings.

    HostSystemId string

    The managed object reference ID of a host on which to place the virtual machine. See the section on virtual machine migration for more information on modifying this value. When using a vSphere cluster, if a host_system_id is not supplied, vSphere will select a host in the cluster to place the virtual machine, according to any defaults or vSphere DRS placement policies.

    HvMode string

    The hardware virtualization (non-nested) setting for the virtual machine. One of hvAuto, hvOn, or hvOff. Default: hvAuto.

    IdeControllerCount int

    The number of IDE controllers that the virtual machine. This directly affects the number 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: 2.

    IgnoredGuestIps List<string>

    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 so that the waiter will continue to wait for a valid IP address. Default: [].

    Imported bool

    Indicates if the virtual machine resource has been imported, or if the state has been migrated from a previous version of the resource. It influences the behavior of the first post-import apply operation. See the section on importing below.

    LatencySensitivity string

    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. One of low, normal, medium, or high.

    NOTE: On higher sensitivities, you may need to adjust the memory_reservation to the full amount of memory provisioned for the virtual machine.

    Memory int

    The memory size to assign to the virtual machine, in MB. Default: 1024 (1 GB).

    MemoryHotAddEnabled bool

    Allow memory to be added to the virtual machine while it is powered on.

    NOTE: CPU and memory hot add options are not available on all guest operating systems. Please refer to the VMware Guest OS Compatibility Guide to which settings are allow for your guest operating system. In addition, at least one pulumi up must be run before you are able to use CPU and memory hot add.

    NOTE: For Linux 64-bit guest operating systems with less than or equal to 3GB, the virtual machine must powered off to add memory beyond 3GB. Subsequent hot add of memory does not require the virtual machine to be powered-off to apply the plan. Please refer to VMware KB 2008405.

    MemoryLimit int

    The maximum amount of memory (in MB) that th virtual machine can consume, regardless of available resources. The default is no limit.

    MemoryReservation int

    The amount of memory (in MB) that the virtual machine is guaranteed. The default is no reservation.

    MemoryShareCount int

    The number of memory shares allocated to the virtual machine when the memory_share_level is custom.

    MemoryShareLevel string

    The allocation level for the virtual machine memory resources. One of high, low, normal, or custom. Default: custom.

    MigrateWaitTimeout int

    The amount of time, in minutes, to wait for a virtual machine migration to complete before failing. Default: 10 minutes. See the section on virtual machine migration for more information.

    Moid string

    The managed object reference ID of the created virtual machine.

    Name string

    The name of the virtual machine.

    NestedHvEnabled bool

    Enable nested hardware virtualization on the virtual machine, facilitating nested virtualization in the guest operating system. Default: false.

    NetworkInterfaces List<Pulumi.VSphere.Inputs.VirtualMachineNetworkInterface>

    A specification for a virtual NIC on the virtual machine. See network interface options for more information.

    NumCoresPerSocket int

    The number of cores per socket in the 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.

    NumCpus int

    The total number of virtual processor cores to assign to the virtual machine. Default: 1.

    OvfDeploy Pulumi.VSphere.Inputs.VirtualMachineOvfDeploy

    When specified, the virtual machine will be deployed from the provided OVF/OVA template. See creating a virtual machine from an OVF/OVA template for more information.

    PciDeviceIds List<string>

    List of host PCI device IDs in which to create PCI passthroughs.

    NOTE: Cloning requires vCenter Server and is not supported on direct ESXi host connections.

    PowerState string

    A computed value for the current power state of the virtual machine. One of on, off, or suspended.

    PoweronTimeout int

    The amount of time, in seconds, that we will be trying to power on a VM

    RebootRequired bool

    Value internal to Terraform used to determine if a configuration set change requires a reboot.

    ReplaceTrigger string

    Triggers replacement of resource whenever it changes.

    For example, replace_trigger = sha256(format("%s-%s",data.template_file.cloud_init_metadata.rendered,data.template_file.cloud_init_userdata.rendered)) will fingerprint the changes in cloud-init metadata and userdata templates. This will enable a replacement of the resource whenever the dependant template renders a new configuration. (Forces a replacement.)

    ResourcePoolId string

    The managed object reference ID of the resource pool in which to place the virtual machine. See the Virtual Machine Migration section for more information on modifying this value.

    NOTE: All clusters and standalone hosts have a default root resource pool. This resource argument does not directly accept the cluster or standalone host resource. For more information, see the section on specifying the Root Resource Pool in the vsphere.ResourcePool data source documentation on using the root resource pool.

    RunToolsScriptsAfterPowerOn bool

    Enable post-power-on scripts to run when VMware Tools is installed. Default: true.

    RunToolsScriptsAfterResume bool

    Enable ost-resume scripts to run when VMware Tools is installed. Default: true.

    RunToolsScriptsBeforeGuestReboot bool

    Enable pre-reboot scripts to run when VMware Tools is installed. Default: false.

    RunToolsScriptsBeforeGuestShutdown bool

    Enable pre-shutdown scripts to run when VMware Tools is installed. Default: true.

    RunToolsScriptsBeforeGuestStandby bool

    Enable pre-standby scripts to run when VMware Tools is installed. Default: true.

    SataControllerCount int

    The number of SATA controllers that Terraform 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.

    ScsiBusSharing string

    The type of SCSI bus sharing for the virtual machine SCSI controller. One of physicalSharing, virtualSharing, and noSharing. Default: noSharing.

    ScsiControllerCount int

    The number of SCSI controllers that Terraform 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.

    ScsiType string

    The SCSI controller type for the virtual machine. One of lsilogic (LSI Logic Parallel), lsilogic-sas (LSI Logic SAS) or pvscsi (VMware Paravirtual). Default: pvscsi.

    ShutdownWaitTimeout int

    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 virtual machine will be forced to power-off after the timeout, otherwise an error is returned. Default: 3 minutes.

    StoragePolicyId string

    The UUID of the storage policy to assign to the virtual disk.

    SwapPlacementPolicy string

    The swap file placement policy for the virtual machine. One of inherit, hostLocal, or vmDirectory. Default: inherit.

    SyncTimeWithHost bool

    Enable the guest operating system to synchronization its clock with the host when the virtual machine is powered on or resumed. Requires vSphere 7.0 Update 1 and later. Requires VMware Tools to be installed. Default: false.

    SyncTimeWithHostPeriodically bool

    Enable the guest operating system to periodically synchronize its clock with the host. Requires vSphere 7.0 Update 1 and later. On previous versions, setting sync_time_with_host is will enable periodic synchronization. Requires VMware Tools to be installed. Default: false.

    Tags List<string>

    The IDs of any tags to attach to this resource. Please refer to the vsphere.Tag resource for more information on applying tags to virtual machine resources.

    NOTE: Tagging support is unsupported on direct ESXi host connections and requires vCenter Server instance.

    ToolsUpgradePolicy string

    Enable automatic upgrade of the VMware Tools version when the virtual machine is rebooted. If necessary, VMware Tools is upgraded to the latest version supported by the host on which the virtual machine is running. Requires VMware Tools to be installed. One of manual or upgradeAtPowerCycle. Default: manual.

    Uuid string

    The UUID of the virtual disk VMDK file. This is used to track the virtual disk on the virtual machine.

    Vapp Pulumi.VSphere.Inputs.VirtualMachineVapp

    Used for vApp configurations. The only sub-key available is properties, which is a key/value map of properties for virtual machines imported from and OVF/OVA. See Using vApp Properties for OVF/OVA Configuration for more information.

    VappTransports List<string>

    Computed value which is only valid for cloned virtual machines. A list of vApp transport methods supported by the source virtual machine or template.

    VbsEnabled bool

    Enable Virtualization Based Security. Requires firmware to be efi. In addition, vvtd_enabled, nested_hv_enabled, and efi_secure_boot_enabled must all have a value of true. Supported on vSphere 6.7 and later. Default: false.

    VmwareToolsStatus string

    The state of VMware Tools in the guest. This will determine the proper course of action for some device operations.

    VmxPath string

    The path of the virtual machine configuration file on the datastore in which the virtual machine is placed.

    VvtdEnabled bool

    Enable Intel Virtualization Technology for Directed I/O for the virtual machine (I/O MMU in the vSphere Client). Supported on vSphere 6.7 and later. Default: false.

    WaitForGuestIpTimeout int

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. This should only be used if the version 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.

    WaitForGuestNetRoutable bool

    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.

    WaitForGuestNetTimeout int

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. 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.

    AlternateGuestName string

    The guest name for the operating system when guest_id is otherGuest or otherGuest64.

    Annotation string

    A user-provided description of the virtual machine.

    BootDelay int

    The number of milliseconds to wait before starting the boot sequence. The default is no delay.

    BootRetryDelay int

    The number of milliseconds to wait before retrying the boot sequence. This option is only valid if boot_retry_enabled is true. Default: 10000 (10 seconds).

    BootRetryEnabled bool

    If set to true, a virtual machine that fails to boot will try again after the delay defined in boot_retry_delay. Default: false.

    Cdroms []VirtualMachineCdromArgs

    A specification for a CD-ROM device on the virtual machine. See CD-ROM options for more information.

    ChangeVersion string

    A unique identifier for a given version of the last configuration was applied.

    Clone VirtualMachineCloneArgs

    When specified, the virtual machine will be created as a clone of a specified template. Optional customization options can be submitted for the resource. See creating a virtual machine from a template for more information.

    CpuHotAddEnabled bool

    Allow CPUs to be added to the virtual machine while it is powered on.

    CpuHotRemoveEnabled bool

    Allow CPUs to be removed to the virtual machine while it is powered on.

    CpuLimit int

    The maximum amount of CPU (in MHz) that the virtual machine can consume, regardless of available resources. The default is no limit.

    CpuPerformanceCountersEnabled bool

    Enable CPU performance counters on the virtual machine. Default: false.

    CpuReservation int

    The amount of CPU (in MHz) that the virtual machine is guaranteed. The default is no reservation.

    CpuShareCount int

    The number of CPU shares allocated to the virtual machine when the cpu_share_level is custom.

    CpuShareLevel string

    The allocation level for the virtual machine CPU resources. One of high, low, normal, or custom. Default: custom.

    CustomAttributes map[string]string

    Map of custom attribute ids to attribute value strings to set for virtual machine. Please refer to the vsphere_custom_attributes resource for more information on setting custom attributes.

    NOTE: Custom attributes requires vCenter Server and is not supported on direct ESXi host connections.

    DatacenterId string

    The datacenter ID. Required only when deploying an OVF/OVA template.

    DatastoreClusterId string

    The managed object reference ID of the datastore cluster in which to place the virtual machine. This setting applies to entire virtual machine and implies that you wish to use vSphere Storage DRS with the virtual machine. See the section on virtual machine migration for more information on modifying this value.

    NOTE: One of datastore_id or datastore_cluster_id must be specified.

    NOTE: Use of datastore_cluster_id requires vSphere Storage DRS to be enabled on the specified datastore cluster.

    NOTE: The datastore_cluster_id setting applies to the entire virtual machine resource. You cannot assign individual individual disks to datastore clusters. In addition, you cannot use the attach setting to attach external disks on virtual machines that are assigned to datastore clusters.

    DatastoreId string

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    DefaultIpAddress string

    The IP address selected by the provider to be used with any provisioners configured on this resource. When possible, this is the first IPv4 address that is reachable through the default gateway configured on the machine, then the first reachable IPv6 address, and then the first general discovered address if neither exists. If VMware Tools is not running on the virtual machine, or if the virtual machine is powered off, this value will be blank.

    Disks []VirtualMachineDiskArgs

    A specification for a virtual disk device on the virtual machine. See disk options for more information.

    EfiSecureBootEnabled bool

    Use this option to enable EFI secure boot when the firmware type is set to is efi. Default: false.

    NOTE: EFI secure boot is only available on vSphere 6.5 and later.

    EnableDiskUuid bool

    Expose the UUIDs of attached virtual disks to the virtual machine, allowing access to them in the guest. Default: false.

    EnableLogging bool

    Enable logging of virtual machine events to a log file stored in the virtual machine directory. Default: false.

    EptRviMode string

    The EPT/RVI (hardware memory virtualization) setting for the virtual machine. One of automatic, on, or off. Default: automatic.

    ExtraConfig map[string]string

    Extra configuration data for the virtual machine. Can be used to supply advanced parameters not normally in configuration, such as instance metadata and userdata.

    NOTE: Do not use extra_config when working with a template imported from OVF/OVA as your settings may be ignored. Use the vapp block properties section as described in Using vApp Properties for OVF/OVA Configuration.

    ExtraConfigRebootRequired bool

    Allow the virtual machine to be rebooted when a change to extra_config occurs. Default: true.

    Firmware string

    The firmware for the virtual machine. One of bios or efi.

    Folder string

    The path to the virtual machine folder in which to place the virtual machine, relative to the datacenter path (/<datacenter-name>/vm). For example, /dc-01/vm/foo

    ForcePowerOff bool

    If a guest shutdown failed or times out while updating or destroying (see shutdown_wait_timeout), force the power-off of the virtual machine. Default: true.

    GuestId string

    The guest ID for the operating system type. For a full list of possible values, see here. Default: otherGuest64.

    GuestIpAddresses []string

    The current list of IP addresses on this machine, including the value of default_ip_address. If VMware Tools is not running on the virtual machine, or if the virtul machine is powered off, this list will be empty.

    HardwareVersion int

    The hardware version number. Valid range is from 4 to 21. The hardware version cannot be downgraded. See virtual machine hardware versions and compatibility for more information on supported settings.

    HostSystemId string

    The managed object reference ID of a host on which to place the virtual machine. See the section on virtual machine migration for more information on modifying this value. When using a vSphere cluster, if a host_system_id is not supplied, vSphere will select a host in the cluster to place the virtual machine, according to any defaults or vSphere DRS placement policies.

    HvMode string

    The hardware virtualization (non-nested) setting for the virtual machine. One of hvAuto, hvOn, or hvOff. Default: hvAuto.

    IdeControllerCount int

    The number of IDE controllers that the virtual machine. This directly affects the number 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: 2.

    IgnoredGuestIps []string

    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 so that the waiter will continue to wait for a valid IP address. Default: [].

    Imported bool

    Indicates if the virtual machine resource has been imported, or if the state has been migrated from a previous version of the resource. It influences the behavior of the first post-import apply operation. See the section on importing below.

    LatencySensitivity string

    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. One of low, normal, medium, or high.

    NOTE: On higher sensitivities, you may need to adjust the memory_reservation to the full amount of memory provisioned for the virtual machine.

    Memory int

    The memory size to assign to the virtual machine, in MB. Default: 1024 (1 GB).

    MemoryHotAddEnabled bool

    Allow memory to be added to the virtual machine while it is powered on.

    NOTE: CPU and memory hot add options are not available on all guest operating systems. Please refer to the VMware Guest OS Compatibility Guide to which settings are allow for your guest operating system. In addition, at least one pulumi up must be run before you are able to use CPU and memory hot add.

    NOTE: For Linux 64-bit guest operating systems with less than or equal to 3GB, the virtual machine must powered off to add memory beyond 3GB. Subsequent hot add of memory does not require the virtual machine to be powered-off to apply the plan. Please refer to VMware KB 2008405.

    MemoryLimit int

    The maximum amount of memory (in MB) that th virtual machine can consume, regardless of available resources. The default is no limit.

    MemoryReservation int

    The amount of memory (in MB) that the virtual machine is guaranteed. The default is no reservation.

    MemoryShareCount int

    The number of memory shares allocated to the virtual machine when the memory_share_level is custom.

    MemoryShareLevel string

    The allocation level for the virtual machine memory resources. One of high, low, normal, or custom. Default: custom.

    MigrateWaitTimeout int

    The amount of time, in minutes, to wait for a virtual machine migration to complete before failing. Default: 10 minutes. See the section on virtual machine migration for more information.

    Moid string

    The managed object reference ID of the created virtual machine.

    Name string

    The name of the virtual machine.

    NestedHvEnabled bool

    Enable nested hardware virtualization on the virtual machine, facilitating nested virtualization in the guest operating system. Default: false.

    NetworkInterfaces []VirtualMachineNetworkInterfaceArgs

    A specification for a virtual NIC on the virtual machine. See network interface options for more information.

    NumCoresPerSocket int

    The number of cores per socket in the 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.

    NumCpus int

    The total number of virtual processor cores to assign to the virtual machine. Default: 1.

    OvfDeploy VirtualMachineOvfDeployArgs

    When specified, the virtual machine will be deployed from the provided OVF/OVA template. See creating a virtual machine from an OVF/OVA template for more information.

    PciDeviceIds []string

    List of host PCI device IDs in which to create PCI passthroughs.

    NOTE: Cloning requires vCenter Server and is not supported on direct ESXi host connections.

    PowerState string

    A computed value for the current power state of the virtual machine. One of on, off, or suspended.

    PoweronTimeout int

    The amount of time, in seconds, that we will be trying to power on a VM

    RebootRequired bool

    Value internal to Terraform used to determine if a configuration set change requires a reboot.

    ReplaceTrigger string

    Triggers replacement of resource whenever it changes.

    For example, replace_trigger = sha256(format("%s-%s",data.template_file.cloud_init_metadata.rendered,data.template_file.cloud_init_userdata.rendered)) will fingerprint the changes in cloud-init metadata and userdata templates. This will enable a replacement of the resource whenever the dependant template renders a new configuration. (Forces a replacement.)

    ResourcePoolId string

    The managed object reference ID of the resource pool in which to place the virtual machine. See the Virtual Machine Migration section for more information on modifying this value.

    NOTE: All clusters and standalone hosts have a default root resource pool. This resource argument does not directly accept the cluster or standalone host resource. For more information, see the section on specifying the Root Resource Pool in the vsphere.ResourcePool data source documentation on using the root resource pool.

    RunToolsScriptsAfterPowerOn bool

    Enable post-power-on scripts to run when VMware Tools is installed. Default: true.

    RunToolsScriptsAfterResume bool

    Enable ost-resume scripts to run when VMware Tools is installed. Default: true.

    RunToolsScriptsBeforeGuestReboot bool

    Enable pre-reboot scripts to run when VMware Tools is installed. Default: false.

    RunToolsScriptsBeforeGuestShutdown bool

    Enable pre-shutdown scripts to run when VMware Tools is installed. Default: true.

    RunToolsScriptsBeforeGuestStandby bool

    Enable pre-standby scripts to run when VMware Tools is installed. Default: true.

    SataControllerCount int

    The number of SATA controllers that Terraform 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.

    ScsiBusSharing string

    The type of SCSI bus sharing for the virtual machine SCSI controller. One of physicalSharing, virtualSharing, and noSharing. Default: noSharing.

    ScsiControllerCount int

    The number of SCSI controllers that Terraform 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.

    ScsiType string

    The SCSI controller type for the virtual machine. One of lsilogic (LSI Logic Parallel), lsilogic-sas (LSI Logic SAS) or pvscsi (VMware Paravirtual). Default: pvscsi.

    ShutdownWaitTimeout int

    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 virtual machine will be forced to power-off after the timeout, otherwise an error is returned. Default: 3 minutes.

    StoragePolicyId string

    The UUID of the storage policy to assign to the virtual disk.

    SwapPlacementPolicy string

    The swap file placement policy for the virtual machine. One of inherit, hostLocal, or vmDirectory. Default: inherit.

    SyncTimeWithHost bool

    Enable the guest operating system to synchronization its clock with the host when the virtual machine is powered on or resumed. Requires vSphere 7.0 Update 1 and later. Requires VMware Tools to be installed. Default: false.

    SyncTimeWithHostPeriodically bool

    Enable the guest operating system to periodically synchronize its clock with the host. Requires vSphere 7.0 Update 1 and later. On previous versions, setting sync_time_with_host is will enable periodic synchronization. Requires VMware Tools to be installed. Default: false.

    Tags []string

    The IDs of any tags to attach to this resource. Please refer to the vsphere.Tag resource for more information on applying tags to virtual machine resources.

    NOTE: Tagging support is unsupported on direct ESXi host connections and requires vCenter Server instance.

    ToolsUpgradePolicy string

    Enable automatic upgrade of the VMware Tools version when the virtual machine is rebooted. If necessary, VMware Tools is upgraded to the latest version supported by the host on which the virtual machine is running. Requires VMware Tools to be installed. One of manual or upgradeAtPowerCycle. Default: manual.

    Uuid string

    The UUID of the virtual disk VMDK file. This is used to track the virtual disk on the virtual machine.

    Vapp VirtualMachineVappArgs

    Used for vApp configurations. The only sub-key available is properties, which is a key/value map of properties for virtual machines imported from and OVF/OVA. See Using vApp Properties for OVF/OVA Configuration for more information.

    VappTransports []string

    Computed value which is only valid for cloned virtual machines. A list of vApp transport methods supported by the source virtual machine or template.

    VbsEnabled bool

    Enable Virtualization Based Security. Requires firmware to be efi. In addition, vvtd_enabled, nested_hv_enabled, and efi_secure_boot_enabled must all have a value of true. Supported on vSphere 6.7 and later. Default: false.

    VmwareToolsStatus string

    The state of VMware Tools in the guest. This will determine the proper course of action for some device operations.

    VmxPath string

    The path of the virtual machine configuration file on the datastore in which the virtual machine is placed.

    VvtdEnabled bool

    Enable Intel Virtualization Technology for Directed I/O for the virtual machine (I/O MMU in the vSphere Client). Supported on vSphere 6.7 and later. Default: false.

    WaitForGuestIpTimeout int

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. This should only be used if the version 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.

    WaitForGuestNetRoutable bool

    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.

    WaitForGuestNetTimeout int

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. 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.

    alternateGuestName String

    The guest name for the operating system when guest_id is otherGuest or otherGuest64.

    annotation String

    A user-provided description of the virtual machine.

    bootDelay Integer

    The number of milliseconds to wait before starting the boot sequence. The default is no delay.

    bootRetryDelay Integer

    The number of milliseconds to wait before retrying the boot sequence. This option is only valid if boot_retry_enabled is true. Default: 10000 (10 seconds).

    bootRetryEnabled Boolean

    If set to true, a virtual machine that fails to boot will try again after the delay defined in boot_retry_delay. Default: false.

    cdroms List<VirtualMachineCdrom>

    A specification for a CD-ROM device on the virtual machine. See CD-ROM options for more information.

    changeVersion String

    A unique identifier for a given version of the last configuration was applied.

    clone_ VirtualMachineClone

    When specified, the virtual machine will be created as a clone of a specified template. Optional customization options can be submitted for the resource. See creating a virtual machine from a template for more information.

    cpuHotAddEnabled Boolean

    Allow CPUs to be added to the virtual machine while it is powered on.

    cpuHotRemoveEnabled Boolean

    Allow CPUs to be removed to the virtual machine while it is powered on.

    cpuLimit Integer

    The maximum amount of CPU (in MHz) that the virtual machine can consume, regardless of available resources. The default is no limit.

    cpuPerformanceCountersEnabled Boolean

    Enable CPU performance counters on the virtual machine. Default: false.

    cpuReservation Integer

    The amount of CPU (in MHz) that the virtual machine is guaranteed. The default is no reservation.

    cpuShareCount Integer

    The number of CPU shares allocated to the virtual machine when the cpu_share_level is custom.

    cpuShareLevel String

    The allocation level for the virtual machine CPU resources. One of high, low, normal, or custom. Default: custom.

    customAttributes Map<String,String>

    Map of custom attribute ids to attribute value strings to set for virtual machine. Please refer to the vsphere_custom_attributes resource for more information on setting custom attributes.

    NOTE: Custom attributes requires vCenter Server and is not supported on direct ESXi host connections.

    datacenterId String

    The datacenter ID. Required only when deploying an OVF/OVA template.

    datastoreClusterId String

    The managed object reference ID of the datastore cluster in which to place the virtual machine. This setting applies to entire virtual machine and implies that you wish to use vSphere Storage DRS with the virtual machine. See the section on virtual machine migration for more information on modifying this value.

    NOTE: One of datastore_id or datastore_cluster_id must be specified.

    NOTE: Use of datastore_cluster_id requires vSphere Storage DRS to be enabled on the specified datastore cluster.

    NOTE: The datastore_cluster_id setting applies to the entire virtual machine resource. You cannot assign individual individual disks to datastore clusters. In addition, you cannot use the attach setting to attach external disks on virtual machines that are assigned to datastore clusters.

    datastoreId String

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    defaultIpAddress String

    The IP address selected by the provider to be used with any provisioners configured on this resource. When possible, this is the first IPv4 address that is reachable through the default gateway configured on the machine, then the first reachable IPv6 address, and then the first general discovered address if neither exists. If VMware Tools is not running on the virtual machine, or if the virtual machine is powered off, this value will be blank.

    disks List<VirtualMachineDisk>

    A specification for a virtual disk device on the virtual machine. See disk options for more information.

    efiSecureBootEnabled Boolean

    Use this option to enable EFI secure boot when the firmware type is set to is efi. Default: false.

    NOTE: EFI secure boot is only available on vSphere 6.5 and later.

    enableDiskUuid Boolean

    Expose the UUIDs of attached virtual disks to the virtual machine, allowing access to them in the guest. Default: false.

    enableLogging Boolean

    Enable logging of virtual machine events to a log file stored in the virtual machine directory. Default: false.

    eptRviMode String

    The EPT/RVI (hardware memory virtualization) setting for the virtual machine. One of automatic, on, or off. Default: automatic.

    extraConfig Map<String,String>

    Extra configuration data for the virtual machine. Can be used to supply advanced parameters not normally in configuration, such as instance metadata and userdata.

    NOTE: Do not use extra_config when working with a template imported from OVF/OVA as your settings may be ignored. Use the vapp block properties section as described in Using vApp Properties for OVF/OVA Configuration.

    extraConfigRebootRequired Boolean

    Allow the virtual machine to be rebooted when a change to extra_config occurs. Default: true.

    firmware String

    The firmware for the virtual machine. One of bios or efi.

    folder String

    The path to the virtual machine folder in which to place the virtual machine, relative to the datacenter path (/<datacenter-name>/vm). For example, /dc-01/vm/foo

    forcePowerOff Boolean

    If a guest shutdown failed or times out while updating or destroying (see shutdown_wait_timeout), force the power-off of the virtual machine. Default: true.

    guestId String

    The guest ID for the operating system type. For a full list of possible values, see here. Default: otherGuest64.

    guestIpAddresses List<String>

    The current list of IP addresses on this machine, including the value of default_ip_address. If VMware Tools is not running on the virtual machine, or if the virtul machine is powered off, this list will be empty.

    hardwareVersion Integer

    The hardware version number. Valid range is from 4 to 21. The hardware version cannot be downgraded. See virtual machine hardware versions and compatibility for more information on supported settings.

    hostSystemId String

    The managed object reference ID of a host on which to place the virtual machine. See the section on virtual machine migration for more information on modifying this value. When using a vSphere cluster, if a host_system_id is not supplied, vSphere will select a host in the cluster to place the virtual machine, according to any defaults or vSphere DRS placement policies.

    hvMode String

    The hardware virtualization (non-nested) setting for the virtual machine. One of hvAuto, hvOn, or hvOff. Default: hvAuto.

    ideControllerCount Integer

    The number of IDE controllers that the virtual machine. This directly affects the number 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: 2.

    ignoredGuestIps List<String>

    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 so that the waiter will continue to wait for a valid IP address. Default: [].

    imported Boolean

    Indicates if the virtual machine resource has been imported, or if the state has been migrated from a previous version of the resource. It influences the behavior of the first post-import apply operation. See the section on importing below.

    latencySensitivity String

    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. One of low, normal, medium, or high.

    NOTE: On higher sensitivities, you may need to adjust the memory_reservation to the full amount of memory provisioned for the virtual machine.

    memory Integer

    The memory size to assign to the virtual machine, in MB. Default: 1024 (1 GB).

    memoryHotAddEnabled Boolean

    Allow memory to be added to the virtual machine while it is powered on.

    NOTE: CPU and memory hot add options are not available on all guest operating systems. Please refer to the VMware Guest OS Compatibility Guide to which settings are allow for your guest operating system. In addition, at least one pulumi up must be run before you are able to use CPU and memory hot add.

    NOTE: For Linux 64-bit guest operating systems with less than or equal to 3GB, the virtual machine must powered off to add memory beyond 3GB. Subsequent hot add of memory does not require the virtual machine to be powered-off to apply the plan. Please refer to VMware KB 2008405.

    memoryLimit Integer

    The maximum amount of memory (in MB) that th virtual machine can consume, regardless of available resources. The default is no limit.

    memoryReservation Integer

    The amount of memory (in MB) that the virtual machine is guaranteed. The default is no reservation.

    memoryShareCount Integer

    The number of memory shares allocated to the virtual machine when the memory_share_level is custom.

    memoryShareLevel String

    The allocation level for the virtual machine memory resources. One of high, low, normal, or custom. Default: custom.

    migrateWaitTimeout Integer

    The amount of time, in minutes, to wait for a virtual machine migration to complete before failing. Default: 10 minutes. See the section on virtual machine migration for more information.

    moid String

    The managed object reference ID of the created virtual machine.

    name String

    The name of the virtual machine.

    nestedHvEnabled Boolean

    Enable nested hardware virtualization on the virtual machine, facilitating nested virtualization in the guest operating system. Default: false.

    networkInterfaces List<VirtualMachineNetworkInterface>

    A specification for a virtual NIC on the virtual machine. See network interface options for more information.

    numCoresPerSocket Integer

    The number of cores per socket in the 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.

    numCpus Integer

    The total number of virtual processor cores to assign to the virtual machine. Default: 1.

    ovfDeploy VirtualMachineOvfDeploy

    When specified, the virtual machine will be deployed from the provided OVF/OVA template. See creating a virtual machine from an OVF/OVA template for more information.

    pciDeviceIds List<String>

    List of host PCI device IDs in which to create PCI passthroughs.

    NOTE: Cloning requires vCenter Server and is not supported on direct ESXi host connections.

    powerState String

    A computed value for the current power state of the virtual machine. One of on, off, or suspended.

    poweronTimeout Integer

    The amount of time, in seconds, that we will be trying to power on a VM

    rebootRequired Boolean

    Value internal to Terraform used to determine if a configuration set change requires a reboot.

    replaceTrigger String

    Triggers replacement of resource whenever it changes.

    For example, replace_trigger = sha256(format("%s-%s",data.template_file.cloud_init_metadata.rendered,data.template_file.cloud_init_userdata.rendered)) will fingerprint the changes in cloud-init metadata and userdata templates. This will enable a replacement of the resource whenever the dependant template renders a new configuration. (Forces a replacement.)

    resourcePoolId String

    The managed object reference ID of the resource pool in which to place the virtual machine. See the Virtual Machine Migration section for more information on modifying this value.

    NOTE: All clusters and standalone hosts have a default root resource pool. This resource argument does not directly accept the cluster or standalone host resource. For more information, see the section on specifying the Root Resource Pool in the vsphere.ResourcePool data source documentation on using the root resource pool.

    runToolsScriptsAfterPowerOn Boolean

    Enable post-power-on scripts to run when VMware Tools is installed. Default: true.

    runToolsScriptsAfterResume Boolean

    Enable ost-resume scripts to run when VMware Tools is installed. Default: true.

    runToolsScriptsBeforeGuestReboot Boolean

    Enable pre-reboot scripts to run when VMware Tools is installed. Default: false.

    runToolsScriptsBeforeGuestShutdown Boolean

    Enable pre-shutdown scripts to run when VMware Tools is installed. Default: true.

    runToolsScriptsBeforeGuestStandby Boolean

    Enable pre-standby scripts to run when VMware Tools is installed. Default: true.

    sataControllerCount Integer

    The number of SATA controllers that Terraform 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.

    scsiBusSharing String

    The type of SCSI bus sharing for the virtual machine SCSI controller. One of physicalSharing, virtualSharing, and noSharing. Default: noSharing.

    scsiControllerCount Integer

    The number of SCSI controllers that Terraform 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.

    scsiType String

    The SCSI controller type for the virtual machine. One of lsilogic (LSI Logic Parallel), lsilogic-sas (LSI Logic SAS) or pvscsi (VMware Paravirtual). Default: pvscsi.

    shutdownWaitTimeout Integer

    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 virtual machine will be forced to power-off after the timeout, otherwise an error is returned. Default: 3 minutes.

    storagePolicyId String

    The UUID of the storage policy to assign to the virtual disk.

    swapPlacementPolicy String

    The swap file placement policy for the virtual machine. One of inherit, hostLocal, or vmDirectory. Default: inherit.

    syncTimeWithHost Boolean

    Enable the guest operating system to synchronization its clock with the host when the virtual machine is powered on or resumed. Requires vSphere 7.0 Update 1 and later. Requires VMware Tools to be installed. Default: false.

    syncTimeWithHostPeriodically Boolean

    Enable the guest operating system to periodically synchronize its clock with the host. Requires vSphere 7.0 Update 1 and later. On previous versions, setting sync_time_with_host is will enable periodic synchronization. Requires VMware Tools to be installed. Default: false.

    tags List<String>

    The IDs of any tags to attach to this resource. Please refer to the vsphere.Tag resource for more information on applying tags to virtual machine resources.

    NOTE: Tagging support is unsupported on direct ESXi host connections and requires vCenter Server instance.

    toolsUpgradePolicy String

    Enable automatic upgrade of the VMware Tools version when the virtual machine is rebooted. If necessary, VMware Tools is upgraded to the latest version supported by the host on which the virtual machine is running. Requires VMware Tools to be installed. One of manual or upgradeAtPowerCycle. Default: manual.

    uuid String

    The UUID of the virtual disk VMDK file. This is used to track the virtual disk on the virtual machine.

    vapp VirtualMachineVapp

    Used for vApp configurations. The only sub-key available is properties, which is a key/value map of properties for virtual machines imported from and OVF/OVA. See Using vApp Properties for OVF/OVA Configuration for more information.

    vappTransports List<String>

    Computed value which is only valid for cloned virtual machines. A list of vApp transport methods supported by the source virtual machine or template.

    vbsEnabled Boolean

    Enable Virtualization Based Security. Requires firmware to be efi. In addition, vvtd_enabled, nested_hv_enabled, and efi_secure_boot_enabled must all have a value of true. Supported on vSphere 6.7 and later. Default: false.

    vmwareToolsStatus String

    The state of VMware Tools in the guest. This will determine the proper course of action for some device operations.

    vmxPath String

    The path of the virtual machine configuration file on the datastore in which the virtual machine is placed.

    vvtdEnabled Boolean

    Enable Intel Virtualization Technology for Directed I/O for the virtual machine (I/O MMU in the vSphere Client). Supported on vSphere 6.7 and later. Default: false.

    waitForGuestIpTimeout Integer

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. This should only be used if the version 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.

    waitForGuestNetRoutable Boolean

    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.

    waitForGuestNetTimeout Integer

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. 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.

    alternateGuestName string

    The guest name for the operating system when guest_id is otherGuest or otherGuest64.

    annotation string

    A user-provided description of the virtual machine.

    bootDelay number

    The number of milliseconds to wait before starting the boot sequence. The default is no delay.

    bootRetryDelay number

    The number of milliseconds to wait before retrying the boot sequence. This option is only valid if boot_retry_enabled is true. Default: 10000 (10 seconds).

    bootRetryEnabled boolean

    If set to true, a virtual machine that fails to boot will try again after the delay defined in boot_retry_delay. Default: false.

    cdroms VirtualMachineCdrom[]

    A specification for a CD-ROM device on the virtual machine. See CD-ROM options for more information.

    changeVersion string

    A unique identifier for a given version of the last configuration was applied.

    clone VirtualMachineClone

    When specified, the virtual machine will be created as a clone of a specified template. Optional customization options can be submitted for the resource. See creating a virtual machine from a template for more information.

    cpuHotAddEnabled boolean

    Allow CPUs to be added to the virtual machine while it is powered on.

    cpuHotRemoveEnabled boolean

    Allow CPUs to be removed to the virtual machine while it is powered on.

    cpuLimit number

    The maximum amount of CPU (in MHz) that the virtual machine can consume, regardless of available resources. The default is no limit.

    cpuPerformanceCountersEnabled boolean

    Enable CPU performance counters on the virtual machine. Default: false.

    cpuReservation number

    The amount of CPU (in MHz) that the virtual machine is guaranteed. The default is no reservation.

    cpuShareCount number

    The number of CPU shares allocated to the virtual machine when the cpu_share_level is custom.

    cpuShareLevel string

    The allocation level for the virtual machine CPU resources. One of high, low, normal, or custom. Default: custom.

    customAttributes {[key: string]: string}

    Map of custom attribute ids to attribute value strings to set for virtual machine. Please refer to the vsphere_custom_attributes resource for more information on setting custom attributes.

    NOTE: Custom attributes requires vCenter Server and is not supported on direct ESXi host connections.

    datacenterId string

    The datacenter ID. Required only when deploying an OVF/OVA template.

    datastoreClusterId string

    The managed object reference ID of the datastore cluster in which to place the virtual machine. This setting applies to entire virtual machine and implies that you wish to use vSphere Storage DRS with the virtual machine. See the section on virtual machine migration for more information on modifying this value.

    NOTE: One of datastore_id or datastore_cluster_id must be specified.

    NOTE: Use of datastore_cluster_id requires vSphere Storage DRS to be enabled on the specified datastore cluster.

    NOTE: The datastore_cluster_id setting applies to the entire virtual machine resource. You cannot assign individual individual disks to datastore clusters. In addition, you cannot use the attach setting to attach external disks on virtual machines that are assigned to datastore clusters.

    datastoreId string

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    defaultIpAddress string

    The IP address selected by the provider to be used with any provisioners configured on this resource. When possible, this is the first IPv4 address that is reachable through the default gateway configured on the machine, then the first reachable IPv6 address, and then the first general discovered address if neither exists. If VMware Tools is not running on the virtual machine, or if the virtual machine is powered off, this value will be blank.

    disks VirtualMachineDisk[]

    A specification for a virtual disk device on the virtual machine. See disk options for more information.

    efiSecureBootEnabled boolean

    Use this option to enable EFI secure boot when the firmware type is set to is efi. Default: false.

    NOTE: EFI secure boot is only available on vSphere 6.5 and later.

    enableDiskUuid boolean

    Expose the UUIDs of attached virtual disks to the virtual machine, allowing access to them in the guest. Default: false.

    enableLogging boolean

    Enable logging of virtual machine events to a log file stored in the virtual machine directory. Default: false.

    eptRviMode string

    The EPT/RVI (hardware memory virtualization) setting for the virtual machine. One of automatic, on, or off. Default: automatic.

    extraConfig {[key: string]: string}

    Extra configuration data for the virtual machine. Can be used to supply advanced parameters not normally in configuration, such as instance metadata and userdata.

    NOTE: Do not use extra_config when working with a template imported from OVF/OVA as your settings may be ignored. Use the vapp block properties section as described in Using vApp Properties for OVF/OVA Configuration.

    extraConfigRebootRequired boolean

    Allow the virtual machine to be rebooted when a change to extra_config occurs. Default: true.

    firmware string

    The firmware for the virtual machine. One of bios or efi.

    folder string

    The path to the virtual machine folder in which to place the virtual machine, relative to the datacenter path (/<datacenter-name>/vm). For example, /dc-01/vm/foo

    forcePowerOff boolean

    If a guest shutdown failed or times out while updating or destroying (see shutdown_wait_timeout), force the power-off of the virtual machine. Default: true.

    guestId string

    The guest ID for the operating system type. For a full list of possible values, see here. Default: otherGuest64.

    guestIpAddresses string[]

    The current list of IP addresses on this machine, including the value of default_ip_address. If VMware Tools is not running on the virtual machine, or if the virtul machine is powered off, this list will be empty.

    hardwareVersion number

    The hardware version number. Valid range is from 4 to 21. The hardware version cannot be downgraded. See virtual machine hardware versions and compatibility for more information on supported settings.

    hostSystemId string

    The managed object reference ID of a host on which to place the virtual machine. See the section on virtual machine migration for more information on modifying this value. When using a vSphere cluster, if a host_system_id is not supplied, vSphere will select a host in the cluster to place the virtual machine, according to any defaults or vSphere DRS placement policies.

    hvMode string

    The hardware virtualization (non-nested) setting for the virtual machine. One of hvAuto, hvOn, or hvOff. Default: hvAuto.

    ideControllerCount number

    The number of IDE controllers that the virtual machine. This directly affects the number 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: 2.

    ignoredGuestIps string[]

    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 so that the waiter will continue to wait for a valid IP address. Default: [].

    imported boolean

    Indicates if the virtual machine resource has been imported, or if the state has been migrated from a previous version of the resource. It influences the behavior of the first post-import apply operation. See the section on importing below.

    latencySensitivity string

    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. One of low, normal, medium, or high.

    NOTE: On higher sensitivities, you may need to adjust the memory_reservation to the full amount of memory provisioned for the virtual machine.

    memory number

    The memory size to assign to the virtual machine, in MB. Default: 1024 (1 GB).

    memoryHotAddEnabled boolean

    Allow memory to be added to the virtual machine while it is powered on.

    NOTE: CPU and memory hot add options are not available on all guest operating systems. Please refer to the VMware Guest OS Compatibility Guide to which settings are allow for your guest operating system. In addition, at least one pulumi up must be run before you are able to use CPU and memory hot add.

    NOTE: For Linux 64-bit guest operating systems with less than or equal to 3GB, the virtual machine must powered off to add memory beyond 3GB. Subsequent hot add of memory does not require the virtual machine to be powered-off to apply the plan. Please refer to VMware KB 2008405.

    memoryLimit number

    The maximum amount of memory (in MB) that th virtual machine can consume, regardless of available resources. The default is no limit.

    memoryReservation number

    The amount of memory (in MB) that the virtual machine is guaranteed. The default is no reservation.

    memoryShareCount number

    The number of memory shares allocated to the virtual machine when the memory_share_level is custom.

    memoryShareLevel string

    The allocation level for the virtual machine memory resources. One of high, low, normal, or custom. Default: custom.

    migrateWaitTimeout number

    The amount of time, in minutes, to wait for a virtual machine migration to complete before failing. Default: 10 minutes. See the section on virtual machine migration for more information.

    moid string

    The managed object reference ID of the created virtual machine.

    name string

    The name of the virtual machine.

    nestedHvEnabled boolean

    Enable nested hardware virtualization on the virtual machine, facilitating nested virtualization in the guest operating system. Default: false.

    networkInterfaces VirtualMachineNetworkInterface[]

    A specification for a virtual NIC on the virtual machine. See network interface options for more information.

    numCoresPerSocket number

    The number of cores per socket in the 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.

    numCpus number

    The total number of virtual processor cores to assign to the virtual machine. Default: 1.

    ovfDeploy VirtualMachineOvfDeploy

    When specified, the virtual machine will be deployed from the provided OVF/OVA template. See creating a virtual machine from an OVF/OVA template for more information.

    pciDeviceIds string[]

    List of host PCI device IDs in which to create PCI passthroughs.

    NOTE: Cloning requires vCenter Server and is not supported on direct ESXi host connections.

    powerState string

    A computed value for the current power state of the virtual machine. One of on, off, or suspended.

    poweronTimeout number

    The amount of time, in seconds, that we will be trying to power on a VM

    rebootRequired boolean

    Value internal to Terraform used to determine if a configuration set change requires a reboot.

    replaceTrigger string

    Triggers replacement of resource whenever it changes.

    For example, replace_trigger = sha256(format("%s-%s",data.template_file.cloud_init_metadata.rendered,data.template_file.cloud_init_userdata.rendered)) will fingerprint the changes in cloud-init metadata and userdata templates. This will enable a replacement of the resource whenever the dependant template renders a new configuration. (Forces a replacement.)

    resourcePoolId string

    The managed object reference ID of the resource pool in which to place the virtual machine. See the Virtual Machine Migration section for more information on modifying this value.

    NOTE: All clusters and standalone hosts have a default root resource pool. This resource argument does not directly accept the cluster or standalone host resource. For more information, see the section on specifying the Root Resource Pool in the vsphere.ResourcePool data source documentation on using the root resource pool.

    runToolsScriptsAfterPowerOn boolean

    Enable post-power-on scripts to run when VMware Tools is installed. Default: true.

    runToolsScriptsAfterResume boolean

    Enable ost-resume scripts to run when VMware Tools is installed. Default: true.

    runToolsScriptsBeforeGuestReboot boolean

    Enable pre-reboot scripts to run when VMware Tools is installed. Default: false.

    runToolsScriptsBeforeGuestShutdown boolean

    Enable pre-shutdown scripts to run when VMware Tools is installed. Default: true.

    runToolsScriptsBeforeGuestStandby boolean

    Enable pre-standby scripts to run when VMware Tools is installed. Default: true.

    sataControllerCount number

    The number of SATA controllers that Terraform 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.

    scsiBusSharing string

    The type of SCSI bus sharing for the virtual machine SCSI controller. One of physicalSharing, virtualSharing, and noSharing. Default: noSharing.

    scsiControllerCount number

    The number of SCSI controllers that Terraform 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.

    scsiType string

    The SCSI controller type for the virtual machine. One of lsilogic (LSI Logic Parallel), lsilogic-sas (LSI Logic SAS) or pvscsi (VMware Paravirtual). Default: pvscsi.

    shutdownWaitTimeout number

    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 virtual machine will be forced to power-off after the timeout, otherwise an error is returned. Default: 3 minutes.

    storagePolicyId string

    The UUID of the storage policy to assign to the virtual disk.

    swapPlacementPolicy string

    The swap file placement policy for the virtual machine. One of inherit, hostLocal, or vmDirectory. Default: inherit.

    syncTimeWithHost boolean

    Enable the guest operating system to synchronization its clock with the host when the virtual machine is powered on or resumed. Requires vSphere 7.0 Update 1 and later. Requires VMware Tools to be installed. Default: false.

    syncTimeWithHostPeriodically boolean

    Enable the guest operating system to periodically synchronize its clock with the host. Requires vSphere 7.0 Update 1 and later. On previous versions, setting sync_time_with_host is will enable periodic synchronization. Requires VMware Tools to be installed. Default: false.

    tags string[]

    The IDs of any tags to attach to this resource. Please refer to the vsphere.Tag resource for more information on applying tags to virtual machine resources.

    NOTE: Tagging support is unsupported on direct ESXi host connections and requires vCenter Server instance.

    toolsUpgradePolicy string

    Enable automatic upgrade of the VMware Tools version when the virtual machine is rebooted. If necessary, VMware Tools is upgraded to the latest version supported by the host on which the virtual machine is running. Requires VMware Tools to be installed. One of manual or upgradeAtPowerCycle. Default: manual.

    uuid string

    The UUID of the virtual disk VMDK file. This is used to track the virtual disk on the virtual machine.

    vapp VirtualMachineVapp

    Used for vApp configurations. The only sub-key available is properties, which is a key/value map of properties for virtual machines imported from and OVF/OVA. See Using vApp Properties for OVF/OVA Configuration for more information.

    vappTransports string[]

    Computed value which is only valid for cloned virtual machines. A list of vApp transport methods supported by the source virtual machine or template.

    vbsEnabled boolean

    Enable Virtualization Based Security. Requires firmware to be efi. In addition, vvtd_enabled, nested_hv_enabled, and efi_secure_boot_enabled must all have a value of true. Supported on vSphere 6.7 and later. Default: false.

    vmwareToolsStatus string

    The state of VMware Tools in the guest. This will determine the proper course of action for some device operations.

    vmxPath string

    The path of the virtual machine configuration file on the datastore in which the virtual machine is placed.

    vvtdEnabled boolean

    Enable Intel Virtualization Technology for Directed I/O for the virtual machine (I/O MMU in the vSphere Client). Supported on vSphere 6.7 and later. Default: false.

    waitForGuestIpTimeout number

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. This should only be used if the version 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.

    waitForGuestNetRoutable boolean

    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.

    waitForGuestNetTimeout number

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. 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.

    alternate_guest_name str

    The guest name for the operating system when guest_id is otherGuest or otherGuest64.

    annotation str

    A user-provided description of the virtual machine.

    boot_delay int

    The number of milliseconds to wait before starting the boot sequence. The default is no delay.

    boot_retry_delay int

    The number of milliseconds to wait before retrying the boot sequence. This option is only valid if boot_retry_enabled is true. Default: 10000 (10 seconds).

    boot_retry_enabled bool

    If set to true, a virtual machine that fails to boot will try again after the delay defined in boot_retry_delay. Default: false.

    cdroms Sequence[VirtualMachineCdromArgs]

    A specification for a CD-ROM device on the virtual machine. See CD-ROM options for more information.

    change_version str

    A unique identifier for a given version of the last configuration was applied.

    clone VirtualMachineCloneArgs

    When specified, the virtual machine will be created as a clone of a specified template. Optional customization options can be submitted for the resource. See creating a virtual machine from a template for more information.

    cpu_hot_add_enabled bool

    Allow CPUs to be added to the virtual machine while it is powered on.

    cpu_hot_remove_enabled bool

    Allow CPUs to be removed to the virtual machine while it is powered on.

    cpu_limit int

    The maximum amount of CPU (in MHz) that the virtual machine can consume, regardless of available resources. The default is no limit.

    cpu_performance_counters_enabled bool

    Enable CPU performance counters on the virtual machine. Default: false.

    cpu_reservation int

    The amount of CPU (in MHz) that the virtual machine is guaranteed. The default is no reservation.

    cpu_share_count int

    The number of CPU shares allocated to the virtual machine when the cpu_share_level is custom.

    cpu_share_level str

    The allocation level for the virtual machine CPU resources. One of high, low, normal, or custom. Default: custom.

    custom_attributes Mapping[str, str]

    Map of custom attribute ids to attribute value strings to set for virtual machine. Please refer to the vsphere_custom_attributes resource for more information on setting custom attributes.

    NOTE: Custom attributes requires vCenter Server and is not supported on direct ESXi host connections.

    datacenter_id str

    The datacenter ID. Required only when deploying an OVF/OVA template.

    datastore_cluster_id str

    The managed object reference ID of the datastore cluster in which to place the virtual machine. This setting applies to entire virtual machine and implies that you wish to use vSphere Storage DRS with the virtual machine. See the section on virtual machine migration for more information on modifying this value.

    NOTE: One of datastore_id or datastore_cluster_id must be specified.

    NOTE: Use of datastore_cluster_id requires vSphere Storage DRS to be enabled on the specified datastore cluster.

    NOTE: The datastore_cluster_id setting applies to the entire virtual machine resource. You cannot assign individual individual disks to datastore clusters. In addition, you cannot use the attach setting to attach external disks on virtual machines that are assigned to datastore clusters.

    datastore_id str

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    default_ip_address str

    The IP address selected by the provider to be used with any provisioners configured on this resource. When possible, this is the first IPv4 address that is reachable through the default gateway configured on the machine, then the first reachable IPv6 address, and then the first general discovered address if neither exists. If VMware Tools is not running on the virtual machine, or if the virtual machine is powered off, this value will be blank.

    disks Sequence[VirtualMachineDiskArgs]

    A specification for a virtual disk device on the virtual machine. See disk options for more information.

    efi_secure_boot_enabled bool

    Use this option to enable EFI secure boot when the firmware type is set to is efi. Default: false.

    NOTE: EFI secure boot is only available on vSphere 6.5 and later.

    enable_disk_uuid bool

    Expose the UUIDs of attached virtual disks to the virtual machine, allowing access to them in the guest. Default: false.

    enable_logging bool

    Enable logging of virtual machine events to a log file stored in the virtual machine directory. Default: false.

    ept_rvi_mode str

    The EPT/RVI (hardware memory virtualization) setting for the virtual machine. One of automatic, on, or off. Default: automatic.

    extra_config Mapping[str, str]

    Extra configuration data for the virtual machine. Can be used to supply advanced parameters not normally in configuration, such as instance metadata and userdata.

    NOTE: Do not use extra_config when working with a template imported from OVF/OVA as your settings may be ignored. Use the vapp block properties section as described in Using vApp Properties for OVF/OVA Configuration.

    extra_config_reboot_required bool

    Allow the virtual machine to be rebooted when a change to extra_config occurs. Default: true.

    firmware str

    The firmware for the virtual machine. One of bios or efi.

    folder str

    The path to the virtual machine folder in which to place the virtual machine, relative to the datacenter path (/<datacenter-name>/vm). For example, /dc-01/vm/foo

    force_power_off bool

    If a guest shutdown failed or times out while updating or destroying (see shutdown_wait_timeout), force the power-off of the virtual machine. Default: true.

    guest_id str

    The guest ID for the operating system type. For a full list of possible values, see here. Default: otherGuest64.

    guest_ip_addresses Sequence[str]

    The current list of IP addresses on this machine, including the value of default_ip_address. If VMware Tools is not running on the virtual machine, or if the virtul machine is powered off, this list will be empty.

    hardware_version int

    The hardware version number. Valid range is from 4 to 21. The hardware version cannot be downgraded. See virtual machine hardware versions and compatibility for more information on supported settings.

    host_system_id str

    The managed object reference ID of a host on which to place the virtual machine. See the section on virtual machine migration for more information on modifying this value. When using a vSphere cluster, if a host_system_id is not supplied, vSphere will select a host in the cluster to place the virtual machine, according to any defaults or vSphere DRS placement policies.

    hv_mode str

    The hardware virtualization (non-nested) setting for the virtual machine. One of hvAuto, hvOn, or hvOff. Default: hvAuto.

    ide_controller_count int

    The number of IDE controllers that the virtual machine. This directly affects the number 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: 2.

    ignored_guest_ips Sequence[str]

    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 so that the waiter will continue to wait for a valid IP address. Default: [].

    imported bool

    Indicates if the virtual machine resource has been imported, or if the state has been migrated from a previous version of the resource. It influences the behavior of the first post-import apply operation. See the section on importing below.

    latency_sensitivity str

    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. One of low, normal, medium, or high.

    NOTE: On higher sensitivities, you may need to adjust the memory_reservation to the full amount of memory provisioned for the virtual machine.

    memory int

    The memory size to assign to the virtual machine, in MB. Default: 1024 (1 GB).

    memory_hot_add_enabled bool

    Allow memory to be added to the virtual machine while it is powered on.

    NOTE: CPU and memory hot add options are not available on all guest operating systems. Please refer to the VMware Guest OS Compatibility Guide to which settings are allow for your guest operating system. In addition, at least one pulumi up must be run before you are able to use CPU and memory hot add.

    NOTE: For Linux 64-bit guest operating systems with less than or equal to 3GB, the virtual machine must powered off to add memory beyond 3GB. Subsequent hot add of memory does not require the virtual machine to be powered-off to apply the plan. Please refer to VMware KB 2008405.

    memory_limit int

    The maximum amount of memory (in MB) that th virtual machine can consume, regardless of available resources. The default is no limit.

    memory_reservation int

    The amount of memory (in MB) that the virtual machine is guaranteed. The default is no reservation.

    memory_share_count int

    The number of memory shares allocated to the virtual machine when the memory_share_level is custom.

    memory_share_level str

    The allocation level for the virtual machine memory resources. One of high, low, normal, or custom. Default: custom.

    migrate_wait_timeout int

    The amount of time, in minutes, to wait for a virtual machine migration to complete before failing. Default: 10 minutes. See the section on virtual machine migration for more information.

    moid str

    The managed object reference ID of the created virtual machine.

    name str

    The name of the virtual machine.

    nested_hv_enabled bool

    Enable nested hardware virtualization on the virtual machine, facilitating nested virtualization in the guest operating system. Default: false.

    network_interfaces Sequence[VirtualMachineNetworkInterfaceArgs]

    A specification for a virtual NIC on the virtual machine. See network interface options for more information.

    num_cores_per_socket int

    The number of cores per socket in the 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.

    num_cpus int

    The total number of virtual processor cores to assign to the virtual machine. Default: 1.

    ovf_deploy VirtualMachineOvfDeployArgs

    When specified, the virtual machine will be deployed from the provided OVF/OVA template. See creating a virtual machine from an OVF/OVA template for more information.

    pci_device_ids Sequence[str]

    List of host PCI device IDs in which to create PCI passthroughs.

    NOTE: Cloning requires vCenter Server and is not supported on direct ESXi host connections.

    power_state str

    A computed value for the current power state of the virtual machine. One of on, off, or suspended.

    poweron_timeout int

    The amount of time, in seconds, that we will be trying to power on a VM

    reboot_required bool

    Value internal to Terraform used to determine if a configuration set change requires a reboot.

    replace_trigger str

    Triggers replacement of resource whenever it changes.

    For example, replace_trigger = sha256(format("%s-%s",data.template_file.cloud_init_metadata.rendered,data.template_file.cloud_init_userdata.rendered)) will fingerprint the changes in cloud-init metadata and userdata templates. This will enable a replacement of the resource whenever the dependant template renders a new configuration. (Forces a replacement.)

    resource_pool_id str

    The managed object reference ID of the resource pool in which to place the virtual machine. See the Virtual Machine Migration section for more information on modifying this value.

    NOTE: All clusters and standalone hosts have a default root resource pool. This resource argument does not directly accept the cluster or standalone host resource. For more information, see the section on specifying the Root Resource Pool in the vsphere.ResourcePool data source documentation on using the root resource pool.

    run_tools_scripts_after_power_on bool

    Enable post-power-on scripts to run when VMware Tools is installed. Default: true.

    run_tools_scripts_after_resume bool

    Enable ost-resume scripts to run when VMware Tools is installed. Default: true.

    run_tools_scripts_before_guest_reboot bool

    Enable pre-reboot scripts to run when VMware Tools is installed. Default: false.

    run_tools_scripts_before_guest_shutdown bool

    Enable pre-shutdown scripts to run when VMware Tools is installed. Default: true.

    run_tools_scripts_before_guest_standby bool

    Enable pre-standby scripts to run when VMware Tools is installed. Default: true.

    sata_controller_count int

    The number of SATA controllers that Terraform 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.

    scsi_bus_sharing str

    The type of SCSI bus sharing for the virtual machine SCSI controller. One of physicalSharing, virtualSharing, and noSharing. Default: noSharing.

    scsi_controller_count int

    The number of SCSI controllers that Terraform 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.

    scsi_type str

    The SCSI controller type for the virtual machine. One of lsilogic (LSI Logic Parallel), lsilogic-sas (LSI Logic SAS) or pvscsi (VMware Paravirtual). Default: pvscsi.

    shutdown_wait_timeout int

    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 virtual machine will be forced to power-off after the timeout, otherwise an error is returned. Default: 3 minutes.

    storage_policy_id str

    The UUID of the storage policy to assign to the virtual disk.

    swap_placement_policy str

    The swap file placement policy for the virtual machine. One of inherit, hostLocal, or vmDirectory. Default: inherit.

    sync_time_with_host bool

    Enable the guest operating system to synchronization its clock with the host when the virtual machine is powered on or resumed. Requires vSphere 7.0 Update 1 and later. Requires VMware Tools to be installed. Default: false.

    sync_time_with_host_periodically bool

    Enable the guest operating system to periodically synchronize its clock with the host. Requires vSphere 7.0 Update 1 and later. On previous versions, setting sync_time_with_host is will enable periodic synchronization. Requires VMware Tools to be installed. Default: false.

    tags Sequence[str]

    The IDs of any tags to attach to this resource. Please refer to the vsphere.Tag resource for more information on applying tags to virtual machine resources.

    NOTE: Tagging support is unsupported on direct ESXi host connections and requires vCenter Server instance.

    tools_upgrade_policy str

    Enable automatic upgrade of the VMware Tools version when the virtual machine is rebooted. If necessary, VMware Tools is upgraded to the latest version supported by the host on which the virtual machine is running. Requires VMware Tools to be installed. One of manual or upgradeAtPowerCycle. Default: manual.

    uuid str

    The UUID of the virtual disk VMDK file. This is used to track the virtual disk on the virtual machine.

    vapp VirtualMachineVappArgs

    Used for vApp configurations. The only sub-key available is properties, which is a key/value map of properties for virtual machines imported from and OVF/OVA. See Using vApp Properties for OVF/OVA Configuration for more information.

    vapp_transports Sequence[str]

    Computed value which is only valid for cloned virtual machines. A list of vApp transport methods supported by the source virtual machine or template.

    vbs_enabled bool

    Enable Virtualization Based Security. Requires firmware to be efi. In addition, vvtd_enabled, nested_hv_enabled, and efi_secure_boot_enabled must all have a value of true. Supported on vSphere 6.7 and later. Default: false.

    vmware_tools_status str

    The state of VMware Tools in the guest. This will determine the proper course of action for some device operations.

    vmx_path str

    The path of the virtual machine configuration file on the datastore in which the virtual machine is placed.

    vvtd_enabled bool

    Enable Intel Virtualization Technology for Directed I/O for the virtual machine (I/O MMU in the vSphere Client). Supported on vSphere 6.7 and later. Default: false.

    wait_for_guest_ip_timeout int

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. This should only be used if the version 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.

    wait_for_guest_net_routable bool

    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.

    wait_for_guest_net_timeout int

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. 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.

    alternateGuestName String

    The guest name for the operating system when guest_id is otherGuest or otherGuest64.

    annotation String

    A user-provided description of the virtual machine.

    bootDelay Number

    The number of milliseconds to wait before starting the boot sequence. The default is no delay.

    bootRetryDelay Number

    The number of milliseconds to wait before retrying the boot sequence. This option is only valid if boot_retry_enabled is true. Default: 10000 (10 seconds).

    bootRetryEnabled Boolean

    If set to true, a virtual machine that fails to boot will try again after the delay defined in boot_retry_delay. Default: false.

    cdroms List<Property Map>

    A specification for a CD-ROM device on the virtual machine. See CD-ROM options for more information.

    changeVersion String

    A unique identifier for a given version of the last configuration was applied.

    clone Property Map

    When specified, the virtual machine will be created as a clone of a specified template. Optional customization options can be submitted for the resource. See creating a virtual machine from a template for more information.

    cpuHotAddEnabled Boolean

    Allow CPUs to be added to the virtual machine while it is powered on.

    cpuHotRemoveEnabled Boolean

    Allow CPUs to be removed to the virtual machine while it is powered on.

    cpuLimit Number

    The maximum amount of CPU (in MHz) that the virtual machine can consume, regardless of available resources. The default is no limit.

    cpuPerformanceCountersEnabled Boolean

    Enable CPU performance counters on the virtual machine. Default: false.

    cpuReservation Number

    The amount of CPU (in MHz) that the virtual machine is guaranteed. The default is no reservation.

    cpuShareCount Number

    The number of CPU shares allocated to the virtual machine when the cpu_share_level is custom.

    cpuShareLevel String

    The allocation level for the virtual machine CPU resources. One of high, low, normal, or custom. Default: custom.

    customAttributes Map<String>

    Map of custom attribute ids to attribute value strings to set for virtual machine. Please refer to the vsphere_custom_attributes resource for more information on setting custom attributes.

    NOTE: Custom attributes requires vCenter Server and is not supported on direct ESXi host connections.

    datacenterId String

    The datacenter ID. Required only when deploying an OVF/OVA template.

    datastoreClusterId String

    The managed object reference ID of the datastore cluster in which to place the virtual machine. This setting applies to entire virtual machine and implies that you wish to use vSphere Storage DRS with the virtual machine. See the section on virtual machine migration for more information on modifying this value.

    NOTE: One of datastore_id or datastore_cluster_id must be specified.

    NOTE: Use of datastore_cluster_id requires vSphere Storage DRS to be enabled on the specified datastore cluster.

    NOTE: The datastore_cluster_id setting applies to the entire virtual machine resource. You cannot assign individual individual disks to datastore clusters. In addition, you cannot use the attach setting to attach external disks on virtual machines that are assigned to datastore clusters.

    datastoreId String

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    defaultIpAddress String

    The IP address selected by the provider to be used with any provisioners configured on this resource. When possible, this is the first IPv4 address that is reachable through the default gateway configured on the machine, then the first reachable IPv6 address, and then the first general discovered address if neither exists. If VMware Tools is not running on the virtual machine, or if the virtual machine is powered off, this value will be blank.

    disks List<Property Map>

    A specification for a virtual disk device on the virtual machine. See disk options for more information.

    efiSecureBootEnabled Boolean

    Use this option to enable EFI secure boot when the firmware type is set to is efi. Default: false.

    NOTE: EFI secure boot is only available on vSphere 6.5 and later.

    enableDiskUuid Boolean

    Expose the UUIDs of attached virtual disks to the virtual machine, allowing access to them in the guest. Default: false.

    enableLogging Boolean

    Enable logging of virtual machine events to a log file stored in the virtual machine directory. Default: false.

    eptRviMode String

    The EPT/RVI (hardware memory virtualization) setting for the virtual machine. One of automatic, on, or off. Default: automatic.

    extraConfig Map<String>

    Extra configuration data for the virtual machine. Can be used to supply advanced parameters not normally in configuration, such as instance metadata and userdata.

    NOTE: Do not use extra_config when working with a template imported from OVF/OVA as your settings may be ignored. Use the vapp block properties section as described in Using vApp Properties for OVF/OVA Configuration.

    extraConfigRebootRequired Boolean

    Allow the virtual machine to be rebooted when a change to extra_config occurs. Default: true.

    firmware String

    The firmware for the virtual machine. One of bios or efi.

    folder String

    The path to the virtual machine folder in which to place the virtual machine, relative to the datacenter path (/<datacenter-name>/vm). For example, /dc-01/vm/foo

    forcePowerOff Boolean

    If a guest shutdown failed or times out while updating or destroying (see shutdown_wait_timeout), force the power-off of the virtual machine. Default: true.

    guestId String

    The guest ID for the operating system type. For a full list of possible values, see here. Default: otherGuest64.

    guestIpAddresses List<String>

    The current list of IP addresses on this machine, including the value of default_ip_address. If VMware Tools is not running on the virtual machine, or if the virtul machine is powered off, this list will be empty.

    hardwareVersion Number

    The hardware version number. Valid range is from 4 to 21. The hardware version cannot be downgraded. See virtual machine hardware versions and compatibility for more information on supported settings.

    hostSystemId String

    The managed object reference ID of a host on which to place the virtual machine. See the section on virtual machine migration for more information on modifying this value. When using a vSphere cluster, if a host_system_id is not supplied, vSphere will select a host in the cluster to place the virtual machine, according to any defaults or vSphere DRS placement policies.

    hvMode String

    The hardware virtualization (non-nested) setting for the virtual machine. One of hvAuto, hvOn, or hvOff. Default: hvAuto.

    ideControllerCount Number

    The number of IDE controllers that the virtual machine. This directly affects the number 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: 2.

    ignoredGuestIps List<String>

    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 so that the waiter will continue to wait for a valid IP address. Default: [].

    imported Boolean

    Indicates if the virtual machine resource has been imported, or if the state has been migrated from a previous version of the resource. It influences the behavior of the first post-import apply operation. See the section on importing below.

    latencySensitivity String

    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. One of low, normal, medium, or high.

    NOTE: On higher sensitivities, you may need to adjust the memory_reservation to the full amount of memory provisioned for the virtual machine.

    memory Number

    The memory size to assign to the virtual machine, in MB. Default: 1024 (1 GB).

    memoryHotAddEnabled Boolean

    Allow memory to be added to the virtual machine while it is powered on.

    NOTE: CPU and memory hot add options are not available on all guest operating systems. Please refer to the VMware Guest OS Compatibility Guide to which settings are allow for your guest operating system. In addition, at least one pulumi up must be run before you are able to use CPU and memory hot add.

    NOTE: For Linux 64-bit guest operating systems with less than or equal to 3GB, the virtual machine must powered off to add memory beyond 3GB. Subsequent hot add of memory does not require the virtual machine to be powered-off to apply the plan. Please refer to VMware KB 2008405.

    memoryLimit Number

    The maximum amount of memory (in MB) that th virtual machine can consume, regardless of available resources. The default is no limit.

    memoryReservation Number

    The amount of memory (in MB) that the virtual machine is guaranteed. The default is no reservation.

    memoryShareCount Number

    The number of memory shares allocated to the virtual machine when the memory_share_level is custom.

    memoryShareLevel String

    The allocation level for the virtual machine memory resources. One of high, low, normal, or custom. Default: custom.

    migrateWaitTimeout Number

    The amount of time, in minutes, to wait for a virtual machine migration to complete before failing. Default: 10 minutes. See the section on virtual machine migration for more information.

    moid String

    The managed object reference ID of the created virtual machine.

    name String

    The name of the virtual machine.

    nestedHvEnabled Boolean

    Enable nested hardware virtualization on the virtual machine, facilitating nested virtualization in the guest operating system. Default: false.

    networkInterfaces List<Property Map>

    A specification for a virtual NIC on the virtual machine. See network interface options for more information.

    numCoresPerSocket Number

    The number of cores per socket in the 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.

    numCpus Number

    The total number of virtual processor cores to assign to the virtual machine. Default: 1.

    ovfDeploy Property Map

    When specified, the virtual machine will be deployed from the provided OVF/OVA template. See creating a virtual machine from an OVF/OVA template for more information.

    pciDeviceIds List<String>

    List of host PCI device IDs in which to create PCI passthroughs.

    NOTE: Cloning requires vCenter Server and is not supported on direct ESXi host connections.

    powerState String

    A computed value for the current power state of the virtual machine. One of on, off, or suspended.

    poweronTimeout Number

    The amount of time, in seconds, that we will be trying to power on a VM

    rebootRequired Boolean

    Value internal to Terraform used to determine if a configuration set change requires a reboot.

    replaceTrigger String

    Triggers replacement of resource whenever it changes.

    For example, replace_trigger = sha256(format("%s-%s",data.template_file.cloud_init_metadata.rendered,data.template_file.cloud_init_userdata.rendered)) will fingerprint the changes in cloud-init metadata and userdata templates. This will enable a replacement of the resource whenever the dependant template renders a new configuration. (Forces a replacement.)

    resourcePoolId String

    The managed object reference ID of the resource pool in which to place the virtual machine. See the Virtual Machine Migration section for more information on modifying this value.

    NOTE: All clusters and standalone hosts have a default root resource pool. This resource argument does not directly accept the cluster or standalone host resource. For more information, see the section on specifying the Root Resource Pool in the vsphere.ResourcePool data source documentation on using the root resource pool.

    runToolsScriptsAfterPowerOn Boolean

    Enable post-power-on scripts to run when VMware Tools is installed. Default: true.

    runToolsScriptsAfterResume Boolean

    Enable ost-resume scripts to run when VMware Tools is installed. Default: true.

    runToolsScriptsBeforeGuestReboot Boolean

    Enable pre-reboot scripts to run when VMware Tools is installed. Default: false.

    runToolsScriptsBeforeGuestShutdown Boolean

    Enable pre-shutdown scripts to run when VMware Tools is installed. Default: true.

    runToolsScriptsBeforeGuestStandby Boolean

    Enable pre-standby scripts to run when VMware Tools is installed. Default: true.

    sataControllerCount Number

    The number of SATA controllers that Terraform 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.

    scsiBusSharing String

    The type of SCSI bus sharing for the virtual machine SCSI controller. One of physicalSharing, virtualSharing, and noSharing. Default: noSharing.

    scsiControllerCount Number

    The number of SCSI controllers that Terraform 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.

    scsiType String

    The SCSI controller type for the virtual machine. One of lsilogic (LSI Logic Parallel), lsilogic-sas (LSI Logic SAS) or pvscsi (VMware Paravirtual). Default: pvscsi.

    shutdownWaitTimeout Number

    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 virtual machine will be forced to power-off after the timeout, otherwise an error is returned. Default: 3 minutes.

    storagePolicyId String

    The UUID of the storage policy to assign to the virtual disk.

    swapPlacementPolicy String

    The swap file placement policy for the virtual machine. One of inherit, hostLocal, or vmDirectory. Default: inherit.

    syncTimeWithHost Boolean

    Enable the guest operating system to synchronization its clock with the host when the virtual machine is powered on or resumed. Requires vSphere 7.0 Update 1 and later. Requires VMware Tools to be installed. Default: false.

    syncTimeWithHostPeriodically Boolean

    Enable the guest operating system to periodically synchronize its clock with the host. Requires vSphere 7.0 Update 1 and later. On previous versions, setting sync_time_with_host is will enable periodic synchronization. Requires VMware Tools to be installed. Default: false.

    tags List<String>

    The IDs of any tags to attach to this resource. Please refer to the vsphere.Tag resource for more information on applying tags to virtual machine resources.

    NOTE: Tagging support is unsupported on direct ESXi host connections and requires vCenter Server instance.

    toolsUpgradePolicy String

    Enable automatic upgrade of the VMware Tools version when the virtual machine is rebooted. If necessary, VMware Tools is upgraded to the latest version supported by the host on which the virtual machine is running. Requires VMware Tools to be installed. One of manual or upgradeAtPowerCycle. Default: manual.

    uuid String

    The UUID of the virtual disk VMDK file. This is used to track the virtual disk on the virtual machine.

    vapp Property Map

    Used for vApp configurations. The only sub-key available is properties, which is a key/value map of properties for virtual machines imported from and OVF/OVA. See Using vApp Properties for OVF/OVA Configuration for more information.

    vappTransports List<String>

    Computed value which is only valid for cloned virtual machines. A list of vApp transport methods supported by the source virtual machine or template.

    vbsEnabled Boolean

    Enable Virtualization Based Security. Requires firmware to be efi. In addition, vvtd_enabled, nested_hv_enabled, and efi_secure_boot_enabled must all have a value of true. Supported on vSphere 6.7 and later. Default: false.

    vmwareToolsStatus String

    The state of VMware Tools in the guest. This will determine the proper course of action for some device operations.

    vmxPath String

    The path of the virtual machine configuration file on the datastore in which the virtual machine is placed.

    vvtdEnabled Boolean

    Enable Intel Virtualization Technology for Directed I/O for the virtual machine (I/O MMU in the vSphere Client). Supported on vSphere 6.7 and later. Default: false.

    waitForGuestIpTimeout Number

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. This should only be used if the version 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.

    waitForGuestNetRoutable Boolean

    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.

    waitForGuestNetTimeout Number

    The amount of time, in minutes, to wait for an available guest IP address on the virtual machine. 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.

    Supporting Types

    VirtualMachineCdrom, VirtualMachineCdromArgs

    ClientDevice bool

    Indicates whether the device should be backed by remote client device. Conflicts with datastore_id and path.

    DatastoreId string

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    DeviceAddress string
    Key int

    The ID of the device within the virtual machine.

    Path string

    The path to the ISO file. Required for using a datastore ISO. Conflicts with client_device.

    NOTE: Either client_device (for a remote backed CD-ROM) or datastore_id and path (for a datastore ISO backed CD-ROM) are required to .

    NOTE: Some CD-ROM drive types are not supported by this resource, such as pass-through devices. If these drives are present in a cloned template, or added outside of the provider, the desired state will be corrected to the defined device, or removed if no cdrom block is present.

    ClientDevice bool

    Indicates whether the device should be backed by remote client device. Conflicts with datastore_id and path.

    DatastoreId string

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    DeviceAddress string
    Key int

    The ID of the device within the virtual machine.

    Path string

    The path to the ISO file. Required for using a datastore ISO. Conflicts with client_device.

    NOTE: Either client_device (for a remote backed CD-ROM) or datastore_id and path (for a datastore ISO backed CD-ROM) are required to .

    NOTE: Some CD-ROM drive types are not supported by this resource, such as pass-through devices. If these drives are present in a cloned template, or added outside of the provider, the desired state will be corrected to the defined device, or removed if no cdrom block is present.

    clientDevice Boolean

    Indicates whether the device should be backed by remote client device. Conflicts with datastore_id and path.

    datastoreId String

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    deviceAddress String
    key Integer

    The ID of the device within the virtual machine.

    path String

    The path to the ISO file. Required for using a datastore ISO. Conflicts with client_device.

    NOTE: Either client_device (for a remote backed CD-ROM) or datastore_id and path (for a datastore ISO backed CD-ROM) are required to .

    NOTE: Some CD-ROM drive types are not supported by this resource, such as pass-through devices. If these drives are present in a cloned template, or added outside of the provider, the desired state will be corrected to the defined device, or removed if no cdrom block is present.

    clientDevice boolean

    Indicates whether the device should be backed by remote client device. Conflicts with datastore_id and path.

    datastoreId string

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    deviceAddress string
    key number

    The ID of the device within the virtual machine.

    path string

    The path to the ISO file. Required for using a datastore ISO. Conflicts with client_device.

    NOTE: Either client_device (for a remote backed CD-ROM) or datastore_id and path (for a datastore ISO backed CD-ROM) are required to .

    NOTE: Some CD-ROM drive types are not supported by this resource, such as pass-through devices. If these drives are present in a cloned template, or added outside of the provider, the desired state will be corrected to the defined device, or removed if no cdrom block is present.

    client_device bool

    Indicates whether the device should be backed by remote client device. Conflicts with datastore_id and path.

    datastore_id str

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    device_address str
    key int

    The ID of the device within the virtual machine.

    path str

    The path to the ISO file. Required for using a datastore ISO. Conflicts with client_device.

    NOTE: Either client_device (for a remote backed CD-ROM) or datastore_id and path (for a datastore ISO backed CD-ROM) are required to .

    NOTE: Some CD-ROM drive types are not supported by this resource, such as pass-through devices. If these drives are present in a cloned template, or added outside of the provider, the desired state will be corrected to the defined device, or removed if no cdrom block is present.

    clientDevice Boolean

    Indicates whether the device should be backed by remote client device. Conflicts with datastore_id and path.

    datastoreId String

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    deviceAddress String
    key Number

    The ID of the device within the virtual machine.

    path String

    The path to the ISO file. Required for using a datastore ISO. Conflicts with client_device.

    NOTE: Either client_device (for a remote backed CD-ROM) or datastore_id and path (for a datastore ISO backed CD-ROM) are required to .

    NOTE: Some CD-ROM drive types are not supported by this resource, such as pass-through devices. If these drives are present in a cloned template, or added outside of the provider, the desired state will be corrected to the defined device, or removed if no cdrom block is present.

    VirtualMachineClone, VirtualMachineCloneArgs

    VirtualMachineCloneCustomizationSpec, VirtualMachineCloneCustomizationSpecArgs

    Id string

    The UUID of the virtual machine.

    Timeout int
    Id string

    The UUID of the virtual machine.

    Timeout int
    id String

    The UUID of the virtual machine.

    timeout Integer
    id string

    The UUID of the virtual machine.

    timeout number
    id str

    The UUID of the virtual machine.

    timeout int
    id String

    The UUID of the virtual machine.

    timeout Number

    VirtualMachineCloneCustomize, VirtualMachineCloneCustomizeArgs

    dnsServerLists List<String>
    dnsSuffixLists List<String>
    ipv4Gateway String
    ipv6Gateway String
    linuxOptions VirtualMachineCloneCustomizeLinuxOptions
    networkInterfaces List<VirtualMachineCloneCustomizeNetworkInterface>

    A specification for a virtual NIC on the virtual machine. See network interface options for more information.

    timeout Integer
    windowsOptions VirtualMachineCloneCustomizeWindowsOptions
    windowsSysprepText String
    dnsServerLists List<String>
    dnsSuffixLists List<String>
    ipv4Gateway String
    ipv6Gateway String
    linuxOptions Property Map
    networkInterfaces List<Property Map>

    A specification for a virtual NIC on the virtual machine. See network interface options for more information.

    timeout Number
    windowsOptions Property Map
    windowsSysprepText String

    VirtualMachineCloneCustomizeLinuxOptions, VirtualMachineCloneCustomizeLinuxOptionsArgs

    Domain string
    HostName string
    HwClockUtc bool
    ScriptText string
    TimeZone string
    Domain string
    HostName string
    HwClockUtc bool
    ScriptText string
    TimeZone string
    domain String
    hostName String
    hwClockUtc Boolean
    scriptText String
    timeZone String
    domain string
    hostName string
    hwClockUtc boolean
    scriptText string
    timeZone string
    domain String
    hostName String
    hwClockUtc Boolean
    scriptText String
    timeZone String

    VirtualMachineCloneCustomizeNetworkInterface, VirtualMachineCloneCustomizeNetworkInterfaceArgs

    dnsDomain String
    dnsServerLists List<String>
    ipv4Address String
    ipv4Netmask Integer
    ipv6Address String
    ipv6Netmask Integer
    dnsDomain String
    dnsServerLists List<String>
    ipv4Address String
    ipv4Netmask Number
    ipv6Address String
    ipv6Netmask Number

    VirtualMachineCloneCustomizeWindowsOptions, VirtualMachineCloneCustomizeWindowsOptionsArgs

    VirtualMachineDisk, VirtualMachineDiskArgs

    Label string
    Attach bool

    Attach an external disk instead of creating a new one. Implies and conflicts with keep_on_remove. If set, you cannot set size, eagerly_scrub, or thin_provisioned. Must set path if used.

    NOTE: External disks cannot be attached when datastore_cluster_id is used.

    ControllerType string

    The type of storage controller to attach the disk to. Can be scsi, sata, or ide. You must have the appropriate number of controllers enabled for the selected type. Default scsi.

    DatastoreId string

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    DeviceAddress string
    DiskMode string

    The mode of this this virtual disk for purposes of writes and snapshots. One of append, independent_nonpersistent, independent_persistent, nonpersistent, persistent, or undoable. Default: persistent. For more information on these option, please refer to the product documentation.

    DiskSharing string

    The sharing mode of this virtual disk. One of sharingMultiWriter or sharingNone. Default: sharingNone.

    NOTE: Disk sharing is only available on vSphere 6.0 and later.

    EagerlyScrub bool

    If set to true, the disk space is zeroed out when the virtual machine is created. This will delay the creation of the virtual disk. Cannot be set to true when thin_provisioned is true. See the section on picking a disk type for more information. Default: false.

    IoLimit int

    The upper limit of IOPS that this disk can use. The default is no limit.

    IoReservation int

    The I/O reservation (guarantee) for the virtual disk has, in IOPS. The default is no reservation.

    IoShareCount int

    The share count for the virtual disk when the share level is custom.

    IoShareLevel string

    The share allocation level for the virtual disk. One of low, normal, high, or custom. Default: normal.

    KeepOnRemove bool

    Keep this disk when removing the device or destroying the virtual machine. Default: false.

    Key int

    The ID of the device within the virtual machine.

    Path string

    The path to the ISO file. Required for using a datastore ISO. Conflicts with client_device.

    NOTE: Either client_device (for a remote backed CD-ROM) or datastore_id and path (for a datastore ISO backed CD-ROM) are required to .

    NOTE: Some CD-ROM drive types are not supported by this resource, such as pass-through devices. If these drives are present in a cloned template, or added outside of the provider, the desired state will be corrected to the defined device, or removed if no cdrom block is present.

    Size int

    The size of the disk, in GB. Must be a whole number.

    StoragePolicyId string

    The UUID of the storage policy to assign to the virtual disk.

    ThinProvisioned bool

    If true, the disk is thin provisioned, with space for the file being allocated on an as-needed basis. Cannot be set to true when eagerly_scrub is true. See the section on selecting a disk type for more information. Default: true.

    UnitNumber int

    The disk number on the storage bus. The maximum value for this setting is the value of the controller count times the controller capacity (15 for SCSI, 30 for SATA, and 2 for IDE). Duplicate unit numbers are not allowed. Default 0, for which one disk must be set to.

    Uuid string

    The UUID of the virtual disk VMDK file. This is used to track the virtual disk on the virtual machine.

    WriteThrough bool

    If true, writes for this disk are sent directly to the filesystem immediately instead of being buffered. Default: false.

    Label string
    Attach bool

    Attach an external disk instead of creating a new one. Implies and conflicts with keep_on_remove. If set, you cannot set size, eagerly_scrub, or thin_provisioned. Must set path if used.

    NOTE: External disks cannot be attached when datastore_cluster_id is used.

    ControllerType string

    The type of storage controller to attach the disk to. Can be scsi, sata, or ide. You must have the appropriate number of controllers enabled for the selected type. Default scsi.

    DatastoreId string

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    DeviceAddress string
    DiskMode string

    The mode of this this virtual disk for purposes of writes and snapshots. One of append, independent_nonpersistent, independent_persistent, nonpersistent, persistent, or undoable. Default: persistent. For more information on these option, please refer to the product documentation.

    DiskSharing string

    The sharing mode of this virtual disk. One of sharingMultiWriter or sharingNone. Default: sharingNone.

    NOTE: Disk sharing is only available on vSphere 6.0 and later.

    EagerlyScrub bool

    If set to true, the disk space is zeroed out when the virtual machine is created. This will delay the creation of the virtual disk. Cannot be set to true when thin_provisioned is true. See the section on picking a disk type for more information. Default: false.

    IoLimit int

    The upper limit of IOPS that this disk can use. The default is no limit.

    IoReservation int

    The I/O reservation (guarantee) for the virtual disk has, in IOPS. The default is no reservation.

    IoShareCount int

    The share count for the virtual disk when the share level is custom.

    IoShareLevel string

    The share allocation level for the virtual disk. One of low, normal, high, or custom. Default: normal.

    KeepOnRemove bool

    Keep this disk when removing the device or destroying the virtual machine. Default: false.

    Key int

    The ID of the device within the virtual machine.

    Path string

    The path to the ISO file. Required for using a datastore ISO. Conflicts with client_device.

    NOTE: Either client_device (for a remote backed CD-ROM) or datastore_id and path (for a datastore ISO backed CD-ROM) are required to .

    NOTE: Some CD-ROM drive types are not supported by this resource, such as pass-through devices. If these drives are present in a cloned template, or added outside of the provider, the desired state will be corrected to the defined device, or removed if no cdrom block is present.

    Size int

    The size of the disk, in GB. Must be a whole number.

    StoragePolicyId string

    The UUID of the storage policy to assign to the virtual disk.

    ThinProvisioned bool

    If true, the disk is thin provisioned, with space for the file being allocated on an as-needed basis. Cannot be set to true when eagerly_scrub is true. See the section on selecting a disk type for more information. Default: true.

    UnitNumber int

    The disk number on the storage bus. The maximum value for this setting is the value of the controller count times the controller capacity (15 for SCSI, 30 for SATA, and 2 for IDE). Duplicate unit numbers are not allowed. Default 0, for which one disk must be set to.

    Uuid string

    The UUID of the virtual disk VMDK file. This is used to track the virtual disk on the virtual machine.

    WriteThrough bool

    If true, writes for this disk are sent directly to the filesystem immediately instead of being buffered. Default: false.

    label String
    attach Boolean

    Attach an external disk instead of creating a new one. Implies and conflicts with keep_on_remove. If set, you cannot set size, eagerly_scrub, or thin_provisioned. Must set path if used.

    NOTE: External disks cannot be attached when datastore_cluster_id is used.

    controllerType String

    The type of storage controller to attach the disk to. Can be scsi, sata, or ide. You must have the appropriate number of controllers enabled for the selected type. Default scsi.

    datastoreId String

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    deviceAddress String
    diskMode String

    The mode of this this virtual disk for purposes of writes and snapshots. One of append, independent_nonpersistent, independent_persistent, nonpersistent, persistent, or undoable. Default: persistent. For more information on these option, please refer to the product documentation.

    diskSharing String

    The sharing mode of this virtual disk. One of sharingMultiWriter or sharingNone. Default: sharingNone.

    NOTE: Disk sharing is only available on vSphere 6.0 and later.

    eagerlyScrub Boolean

    If set to true, the disk space is zeroed out when the virtual machine is created. This will delay the creation of the virtual disk. Cannot be set to true when thin_provisioned is true. See the section on picking a disk type for more information. Default: false.

    ioLimit Integer

    The upper limit of IOPS that this disk can use. The default is no limit.

    ioReservation Integer

    The I/O reservation (guarantee) for the virtual disk has, in IOPS. The default is no reservation.

    ioShareCount Integer

    The share count for the virtual disk when the share level is custom.

    ioShareLevel String

    The share allocation level for the virtual disk. One of low, normal, high, or custom. Default: normal.

    keepOnRemove Boolean

    Keep this disk when removing the device or destroying the virtual machine. Default: false.

    key Integer

    The ID of the device within the virtual machine.

    path String

    The path to the ISO file. Required for using a datastore ISO. Conflicts with client_device.

    NOTE: Either client_device (for a remote backed CD-ROM) or datastore_id and path (for a datastore ISO backed CD-ROM) are required to .

    NOTE: Some CD-ROM drive types are not supported by this resource, such as pass-through devices. If these drives are present in a cloned template, or added outside of the provider, the desired state will be corrected to the defined device, or removed if no cdrom block is present.

    size Integer

    The size of the disk, in GB. Must be a whole number.

    storagePolicyId String

    The UUID of the storage policy to assign to the virtual disk.

    thinProvisioned Boolean

    If true, the disk is thin provisioned, with space for the file being allocated on an as-needed basis. Cannot be set to true when eagerly_scrub is true. See the section on selecting a disk type for more information. Default: true.

    unitNumber Integer

    The disk number on the storage bus. The maximum value for this setting is the value of the controller count times the controller capacity (15 for SCSI, 30 for SATA, and 2 for IDE). Duplicate unit numbers are not allowed. Default 0, for which one disk must be set to.

    uuid String

    The UUID of the virtual disk VMDK file. This is used to track the virtual disk on the virtual machine.

    writeThrough Boolean

    If true, writes for this disk are sent directly to the filesystem immediately instead of being buffered. Default: false.

    label string
    attach boolean

    Attach an external disk instead of creating a new one. Implies and conflicts with keep_on_remove. If set, you cannot set size, eagerly_scrub, or thin_provisioned. Must set path if used.

    NOTE: External disks cannot be attached when datastore_cluster_id is used.

    controllerType string

    The type of storage controller to attach the disk to. Can be scsi, sata, or ide. You must have the appropriate number of controllers enabled for the selected type. Default scsi.

    datastoreId string

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    deviceAddress string
    diskMode string

    The mode of this this virtual disk for purposes of writes and snapshots. One of append, independent_nonpersistent, independent_persistent, nonpersistent, persistent, or undoable. Default: persistent. For more information on these option, please refer to the product documentation.

    diskSharing string

    The sharing mode of this virtual disk. One of sharingMultiWriter or sharingNone. Default: sharingNone.

    NOTE: Disk sharing is only available on vSphere 6.0 and later.

    eagerlyScrub boolean

    If set to true, the disk space is zeroed out when the virtual machine is created. This will delay the creation of the virtual disk. Cannot be set to true when thin_provisioned is true. See the section on picking a disk type for more information. Default: false.

    ioLimit number

    The upper limit of IOPS that this disk can use. The default is no limit.

    ioReservation number

    The I/O reservation (guarantee) for the virtual disk has, in IOPS. The default is no reservation.

    ioShareCount number

    The share count for the virtual disk when the share level is custom.

    ioShareLevel string

    The share allocation level for the virtual disk. One of low, normal, high, or custom. Default: normal.

    keepOnRemove boolean

    Keep this disk when removing the device or destroying the virtual machine. Default: false.

    key number

    The ID of the device within the virtual machine.

    path string

    The path to the ISO file. Required for using a datastore ISO. Conflicts with client_device.

    NOTE: Either client_device (for a remote backed CD-ROM) or datastore_id and path (for a datastore ISO backed CD-ROM) are required to .

    NOTE: Some CD-ROM drive types are not supported by this resource, such as pass-through devices. If these drives are present in a cloned template, or added outside of the provider, the desired state will be corrected to the defined device, or removed if no cdrom block is present.

    size number

    The size of the disk, in GB. Must be a whole number.

    storagePolicyId string

    The UUID of the storage policy to assign to the virtual disk.

    thinProvisioned boolean

    If true, the disk is thin provisioned, with space for the file being allocated on an as-needed basis. Cannot be set to true when eagerly_scrub is true. See the section on selecting a disk type for more information. Default: true.

    unitNumber number

    The disk number on the storage bus. The maximum value for this setting is the value of the controller count times the controller capacity (15 for SCSI, 30 for SATA, and 2 for IDE). Duplicate unit numbers are not allowed. Default 0, for which one disk must be set to.

    uuid string

    The UUID of the virtual disk VMDK file. This is used to track the virtual disk on the virtual machine.

    writeThrough boolean

    If true, writes for this disk are sent directly to the filesystem immediately instead of being buffered. Default: false.

    label str
    attach bool

    Attach an external disk instead of creating a new one. Implies and conflicts with keep_on_remove. If set, you cannot set size, eagerly_scrub, or thin_provisioned. Must set path if used.

    NOTE: External disks cannot be attached when datastore_cluster_id is used.

    controller_type str

    The type of storage controller to attach the disk to. Can be scsi, sata, or ide. You must have the appropriate number of controllers enabled for the selected type. Default scsi.

    datastore_id str

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    device_address str
    disk_mode str

    The mode of this this virtual disk for purposes of writes and snapshots. One of append, independent_nonpersistent, independent_persistent, nonpersistent, persistent, or undoable. Default: persistent. For more information on these option, please refer to the product documentation.

    disk_sharing str

    The sharing mode of this virtual disk. One of sharingMultiWriter or sharingNone. Default: sharingNone.

    NOTE: Disk sharing is only available on vSphere 6.0 and later.

    eagerly_scrub bool

    If set to true, the disk space is zeroed out when the virtual machine is created. This will delay the creation of the virtual disk. Cannot be set to true when thin_provisioned is true. See the section on picking a disk type for more information. Default: false.

    io_limit int

    The upper limit of IOPS that this disk can use. The default is no limit.

    io_reservation int

    The I/O reservation (guarantee) for the virtual disk has, in IOPS. The default is no reservation.

    io_share_count int

    The share count for the virtual disk when the share level is custom.

    io_share_level str

    The share allocation level for the virtual disk. One of low, normal, high, or custom. Default: normal.

    keep_on_remove bool

    Keep this disk when removing the device or destroying the virtual machine. Default: false.

    key int

    The ID of the device within the virtual machine.

    path str

    The path to the ISO file. Required for using a datastore ISO. Conflicts with client_device.

    NOTE: Either client_device (for a remote backed CD-ROM) or datastore_id and path (for a datastore ISO backed CD-ROM) are required to .

    NOTE: Some CD-ROM drive types are not supported by this resource, such as pass-through devices. If these drives are present in a cloned template, or added outside of the provider, the desired state will be corrected to the defined device, or removed if no cdrom block is present.

    size int

    The size of the disk, in GB. Must be a whole number.

    storage_policy_id str

    The UUID of the storage policy to assign to the virtual disk.

    thin_provisioned bool

    If true, the disk is thin provisioned, with space for the file being allocated on an as-needed basis. Cannot be set to true when eagerly_scrub is true. See the section on selecting a disk type for more information. Default: true.

    unit_number int

    The disk number on the storage bus. The maximum value for this setting is the value of the controller count times the controller capacity (15 for SCSI, 30 for SATA, and 2 for IDE). Duplicate unit numbers are not allowed. Default 0, for which one disk must be set to.

    uuid str

    The UUID of the virtual disk VMDK file. This is used to track the virtual disk on the virtual machine.

    write_through bool

    If true, writes for this disk are sent directly to the filesystem immediately instead of being buffered. Default: false.

    label String
    attach Boolean

    Attach an external disk instead of creating a new one. Implies and conflicts with keep_on_remove. If set, you cannot set size, eagerly_scrub, or thin_provisioned. Must set path if used.

    NOTE: External disks cannot be attached when datastore_cluster_id is used.

    controllerType String

    The type of storage controller to attach the disk to. Can be scsi, sata, or ide. You must have the appropriate number of controllers enabled for the selected type. Default scsi.

    datastoreId String

    The datastore ID that on which the ISO is located. Required for using a datastore ISO. Conflicts with client_device.

    deviceAddress String
    diskMode String

    The mode of this this virtual disk for purposes of writes and snapshots. One of append, independent_nonpersistent, independent_persistent, nonpersistent, persistent, or undoable. Default: persistent. For more information on these option, please refer to the product documentation.

    diskSharing String

    The sharing mode of this virtual disk. One of sharingMultiWriter or sharingNone. Default: sharingNone.

    NOTE: Disk sharing is only available on vSphere 6.0 and later.

    eagerlyScrub Boolean

    If set to true, the disk space is zeroed out when the virtual machine is created. This will delay the creation of the virtual disk. Cannot be set to true when thin_provisioned is true. See the section on picking a disk type for more information. Default: false.

    ioLimit Number

    The upper limit of IOPS that this disk can use. The default is no limit.

    ioReservation Number

    The I/O reservation (guarantee) for the virtual disk has, in IOPS. The default is no reservation.

    ioShareCount Number

    The share count for the virtual disk when the share level is custom.

    ioShareLevel String

    The share allocation level for the virtual disk. One of low, normal, high, or custom. Default: normal.

    keepOnRemove Boolean

    Keep this disk when removing the device or destroying the virtual machine. Default: false.

    key Number

    The ID of the device within the virtual machine.

    path String

    The path to the ISO file. Required for using a datastore ISO. Conflicts with client_device.

    NOTE: Either client_device (for a remote backed CD-ROM) or datastore_id and path (for a datastore ISO backed CD-ROM) are required to .

    NOTE: Some CD-ROM drive types are not supported by this resource, such as pass-through devices. If these drives are present in a cloned template, or added outside of the provider, the desired state will be corrected to the defined device, or removed if no cdrom block is present.

    size Number

    The size of the disk, in GB. Must be a whole number.

    storagePolicyId String

    The UUID of the storage policy to assign to the virtual disk.

    thinProvisioned Boolean

    If true, the disk is thin provisioned, with space for the file being allocated on an as-needed basis. Cannot be set to true when eagerly_scrub is true. See the section on selecting a disk type for more information. Default: true.

    unitNumber Number

    The disk number on the storage bus. The maximum value for this setting is the value of the controller count times the controller capacity (15 for SCSI, 30 for SATA, and 2 for IDE). Duplicate unit numbers are not allowed. Default 0, for which one disk must be set to.

    uuid String

    The UUID of the virtual disk VMDK file. This is used to track the virtual disk on the virtual machine.

    writeThrough Boolean

    If true, writes for this disk are sent directly to the filesystem immediately instead of being buffered. Default: false.

    VirtualMachineNetworkInterface, VirtualMachineNetworkInterfaceArgs

    NetworkId string

    The [managed object reference ID][docs-about-morefs] of the network on which to connect the virtual machine network interface.

    AdapterType string

    The network interface type. One of e1000, e1000e, sriov, or vmxnet3. Default: vmxnet3.

    BandwidthLimit int

    The upper bandwidth limit of the network interface, in Mbits/sec. The default is no limit. Ignored if adapter_type is set to sriov.

    BandwidthReservation int

    The bandwidth reservation of the network interface, in Mbits/sec. The default is no reservation.

    BandwidthShareCount int

    The share count for the network interface when the share level is custom. Ignored if adapter_type is set to sriov.

    BandwidthShareLevel string

    The bandwidth share allocation level for the network interface. One of low, normal, high, or custom. Default: normal. Ignored if adapter_type is set to sriov.

    DeviceAddress string
    Key int

    The ID of the device within the virtual machine.

    MacAddress string

    The MAC address of the network interface. Can only be manually set if use_static_mac is true. Otherwise, the value is computed and presents the assigned MAC address for the interface.

    OvfMapping string

    Specifies which NIC in an OVF/OVA the network_interface should be associated. Only applies at creation when deploying from an OVF/OVA.

    PhysicalFunction string
    UseStaticMac bool

    If true, the mac_address field is treated as a static MAC address and set accordingly. Setting this to true requires mac_address to be set. Default: false.

    NetworkId string

    The [managed object reference ID][docs-about-morefs] of the network on which to connect the virtual machine network interface.

    AdapterType string

    The network interface type. One of e1000, e1000e, sriov, or vmxnet3. Default: vmxnet3.

    BandwidthLimit int

    The upper bandwidth limit of the network interface, in Mbits/sec. The default is no limit. Ignored if adapter_type is set to sriov.

    BandwidthReservation int

    The bandwidth reservation of the network interface, in Mbits/sec. The default is no reservation.

    BandwidthShareCount int

    The share count for the network interface when the share level is custom. Ignored if adapter_type is set to sriov.

    BandwidthShareLevel string

    The bandwidth share allocation level for the network interface. One of low, normal, high, or custom. Default: normal. Ignored if adapter_type is set to sriov.

    DeviceAddress string
    Key int

    The ID of the device within the virtual machine.

    MacAddress string

    The MAC address of the network interface. Can only be manually set if use_static_mac is true. Otherwise, the value is computed and presents the assigned MAC address for the interface.

    OvfMapping string

    Specifies which NIC in an OVF/OVA the network_interface should be associated. Only applies at creation when deploying from an OVF/OVA.

    PhysicalFunction string
    UseStaticMac bool

    If true, the mac_address field is treated as a static MAC address and set accordingly. Setting this to true requires mac_address to be set. Default: false.

    networkId String

    The [managed object reference ID][docs-about-morefs] of the network on which to connect the virtual machine network interface.

    adapterType String

    The network interface type. One of e1000, e1000e, sriov, or vmxnet3. Default: vmxnet3.

    bandwidthLimit Integer

    The upper bandwidth limit of the network interface, in Mbits/sec. The default is no limit. Ignored if adapter_type is set to sriov.

    bandwidthReservation Integer

    The bandwidth reservation of the network interface, in Mbits/sec. The default is no reservation.

    bandwidthShareCount Integer

    The share count for the network interface when the share level is custom. Ignored if adapter_type is set to sriov.

    bandwidthShareLevel String

    The bandwidth share allocation level for the network interface. One of low, normal, high, or custom. Default: normal. Ignored if adapter_type is set to sriov.

    deviceAddress String
    key Integer

    The ID of the device within the virtual machine.

    macAddress String

    The MAC address of the network interface. Can only be manually set if use_static_mac is true. Otherwise, the value is computed and presents the assigned MAC address for the interface.

    ovfMapping String

    Specifies which NIC in an OVF/OVA the network_interface should be associated. Only applies at creation when deploying from an OVF/OVA.

    physicalFunction String
    useStaticMac Boolean

    If true, the mac_address field is treated as a static MAC address and set accordingly. Setting this to true requires mac_address to be set. Default: false.

    networkId string

    The [managed object reference ID][docs-about-morefs] of the network on which to connect the virtual machine network interface.

    adapterType string

    The network interface type. One of e1000, e1000e, sriov, or vmxnet3. Default: vmxnet3.

    bandwidthLimit number

    The upper bandwidth limit of the network interface, in Mbits/sec. The default is no limit. Ignored if adapter_type is set to sriov.

    bandwidthReservation number

    The bandwidth reservation of the network interface, in Mbits/sec. The default is no reservation.

    bandwidthShareCount number

    The share count for the network interface when the share level is custom. Ignored if adapter_type is set to sriov.

    bandwidthShareLevel string

    The bandwidth share allocation level for the network interface. One of low, normal, high, or custom. Default: normal. Ignored if adapter_type is set to sriov.

    deviceAddress string
    key number

    The ID of the device within the virtual machine.

    macAddress string

    The MAC address of the network interface. Can only be manually set if use_static_mac is true. Otherwise, the value is computed and presents the assigned MAC address for the interface.

    ovfMapping string

    Specifies which NIC in an OVF/OVA the network_interface should be associated. Only applies at creation when deploying from an OVF/OVA.

    physicalFunction string
    useStaticMac boolean

    If true, the mac_address field is treated as a static MAC address and set accordingly. Setting this to true requires mac_address to be set. Default: false.

    network_id str

    The [managed object reference ID][docs-about-morefs] of the network on which to connect the virtual machine network interface.

    adapter_type str

    The network interface type. One of e1000, e1000e, sriov, or vmxnet3. Default: vmxnet3.

    bandwidth_limit int

    The upper bandwidth limit of the network interface, in Mbits/sec. The default is no limit. Ignored if adapter_type is set to sriov.

    bandwidth_reservation int

    The bandwidth reservation of the network interface, in Mbits/sec. The default is no reservation.

    bandwidth_share_count int

    The share count for the network interface when the share level is custom. Ignored if adapter_type is set to sriov.

    bandwidth_share_level str

    The bandwidth share allocation level for the network interface. One of low, normal, high, or custom. Default: normal. Ignored if adapter_type is set to sriov.

    device_address str
    key int

    The ID of the device within the virtual machine.

    mac_address str

    The MAC address of the network interface. Can only be manually set if use_static_mac is true. Otherwise, the value is computed and presents the assigned MAC address for the interface.

    ovf_mapping str

    Specifies which NIC in an OVF/OVA the network_interface should be associated. Only applies at creation when deploying from an OVF/OVA.

    physical_function str
    use_static_mac bool

    If true, the mac_address field is treated as a static MAC address and set accordingly. Setting this to true requires mac_address to be set. Default: false.

    networkId String

    The [managed object reference ID][docs-about-morefs] of the network on which to connect the virtual machine network interface.

    adapterType String

    The network interface type. One of e1000, e1000e, sriov, or vmxnet3. Default: vmxnet3.

    bandwidthLimit Number

    The upper bandwidth limit of the network interface, in Mbits/sec. The default is no limit. Ignored if adapter_type is set to sriov.

    bandwidthReservation Number

    The bandwidth reservation of the network interface, in Mbits/sec. The default is no reservation.

    bandwidthShareCount Number

    The share count for the network interface when the share level is custom. Ignored if adapter_type is set to sriov.

    bandwidthShareLevel String

    The bandwidth share allocation level for the network interface. One of low, normal, high, or custom. Default: normal. Ignored if adapter_type is set to sriov.

    deviceAddress String
    key Number

    The ID of the device within the virtual machine.

    macAddress String

    The MAC address of the network interface. Can only be manually set if use_static_mac is true. Otherwise, the value is computed and presents the assigned MAC address for the interface.

    ovfMapping String

    Specifies which NIC in an OVF/OVA the network_interface should be associated. Only applies at creation when deploying from an OVF/OVA.

    physicalFunction String
    useStaticMac Boolean

    If true, the mac_address field is treated as a static MAC address and set accordingly. Setting this to true requires mac_address to be set. Default: false.

    VirtualMachineOvfDeploy, VirtualMachineOvfDeployArgs

    VirtualMachineVapp, VirtualMachineVappArgs

    Properties Dictionary<string, string>
    Properties map[string]string
    properties Map<String,String>
    properties {[key: string]: string}
    properties Mapping[str, str]
    properties Map<String>

    Package Details

    Repository
    vSphere pulumi/pulumi-vsphere
    License
    Apache-2.0
    Notes

    This Pulumi package is based on the vsphere Terraform Provider.

    vsphere logo
    vSphere v4.9.0 published on Tuesday, Nov 28, 2023 by Pulumi