VirtualMachineConfigOption

VirtualMachineConfigOption
VirtualMachineConfigOption

This configuration data object type contains information about the execution environment for a virtual machine.

This includes information about which features are supported, such as:

  • Which guest operating systems are supported.
  • How devices are emulated. For example, that a CD-ROM drive can be emulated with a file or that a serial port can be emulated with a pipe.

VirtualCenter can provide a broader environment than any single physical host. This is a departure from traditional virtualization approaches, which rely on the host system to define the environment for virtual machines. This data object describes environment capabilities and is used by VirtualCenter to choose hosts on which to run virtual machines.

AllOf
This class requires all of the following:
JSON Example
{
    "_typeName": "string",
    "version": "string",
    "description": "string",
    "guestOSDescriptor": [
        {
            "_typeName": "string",
            "id": "string",
            "family": "string",
            "fullName": "string",
            "supportedMaxCPUs": 0,
            "numSupportedPhysicalSockets": 0,
            "numSupportedCoresPerSocket": 0,
            "supportedMinMemMB": 0,
            "supportedMaxMemMB": 0,
            "recommendedMemMB": 0,
            "recommendedColorDepth": 0,
            "supportedDiskControllerList": [
                "string"
            ],
            "recommendedSCSIController": "string",
            "recommendedDiskController": "string",
            "supportedNumDisks": 0,
            "recommendedDiskSizeMB": 0,
            "recommendedCdromController": "string",
            "supportedEthernetCard": [
                "string"
            ],
            "recommendedEthernetCard": "string",
            "supportsSlaveDisk": false,
            "cpuFeatureMask": [
                {
                    "_typeName": "string",
                    "level": 0,
                    "vendor": "string",
                    "eax": "string",
                    "ebx": "string",
                    "ecx": "string",
                    "edx": "string"
                }
            ],
            "smcRequired": false,
            "supportsWakeOnLan": false,
            "supportsVMI": false,
            "supportsMemoryHotAdd": false,
            "supportsCpuHotAdd": false,
            "supportsCpuHotRemove": false,
            "supportedFirmware": [
                "string"
            ],
            "recommendedFirmware": "string",
            "supportedUSBControllerList": [
                "string"
            ],
            "recommendedUSBController": "string",
            "supports3D": false,
            "recommended3D": false,
            "smcRecommended": false,
            "ich7mRecommended": false,
            "usbRecommended": false,
            "supportLevel": "string",
            "supportedForCreate": false,
            "vRAMSizeInKB": {
                "_typeName": "string",
                "valueIsReadonly": false,
                "min": 0,
                "max": 0,
                "defaultValue": 0
            },
            "numSupportedFloppyDevices": 0,
            "wakeOnLanEthernetCard": [
                "string"
            ],
            "supportsPvscsiControllerForBoot": false,
            "diskUuidEnabled": false,
            "supportsHotPlugPCI": false,
            "supportsSecureBoot": false,
            "defaultSecureBoot": false,
            "persistentMemorySupported": false,
            "supportedMinPersistentMemoryMB": 0,
            "supportedMaxPersistentMemoryMB": 0,
            "recommendedPersistentMemoryMB": 0,
            "persistentMemoryHotAddSupported": false,
            "persistentMemoryHotRemoveSupported": false,
            "persistentMemoryColdGrowthSupported": false,
            "persistentMemoryColdGrowthGranularityMB": 0,
            "persistentMemoryHotGrowthSupported": false,
            "persistentMemoryHotGrowthGranularityMB": 0,
            "numRecommendedPhysicalSockets": 0,
            "numRecommendedCoresPerSocket": 0,
            "vvtdSupported": {
                "_typeName": "string",
                "valueIsReadonly": false,
                "supported": false,
                "defaultValue": false
            },
            "vbsSupported": {
                "_typeName": "string",
                "valueIsReadonly": false,
                "supported": false,
                "defaultValue": false
            },
            "vsgxSupported": {
                "_typeName": "string",
                "valueIsReadonly": false,
                "supported": false,
                "defaultValue": false
            },
            "vsgxRemoteAttestationSupported": false,
            "supportsTPM20": false,
            "recommendedTPM20": false,
            "vwdtSupported": false
        }
    ],
    "guestOSDefaultIndex": 0,
    "hardwareOptions": {
        "_typeName": "string",
        "hwVersion": 0,
        "virtualDeviceOption": [
            {
                "_typeName": "string",
                "type": "string",
                "connectOption": {
                    "_typeName": "string",
                    "startConnected": {
                        "_typeName": "string",
                        "valueIsReadonly": false,
                        "supported": false,
                        "defaultValue": false
                    },
                    "allowGuestControl": {
                        "_typeName": "string",
                        "valueIsReadonly": false,
                        "supported": false,
                        "defaultValue": false
                    }
                },
                "busSlotOption": {
                    "_typeName": "string",
                    "type": "string"
                },
                "controllerType": "string",
                "autoAssignController": {
                    "_typeName": "string",
                    "valueIsReadonly": false,
                    "supported": false,
                    "defaultValue": false
                },
                "backingOption": [
                    {
                        "_typeName": "string",
                        "type": "string"
                    }
                ],
                "defaultBackingOptionIndex": 0,
                "licensingLimit": [
                    "string"
                ],
                "deprecated": false,
                "plugAndPlay": false,
                "hotRemoveSupported": false,
                "numaSupported": false
            }
        ],
        "deviceListReadonly": false,
        "numCPU": [
            0
        ],
        "numCoresPerSocket": {
            "_typeName": "string",
            "valueIsReadonly": false,
            "min": 0,
            "max": 0,
            "defaultValue": 0
        },
        "autoCoresPerSocket": {
            "_typeName": "string",
            "valueIsReadonly": false,
            "supported": false,
            "defaultValue": false
        },
        "numCpuReadonly": false,
        "memoryMB": {
            "_typeName": "string",
            "valueIsReadonly": false,
            "min": 0,
            "max": 0,
            "defaultValue": 0
        },
        "numPCIControllers": {
            "_typeName": "string",
            "valueIsReadonly": false,
            "min": 0,
            "max": 0,
            "defaultValue": 0
        },
        "numIDEControllers": {
            "_typeName": "string",
            "valueIsReadonly": false,
            "min": 0,
            "max": 0,
            "defaultValue": 0
        },
        "numUSBControllers": {
            "_typeName": "string",
            "valueIsReadonly": false,
            "min": 0,
            "max": 0,
            "defaultValue": 0
        },
        "numUSBXHCIControllers": {
            "_typeName": "string",
            "valueIsReadonly": false,
            "min": 0,
            "max": 0,
            "defaultValue": 0
        },
        "numSIOControllers": {
            "_typeName": "string",
            "valueIsReadonly": false,
            "min": 0,
            "max": 0,
            "defaultValue": 0
        },
        "numPS2Controllers": {
            "_typeName": "string",
            "valueIsReadonly": false,
            "min": 0,
            "max": 0,
            "defaultValue": 0
        },
        "licensingLimit": [
            "string"
        ],
        "numSupportedWwnPorts": {
            "_typeName": "string",
            "valueIsReadonly": false,
            "min": 0,
            "max": 0,
            "defaultValue": 0
        },
        "numSupportedWwnNodes": {
            "_typeName": "string",
            "valueIsReadonly": false,
            "min": 0,
            "max": 0,
            "defaultValue": 0
        },
        "resourceConfigOption": {
            "_typeName": "string",
            "cpuAllocationOption": {
                "_typeName": "string",
                "sharesOption": {
                    "_typeName": "string",
                    "sharesOption": {
                        "_typeName": "string",
                        "valueIsReadonly": false,
                        "min": 0,
                        "max": 0,
                        "defaultValue": 0
                    },
                    "defaultLevel": "string"
                }
            },
            "memoryAllocationOption": {
                "_typeName": "string",
                "sharesOption": {
                    "_typeName": "string",
                    "sharesOption": {
                        "_typeName": "string",
                        "valueIsReadonly": false,
                        "min": 0,
                        "max": 0,
                        "defaultValue": 0
                    },
                    "defaultLevel": "string"
                }
            }
        },
        "numNVDIMMControllers": {
            "_typeName": "string",
            "valueIsReadonly": false,
            "min": 0,
            "max": 0,
            "defaultValue": 0
        },
        "numTPMDevices": {
            "_typeName": "string",
            "valueIsReadonly": false,
            "min": 0,
            "max": 0,
            "defaultValue": 0
        },
        "numWDTDevices": {
            "_typeName": "string",
            "valueIsReadonly": false,
            "min": 0,
            "max": 0,
            "defaultValue": 0
        },
        "numPrecisionClockDevices": {
            "_typeName": "string",
            "valueIsReadonly": false,
            "min": 0,
            "max": 0,
            "defaultValue": 0
        },
        "epcMemoryMB": {
            "_typeName": "string",
            "valueIsReadonly": false,
            "min": 0,
            "max": 0,
            "defaultValue": 0
        },
        "acpiHostBridgesFirmware": [
            "string"
        ],
        "numCpuSimultaneousThreads": {
            "_typeName": "string",
            "valueIsReadonly": false,
            "min": 0,
            "max": 0,
            "defaultValue": 0
        },
        "numNumaNodes": {
            "_typeName": "string",
            "valueIsReadonly": false,
            "min": 0,
            "max": 0,
            "defaultValue": 0
        },
        "numDeviceGroups": {
            "_typeName": "string",
            "valueIsReadonly": false,
            "min": 0,
            "max": 0,
            "defaultValue": 0
        },
        "deviceGroupTypes": [
            "string"
        ]
    },
    "capabilities": {
        "_typeName": "string",
        "snapshotOperationsSupported": false,
        "multipleSnapshotsSupported": false,
        "snapshotConfigSupported": false,
        "poweredOffSnapshotsSupported": false,
        "memorySnapshotsSupported": false,
        "revertToSnapshotSupported": false,
        "quiescedSnapshotsSupported": false,
        "disableSnapshotsSupported": false,
        "lockSnapshotsSupported": false,
        "consolePreferencesSupported": false,
        "cpuFeatureMaskSupported": false,
        "s1AcpiManagementSupported": false,
        "settingScreenResolutionSupported": false,
        "toolsAutoUpdateSupported": false,
        "vmNpivWwnSupported": false,
        "npivWwnOnNonRdmVmSupported": false,
        "vmNpivWwnDisableSupported": false,
        "vmNpivWwnUpdateSupported": false,
        "swapPlacementSupported": false,
        "toolsSyncTimeSupported": false,
        "virtualMmuUsageSupported": false,
        "diskSharesSupported": false,
        "bootOptionsSupported": false,
        "bootRetryOptionsSupported": false,
        "settingVideoRamSizeSupported": false,
        "settingDisplayTopologySupported": false,
        "recordReplaySupported": false,
        "changeTrackingSupported": false,
        "multipleCoresPerSocketSupported": false,
        "hostBasedReplicationSupported": false,
        "guestAutoLockSupported": false,
        "memoryReservationLockSupported": false,
        "featureRequirementSupported": false,
        "poweredOnMonitorTypeChangeSupported": false,
        "seSparseDiskSupported": false,
        "nestedHVSupported": false,
        "vPMCSupported": false,
        "secureBootSupported": false,
        "perVmEvcSupported": false,
        "virtualMmuUsageIgnored": false,
        "virtualExecUsageIgnored": false,
        "diskOnlySnapshotOnSuspendedVMSupported": false,
        "suspendToMemorySupported": false,
        "toolsSyncTimeAllowSupported": false,
        "sevSupported": false,
        "pmemFailoverSupported": false,
        "requireSgxAttestationSupported": false,
        "changeModeDisksSupported": false,
        "vendorDeviceGroupSupported": false
    },
    "datastore": {
        "_typeName": "string",
        "unsupportedVolumes": [
            {
                "_typeName": "string",
                "fileSystemType": "string",
                "majorVersion": 0
            }
        ]
    },
    "defaultDevice": [
        {
            "_typeName": "string",
            "key": 0,
            "deviceInfo": {
                "_typeName": "string",
                "label": "string",
                "summary": "string"
            },
            "backing": {
                "_typeName": "string"
            },
            "connectable": {
                "_typeName": "string",
                "migrateConnect": "string",
                "startConnected": false,
                "allowGuestControl": false,
                "connected": false,
                "status": "string"
            },
            "slotInfo": {
                "_typeName": "string"
            },
            "controllerKey": 0,
            "unitNumber": 0,
            "numaNode": 0,
            "deviceGroupInfo": {
                "_typeName": "string",
                "groupInstanceKey": 0,
                "sequenceId": 0
            }
        }
    ],
    "supportedMonitorType": [
        "string"
    ],
    "supportedOvfEnvironmentTransport": [
        "string"
    ],
    "supportedOvfInstallTransport": [
        "string"
    ],
    "propertyRelations": [
        {
            "_typeName": "string",
            "key": {
                "_typeName": "string",
                "name": "string",
                "val": {
                    "_typeName": "string"
                }
            },
            "relations": [
                {
                    "_typeName": "string",
                    "name": "string",
                    "val": {
                        "_typeName": "string"
                    }
                }
            ]
        }
    ]
}
string
version
Required

The version corresponding to this configOption.

string
description
Required

A description string for this configOption.

guestOSDescriptor
Required

List of supported guest operating systems.

The choice of guest operating system may limit the set of valid devices. For example, you cannot select Vmxnet with all guest operating systems.

integer As int32 As int32
guestOSDefaultIndex
Required

Index into guestOsDescriptor array denoting the default guest operating system.

hardwareOptions
Required

The VirtualHardwareOption data object contains the options available for all virtual devices.

capabilities
Required

This data object type contains information about the operation/capabilities of a virtual machine

datastore
Required

The DatastoreOption data object describes datastore options for a virtual machine.

defaultDevice
Optional

The list of virtual devices that are created on a virtual machine by default.

Clients should not create these devices.

array of string
supportedMonitorType
Required

The monitor types supported by a host.

The acceptable monitor types are enumerated by VirtualMachineFlagInfoMonitorTypeEnum.

array of string
supportedOvfEnvironmentTransport
Optional

Specifies the supported property transports that are available for the OVF environment

array of string
supportedOvfInstallTransport
Optional

Specifies the supported transports for the OVF installation phase.

propertyRelations
Optional

The relations between the properties of the virtual machine config spec.