*`vcpu` - (Required) The number of virtual CPUs to allocate to the virtual machine
*`memory` - (Required) The amount of RAM (in MB) to allocate to the virtual machine
*`datacenter` - (Optional) The name of a Datacenter in which to launch the virtual machine
*`cluster` - (Optional) Name of a Cluster in which to launch the virtual machine
*`resource_pool` (Optional) The name of a Resource Pool in which to launch the virtual machine
*`gateway` - (Optional) Gateway IP address to use for all network interfaces
*`domain` - (Optional) A FQDN for the virtual machine; defaults to "vsphere.local"
*`time_zone` - (Optional) The [time zone](https://www.vmware.com/support/developer/vc-sdk/visdk41pubs/ApiReference/timezone.html) to set on the virtual machine. Defaults to "Etc/UTC"
*`dns_suffixes` - (Optional) List of name resolution suffixes for the virtual network adapter
*`dns_servers` - (Optional) List of DNS servers for the virtual network adapter; defaults to 8.8.8.8, 8.8.4.4
*`network_interface` - (Required) Configures virtual network interfaces; see [Network Interfaces](#network-interfaces) below for details.
*`disk` - (Required) Configures virtual disks; see [Disks](#disks) below for details
*`boot_delay` - (Optional) Time in seconds to wait for machine network to be ready.
<aid="network-interfaces"></a>
## Network Interfaces
Network interfaces support the following attributes:
*`label` - (Required) Label to assign to this network interface
*`ip_address` - (Optional) Static IP to assign to this network interface. Interface will use DHCP if this is left blank. Current only IPv4 ip addresses are supported.