1. Packages
  2. Vmc Provider
  3. API Docs
  4. Cluster
vmc 1.15.4 published on Monday, Apr 21, 2025 by vmware

vmc.Cluster

Explore with Pulumi AI

Provides a resource to manage clusters.

Note: Cluster resource implicitly depends on SDDC resource creation. SDDC must be provisioned before a cluster can be created.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as vmc from "@pulumi/vmc";

const cluster_1 = new vmc.Cluster("cluster-1", {
    sddcId: vmc_sddc.sddc_1.id,
    numHosts: _var.num_hosts,
    microsoftLicensingConfigs: [{
        mssqlLicensing: "DISABLED",
        windowsLicensing: "ENABLED",
    }],
});
Copy
import pulumi
import pulumi_vmc as vmc

cluster_1 = vmc.Cluster("cluster-1",
    sddc_id=vmc_sddc["sddc_1"]["id"],
    num_hosts=var["num_hosts"],
    microsoft_licensing_configs=[{
        "mssql_licensing": "DISABLED",
        "windows_licensing": "ENABLED",
    }])
Copy
package main

import (
	"github.com/pulumi/pulumi-terraform-provider/sdks/go/vmc/vmc"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := vmc.NewCluster(ctx, "cluster-1", &vmc.ClusterArgs{
			SddcId:   pulumi.Any(vmc_sddc.Sddc_1.Id),
			NumHosts: pulumi.Any(_var.Num_hosts),
			MicrosoftLicensingConfigs: vmc.ClusterMicrosoftLicensingConfigArray{
				&vmc.ClusterMicrosoftLicensingConfigArgs{
					MssqlLicensing:   pulumi.String("DISABLED"),
					WindowsLicensing: pulumi.String("ENABLED"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Vmc = Pulumi.Vmc;

return await Deployment.RunAsync(() => 
{
    var cluster_1 = new Vmc.Cluster("cluster-1", new()
    {
        SddcId = vmc_sddc.Sddc_1.Id,
        NumHosts = @var.Num_hosts,
        MicrosoftLicensingConfigs = new[]
        {
            new Vmc.Inputs.ClusterMicrosoftLicensingConfigArgs
            {
                MssqlLicensing = "DISABLED",
                WindowsLicensing = "ENABLED",
            },
        },
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.vmc.Cluster;
import com.pulumi.vmc.ClusterArgs;
import com.pulumi.vmc.inputs.ClusterMicrosoftLicensingConfigArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var cluster_1 = new Cluster("cluster-1", ClusterArgs.builder()
            .sddcId(vmc_sddc.sddc_1().id())
            .numHosts(var_.num_hosts())
            .microsoftLicensingConfigs(ClusterMicrosoftLicensingConfigArgs.builder()
                .mssqlLicensing("DISABLED")
                .windowsLicensing("ENABLED")
                .build())
            .build());

    }
}
Copy
resources:
  cluster-1:
    type: vmc:Cluster
    properties:
      sddcId: ${vmc_sddc.sddc_1.id}
      numHosts: ${var.num_hosts}
      microsoftLicensingConfigs:
        - mssqlLicensing: DISABLED
          windowsLicensing: ENABLED
Copy

Modifying an Elastic DRS Policy

For a new cluster, elastic DRS uses the Default Storage Scale-Out policy, adding hosts only when storage utilization exceeds the threshold of 75%.

You can select a different policy if it provides better support for your workload VMs by updating the resource using the following arguments:

  • edrs_policy_type - (Optional) The EDRS policy type. This can either be cost, performance, storage-scaleup or rapid-scaleup. Defaults to storage-scaleup.

  • enable_edrs - (Optional) Enable EDRS.

  • min_hosts - (Optional) The minimum number of ESX hosts that the cluster can scale in to.

  • max_hosts - (Optional) The maximum number of ESX hosts that the cluster can scale out to.

Note: When the EDRS policy is disabled (i.e., enable_edrs = false) for performance, cost or rapid-scaleup, the policy type changes to the default, storage-scaleup.

Note: The EDRS policy properties can be modified only after a cluster has been created.

Example

import * as pulumi from "@pulumi/pulumi";
import * as vmc from "@pulumi/vmc";

const myAccounts = vmc.getConnectedAccounts({
    accountNumber: _var.aws_account_number,
});
const mySubnets = myAccounts.then(myAccounts => vmc.getCustomerSubnets({
    connectedAccountId: myAccounts.id,
    region: _var.sddc_region,
}));
const cluster_1 = new vmc.Cluster("cluster-1", {
    sddcId: vmc_sddc.sddc_1.id,
    numHosts: _var.num_hosts,
    edrsPolicyType: "cost",
    enableEdrs: true,
    minHosts: 3,
    maxHosts: 8,
});
Copy
import pulumi
import pulumi_vmc as vmc

my_accounts = vmc.get_connected_accounts(account_number=var["aws_account_number"])
my_subnets = vmc.get_customer_subnets(connected_account_id=my_accounts.id,
    region=var["sddc_region"])
cluster_1 = vmc.Cluster("cluster-1",
    sddc_id=vmc_sddc["sddc_1"]["id"],
    num_hosts=var["num_hosts"],
    edrs_policy_type="cost",
    enable_edrs=True,
    min_hosts=3,
    max_hosts=8)
Copy
package main

import (
	"github.com/pulumi/pulumi-terraform-provider/sdks/go/vmc/vmc"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		myAccounts, err := vmc.GetConnectedAccounts(ctx, &vmc.GetConnectedAccountsArgs{
			AccountNumber: _var.Aws_account_number,
		}, nil)
		if err != nil {
			return err
		}
		_, err = vmc.GetCustomerSubnets(ctx, &vmc.GetCustomerSubnetsArgs{
			ConnectedAccountId: pulumi.StringRef(myAccounts.Id),
			Region:             _var.Sddc_region,
		}, nil)
		if err != nil {
			return err
		}
		_, err = vmc.NewCluster(ctx, "cluster-1", &vmc.ClusterArgs{
			SddcId:         pulumi.Any(vmc_sddc.Sddc_1.Id),
			NumHosts:       pulumi.Any(_var.Num_hosts),
			EdrsPolicyType: pulumi.String("cost"),
			EnableEdrs:     pulumi.Bool(true),
			MinHosts:       pulumi.Float64(3),
			MaxHosts:       pulumi.Float64(8),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Vmc = Pulumi.Vmc;

return await Deployment.RunAsync(() => 
{
    var myAccounts = Vmc.GetConnectedAccounts.Invoke(new()
    {
        AccountNumber = @var.Aws_account_number,
    });

    var mySubnets = Vmc.GetCustomerSubnets.Invoke(new()
    {
        ConnectedAccountId = myAccounts.Apply(getConnectedAccountsResult => getConnectedAccountsResult.Id),
        Region = @var.Sddc_region,
    });

    var cluster_1 = new Vmc.Cluster("cluster-1", new()
    {
        SddcId = vmc_sddc.Sddc_1.Id,
        NumHosts = @var.Num_hosts,
        EdrsPolicyType = "cost",
        EnableEdrs = true,
        MinHosts = 3,
        MaxHosts = 8,
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.vmc.VmcFunctions;
import com.pulumi.vmc.inputs.GetConnectedAccountsArgs;
import com.pulumi.vmc.inputs.GetCustomerSubnetsArgs;
import com.pulumi.vmc.Cluster;
import com.pulumi.vmc.ClusterArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        final var myAccounts = VmcFunctions.getConnectedAccounts(GetConnectedAccountsArgs.builder()
            .accountNumber(var_.aws_account_number())
            .build());

        final var mySubnets = VmcFunctions.getCustomerSubnets(GetCustomerSubnetsArgs.builder()
            .connectedAccountId(myAccounts.applyValue(getConnectedAccountsResult -> getConnectedAccountsResult.id()))
            .region(var_.sddc_region())
            .build());

        var cluster_1 = new Cluster("cluster-1", ClusterArgs.builder()
            .sddcId(vmc_sddc.sddc_1().id())
            .numHosts(var_.num_hosts())
            .edrsPolicyType("cost")
            .enableEdrs(true)
            .minHosts(3)
            .maxHosts(8)
            .build());

    }
}
Copy
resources:
  cluster-1:
    type: vmc:Cluster
    properties:
      sddcId: ${vmc_sddc.sddc_1.id}
      numHosts: ${var.num_hosts}
      edrsPolicyType: cost
      enableEdrs: true
      minHosts: 3
      maxHosts: 8
variables:
  myAccounts:
    fn::invoke:
      function: vmc:getConnectedAccounts
      arguments:
        accountNumber: ${var.aws_account_number}
  mySubnets:
    fn::invoke:
      function: vmc:getCustomerSubnets
      arguments:
        connectedAccountId: ${myAccounts.id}
        region: ${var.sddc_region}
Copy

Create Cluster Resource

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

Constructor syntax

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

@overload
def Cluster(resource_name: str,
            opts: Optional[ResourceOptions] = None,
            num_hosts: Optional[float] = None,
            sddc_id: Optional[str] = None,
            cluster_id: Optional[str] = None,
            edrs_policy_type: Optional[str] = None,
            enable_edrs: Optional[bool] = None,
            host_cpu_cores_count: Optional[float] = None,
            host_instance_type: Optional[str] = None,
            max_hosts: Optional[float] = None,
            microsoft_licensing_configs: Optional[Sequence[ClusterMicrosoftLicensingConfigArgs]] = None,
            min_hosts: Optional[float] = None,
            timeouts: Optional[ClusterTimeoutsArgs] = None)
func NewCluster(ctx *Context, name string, args ClusterArgs, opts ...ResourceOption) (*Cluster, error)
public Cluster(string name, ClusterArgs args, CustomResourceOptions? opts = null)
public Cluster(String name, ClusterArgs args)
public Cluster(String name, ClusterArgs args, CustomResourceOptions options)
type: vmc:Cluster
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. ClusterArgs
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. ClusterArgs
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. ClusterArgs
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. ClusterArgs
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. ClusterArgs
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 clusterResource = new Vmc.Cluster("clusterResource", new()
{
    NumHosts = 0,
    SddcId = "string",
    ClusterId = "string",
    EdrsPolicyType = "string",
    EnableEdrs = false,
    HostCpuCoresCount = 0,
    HostInstanceType = "string",
    MaxHosts = 0,
    MicrosoftLicensingConfigs = new[]
    {
        new Vmc.Inputs.ClusterMicrosoftLicensingConfigArgs
        {
            AcademicLicense = false,
            MssqlLicensing = "string",
            WindowsLicensing = "string",
        },
    },
    MinHosts = 0,
    Timeouts = new Vmc.Inputs.ClusterTimeoutsArgs
    {
        Create = "string",
        Delete = "string",
        Update = "string",
    },
});
Copy
example, err := vmc.NewCluster(ctx, "clusterResource", &vmc.ClusterArgs{
	NumHosts:          pulumi.Float64(0),
	SddcId:            pulumi.String("string"),
	ClusterId:         pulumi.String("string"),
	EdrsPolicyType:    pulumi.String("string"),
	EnableEdrs:        pulumi.Bool(false),
	HostCpuCoresCount: pulumi.Float64(0),
	HostInstanceType:  pulumi.String("string"),
	MaxHosts:          pulumi.Float64(0),
	MicrosoftLicensingConfigs: vmc.ClusterMicrosoftLicensingConfigArray{
		&vmc.ClusterMicrosoftLicensingConfigArgs{
			AcademicLicense:  pulumi.Bool(false),
			MssqlLicensing:   pulumi.String("string"),
			WindowsLicensing: pulumi.String("string"),
		},
	},
	MinHosts: pulumi.Float64(0),
	Timeouts: &vmc.ClusterTimeoutsArgs{
		Create: pulumi.String("string"),
		Delete: pulumi.String("string"),
		Update: pulumi.String("string"),
	},
})
Copy
var clusterResource = new Cluster("clusterResource", ClusterArgs.builder()
    .numHosts(0)
    .sddcId("string")
    .clusterId("string")
    .edrsPolicyType("string")
    .enableEdrs(false)
    .hostCpuCoresCount(0)
    .hostInstanceType("string")
    .maxHosts(0)
    .microsoftLicensingConfigs(ClusterMicrosoftLicensingConfigArgs.builder()
        .academicLicense(false)
        .mssqlLicensing("string")
        .windowsLicensing("string")
        .build())
    .minHosts(0)
    .timeouts(ClusterTimeoutsArgs.builder()
        .create("string")
        .delete("string")
        .update("string")
        .build())
    .build());
Copy
cluster_resource = vmc.Cluster("clusterResource",
    num_hosts=0,
    sddc_id="string",
    cluster_id="string",
    edrs_policy_type="string",
    enable_edrs=False,
    host_cpu_cores_count=0,
    host_instance_type="string",
    max_hosts=0,
    microsoft_licensing_configs=[{
        "academic_license": False,
        "mssql_licensing": "string",
        "windows_licensing": "string",
    }],
    min_hosts=0,
    timeouts={
        "create": "string",
        "delete": "string",
        "update": "string",
    })
Copy
const clusterResource = new vmc.Cluster("clusterResource", {
    numHosts: 0,
    sddcId: "string",
    clusterId: "string",
    edrsPolicyType: "string",
    enableEdrs: false,
    hostCpuCoresCount: 0,
    hostInstanceType: "string",
    maxHosts: 0,
    microsoftLicensingConfigs: [{
        academicLicense: false,
        mssqlLicensing: "string",
        windowsLicensing: "string",
    }],
    minHosts: 0,
    timeouts: {
        create: "string",
        "delete": "string",
        update: "string",
    },
});
Copy
type: vmc:Cluster
properties:
    clusterId: string
    edrsPolicyType: string
    enableEdrs: false
    hostCpuCoresCount: 0
    hostInstanceType: string
    maxHosts: 0
    microsoftLicensingConfigs:
        - academicLicense: false
          mssqlLicensing: string
          windowsLicensing: string
    minHosts: 0
    numHosts: 0
    sddcId: string
    timeouts:
        create: string
        delete: string
        update: string
Copy

Cluster 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 Cluster resource accepts the following input properties:

NumHosts This property is required. double
Number of ESX hosts in the cluster. The number of ESX hosts must be between 2-16 hosts for a cluster.
SddcId This property is required. string
SDDC identifier.
ClusterId string
The cluster identifier.
EdrsPolicyType string
The EDRS policy type. This can either be 'cost', 'performance', 'storage-scaleup' or 'rapid-scaleup'. Default : storage-scaleup.
EnableEdrs bool
True if EDRS is enabled
HostCpuCoresCount double
Customize CPU cores on ESX hosts in a cluster. Specify number of cores to be enabled on ESX hosts in a cluster.
HostInstanceType string
The instance type for the ESX hosts added to this cluster. Allowed values include: I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Defaults to I3_METAL.
MaxHosts double
The maximum number of hosts that the cluster can scale out to.
MicrosoftLicensingConfigs List<ClusterMicrosoftLicensingConfig>
Indicates the desired licensing support, if any, of Microsoft software.
MinHosts double
The minimum number of hosts that the cluster can scale in to.
Timeouts ClusterTimeouts
NumHosts This property is required. float64
Number of ESX hosts in the cluster. The number of ESX hosts must be between 2-16 hosts for a cluster.
SddcId This property is required. string
SDDC identifier.
ClusterId string
The cluster identifier.
EdrsPolicyType string
The EDRS policy type. This can either be 'cost', 'performance', 'storage-scaleup' or 'rapid-scaleup'. Default : storage-scaleup.
EnableEdrs bool
True if EDRS is enabled
HostCpuCoresCount float64
Customize CPU cores on ESX hosts in a cluster. Specify number of cores to be enabled on ESX hosts in a cluster.
HostInstanceType string
The instance type for the ESX hosts added to this cluster. Allowed values include: I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Defaults to I3_METAL.
MaxHosts float64
The maximum number of hosts that the cluster can scale out to.
MicrosoftLicensingConfigs []ClusterMicrosoftLicensingConfigArgs
Indicates the desired licensing support, if any, of Microsoft software.
MinHosts float64
The minimum number of hosts that the cluster can scale in to.
Timeouts ClusterTimeoutsArgs
numHosts This property is required. Double
Number of ESX hosts in the cluster. The number of ESX hosts must be between 2-16 hosts for a cluster.
sddcId This property is required. String
SDDC identifier.
clusterId String
The cluster identifier.
edrsPolicyType String
The EDRS policy type. This can either be 'cost', 'performance', 'storage-scaleup' or 'rapid-scaleup'. Default : storage-scaleup.
enableEdrs Boolean
True if EDRS is enabled
hostCpuCoresCount Double
Customize CPU cores on ESX hosts in a cluster. Specify number of cores to be enabled on ESX hosts in a cluster.
hostInstanceType String
The instance type for the ESX hosts added to this cluster. Allowed values include: I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Defaults to I3_METAL.
maxHosts Double
The maximum number of hosts that the cluster can scale out to.
microsoftLicensingConfigs List<ClusterMicrosoftLicensingConfig>
Indicates the desired licensing support, if any, of Microsoft software.
minHosts Double
The minimum number of hosts that the cluster can scale in to.
timeouts ClusterTimeouts
numHosts This property is required. number
Number of ESX hosts in the cluster. The number of ESX hosts must be between 2-16 hosts for a cluster.
sddcId This property is required. string
SDDC identifier.
clusterId string
The cluster identifier.
edrsPolicyType string
The EDRS policy type. This can either be 'cost', 'performance', 'storage-scaleup' or 'rapid-scaleup'. Default : storage-scaleup.
enableEdrs boolean
True if EDRS is enabled
hostCpuCoresCount number
Customize CPU cores on ESX hosts in a cluster. Specify number of cores to be enabled on ESX hosts in a cluster.
hostInstanceType string
The instance type for the ESX hosts added to this cluster. Allowed values include: I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Defaults to I3_METAL.
maxHosts number
The maximum number of hosts that the cluster can scale out to.
microsoftLicensingConfigs ClusterMicrosoftLicensingConfig[]
Indicates the desired licensing support, if any, of Microsoft software.
minHosts number
The minimum number of hosts that the cluster can scale in to.
timeouts ClusterTimeouts
num_hosts This property is required. float
Number of ESX hosts in the cluster. The number of ESX hosts must be between 2-16 hosts for a cluster.
sddc_id This property is required. str
SDDC identifier.
cluster_id str
The cluster identifier.
edrs_policy_type str
The EDRS policy type. This can either be 'cost', 'performance', 'storage-scaleup' or 'rapid-scaleup'. Default : storage-scaleup.
enable_edrs bool
True if EDRS is enabled
host_cpu_cores_count float
Customize CPU cores on ESX hosts in a cluster. Specify number of cores to be enabled on ESX hosts in a cluster.
host_instance_type str
The instance type for the ESX hosts added to this cluster. Allowed values include: I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Defaults to I3_METAL.
max_hosts float
The maximum number of hosts that the cluster can scale out to.
microsoft_licensing_configs Sequence[ClusterMicrosoftLicensingConfigArgs]
Indicates the desired licensing support, if any, of Microsoft software.
min_hosts float
The minimum number of hosts that the cluster can scale in to.
timeouts ClusterTimeoutsArgs
numHosts This property is required. Number
Number of ESX hosts in the cluster. The number of ESX hosts must be between 2-16 hosts for a cluster.
sddcId This property is required. String
SDDC identifier.
clusterId String
The cluster identifier.
edrsPolicyType String
The EDRS policy type. This can either be 'cost', 'performance', 'storage-scaleup' or 'rapid-scaleup'. Default : storage-scaleup.
enableEdrs Boolean
True if EDRS is enabled
hostCpuCoresCount Number
Customize CPU cores on ESX hosts in a cluster. Specify number of cores to be enabled on ESX hosts in a cluster.
hostInstanceType String
The instance type for the ESX hosts added to this cluster. Allowed values include: I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Defaults to I3_METAL.
maxHosts Number
The maximum number of hosts that the cluster can scale out to.
microsoftLicensingConfigs List<Property Map>
Indicates the desired licensing support, if any, of Microsoft software.
minHosts Number
The minimum number of hosts that the cluster can scale in to.
timeouts Property Map

Outputs

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

ClusterInfo Dictionary<string, string>
Information about cluster such as name, state, host instance type, and cluster identifier.
Id string
The provider-assigned unique ID for this managed resource.
ClusterInfo map[string]string
Information about cluster such as name, state, host instance type, and cluster identifier.
Id string
The provider-assigned unique ID for this managed resource.
clusterInfo Map<String,String>
Information about cluster such as name, state, host instance type, and cluster identifier.
id String
The provider-assigned unique ID for this managed resource.
clusterInfo {[key: string]: string}
Information about cluster such as name, state, host instance type, and cluster identifier.
id string
The provider-assigned unique ID for this managed resource.
cluster_info Mapping[str, str]
Information about cluster such as name, state, host instance type, and cluster identifier.
id str
The provider-assigned unique ID for this managed resource.
clusterInfo Map<String>
Information about cluster such as name, state, host instance type, and cluster identifier.
id String
The provider-assigned unique ID for this managed resource.

Look up Existing Cluster Resource

Get an existing Cluster 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?: ClusterState, opts?: CustomResourceOptions): Cluster
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        cluster_id: Optional[str] = None,
        cluster_info: Optional[Mapping[str, str]] = None,
        edrs_policy_type: Optional[str] = None,
        enable_edrs: Optional[bool] = None,
        host_cpu_cores_count: Optional[float] = None,
        host_instance_type: Optional[str] = None,
        max_hosts: Optional[float] = None,
        microsoft_licensing_configs: Optional[Sequence[ClusterMicrosoftLicensingConfigArgs]] = None,
        min_hosts: Optional[float] = None,
        num_hosts: Optional[float] = None,
        sddc_id: Optional[str] = None,
        timeouts: Optional[ClusterTimeoutsArgs] = None) -> Cluster
func GetCluster(ctx *Context, name string, id IDInput, state *ClusterState, opts ...ResourceOption) (*Cluster, error)
public static Cluster Get(string name, Input<string> id, ClusterState? state, CustomResourceOptions? opts = null)
public static Cluster get(String name, Output<String> id, ClusterState state, CustomResourceOptions options)
resources:  _:    type: vmc:Cluster    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:
ClusterId string
The cluster identifier.
ClusterInfo Dictionary<string, string>
Information about cluster such as name, state, host instance type, and cluster identifier.
EdrsPolicyType string
The EDRS policy type. This can either be 'cost', 'performance', 'storage-scaleup' or 'rapid-scaleup'. Default : storage-scaleup.
EnableEdrs bool
True if EDRS is enabled
HostCpuCoresCount double
Customize CPU cores on ESX hosts in a cluster. Specify number of cores to be enabled on ESX hosts in a cluster.
HostInstanceType string
The instance type for the ESX hosts added to this cluster. Allowed values include: I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Defaults to I3_METAL.
MaxHosts double
The maximum number of hosts that the cluster can scale out to.
MicrosoftLicensingConfigs List<ClusterMicrosoftLicensingConfig>
Indicates the desired licensing support, if any, of Microsoft software.
MinHosts double
The minimum number of hosts that the cluster can scale in to.
NumHosts double
Number of ESX hosts in the cluster. The number of ESX hosts must be between 2-16 hosts for a cluster.
SddcId string
SDDC identifier.
Timeouts ClusterTimeouts
ClusterId string
The cluster identifier.
ClusterInfo map[string]string
Information about cluster such as name, state, host instance type, and cluster identifier.
EdrsPolicyType string
The EDRS policy type. This can either be 'cost', 'performance', 'storage-scaleup' or 'rapid-scaleup'. Default : storage-scaleup.
EnableEdrs bool
True if EDRS is enabled
HostCpuCoresCount float64
Customize CPU cores on ESX hosts in a cluster. Specify number of cores to be enabled on ESX hosts in a cluster.
HostInstanceType string
The instance type for the ESX hosts added to this cluster. Allowed values include: I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Defaults to I3_METAL.
MaxHosts float64
The maximum number of hosts that the cluster can scale out to.
MicrosoftLicensingConfigs []ClusterMicrosoftLicensingConfigArgs
Indicates the desired licensing support, if any, of Microsoft software.
MinHosts float64
The minimum number of hosts that the cluster can scale in to.
NumHosts float64
Number of ESX hosts in the cluster. The number of ESX hosts must be between 2-16 hosts for a cluster.
SddcId string
SDDC identifier.
Timeouts ClusterTimeoutsArgs
clusterId String
The cluster identifier.
clusterInfo Map<String,String>
Information about cluster such as name, state, host instance type, and cluster identifier.
edrsPolicyType String
The EDRS policy type. This can either be 'cost', 'performance', 'storage-scaleup' or 'rapid-scaleup'. Default : storage-scaleup.
enableEdrs Boolean
True if EDRS is enabled
hostCpuCoresCount Double
Customize CPU cores on ESX hosts in a cluster. Specify number of cores to be enabled on ESX hosts in a cluster.
hostInstanceType String
The instance type for the ESX hosts added to this cluster. Allowed values include: I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Defaults to I3_METAL.
maxHosts Double
The maximum number of hosts that the cluster can scale out to.
microsoftLicensingConfigs List<ClusterMicrosoftLicensingConfig>
Indicates the desired licensing support, if any, of Microsoft software.
minHosts Double
The minimum number of hosts that the cluster can scale in to.
numHosts Double
Number of ESX hosts in the cluster. The number of ESX hosts must be between 2-16 hosts for a cluster.
sddcId String
SDDC identifier.
timeouts ClusterTimeouts
clusterId string
The cluster identifier.
clusterInfo {[key: string]: string}
Information about cluster such as name, state, host instance type, and cluster identifier.
edrsPolicyType string
The EDRS policy type. This can either be 'cost', 'performance', 'storage-scaleup' or 'rapid-scaleup'. Default : storage-scaleup.
enableEdrs boolean
True if EDRS is enabled
hostCpuCoresCount number
Customize CPU cores on ESX hosts in a cluster. Specify number of cores to be enabled on ESX hosts in a cluster.
hostInstanceType string
The instance type for the ESX hosts added to this cluster. Allowed values include: I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Defaults to I3_METAL.
maxHosts number
The maximum number of hosts that the cluster can scale out to.
microsoftLicensingConfigs ClusterMicrosoftLicensingConfig[]
Indicates the desired licensing support, if any, of Microsoft software.
minHosts number
The minimum number of hosts that the cluster can scale in to.
numHosts number
Number of ESX hosts in the cluster. The number of ESX hosts must be between 2-16 hosts for a cluster.
sddcId string
SDDC identifier.
timeouts ClusterTimeouts
cluster_id str
The cluster identifier.
cluster_info Mapping[str, str]
Information about cluster such as name, state, host instance type, and cluster identifier.
edrs_policy_type str
The EDRS policy type. This can either be 'cost', 'performance', 'storage-scaleup' or 'rapid-scaleup'. Default : storage-scaleup.
enable_edrs bool
True if EDRS is enabled
host_cpu_cores_count float
Customize CPU cores on ESX hosts in a cluster. Specify number of cores to be enabled on ESX hosts in a cluster.
host_instance_type str
The instance type for the ESX hosts added to this cluster. Allowed values include: I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Defaults to I3_METAL.
max_hosts float
The maximum number of hosts that the cluster can scale out to.
microsoft_licensing_configs Sequence[ClusterMicrosoftLicensingConfigArgs]
Indicates the desired licensing support, if any, of Microsoft software.
min_hosts float
The minimum number of hosts that the cluster can scale in to.
num_hosts float
Number of ESX hosts in the cluster. The number of ESX hosts must be between 2-16 hosts for a cluster.
sddc_id str
SDDC identifier.
timeouts ClusterTimeoutsArgs
clusterId String
The cluster identifier.
clusterInfo Map<String>
Information about cluster such as name, state, host instance type, and cluster identifier.
edrsPolicyType String
The EDRS policy type. This can either be 'cost', 'performance', 'storage-scaleup' or 'rapid-scaleup'. Default : storage-scaleup.
enableEdrs Boolean
True if EDRS is enabled
hostCpuCoresCount Number
Customize CPU cores on ESX hosts in a cluster. Specify number of cores to be enabled on ESX hosts in a cluster.
hostInstanceType String
The instance type for the ESX hosts added to this cluster. Allowed values include: I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Defaults to I3_METAL.
maxHosts Number
The maximum number of hosts that the cluster can scale out to.
microsoftLicensingConfigs List<Property Map>
Indicates the desired licensing support, if any, of Microsoft software.
minHosts Number
The minimum number of hosts that the cluster can scale in to.
numHosts Number
Number of ESX hosts in the cluster. The number of ESX hosts must be between 2-16 hosts for a cluster.
sddcId String
SDDC identifier.
timeouts Property Map

Supporting Types

ClusterMicrosoftLicensingConfig
, ClusterMicrosoftLicensingConfigArgs

AcademicLicense bool
Flag to identify if it is Academic Standard or Commercial Standard License.
MssqlLicensing string
The status of MSSQL licensing for this SDDC’s clusters. Possible values : enabled, ENABLED, disabled, DISABLED.
WindowsLicensing string
The status of Windows licensing for this SDDC's clusters. Possible values : enabled, ENABLED, disabled, DISABLED.
AcademicLicense bool
Flag to identify if it is Academic Standard or Commercial Standard License.
MssqlLicensing string
The status of MSSQL licensing for this SDDC’s clusters. Possible values : enabled, ENABLED, disabled, DISABLED.
WindowsLicensing string
The status of Windows licensing for this SDDC's clusters. Possible values : enabled, ENABLED, disabled, DISABLED.
academicLicense Boolean
Flag to identify if it is Academic Standard or Commercial Standard License.
mssqlLicensing String
The status of MSSQL licensing for this SDDC’s clusters. Possible values : enabled, ENABLED, disabled, DISABLED.
windowsLicensing String
The status of Windows licensing for this SDDC's clusters. Possible values : enabled, ENABLED, disabled, DISABLED.
academicLicense boolean
Flag to identify if it is Academic Standard or Commercial Standard License.
mssqlLicensing string
The status of MSSQL licensing for this SDDC’s clusters. Possible values : enabled, ENABLED, disabled, DISABLED.
windowsLicensing string
The status of Windows licensing for this SDDC's clusters. Possible values : enabled, ENABLED, disabled, DISABLED.
academic_license bool
Flag to identify if it is Academic Standard or Commercial Standard License.
mssql_licensing str
The status of MSSQL licensing for this SDDC’s clusters. Possible values : enabled, ENABLED, disabled, DISABLED.
windows_licensing str
The status of Windows licensing for this SDDC's clusters. Possible values : enabled, ENABLED, disabled, DISABLED.
academicLicense Boolean
Flag to identify if it is Academic Standard or Commercial Standard License.
mssqlLicensing String
The status of MSSQL licensing for this SDDC’s clusters. Possible values : enabled, ENABLED, disabled, DISABLED.
windowsLicensing String
The status of Windows licensing for this SDDC's clusters. Possible values : enabled, ENABLED, disabled, DISABLED.

ClusterTimeouts
, ClusterTimeoutsArgs

Create string
Delete string
Update string
Create string
Delete string
Update string
create String
delete String
update String
create string
delete string
update string
create str
delete str
update str
create String
delete String
update String

Import

Import the using the id and sddc_id.

$ pulumi import vmc:index/cluster:Cluster cluster_1 id,sddc_id`
Copy

For example:

$ pulumi import vmc:index/cluster:Cluster cluster_1 afe7a0fd-3f0a-48b2-9ddb-0489c22732ae,45495963-d24d-469b-830a-9003bfe132b5`
Copy

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

Package Details

Repository
vmc vmware/terraform-provider-vmc
License
Notes
This Pulumi package is based on the vmc Terraform Provider.