Host Datastore System Query Available Disks For Vmfs

Host Datastore System Query Available Disks For Vmfs

Query to list disks that can be used to contain VMFS datastore extents.

If the optional parameter name is supplied, queries for disks that can be used to contain extents for a VMFS datastore identified by the supplied name. Otherwise, the method retrieves disks that can be used to contain new VMFS datastores.

This operation will filter out disks that are currently in use by an existing VMFS unless the VMFS using the disk is one being extended. It will also filter out management LUNs and disks that are referenced by RDMs. These disk LUNs are also unsuited for use by a VMFS.

Disk LUNs referenced by RDMs are found by examining all virtual machines known to the system and visiting their virtual disk backends. If a virtual disk backend uses an RDM that is referencing a disk LUN, the disk LUN becomes ineligible for use by a VMFS datastore.

Required privileges: Host.Config.Storage

Request
URI
POST
https://{vcenter-host}/sdk/vim25/{release}/HostDatastoreSystem/{moId}/QueryAvailableDisksForVmfs
COPY
Path Parameters
string
moId
Required

The unique identifier for the managed object to which the method attaches; the serialized managed object reference for a request has the form moType/moId, in this case HostDatastoreSystem/{moId}.

string
release
Required

The vSphere release schema. The current specification covers vSphere 8.0.2.0 APIs.


Request Body
QueryAvailableDisksForVmfsRequestType of type(s) application/json
Required
{
    "datastore": {}
}
datastore
Optional

Reference to an instance of the Datastore managed object.

Authentication
This operation uses the following authentication methods.
Responses
200

An array of data objects describing SCSI disks.

Returns Array of HostScsiDisk of type(s) application/json
[
    {
        "_typeName": "string",
        "deviceName": "string",
        "deviceType": "string",
        "key": "string",
        "uuid": "string",
        "descriptor": [
            {
                "_typeName": "string",
                "quality": "string",
                "id": "string"
            }
        ],
        "canonicalName": "string",
        "displayName": "string",
        "lunType": "string",
        "vendor": "string",
        "model": "string",
        "revision": "string",
        "scsiLevel": 0,
        "serialNumber": "string",
        "durableName": {
            "namespace": "string",
            "namespaceId": 0,
            "data": [
                0
            ]
        },
        "alternateName": [
            {
                "_typeName": "string",
                "namespace": "string",
                "namespaceId": 0,
                "data": [
                    0
                ]
            }
        ],
        "standardInquiry": [
            0
        ],
        "queueDepth": 0,
        "operationalState": [
            "string"
        ],
        "capabilities": {
            "updateDisplayNameSupported": false
        },
        "vStorageSupport": "string",
        "protocolEndpoint": false,
        "perenniallyReserved": false,
        "clusteredVmdkSupported": false,
        "applicationProtocol": "string",
        "dispersedNs": false,
        "capacity": {
            "blockSize": 0,
            "block": 0
        },
        "devicePath": "string",
        "ssd": false,
        "localDisk": false,
        "physicalLocation": [
            "string"
        ],
        "emulatedDIXDIFEnabled": false,
        "vsanDiskInfo": {
            "vsanUuid": "string",
            "formatVersion": 0
        },
        "scsiDiskType": "string"
    }
]

500

NotSupported: if the host is not an ESX Server.

NotFound: if the named VMFS datastore is not found.

InvalidArgument: if named VMFS datastore is not a VMFS datastore.

HostConfigFault: if unable to query disk information.

Returns VimFault of type(s) application/json
This response body class contains all of the following: MethodFault
{
    "_typeName": "string",
    "faultCause": "MethodFault Object",
    "faultMessage": [
        {
            "_typeName": "string",
            "key": "string",
            "arg": [
                {
                    "_typeName": "string",
                    "key": "string",
                    "value": {
                        "_typeName": "string"
                    }
                }
            ],
            "message": "string"
        }
    ]
}