vcenter VM: create spec

Document-based creation spec.

Representation:

{
    "boot"{
        "delay"1,
        "efi_legacy_boot"true,
        "enter_setup_mode"true,
        "network_protocol""IPV4",
        "retry"true,
        "retry_delay"1,
        "type""BIOS"
    },
    "boot_devices"[
        {
            "type""CDROM"
        },
        {
            "type""CDROM"
        }
    ],
    "cdroms"[
        {
            "allow_guest_control"true,
            "backing"{
                "device_access_type""EMULATION",
                "host_device""string",
                "iso_file""string",
                "type""ISO_FILE"
            },
            "ide"{
                "master"true,
                "primary"true
            },
            "sata"{
                "bus"1,
                "unit"1
            },
            "start_connected"true,
            "type""IDE"
        },
        {
            "allow_guest_control"true,
            "backing"{
                "device_access_type""EMULATION",
                "host_device""string",
                "iso_file""string",
                "type""ISO_FILE"
            },
            "ide"{
                "master"true,
                "primary"true
            },
            "sata"{
                "bus"1,
                "unit"1
            },
            "start_connected"true,
            "type""IDE"
        }
    ],
    "cpu"{
        "cores_per_socket"1,
        "count"1,
        "hot_add_enabled"true,
        "hot_remove_enabled"true
    },
    "disks"[
        {
            "backing"{
                "type""VMDK_FILE",
                "vmdk_file""string"
            },
            "ide"{
                "master"true,
                "primary"true
            },
            "new_vmdk"{
                "capacity"1,
                "name""string",
                "storage_policy"{
                    "policy""obj-103"
                }
            },
            "sata"{
                "bus"1,
                "unit"1
            },
            "scsi"{
                "bus"1,
                "unit"1
            },
            "type""IDE"
        },
        {
            "backing"{
                "type""VMDK_FILE",
                "vmdk_file""string"
            },
            "ide"{
                "master"true,
                "primary"true
            },
            "new_vmdk"{
                "capacity"1,
                "name""string",
                "storage_policy"{
                    "policy""obj-103"
                }
            },
            "sata"{
                "bus"1,
                "unit"1
            },
            "scsi"{
                "bus"1,
                "unit"1
            },
            "type""IDE"
        }
    ],
    "floppies"[
        {
            "allow_guest_control"true,
            "backing"{
                "host_device""string",
                "image_file""string",
                "type""IMAGE_FILE"
            },
            "start_connected"true
        },
        {
            "allow_guest_control"true,
            "backing"{
                "host_device""string",
                "image_file""string",
                "type""IMAGE_FILE"
            },
            "start_connected"true
        }
    ],
    "guest_OS""DOS",
    "hardware_version""VMX_03",
    "memory"{
        "hot_add_enabled"true,
        "size_MiB"1
    },
    "name""string",
    "nics"[
        {
            "allow_guest_control"true,
            "backing"{
                "distributed_port""string",
                "network""obj-103",
                "type""STANDARD_PORTGROUP"
            },
            "mac_address""string",
            "mac_type""MANUAL",
            "pci_slot_number"1,
            "start_connected"true,
            "type""E1000",
            "upt_compatibility_enabled"true,
            "wake_on_lan_enabled"true
        },
        {
            "allow_guest_control"true,
            "backing"{
                "distributed_port""string",
                "network""obj-103",
                "type""STANDARD_PORTGROUP"
            },
            "mac_address""string",
            "mac_type""MANUAL",
            "pci_slot_number"1,
            "start_connected"true,
            "type""E1000",
            "upt_compatibility_enabled"true,
            "wake_on_lan_enabled"true
        }
    ],
    "parallel_ports"[
        {
            "allow_guest_control"true,
            "backing"{
                "file""string",
                "host_device""string",
                "type""FILE"
            },
            "start_connected"true
        },
        {
            "allow_guest_control"true,
            "backing"{
                "file""string",
                "host_device""string",
                "type""FILE"
            },
            "start_connected"true
        }
    ],
    "placement"{
        "cluster""obj-103",
        "datastore""obj-103",
        "folder""obj-103",
        "host""obj-103",
        "resource_pool""obj-103"
    },
    "sata_adapters"[
        {
            "bus"1,
            "pci_slot_number"1,
            "type""AHCI"
        },
        {
            "bus"1,
            "pci_slot_number"1,
            "type""AHCI"
        }
    ],
    "scsi_adapters"[
        {
            "bus"1,
            "pci_slot_number"1,
            "sharing""NONE",
            "type""BUSLOGIC"
        },
        {
            "bus"1,
            "pci_slot_number"1,
            "sharing""NONE",
            "type""BUSLOGIC"
        }
    ],
    "serial_ports"[
        {
            "allow_guest_control"true,
            "backing"{
                "file""string",
                "host_device""string",
                "network_location""http://myurl.com",
                "no_rx_loss"true,
                "pipe""string",
                "proxy""http://myurl.com",
                "type""FILE"
            },
            "start_connected"true,
            "yield_on_poll"true
        },
        {
            "allow_guest_control"true,
            "backing"{
                "file""string",
                "host_device""string",
                "network_location""http://myurl.com",
                "no_rx_loss"true,
                "pipe""string",
                "proxy""http://myurl.com",
                "type""FILE"
            },
            "start_connected"true,
            "yield_on_poll"true
        }
    ],
    "storage_policy"{
        "policy""obj-103"
    }
}

Attributes:

Name Type Description
Required
guest_OS string Guest OS.

Defines the valid guest operating system types used for configuring a virtual machine. Value is one of:
DOS: MS-DOS.
WIN_31: Windows 3.1
WIN_95: Windows 95
WIN_98: Windows 98
WIN_ME: Windows Millennium Edition
WIN_NT: Windows NT 4
WIN_2000_PRO: Windows 2000 Professional
WIN_2000_SERV: Windows 2000 Server
WIN_2000_ADV_SERV: Windows 2000 Advanced Server
WIN_XP_HOME: Windows XP Home Edition
WIN_XP_PRO: Windows XP Professional
WIN_XP_PRO_64: Windows XP Professional Edition (64 bit)
WIN_NET_WEB: Windows Server 2003, Web Edition
WIN_NET_STANDARD: Windows Server 2003, Standard Edition
WIN_NET_ENTERPRISE: Windows Server 2003, Enterprise Edition
WIN_NET_DATACENTER: Windows Server 2003, Datacenter Edition
WIN_NET_BUSINESS: Windows Small Business Server 2003
WIN_NET_STANDARD_64: Windows Server 2003, Standard Edition (64 bit)
WIN_NET_ENTERPRISE_64: Windows Server 2003, Enterprise Edition (64 bit)
WIN_LONGHORN: Windows Longhorn (experimental)
WIN_LONGHORN_64: Windows Longhorn (64 bit) (experimental)
WIN_NET_DATACENTER_64: Windows Server 2003, Datacenter Edition (64 bit) (experimental)
WIN_VISTA: Windows Vista
WIN_VISTA_64: Windows Vista (64 bit)
WINDOWS_7: Windows 7
WINDOWS_7_64: Windows 7 (64 bit)
WINDOWS_7_SERVER_64: Windows Server 2008 R2 (64 bit)
WINDOWS_8: Windows 8
WINDOWS_8_64: Windows 8 (64 bit)
WINDOWS_8_SERVER_64: Windows 8 Server (64 bit)
WINDOWS_9: Windows 10
WINDOWS_9_64: Windows 10 (64 bit)
WINDOWS_9_SERVER_64: Windows 10 Server (64 bit)
WINDOWS_HYPERV: Windows Hyper-V
FREEBSD: FreeBSD 10 or earlier
FREEBSD_64: FreeBSD 10 x64 or earlier
FREEBSD_11: FreeBSD 11. This constant was added in vSphere API 6.7
FREEBSD_12: FreeBSD 12 or later. This constant was added in vSphere API 6.7
FREEBSD_11_64: FreeBSD 11 x64. This constant was added in vSphere API 6.7
FREEBSD_12_64: FreeBSD 12 x64 or later. This constant was added in vSphere API 6.7
REDHAT: Red Hat Linux 2.1
RHEL_2: Red Hat Enterprise Linux 2
RHEL_3: Red Hat Enterprise Linux 3
RHEL_3_64: Red Hat Enterprise Linux 3 (64 bit)
RHEL_4: Red Hat Enterprise Linux 4
RHEL_4_64: Red Hat Enterprise Linux 4 (64 bit)
RHEL_5: Red Hat Enterprise Linux 5
RHEL_5_64: Red Hat Enterprise Linux 5 (64 bit) (experimental)
RHEL_6: Red Hat Enterprise Linux 6
RHEL_6_64: Red Hat Enterprise Linux 6 (64 bit)
RHEL_7: Red Hat Enterprise Linux 7
RHEL_7_64: Red Hat Enterprise Linux 7 (64 bit)
RHEL_8_64: Red Hat Enterprise Linux 8 (64 bit). This constant was added in vSphere API 6.7
CENTOS: CentOS 4/5
CENTOS_64: CentOS 4/5 (64-bit)
CENTOS_6: CentOS 6
CENTOS_6_64: CentOS 6 (64-bit)
CENTOS_7: CentOS 7
CENTOS_7_64: CentOS 7 (64-bit)
CENTOS_8_64: CentOS 8 (64-bit). This constant was added in vSphere API 6.7
ORACLE_LINUX: Oracle Linux 4/5
ORACLE_LINUX_64: Oracle Linux 4/5 (64-bit)
ORACLE_LINUX_6: Oracle Linux 6
ORACLE_LINUX_6_64: Oracle Linux 6 (64-bit)
ORACLE_LINUX_7: Oracle Linux 7
ORACLE_LINUX_7_64: Oracle Linux 7 (64-bit)
ORACLE_LINUX_8_64: Oracle Linux 8 (64-bit). This constant was added in vSphere API 6.7
SUSE: Suse Linux
SUSE_64: Suse Linux (64 bit)
SLES: Suse Linux Enterprise Server 9
SLES_64: Suse Linux Enterprise Server 9 (64 bit)
SLES_10: Suse linux Enterprise Server 10
SLES_10_64: Suse Linux Enterprise Server 10 (64 bit) (experimental)
SLES_11: Suse linux Enterprise Server 11
SLES_11_64: Suse Linux Enterprise Server 11 (64 bit)
SLES_12: Suse linux Enterprise Server 12
SLES_12_64: Suse Linux Enterprise Server 12 (64 bit)
SLES_15_64: Suse Linux Enterprise Server 15 (64 bit). This constant was added in vSphere API 6.7
NLD_9: Novell Linux Desktop 9
OES: Open Enterprise Server
SJDS: Sun Java Desktop System
MANDRAKE: Mandrake Linux
MANDRIVA: Mandriva Linux
MANDRIVA_64: Mandriva Linux (64 bit)
TURBO_LINUX: Turbolinux
TURBO_LINUX_64: Turbolinux (64 bit)
UBUNTU: Ubuntu Linux
UBUNTU_64: Ubuntu Linux (64 bit)
DEBIAN_4: Debian GNU/Linux 4
DEBIAN_4_64: Debian GNU/Linux 4 (64 bit)
DEBIAN_5: Debian GNU/Linux 5
DEBIAN_5_64: Debian GNU/Linux 5 (64 bit)
DEBIAN_6: Debian GNU/Linux 6
DEBIAN_6_64: Debian GNU/Linux 6 (64 bit)
DEBIAN_7: Debian GNU/Linux 7
DEBIAN_7_64: Debian GNU/Linux 7 (64 bit)
DEBIAN_8: Debian GNU/Linux 8
DEBIAN_8_64: Debian GNU/Linux 8 (64 bit)
DEBIAN_9: Debian GNU/Linux 9
DEBIAN_9_64: Debian GNU/Linux 9 (64 bit)
DEBIAN_10: Debian GNU/Linux 10
DEBIAN_10_64: Debian GNU/Linux 10 (64 bit)
ASIANUX_3: Asianux Server 3
ASIANUX_3_64: Asianux Server 3 (64 bit)
ASIANUX_4: Asianux Server 4
ASIANUX_4_64: Asianux Server 4 (64 bit)
ASIANUX_5_64: Asianux Server 5 (64 bit)
ASIANUX_7_64: Asianux Server 7 (64 bit)
ASIANUX_8_64: Asianux Server 8 (64 bit). This constant was added in vSphere API 6.7
OPENSUSE: OpenSUSE Linux
OPENSUSE_64: OpenSUSE Linux (64 bit)
FEDORA: Fedora Linux
FEDORA_64: Fedora Linux (64 bit)
COREOS_64: CoreOS Linux (64 bit)
VMWARE_PHOTON_64: VMware Photon (64 bit)
OTHER_24X_LINUX: Linux 2.4x Kernel
OTHER_24X_LINUX_64: Linux 2.4x Kernel (64 bit) (experimental)
OTHER_26X_LINUX: Linux 2.6x Kernel
OTHER_26X_LINUX_64: Linux 2.6x Kernel (64 bit) (experimental)
OTHER_3X_LINUX: Linux 3.x Kernel
OTHER_3X_LINUX_64: Linux 3.x Kernel (64 bit)
OTHER_4X_LINUX: Linux 4.x Kernel. This constant was added in vSphere API 6.7
OTHER_4X_LINUX_64: Linux 4.x Kernel (64 bit). This constant was added in vSphere API 6.7
OTHER_LINUX: Linux 2.2x Kernel
GENERIC_LINUX: Other Linux
OTHER_LINUX_64: Linux (64 bit) (experimental)
SOLARIS_6: Solaris 6
SOLARIS_7: Solaris 7
SOLARIS_8: Solaris 8
SOLARIS_9: Solaris 9
SOLARIS_10: Solaris 10 (32 bit) (experimental)
SOLARIS_10_64: Solaris 10 (64 bit) (experimental)
SOLARIS_11_64: Solaris 11 (64 bit)
OS2: OS/2
ECOMSTATION: eComStation 1.x
ECOMSTATION_2: eComStation 2.0
NETWARE_4: Novell NetWare 4
NETWARE_5: Novell NetWare 5.1
NETWARE_6: Novell NetWare 6.x
OPENSERVER_5: SCO OpenServer 5
OPENSERVER_6: SCO OpenServer 6
UNIXWARE_7: SCO UnixWare 7
DARWIN: Mac OS 10.5
DARWIN_64: Mac OS 10.5 (64 bit)
DARWIN_10: Mac OS 10.6
DARWIN_10_64: Mac OS 10.6 (64 bit)
DARWIN_11: Mac OS 10.7
DARWIN_11_64: Mac OS 10.7 (64 bit)
DARWIN_12_64: Mac OS 10.8 (64 bit)
DARWIN_13_64: Mac OS 10.9 (64 bit)
DARWIN_14_64: Mac OS 10.10 (64 bit)
DARWIN_15_64: Mac OS 10.11 (64 bit)
DARWIN_16_64: Mac OS 10.12 (64 bit)
DARWIN_17_64: Mac OS 10.13 (64 bit). This constant was added in vSphere API 6.7
DARWIN_18_64: Mac OS 10.14 (64 bit). This constant was added in vSphere API 6.7
VMKERNEL: VMware ESX 4
VMKERNEL_5: VMware ESX 5
VMKERNEL_6: VMware ESX 6
VMKERNEL_65: VMware ESX 6.5
OTHER: Other Operating System
OTHER_64: Other Operating System (64 bit) (experimental)

Optional
name string Virtual machine name.

Optional. If unset, a default name will be generated by the server.

placement placement_spec Virtual machine placement information.

Optional. This field is currently required. In the future, if this field is unset, the system will attempt to choose suitable resources on which to place the virtual machine.

hardware_version string Virtual hardware version.

Optional. If unset, defaults to the most recent version supported by the server.

boot create_spec Boot configuration.

Optional. If unset, guest-specific default values will be used.

boot_devices entry_create_spec[] Boot device configuration.

Optional. If unset, a server-specific boot sequence will be used.

cpu update_spec CPU configuration.

Optional. If unset, guest-specific default values will be used.

memory update_spec Memory configuration.

Optional. If unset, guest-specific default values will be used.

disks create_spec[] List of disks.

Optional. If unset, a single blank virtual disk of a guest-specific size will be created on the same storage as the virtual machine configuration, and will use a guest-specific host bus adapter type. If the guest-specific size is 0, no virtual disk will be created.

nics create_spec[] List of Ethernet adapters.

Optional. If unset, no Ethernet adapters will be created.

cdroms create_spec[] List of CD-ROMs.

Optional. If unset, no CD-ROM devices will be created.

floppies create_spec[] List of floppy drives.

Optional. If unset, no floppy drives will be created.

parallel_ports create_spec[] List of parallel ports.

Optional. If unset, no parallel ports will be created.

serial_ports create_spec[] List of serial ports.

Optional. If unset, no serial ports will be created.

sata_adapters create_spec[] List of SATA adapters.

Optional. If unset, any adapters necessary to connect the virtual machine's storage devices will be created; this includes any devices that explicitly specify a SATA host bus adapter, as well as any devices that do not specify a host bus adapter if the guest's preferred adapter type is SATA.

scsi_adapters create_spec[] List of SCSI adapters.

Optional. If unset, any adapters necessary to connect the virtual machine's storage devices will be created; this includes any devices that explicitly specify a SCSI host bus adapter, as well as any devices that do not specify a host bus adapter if the guest's preferred adapter type is SCSI. The type of the SCSI adapter will be a guest-specific default type.

storage_policy storage_policy_spec The storage_policy_spec structure contains information about the storage policy that is to be associated with the virtual machine home (which contains the configuration and log files). This attribute was added in vSphere API 6.7

Optional. If unset the datastore default storage policy (if applicable) is applied. Currently a default storage policy is only supported by object datastores : VVol and vSAN. For non-object datastores, if unset then no storage policy would be associated with the virtual machine home.