1. Packages
  2. Vsphere Provider
  3. API Docs
  4. ComputeCluster
vSphere v4.13.2 published on Wednesday, Apr 9, 2025 by Pulumi

vsphere.ComputeCluster

Explore with Pulumi AI

A note on the naming of this resource: VMware refers to clusters of hosts in the UI and documentation as clusters, HA clusters, or DRS clusters. All of these refer to the same kind of resource (with the latter two referring to specific features of clustering). We use vsphere.ComputeCluster to differentiate host clusters from datastore clusters, which are clusters of datastores that can be used to distribute load and ensure fault tolerance via distribution of virtual machines. Datastore clusters can also be managed through the provider, via the vsphere.DatastoreCluster resource.

The vsphere.ComputeCluster resource can be used to create and manage clusters of hosts allowing for resource control of compute resources, load balancing through DRS, and high availability through vSphere HA.

For more information on vSphere clusters and DRS, see this page. For more information on vSphere HA, see this page.

NOTE: This resource requires vCenter and is not available on direct ESXi connections.

Create ComputeCluster Resource

Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

Constructor syntax

new ComputeCluster(name: string, args: ComputeClusterArgs, opts?: CustomResourceOptions);
@overload
def ComputeCluster(resource_name: str,
                   args: ComputeClusterArgs,
                   opts: Optional[ResourceOptions] = None)

@overload
def ComputeCluster(resource_name: str,
                   opts: Optional[ResourceOptions] = None,
                   datacenter_id: Optional[str] = None,
                   custom_attributes: Optional[Mapping[str, str]] = None,
                   dpm_automation_level: Optional[str] = None,
                   dpm_enabled: Optional[bool] = None,
                   dpm_threshold: Optional[int] = None,
                   drs_advanced_options: Optional[Mapping[str, str]] = None,
                   drs_automation_level: Optional[str] = None,
                   drs_enable_predictive_drs: Optional[bool] = None,
                   drs_enable_vm_overrides: Optional[bool] = None,
                   drs_enabled: Optional[bool] = None,
                   drs_migration_threshold: Optional[int] = None,
                   drs_scale_descendants_shares: Optional[str] = None,
                   folder: Optional[str] = None,
                   force_evacuate_on_destroy: Optional[bool] = None,
                   ha_admission_control_failover_host_system_ids: Optional[Sequence[str]] = None,
                   ha_admission_control_host_failure_tolerance: Optional[int] = None,
                   ha_admission_control_performance_tolerance: Optional[int] = None,
                   ha_admission_control_policy: Optional[str] = None,
                   ha_admission_control_resource_percentage_auto_compute: Optional[bool] = None,
                   ha_admission_control_resource_percentage_cpu: Optional[int] = None,
                   ha_admission_control_resource_percentage_memory: Optional[int] = None,
                   ha_admission_control_slot_policy_explicit_cpu: Optional[int] = None,
                   ha_admission_control_slot_policy_explicit_memory: Optional[int] = None,
                   ha_admission_control_slot_policy_use_explicit_size: Optional[bool] = None,
                   ha_advanced_options: Optional[Mapping[str, str]] = None,
                   ha_datastore_apd_recovery_action: Optional[str] = None,
                   ha_datastore_apd_response: Optional[str] = None,
                   ha_datastore_apd_response_delay: Optional[int] = None,
                   ha_datastore_pdl_response: Optional[str] = None,
                   ha_enabled: Optional[bool] = None,
                   ha_heartbeat_datastore_ids: Optional[Sequence[str]] = None,
                   ha_heartbeat_datastore_policy: Optional[str] = None,
                   ha_host_isolation_response: Optional[str] = None,
                   ha_host_monitoring: Optional[str] = None,
                   ha_vm_component_protection: Optional[str] = None,
                   ha_vm_dependency_restart_condition: Optional[str] = None,
                   ha_vm_failure_interval: Optional[int] = None,
                   ha_vm_maximum_failure_window: Optional[int] = None,
                   ha_vm_maximum_resets: Optional[int] = None,
                   ha_vm_minimum_uptime: Optional[int] = None,
                   ha_vm_monitoring: Optional[str] = None,
                   ha_vm_restart_additional_delay: Optional[int] = None,
                   ha_vm_restart_priority: Optional[str] = None,
                   ha_vm_restart_timeout: Optional[int] = None,
                   host_cluster_exit_timeout: Optional[int] = None,
                   host_image: Optional[ComputeClusterHostImageArgs] = None,
                   host_managed: Optional[bool] = None,
                   host_system_ids: Optional[Sequence[str]] = None,
                   name: Optional[str] = None,
                   proactive_ha_automation_level: Optional[str] = None,
                   proactive_ha_enabled: Optional[bool] = None,
                   proactive_ha_moderate_remediation: Optional[str] = None,
                   proactive_ha_provider_ids: Optional[Sequence[str]] = None,
                   proactive_ha_severe_remediation: Optional[str] = None,
                   tags: Optional[Sequence[str]] = None,
                   vsan_compression_enabled: Optional[bool] = None,
                   vsan_dedup_enabled: Optional[bool] = None,
                   vsan_disk_groups: Optional[Sequence[ComputeClusterVsanDiskGroupArgs]] = None,
                   vsan_dit_encryption_enabled: Optional[bool] = None,
                   vsan_dit_rekey_interval: Optional[int] = None,
                   vsan_enabled: Optional[bool] = None,
                   vsan_esa_enabled: Optional[bool] = None,
                   vsan_fault_domains: Optional[Sequence[ComputeClusterVsanFaultDomainArgs]] = None,
                   vsan_network_diagnostic_mode_enabled: Optional[bool] = None,
                   vsan_performance_enabled: Optional[bool] = None,
                   vsan_remote_datastore_ids: Optional[Sequence[str]] = None,
                   vsan_stretched_cluster: Optional[ComputeClusterVsanStretchedClusterArgs] = None,
                   vsan_unmap_enabled: Optional[bool] = None,
                   vsan_verbose_mode_enabled: Optional[bool] = None)
func NewComputeCluster(ctx *Context, name string, args ComputeClusterArgs, opts ...ResourceOption) (*ComputeCluster, error)
public ComputeCluster(string name, ComputeClusterArgs args, CustomResourceOptions? opts = null)
public ComputeCluster(String name, ComputeClusterArgs args)
public ComputeCluster(String name, ComputeClusterArgs args, CustomResourceOptions options)
type: vsphere:ComputeCluster
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. ComputeClusterArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. ComputeClusterArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. ComputeClusterArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. ComputeClusterArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. ComputeClusterArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

Constructor example

The following reference example uses placeholder values for all input properties.

var computeClusterResource = new VSphere.ComputeCluster("computeClusterResource", new()
{
    DatacenterId = "string",
    CustomAttributes = 
    {
        { "string", "string" },
    },
    DpmAutomationLevel = "string",
    DpmEnabled = false,
    DpmThreshold = 0,
    DrsAdvancedOptions = 
    {
        { "string", "string" },
    },
    DrsAutomationLevel = "string",
    DrsEnablePredictiveDrs = false,
    DrsEnableVmOverrides = false,
    DrsEnabled = false,
    DrsMigrationThreshold = 0,
    DrsScaleDescendantsShares = "string",
    Folder = "string",
    ForceEvacuateOnDestroy = false,
    HaAdmissionControlFailoverHostSystemIds = new[]
    {
        "string",
    },
    HaAdmissionControlHostFailureTolerance = 0,
    HaAdmissionControlPerformanceTolerance = 0,
    HaAdmissionControlPolicy = "string",
    HaAdmissionControlResourcePercentageAutoCompute = false,
    HaAdmissionControlResourcePercentageCpu = 0,
    HaAdmissionControlResourcePercentageMemory = 0,
    HaAdmissionControlSlotPolicyExplicitCpu = 0,
    HaAdmissionControlSlotPolicyExplicitMemory = 0,
    HaAdmissionControlSlotPolicyUseExplicitSize = false,
    HaAdvancedOptions = 
    {
        { "string", "string" },
    },
    HaDatastoreApdRecoveryAction = "string",
    HaDatastoreApdResponse = "string",
    HaDatastoreApdResponseDelay = 0,
    HaDatastorePdlResponse = "string",
    HaEnabled = false,
    HaHeartbeatDatastoreIds = new[]
    {
        "string",
    },
    HaHeartbeatDatastorePolicy = "string",
    HaHostIsolationResponse = "string",
    HaHostMonitoring = "string",
    HaVmComponentProtection = "string",
    HaVmDependencyRestartCondition = "string",
    HaVmFailureInterval = 0,
    HaVmMaximumFailureWindow = 0,
    HaVmMaximumResets = 0,
    HaVmMinimumUptime = 0,
    HaVmMonitoring = "string",
    HaVmRestartAdditionalDelay = 0,
    HaVmRestartPriority = "string",
    HaVmRestartTimeout = 0,
    HostClusterExitTimeout = 0,
    HostImage = new VSphere.Inputs.ComputeClusterHostImageArgs
    {
        Components = new[]
        {
            new VSphere.Inputs.ComputeClusterHostImageComponentArgs
            {
                Key = "string",
                Version = "string",
            },
        },
        EsxVersion = "string",
    },
    HostManaged = false,
    HostSystemIds = new[]
    {
        "string",
    },
    Name = "string",
    ProactiveHaAutomationLevel = "string",
    ProactiveHaEnabled = false,
    ProactiveHaModerateRemediation = "string",
    ProactiveHaProviderIds = new[]
    {
        "string",
    },
    ProactiveHaSevereRemediation = "string",
    Tags = new[]
    {
        "string",
    },
    VsanCompressionEnabled = false,
    VsanDedupEnabled = false,
    VsanDiskGroups = new[]
    {
        new VSphere.Inputs.ComputeClusterVsanDiskGroupArgs
        {
            Cache = "string",
            Storages = new[]
            {
                "string",
            },
        },
    },
    VsanDitEncryptionEnabled = false,
    VsanDitRekeyInterval = 0,
    VsanEnabled = false,
    VsanEsaEnabled = false,
    VsanFaultDomains = new[]
    {
        new VSphere.Inputs.ComputeClusterVsanFaultDomainArgs
        {
            FaultDomains = new[]
            {
                new VSphere.Inputs.ComputeClusterVsanFaultDomainFaultDomainArgs
                {
                    HostIds = new[]
                    {
                        "string",
                    },
                    Name = "string",
                },
            },
        },
    },
    VsanNetworkDiagnosticModeEnabled = false,
    VsanPerformanceEnabled = false,
    VsanRemoteDatastoreIds = new[]
    {
        "string",
    },
    VsanStretchedCluster = new VSphere.Inputs.ComputeClusterVsanStretchedClusterArgs
    {
        PreferredFaultDomainHostIds = new[]
        {
            "string",
        },
        SecondaryFaultDomainHostIds = new[]
        {
            "string",
        },
        WitnessNode = "string",
        PreferredFaultDomainName = "string",
        SecondaryFaultDomainName = "string",
    },
    VsanUnmapEnabled = false,
    VsanVerboseModeEnabled = false,
});
Copy
example, err := vsphere.NewComputeCluster(ctx, "computeClusterResource", &vsphere.ComputeClusterArgs{
	DatacenterId: pulumi.String("string"),
	CustomAttributes: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	DpmAutomationLevel: pulumi.String("string"),
	DpmEnabled:         pulumi.Bool(false),
	DpmThreshold:       pulumi.Int(0),
	DrsAdvancedOptions: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	DrsAutomationLevel:        pulumi.String("string"),
	DrsEnablePredictiveDrs:    pulumi.Bool(false),
	DrsEnableVmOverrides:      pulumi.Bool(false),
	DrsEnabled:                pulumi.Bool(false),
	DrsMigrationThreshold:     pulumi.Int(0),
	DrsScaleDescendantsShares: pulumi.String("string"),
	Folder:                    pulumi.String("string"),
	ForceEvacuateOnDestroy:    pulumi.Bool(false),
	HaAdmissionControlFailoverHostSystemIds: pulumi.StringArray{
		pulumi.String("string"),
	},
	HaAdmissionControlHostFailureTolerance:          pulumi.Int(0),
	HaAdmissionControlPerformanceTolerance:          pulumi.Int(0),
	HaAdmissionControlPolicy:                        pulumi.String("string"),
	HaAdmissionControlResourcePercentageAutoCompute: pulumi.Bool(false),
	HaAdmissionControlResourcePercentageCpu:         pulumi.Int(0),
	HaAdmissionControlResourcePercentageMemory:      pulumi.Int(0),
	HaAdmissionControlSlotPolicyExplicitCpu:         pulumi.Int(0),
	HaAdmissionControlSlotPolicyExplicitMemory:      pulumi.Int(0),
	HaAdmissionControlSlotPolicyUseExplicitSize:     pulumi.Bool(false),
	HaAdvancedOptions: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	HaDatastoreApdRecoveryAction: pulumi.String("string"),
	HaDatastoreApdResponse:       pulumi.String("string"),
	HaDatastoreApdResponseDelay:  pulumi.Int(0),
	HaDatastorePdlResponse:       pulumi.String("string"),
	HaEnabled:                    pulumi.Bool(false),
	HaHeartbeatDatastoreIds: pulumi.StringArray{
		pulumi.String("string"),
	},
	HaHeartbeatDatastorePolicy:     pulumi.String("string"),
	HaHostIsolationResponse:        pulumi.String("string"),
	HaHostMonitoring:               pulumi.String("string"),
	HaVmComponentProtection:        pulumi.String("string"),
	HaVmDependencyRestartCondition: pulumi.String("string"),
	HaVmFailureInterval:            pulumi.Int(0),
	HaVmMaximumFailureWindow:       pulumi.Int(0),
	HaVmMaximumResets:              pulumi.Int(0),
	HaVmMinimumUptime:              pulumi.Int(0),
	HaVmMonitoring:                 pulumi.String("string"),
	HaVmRestartAdditionalDelay:     pulumi.Int(0),
	HaVmRestartPriority:            pulumi.String("string"),
	HaVmRestartTimeout:             pulumi.Int(0),
	HostClusterExitTimeout:         pulumi.Int(0),
	HostImage: &vsphere.ComputeClusterHostImageArgs{
		Components: vsphere.ComputeClusterHostImageComponentArray{
			&vsphere.ComputeClusterHostImageComponentArgs{
				Key:     pulumi.String("string"),
				Version: pulumi.String("string"),
			},
		},
		EsxVersion: pulumi.String("string"),
	},
	HostManaged: pulumi.Bool(false),
	HostSystemIds: pulumi.StringArray{
		pulumi.String("string"),
	},
	Name:                           pulumi.String("string"),
	ProactiveHaAutomationLevel:     pulumi.String("string"),
	ProactiveHaEnabled:             pulumi.Bool(false),
	ProactiveHaModerateRemediation: pulumi.String("string"),
	ProactiveHaProviderIds: pulumi.StringArray{
		pulumi.String("string"),
	},
	ProactiveHaSevereRemediation: pulumi.String("string"),
	Tags: pulumi.StringArray{
		pulumi.String("string"),
	},
	VsanCompressionEnabled: pulumi.Bool(false),
	VsanDedupEnabled:       pulumi.Bool(false),
	VsanDiskGroups: vsphere.ComputeClusterVsanDiskGroupArray{
		&vsphere.ComputeClusterVsanDiskGroupArgs{
			Cache: pulumi.String("string"),
			Storages: pulumi.StringArray{
				pulumi.String("string"),
			},
		},
	},
	VsanDitEncryptionEnabled: pulumi.Bool(false),
	VsanDitRekeyInterval:     pulumi.Int(0),
	VsanEnabled:              pulumi.Bool(false),
	VsanEsaEnabled:           pulumi.Bool(false),
	VsanFaultDomains: vsphere.ComputeClusterVsanFaultDomainArray{
		&vsphere.ComputeClusterVsanFaultDomainArgs{
			FaultDomains: vsphere.ComputeClusterVsanFaultDomainFaultDomainArray{
				&vsphere.ComputeClusterVsanFaultDomainFaultDomainArgs{
					HostIds: pulumi.StringArray{
						pulumi.String("string"),
					},
					Name: pulumi.String("string"),
				},
			},
		},
	},
	VsanNetworkDiagnosticModeEnabled: pulumi.Bool(false),
	VsanPerformanceEnabled:           pulumi.Bool(false),
	VsanRemoteDatastoreIds: pulumi.StringArray{
		pulumi.String("string"),
	},
	VsanStretchedCluster: &vsphere.ComputeClusterVsanStretchedClusterArgs{
		PreferredFaultDomainHostIds: pulumi.StringArray{
			pulumi.String("string"),
		},
		SecondaryFaultDomainHostIds: pulumi.StringArray{
			pulumi.String("string"),
		},
		WitnessNode:              pulumi.String("string"),
		PreferredFaultDomainName: pulumi.String("string"),
		SecondaryFaultDomainName: pulumi.String("string"),
	},
	VsanUnmapEnabled:       pulumi.Bool(false),
	VsanVerboseModeEnabled: pulumi.Bool(false),
})
Copy
var computeClusterResource = new ComputeCluster("computeClusterResource", ComputeClusterArgs.builder()
    .datacenterId("string")
    .customAttributes(Map.of("string", "string"))
    .dpmAutomationLevel("string")
    .dpmEnabled(false)
    .dpmThreshold(0)
    .drsAdvancedOptions(Map.of("string", "string"))
    .drsAutomationLevel("string")
    .drsEnablePredictiveDrs(false)
    .drsEnableVmOverrides(false)
    .drsEnabled(false)
    .drsMigrationThreshold(0)
    .drsScaleDescendantsShares("string")
    .folder("string")
    .forceEvacuateOnDestroy(false)
    .haAdmissionControlFailoverHostSystemIds("string")
    .haAdmissionControlHostFailureTolerance(0)
    .haAdmissionControlPerformanceTolerance(0)
    .haAdmissionControlPolicy("string")
    .haAdmissionControlResourcePercentageAutoCompute(false)
    .haAdmissionControlResourcePercentageCpu(0)
    .haAdmissionControlResourcePercentageMemory(0)
    .haAdmissionControlSlotPolicyExplicitCpu(0)
    .haAdmissionControlSlotPolicyExplicitMemory(0)
    .haAdmissionControlSlotPolicyUseExplicitSize(false)
    .haAdvancedOptions(Map.of("string", "string"))
    .haDatastoreApdRecoveryAction("string")
    .haDatastoreApdResponse("string")
    .haDatastoreApdResponseDelay(0)
    .haDatastorePdlResponse("string")
    .haEnabled(false)
    .haHeartbeatDatastoreIds("string")
    .haHeartbeatDatastorePolicy("string")
    .haHostIsolationResponse("string")
    .haHostMonitoring("string")
    .haVmComponentProtection("string")
    .haVmDependencyRestartCondition("string")
    .haVmFailureInterval(0)
    .haVmMaximumFailureWindow(0)
    .haVmMaximumResets(0)
    .haVmMinimumUptime(0)
    .haVmMonitoring("string")
    .haVmRestartAdditionalDelay(0)
    .haVmRestartPriority("string")
    .haVmRestartTimeout(0)
    .hostClusterExitTimeout(0)
    .hostImage(ComputeClusterHostImageArgs.builder()
        .components(ComputeClusterHostImageComponentArgs.builder()
            .key("string")
            .version("string")
            .build())
        .esxVersion("string")
        .build())
    .hostManaged(false)
    .hostSystemIds("string")
    .name("string")
    .proactiveHaAutomationLevel("string")
    .proactiveHaEnabled(false)
    .proactiveHaModerateRemediation("string")
    .proactiveHaProviderIds("string")
    .proactiveHaSevereRemediation("string")
    .tags("string")
    .vsanCompressionEnabled(false)
    .vsanDedupEnabled(false)
    .vsanDiskGroups(ComputeClusterVsanDiskGroupArgs.builder()
        .cache("string")
        .storages("string")
        .build())
    .vsanDitEncryptionEnabled(false)
    .vsanDitRekeyInterval(0)
    .vsanEnabled(false)
    .vsanEsaEnabled(false)
    .vsanFaultDomains(ComputeClusterVsanFaultDomainArgs.builder()
        .faultDomains(ComputeClusterVsanFaultDomainFaultDomainArgs.builder()
            .hostIds("string")
            .name("string")
            .build())
        .build())
    .vsanNetworkDiagnosticModeEnabled(false)
    .vsanPerformanceEnabled(false)
    .vsanRemoteDatastoreIds("string")
    .vsanStretchedCluster(ComputeClusterVsanStretchedClusterArgs.builder()
        .preferredFaultDomainHostIds("string")
        .secondaryFaultDomainHostIds("string")
        .witnessNode("string")
        .preferredFaultDomainName("string")
        .secondaryFaultDomainName("string")
        .build())
    .vsanUnmapEnabled(false)
    .vsanVerboseModeEnabled(false)
    .build());
Copy
compute_cluster_resource = vsphere.ComputeCluster("computeClusterResource",
    datacenter_id="string",
    custom_attributes={
        "string": "string",
    },
    dpm_automation_level="string",
    dpm_enabled=False,
    dpm_threshold=0,
    drs_advanced_options={
        "string": "string",
    },
    drs_automation_level="string",
    drs_enable_predictive_drs=False,
    drs_enable_vm_overrides=False,
    drs_enabled=False,
    drs_migration_threshold=0,
    drs_scale_descendants_shares="string",
    folder="string",
    force_evacuate_on_destroy=False,
    ha_admission_control_failover_host_system_ids=["string"],
    ha_admission_control_host_failure_tolerance=0,
    ha_admission_control_performance_tolerance=0,
    ha_admission_control_policy="string",
    ha_admission_control_resource_percentage_auto_compute=False,
    ha_admission_control_resource_percentage_cpu=0,
    ha_admission_control_resource_percentage_memory=0,
    ha_admission_control_slot_policy_explicit_cpu=0,
    ha_admission_control_slot_policy_explicit_memory=0,
    ha_admission_control_slot_policy_use_explicit_size=False,
    ha_advanced_options={
        "string": "string",
    },
    ha_datastore_apd_recovery_action="string",
    ha_datastore_apd_response="string",
    ha_datastore_apd_response_delay=0,
    ha_datastore_pdl_response="string",
    ha_enabled=False,
    ha_heartbeat_datastore_ids=["string"],
    ha_heartbeat_datastore_policy="string",
    ha_host_isolation_response="string",
    ha_host_monitoring="string",
    ha_vm_component_protection="string",
    ha_vm_dependency_restart_condition="string",
    ha_vm_failure_interval=0,
    ha_vm_maximum_failure_window=0,
    ha_vm_maximum_resets=0,
    ha_vm_minimum_uptime=0,
    ha_vm_monitoring="string",
    ha_vm_restart_additional_delay=0,
    ha_vm_restart_priority="string",
    ha_vm_restart_timeout=0,
    host_cluster_exit_timeout=0,
    host_image={
        "components": [{
            "key": "string",
            "version": "string",
        }],
        "esx_version": "string",
    },
    host_managed=False,
    host_system_ids=["string"],
    name="string",
    proactive_ha_automation_level="string",
    proactive_ha_enabled=False,
    proactive_ha_moderate_remediation="string",
    proactive_ha_provider_ids=["string"],
    proactive_ha_severe_remediation="string",
    tags=["string"],
    vsan_compression_enabled=False,
    vsan_dedup_enabled=False,
    vsan_disk_groups=[{
        "cache": "string",
        "storages": ["string"],
    }],
    vsan_dit_encryption_enabled=False,
    vsan_dit_rekey_interval=0,
    vsan_enabled=False,
    vsan_esa_enabled=False,
    vsan_fault_domains=[{
        "fault_domains": [{
            "host_ids": ["string"],
            "name": "string",
        }],
    }],
    vsan_network_diagnostic_mode_enabled=False,
    vsan_performance_enabled=False,
    vsan_remote_datastore_ids=["string"],
    vsan_stretched_cluster={
        "preferred_fault_domain_host_ids": ["string"],
        "secondary_fault_domain_host_ids": ["string"],
        "witness_node": "string",
        "preferred_fault_domain_name": "string",
        "secondary_fault_domain_name": "string",
    },
    vsan_unmap_enabled=False,
    vsan_verbose_mode_enabled=False)
Copy
const computeClusterResource = new vsphere.ComputeCluster("computeClusterResource", {
    datacenterId: "string",
    customAttributes: {
        string: "string",
    },
    dpmAutomationLevel: "string",
    dpmEnabled: false,
    dpmThreshold: 0,
    drsAdvancedOptions: {
        string: "string",
    },
    drsAutomationLevel: "string",
    drsEnablePredictiveDrs: false,
    drsEnableVmOverrides: false,
    drsEnabled: false,
    drsMigrationThreshold: 0,
    drsScaleDescendantsShares: "string",
    folder: "string",
    forceEvacuateOnDestroy: false,
    haAdmissionControlFailoverHostSystemIds: ["string"],
    haAdmissionControlHostFailureTolerance: 0,
    haAdmissionControlPerformanceTolerance: 0,
    haAdmissionControlPolicy: "string",
    haAdmissionControlResourcePercentageAutoCompute: false,
    haAdmissionControlResourcePercentageCpu: 0,
    haAdmissionControlResourcePercentageMemory: 0,
    haAdmissionControlSlotPolicyExplicitCpu: 0,
    haAdmissionControlSlotPolicyExplicitMemory: 0,
    haAdmissionControlSlotPolicyUseExplicitSize: false,
    haAdvancedOptions: {
        string: "string",
    },
    haDatastoreApdRecoveryAction: "string",
    haDatastoreApdResponse: "string",
    haDatastoreApdResponseDelay: 0,
    haDatastorePdlResponse: "string",
    haEnabled: false,
    haHeartbeatDatastoreIds: ["string"],
    haHeartbeatDatastorePolicy: "string",
    haHostIsolationResponse: "string",
    haHostMonitoring: "string",
    haVmComponentProtection: "string",
    haVmDependencyRestartCondition: "string",
    haVmFailureInterval: 0,
    haVmMaximumFailureWindow: 0,
    haVmMaximumResets: 0,
    haVmMinimumUptime: 0,
    haVmMonitoring: "string",
    haVmRestartAdditionalDelay: 0,
    haVmRestartPriority: "string",
    haVmRestartTimeout: 0,
    hostClusterExitTimeout: 0,
    hostImage: {
        components: [{
            key: "string",
            version: "string",
        }],
        esxVersion: "string",
    },
    hostManaged: false,
    hostSystemIds: ["string"],
    name: "string",
    proactiveHaAutomationLevel: "string",
    proactiveHaEnabled: false,
    proactiveHaModerateRemediation: "string",
    proactiveHaProviderIds: ["string"],
    proactiveHaSevereRemediation: "string",
    tags: ["string"],
    vsanCompressionEnabled: false,
    vsanDedupEnabled: false,
    vsanDiskGroups: [{
        cache: "string",
        storages: ["string"],
    }],
    vsanDitEncryptionEnabled: false,
    vsanDitRekeyInterval: 0,
    vsanEnabled: false,
    vsanEsaEnabled: false,
    vsanFaultDomains: [{
        faultDomains: [{
            hostIds: ["string"],
            name: "string",
        }],
    }],
    vsanNetworkDiagnosticModeEnabled: false,
    vsanPerformanceEnabled: false,
    vsanRemoteDatastoreIds: ["string"],
    vsanStretchedCluster: {
        preferredFaultDomainHostIds: ["string"],
        secondaryFaultDomainHostIds: ["string"],
        witnessNode: "string",
        preferredFaultDomainName: "string",
        secondaryFaultDomainName: "string",
    },
    vsanUnmapEnabled: false,
    vsanVerboseModeEnabled: false,
});
Copy
type: vsphere:ComputeCluster
properties:
    customAttributes:
        string: string
    datacenterId: string
    dpmAutomationLevel: string
    dpmEnabled: false
    dpmThreshold: 0
    drsAdvancedOptions:
        string: string
    drsAutomationLevel: string
    drsEnablePredictiveDrs: false
    drsEnableVmOverrides: false
    drsEnabled: false
    drsMigrationThreshold: 0
    drsScaleDescendantsShares: string
    folder: string
    forceEvacuateOnDestroy: false
    haAdmissionControlFailoverHostSystemIds:
        - string
    haAdmissionControlHostFailureTolerance: 0
    haAdmissionControlPerformanceTolerance: 0
    haAdmissionControlPolicy: string
    haAdmissionControlResourcePercentageAutoCompute: false
    haAdmissionControlResourcePercentageCpu: 0
    haAdmissionControlResourcePercentageMemory: 0
    haAdmissionControlSlotPolicyExplicitCpu: 0
    haAdmissionControlSlotPolicyExplicitMemory: 0
    haAdmissionControlSlotPolicyUseExplicitSize: false
    haAdvancedOptions:
        string: string
    haDatastoreApdRecoveryAction: string
    haDatastoreApdResponse: string
    haDatastoreApdResponseDelay: 0
    haDatastorePdlResponse: string
    haEnabled: false
    haHeartbeatDatastoreIds:
        - string
    haHeartbeatDatastorePolicy: string
    haHostIsolationResponse: string
    haHostMonitoring: string
    haVmComponentProtection: string
    haVmDependencyRestartCondition: string
    haVmFailureInterval: 0
    haVmMaximumFailureWindow: 0
    haVmMaximumResets: 0
    haVmMinimumUptime: 0
    haVmMonitoring: string
    haVmRestartAdditionalDelay: 0
    haVmRestartPriority: string
    haVmRestartTimeout: 0
    hostClusterExitTimeout: 0
    hostImage:
        components:
            - key: string
              version: string
        esxVersion: string
    hostManaged: false
    hostSystemIds:
        - string
    name: string
    proactiveHaAutomationLevel: string
    proactiveHaEnabled: false
    proactiveHaModerateRemediation: string
    proactiveHaProviderIds:
        - string
    proactiveHaSevereRemediation: string
    tags:
        - string
    vsanCompressionEnabled: false
    vsanDedupEnabled: false
    vsanDiskGroups:
        - cache: string
          storages:
            - string
    vsanDitEncryptionEnabled: false
    vsanDitRekeyInterval: 0
    vsanEnabled: false
    vsanEsaEnabled: false
    vsanFaultDomains:
        - faultDomains:
            - hostIds:
                - string
              name: string
    vsanNetworkDiagnosticModeEnabled: false
    vsanPerformanceEnabled: false
    vsanRemoteDatastoreIds:
        - string
    vsanStretchedCluster:
        preferredFaultDomainHostIds:
            - string
        preferredFaultDomainName: string
        secondaryFaultDomainHostIds:
            - string
        secondaryFaultDomainName: string
        witnessNode: string
    vsanUnmapEnabled: false
    vsanVerboseModeEnabled: false
Copy

ComputeCluster Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

The ComputeCluster resource accepts the following input properties:

DatacenterId
This property is required.
Changes to this property will trigger replacement.
string
The managed object ID of the datacenter to create the cluster in. Forces a new resource if changed.
CustomAttributes Dictionary<string, string>

A map of custom attribute ids to attribute value strings to set for the datastore cluster.

NOTE: Custom attributes are unsupported on direct ESXi connections and require vCenter Server.

DpmAutomationLevel string
The automation level for host power operations in this cluster. Can be one of manual or automated.
DpmEnabled bool
Enable DPM support for DRS. This allows you to dynamically control the power of hosts depending on the needs of virtual machines in the cluster. Requires that DRS be enabled.
DpmThreshold int
A value between 1 and 5 indicating the threshold of load within the cluster that influences host power operations. This affects both power on and power off operations - a lower setting will tolerate more of a surplus/deficit than a higher setting.
DrsAdvancedOptions Dictionary<string, string>
Advanced configuration options for DRS and DPM.
DrsAutomationLevel string
The default automation level for all virtual machines in this cluster. Can be one of manual, partiallyAutomated, or fullyAutomated.
DrsEnablePredictiveDrs bool
When true, enables DRS to use data from vRealize Operations Manager to make proactive DRS recommendations.
DrsEnableVmOverrides bool
When true, allows individual VM overrides within this cluster to be set.
DrsEnabled bool
Enable DRS for this cluster.
DrsMigrationThreshold int
A value between 1 and 5 indicating the threshold of imbalance tolerated between hosts. A lower setting will tolerate more imbalance while a higher setting will tolerate less.
DrsScaleDescendantsShares string
Enable scalable shares for all descendants of this cluster.
Folder string
The relative path to a folder to put this cluster in. This is a path relative to the datacenter you are deploying the cluster to. Example: for the dc1 datacenter, and a provided folder of foo/bar, The provider will place a cluster named compute-cluster-test in a host folder located at /dc1/host/foo/bar, with the final inventory path being /dc1/host/foo/bar/datastore-cluster-test.
ForceEvacuateOnDestroy bool
Force removal of all hosts in the cluster during destroy and make them standalone hosts. Use of this flag mainly exists for testing and is not recommended in normal use.
HaAdmissionControlFailoverHostSystemIds List<string>
When ha_admission_control_policy is failoverHosts, this defines the managed object IDs of hosts to use as dedicated failover hosts. These hosts are kept as available as possible - admission control will block access to the host, and DRS will ignore the host when making recommendations.
HaAdmissionControlHostFailureTolerance int
The maximum number of failed hosts that admission control tolerates when making decisions on whether to permit virtual machine operations. The maximum is one less than the number of hosts in the cluster.
HaAdmissionControlPerformanceTolerance int
The percentage of resource reduction that a cluster of VMs can tolerate in case of a failover. A value of 0 produces warnings only, whereas a value of 100 disables the setting.
HaAdmissionControlPolicy string
The type of admission control policy to use with vSphere HA, which controls whether or not specific VM operations are permitted in the cluster in order to protect the reliability of the cluster. Can be one of resourcePercentage, slotPolicy, failoverHosts, or disabled. Note that disabling admission control is not recommended and can lead to service issues.
HaAdmissionControlResourcePercentageAutoCompute bool
When ha_admission_control_policy is resourcePercentage, automatically determine available resource percentages by subtracting the average number of host resources represented by the ha_admission_control_host_failure_tolerance setting from the total amount of resources in the cluster. Disable to supply user-defined values.
HaAdmissionControlResourcePercentageCpu int
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of CPU resources in the cluster to reserve for failover.
HaAdmissionControlResourcePercentageMemory int
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of memory resources in the cluster to reserve for failover.
HaAdmissionControlSlotPolicyExplicitCpu int
When ha_admission_control_policy is slotPolicy, this controls the user-defined CPU slot size, in MHz.
HaAdmissionControlSlotPolicyExplicitMemory int
When ha_admission_control_policy is slotPolicy, this controls the user-defined memory slot size, in MB.
HaAdmissionControlSlotPolicyUseExplicitSize bool
When ha_admission_control_policy is slotPolicy, this setting controls whether or not you wish to supply explicit values to CPU and memory slot sizes. The default is to gather a automatic average based on all powered-on virtual machines currently in the cluster.
HaAdvancedOptions Dictionary<string, string>
Advanced configuration options for vSphere HA.
HaDatastoreApdRecoveryAction string
When ha_vm_component_protection is enabled, controls the action to take on virtual machines if an APD status on an affected datastore clears in the middle of an APD event. Can be one of none or reset.
HaDatastoreApdResponse string
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected loss to all paths to a relevant datastore. Can be one of disabled, warning, restartConservative, or restartAggressive.
HaDatastoreApdResponseDelay int
When ha_vm_component_protection is enabled, controls the delay in seconds to wait after an APD timeout event to execute the response action defined in ha_datastore_apd_response.
HaDatastorePdlResponse string
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected a permanent device loss to a relevant datastore. Can be one of disabled, warning, or restartAggressive.
HaEnabled bool
Enable vSphere HA for this cluster.
HaHeartbeatDatastoreIds List<string>
The list of managed object IDs for preferred datastores to use for HA heartbeating. This setting is only useful when ha_heartbeat_datastore_policy is set to either userSelectedDs or allFeasibleDsWithUserPreference.
HaHeartbeatDatastorePolicy string
The selection policy for HA heartbeat datastores. Can be one of allFeasibleDs, userSelectedDs, or allFeasibleDsWithUserPreference.
HaHostIsolationResponse string
The action to take on virtual machines when a host has detected that it has been isolated from the rest of the cluster. Can be one of none, powerOff, or shutdown.
HaHostMonitoring string
Global setting that controls whether vSphere HA remediates VMs on host failure. Can be one of enabled or disabled.
HaVmComponentProtection string
Controls vSphere VM component protection for virtual machines in this cluster. This allows vSphere HA to react to failures between hosts and specific virtual machine components, such as datastores. Can be one of enabled or disabled.
HaVmDependencyRestartCondition string
The condition used to determine whether or not VMs in a certain restart priority class are online, allowing HA to move on to restarting VMs on the next priority. Can be one of none, poweredOn, guestHbStatusGreen, or appHbStatusGreen.
HaVmFailureInterval int
If a heartbeat from a virtual machine is not received within this configured interval, the virtual machine is marked as failed. The value is in seconds.
HaVmMaximumFailureWindow int
The length of the reset window in which ha_vm_maximum_resets can operate. When this window expires, no more resets are attempted regardless of the setting configured in ha_vm_maximum_resets. -1 means no window, meaning an unlimited reset time is allotted.
HaVmMaximumResets int
The maximum number of resets that HA will perform to a virtual machine when responding to a failure event.
HaVmMinimumUptime int
The time, in seconds, that HA waits after powering on a virtual machine before monitoring for heartbeats.
HaVmMonitoring string
The type of virtual machine monitoring to use when HA is enabled in the cluster. Can be one of vmMonitoringDisabled, vmMonitoringOnly, or vmAndAppMonitoring.
HaVmRestartAdditionalDelay int
Additional delay in seconds after ready condition is met. A VM is considered ready at this point.
HaVmRestartPriority string
The default restart priority for affected VMs when vSphere detects a host failure. Can be one of lowest, low, medium, high, or highest.
HaVmRestartTimeout int
The maximum time, in seconds, that vSphere HA will wait for virtual machines in one priority to be ready before proceeding with the next priority.
HostClusterExitTimeout int
The timeout for each host maintenance mode operation when removing hosts from a cluster.
HostImage Pulumi.VSphere.Inputs.ComputeClusterHostImage
Details about the host image which should be applied to the cluster.
HostManaged bool
Must be set if cluster enrollment is managed from host resource.
HostSystemIds List<string>
The managed object IDs of the hosts to put in the cluster.
Name string
The name of the cluster.
ProactiveHaAutomationLevel string
The DRS behavior for proactive HA recommendations. Can be one of Automated or Manual.
ProactiveHaEnabled bool
Enables proactive HA, allowing for vSphere to get HA data from external providers and use DRS to perform remediation.
ProactiveHaModerateRemediation string
The configured remediation for moderately degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to MaintenanceMode when proactive_ha_severe_remediation is set to QuarantineMode.
ProactiveHaProviderIds List<string>
The list of IDs for health update providers configured for this cluster.
ProactiveHaSevereRemediation string
The configured remediation for severely degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to QuarantineMode when proactive_ha_moderate_remediation is set to MaintenanceMode.
Tags List<string>
The IDs of any tags to attach to this resource.
VsanCompressionEnabled bool
Whether the vSAN compression service is enabled for the cluster.
VsanDedupEnabled bool
Whether the vSAN deduplication service is enabled for the cluster.
VsanDiskGroups List<Pulumi.VSphere.Inputs.ComputeClusterVsanDiskGroup>
A list of disk UUIDs to add to the vSAN cluster.
VsanDitEncryptionEnabled bool
Whether the vSAN data-in-transit encryption is enabled for the cluster.
VsanDitRekeyInterval int
When vsan_dit_encryption_enabled is enabled, sets the rekey interval of data-in-transit encryption (in minutes).
VsanEnabled bool
Whether the vSAN service is enabled for the cluster.
VsanEsaEnabled bool
Whether the vSAN ESA service is enabled for the cluster.
VsanFaultDomains List<Pulumi.VSphere.Inputs.ComputeClusterVsanFaultDomain>
The configuration for vSAN fault domains.
VsanNetworkDiagnosticModeEnabled bool
Whether the vSAN network diagnostic mode is enabled for the cluster.
VsanPerformanceEnabled bool
Whether the vSAN performance service is enabled for the cluster.
VsanRemoteDatastoreIds List<string>
The managed object IDs of the vSAN datastore to be mounted on the cluster.
VsanStretchedCluster Pulumi.VSphere.Inputs.ComputeClusterVsanStretchedCluster
The configuration for stretched cluster.
VsanUnmapEnabled bool
Whether the vSAN unmap service is enabled for the cluster.
VsanVerboseModeEnabled bool
Whether the vSAN verbose mode is enabled for the cluster.
DatacenterId
This property is required.
Changes to this property will trigger replacement.
string
The managed object ID of the datacenter to create the cluster in. Forces a new resource if changed.
CustomAttributes map[string]string

A map of custom attribute ids to attribute value strings to set for the datastore cluster.

NOTE: Custom attributes are unsupported on direct ESXi connections and require vCenter Server.

DpmAutomationLevel string
The automation level for host power operations in this cluster. Can be one of manual or automated.
DpmEnabled bool
Enable DPM support for DRS. This allows you to dynamically control the power of hosts depending on the needs of virtual machines in the cluster. Requires that DRS be enabled.
DpmThreshold int
A value between 1 and 5 indicating the threshold of load within the cluster that influences host power operations. This affects both power on and power off operations - a lower setting will tolerate more of a surplus/deficit than a higher setting.
DrsAdvancedOptions map[string]string
Advanced configuration options for DRS and DPM.
DrsAutomationLevel string
The default automation level for all virtual machines in this cluster. Can be one of manual, partiallyAutomated, or fullyAutomated.
DrsEnablePredictiveDrs bool
When true, enables DRS to use data from vRealize Operations Manager to make proactive DRS recommendations.
DrsEnableVmOverrides bool
When true, allows individual VM overrides within this cluster to be set.
DrsEnabled bool
Enable DRS for this cluster.
DrsMigrationThreshold int
A value between 1 and 5 indicating the threshold of imbalance tolerated between hosts. A lower setting will tolerate more imbalance while a higher setting will tolerate less.
DrsScaleDescendantsShares string
Enable scalable shares for all descendants of this cluster.
Folder string
The relative path to a folder to put this cluster in. This is a path relative to the datacenter you are deploying the cluster to. Example: for the dc1 datacenter, and a provided folder of foo/bar, The provider will place a cluster named compute-cluster-test in a host folder located at /dc1/host/foo/bar, with the final inventory path being /dc1/host/foo/bar/datastore-cluster-test.
ForceEvacuateOnDestroy bool
Force removal of all hosts in the cluster during destroy and make them standalone hosts. Use of this flag mainly exists for testing and is not recommended in normal use.
HaAdmissionControlFailoverHostSystemIds []string
When ha_admission_control_policy is failoverHosts, this defines the managed object IDs of hosts to use as dedicated failover hosts. These hosts are kept as available as possible - admission control will block access to the host, and DRS will ignore the host when making recommendations.
HaAdmissionControlHostFailureTolerance int
The maximum number of failed hosts that admission control tolerates when making decisions on whether to permit virtual machine operations. The maximum is one less than the number of hosts in the cluster.
HaAdmissionControlPerformanceTolerance int
The percentage of resource reduction that a cluster of VMs can tolerate in case of a failover. A value of 0 produces warnings only, whereas a value of 100 disables the setting.
HaAdmissionControlPolicy string
The type of admission control policy to use with vSphere HA, which controls whether or not specific VM operations are permitted in the cluster in order to protect the reliability of the cluster. Can be one of resourcePercentage, slotPolicy, failoverHosts, or disabled. Note that disabling admission control is not recommended and can lead to service issues.
HaAdmissionControlResourcePercentageAutoCompute bool
When ha_admission_control_policy is resourcePercentage, automatically determine available resource percentages by subtracting the average number of host resources represented by the ha_admission_control_host_failure_tolerance setting from the total amount of resources in the cluster. Disable to supply user-defined values.
HaAdmissionControlResourcePercentageCpu int
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of CPU resources in the cluster to reserve for failover.
HaAdmissionControlResourcePercentageMemory int
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of memory resources in the cluster to reserve for failover.
HaAdmissionControlSlotPolicyExplicitCpu int
When ha_admission_control_policy is slotPolicy, this controls the user-defined CPU slot size, in MHz.
HaAdmissionControlSlotPolicyExplicitMemory int
When ha_admission_control_policy is slotPolicy, this controls the user-defined memory slot size, in MB.
HaAdmissionControlSlotPolicyUseExplicitSize bool
When ha_admission_control_policy is slotPolicy, this setting controls whether or not you wish to supply explicit values to CPU and memory slot sizes. The default is to gather a automatic average based on all powered-on virtual machines currently in the cluster.
HaAdvancedOptions map[string]string
Advanced configuration options for vSphere HA.
HaDatastoreApdRecoveryAction string
When ha_vm_component_protection is enabled, controls the action to take on virtual machines if an APD status on an affected datastore clears in the middle of an APD event. Can be one of none or reset.
HaDatastoreApdResponse string
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected loss to all paths to a relevant datastore. Can be one of disabled, warning, restartConservative, or restartAggressive.
HaDatastoreApdResponseDelay int
When ha_vm_component_protection is enabled, controls the delay in seconds to wait after an APD timeout event to execute the response action defined in ha_datastore_apd_response.
HaDatastorePdlResponse string
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected a permanent device loss to a relevant datastore. Can be one of disabled, warning, or restartAggressive.
HaEnabled bool
Enable vSphere HA for this cluster.
HaHeartbeatDatastoreIds []string
The list of managed object IDs for preferred datastores to use for HA heartbeating. This setting is only useful when ha_heartbeat_datastore_policy is set to either userSelectedDs or allFeasibleDsWithUserPreference.
HaHeartbeatDatastorePolicy string
The selection policy for HA heartbeat datastores. Can be one of allFeasibleDs, userSelectedDs, or allFeasibleDsWithUserPreference.
HaHostIsolationResponse string
The action to take on virtual machines when a host has detected that it has been isolated from the rest of the cluster. Can be one of none, powerOff, or shutdown.
HaHostMonitoring string
Global setting that controls whether vSphere HA remediates VMs on host failure. Can be one of enabled or disabled.
HaVmComponentProtection string
Controls vSphere VM component protection for virtual machines in this cluster. This allows vSphere HA to react to failures between hosts and specific virtual machine components, such as datastores. Can be one of enabled or disabled.
HaVmDependencyRestartCondition string
The condition used to determine whether or not VMs in a certain restart priority class are online, allowing HA to move on to restarting VMs on the next priority. Can be one of none, poweredOn, guestHbStatusGreen, or appHbStatusGreen.
HaVmFailureInterval int
If a heartbeat from a virtual machine is not received within this configured interval, the virtual machine is marked as failed. The value is in seconds.
HaVmMaximumFailureWindow int
The length of the reset window in which ha_vm_maximum_resets can operate. When this window expires, no more resets are attempted regardless of the setting configured in ha_vm_maximum_resets. -1 means no window, meaning an unlimited reset time is allotted.
HaVmMaximumResets int
The maximum number of resets that HA will perform to a virtual machine when responding to a failure event.
HaVmMinimumUptime int
The time, in seconds, that HA waits after powering on a virtual machine before monitoring for heartbeats.
HaVmMonitoring string
The type of virtual machine monitoring to use when HA is enabled in the cluster. Can be one of vmMonitoringDisabled, vmMonitoringOnly, or vmAndAppMonitoring.
HaVmRestartAdditionalDelay int
Additional delay in seconds after ready condition is met. A VM is considered ready at this point.
HaVmRestartPriority string
The default restart priority for affected VMs when vSphere detects a host failure. Can be one of lowest, low, medium, high, or highest.
HaVmRestartTimeout int
The maximum time, in seconds, that vSphere HA will wait for virtual machines in one priority to be ready before proceeding with the next priority.
HostClusterExitTimeout int
The timeout for each host maintenance mode operation when removing hosts from a cluster.
HostImage ComputeClusterHostImageArgs
Details about the host image which should be applied to the cluster.
HostManaged bool
Must be set if cluster enrollment is managed from host resource.
HostSystemIds []string
The managed object IDs of the hosts to put in the cluster.
Name string
The name of the cluster.
ProactiveHaAutomationLevel string
The DRS behavior for proactive HA recommendations. Can be one of Automated or Manual.
ProactiveHaEnabled bool
Enables proactive HA, allowing for vSphere to get HA data from external providers and use DRS to perform remediation.
ProactiveHaModerateRemediation string
The configured remediation for moderately degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to MaintenanceMode when proactive_ha_severe_remediation is set to QuarantineMode.
ProactiveHaProviderIds []string
The list of IDs for health update providers configured for this cluster.
ProactiveHaSevereRemediation string
The configured remediation for severely degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to QuarantineMode when proactive_ha_moderate_remediation is set to MaintenanceMode.
Tags []string
The IDs of any tags to attach to this resource.
VsanCompressionEnabled bool
Whether the vSAN compression service is enabled for the cluster.
VsanDedupEnabled bool
Whether the vSAN deduplication service is enabled for the cluster.
VsanDiskGroups []ComputeClusterVsanDiskGroupArgs
A list of disk UUIDs to add to the vSAN cluster.
VsanDitEncryptionEnabled bool
Whether the vSAN data-in-transit encryption is enabled for the cluster.
VsanDitRekeyInterval int
When vsan_dit_encryption_enabled is enabled, sets the rekey interval of data-in-transit encryption (in minutes).
VsanEnabled bool
Whether the vSAN service is enabled for the cluster.
VsanEsaEnabled bool
Whether the vSAN ESA service is enabled for the cluster.
VsanFaultDomains []ComputeClusterVsanFaultDomainArgs
The configuration for vSAN fault domains.
VsanNetworkDiagnosticModeEnabled bool
Whether the vSAN network diagnostic mode is enabled for the cluster.
VsanPerformanceEnabled bool
Whether the vSAN performance service is enabled for the cluster.
VsanRemoteDatastoreIds []string
The managed object IDs of the vSAN datastore to be mounted on the cluster.
VsanStretchedCluster ComputeClusterVsanStretchedClusterArgs
The configuration for stretched cluster.
VsanUnmapEnabled bool
Whether the vSAN unmap service is enabled for the cluster.
VsanVerboseModeEnabled bool
Whether the vSAN verbose mode is enabled for the cluster.
datacenterId
This property is required.
Changes to this property will trigger replacement.
String
The managed object ID of the datacenter to create the cluster in. Forces a new resource if changed.
customAttributes Map<String,String>

A map of custom attribute ids to attribute value strings to set for the datastore cluster.

NOTE: Custom attributes are unsupported on direct ESXi connections and require vCenter Server.

dpmAutomationLevel String
The automation level for host power operations in this cluster. Can be one of manual or automated.
dpmEnabled Boolean
Enable DPM support for DRS. This allows you to dynamically control the power of hosts depending on the needs of virtual machines in the cluster. Requires that DRS be enabled.
dpmThreshold Integer
A value between 1 and 5 indicating the threshold of load within the cluster that influences host power operations. This affects both power on and power off operations - a lower setting will tolerate more of a surplus/deficit than a higher setting.
drsAdvancedOptions Map<String,String>
Advanced configuration options for DRS and DPM.
drsAutomationLevel String
The default automation level for all virtual machines in this cluster. Can be one of manual, partiallyAutomated, or fullyAutomated.
drsEnablePredictiveDrs Boolean
When true, enables DRS to use data from vRealize Operations Manager to make proactive DRS recommendations.
drsEnableVmOverrides Boolean
When true, allows individual VM overrides within this cluster to be set.
drsEnabled Boolean
Enable DRS for this cluster.
drsMigrationThreshold Integer
A value between 1 and 5 indicating the threshold of imbalance tolerated between hosts. A lower setting will tolerate more imbalance while a higher setting will tolerate less.
drsScaleDescendantsShares String
Enable scalable shares for all descendants of this cluster.
folder String
The relative path to a folder to put this cluster in. This is a path relative to the datacenter you are deploying the cluster to. Example: for the dc1 datacenter, and a provided folder of foo/bar, The provider will place a cluster named compute-cluster-test in a host folder located at /dc1/host/foo/bar, with the final inventory path being /dc1/host/foo/bar/datastore-cluster-test.
forceEvacuateOnDestroy Boolean
Force removal of all hosts in the cluster during destroy and make them standalone hosts. Use of this flag mainly exists for testing and is not recommended in normal use.
haAdmissionControlFailoverHostSystemIds List<String>
When ha_admission_control_policy is failoverHosts, this defines the managed object IDs of hosts to use as dedicated failover hosts. These hosts are kept as available as possible - admission control will block access to the host, and DRS will ignore the host when making recommendations.
haAdmissionControlHostFailureTolerance Integer
The maximum number of failed hosts that admission control tolerates when making decisions on whether to permit virtual machine operations. The maximum is one less than the number of hosts in the cluster.
haAdmissionControlPerformanceTolerance Integer
The percentage of resource reduction that a cluster of VMs can tolerate in case of a failover. A value of 0 produces warnings only, whereas a value of 100 disables the setting.
haAdmissionControlPolicy String
The type of admission control policy to use with vSphere HA, which controls whether or not specific VM operations are permitted in the cluster in order to protect the reliability of the cluster. Can be one of resourcePercentage, slotPolicy, failoverHosts, or disabled. Note that disabling admission control is not recommended and can lead to service issues.
haAdmissionControlResourcePercentageAutoCompute Boolean
When ha_admission_control_policy is resourcePercentage, automatically determine available resource percentages by subtracting the average number of host resources represented by the ha_admission_control_host_failure_tolerance setting from the total amount of resources in the cluster. Disable to supply user-defined values.
haAdmissionControlResourcePercentageCpu Integer
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of CPU resources in the cluster to reserve for failover.
haAdmissionControlResourcePercentageMemory Integer
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of memory resources in the cluster to reserve for failover.
haAdmissionControlSlotPolicyExplicitCpu Integer
When ha_admission_control_policy is slotPolicy, this controls the user-defined CPU slot size, in MHz.
haAdmissionControlSlotPolicyExplicitMemory Integer
When ha_admission_control_policy is slotPolicy, this controls the user-defined memory slot size, in MB.
haAdmissionControlSlotPolicyUseExplicitSize Boolean
When ha_admission_control_policy is slotPolicy, this setting controls whether or not you wish to supply explicit values to CPU and memory slot sizes. The default is to gather a automatic average based on all powered-on virtual machines currently in the cluster.
haAdvancedOptions Map<String,String>
Advanced configuration options for vSphere HA.
haDatastoreApdRecoveryAction String
When ha_vm_component_protection is enabled, controls the action to take on virtual machines if an APD status on an affected datastore clears in the middle of an APD event. Can be one of none or reset.
haDatastoreApdResponse String
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected loss to all paths to a relevant datastore. Can be one of disabled, warning, restartConservative, or restartAggressive.
haDatastoreApdResponseDelay Integer
When ha_vm_component_protection is enabled, controls the delay in seconds to wait after an APD timeout event to execute the response action defined in ha_datastore_apd_response.
haDatastorePdlResponse String
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected a permanent device loss to a relevant datastore. Can be one of disabled, warning, or restartAggressive.
haEnabled Boolean
Enable vSphere HA for this cluster.
haHeartbeatDatastoreIds List<String>
The list of managed object IDs for preferred datastores to use for HA heartbeating. This setting is only useful when ha_heartbeat_datastore_policy is set to either userSelectedDs or allFeasibleDsWithUserPreference.
haHeartbeatDatastorePolicy String
The selection policy for HA heartbeat datastores. Can be one of allFeasibleDs, userSelectedDs, or allFeasibleDsWithUserPreference.
haHostIsolationResponse String
The action to take on virtual machines when a host has detected that it has been isolated from the rest of the cluster. Can be one of none, powerOff, or shutdown.
haHostMonitoring String
Global setting that controls whether vSphere HA remediates VMs on host failure. Can be one of enabled or disabled.
haVmComponentProtection String
Controls vSphere VM component protection for virtual machines in this cluster. This allows vSphere HA to react to failures between hosts and specific virtual machine components, such as datastores. Can be one of enabled or disabled.
haVmDependencyRestartCondition String
The condition used to determine whether or not VMs in a certain restart priority class are online, allowing HA to move on to restarting VMs on the next priority. Can be one of none, poweredOn, guestHbStatusGreen, or appHbStatusGreen.
haVmFailureInterval Integer
If a heartbeat from a virtual machine is not received within this configured interval, the virtual machine is marked as failed. The value is in seconds.
haVmMaximumFailureWindow Integer
The length of the reset window in which ha_vm_maximum_resets can operate. When this window expires, no more resets are attempted regardless of the setting configured in ha_vm_maximum_resets. -1 means no window, meaning an unlimited reset time is allotted.
haVmMaximumResets Integer
The maximum number of resets that HA will perform to a virtual machine when responding to a failure event.
haVmMinimumUptime Integer
The time, in seconds, that HA waits after powering on a virtual machine before monitoring for heartbeats.
haVmMonitoring String
The type of virtual machine monitoring to use when HA is enabled in the cluster. Can be one of vmMonitoringDisabled, vmMonitoringOnly, or vmAndAppMonitoring.
haVmRestartAdditionalDelay Integer
Additional delay in seconds after ready condition is met. A VM is considered ready at this point.
haVmRestartPriority String
The default restart priority for affected VMs when vSphere detects a host failure. Can be one of lowest, low, medium, high, or highest.
haVmRestartTimeout Integer
The maximum time, in seconds, that vSphere HA will wait for virtual machines in one priority to be ready before proceeding with the next priority.
hostClusterExitTimeout Integer
The timeout for each host maintenance mode operation when removing hosts from a cluster.
hostImage ComputeClusterHostImage
Details about the host image which should be applied to the cluster.
hostManaged Boolean
Must be set if cluster enrollment is managed from host resource.
hostSystemIds List<String>
The managed object IDs of the hosts to put in the cluster.
name String
The name of the cluster.
proactiveHaAutomationLevel String
The DRS behavior for proactive HA recommendations. Can be one of Automated or Manual.
proactiveHaEnabled Boolean
Enables proactive HA, allowing for vSphere to get HA data from external providers and use DRS to perform remediation.
proactiveHaModerateRemediation String
The configured remediation for moderately degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to MaintenanceMode when proactive_ha_severe_remediation is set to QuarantineMode.
proactiveHaProviderIds List<String>
The list of IDs for health update providers configured for this cluster.
proactiveHaSevereRemediation String
The configured remediation for severely degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to QuarantineMode when proactive_ha_moderate_remediation is set to MaintenanceMode.
tags List<String>
The IDs of any tags to attach to this resource.
vsanCompressionEnabled Boolean
Whether the vSAN compression service is enabled for the cluster.
vsanDedupEnabled Boolean
Whether the vSAN deduplication service is enabled for the cluster.
vsanDiskGroups List<ComputeClusterVsanDiskGroup>
A list of disk UUIDs to add to the vSAN cluster.
vsanDitEncryptionEnabled Boolean
Whether the vSAN data-in-transit encryption is enabled for the cluster.
vsanDitRekeyInterval Integer
When vsan_dit_encryption_enabled is enabled, sets the rekey interval of data-in-transit encryption (in minutes).
vsanEnabled Boolean
Whether the vSAN service is enabled for the cluster.
vsanEsaEnabled Boolean
Whether the vSAN ESA service is enabled for the cluster.
vsanFaultDomains List<ComputeClusterVsanFaultDomain>
The configuration for vSAN fault domains.
vsanNetworkDiagnosticModeEnabled Boolean
Whether the vSAN network diagnostic mode is enabled for the cluster.
vsanPerformanceEnabled Boolean
Whether the vSAN performance service is enabled for the cluster.
vsanRemoteDatastoreIds List<String>
The managed object IDs of the vSAN datastore to be mounted on the cluster.
vsanStretchedCluster ComputeClusterVsanStretchedCluster
The configuration for stretched cluster.
vsanUnmapEnabled Boolean
Whether the vSAN unmap service is enabled for the cluster.
vsanVerboseModeEnabled Boolean
Whether the vSAN verbose mode is enabled for the cluster.
datacenterId
This property is required.
Changes to this property will trigger replacement.
string
The managed object ID of the datacenter to create the cluster in. Forces a new resource if changed.
customAttributes {[key: string]: string}

A map of custom attribute ids to attribute value strings to set for the datastore cluster.

NOTE: Custom attributes are unsupported on direct ESXi connections and require vCenter Server.

dpmAutomationLevel string
The automation level for host power operations in this cluster. Can be one of manual or automated.
dpmEnabled boolean
Enable DPM support for DRS. This allows you to dynamically control the power of hosts depending on the needs of virtual machines in the cluster. Requires that DRS be enabled.
dpmThreshold number
A value between 1 and 5 indicating the threshold of load within the cluster that influences host power operations. This affects both power on and power off operations - a lower setting will tolerate more of a surplus/deficit than a higher setting.
drsAdvancedOptions {[key: string]: string}
Advanced configuration options for DRS and DPM.
drsAutomationLevel string
The default automation level for all virtual machines in this cluster. Can be one of manual, partiallyAutomated, or fullyAutomated.
drsEnablePredictiveDrs boolean
When true, enables DRS to use data from vRealize Operations Manager to make proactive DRS recommendations.
drsEnableVmOverrides boolean
When true, allows individual VM overrides within this cluster to be set.
drsEnabled boolean
Enable DRS for this cluster.
drsMigrationThreshold number
A value between 1 and 5 indicating the threshold of imbalance tolerated between hosts. A lower setting will tolerate more imbalance while a higher setting will tolerate less.
drsScaleDescendantsShares string
Enable scalable shares for all descendants of this cluster.
folder string
The relative path to a folder to put this cluster in. This is a path relative to the datacenter you are deploying the cluster to. Example: for the dc1 datacenter, and a provided folder of foo/bar, The provider will place a cluster named compute-cluster-test in a host folder located at /dc1/host/foo/bar, with the final inventory path being /dc1/host/foo/bar/datastore-cluster-test.
forceEvacuateOnDestroy boolean
Force removal of all hosts in the cluster during destroy and make them standalone hosts. Use of this flag mainly exists for testing and is not recommended in normal use.
haAdmissionControlFailoverHostSystemIds string[]
When ha_admission_control_policy is failoverHosts, this defines the managed object IDs of hosts to use as dedicated failover hosts. These hosts are kept as available as possible - admission control will block access to the host, and DRS will ignore the host when making recommendations.
haAdmissionControlHostFailureTolerance number
The maximum number of failed hosts that admission control tolerates when making decisions on whether to permit virtual machine operations. The maximum is one less than the number of hosts in the cluster.
haAdmissionControlPerformanceTolerance number
The percentage of resource reduction that a cluster of VMs can tolerate in case of a failover. A value of 0 produces warnings only, whereas a value of 100 disables the setting.
haAdmissionControlPolicy string
The type of admission control policy to use with vSphere HA, which controls whether or not specific VM operations are permitted in the cluster in order to protect the reliability of the cluster. Can be one of resourcePercentage, slotPolicy, failoverHosts, or disabled. Note that disabling admission control is not recommended and can lead to service issues.
haAdmissionControlResourcePercentageAutoCompute boolean
When ha_admission_control_policy is resourcePercentage, automatically determine available resource percentages by subtracting the average number of host resources represented by the ha_admission_control_host_failure_tolerance setting from the total amount of resources in the cluster. Disable to supply user-defined values.
haAdmissionControlResourcePercentageCpu number
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of CPU resources in the cluster to reserve for failover.
haAdmissionControlResourcePercentageMemory number
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of memory resources in the cluster to reserve for failover.
haAdmissionControlSlotPolicyExplicitCpu number
When ha_admission_control_policy is slotPolicy, this controls the user-defined CPU slot size, in MHz.
haAdmissionControlSlotPolicyExplicitMemory number
When ha_admission_control_policy is slotPolicy, this controls the user-defined memory slot size, in MB.
haAdmissionControlSlotPolicyUseExplicitSize boolean
When ha_admission_control_policy is slotPolicy, this setting controls whether or not you wish to supply explicit values to CPU and memory slot sizes. The default is to gather a automatic average based on all powered-on virtual machines currently in the cluster.
haAdvancedOptions {[key: string]: string}
Advanced configuration options for vSphere HA.
haDatastoreApdRecoveryAction string
When ha_vm_component_protection is enabled, controls the action to take on virtual machines if an APD status on an affected datastore clears in the middle of an APD event. Can be one of none or reset.
haDatastoreApdResponse string
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected loss to all paths to a relevant datastore. Can be one of disabled, warning, restartConservative, or restartAggressive.
haDatastoreApdResponseDelay number
When ha_vm_component_protection is enabled, controls the delay in seconds to wait after an APD timeout event to execute the response action defined in ha_datastore_apd_response.
haDatastorePdlResponse string
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected a permanent device loss to a relevant datastore. Can be one of disabled, warning, or restartAggressive.
haEnabled boolean
Enable vSphere HA for this cluster.
haHeartbeatDatastoreIds string[]
The list of managed object IDs for preferred datastores to use for HA heartbeating. This setting is only useful when ha_heartbeat_datastore_policy is set to either userSelectedDs or allFeasibleDsWithUserPreference.
haHeartbeatDatastorePolicy string
The selection policy for HA heartbeat datastores. Can be one of allFeasibleDs, userSelectedDs, or allFeasibleDsWithUserPreference.
haHostIsolationResponse string
The action to take on virtual machines when a host has detected that it has been isolated from the rest of the cluster. Can be one of none, powerOff, or shutdown.
haHostMonitoring string
Global setting that controls whether vSphere HA remediates VMs on host failure. Can be one of enabled or disabled.
haVmComponentProtection string
Controls vSphere VM component protection for virtual machines in this cluster. This allows vSphere HA to react to failures between hosts and specific virtual machine components, such as datastores. Can be one of enabled or disabled.
haVmDependencyRestartCondition string
The condition used to determine whether or not VMs in a certain restart priority class are online, allowing HA to move on to restarting VMs on the next priority. Can be one of none, poweredOn, guestHbStatusGreen, or appHbStatusGreen.
haVmFailureInterval number
If a heartbeat from a virtual machine is not received within this configured interval, the virtual machine is marked as failed. The value is in seconds.
haVmMaximumFailureWindow number
The length of the reset window in which ha_vm_maximum_resets can operate. When this window expires, no more resets are attempted regardless of the setting configured in ha_vm_maximum_resets. -1 means no window, meaning an unlimited reset time is allotted.
haVmMaximumResets number
The maximum number of resets that HA will perform to a virtual machine when responding to a failure event.
haVmMinimumUptime number
The time, in seconds, that HA waits after powering on a virtual machine before monitoring for heartbeats.
haVmMonitoring string
The type of virtual machine monitoring to use when HA is enabled in the cluster. Can be one of vmMonitoringDisabled, vmMonitoringOnly, or vmAndAppMonitoring.
haVmRestartAdditionalDelay number
Additional delay in seconds after ready condition is met. A VM is considered ready at this point.
haVmRestartPriority string
The default restart priority for affected VMs when vSphere detects a host failure. Can be one of lowest, low, medium, high, or highest.
haVmRestartTimeout number
The maximum time, in seconds, that vSphere HA will wait for virtual machines in one priority to be ready before proceeding with the next priority.
hostClusterExitTimeout number
The timeout for each host maintenance mode operation when removing hosts from a cluster.
hostImage ComputeClusterHostImage
Details about the host image which should be applied to the cluster.
hostManaged boolean
Must be set if cluster enrollment is managed from host resource.
hostSystemIds string[]
The managed object IDs of the hosts to put in the cluster.
name string
The name of the cluster.
proactiveHaAutomationLevel string
The DRS behavior for proactive HA recommendations. Can be one of Automated or Manual.
proactiveHaEnabled boolean
Enables proactive HA, allowing for vSphere to get HA data from external providers and use DRS to perform remediation.
proactiveHaModerateRemediation string
The configured remediation for moderately degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to MaintenanceMode when proactive_ha_severe_remediation is set to QuarantineMode.
proactiveHaProviderIds string[]
The list of IDs for health update providers configured for this cluster.
proactiveHaSevereRemediation string
The configured remediation for severely degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to QuarantineMode when proactive_ha_moderate_remediation is set to MaintenanceMode.
tags string[]
The IDs of any tags to attach to this resource.
vsanCompressionEnabled boolean
Whether the vSAN compression service is enabled for the cluster.
vsanDedupEnabled boolean
Whether the vSAN deduplication service is enabled for the cluster.
vsanDiskGroups ComputeClusterVsanDiskGroup[]
A list of disk UUIDs to add to the vSAN cluster.
vsanDitEncryptionEnabled boolean
Whether the vSAN data-in-transit encryption is enabled for the cluster.
vsanDitRekeyInterval number
When vsan_dit_encryption_enabled is enabled, sets the rekey interval of data-in-transit encryption (in minutes).
vsanEnabled boolean
Whether the vSAN service is enabled for the cluster.
vsanEsaEnabled boolean
Whether the vSAN ESA service is enabled for the cluster.
vsanFaultDomains ComputeClusterVsanFaultDomain[]
The configuration for vSAN fault domains.
vsanNetworkDiagnosticModeEnabled boolean
Whether the vSAN network diagnostic mode is enabled for the cluster.
vsanPerformanceEnabled boolean
Whether the vSAN performance service is enabled for the cluster.
vsanRemoteDatastoreIds string[]
The managed object IDs of the vSAN datastore to be mounted on the cluster.
vsanStretchedCluster ComputeClusterVsanStretchedCluster
The configuration for stretched cluster.
vsanUnmapEnabled boolean
Whether the vSAN unmap service is enabled for the cluster.
vsanVerboseModeEnabled boolean
Whether the vSAN verbose mode is enabled for the cluster.
datacenter_id
This property is required.
Changes to this property will trigger replacement.
str
The managed object ID of the datacenter to create the cluster in. Forces a new resource if changed.
custom_attributes Mapping[str, str]

A map of custom attribute ids to attribute value strings to set for the datastore cluster.

NOTE: Custom attributes are unsupported on direct ESXi connections and require vCenter Server.

dpm_automation_level str
The automation level for host power operations in this cluster. Can be one of manual or automated.
dpm_enabled bool
Enable DPM support for DRS. This allows you to dynamically control the power of hosts depending on the needs of virtual machines in the cluster. Requires that DRS be enabled.
dpm_threshold int
A value between 1 and 5 indicating the threshold of load within the cluster that influences host power operations. This affects both power on and power off operations - a lower setting will tolerate more of a surplus/deficit than a higher setting.
drs_advanced_options Mapping[str, str]
Advanced configuration options for DRS and DPM.
drs_automation_level str
The default automation level for all virtual machines in this cluster. Can be one of manual, partiallyAutomated, or fullyAutomated.
drs_enable_predictive_drs bool
When true, enables DRS to use data from vRealize Operations Manager to make proactive DRS recommendations.
drs_enable_vm_overrides bool
When true, allows individual VM overrides within this cluster to be set.
drs_enabled bool
Enable DRS for this cluster.
drs_migration_threshold int
A value between 1 and 5 indicating the threshold of imbalance tolerated between hosts. A lower setting will tolerate more imbalance while a higher setting will tolerate less.
drs_scale_descendants_shares str
Enable scalable shares for all descendants of this cluster.
folder str
The relative path to a folder to put this cluster in. This is a path relative to the datacenter you are deploying the cluster to. Example: for the dc1 datacenter, and a provided folder of foo/bar, The provider will place a cluster named compute-cluster-test in a host folder located at /dc1/host/foo/bar, with the final inventory path being /dc1/host/foo/bar/datastore-cluster-test.
force_evacuate_on_destroy bool
Force removal of all hosts in the cluster during destroy and make them standalone hosts. Use of this flag mainly exists for testing and is not recommended in normal use.
ha_admission_control_failover_host_system_ids Sequence[str]
When ha_admission_control_policy is failoverHosts, this defines the managed object IDs of hosts to use as dedicated failover hosts. These hosts are kept as available as possible - admission control will block access to the host, and DRS will ignore the host when making recommendations.
ha_admission_control_host_failure_tolerance int
The maximum number of failed hosts that admission control tolerates when making decisions on whether to permit virtual machine operations. The maximum is one less than the number of hosts in the cluster.
ha_admission_control_performance_tolerance int
The percentage of resource reduction that a cluster of VMs can tolerate in case of a failover. A value of 0 produces warnings only, whereas a value of 100 disables the setting.
ha_admission_control_policy str
The type of admission control policy to use with vSphere HA, which controls whether or not specific VM operations are permitted in the cluster in order to protect the reliability of the cluster. Can be one of resourcePercentage, slotPolicy, failoverHosts, or disabled. Note that disabling admission control is not recommended and can lead to service issues.
ha_admission_control_resource_percentage_auto_compute bool
When ha_admission_control_policy is resourcePercentage, automatically determine available resource percentages by subtracting the average number of host resources represented by the ha_admission_control_host_failure_tolerance setting from the total amount of resources in the cluster. Disable to supply user-defined values.
ha_admission_control_resource_percentage_cpu int
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of CPU resources in the cluster to reserve for failover.
ha_admission_control_resource_percentage_memory int
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of memory resources in the cluster to reserve for failover.
ha_admission_control_slot_policy_explicit_cpu int
When ha_admission_control_policy is slotPolicy, this controls the user-defined CPU slot size, in MHz.
ha_admission_control_slot_policy_explicit_memory int
When ha_admission_control_policy is slotPolicy, this controls the user-defined memory slot size, in MB.
ha_admission_control_slot_policy_use_explicit_size bool
When ha_admission_control_policy is slotPolicy, this setting controls whether or not you wish to supply explicit values to CPU and memory slot sizes. The default is to gather a automatic average based on all powered-on virtual machines currently in the cluster.
ha_advanced_options Mapping[str, str]
Advanced configuration options for vSphere HA.
ha_datastore_apd_recovery_action str
When ha_vm_component_protection is enabled, controls the action to take on virtual machines if an APD status on an affected datastore clears in the middle of an APD event. Can be one of none or reset.
ha_datastore_apd_response str
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected loss to all paths to a relevant datastore. Can be one of disabled, warning, restartConservative, or restartAggressive.
ha_datastore_apd_response_delay int
When ha_vm_component_protection is enabled, controls the delay in seconds to wait after an APD timeout event to execute the response action defined in ha_datastore_apd_response.
ha_datastore_pdl_response str
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected a permanent device loss to a relevant datastore. Can be one of disabled, warning, or restartAggressive.
ha_enabled bool
Enable vSphere HA for this cluster.
ha_heartbeat_datastore_ids Sequence[str]
The list of managed object IDs for preferred datastores to use for HA heartbeating. This setting is only useful when ha_heartbeat_datastore_policy is set to either userSelectedDs or allFeasibleDsWithUserPreference.
ha_heartbeat_datastore_policy str
The selection policy for HA heartbeat datastores. Can be one of allFeasibleDs, userSelectedDs, or allFeasibleDsWithUserPreference.
ha_host_isolation_response str
The action to take on virtual machines when a host has detected that it has been isolated from the rest of the cluster. Can be one of none, powerOff, or shutdown.
ha_host_monitoring str
Global setting that controls whether vSphere HA remediates VMs on host failure. Can be one of enabled or disabled.
ha_vm_component_protection str
Controls vSphere VM component protection for virtual machines in this cluster. This allows vSphere HA to react to failures between hosts and specific virtual machine components, such as datastores. Can be one of enabled or disabled.
ha_vm_dependency_restart_condition str
The condition used to determine whether or not VMs in a certain restart priority class are online, allowing HA to move on to restarting VMs on the next priority. Can be one of none, poweredOn, guestHbStatusGreen, or appHbStatusGreen.
ha_vm_failure_interval int
If a heartbeat from a virtual machine is not received within this configured interval, the virtual machine is marked as failed. The value is in seconds.
ha_vm_maximum_failure_window int
The length of the reset window in which ha_vm_maximum_resets can operate. When this window expires, no more resets are attempted regardless of the setting configured in ha_vm_maximum_resets. -1 means no window, meaning an unlimited reset time is allotted.
ha_vm_maximum_resets int
The maximum number of resets that HA will perform to a virtual machine when responding to a failure event.
ha_vm_minimum_uptime int
The time, in seconds, that HA waits after powering on a virtual machine before monitoring for heartbeats.
ha_vm_monitoring str
The type of virtual machine monitoring to use when HA is enabled in the cluster. Can be one of vmMonitoringDisabled, vmMonitoringOnly, or vmAndAppMonitoring.
ha_vm_restart_additional_delay int
Additional delay in seconds after ready condition is met. A VM is considered ready at this point.
ha_vm_restart_priority str
The default restart priority for affected VMs when vSphere detects a host failure. Can be one of lowest, low, medium, high, or highest.
ha_vm_restart_timeout int
The maximum time, in seconds, that vSphere HA will wait for virtual machines in one priority to be ready before proceeding with the next priority.
host_cluster_exit_timeout int
The timeout for each host maintenance mode operation when removing hosts from a cluster.
host_image ComputeClusterHostImageArgs
Details about the host image which should be applied to the cluster.
host_managed bool
Must be set if cluster enrollment is managed from host resource.
host_system_ids Sequence[str]
The managed object IDs of the hosts to put in the cluster.
name str
The name of the cluster.
proactive_ha_automation_level str
The DRS behavior for proactive HA recommendations. Can be one of Automated or Manual.
proactive_ha_enabled bool
Enables proactive HA, allowing for vSphere to get HA data from external providers and use DRS to perform remediation.
proactive_ha_moderate_remediation str
The configured remediation for moderately degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to MaintenanceMode when proactive_ha_severe_remediation is set to QuarantineMode.
proactive_ha_provider_ids Sequence[str]
The list of IDs for health update providers configured for this cluster.
proactive_ha_severe_remediation str
The configured remediation for severely degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to QuarantineMode when proactive_ha_moderate_remediation is set to MaintenanceMode.
tags Sequence[str]
The IDs of any tags to attach to this resource.
vsan_compression_enabled bool
Whether the vSAN compression service is enabled for the cluster.
vsan_dedup_enabled bool
Whether the vSAN deduplication service is enabled for the cluster.
vsan_disk_groups Sequence[ComputeClusterVsanDiskGroupArgs]
A list of disk UUIDs to add to the vSAN cluster.
vsan_dit_encryption_enabled bool
Whether the vSAN data-in-transit encryption is enabled for the cluster.
vsan_dit_rekey_interval int
When vsan_dit_encryption_enabled is enabled, sets the rekey interval of data-in-transit encryption (in minutes).
vsan_enabled bool
Whether the vSAN service is enabled for the cluster.
vsan_esa_enabled bool
Whether the vSAN ESA service is enabled for the cluster.
vsan_fault_domains Sequence[ComputeClusterVsanFaultDomainArgs]
The configuration for vSAN fault domains.
vsan_network_diagnostic_mode_enabled bool
Whether the vSAN network diagnostic mode is enabled for the cluster.
vsan_performance_enabled bool
Whether the vSAN performance service is enabled for the cluster.
vsan_remote_datastore_ids Sequence[str]
The managed object IDs of the vSAN datastore to be mounted on the cluster.
vsan_stretched_cluster ComputeClusterVsanStretchedClusterArgs
The configuration for stretched cluster.
vsan_unmap_enabled bool
Whether the vSAN unmap service is enabled for the cluster.
vsan_verbose_mode_enabled bool
Whether the vSAN verbose mode is enabled for the cluster.
datacenterId
This property is required.
Changes to this property will trigger replacement.
String
The managed object ID of the datacenter to create the cluster in. Forces a new resource if changed.
customAttributes Map<String>

A map of custom attribute ids to attribute value strings to set for the datastore cluster.

NOTE: Custom attributes are unsupported on direct ESXi connections and require vCenter Server.

dpmAutomationLevel String
The automation level for host power operations in this cluster. Can be one of manual or automated.
dpmEnabled Boolean
Enable DPM support for DRS. This allows you to dynamically control the power of hosts depending on the needs of virtual machines in the cluster. Requires that DRS be enabled.
dpmThreshold Number
A value between 1 and 5 indicating the threshold of load within the cluster that influences host power operations. This affects both power on and power off operations - a lower setting will tolerate more of a surplus/deficit than a higher setting.
drsAdvancedOptions Map<String>
Advanced configuration options for DRS and DPM.
drsAutomationLevel String
The default automation level for all virtual machines in this cluster. Can be one of manual, partiallyAutomated, or fullyAutomated.
drsEnablePredictiveDrs Boolean
When true, enables DRS to use data from vRealize Operations Manager to make proactive DRS recommendations.
drsEnableVmOverrides Boolean
When true, allows individual VM overrides within this cluster to be set.
drsEnabled Boolean
Enable DRS for this cluster.
drsMigrationThreshold Number
A value between 1 and 5 indicating the threshold of imbalance tolerated between hosts. A lower setting will tolerate more imbalance while a higher setting will tolerate less.
drsScaleDescendantsShares String
Enable scalable shares for all descendants of this cluster.
folder String
The relative path to a folder to put this cluster in. This is a path relative to the datacenter you are deploying the cluster to. Example: for the dc1 datacenter, and a provided folder of foo/bar, The provider will place a cluster named compute-cluster-test in a host folder located at /dc1/host/foo/bar, with the final inventory path being /dc1/host/foo/bar/datastore-cluster-test.
forceEvacuateOnDestroy Boolean
Force removal of all hosts in the cluster during destroy and make them standalone hosts. Use of this flag mainly exists for testing and is not recommended in normal use.
haAdmissionControlFailoverHostSystemIds List<String>
When ha_admission_control_policy is failoverHosts, this defines the managed object IDs of hosts to use as dedicated failover hosts. These hosts are kept as available as possible - admission control will block access to the host, and DRS will ignore the host when making recommendations.
haAdmissionControlHostFailureTolerance Number
The maximum number of failed hosts that admission control tolerates when making decisions on whether to permit virtual machine operations. The maximum is one less than the number of hosts in the cluster.
haAdmissionControlPerformanceTolerance Number
The percentage of resource reduction that a cluster of VMs can tolerate in case of a failover. A value of 0 produces warnings only, whereas a value of 100 disables the setting.
haAdmissionControlPolicy String
The type of admission control policy to use with vSphere HA, which controls whether or not specific VM operations are permitted in the cluster in order to protect the reliability of the cluster. Can be one of resourcePercentage, slotPolicy, failoverHosts, or disabled. Note that disabling admission control is not recommended and can lead to service issues.
haAdmissionControlResourcePercentageAutoCompute Boolean
When ha_admission_control_policy is resourcePercentage, automatically determine available resource percentages by subtracting the average number of host resources represented by the ha_admission_control_host_failure_tolerance setting from the total amount of resources in the cluster. Disable to supply user-defined values.
haAdmissionControlResourcePercentageCpu Number
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of CPU resources in the cluster to reserve for failover.
haAdmissionControlResourcePercentageMemory Number
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of memory resources in the cluster to reserve for failover.
haAdmissionControlSlotPolicyExplicitCpu Number
When ha_admission_control_policy is slotPolicy, this controls the user-defined CPU slot size, in MHz.
haAdmissionControlSlotPolicyExplicitMemory Number
When ha_admission_control_policy is slotPolicy, this controls the user-defined memory slot size, in MB.
haAdmissionControlSlotPolicyUseExplicitSize Boolean
When ha_admission_control_policy is slotPolicy, this setting controls whether or not you wish to supply explicit values to CPU and memory slot sizes. The default is to gather a automatic average based on all powered-on virtual machines currently in the cluster.
haAdvancedOptions Map<String>
Advanced configuration options for vSphere HA.
haDatastoreApdRecoveryAction String
When ha_vm_component_protection is enabled, controls the action to take on virtual machines if an APD status on an affected datastore clears in the middle of an APD event. Can be one of none or reset.
haDatastoreApdResponse String
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected loss to all paths to a relevant datastore. Can be one of disabled, warning, restartConservative, or restartAggressive.
haDatastoreApdResponseDelay Number
When ha_vm_component_protection is enabled, controls the delay in seconds to wait after an APD timeout event to execute the response action defined in ha_datastore_apd_response.
haDatastorePdlResponse String
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected a permanent device loss to a relevant datastore. Can be one of disabled, warning, or restartAggressive.
haEnabled Boolean
Enable vSphere HA for this cluster.
haHeartbeatDatastoreIds List<String>
The list of managed object IDs for preferred datastores to use for HA heartbeating. This setting is only useful when ha_heartbeat_datastore_policy is set to either userSelectedDs or allFeasibleDsWithUserPreference.
haHeartbeatDatastorePolicy String
The selection policy for HA heartbeat datastores. Can be one of allFeasibleDs, userSelectedDs, or allFeasibleDsWithUserPreference.
haHostIsolationResponse String
The action to take on virtual machines when a host has detected that it has been isolated from the rest of the cluster. Can be one of none, powerOff, or shutdown.
haHostMonitoring String
Global setting that controls whether vSphere HA remediates VMs on host failure. Can be one of enabled or disabled.
haVmComponentProtection String
Controls vSphere VM component protection for virtual machines in this cluster. This allows vSphere HA to react to failures between hosts and specific virtual machine components, such as datastores. Can be one of enabled or disabled.
haVmDependencyRestartCondition String
The condition used to determine whether or not VMs in a certain restart priority class are online, allowing HA to move on to restarting VMs on the next priority. Can be one of none, poweredOn, guestHbStatusGreen, or appHbStatusGreen.
haVmFailureInterval Number
If a heartbeat from a virtual machine is not received within this configured interval, the virtual machine is marked as failed. The value is in seconds.
haVmMaximumFailureWindow Number
The length of the reset window in which ha_vm_maximum_resets can operate. When this window expires, no more resets are attempted regardless of the setting configured in ha_vm_maximum_resets. -1 means no window, meaning an unlimited reset time is allotted.
haVmMaximumResets Number
The maximum number of resets that HA will perform to a virtual machine when responding to a failure event.
haVmMinimumUptime Number
The time, in seconds, that HA waits after powering on a virtual machine before monitoring for heartbeats.
haVmMonitoring String
The type of virtual machine monitoring to use when HA is enabled in the cluster. Can be one of vmMonitoringDisabled, vmMonitoringOnly, or vmAndAppMonitoring.
haVmRestartAdditionalDelay Number
Additional delay in seconds after ready condition is met. A VM is considered ready at this point.
haVmRestartPriority String
The default restart priority for affected VMs when vSphere detects a host failure. Can be one of lowest, low, medium, high, or highest.
haVmRestartTimeout Number
The maximum time, in seconds, that vSphere HA will wait for virtual machines in one priority to be ready before proceeding with the next priority.
hostClusterExitTimeout Number
The timeout for each host maintenance mode operation when removing hosts from a cluster.
hostImage Property Map
Details about the host image which should be applied to the cluster.
hostManaged Boolean
Must be set if cluster enrollment is managed from host resource.
hostSystemIds List<String>
The managed object IDs of the hosts to put in the cluster.
name String
The name of the cluster.
proactiveHaAutomationLevel String
The DRS behavior for proactive HA recommendations. Can be one of Automated or Manual.
proactiveHaEnabled Boolean
Enables proactive HA, allowing for vSphere to get HA data from external providers and use DRS to perform remediation.
proactiveHaModerateRemediation String
The configured remediation for moderately degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to MaintenanceMode when proactive_ha_severe_remediation is set to QuarantineMode.
proactiveHaProviderIds List<String>
The list of IDs for health update providers configured for this cluster.
proactiveHaSevereRemediation String
The configured remediation for severely degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to QuarantineMode when proactive_ha_moderate_remediation is set to MaintenanceMode.
tags List<String>
The IDs of any tags to attach to this resource.
vsanCompressionEnabled Boolean
Whether the vSAN compression service is enabled for the cluster.
vsanDedupEnabled Boolean
Whether the vSAN deduplication service is enabled for the cluster.
vsanDiskGroups List<Property Map>
A list of disk UUIDs to add to the vSAN cluster.
vsanDitEncryptionEnabled Boolean
Whether the vSAN data-in-transit encryption is enabled for the cluster.
vsanDitRekeyInterval Number
When vsan_dit_encryption_enabled is enabled, sets the rekey interval of data-in-transit encryption (in minutes).
vsanEnabled Boolean
Whether the vSAN service is enabled for the cluster.
vsanEsaEnabled Boolean
Whether the vSAN ESA service is enabled for the cluster.
vsanFaultDomains List<Property Map>
The configuration for vSAN fault domains.
vsanNetworkDiagnosticModeEnabled Boolean
Whether the vSAN network diagnostic mode is enabled for the cluster.
vsanPerformanceEnabled Boolean
Whether the vSAN performance service is enabled for the cluster.
vsanRemoteDatastoreIds List<String>
The managed object IDs of the vSAN datastore to be mounted on the cluster.
vsanStretchedCluster Property Map
The configuration for stretched cluster.
vsanUnmapEnabled Boolean
Whether the vSAN unmap service is enabled for the cluster.
vsanVerboseModeEnabled Boolean
Whether the vSAN verbose mode is enabled for the cluster.

Outputs

All input properties are implicitly available as output properties. Additionally, the ComputeCluster resource produces the following output properties:

Id string
The provider-assigned unique ID for this managed resource.
ResourcePoolId string
The managed object ID of the primary resource pool for this cluster. This can be passed directly to the resource_pool_id attribute of the vsphere.VirtualMachine resource.
Id string
The provider-assigned unique ID for this managed resource.
ResourcePoolId string
The managed object ID of the primary resource pool for this cluster. This can be passed directly to the resource_pool_id attribute of the vsphere.VirtualMachine resource.
id String
The provider-assigned unique ID for this managed resource.
resourcePoolId String
The managed object ID of the primary resource pool for this cluster. This can be passed directly to the resource_pool_id attribute of the vsphere.VirtualMachine resource.
id string
The provider-assigned unique ID for this managed resource.
resourcePoolId string
The managed object ID of the primary resource pool for this cluster. This can be passed directly to the resource_pool_id attribute of the vsphere.VirtualMachine resource.
id str
The provider-assigned unique ID for this managed resource.
resource_pool_id str
The managed object ID of the primary resource pool for this cluster. This can be passed directly to the resource_pool_id attribute of the vsphere.VirtualMachine resource.
id String
The provider-assigned unique ID for this managed resource.
resourcePoolId String
The managed object ID of the primary resource pool for this cluster. This can be passed directly to the resource_pool_id attribute of the vsphere.VirtualMachine resource.

Look up Existing ComputeCluster Resource

Get an existing ComputeCluster resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: ComputeClusterState, opts?: CustomResourceOptions): ComputeCluster
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        custom_attributes: Optional[Mapping[str, str]] = None,
        datacenter_id: Optional[str] = None,
        dpm_automation_level: Optional[str] = None,
        dpm_enabled: Optional[bool] = None,
        dpm_threshold: Optional[int] = None,
        drs_advanced_options: Optional[Mapping[str, str]] = None,
        drs_automation_level: Optional[str] = None,
        drs_enable_predictive_drs: Optional[bool] = None,
        drs_enable_vm_overrides: Optional[bool] = None,
        drs_enabled: Optional[bool] = None,
        drs_migration_threshold: Optional[int] = None,
        drs_scale_descendants_shares: Optional[str] = None,
        folder: Optional[str] = None,
        force_evacuate_on_destroy: Optional[bool] = None,
        ha_admission_control_failover_host_system_ids: Optional[Sequence[str]] = None,
        ha_admission_control_host_failure_tolerance: Optional[int] = None,
        ha_admission_control_performance_tolerance: Optional[int] = None,
        ha_admission_control_policy: Optional[str] = None,
        ha_admission_control_resource_percentage_auto_compute: Optional[bool] = None,
        ha_admission_control_resource_percentage_cpu: Optional[int] = None,
        ha_admission_control_resource_percentage_memory: Optional[int] = None,
        ha_admission_control_slot_policy_explicit_cpu: Optional[int] = None,
        ha_admission_control_slot_policy_explicit_memory: Optional[int] = None,
        ha_admission_control_slot_policy_use_explicit_size: Optional[bool] = None,
        ha_advanced_options: Optional[Mapping[str, str]] = None,
        ha_datastore_apd_recovery_action: Optional[str] = None,
        ha_datastore_apd_response: Optional[str] = None,
        ha_datastore_apd_response_delay: Optional[int] = None,
        ha_datastore_pdl_response: Optional[str] = None,
        ha_enabled: Optional[bool] = None,
        ha_heartbeat_datastore_ids: Optional[Sequence[str]] = None,
        ha_heartbeat_datastore_policy: Optional[str] = None,
        ha_host_isolation_response: Optional[str] = None,
        ha_host_monitoring: Optional[str] = None,
        ha_vm_component_protection: Optional[str] = None,
        ha_vm_dependency_restart_condition: Optional[str] = None,
        ha_vm_failure_interval: Optional[int] = None,
        ha_vm_maximum_failure_window: Optional[int] = None,
        ha_vm_maximum_resets: Optional[int] = None,
        ha_vm_minimum_uptime: Optional[int] = None,
        ha_vm_monitoring: Optional[str] = None,
        ha_vm_restart_additional_delay: Optional[int] = None,
        ha_vm_restart_priority: Optional[str] = None,
        ha_vm_restart_timeout: Optional[int] = None,
        host_cluster_exit_timeout: Optional[int] = None,
        host_image: Optional[ComputeClusterHostImageArgs] = None,
        host_managed: Optional[bool] = None,
        host_system_ids: Optional[Sequence[str]] = None,
        name: Optional[str] = None,
        proactive_ha_automation_level: Optional[str] = None,
        proactive_ha_enabled: Optional[bool] = None,
        proactive_ha_moderate_remediation: Optional[str] = None,
        proactive_ha_provider_ids: Optional[Sequence[str]] = None,
        proactive_ha_severe_remediation: Optional[str] = None,
        resource_pool_id: Optional[str] = None,
        tags: Optional[Sequence[str]] = None,
        vsan_compression_enabled: Optional[bool] = None,
        vsan_dedup_enabled: Optional[bool] = None,
        vsan_disk_groups: Optional[Sequence[ComputeClusterVsanDiskGroupArgs]] = None,
        vsan_dit_encryption_enabled: Optional[bool] = None,
        vsan_dit_rekey_interval: Optional[int] = None,
        vsan_enabled: Optional[bool] = None,
        vsan_esa_enabled: Optional[bool] = None,
        vsan_fault_domains: Optional[Sequence[ComputeClusterVsanFaultDomainArgs]] = None,
        vsan_network_diagnostic_mode_enabled: Optional[bool] = None,
        vsan_performance_enabled: Optional[bool] = None,
        vsan_remote_datastore_ids: Optional[Sequence[str]] = None,
        vsan_stretched_cluster: Optional[ComputeClusterVsanStretchedClusterArgs] = None,
        vsan_unmap_enabled: Optional[bool] = None,
        vsan_verbose_mode_enabled: Optional[bool] = None) -> ComputeCluster
func GetComputeCluster(ctx *Context, name string, id IDInput, state *ComputeClusterState, opts ...ResourceOption) (*ComputeCluster, error)
public static ComputeCluster Get(string name, Input<string> id, ComputeClusterState? state, CustomResourceOptions? opts = null)
public static ComputeCluster get(String name, Output<String> id, ComputeClusterState state, CustomResourceOptions options)
resources:  _:    type: vsphere:ComputeCluster    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
CustomAttributes Dictionary<string, string>

A map of custom attribute ids to attribute value strings to set for the datastore cluster.

NOTE: Custom attributes are unsupported on direct ESXi connections and require vCenter Server.

DatacenterId Changes to this property will trigger replacement. string
The managed object ID of the datacenter to create the cluster in. Forces a new resource if changed.
DpmAutomationLevel string
The automation level for host power operations in this cluster. Can be one of manual or automated.
DpmEnabled bool
Enable DPM support for DRS. This allows you to dynamically control the power of hosts depending on the needs of virtual machines in the cluster. Requires that DRS be enabled.
DpmThreshold int
A value between 1 and 5 indicating the threshold of load within the cluster that influences host power operations. This affects both power on and power off operations - a lower setting will tolerate more of a surplus/deficit than a higher setting.
DrsAdvancedOptions Dictionary<string, string>
Advanced configuration options for DRS and DPM.
DrsAutomationLevel string
The default automation level for all virtual machines in this cluster. Can be one of manual, partiallyAutomated, or fullyAutomated.
DrsEnablePredictiveDrs bool
When true, enables DRS to use data from vRealize Operations Manager to make proactive DRS recommendations.
DrsEnableVmOverrides bool
When true, allows individual VM overrides within this cluster to be set.
DrsEnabled bool
Enable DRS for this cluster.
DrsMigrationThreshold int
A value between 1 and 5 indicating the threshold of imbalance tolerated between hosts. A lower setting will tolerate more imbalance while a higher setting will tolerate less.
DrsScaleDescendantsShares string
Enable scalable shares for all descendants of this cluster.
Folder string
The relative path to a folder to put this cluster in. This is a path relative to the datacenter you are deploying the cluster to. Example: for the dc1 datacenter, and a provided folder of foo/bar, The provider will place a cluster named compute-cluster-test in a host folder located at /dc1/host/foo/bar, with the final inventory path being /dc1/host/foo/bar/datastore-cluster-test.
ForceEvacuateOnDestroy bool
Force removal of all hosts in the cluster during destroy and make them standalone hosts. Use of this flag mainly exists for testing and is not recommended in normal use.
HaAdmissionControlFailoverHostSystemIds List<string>
When ha_admission_control_policy is failoverHosts, this defines the managed object IDs of hosts to use as dedicated failover hosts. These hosts are kept as available as possible - admission control will block access to the host, and DRS will ignore the host when making recommendations.
HaAdmissionControlHostFailureTolerance int
The maximum number of failed hosts that admission control tolerates when making decisions on whether to permit virtual machine operations. The maximum is one less than the number of hosts in the cluster.
HaAdmissionControlPerformanceTolerance int
The percentage of resource reduction that a cluster of VMs can tolerate in case of a failover. A value of 0 produces warnings only, whereas a value of 100 disables the setting.
HaAdmissionControlPolicy string
The type of admission control policy to use with vSphere HA, which controls whether or not specific VM operations are permitted in the cluster in order to protect the reliability of the cluster. Can be one of resourcePercentage, slotPolicy, failoverHosts, or disabled. Note that disabling admission control is not recommended and can lead to service issues.
HaAdmissionControlResourcePercentageAutoCompute bool
When ha_admission_control_policy is resourcePercentage, automatically determine available resource percentages by subtracting the average number of host resources represented by the ha_admission_control_host_failure_tolerance setting from the total amount of resources in the cluster. Disable to supply user-defined values.
HaAdmissionControlResourcePercentageCpu int
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of CPU resources in the cluster to reserve for failover.
HaAdmissionControlResourcePercentageMemory int
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of memory resources in the cluster to reserve for failover.
HaAdmissionControlSlotPolicyExplicitCpu int
When ha_admission_control_policy is slotPolicy, this controls the user-defined CPU slot size, in MHz.
HaAdmissionControlSlotPolicyExplicitMemory int
When ha_admission_control_policy is slotPolicy, this controls the user-defined memory slot size, in MB.
HaAdmissionControlSlotPolicyUseExplicitSize bool
When ha_admission_control_policy is slotPolicy, this setting controls whether or not you wish to supply explicit values to CPU and memory slot sizes. The default is to gather a automatic average based on all powered-on virtual machines currently in the cluster.
HaAdvancedOptions Dictionary<string, string>
Advanced configuration options for vSphere HA.
HaDatastoreApdRecoveryAction string
When ha_vm_component_protection is enabled, controls the action to take on virtual machines if an APD status on an affected datastore clears in the middle of an APD event. Can be one of none or reset.
HaDatastoreApdResponse string
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected loss to all paths to a relevant datastore. Can be one of disabled, warning, restartConservative, or restartAggressive.
HaDatastoreApdResponseDelay int
When ha_vm_component_protection is enabled, controls the delay in seconds to wait after an APD timeout event to execute the response action defined in ha_datastore_apd_response.
HaDatastorePdlResponse string
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected a permanent device loss to a relevant datastore. Can be one of disabled, warning, or restartAggressive.
HaEnabled bool
Enable vSphere HA for this cluster.
HaHeartbeatDatastoreIds List<string>
The list of managed object IDs for preferred datastores to use for HA heartbeating. This setting is only useful when ha_heartbeat_datastore_policy is set to either userSelectedDs or allFeasibleDsWithUserPreference.
HaHeartbeatDatastorePolicy string
The selection policy for HA heartbeat datastores. Can be one of allFeasibleDs, userSelectedDs, or allFeasibleDsWithUserPreference.
HaHostIsolationResponse string
The action to take on virtual machines when a host has detected that it has been isolated from the rest of the cluster. Can be one of none, powerOff, or shutdown.
HaHostMonitoring string
Global setting that controls whether vSphere HA remediates VMs on host failure. Can be one of enabled or disabled.
HaVmComponentProtection string
Controls vSphere VM component protection for virtual machines in this cluster. This allows vSphere HA to react to failures between hosts and specific virtual machine components, such as datastores. Can be one of enabled or disabled.
HaVmDependencyRestartCondition string
The condition used to determine whether or not VMs in a certain restart priority class are online, allowing HA to move on to restarting VMs on the next priority. Can be one of none, poweredOn, guestHbStatusGreen, or appHbStatusGreen.
HaVmFailureInterval int
If a heartbeat from a virtual machine is not received within this configured interval, the virtual machine is marked as failed. The value is in seconds.
HaVmMaximumFailureWindow int
The length of the reset window in which ha_vm_maximum_resets can operate. When this window expires, no more resets are attempted regardless of the setting configured in ha_vm_maximum_resets. -1 means no window, meaning an unlimited reset time is allotted.
HaVmMaximumResets int
The maximum number of resets that HA will perform to a virtual machine when responding to a failure event.
HaVmMinimumUptime int
The time, in seconds, that HA waits after powering on a virtual machine before monitoring for heartbeats.
HaVmMonitoring string
The type of virtual machine monitoring to use when HA is enabled in the cluster. Can be one of vmMonitoringDisabled, vmMonitoringOnly, or vmAndAppMonitoring.
HaVmRestartAdditionalDelay int
Additional delay in seconds after ready condition is met. A VM is considered ready at this point.
HaVmRestartPriority string
The default restart priority for affected VMs when vSphere detects a host failure. Can be one of lowest, low, medium, high, or highest.
HaVmRestartTimeout int
The maximum time, in seconds, that vSphere HA will wait for virtual machines in one priority to be ready before proceeding with the next priority.
HostClusterExitTimeout int
The timeout for each host maintenance mode operation when removing hosts from a cluster.
HostImage Pulumi.VSphere.Inputs.ComputeClusterHostImage
Details about the host image which should be applied to the cluster.
HostManaged bool
Must be set if cluster enrollment is managed from host resource.
HostSystemIds List<string>
The managed object IDs of the hosts to put in the cluster.
Name string
The name of the cluster.
ProactiveHaAutomationLevel string
The DRS behavior for proactive HA recommendations. Can be one of Automated or Manual.
ProactiveHaEnabled bool
Enables proactive HA, allowing for vSphere to get HA data from external providers and use DRS to perform remediation.
ProactiveHaModerateRemediation string
The configured remediation for moderately degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to MaintenanceMode when proactive_ha_severe_remediation is set to QuarantineMode.
ProactiveHaProviderIds List<string>
The list of IDs for health update providers configured for this cluster.
ProactiveHaSevereRemediation string
The configured remediation for severely degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to QuarantineMode when proactive_ha_moderate_remediation is set to MaintenanceMode.
ResourcePoolId string
The managed object ID of the primary resource pool for this cluster. This can be passed directly to the resource_pool_id attribute of the vsphere.VirtualMachine resource.
Tags List<string>
The IDs of any tags to attach to this resource.
VsanCompressionEnabled bool
Whether the vSAN compression service is enabled for the cluster.
VsanDedupEnabled bool
Whether the vSAN deduplication service is enabled for the cluster.
VsanDiskGroups List<Pulumi.VSphere.Inputs.ComputeClusterVsanDiskGroup>
A list of disk UUIDs to add to the vSAN cluster.
VsanDitEncryptionEnabled bool
Whether the vSAN data-in-transit encryption is enabled for the cluster.
VsanDitRekeyInterval int
When vsan_dit_encryption_enabled is enabled, sets the rekey interval of data-in-transit encryption (in minutes).
VsanEnabled bool
Whether the vSAN service is enabled for the cluster.
VsanEsaEnabled bool
Whether the vSAN ESA service is enabled for the cluster.
VsanFaultDomains List<Pulumi.VSphere.Inputs.ComputeClusterVsanFaultDomain>
The configuration for vSAN fault domains.
VsanNetworkDiagnosticModeEnabled bool
Whether the vSAN network diagnostic mode is enabled for the cluster.
VsanPerformanceEnabled bool
Whether the vSAN performance service is enabled for the cluster.
VsanRemoteDatastoreIds List<string>
The managed object IDs of the vSAN datastore to be mounted on the cluster.
VsanStretchedCluster Pulumi.VSphere.Inputs.ComputeClusterVsanStretchedCluster
The configuration for stretched cluster.
VsanUnmapEnabled bool
Whether the vSAN unmap service is enabled for the cluster.
VsanVerboseModeEnabled bool
Whether the vSAN verbose mode is enabled for the cluster.
CustomAttributes map[string]string

A map of custom attribute ids to attribute value strings to set for the datastore cluster.

NOTE: Custom attributes are unsupported on direct ESXi connections and require vCenter Server.

DatacenterId Changes to this property will trigger replacement. string
The managed object ID of the datacenter to create the cluster in. Forces a new resource if changed.
DpmAutomationLevel string
The automation level for host power operations in this cluster. Can be one of manual or automated.
DpmEnabled bool
Enable DPM support for DRS. This allows you to dynamically control the power of hosts depending on the needs of virtual machines in the cluster. Requires that DRS be enabled.
DpmThreshold int
A value between 1 and 5 indicating the threshold of load within the cluster that influences host power operations. This affects both power on and power off operations - a lower setting will tolerate more of a surplus/deficit than a higher setting.
DrsAdvancedOptions map[string]string
Advanced configuration options for DRS and DPM.
DrsAutomationLevel string
The default automation level for all virtual machines in this cluster. Can be one of manual, partiallyAutomated, or fullyAutomated.
DrsEnablePredictiveDrs bool
When true, enables DRS to use data from vRealize Operations Manager to make proactive DRS recommendations.
DrsEnableVmOverrides bool
When true, allows individual VM overrides within this cluster to be set.
DrsEnabled bool
Enable DRS for this cluster.
DrsMigrationThreshold int
A value between 1 and 5 indicating the threshold of imbalance tolerated between hosts. A lower setting will tolerate more imbalance while a higher setting will tolerate less.
DrsScaleDescendantsShares string
Enable scalable shares for all descendants of this cluster.
Folder string
The relative path to a folder to put this cluster in. This is a path relative to the datacenter you are deploying the cluster to. Example: for the dc1 datacenter, and a provided folder of foo/bar, The provider will place a cluster named compute-cluster-test in a host folder located at /dc1/host/foo/bar, with the final inventory path being /dc1/host/foo/bar/datastore-cluster-test.
ForceEvacuateOnDestroy bool
Force removal of all hosts in the cluster during destroy and make them standalone hosts. Use of this flag mainly exists for testing and is not recommended in normal use.
HaAdmissionControlFailoverHostSystemIds []string
When ha_admission_control_policy is failoverHosts, this defines the managed object IDs of hosts to use as dedicated failover hosts. These hosts are kept as available as possible - admission control will block access to the host, and DRS will ignore the host when making recommendations.
HaAdmissionControlHostFailureTolerance int
The maximum number of failed hosts that admission control tolerates when making decisions on whether to permit virtual machine operations. The maximum is one less than the number of hosts in the cluster.
HaAdmissionControlPerformanceTolerance int
The percentage of resource reduction that a cluster of VMs can tolerate in case of a failover. A value of 0 produces warnings only, whereas a value of 100 disables the setting.
HaAdmissionControlPolicy string
The type of admission control policy to use with vSphere HA, which controls whether or not specific VM operations are permitted in the cluster in order to protect the reliability of the cluster. Can be one of resourcePercentage, slotPolicy, failoverHosts, or disabled. Note that disabling admission control is not recommended and can lead to service issues.
HaAdmissionControlResourcePercentageAutoCompute bool
When ha_admission_control_policy is resourcePercentage, automatically determine available resource percentages by subtracting the average number of host resources represented by the ha_admission_control_host_failure_tolerance setting from the total amount of resources in the cluster. Disable to supply user-defined values.
HaAdmissionControlResourcePercentageCpu int
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of CPU resources in the cluster to reserve for failover.
HaAdmissionControlResourcePercentageMemory int
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of memory resources in the cluster to reserve for failover.
HaAdmissionControlSlotPolicyExplicitCpu int
When ha_admission_control_policy is slotPolicy, this controls the user-defined CPU slot size, in MHz.
HaAdmissionControlSlotPolicyExplicitMemory int
When ha_admission_control_policy is slotPolicy, this controls the user-defined memory slot size, in MB.
HaAdmissionControlSlotPolicyUseExplicitSize bool
When ha_admission_control_policy is slotPolicy, this setting controls whether or not you wish to supply explicit values to CPU and memory slot sizes. The default is to gather a automatic average based on all powered-on virtual machines currently in the cluster.
HaAdvancedOptions map[string]string
Advanced configuration options for vSphere HA.
HaDatastoreApdRecoveryAction string
When ha_vm_component_protection is enabled, controls the action to take on virtual machines if an APD status on an affected datastore clears in the middle of an APD event. Can be one of none or reset.
HaDatastoreApdResponse string
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected loss to all paths to a relevant datastore. Can be one of disabled, warning, restartConservative, or restartAggressive.
HaDatastoreApdResponseDelay int
When ha_vm_component_protection is enabled, controls the delay in seconds to wait after an APD timeout event to execute the response action defined in ha_datastore_apd_response.
HaDatastorePdlResponse string
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected a permanent device loss to a relevant datastore. Can be one of disabled, warning, or restartAggressive.
HaEnabled bool
Enable vSphere HA for this cluster.
HaHeartbeatDatastoreIds []string
The list of managed object IDs for preferred datastores to use for HA heartbeating. This setting is only useful when ha_heartbeat_datastore_policy is set to either userSelectedDs or allFeasibleDsWithUserPreference.
HaHeartbeatDatastorePolicy string
The selection policy for HA heartbeat datastores. Can be one of allFeasibleDs, userSelectedDs, or allFeasibleDsWithUserPreference.
HaHostIsolationResponse string
The action to take on virtual machines when a host has detected that it has been isolated from the rest of the cluster. Can be one of none, powerOff, or shutdown.
HaHostMonitoring string
Global setting that controls whether vSphere HA remediates VMs on host failure. Can be one of enabled or disabled.
HaVmComponentProtection string
Controls vSphere VM component protection for virtual machines in this cluster. This allows vSphere HA to react to failures between hosts and specific virtual machine components, such as datastores. Can be one of enabled or disabled.
HaVmDependencyRestartCondition string
The condition used to determine whether or not VMs in a certain restart priority class are online, allowing HA to move on to restarting VMs on the next priority. Can be one of none, poweredOn, guestHbStatusGreen, or appHbStatusGreen.
HaVmFailureInterval int
If a heartbeat from a virtual machine is not received within this configured interval, the virtual machine is marked as failed. The value is in seconds.
HaVmMaximumFailureWindow int
The length of the reset window in which ha_vm_maximum_resets can operate. When this window expires, no more resets are attempted regardless of the setting configured in ha_vm_maximum_resets. -1 means no window, meaning an unlimited reset time is allotted.
HaVmMaximumResets int
The maximum number of resets that HA will perform to a virtual machine when responding to a failure event.
HaVmMinimumUptime int
The time, in seconds, that HA waits after powering on a virtual machine before monitoring for heartbeats.
HaVmMonitoring string
The type of virtual machine monitoring to use when HA is enabled in the cluster. Can be one of vmMonitoringDisabled, vmMonitoringOnly, or vmAndAppMonitoring.
HaVmRestartAdditionalDelay int
Additional delay in seconds after ready condition is met. A VM is considered ready at this point.
HaVmRestartPriority string
The default restart priority for affected VMs when vSphere detects a host failure. Can be one of lowest, low, medium, high, or highest.
HaVmRestartTimeout int
The maximum time, in seconds, that vSphere HA will wait for virtual machines in one priority to be ready before proceeding with the next priority.
HostClusterExitTimeout int
The timeout for each host maintenance mode operation when removing hosts from a cluster.
HostImage ComputeClusterHostImageArgs
Details about the host image which should be applied to the cluster.
HostManaged bool
Must be set if cluster enrollment is managed from host resource.
HostSystemIds []string
The managed object IDs of the hosts to put in the cluster.
Name string
The name of the cluster.
ProactiveHaAutomationLevel string
The DRS behavior for proactive HA recommendations. Can be one of Automated or Manual.
ProactiveHaEnabled bool
Enables proactive HA, allowing for vSphere to get HA data from external providers and use DRS to perform remediation.
ProactiveHaModerateRemediation string
The configured remediation for moderately degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to MaintenanceMode when proactive_ha_severe_remediation is set to QuarantineMode.
ProactiveHaProviderIds []string
The list of IDs for health update providers configured for this cluster.
ProactiveHaSevereRemediation string
The configured remediation for severely degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to QuarantineMode when proactive_ha_moderate_remediation is set to MaintenanceMode.
ResourcePoolId string
The managed object ID of the primary resource pool for this cluster. This can be passed directly to the resource_pool_id attribute of the vsphere.VirtualMachine resource.
Tags []string
The IDs of any tags to attach to this resource.
VsanCompressionEnabled bool
Whether the vSAN compression service is enabled for the cluster.
VsanDedupEnabled bool
Whether the vSAN deduplication service is enabled for the cluster.
VsanDiskGroups []ComputeClusterVsanDiskGroupArgs
A list of disk UUIDs to add to the vSAN cluster.
VsanDitEncryptionEnabled bool
Whether the vSAN data-in-transit encryption is enabled for the cluster.
VsanDitRekeyInterval int
When vsan_dit_encryption_enabled is enabled, sets the rekey interval of data-in-transit encryption (in minutes).
VsanEnabled bool
Whether the vSAN service is enabled for the cluster.
VsanEsaEnabled bool
Whether the vSAN ESA service is enabled for the cluster.
VsanFaultDomains []ComputeClusterVsanFaultDomainArgs
The configuration for vSAN fault domains.
VsanNetworkDiagnosticModeEnabled bool
Whether the vSAN network diagnostic mode is enabled for the cluster.
VsanPerformanceEnabled bool
Whether the vSAN performance service is enabled for the cluster.
VsanRemoteDatastoreIds []string
The managed object IDs of the vSAN datastore to be mounted on the cluster.
VsanStretchedCluster ComputeClusterVsanStretchedClusterArgs
The configuration for stretched cluster.
VsanUnmapEnabled bool
Whether the vSAN unmap service is enabled for the cluster.
VsanVerboseModeEnabled bool
Whether the vSAN verbose mode is enabled for the cluster.
customAttributes Map<String,String>

A map of custom attribute ids to attribute value strings to set for the datastore cluster.

NOTE: Custom attributes are unsupported on direct ESXi connections and require vCenter Server.

datacenterId Changes to this property will trigger replacement. String
The managed object ID of the datacenter to create the cluster in. Forces a new resource if changed.
dpmAutomationLevel String
The automation level for host power operations in this cluster. Can be one of manual or automated.
dpmEnabled Boolean
Enable DPM support for DRS. This allows you to dynamically control the power of hosts depending on the needs of virtual machines in the cluster. Requires that DRS be enabled.
dpmThreshold Integer
A value between 1 and 5 indicating the threshold of load within the cluster that influences host power operations. This affects both power on and power off operations - a lower setting will tolerate more of a surplus/deficit than a higher setting.
drsAdvancedOptions Map<String,String>
Advanced configuration options for DRS and DPM.
drsAutomationLevel String
The default automation level for all virtual machines in this cluster. Can be one of manual, partiallyAutomated, or fullyAutomated.
drsEnablePredictiveDrs Boolean
When true, enables DRS to use data from vRealize Operations Manager to make proactive DRS recommendations.
drsEnableVmOverrides Boolean
When true, allows individual VM overrides within this cluster to be set.
drsEnabled Boolean
Enable DRS for this cluster.
drsMigrationThreshold Integer
A value between 1 and 5 indicating the threshold of imbalance tolerated between hosts. A lower setting will tolerate more imbalance while a higher setting will tolerate less.
drsScaleDescendantsShares String
Enable scalable shares for all descendants of this cluster.
folder String
The relative path to a folder to put this cluster in. This is a path relative to the datacenter you are deploying the cluster to. Example: for the dc1 datacenter, and a provided folder of foo/bar, The provider will place a cluster named compute-cluster-test in a host folder located at /dc1/host/foo/bar, with the final inventory path being /dc1/host/foo/bar/datastore-cluster-test.
forceEvacuateOnDestroy Boolean
Force removal of all hosts in the cluster during destroy and make them standalone hosts. Use of this flag mainly exists for testing and is not recommended in normal use.
haAdmissionControlFailoverHostSystemIds List<String>
When ha_admission_control_policy is failoverHosts, this defines the managed object IDs of hosts to use as dedicated failover hosts. These hosts are kept as available as possible - admission control will block access to the host, and DRS will ignore the host when making recommendations.
haAdmissionControlHostFailureTolerance Integer
The maximum number of failed hosts that admission control tolerates when making decisions on whether to permit virtual machine operations. The maximum is one less than the number of hosts in the cluster.
haAdmissionControlPerformanceTolerance Integer
The percentage of resource reduction that a cluster of VMs can tolerate in case of a failover. A value of 0 produces warnings only, whereas a value of 100 disables the setting.
haAdmissionControlPolicy String
The type of admission control policy to use with vSphere HA, which controls whether or not specific VM operations are permitted in the cluster in order to protect the reliability of the cluster. Can be one of resourcePercentage, slotPolicy, failoverHosts, or disabled. Note that disabling admission control is not recommended and can lead to service issues.
haAdmissionControlResourcePercentageAutoCompute Boolean
When ha_admission_control_policy is resourcePercentage, automatically determine available resource percentages by subtracting the average number of host resources represented by the ha_admission_control_host_failure_tolerance setting from the total amount of resources in the cluster. Disable to supply user-defined values.
haAdmissionControlResourcePercentageCpu Integer
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of CPU resources in the cluster to reserve for failover.
haAdmissionControlResourcePercentageMemory Integer
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of memory resources in the cluster to reserve for failover.
haAdmissionControlSlotPolicyExplicitCpu Integer
When ha_admission_control_policy is slotPolicy, this controls the user-defined CPU slot size, in MHz.
haAdmissionControlSlotPolicyExplicitMemory Integer
When ha_admission_control_policy is slotPolicy, this controls the user-defined memory slot size, in MB.
haAdmissionControlSlotPolicyUseExplicitSize Boolean
When ha_admission_control_policy is slotPolicy, this setting controls whether or not you wish to supply explicit values to CPU and memory slot sizes. The default is to gather a automatic average based on all powered-on virtual machines currently in the cluster.
haAdvancedOptions Map<String,String>
Advanced configuration options for vSphere HA.
haDatastoreApdRecoveryAction String
When ha_vm_component_protection is enabled, controls the action to take on virtual machines if an APD status on an affected datastore clears in the middle of an APD event. Can be one of none or reset.
haDatastoreApdResponse String
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected loss to all paths to a relevant datastore. Can be one of disabled, warning, restartConservative, or restartAggressive.
haDatastoreApdResponseDelay Integer
When ha_vm_component_protection is enabled, controls the delay in seconds to wait after an APD timeout event to execute the response action defined in ha_datastore_apd_response.
haDatastorePdlResponse String
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected a permanent device loss to a relevant datastore. Can be one of disabled, warning, or restartAggressive.
haEnabled Boolean
Enable vSphere HA for this cluster.
haHeartbeatDatastoreIds List<String>
The list of managed object IDs for preferred datastores to use for HA heartbeating. This setting is only useful when ha_heartbeat_datastore_policy is set to either userSelectedDs or allFeasibleDsWithUserPreference.
haHeartbeatDatastorePolicy String
The selection policy for HA heartbeat datastores. Can be one of allFeasibleDs, userSelectedDs, or allFeasibleDsWithUserPreference.
haHostIsolationResponse String
The action to take on virtual machines when a host has detected that it has been isolated from the rest of the cluster. Can be one of none, powerOff, or shutdown.
haHostMonitoring String
Global setting that controls whether vSphere HA remediates VMs on host failure. Can be one of enabled or disabled.
haVmComponentProtection String
Controls vSphere VM component protection for virtual machines in this cluster. This allows vSphere HA to react to failures between hosts and specific virtual machine components, such as datastores. Can be one of enabled or disabled.
haVmDependencyRestartCondition String
The condition used to determine whether or not VMs in a certain restart priority class are online, allowing HA to move on to restarting VMs on the next priority. Can be one of none, poweredOn, guestHbStatusGreen, or appHbStatusGreen.
haVmFailureInterval Integer
If a heartbeat from a virtual machine is not received within this configured interval, the virtual machine is marked as failed. The value is in seconds.
haVmMaximumFailureWindow Integer
The length of the reset window in which ha_vm_maximum_resets can operate. When this window expires, no more resets are attempted regardless of the setting configured in ha_vm_maximum_resets. -1 means no window, meaning an unlimited reset time is allotted.
haVmMaximumResets Integer
The maximum number of resets that HA will perform to a virtual machine when responding to a failure event.
haVmMinimumUptime Integer
The time, in seconds, that HA waits after powering on a virtual machine before monitoring for heartbeats.
haVmMonitoring String
The type of virtual machine monitoring to use when HA is enabled in the cluster. Can be one of vmMonitoringDisabled, vmMonitoringOnly, or vmAndAppMonitoring.
haVmRestartAdditionalDelay Integer
Additional delay in seconds after ready condition is met. A VM is considered ready at this point.
haVmRestartPriority String
The default restart priority for affected VMs when vSphere detects a host failure. Can be one of lowest, low, medium, high, or highest.
haVmRestartTimeout Integer
The maximum time, in seconds, that vSphere HA will wait for virtual machines in one priority to be ready before proceeding with the next priority.
hostClusterExitTimeout Integer
The timeout for each host maintenance mode operation when removing hosts from a cluster.
hostImage ComputeClusterHostImage
Details about the host image which should be applied to the cluster.
hostManaged Boolean
Must be set if cluster enrollment is managed from host resource.
hostSystemIds List<String>
The managed object IDs of the hosts to put in the cluster.
name String
The name of the cluster.
proactiveHaAutomationLevel String
The DRS behavior for proactive HA recommendations. Can be one of Automated or Manual.
proactiveHaEnabled Boolean
Enables proactive HA, allowing for vSphere to get HA data from external providers and use DRS to perform remediation.
proactiveHaModerateRemediation String
The configured remediation for moderately degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to MaintenanceMode when proactive_ha_severe_remediation is set to QuarantineMode.
proactiveHaProviderIds List<String>
The list of IDs for health update providers configured for this cluster.
proactiveHaSevereRemediation String
The configured remediation for severely degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to QuarantineMode when proactive_ha_moderate_remediation is set to MaintenanceMode.
resourcePoolId String
The managed object ID of the primary resource pool for this cluster. This can be passed directly to the resource_pool_id attribute of the vsphere.VirtualMachine resource.
tags List<String>
The IDs of any tags to attach to this resource.
vsanCompressionEnabled Boolean
Whether the vSAN compression service is enabled for the cluster.
vsanDedupEnabled Boolean
Whether the vSAN deduplication service is enabled for the cluster.
vsanDiskGroups List<ComputeClusterVsanDiskGroup>
A list of disk UUIDs to add to the vSAN cluster.
vsanDitEncryptionEnabled Boolean
Whether the vSAN data-in-transit encryption is enabled for the cluster.
vsanDitRekeyInterval Integer
When vsan_dit_encryption_enabled is enabled, sets the rekey interval of data-in-transit encryption (in minutes).
vsanEnabled Boolean
Whether the vSAN service is enabled for the cluster.
vsanEsaEnabled Boolean
Whether the vSAN ESA service is enabled for the cluster.
vsanFaultDomains List<ComputeClusterVsanFaultDomain>
The configuration for vSAN fault domains.
vsanNetworkDiagnosticModeEnabled Boolean
Whether the vSAN network diagnostic mode is enabled for the cluster.
vsanPerformanceEnabled Boolean
Whether the vSAN performance service is enabled for the cluster.
vsanRemoteDatastoreIds List<String>
The managed object IDs of the vSAN datastore to be mounted on the cluster.
vsanStretchedCluster ComputeClusterVsanStretchedCluster
The configuration for stretched cluster.
vsanUnmapEnabled Boolean
Whether the vSAN unmap service is enabled for the cluster.
vsanVerboseModeEnabled Boolean
Whether the vSAN verbose mode is enabled for the cluster.
customAttributes {[key: string]: string}

A map of custom attribute ids to attribute value strings to set for the datastore cluster.

NOTE: Custom attributes are unsupported on direct ESXi connections and require vCenter Server.

datacenterId Changes to this property will trigger replacement. string
The managed object ID of the datacenter to create the cluster in. Forces a new resource if changed.
dpmAutomationLevel string
The automation level for host power operations in this cluster. Can be one of manual or automated.
dpmEnabled boolean
Enable DPM support for DRS. This allows you to dynamically control the power of hosts depending on the needs of virtual machines in the cluster. Requires that DRS be enabled.
dpmThreshold number
A value between 1 and 5 indicating the threshold of load within the cluster that influences host power operations. This affects both power on and power off operations - a lower setting will tolerate more of a surplus/deficit than a higher setting.
drsAdvancedOptions {[key: string]: string}
Advanced configuration options for DRS and DPM.
drsAutomationLevel string
The default automation level for all virtual machines in this cluster. Can be one of manual, partiallyAutomated, or fullyAutomated.
drsEnablePredictiveDrs boolean
When true, enables DRS to use data from vRealize Operations Manager to make proactive DRS recommendations.
drsEnableVmOverrides boolean
When true, allows individual VM overrides within this cluster to be set.
drsEnabled boolean
Enable DRS for this cluster.
drsMigrationThreshold number
A value between 1 and 5 indicating the threshold of imbalance tolerated between hosts. A lower setting will tolerate more imbalance while a higher setting will tolerate less.
drsScaleDescendantsShares string
Enable scalable shares for all descendants of this cluster.
folder string
The relative path to a folder to put this cluster in. This is a path relative to the datacenter you are deploying the cluster to. Example: for the dc1 datacenter, and a provided folder of foo/bar, The provider will place a cluster named compute-cluster-test in a host folder located at /dc1/host/foo/bar, with the final inventory path being /dc1/host/foo/bar/datastore-cluster-test.
forceEvacuateOnDestroy boolean
Force removal of all hosts in the cluster during destroy and make them standalone hosts. Use of this flag mainly exists for testing and is not recommended in normal use.
haAdmissionControlFailoverHostSystemIds string[]
When ha_admission_control_policy is failoverHosts, this defines the managed object IDs of hosts to use as dedicated failover hosts. These hosts are kept as available as possible - admission control will block access to the host, and DRS will ignore the host when making recommendations.
haAdmissionControlHostFailureTolerance number
The maximum number of failed hosts that admission control tolerates when making decisions on whether to permit virtual machine operations. The maximum is one less than the number of hosts in the cluster.
haAdmissionControlPerformanceTolerance number
The percentage of resource reduction that a cluster of VMs can tolerate in case of a failover. A value of 0 produces warnings only, whereas a value of 100 disables the setting.
haAdmissionControlPolicy string
The type of admission control policy to use with vSphere HA, which controls whether or not specific VM operations are permitted in the cluster in order to protect the reliability of the cluster. Can be one of resourcePercentage, slotPolicy, failoverHosts, or disabled. Note that disabling admission control is not recommended and can lead to service issues.
haAdmissionControlResourcePercentageAutoCompute boolean
When ha_admission_control_policy is resourcePercentage, automatically determine available resource percentages by subtracting the average number of host resources represented by the ha_admission_control_host_failure_tolerance setting from the total amount of resources in the cluster. Disable to supply user-defined values.
haAdmissionControlResourcePercentageCpu number
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of CPU resources in the cluster to reserve for failover.
haAdmissionControlResourcePercentageMemory number
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of memory resources in the cluster to reserve for failover.
haAdmissionControlSlotPolicyExplicitCpu number
When ha_admission_control_policy is slotPolicy, this controls the user-defined CPU slot size, in MHz.
haAdmissionControlSlotPolicyExplicitMemory number
When ha_admission_control_policy is slotPolicy, this controls the user-defined memory slot size, in MB.
haAdmissionControlSlotPolicyUseExplicitSize boolean
When ha_admission_control_policy is slotPolicy, this setting controls whether or not you wish to supply explicit values to CPU and memory slot sizes. The default is to gather a automatic average based on all powered-on virtual machines currently in the cluster.
haAdvancedOptions {[key: string]: string}
Advanced configuration options for vSphere HA.
haDatastoreApdRecoveryAction string
When ha_vm_component_protection is enabled, controls the action to take on virtual machines if an APD status on an affected datastore clears in the middle of an APD event. Can be one of none or reset.
haDatastoreApdResponse string
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected loss to all paths to a relevant datastore. Can be one of disabled, warning, restartConservative, or restartAggressive.
haDatastoreApdResponseDelay number
When ha_vm_component_protection is enabled, controls the delay in seconds to wait after an APD timeout event to execute the response action defined in ha_datastore_apd_response.
haDatastorePdlResponse string
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected a permanent device loss to a relevant datastore. Can be one of disabled, warning, or restartAggressive.
haEnabled boolean
Enable vSphere HA for this cluster.
haHeartbeatDatastoreIds string[]
The list of managed object IDs for preferred datastores to use for HA heartbeating. This setting is only useful when ha_heartbeat_datastore_policy is set to either userSelectedDs or allFeasibleDsWithUserPreference.
haHeartbeatDatastorePolicy string
The selection policy for HA heartbeat datastores. Can be one of allFeasibleDs, userSelectedDs, or allFeasibleDsWithUserPreference.
haHostIsolationResponse string
The action to take on virtual machines when a host has detected that it has been isolated from the rest of the cluster. Can be one of none, powerOff, or shutdown.
haHostMonitoring string
Global setting that controls whether vSphere HA remediates VMs on host failure. Can be one of enabled or disabled.
haVmComponentProtection string
Controls vSphere VM component protection for virtual machines in this cluster. This allows vSphere HA to react to failures between hosts and specific virtual machine components, such as datastores. Can be one of enabled or disabled.
haVmDependencyRestartCondition string
The condition used to determine whether or not VMs in a certain restart priority class are online, allowing HA to move on to restarting VMs on the next priority. Can be one of none, poweredOn, guestHbStatusGreen, or appHbStatusGreen.
haVmFailureInterval number
If a heartbeat from a virtual machine is not received within this configured interval, the virtual machine is marked as failed. The value is in seconds.
haVmMaximumFailureWindow number
The length of the reset window in which ha_vm_maximum_resets can operate. When this window expires, no more resets are attempted regardless of the setting configured in ha_vm_maximum_resets. -1 means no window, meaning an unlimited reset time is allotted.
haVmMaximumResets number
The maximum number of resets that HA will perform to a virtual machine when responding to a failure event.
haVmMinimumUptime number
The time, in seconds, that HA waits after powering on a virtual machine before monitoring for heartbeats.
haVmMonitoring string
The type of virtual machine monitoring to use when HA is enabled in the cluster. Can be one of vmMonitoringDisabled, vmMonitoringOnly, or vmAndAppMonitoring.
haVmRestartAdditionalDelay number
Additional delay in seconds after ready condition is met. A VM is considered ready at this point.
haVmRestartPriority string
The default restart priority for affected VMs when vSphere detects a host failure. Can be one of lowest, low, medium, high, or highest.
haVmRestartTimeout number
The maximum time, in seconds, that vSphere HA will wait for virtual machines in one priority to be ready before proceeding with the next priority.
hostClusterExitTimeout number
The timeout for each host maintenance mode operation when removing hosts from a cluster.
hostImage ComputeClusterHostImage
Details about the host image which should be applied to the cluster.
hostManaged boolean
Must be set if cluster enrollment is managed from host resource.
hostSystemIds string[]
The managed object IDs of the hosts to put in the cluster.
name string
The name of the cluster.
proactiveHaAutomationLevel string
The DRS behavior for proactive HA recommendations. Can be one of Automated or Manual.
proactiveHaEnabled boolean
Enables proactive HA, allowing for vSphere to get HA data from external providers and use DRS to perform remediation.
proactiveHaModerateRemediation string
The configured remediation for moderately degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to MaintenanceMode when proactive_ha_severe_remediation is set to QuarantineMode.
proactiveHaProviderIds string[]
The list of IDs for health update providers configured for this cluster.
proactiveHaSevereRemediation string
The configured remediation for severely degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to QuarantineMode when proactive_ha_moderate_remediation is set to MaintenanceMode.
resourcePoolId string
The managed object ID of the primary resource pool for this cluster. This can be passed directly to the resource_pool_id attribute of the vsphere.VirtualMachine resource.
tags string[]
The IDs of any tags to attach to this resource.
vsanCompressionEnabled boolean
Whether the vSAN compression service is enabled for the cluster.
vsanDedupEnabled boolean
Whether the vSAN deduplication service is enabled for the cluster.
vsanDiskGroups ComputeClusterVsanDiskGroup[]
A list of disk UUIDs to add to the vSAN cluster.
vsanDitEncryptionEnabled boolean
Whether the vSAN data-in-transit encryption is enabled for the cluster.
vsanDitRekeyInterval number
When vsan_dit_encryption_enabled is enabled, sets the rekey interval of data-in-transit encryption (in minutes).
vsanEnabled boolean
Whether the vSAN service is enabled for the cluster.
vsanEsaEnabled boolean
Whether the vSAN ESA service is enabled for the cluster.
vsanFaultDomains ComputeClusterVsanFaultDomain[]
The configuration for vSAN fault domains.
vsanNetworkDiagnosticModeEnabled boolean
Whether the vSAN network diagnostic mode is enabled for the cluster.
vsanPerformanceEnabled boolean
Whether the vSAN performance service is enabled for the cluster.
vsanRemoteDatastoreIds string[]
The managed object IDs of the vSAN datastore to be mounted on the cluster.
vsanStretchedCluster ComputeClusterVsanStretchedCluster
The configuration for stretched cluster.
vsanUnmapEnabled boolean
Whether the vSAN unmap service is enabled for the cluster.
vsanVerboseModeEnabled boolean
Whether the vSAN verbose mode is enabled for the cluster.
custom_attributes Mapping[str, str]

A map of custom attribute ids to attribute value strings to set for the datastore cluster.

NOTE: Custom attributes are unsupported on direct ESXi connections and require vCenter Server.

datacenter_id Changes to this property will trigger replacement. str
The managed object ID of the datacenter to create the cluster in. Forces a new resource if changed.
dpm_automation_level str
The automation level for host power operations in this cluster. Can be one of manual or automated.
dpm_enabled bool
Enable DPM support for DRS. This allows you to dynamically control the power of hosts depending on the needs of virtual machines in the cluster. Requires that DRS be enabled.
dpm_threshold int
A value between 1 and 5 indicating the threshold of load within the cluster that influences host power operations. This affects both power on and power off operations - a lower setting will tolerate more of a surplus/deficit than a higher setting.
drs_advanced_options Mapping[str, str]
Advanced configuration options for DRS and DPM.
drs_automation_level str
The default automation level for all virtual machines in this cluster. Can be one of manual, partiallyAutomated, or fullyAutomated.
drs_enable_predictive_drs bool
When true, enables DRS to use data from vRealize Operations Manager to make proactive DRS recommendations.
drs_enable_vm_overrides bool
When true, allows individual VM overrides within this cluster to be set.
drs_enabled bool
Enable DRS for this cluster.
drs_migration_threshold int
A value between 1 and 5 indicating the threshold of imbalance tolerated between hosts. A lower setting will tolerate more imbalance while a higher setting will tolerate less.
drs_scale_descendants_shares str
Enable scalable shares for all descendants of this cluster.
folder str
The relative path to a folder to put this cluster in. This is a path relative to the datacenter you are deploying the cluster to. Example: for the dc1 datacenter, and a provided folder of foo/bar, The provider will place a cluster named compute-cluster-test in a host folder located at /dc1/host/foo/bar, with the final inventory path being /dc1/host/foo/bar/datastore-cluster-test.
force_evacuate_on_destroy bool
Force removal of all hosts in the cluster during destroy and make them standalone hosts. Use of this flag mainly exists for testing and is not recommended in normal use.
ha_admission_control_failover_host_system_ids Sequence[str]
When ha_admission_control_policy is failoverHosts, this defines the managed object IDs of hosts to use as dedicated failover hosts. These hosts are kept as available as possible - admission control will block access to the host, and DRS will ignore the host when making recommendations.
ha_admission_control_host_failure_tolerance int
The maximum number of failed hosts that admission control tolerates when making decisions on whether to permit virtual machine operations. The maximum is one less than the number of hosts in the cluster.
ha_admission_control_performance_tolerance int
The percentage of resource reduction that a cluster of VMs can tolerate in case of a failover. A value of 0 produces warnings only, whereas a value of 100 disables the setting.
ha_admission_control_policy str
The type of admission control policy to use with vSphere HA, which controls whether or not specific VM operations are permitted in the cluster in order to protect the reliability of the cluster. Can be one of resourcePercentage, slotPolicy, failoverHosts, or disabled. Note that disabling admission control is not recommended and can lead to service issues.
ha_admission_control_resource_percentage_auto_compute bool
When ha_admission_control_policy is resourcePercentage, automatically determine available resource percentages by subtracting the average number of host resources represented by the ha_admission_control_host_failure_tolerance setting from the total amount of resources in the cluster. Disable to supply user-defined values.
ha_admission_control_resource_percentage_cpu int
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of CPU resources in the cluster to reserve for failover.
ha_admission_control_resource_percentage_memory int
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of memory resources in the cluster to reserve for failover.
ha_admission_control_slot_policy_explicit_cpu int
When ha_admission_control_policy is slotPolicy, this controls the user-defined CPU slot size, in MHz.
ha_admission_control_slot_policy_explicit_memory int
When ha_admission_control_policy is slotPolicy, this controls the user-defined memory slot size, in MB.
ha_admission_control_slot_policy_use_explicit_size bool
When ha_admission_control_policy is slotPolicy, this setting controls whether or not you wish to supply explicit values to CPU and memory slot sizes. The default is to gather a automatic average based on all powered-on virtual machines currently in the cluster.
ha_advanced_options Mapping[str, str]
Advanced configuration options for vSphere HA.
ha_datastore_apd_recovery_action str
When ha_vm_component_protection is enabled, controls the action to take on virtual machines if an APD status on an affected datastore clears in the middle of an APD event. Can be one of none or reset.
ha_datastore_apd_response str
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected loss to all paths to a relevant datastore. Can be one of disabled, warning, restartConservative, or restartAggressive.
ha_datastore_apd_response_delay int
When ha_vm_component_protection is enabled, controls the delay in seconds to wait after an APD timeout event to execute the response action defined in ha_datastore_apd_response.
ha_datastore_pdl_response str
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected a permanent device loss to a relevant datastore. Can be one of disabled, warning, or restartAggressive.
ha_enabled bool
Enable vSphere HA for this cluster.
ha_heartbeat_datastore_ids Sequence[str]
The list of managed object IDs for preferred datastores to use for HA heartbeating. This setting is only useful when ha_heartbeat_datastore_policy is set to either userSelectedDs or allFeasibleDsWithUserPreference.
ha_heartbeat_datastore_policy str
The selection policy for HA heartbeat datastores. Can be one of allFeasibleDs, userSelectedDs, or allFeasibleDsWithUserPreference.
ha_host_isolation_response str
The action to take on virtual machines when a host has detected that it has been isolated from the rest of the cluster. Can be one of none, powerOff, or shutdown.
ha_host_monitoring str
Global setting that controls whether vSphere HA remediates VMs on host failure. Can be one of enabled or disabled.
ha_vm_component_protection str
Controls vSphere VM component protection for virtual machines in this cluster. This allows vSphere HA to react to failures between hosts and specific virtual machine components, such as datastores. Can be one of enabled or disabled.
ha_vm_dependency_restart_condition str
The condition used to determine whether or not VMs in a certain restart priority class are online, allowing HA to move on to restarting VMs on the next priority. Can be one of none, poweredOn, guestHbStatusGreen, or appHbStatusGreen.
ha_vm_failure_interval int
If a heartbeat from a virtual machine is not received within this configured interval, the virtual machine is marked as failed. The value is in seconds.
ha_vm_maximum_failure_window int
The length of the reset window in which ha_vm_maximum_resets can operate. When this window expires, no more resets are attempted regardless of the setting configured in ha_vm_maximum_resets. -1 means no window, meaning an unlimited reset time is allotted.
ha_vm_maximum_resets int
The maximum number of resets that HA will perform to a virtual machine when responding to a failure event.
ha_vm_minimum_uptime int
The time, in seconds, that HA waits after powering on a virtual machine before monitoring for heartbeats.
ha_vm_monitoring str
The type of virtual machine monitoring to use when HA is enabled in the cluster. Can be one of vmMonitoringDisabled, vmMonitoringOnly, or vmAndAppMonitoring.
ha_vm_restart_additional_delay int
Additional delay in seconds after ready condition is met. A VM is considered ready at this point.
ha_vm_restart_priority str
The default restart priority for affected VMs when vSphere detects a host failure. Can be one of lowest, low, medium, high, or highest.
ha_vm_restart_timeout int
The maximum time, in seconds, that vSphere HA will wait for virtual machines in one priority to be ready before proceeding with the next priority.
host_cluster_exit_timeout int
The timeout for each host maintenance mode operation when removing hosts from a cluster.
host_image ComputeClusterHostImageArgs
Details about the host image which should be applied to the cluster.
host_managed bool
Must be set if cluster enrollment is managed from host resource.
host_system_ids Sequence[str]
The managed object IDs of the hosts to put in the cluster.
name str
The name of the cluster.
proactive_ha_automation_level str
The DRS behavior for proactive HA recommendations. Can be one of Automated or Manual.
proactive_ha_enabled bool
Enables proactive HA, allowing for vSphere to get HA data from external providers and use DRS to perform remediation.
proactive_ha_moderate_remediation str
The configured remediation for moderately degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to MaintenanceMode when proactive_ha_severe_remediation is set to QuarantineMode.
proactive_ha_provider_ids Sequence[str]
The list of IDs for health update providers configured for this cluster.
proactive_ha_severe_remediation str
The configured remediation for severely degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to QuarantineMode when proactive_ha_moderate_remediation is set to MaintenanceMode.
resource_pool_id str
The managed object ID of the primary resource pool for this cluster. This can be passed directly to the resource_pool_id attribute of the vsphere.VirtualMachine resource.
tags Sequence[str]
The IDs of any tags to attach to this resource.
vsan_compression_enabled bool
Whether the vSAN compression service is enabled for the cluster.
vsan_dedup_enabled bool
Whether the vSAN deduplication service is enabled for the cluster.
vsan_disk_groups Sequence[ComputeClusterVsanDiskGroupArgs]
A list of disk UUIDs to add to the vSAN cluster.
vsan_dit_encryption_enabled bool
Whether the vSAN data-in-transit encryption is enabled for the cluster.
vsan_dit_rekey_interval int
When vsan_dit_encryption_enabled is enabled, sets the rekey interval of data-in-transit encryption (in minutes).
vsan_enabled bool
Whether the vSAN service is enabled for the cluster.
vsan_esa_enabled bool
Whether the vSAN ESA service is enabled for the cluster.
vsan_fault_domains Sequence[ComputeClusterVsanFaultDomainArgs]
The configuration for vSAN fault domains.
vsan_network_diagnostic_mode_enabled bool
Whether the vSAN network diagnostic mode is enabled for the cluster.
vsan_performance_enabled bool
Whether the vSAN performance service is enabled for the cluster.
vsan_remote_datastore_ids Sequence[str]
The managed object IDs of the vSAN datastore to be mounted on the cluster.
vsan_stretched_cluster ComputeClusterVsanStretchedClusterArgs
The configuration for stretched cluster.
vsan_unmap_enabled bool
Whether the vSAN unmap service is enabled for the cluster.
vsan_verbose_mode_enabled bool
Whether the vSAN verbose mode is enabled for the cluster.
customAttributes Map<String>

A map of custom attribute ids to attribute value strings to set for the datastore cluster.

NOTE: Custom attributes are unsupported on direct ESXi connections and require vCenter Server.

datacenterId Changes to this property will trigger replacement. String
The managed object ID of the datacenter to create the cluster in. Forces a new resource if changed.
dpmAutomationLevel String
The automation level for host power operations in this cluster. Can be one of manual or automated.
dpmEnabled Boolean
Enable DPM support for DRS. This allows you to dynamically control the power of hosts depending on the needs of virtual machines in the cluster. Requires that DRS be enabled.
dpmThreshold Number
A value between 1 and 5 indicating the threshold of load within the cluster that influences host power operations. This affects both power on and power off operations - a lower setting will tolerate more of a surplus/deficit than a higher setting.
drsAdvancedOptions Map<String>
Advanced configuration options for DRS and DPM.
drsAutomationLevel String
The default automation level for all virtual machines in this cluster. Can be one of manual, partiallyAutomated, or fullyAutomated.
drsEnablePredictiveDrs Boolean
When true, enables DRS to use data from vRealize Operations Manager to make proactive DRS recommendations.
drsEnableVmOverrides Boolean
When true, allows individual VM overrides within this cluster to be set.
drsEnabled Boolean
Enable DRS for this cluster.
drsMigrationThreshold Number
A value between 1 and 5 indicating the threshold of imbalance tolerated between hosts. A lower setting will tolerate more imbalance while a higher setting will tolerate less.
drsScaleDescendantsShares String
Enable scalable shares for all descendants of this cluster.
folder String
The relative path to a folder to put this cluster in. This is a path relative to the datacenter you are deploying the cluster to. Example: for the dc1 datacenter, and a provided folder of foo/bar, The provider will place a cluster named compute-cluster-test in a host folder located at /dc1/host/foo/bar, with the final inventory path being /dc1/host/foo/bar/datastore-cluster-test.
forceEvacuateOnDestroy Boolean
Force removal of all hosts in the cluster during destroy and make them standalone hosts. Use of this flag mainly exists for testing and is not recommended in normal use.
haAdmissionControlFailoverHostSystemIds List<String>
When ha_admission_control_policy is failoverHosts, this defines the managed object IDs of hosts to use as dedicated failover hosts. These hosts are kept as available as possible - admission control will block access to the host, and DRS will ignore the host when making recommendations.
haAdmissionControlHostFailureTolerance Number
The maximum number of failed hosts that admission control tolerates when making decisions on whether to permit virtual machine operations. The maximum is one less than the number of hosts in the cluster.
haAdmissionControlPerformanceTolerance Number
The percentage of resource reduction that a cluster of VMs can tolerate in case of a failover. A value of 0 produces warnings only, whereas a value of 100 disables the setting.
haAdmissionControlPolicy String
The type of admission control policy to use with vSphere HA, which controls whether or not specific VM operations are permitted in the cluster in order to protect the reliability of the cluster. Can be one of resourcePercentage, slotPolicy, failoverHosts, or disabled. Note that disabling admission control is not recommended and can lead to service issues.
haAdmissionControlResourcePercentageAutoCompute Boolean
When ha_admission_control_policy is resourcePercentage, automatically determine available resource percentages by subtracting the average number of host resources represented by the ha_admission_control_host_failure_tolerance setting from the total amount of resources in the cluster. Disable to supply user-defined values.
haAdmissionControlResourcePercentageCpu Number
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of CPU resources in the cluster to reserve for failover.
haAdmissionControlResourcePercentageMemory Number
When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of memory resources in the cluster to reserve for failover.
haAdmissionControlSlotPolicyExplicitCpu Number
When ha_admission_control_policy is slotPolicy, this controls the user-defined CPU slot size, in MHz.
haAdmissionControlSlotPolicyExplicitMemory Number
When ha_admission_control_policy is slotPolicy, this controls the user-defined memory slot size, in MB.
haAdmissionControlSlotPolicyUseExplicitSize Boolean
When ha_admission_control_policy is slotPolicy, this setting controls whether or not you wish to supply explicit values to CPU and memory slot sizes. The default is to gather a automatic average based on all powered-on virtual machines currently in the cluster.
haAdvancedOptions Map<String>
Advanced configuration options for vSphere HA.
haDatastoreApdRecoveryAction String
When ha_vm_component_protection is enabled, controls the action to take on virtual machines if an APD status on an affected datastore clears in the middle of an APD event. Can be one of none or reset.
haDatastoreApdResponse String
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected loss to all paths to a relevant datastore. Can be one of disabled, warning, restartConservative, or restartAggressive.
haDatastoreApdResponseDelay Number
When ha_vm_component_protection is enabled, controls the delay in seconds to wait after an APD timeout event to execute the response action defined in ha_datastore_apd_response.
haDatastorePdlResponse String
When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected a permanent device loss to a relevant datastore. Can be one of disabled, warning, or restartAggressive.
haEnabled Boolean
Enable vSphere HA for this cluster.
haHeartbeatDatastoreIds List<String>
The list of managed object IDs for preferred datastores to use for HA heartbeating. This setting is only useful when ha_heartbeat_datastore_policy is set to either userSelectedDs or allFeasibleDsWithUserPreference.
haHeartbeatDatastorePolicy String
The selection policy for HA heartbeat datastores. Can be one of allFeasibleDs, userSelectedDs, or allFeasibleDsWithUserPreference.
haHostIsolationResponse String
The action to take on virtual machines when a host has detected that it has been isolated from the rest of the cluster. Can be one of none, powerOff, or shutdown.
haHostMonitoring String
Global setting that controls whether vSphere HA remediates VMs on host failure. Can be one of enabled or disabled.
haVmComponentProtection String
Controls vSphere VM component protection for virtual machines in this cluster. This allows vSphere HA to react to failures between hosts and specific virtual machine components, such as datastores. Can be one of enabled or disabled.
haVmDependencyRestartCondition String
The condition used to determine whether or not VMs in a certain restart priority class are online, allowing HA to move on to restarting VMs on the next priority. Can be one of none, poweredOn, guestHbStatusGreen, or appHbStatusGreen.
haVmFailureInterval Number
If a heartbeat from a virtual machine is not received within this configured interval, the virtual machine is marked as failed. The value is in seconds.
haVmMaximumFailureWindow Number
The length of the reset window in which ha_vm_maximum_resets can operate. When this window expires, no more resets are attempted regardless of the setting configured in ha_vm_maximum_resets. -1 means no window, meaning an unlimited reset time is allotted.
haVmMaximumResets Number
The maximum number of resets that HA will perform to a virtual machine when responding to a failure event.
haVmMinimumUptime Number
The time, in seconds, that HA waits after powering on a virtual machine before monitoring for heartbeats.
haVmMonitoring String
The type of virtual machine monitoring to use when HA is enabled in the cluster. Can be one of vmMonitoringDisabled, vmMonitoringOnly, or vmAndAppMonitoring.
haVmRestartAdditionalDelay Number
Additional delay in seconds after ready condition is met. A VM is considered ready at this point.
haVmRestartPriority String
The default restart priority for affected VMs when vSphere detects a host failure. Can be one of lowest, low, medium, high, or highest.
haVmRestartTimeout Number
The maximum time, in seconds, that vSphere HA will wait for virtual machines in one priority to be ready before proceeding with the next priority.
hostClusterExitTimeout Number
The timeout for each host maintenance mode operation when removing hosts from a cluster.
hostImage Property Map
Details about the host image which should be applied to the cluster.
hostManaged Boolean
Must be set if cluster enrollment is managed from host resource.
hostSystemIds List<String>
The managed object IDs of the hosts to put in the cluster.
name String
The name of the cluster.
proactiveHaAutomationLevel String
The DRS behavior for proactive HA recommendations. Can be one of Automated or Manual.
proactiveHaEnabled Boolean
Enables proactive HA, allowing for vSphere to get HA data from external providers and use DRS to perform remediation.
proactiveHaModerateRemediation String
The configured remediation for moderately degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to MaintenanceMode when proactive_ha_severe_remediation is set to QuarantineMode.
proactiveHaProviderIds List<String>
The list of IDs for health update providers configured for this cluster.
proactiveHaSevereRemediation String
The configured remediation for severely degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to QuarantineMode when proactive_ha_moderate_remediation is set to MaintenanceMode.
resourcePoolId String
The managed object ID of the primary resource pool for this cluster. This can be passed directly to the resource_pool_id attribute of the vsphere.VirtualMachine resource.
tags List<String>
The IDs of any tags to attach to this resource.
vsanCompressionEnabled Boolean
Whether the vSAN compression service is enabled for the cluster.
vsanDedupEnabled Boolean
Whether the vSAN deduplication service is enabled for the cluster.
vsanDiskGroups List<Property Map>
A list of disk UUIDs to add to the vSAN cluster.
vsanDitEncryptionEnabled Boolean
Whether the vSAN data-in-transit encryption is enabled for the cluster.
vsanDitRekeyInterval Number
When vsan_dit_encryption_enabled is enabled, sets the rekey interval of data-in-transit encryption (in minutes).
vsanEnabled Boolean
Whether the vSAN service is enabled for the cluster.
vsanEsaEnabled Boolean
Whether the vSAN ESA service is enabled for the cluster.
vsanFaultDomains List<Property Map>
The configuration for vSAN fault domains.
vsanNetworkDiagnosticModeEnabled Boolean
Whether the vSAN network diagnostic mode is enabled for the cluster.
vsanPerformanceEnabled Boolean
Whether the vSAN performance service is enabled for the cluster.
vsanRemoteDatastoreIds List<String>
The managed object IDs of the vSAN datastore to be mounted on the cluster.
vsanStretchedCluster Property Map
The configuration for stretched cluster.
vsanUnmapEnabled Boolean
Whether the vSAN unmap service is enabled for the cluster.
vsanVerboseModeEnabled Boolean
Whether the vSAN verbose mode is enabled for the cluster.

Supporting Types

ComputeClusterHostImage
, ComputeClusterHostImageArgs

Components List<Pulumi.VSphere.Inputs.ComputeClusterHostImageComponent>
List of custom components.
EsxVersion string
The ESXi version which the image is based on.
Components []ComputeClusterHostImageComponent
List of custom components.
EsxVersion string
The ESXi version which the image is based on.
components List<ComputeClusterHostImageComponent>
List of custom components.
esxVersion String
The ESXi version which the image is based on.
components ComputeClusterHostImageComponent[]
List of custom components.
esxVersion string
The ESXi version which the image is based on.
components Sequence[ComputeClusterHostImageComponent]
List of custom components.
esx_version str
The ESXi version which the image is based on.
components List<Property Map>
List of custom components.
esxVersion String
The ESXi version which the image is based on.

ComputeClusterHostImageComponent
, ComputeClusterHostImageComponentArgs

Key string
The identifier for the component.
Version string
The version to use.
Key string
The identifier for the component.
Version string
The version to use.
key String
The identifier for the component.
version String
The version to use.
key string
The identifier for the component.
version string
The version to use.
key str
The identifier for the component.
version str
The version to use.
key String
The identifier for the component.
version String
The version to use.

ComputeClusterVsanDiskGroup
, ComputeClusterVsanDiskGroupArgs

Cache string
Cache disk.
Storages List<string>
List of storage disks.
Cache string
Cache disk.
Storages []string
List of storage disks.
cache String
Cache disk.
storages List<String>
List of storage disks.
cache string
Cache disk.
storages string[]
List of storage disks.
cache str
Cache disk.
storages Sequence[str]
List of storage disks.
cache String
Cache disk.
storages List<String>
List of storage disks.

ComputeClusterVsanFaultDomain
, ComputeClusterVsanFaultDomainArgs

FaultDomains []ComputeClusterVsanFaultDomainFaultDomain
The configuration for single fault domain.
faultDomains List<ComputeClusterVsanFaultDomainFaultDomain>
The configuration for single fault domain.
faultDomains ComputeClusterVsanFaultDomainFaultDomain[]
The configuration for single fault domain.
fault_domains Sequence[ComputeClusterVsanFaultDomainFaultDomain]
The configuration for single fault domain.
faultDomains List<Property Map>
The configuration for single fault domain.

ComputeClusterVsanFaultDomainFaultDomain
, ComputeClusterVsanFaultDomainFaultDomainArgs

HostIds This property is required. List<string>
The managed object IDs of the hosts to put in the fault domain.
Name This property is required. string
The name of the cluster.
HostIds This property is required. []string
The managed object IDs of the hosts to put in the fault domain.
Name This property is required. string
The name of the cluster.
hostIds This property is required. List<String>
The managed object IDs of the hosts to put in the fault domain.
name This property is required. String
The name of the cluster.
hostIds This property is required. string[]
The managed object IDs of the hosts to put in the fault domain.
name This property is required. string
The name of the cluster.
host_ids This property is required. Sequence[str]
The managed object IDs of the hosts to put in the fault domain.
name This property is required. str
The name of the cluster.
hostIds This property is required. List<String>
The managed object IDs of the hosts to put in the fault domain.
name This property is required. String
The name of the cluster.

ComputeClusterVsanStretchedCluster
, ComputeClusterVsanStretchedClusterArgs

PreferredFaultDomainHostIds This property is required. List<string>
The managed object IDs of the hosts to put in the first fault domain.
SecondaryFaultDomainHostIds This property is required. List<string>
The managed object IDs of the hosts to put in the second fault domain.
WitnessNode This property is required. string
The managed object IDs of the host selected as witness node when enable stretched cluster.
PreferredFaultDomainName string
The name of prepferred fault domain.
SecondaryFaultDomainName string
The name of secondary fault domain.
PreferredFaultDomainHostIds This property is required. []string
The managed object IDs of the hosts to put in the first fault domain.
SecondaryFaultDomainHostIds This property is required. []string
The managed object IDs of the hosts to put in the second fault domain.
WitnessNode This property is required. string
The managed object IDs of the host selected as witness node when enable stretched cluster.
PreferredFaultDomainName string
The name of prepferred fault domain.
SecondaryFaultDomainName string
The name of secondary fault domain.
preferredFaultDomainHostIds This property is required. List<String>
The managed object IDs of the hosts to put in the first fault domain.
secondaryFaultDomainHostIds This property is required. List<String>
The managed object IDs of the hosts to put in the second fault domain.
witnessNode This property is required. String
The managed object IDs of the host selected as witness node when enable stretched cluster.
preferredFaultDomainName String
The name of prepferred fault domain.
secondaryFaultDomainName String
The name of secondary fault domain.
preferredFaultDomainHostIds This property is required. string[]
The managed object IDs of the hosts to put in the first fault domain.
secondaryFaultDomainHostIds This property is required. string[]
The managed object IDs of the hosts to put in the second fault domain.
witnessNode This property is required. string
The managed object IDs of the host selected as witness node when enable stretched cluster.
preferredFaultDomainName string
The name of prepferred fault domain.
secondaryFaultDomainName string
The name of secondary fault domain.
preferred_fault_domain_host_ids This property is required. Sequence[str]
The managed object IDs of the hosts to put in the first fault domain.
secondary_fault_domain_host_ids This property is required. Sequence[str]
The managed object IDs of the hosts to put in the second fault domain.
witness_node This property is required. str
The managed object IDs of the host selected as witness node when enable stretched cluster.
preferred_fault_domain_name str
The name of prepferred fault domain.
secondary_fault_domain_name str
The name of secondary fault domain.
preferredFaultDomainHostIds This property is required. List<String>
The managed object IDs of the hosts to put in the first fault domain.
secondaryFaultDomainHostIds This property is required. List<String>
The managed object IDs of the hosts to put in the second fault domain.
witnessNode This property is required. String
The managed object IDs of the host selected as witness node when enable stretched cluster.
preferredFaultDomainName String
The name of prepferred fault domain.
secondaryFaultDomainName String
The name of secondary fault domain.

Import

An existing cluster can be imported into this resource via the

path to the cluster, via the following command:

hcl

variable “datacenter” {

default = “dc-01”

}

data “vsphere_datacenter” “datacenter” {

name = var.datacenter

}

resource “vsphere_compute_cluster” “compute_cluster” {

name = “cluster-01”

datacenter_id = data.vsphere_datacenter.datacenter.id

}

hcl

resource “vsphere_compute_cluster” “compute_cluster” {

name = “cluster-01”

datacenter_id = data.vsphere_datacenter.datacenter.id

vsan_enabled = true

vsan_performance_enabled = true

host_system_ids = [for host in data.vsphere_host.host : host.id]

dpm_automation_level = “automated”

drs_automation_level = “fullyAutomated”

drs_enabled = true

ha_datastore_apd_response = “restartConservative”

ha_datastore_pdl_response = “restartAggressive”

… etc.

console

$ pulumi import vsphere:index/computeCluster:ComputeCluster compute_cluster /dc-01/host/cluster-01
Copy

The above would import the cluster named cluster-01 that is located in

the dc-01 datacenter.

To learn more about importing existing cloud resources, see Importing resources.

Package Details

Repository
vSphere pulumi/pulumi-vsphere
License
Apache-2.0
Notes
This Pulumi package is based on the vsphere Terraform Provider.