# Managed Object - FailoverClusterConfigurator(vim.vcha.FailoverClusterConfigurator)

Property of
  ServiceContent
See also
  NodeDeploymentSpec, PassiveNodeDeploymentSpec, SourceNodeSpec, VchaClusterConfigInfo, VchaClusterConfigSpec, VchaClusterDeploymentSpec, VchaClusterNetworkSpec
Since
  vSphere API 6.5

## Managed Object Description

FailoverClusterConfigurator provides operations to create and configure a vCenter High Availability Cluster (VCHA Cluster). A VCHA Cluster consists of three VMs. One is the Active vCenter VM that serves client requests. Second is the Passive VM that is identical to the Active vCenter VM in terms of resources and capabilities. Passive VM constantly receives updates from Active VM and takes over the role of Active vCenter VM in the event of failover. Third is the Witness VM that acts as a quorum VM in a VCHA Cluster. Sole purpose of Witness VM is to avoid classic split-brain problem in a VCHA Cluster. A VCHA Cluster can be deployed in two possible ways - 1. Automatic deployment - Configuration (described below) inputs for each node in a VCHA Cluster is provided by the user. A Deployment workflow is used that automatically deploys Passive and Witness VM and configures each node to form a VCHA Cluster. 2. Manual deployment - User provisions and creates Passive and Witness VMs and uses Configuration workflow to configure Active, Passive and Witness VM to form a VCHA Cluster. Passive and Witness VMs must be created using the VM-Clone operation with Active VM as the source.

Properties

Name | Type | Description
--- | --- | ---
disabledConfigureMethod* | xsd:string[] | A list of method names that must not be called and will throw a fault due to some other method running that the disabled method can cause side-effects for. This list may include the following methods: deployVcha_Task configureVcha_Task createPassiveNode_Task createWitnessNode_Task destroyVcha_Task As with other disabled methods there will be no property updates on this property when called with non-zero property collector versions.

*May not be present

Methods

Methods defined in this Managed Object
configureVcha_Task, createPassiveNode_Task, createWitnessNode_Task, deployVcha_Task, destroyVcha_Task, getVchaConfig, prepareVcha_Task

# configureVcha_Task(configure)

Configure VCHA on the local vCenter Server. This operation configures the VC appliance with VCHA specific inputs and uses already deployed Passive and Witness nodes to set up the VCHA cluster. After configuration, the VCHA Cluster is enabled on a best effort basis, but if this operation does not succeed, setClusterMode_Task must be called to enable it. State replication or failover is not allowed until the VCHA Cluster is enabled. The current vCenter Server continues to serve client requests during and after the configuration.

Required Privileges
  Global.VCServer

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the FailoverClusterConfigurator used to make the method call.
configSpec P | VchaClusterConfigSpec | contains the configuration for the cluster Since vSphere API 6.5

P Required privilege: configSpec

Return Value

Type | Description
--- | ---
ManagedObjectReference to a Task | This method returns a Task object with which to monitor the progress of the operation.

Faults

Type | Description
--- | ---
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

# createPassiveNode_Task

Creates a Passive node in a degraded VCHA Cluster with node location information and pre-existing VCHA Cluster configuration from the Active node.

Required Privileges
  Global.VCServer

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the FailoverClusterConfigurator used to make the method call.
passiveDeploymentSpec P | PassiveNodeDeploymentSpec | contains deployment specification for the passive node Since vSphere API 6.5
sourceVcSpec P | SourceNodeSpec | contains specification for the source vCenter server that is used to create Passive node Since vSphere API 6.5

P Required privilege - see tooltip for details

Return Value

Type | Description
--- | ---
ManagedObjectReference to a Task | This method returns a Task object with which to monitor the progress of the operation.

Faults

Type | Description
--- | ---
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

# createWitnessNode_Task

Creates a Witness node in a degraded VCHA Cluster with node location information and pre-existing VCHA Cluster configuration from the Active node.

Required Privileges
  Global.VCServer

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the FailoverClusterConfigurator used to make the method call.
witnessDeploymentSpec P | NodeDeploymentSpec | contains deployment specification for the witness node Since vSphere API 6.5
sourceVcSpec P | SourceNodeSpec | contains specification for the source vCenter server that is used to create Witness node Since vSphere API 6.5

P Required privilege - see tooltip for details

Return Value

Type | Description
--- | ---
ManagedObjectReference to a Task | This method returns a Task object with which to monitor the progress of the operation.

Faults

Type | Description
--- | ---
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

# deployVcha_Task(deploy)

Deploys and Configures VCHA on the local vCenter as a single API. This deployment operation automatically provisions and creates a Passive and a Witness node followed by configuring each node such that a 3 node VCHA Cluster is formed. After configuration, the VCHA Cluster is enabled on a best effort basis, but if this operation does not succeed, setClusterMode_Task must be called to enable it. State replication or failover is not allowed until the VCHA Cluster is enabled. The current vCenter Server continues to serve client requests during and after the deployment. If the activeVcNetworkConfig spec if filled in, the cluster network will be created and configured. No changes will be made if the cluster network is already configured.

Required Privileges
  Global.VCServer

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the FailoverClusterConfigurator used to make the method call.
deploymentSpec P | VchaClusterDeploymentSpec | contains the information needed to deploy and configure a VCHA Cluster Since vSphere API 6.5

P Required privilege: deploymentSpec

Return Value

Type | Description
--- | ---
ManagedObjectReference to a Task | This method returns a Task object with which to monitor the progress of the operation.

Faults

Type | Description
--- | ---
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

# destroyVcha_Task(destroy)

Destroys the VCHA cluster setup and removes all VCHA specific configuration from the VCVA appliance. The active node in the cluster continues to run as a standalone VCVA appliance after the destroy operation has been performed. This operation is allowed under the following circumstances: - VCHA cluster is disabled - The node is in an isolated state - VCHA Deploy/Configure has failed

Required Privileges
  Global.VCServer

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the FailoverClusterConfigurator used to make the method call.

Return Value

Type | Description
--- | ---
ManagedObjectReference to a Task |

Faults

Type | Description
--- | ---
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

# getVchaConfig(getConfig)

Returns the configuration information for each node that is part of the VCHA Cluster.

Required Privileges
  System.Read

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the FailoverClusterConfigurator used to make the method call.

Return Value

Type | Description
--- | ---
VchaClusterConfigInfo | Returns a data structure specifying configuration for Active, Passive and Witness node in the Cluster.

Faults

Type | Description
--- | ---
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

Show WSDL type definition
<element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:vsan="urn:vsan" name="getVchaConfig" type="vsan:getVchaConfigRequestType"/> <element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:vsan="urn:vsan" name="getVchaConfigResponse"> <complexType> <sequence> <element name="returnval" type="vsan:VchaClusterConfigInfo"/> </sequence> </complexType> </element>

# prepareVcha_Task(prepare)

Prepares the vCenter appliance for a VCHA cluster deployment. This preparation operation saves the network configuration of the cluster and configures the Active node to be cloned for a VCHA configuration. Prepares the VCHA Active node for ssh keys, vpostgres replication and related configuration file setup needed for a VCHA cluster. If the Active node Cluster network adapter does not exist the prepare operation will fail. No changes will be made if the cluster is already configured.

Required Privileges
  Global.VCServer

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the FailoverClusterConfigurator used to make the method call.
networkSpec P | VchaClusterNetworkSpec | contains the information needed to prepare a VCHA Cluster and configure networking. Since vSphere API 6.5

P Required privilege: networkSpec

Return Value

Type | Description
--- | ---
ManagedObjectReference to a Task | This method returns a Task object with which to monitor the progress of the operation.

Faults

Type | Description
--- | ---
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None