Cluster Compute Resource Cluster Enter Maintenance Mode
The API takes a list of hosts in the cluster as input, and returns a list of hosts in "ClusterMaintenanceResult" that the server can successfully evacuate given the existing constraints in the cluster, such as HA, FT, Vmotion compatibility, reservations, affinity rules, etc.
The client is allowed to pass all hosts in the cluster to the API, even though all of them cannot enter maintenance mode at the same time. The list returned from the API contains the largest number of hosts that the server can evacuate simultaneously. The client can then request to enter each host in the returned list into maintenance mode. The client can specify an integer "DemandCapacityRatioTarget" option in the "option" parameter. The allowed values of the option range from 40 to 200, and the default value is 100. This option controls how much resource overcommitment the server should make in consolidating the VMs onto fewer hosts. A value of 100 means the server will keep the same amount of powered-on capacity as the current VM demands. A value less than 100 means undercommitted resources. A value greater than 100 means overcommitted resources. The hosts are recommended based on the inventory at the time of the API invocation. It is not guaranteed that the actual enter-maintenance tasks on the hosts will succeed, if the inventory changes after the API returns, or if vmotions fail due to unexpected conditions. For possible exceptions thrown by the necessary relocate operations, see MigrateVM_Task.
Required privileges: System.View
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 ClusterComputeResource/{moId}
.
The vSphere release schema. The current specification covers vSphere 8.0.2.0 APIs.
{
"host": [
{
"_typeName": "string",
"type": "string",
"value": "string"
}
],
"option": [
{
"_typeName": "string",
"key": "string",
"value": {
"_typeName": "string"
}
}
]
}
The array of hosts to put into maintenance mode.
Required privileges: Host.Config.Maintenance
An array of OptionValue options for this query. The specified options override the advanced options in ClusterDrsConfigInfo.
A ClusterEnterMaintenanceResult object, which consists of an array of recommendations for hosts that can be evacuated and an array of faults for hosts that cannot be evacuated.
{
"_typeName": "string",
"recommendations": [
{
"_typeName": "string",
"key": "string",
"type": "string",
"time": "string",
"rating": 0,
"reason": "string",
"reasonText": "string",
"warningText": "string",
"warningDetails": {
"_typeName": "string",
"key": "string",
"arg": [
{
"_typeName": "string",
"key": "string",
"value": {
"_typeName": "string"
}
}
],
"message": "string"
},
"prerequisite": [
"string"
],
"action": [
{
"_typeName": "string",
"type": "string",
"target": {
"_typeName": "string",
"type": "string",
"value": "string"
}
}
],
"target": {
"_typeName": "string",
"type": "string",
"value": "string"
}
}
],
"fault": {
"_typeName": "string",
"reason": "string",
"faultsByVm": [
{
"_typeName": "string",
"vm": {
"_typeName": "string",
"type": "string",
"value": "string"
},
"fault": [
{
"_typeName": "string",
"faultCause": "MethodFault Object",
"faultMessage": [
{
"_typeName": "string",
"key": "string",
"arg": [
{
"_typeName": "string",
"key": "string",
"value": {
"_typeName": "string"
}
}
],
"message": "string"
}
]
}
]
}
]
}
}
The list of recommendations for hosts that Virtual Center will be able to evacuate.
Each recommendation consists of a host maintenance action ClusterAction for a host, along with zero or more vmotions for evacuation. Application of the recommendations is not supported currently. The client will have to put the hosts into maintenance mode by calling the separate method HostSystem.EnterMaintenanceMode_Task.
The faults generated by DRS when it tries to make recommendations for rule enforcement, power management, etc., and indexed in a tree structure with reason for recommendations and VM to migrate (optional) as the index keys.