1. Packages
  2. Vmc Provider
  3. API Docs
  4. Sddc
vmc 1.15.3 published on Monday, Apr 14, 2025 by vmware

vmc.Sddc

Explore with Pulumi AI

Provides a resource to provision a SingleAZ or MultiAZ SDDC.

Deploying a SingleAZ SDDC

For deployment_type SingleAZ,the sddc_type can be 1NODE with num_host argument set to 1 for a single node SDDC. The sddc_type for 2Node (num_host = 2) and 3 or more nodes is “DEFAULT”.

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 sddc1 = new vmc.Sddc("sddc1", {
    sddcName: _var.sddc_name,
    vpcCidr: _var.vpc_cidr,
    numHost: 1,
    providerType: "AWS",
    region: mySubnets.then(mySubnets => mySubnets.region),
    vxlanSubnet: _var.vxlan_subnet,
    delayAccountLink: false,
    skipCreatingVxlan: false,
    ssoDomain: "vmc.local",
    deploymentType: "SingleAZ",
    sddcType: "1NODE",
    accountLinkSddcConfigs: [{
        customerSubnetIds: [mySubnets.then(mySubnets => mySubnets.ids?.[0])],
        connectedAccountId: myAccounts.then(myAccounts => myAccounts.id),
    }],
    microsoftLicensingConfigs: [{
        mssqlLicensing: "ENABLED",
        windowsLicensing: "DISABLED",
    }],
});
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"])
sddc1 = vmc.Sddc("sddc1",
    sddc_name=var["sddc_name"],
    vpc_cidr=var["vpc_cidr"],
    num_host=1,
    provider_type="AWS",
    region=my_subnets.region,
    vxlan_subnet=var["vxlan_subnet"],
    delay_account_link=False,
    skip_creating_vxlan=False,
    sso_domain="vmc.local",
    deployment_type="SingleAZ",
    sddc_type="1NODE",
    account_link_sddc_configs=[{
        "customer_subnet_ids": [my_subnets.ids[0]],
        "connected_account_id": my_accounts.id,
    }],
    microsoft_licensing_configs=[{
        "mssql_licensing": "ENABLED",
        "windows_licensing": "DISABLED",
    }])
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
		}
		mySubnets, err := vmc.GetCustomerSubnets(ctx, &vmc.GetCustomerSubnetsArgs{
			ConnectedAccountId: pulumi.StringRef(myAccounts.Id),
			Region:             _var.Sddc_region,
		}, nil)
		if err != nil {
			return err
		}
		_, err = vmc.NewSddc(ctx, "sddc1", &vmc.SddcArgs{
			SddcName:          pulumi.Any(_var.Sddc_name),
			VpcCidr:           pulumi.Any(_var.Vpc_cidr),
			NumHost:           pulumi.Float64(1),
			ProviderType:      pulumi.String("AWS"),
			Region:            pulumi.String(mySubnets.Region),
			VxlanSubnet:       pulumi.Any(_var.Vxlan_subnet),
			DelayAccountLink:  pulumi.Bool(false),
			SkipCreatingVxlan: pulumi.Bool(false),
			SsoDomain:         pulumi.String("vmc.local"),
			DeploymentType:    pulumi.String("SingleAZ"),
			SddcType:          pulumi.String("1NODE"),
			AccountLinkSddcConfigs: vmc.SddcAccountLinkSddcConfigArray{
				&vmc.SddcAccountLinkSddcConfigArgs{
					CustomerSubnetIds: pulumi.StringArray{
						pulumi.String(mySubnets.Ids[0]),
					},
					ConnectedAccountId: pulumi.String(myAccounts.Id),
				},
			},
			MicrosoftLicensingConfigs: vmc.SddcMicrosoftLicensingConfigArray{
				&vmc.SddcMicrosoftLicensingConfigArgs{
					MssqlLicensing:   pulumi.String("ENABLED"),
					WindowsLicensing: pulumi.String("DISABLED"),
				},
			},
		})
		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 sddc1 = new Vmc.Sddc("sddc1", new()
    {
        SddcName = @var.Sddc_name,
        VpcCidr = @var.Vpc_cidr,
        NumHost = 1,
        ProviderType = "AWS",
        Region = mySubnets.Apply(getCustomerSubnetsResult => getCustomerSubnetsResult.Region),
        VxlanSubnet = @var.Vxlan_subnet,
        DelayAccountLink = false,
        SkipCreatingVxlan = false,
        SsoDomain = "vmc.local",
        DeploymentType = "SingleAZ",
        SddcType = "1NODE",
        AccountLinkSddcConfigs = new[]
        {
            new Vmc.Inputs.SddcAccountLinkSddcConfigArgs
            {
                CustomerSubnetIds = new[]
                {
                    mySubnets.Apply(getCustomerSubnetsResult => getCustomerSubnetsResult.Ids[0]),
                },
                ConnectedAccountId = myAccounts.Apply(getConnectedAccountsResult => getConnectedAccountsResult.Id),
            },
        },
        MicrosoftLicensingConfigs = new[]
        {
            new Vmc.Inputs.SddcMicrosoftLicensingConfigArgs
            {
                MssqlLicensing = "ENABLED",
                WindowsLicensing = "DISABLED",
            },
        },
    });

});
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.Sddc;
import com.pulumi.vmc.SddcArgs;
import com.pulumi.vmc.inputs.SddcAccountLinkSddcConfigArgs;
import com.pulumi.vmc.inputs.SddcMicrosoftLicensingConfigArgs;
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 sddc1 = new Sddc("sddc1", SddcArgs.builder()
            .sddcName(var_.sddc_name())
            .vpcCidr(var_.vpc_cidr())
            .numHost(1)
            .providerType("AWS")
            .region(mySubnets.applyValue(getCustomerSubnetsResult -> getCustomerSubnetsResult.region()))
            .vxlanSubnet(var_.vxlan_subnet())
            .delayAccountLink(false)
            .skipCreatingVxlan(false)
            .ssoDomain("vmc.local")
            .deploymentType("SingleAZ")
            .sddcType("1NODE")
            .accountLinkSddcConfigs(SddcAccountLinkSddcConfigArgs.builder()
                .customerSubnetIds(mySubnets.applyValue(getCustomerSubnetsResult -> getCustomerSubnetsResult.ids()[0]))
                .connectedAccountId(myAccounts.applyValue(getConnectedAccountsResult -> getConnectedAccountsResult.id()))
                .build())
            .microsoftLicensingConfigs(SddcMicrosoftLicensingConfigArgs.builder()
                .mssqlLicensing("ENABLED")
                .windowsLicensing("DISABLED")
                .build())
            .build());

    }
}
Copy
resources:
  sddc1:
    type: vmc:Sddc
    properties:
      sddcName: ${var.sddc_name}
      vpcCidr: ${var.vpc_cidr}
      numHost: 1
      providerType: AWS
      region: ${mySubnets.region}
      vxlanSubnet: ${var.vxlan_subnet}
      delayAccountLink: false
      skipCreatingVxlan: false
      ssoDomain: vmc.local
      deploymentType: SingleAZ
      sddcType: 1NODE
      accountLinkSddcConfigs:
        - customerSubnetIds:
            - ${mySubnets.ids[0]}
          connectedAccountId: ${myAccounts.id}
      microsoftLicensingConfigs:
        - mssqlLicensing: ENABLED
          windowsLicensing: DISABLED
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

Modifying an Elastic DRS policy for vmc.Sddc

In a new SDDC, elastic DRS uses the Default Storage Scale-Out policy, adding hosts only when storage utilization exceeds the threshold of 75%. For two-host SDDCs, only the Default Storage Scale-Out policy is available. Elastic DRS is not supported for Single host (1Node) SDDCs.

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

  • edrs_policy_type - (Optional) The EDRS policy type. This can either be ‘cost’, ‘performance’, ‘storage-scaleup’ or ‘rapid-scaleup’. Default : storage-scaleup.

  • enable_edrs - (Optional) True if EDRS is enabled.

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

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

When the EDRS policy type is disabled i.e: enable_edrs is set to false for ‘performance’, ‘cost’ or ‘rapid-scaleup’, the EDRS policy type changes to the default storage-scaleup.

NOTE: The EDRS policy properties can be modified only after an SDDC has been deployed first.

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 sddc1 = new vmc.Sddc("sddc1", {
    sddcName: _var.sddc_name,
    vpcCidr: _var.vpc_cidr,
    numHost: _var.sddc_num_hosts,
    providerType: "AWS",
    region: mySubnets.then(mySubnets => mySubnets.region),
    vxlanSubnet: _var.vxlan_subnet,
    delayAccountLink: false,
    skipCreatingVxlan: false,
    ssoDomain: "vmc.local",
    deploymentType: "SingleAZ",
    accountLinkSddcConfigs: [{
        customerSubnetIds: [mySubnets.then(mySubnets => mySubnets.ids?.[0])],
        connectedAccountId: myAccounts.then(myAccounts => myAccounts.id),
    }],
    microsoftLicensingConfigs: [{
        mssqlLicensing: "ENABLED",
        windowsLicensing: "DISABLED",
    }],
    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"])
sddc1 = vmc.Sddc("sddc1",
    sddc_name=var["sddc_name"],
    vpc_cidr=var["vpc_cidr"],
    num_host=var["sddc_num_hosts"],
    provider_type="AWS",
    region=my_subnets.region,
    vxlan_subnet=var["vxlan_subnet"],
    delay_account_link=False,
    skip_creating_vxlan=False,
    sso_domain="vmc.local",
    deployment_type="SingleAZ",
    account_link_sddc_configs=[{
        "customer_subnet_ids": [my_subnets.ids[0]],
        "connected_account_id": my_accounts.id,
    }],
    microsoft_licensing_configs=[{
        "mssql_licensing": "ENABLED",
        "windows_licensing": "DISABLED",
    }],
    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
		}
		mySubnets, err := vmc.GetCustomerSubnets(ctx, &vmc.GetCustomerSubnetsArgs{
			ConnectedAccountId: pulumi.StringRef(myAccounts.Id),
			Region:             _var.Sddc_region,
		}, nil)
		if err != nil {
			return err
		}
		_, err = vmc.NewSddc(ctx, "sddc1", &vmc.SddcArgs{
			SddcName:          pulumi.Any(_var.Sddc_name),
			VpcCidr:           pulumi.Any(_var.Vpc_cidr),
			NumHost:           pulumi.Any(_var.Sddc_num_hosts),
			ProviderType:      pulumi.String("AWS"),
			Region:            pulumi.String(mySubnets.Region),
			VxlanSubnet:       pulumi.Any(_var.Vxlan_subnet),
			DelayAccountLink:  pulumi.Bool(false),
			SkipCreatingVxlan: pulumi.Bool(false),
			SsoDomain:         pulumi.String("vmc.local"),
			DeploymentType:    pulumi.String("SingleAZ"),
			AccountLinkSddcConfigs: vmc.SddcAccountLinkSddcConfigArray{
				&vmc.SddcAccountLinkSddcConfigArgs{
					CustomerSubnetIds: pulumi.StringArray{
						pulumi.String(mySubnets.Ids[0]),
					},
					ConnectedAccountId: pulumi.String(myAccounts.Id),
				},
			},
			MicrosoftLicensingConfigs: vmc.SddcMicrosoftLicensingConfigArray{
				&vmc.SddcMicrosoftLicensingConfigArgs{
					MssqlLicensing:   pulumi.String("ENABLED"),
					WindowsLicensing: pulumi.String("DISABLED"),
				},
			},
			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 sddc1 = new Vmc.Sddc("sddc1", new()
    {
        SddcName = @var.Sddc_name,
        VpcCidr = @var.Vpc_cidr,
        NumHost = @var.Sddc_num_hosts,
        ProviderType = "AWS",
        Region = mySubnets.Apply(getCustomerSubnetsResult => getCustomerSubnetsResult.Region),
        VxlanSubnet = @var.Vxlan_subnet,
        DelayAccountLink = false,
        SkipCreatingVxlan = false,
        SsoDomain = "vmc.local",
        DeploymentType = "SingleAZ",
        AccountLinkSddcConfigs = new[]
        {
            new Vmc.Inputs.SddcAccountLinkSddcConfigArgs
            {
                CustomerSubnetIds = new[]
                {
                    mySubnets.Apply(getCustomerSubnetsResult => getCustomerSubnetsResult.Ids[0]),
                },
                ConnectedAccountId = myAccounts.Apply(getConnectedAccountsResult => getConnectedAccountsResult.Id),
            },
        },
        MicrosoftLicensingConfigs = new[]
        {
            new Vmc.Inputs.SddcMicrosoftLicensingConfigArgs
            {
                MssqlLicensing = "ENABLED",
                WindowsLicensing = "DISABLED",
            },
        },
        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.Sddc;
import com.pulumi.vmc.SddcArgs;
import com.pulumi.vmc.inputs.SddcAccountLinkSddcConfigArgs;
import com.pulumi.vmc.inputs.SddcMicrosoftLicensingConfigArgs;
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 sddc1 = new Sddc("sddc1", SddcArgs.builder()
            .sddcName(var_.sddc_name())
            .vpcCidr(var_.vpc_cidr())
            .numHost(var_.sddc_num_hosts())
            .providerType("AWS")
            .region(mySubnets.applyValue(getCustomerSubnetsResult -> getCustomerSubnetsResult.region()))
            .vxlanSubnet(var_.vxlan_subnet())
            .delayAccountLink(false)
            .skipCreatingVxlan(false)
            .ssoDomain("vmc.local")
            .deploymentType("SingleAZ")
            .accountLinkSddcConfigs(SddcAccountLinkSddcConfigArgs.builder()
                .customerSubnetIds(mySubnets.applyValue(getCustomerSubnetsResult -> getCustomerSubnetsResult.ids()[0]))
                .connectedAccountId(myAccounts.applyValue(getConnectedAccountsResult -> getConnectedAccountsResult.id()))
                .build())
            .microsoftLicensingConfigs(SddcMicrosoftLicensingConfigArgs.builder()
                .mssqlLicensing("ENABLED")
                .windowsLicensing("DISABLED")
                .build())
            .edrsPolicyType("cost")
            .enableEdrs(true)
            .minHosts(3)
            .maxHosts(8)
            .build());

    }
}
Copy
resources:
  sddc1:
    type: vmc:Sddc
    properties:
      sddcName: ${var.sddc_name}
      vpcCidr: ${var.vpc_cidr}
      numHost: ${var.sddc_num_hosts}
      providerType: AWS
      region: ${mySubnets.region}
      vxlanSubnet: ${var.vxlan_subnet}
      delayAccountLink: false
      skipCreatingVxlan: false
      ssoDomain: vmc.local
      deploymentType: SingleAZ
      accountLinkSddcConfigs:
        - customerSubnetIds:
            - ${mySubnets.ids[0]}
          connectedAccountId: ${myAccounts.id}
      microsoftLicensingConfigs:
        - mssqlLicensing: ENABLED
          windowsLicensing: DISABLED
      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

Deploying a MultiAZ SDDC (Stretched cluster)

For deployment type “MultiAZ”, a single SDDC can be deployed across two AWS availability zones.

When enabled the default number of ESXi hosts supported in a MultiAZ SDDC is 6. Additional hosts can be added later but must be done in pairs across AWS availability zones.The MultiAZ SDDC requires an AWS VPC with two subnets, one subnet per availability zone.

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 sddc1 = new vmc.Sddc("sddc1", {
    sddcName: _var.sddc_name,
    vpcCidr: _var.vpc_cidr,
    numHost: 6,
    providerType: _var.provider_type,
    region: mySubnets.then(mySubnets => mySubnets.region),
    vxlanSubnet: _var.vxlan_subnet,
    delayAccountLink: false,
    skipCreatingVxlan: false,
    ssoDomain: "vmc.local",
    deploymentType: "MultiAZ",
    hostInstanceType: _var.host_instance_type,
    accountLinkSddcConfigs: [{
        customerSubnetIds: [
            mySubnets.then(mySubnets => mySubnets.ids?.[0]),
            mySubnets.then(mySubnets => mySubnets.ids?.[1]),
        ],
        connectedAccountId: myAccounts.then(myAccounts => myAccounts.id),
    }],
    microsoftLicensingConfigs: [{
        mssqlLicensing: "ENABLED",
        windowsLicensing: "DISABLED",
    }],
});
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"])
sddc1 = vmc.Sddc("sddc1",
    sddc_name=var["sddc_name"],
    vpc_cidr=var["vpc_cidr"],
    num_host=6,
    provider_type=var["provider_type"],
    region=my_subnets.region,
    vxlan_subnet=var["vxlan_subnet"],
    delay_account_link=False,
    skip_creating_vxlan=False,
    sso_domain="vmc.local",
    deployment_type="MultiAZ",
    host_instance_type=var["host_instance_type"],
    account_link_sddc_configs=[{
        "customer_subnet_ids": [
            my_subnets.ids[0],
            my_subnets.ids[1],
        ],
        "connected_account_id": my_accounts.id,
    }],
    microsoft_licensing_configs=[{
        "mssql_licensing": "ENABLED",
        "windows_licensing": "DISABLED",
    }])
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
		}
		mySubnets, err := vmc.GetCustomerSubnets(ctx, &vmc.GetCustomerSubnetsArgs{
			ConnectedAccountId: pulumi.StringRef(myAccounts.Id),
			Region:             _var.Sddc_region,
		}, nil)
		if err != nil {
			return err
		}
		_, err = vmc.NewSddc(ctx, "sddc1", &vmc.SddcArgs{
			SddcName:          pulumi.Any(_var.Sddc_name),
			VpcCidr:           pulumi.Any(_var.Vpc_cidr),
			NumHost:           pulumi.Float64(6),
			ProviderType:      pulumi.Any(_var.Provider_type),
			Region:            pulumi.String(mySubnets.Region),
			VxlanSubnet:       pulumi.Any(_var.Vxlan_subnet),
			DelayAccountLink:  pulumi.Bool(false),
			SkipCreatingVxlan: pulumi.Bool(false),
			SsoDomain:         pulumi.String("vmc.local"),
			DeploymentType:    pulumi.String("MultiAZ"),
			HostInstanceType:  pulumi.Any(_var.Host_instance_type),
			AccountLinkSddcConfigs: vmc.SddcAccountLinkSddcConfigArray{
				&vmc.SddcAccountLinkSddcConfigArgs{
					CustomerSubnetIds: pulumi.StringArray{
						pulumi.String(mySubnets.Ids[0]),
						pulumi.String(mySubnets.Ids[1]),
					},
					ConnectedAccountId: pulumi.String(myAccounts.Id),
				},
			},
			MicrosoftLicensingConfigs: vmc.SddcMicrosoftLicensingConfigArray{
				&vmc.SddcMicrosoftLicensingConfigArgs{
					MssqlLicensing:   pulumi.String("ENABLED"),
					WindowsLicensing: pulumi.String("DISABLED"),
				},
			},
		})
		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 sddc1 = new Vmc.Sddc("sddc1", new()
    {
        SddcName = @var.Sddc_name,
        VpcCidr = @var.Vpc_cidr,
        NumHost = 6,
        ProviderType = @var.Provider_type,
        Region = mySubnets.Apply(getCustomerSubnetsResult => getCustomerSubnetsResult.Region),
        VxlanSubnet = @var.Vxlan_subnet,
        DelayAccountLink = false,
        SkipCreatingVxlan = false,
        SsoDomain = "vmc.local",
        DeploymentType = "MultiAZ",
        HostInstanceType = @var.Host_instance_type,
        AccountLinkSddcConfigs = new[]
        {
            new Vmc.Inputs.SddcAccountLinkSddcConfigArgs
            {
                CustomerSubnetIds = new[]
                {
                    mySubnets.Apply(getCustomerSubnetsResult => getCustomerSubnetsResult.Ids[0]),
                    mySubnets.Apply(getCustomerSubnetsResult => getCustomerSubnetsResult.Ids[1]),
                },
                ConnectedAccountId = myAccounts.Apply(getConnectedAccountsResult => getConnectedAccountsResult.Id),
            },
        },
        MicrosoftLicensingConfigs = new[]
        {
            new Vmc.Inputs.SddcMicrosoftLicensingConfigArgs
            {
                MssqlLicensing = "ENABLED",
                WindowsLicensing = "DISABLED",
            },
        },
    });

});
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.Sddc;
import com.pulumi.vmc.SddcArgs;
import com.pulumi.vmc.inputs.SddcAccountLinkSddcConfigArgs;
import com.pulumi.vmc.inputs.SddcMicrosoftLicensingConfigArgs;
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 sddc1 = new Sddc("sddc1", SddcArgs.builder()
            .sddcName(var_.sddc_name())
            .vpcCidr(var_.vpc_cidr())
            .numHost(6)
            .providerType(var_.provider_type())
            .region(mySubnets.applyValue(getCustomerSubnetsResult -> getCustomerSubnetsResult.region()))
            .vxlanSubnet(var_.vxlan_subnet())
            .delayAccountLink(false)
            .skipCreatingVxlan(false)
            .ssoDomain("vmc.local")
            .deploymentType("MultiAZ")
            .hostInstanceType(var_.host_instance_type())
            .accountLinkSddcConfigs(SddcAccountLinkSddcConfigArgs.builder()
                .customerSubnetIds(                
                    mySubnets.applyValue(getCustomerSubnetsResult -> getCustomerSubnetsResult.ids()[0]),
                    mySubnets.applyValue(getCustomerSubnetsResult -> getCustomerSubnetsResult.ids()[1]))
                .connectedAccountId(myAccounts.applyValue(getConnectedAccountsResult -> getConnectedAccountsResult.id()))
                .build())
            .microsoftLicensingConfigs(SddcMicrosoftLicensingConfigArgs.builder()
                .mssqlLicensing("ENABLED")
                .windowsLicensing("DISABLED")
                .build())
            .build());

    }
}
Copy
resources:
  sddc1:
    type: vmc:Sddc
    properties:
      sddcName: ${var.sddc_name}
      vpcCidr: ${var.vpc_cidr}
      numHost: 6
      providerType: ${var.provider_type}
      region: ${mySubnets.region}
      vxlanSubnet: ${var.vxlan_subnet}
      delayAccountLink: false
      skipCreatingVxlan: false
      ssoDomain: vmc.local
      deploymentType: MultiAZ
      hostInstanceType: ${var.host_instance_type}
      accountLinkSddcConfigs:
        - customerSubnetIds:
            - ${mySubnets.ids[0]}
            - ${mySubnets.ids[1]}
          connectedAccountId: ${myAccounts.id}
      microsoftLicensingConfigs:
        - mssqlLicensing: ENABLED
          windowsLicensing: DISABLED
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 Sddc Resource

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

Constructor syntax

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

@overload
def Sddc(resource_name: str,
         opts: Optional[ResourceOptions] = None,
         num_host: Optional[float] = None,
         sddc_name: Optional[str] = None,
         region: Optional[str] = None,
         max_hosts: Optional[float] = None,
         nsxt_ui: Optional[bool] = None,
         host_instance_type: Optional[str] = None,
         intranet_mtu_uplink: Optional[float] = None,
         account_link_sddc_configs: Optional[Sequence[SddcAccountLinkSddcConfigArgs]] = None,
         microsoft_licensing_configs: Optional[Sequence[SddcMicrosoftLicensingConfigArgs]] = None,
         min_hosts: Optional[float] = None,
         nsxt_cloudadmin: Optional[str] = None,
         nsxt_cloudadmin_password: Optional[str] = None,
         nsxt_cloudaudit: Optional[str] = None,
         nsxt_cloudaudit_password: Optional[str] = None,
         nsxt_private_ip: Optional[str] = None,
         nsxt_private_url: Optional[str] = None,
         enable_edrs: Optional[bool] = None,
         edrs_policy_type: Optional[str] = None,
         provider_type: Optional[str] = None,
         deployment_type: Optional[str] = None,
         sddc_id: Optional[str] = None,
         delay_account_link: Optional[bool] = None,
         sddc_template_id: Optional[str] = None,
         sddc_type: Optional[str] = None,
         size: Optional[str] = None,
         skip_creating_vxlan: Optional[bool] = None,
         sso_domain: Optional[str] = None,
         timeouts: Optional[SddcTimeoutsArgs] = None,
         vpc_cidr: Optional[str] = None,
         vxlan_subnet: Optional[str] = None)
func NewSddc(ctx *Context, name string, args SddcArgs, opts ...ResourceOption) (*Sddc, error)
public Sddc(string name, SddcArgs args, CustomResourceOptions? opts = null)
public Sddc(String name, SddcArgs args)
public Sddc(String name, SddcArgs args, CustomResourceOptions options)
type: vmc:Sddc
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. SddcArgs
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. SddcArgs
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. SddcArgs
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. SddcArgs
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. SddcArgs
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 sddcResource = new Vmc.Sddc("sddcResource", new()
{
    NumHost = 0,
    SddcName = "string",
    Region = "string",
    MaxHosts = 0,
    NsxtUi = false,
    HostInstanceType = "string",
    IntranetMtuUplink = 0,
    AccountLinkSddcConfigs = new[]
    {
        new Vmc.Inputs.SddcAccountLinkSddcConfigArgs
        {
            ConnectedAccountId = "string",
            CustomerSubnetIds = new[]
            {
                "string",
            },
        },
    },
    MicrosoftLicensingConfigs = new[]
    {
        new Vmc.Inputs.SddcMicrosoftLicensingConfigArgs
        {
            AcademicLicense = false,
            MssqlLicensing = "string",
            WindowsLicensing = "string",
        },
    },
    MinHosts = 0,
    NsxtCloudadmin = "string",
    NsxtCloudadminPassword = "string",
    NsxtCloudaudit = "string",
    NsxtCloudauditPassword = "string",
    NsxtPrivateIp = "string",
    NsxtPrivateUrl = "string",
    EnableEdrs = false,
    EdrsPolicyType = "string",
    ProviderType = "string",
    DeploymentType = "string",
    SddcId = "string",
    DelayAccountLink = false,
    SddcTemplateId = "string",
    SddcType = "string",
    Size = "string",
    SkipCreatingVxlan = false,
    SsoDomain = "string",
    Timeouts = new Vmc.Inputs.SddcTimeoutsArgs
    {
        Create = "string",
        Delete = "string",
        Update = "string",
    },
    VpcCidr = "string",
    VxlanSubnet = "string",
});
Copy
example, err := vmc.NewSddc(ctx, "sddcResource", &vmc.SddcArgs{
NumHost: pulumi.Float64(0),
SddcName: pulumi.String("string"),
Region: pulumi.String("string"),
MaxHosts: pulumi.Float64(0),
NsxtUi: pulumi.Bool(false),
HostInstanceType: pulumi.String("string"),
IntranetMtuUplink: pulumi.Float64(0),
AccountLinkSddcConfigs: .SddcAccountLinkSddcConfigArray{
&.SddcAccountLinkSddcConfigArgs{
ConnectedAccountId: pulumi.String("string"),
CustomerSubnetIds: pulumi.StringArray{
pulumi.String("string"),
},
},
},
MicrosoftLicensingConfigs: .SddcMicrosoftLicensingConfigArray{
&.SddcMicrosoftLicensingConfigArgs{
AcademicLicense: pulumi.Bool(false),
MssqlLicensing: pulumi.String("string"),
WindowsLicensing: pulumi.String("string"),
},
},
MinHosts: pulumi.Float64(0),
NsxtCloudadmin: pulumi.String("string"),
NsxtCloudadminPassword: pulumi.String("string"),
NsxtCloudaudit: pulumi.String("string"),
NsxtCloudauditPassword: pulumi.String("string"),
NsxtPrivateIp: pulumi.String("string"),
NsxtPrivateUrl: pulumi.String("string"),
EnableEdrs: pulumi.Bool(false),
EdrsPolicyType: pulumi.String("string"),
ProviderType: pulumi.String("string"),
DeploymentType: pulumi.String("string"),
SddcId: pulumi.String("string"),
DelayAccountLink: pulumi.Bool(false),
SddcTemplateId: pulumi.String("string"),
SddcType: pulumi.String("string"),
Size: pulumi.String("string"),
SkipCreatingVxlan: pulumi.Bool(false),
SsoDomain: pulumi.String("string"),
Timeouts: &.SddcTimeoutsArgs{
Create: pulumi.String("string"),
Delete: pulumi.String("string"),
Update: pulumi.String("string"),
},
VpcCidr: pulumi.String("string"),
VxlanSubnet: pulumi.String("string"),
})
Copy
var sddcResource = new Sddc("sddcResource", SddcArgs.builder()
    .numHost(0)
    .sddcName("string")
    .region("string")
    .maxHosts(0)
    .nsxtUi(false)
    .hostInstanceType("string")
    .intranetMtuUplink(0)
    .accountLinkSddcConfigs(SddcAccountLinkSddcConfigArgs.builder()
        .connectedAccountId("string")
        .customerSubnetIds("string")
        .build())
    .microsoftLicensingConfigs(SddcMicrosoftLicensingConfigArgs.builder()
        .academicLicense(false)
        .mssqlLicensing("string")
        .windowsLicensing("string")
        .build())
    .minHosts(0)
    .nsxtCloudadmin("string")
    .nsxtCloudadminPassword("string")
    .nsxtCloudaudit("string")
    .nsxtCloudauditPassword("string")
    .nsxtPrivateIp("string")
    .nsxtPrivateUrl("string")
    .enableEdrs(false)
    .edrsPolicyType("string")
    .providerType("string")
    .deploymentType("string")
    .sddcId("string")
    .delayAccountLink(false)
    .sddcTemplateId("string")
    .sddcType("string")
    .size("string")
    .skipCreatingVxlan(false)
    .ssoDomain("string")
    .timeouts(SddcTimeoutsArgs.builder()
        .create("string")
        .delete("string")
        .update("string")
        .build())
    .vpcCidr("string")
    .vxlanSubnet("string")
    .build());
Copy
sddc_resource = vmc.Sddc("sddcResource",
    num_host=0,
    sddc_name="string",
    region="string",
    max_hosts=0,
    nsxt_ui=False,
    host_instance_type="string",
    intranet_mtu_uplink=0,
    account_link_sddc_configs=[{
        "connected_account_id": "string",
        "customer_subnet_ids": ["string"],
    }],
    microsoft_licensing_configs=[{
        "academic_license": False,
        "mssql_licensing": "string",
        "windows_licensing": "string",
    }],
    min_hosts=0,
    nsxt_cloudadmin="string",
    nsxt_cloudadmin_password="string",
    nsxt_cloudaudit="string",
    nsxt_cloudaudit_password="string",
    nsxt_private_ip="string",
    nsxt_private_url="string",
    enable_edrs=False,
    edrs_policy_type="string",
    provider_type="string",
    deployment_type="string",
    sddc_id="string",
    delay_account_link=False,
    sddc_template_id="string",
    sddc_type="string",
    size="string",
    skip_creating_vxlan=False,
    sso_domain="string",
    timeouts={
        "create": "string",
        "delete": "string",
        "update": "string",
    },
    vpc_cidr="string",
    vxlan_subnet="string")
Copy
const sddcResource = new vmc.Sddc("sddcResource", {
    numHost: 0,
    sddcName: "string",
    region: "string",
    maxHosts: 0,
    nsxtUi: false,
    hostInstanceType: "string",
    intranetMtuUplink: 0,
    accountLinkSddcConfigs: [{
        connectedAccountId: "string",
        customerSubnetIds: ["string"],
    }],
    microsoftLicensingConfigs: [{
        academicLicense: false,
        mssqlLicensing: "string",
        windowsLicensing: "string",
    }],
    minHosts: 0,
    nsxtCloudadmin: "string",
    nsxtCloudadminPassword: "string",
    nsxtCloudaudit: "string",
    nsxtCloudauditPassword: "string",
    nsxtPrivateIp: "string",
    nsxtPrivateUrl: "string",
    enableEdrs: false,
    edrsPolicyType: "string",
    providerType: "string",
    deploymentType: "string",
    sddcId: "string",
    delayAccountLink: false,
    sddcTemplateId: "string",
    sddcType: "string",
    size: "string",
    skipCreatingVxlan: false,
    ssoDomain: "string",
    timeouts: {
        create: "string",
        "delete": "string",
        update: "string",
    },
    vpcCidr: "string",
    vxlanSubnet: "string",
});
Copy
type: vmc:Sddc
properties:
    accountLinkSddcConfigs:
        - connectedAccountId: string
          customerSubnetIds:
            - string
    delayAccountLink: false
    deploymentType: string
    edrsPolicyType: string
    enableEdrs: false
    hostInstanceType: string
    intranetMtuUplink: 0
    maxHosts: 0
    microsoftLicensingConfigs:
        - academicLicense: false
          mssqlLicensing: string
          windowsLicensing: string
    minHosts: 0
    nsxtCloudadmin: string
    nsxtCloudadminPassword: string
    nsxtCloudaudit: string
    nsxtCloudauditPassword: string
    nsxtPrivateIp: string
    nsxtPrivateUrl: string
    nsxtUi: false
    numHost: 0
    providerType: string
    region: string
    sddcId: string
    sddcName: string
    sddcTemplateId: string
    sddcType: string
    size: string
    skipCreatingVxlan: false
    ssoDomain: string
    timeouts:
        create: string
        delete: string
        update: string
    vpcCidr: string
    vxlanSubnet: string
Copy

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

NumHost This property is required. double
The number of hosts in the primary Cluster of the SDDC.
Region This property is required. string
The AWS specific (e.g. us-west-2) or VMC specific region (e.g. US_WEST_2) of the cloud resources to work in.
SddcName This property is required. string
Name of the SDDC.
AccountLinkSddcConfigs List<SddcAccountLinkSddcConfig>
The account linking configuration object.
DelayAccountLink bool
Boolean flag identifying whether account linking should be delayed or not for the SDDC.
DeploymentType string
Denotes if request is for a SingleAZ or a MultiAZ SDDC. Default : SingleAZ.
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
HostInstanceType string
The instance type for the esx hosts in the primary cluster of the SDDC. Possible values : I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Default value : I3_METAL. Currently, I3EN_METAL host_instance_type does not support 1NODE and 2 node SDDC deployment.
IntranetMtuUplink double
Uplink MTU of direct connect, SDDC-grouping and outposts traffic in edge tier-0 router port.
MaxHosts double
The maximum number of hosts that the cluster can scale out to.
MicrosoftLicensingConfigs List<SddcMicrosoftLicensingConfig>
Indicates the desired licensing support, if any, of Microsoft software.
MinHosts double
The minimum number of hosts that the cluster can scale in to.
NsxtCloudadmin string
the NSXT userID admin for direct NSXT access
NsxtCloudadminPassword string
the NSXT userID admin password for direct NSXT access
NsxtCloudaudit string
the NSXT userID audit for direct NSXT access
NsxtCloudauditPassword string
the NSXT userID audit password for direct NSXT access
NsxtPrivateIp string
NsxtPrivateUrl string
for example "https://nsxManager.sddc-54-213-170-7.vmwarevmc.com/login.jsp"
NsxtUi bool
ProviderType string
Determines what additional properties are available based on cloud provider. Default value : AWS
SddcId string
SDDC identifier.
SddcTemplateId string
If provided, configuration from the template will be applied to the provisioned SDDC.
SddcType string
Denotes the sddc type , if the value is null or empty, the type is considered as default.
Size string
The size of the vCenter and NSX appliances. 'large' or 'LARGE' SDDC size corresponds to a large vCenter appliance and large NSX appliance. 'medium' or 'MEDIUM' SDDC size corresponds to medium vCenter appliance and medium NSX appliance. Default : 'medium'.
SkipCreatingVxlan bool
Boolean value to skip creating vxlan for compute gateway for SDDC provisioning.
SsoDomain string
The SSO domain name to use for vSphere users. If not specified, vmc.local will be used.
Timeouts SddcTimeouts
VpcCidr string
SDDC management network CIDR. Only prefix of 16, 20 and 23 are supported. Note : Specify a private subnet range (RFC 1918) to be used for vCenter Server, NSX Manager, and ESXi hosts. Choose a range that will not conflict with other networks you will connect to this SDDC. Minimum CIDR sizes : /23 for up to 27 hosts, /20 for up to 251 hosts, /16 for up to 4091 hosts. Reserved CIDRs : 10.0.0.0/15, 172.31.0.0/16.
VxlanSubnet string
A logical network segment that will be created with the SDDC under the compute gateway.
NumHost This property is required. float64
The number of hosts in the primary Cluster of the SDDC.
Region This property is required. string
The AWS specific (e.g. us-west-2) or VMC specific region (e.g. US_WEST_2) of the cloud resources to work in.
SddcName This property is required. string
Name of the SDDC.
AccountLinkSddcConfigs []SddcAccountLinkSddcConfigArgs
The account linking configuration object.
DelayAccountLink bool
Boolean flag identifying whether account linking should be delayed or not for the SDDC.
DeploymentType string
Denotes if request is for a SingleAZ or a MultiAZ SDDC. Default : SingleAZ.
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
HostInstanceType string
The instance type for the esx hosts in the primary cluster of the SDDC. Possible values : I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Default value : I3_METAL. Currently, I3EN_METAL host_instance_type does not support 1NODE and 2 node SDDC deployment.
IntranetMtuUplink float64
Uplink MTU of direct connect, SDDC-grouping and outposts traffic in edge tier-0 router port.
MaxHosts float64
The maximum number of hosts that the cluster can scale out to.
MicrosoftLicensingConfigs []SddcMicrosoftLicensingConfigArgs
Indicates the desired licensing support, if any, of Microsoft software.
MinHosts float64
The minimum number of hosts that the cluster can scale in to.
NsxtCloudadmin string
the NSXT userID admin for direct NSXT access
NsxtCloudadminPassword string
the NSXT userID admin password for direct NSXT access
NsxtCloudaudit string
the NSXT userID audit for direct NSXT access
NsxtCloudauditPassword string
the NSXT userID audit password for direct NSXT access
NsxtPrivateIp string
NsxtPrivateUrl string
for example "https://nsxManager.sddc-54-213-170-7.vmwarevmc.com/login.jsp"
NsxtUi bool
ProviderType string
Determines what additional properties are available based on cloud provider. Default value : AWS
SddcId string
SDDC identifier.
SddcTemplateId string
If provided, configuration from the template will be applied to the provisioned SDDC.
SddcType string
Denotes the sddc type , if the value is null or empty, the type is considered as default.
Size string
The size of the vCenter and NSX appliances. 'large' or 'LARGE' SDDC size corresponds to a large vCenter appliance and large NSX appliance. 'medium' or 'MEDIUM' SDDC size corresponds to medium vCenter appliance and medium NSX appliance. Default : 'medium'.
SkipCreatingVxlan bool
Boolean value to skip creating vxlan for compute gateway for SDDC provisioning.
SsoDomain string
The SSO domain name to use for vSphere users. If not specified, vmc.local will be used.
Timeouts SddcTimeoutsArgs
VpcCidr string
SDDC management network CIDR. Only prefix of 16, 20 and 23 are supported. Note : Specify a private subnet range (RFC 1918) to be used for vCenter Server, NSX Manager, and ESXi hosts. Choose a range that will not conflict with other networks you will connect to this SDDC. Minimum CIDR sizes : /23 for up to 27 hosts, /20 for up to 251 hosts, /16 for up to 4091 hosts. Reserved CIDRs : 10.0.0.0/15, 172.31.0.0/16.
VxlanSubnet string
A logical network segment that will be created with the SDDC under the compute gateway.
numHost This property is required. Double
The number of hosts in the primary Cluster of the SDDC.
region This property is required. String
The AWS specific (e.g. us-west-2) or VMC specific region (e.g. US_WEST_2) of the cloud resources to work in.
sddcName This property is required. String
Name of the SDDC.
accountLinkSddcConfigs List<SddcAccountLinkSddcConfig>
The account linking configuration object.
delayAccountLink Boolean
Boolean flag identifying whether account linking should be delayed or not for the SDDC.
deploymentType String
Denotes if request is for a SingleAZ or a MultiAZ SDDC. Default : SingleAZ.
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
hostInstanceType String
The instance type for the esx hosts in the primary cluster of the SDDC. Possible values : I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Default value : I3_METAL. Currently, I3EN_METAL host_instance_type does not support 1NODE and 2 node SDDC deployment.
intranetMtuUplink Double
Uplink MTU of direct connect, SDDC-grouping and outposts traffic in edge tier-0 router port.
maxHosts Double
The maximum number of hosts that the cluster can scale out to.
microsoftLicensingConfigs List<SddcMicrosoftLicensingConfig>
Indicates the desired licensing support, if any, of Microsoft software.
minHosts Double
The minimum number of hosts that the cluster can scale in to.
nsxtCloudadmin String
the NSXT userID admin for direct NSXT access
nsxtCloudadminPassword String
the NSXT userID admin password for direct NSXT access
nsxtCloudaudit String
the NSXT userID audit for direct NSXT access
nsxtCloudauditPassword String
the NSXT userID audit password for direct NSXT access
nsxtPrivateIp String
nsxtPrivateUrl String
for example "https://nsxManager.sddc-54-213-170-7.vmwarevmc.com/login.jsp"
nsxtUi Boolean
providerType String
Determines what additional properties are available based on cloud provider. Default value : AWS
sddcId String
SDDC identifier.
sddcTemplateId String
If provided, configuration from the template will be applied to the provisioned SDDC.
sddcType String
Denotes the sddc type , if the value is null or empty, the type is considered as default.
size String
The size of the vCenter and NSX appliances. 'large' or 'LARGE' SDDC size corresponds to a large vCenter appliance and large NSX appliance. 'medium' or 'MEDIUM' SDDC size corresponds to medium vCenter appliance and medium NSX appliance. Default : 'medium'.
skipCreatingVxlan Boolean
Boolean value to skip creating vxlan for compute gateway for SDDC provisioning.
ssoDomain String
The SSO domain name to use for vSphere users. If not specified, vmc.local will be used.
timeouts SddcTimeouts
vpcCidr String
SDDC management network CIDR. Only prefix of 16, 20 and 23 are supported. Note : Specify a private subnet range (RFC 1918) to be used for vCenter Server, NSX Manager, and ESXi hosts. Choose a range that will not conflict with other networks you will connect to this SDDC. Minimum CIDR sizes : /23 for up to 27 hosts, /20 for up to 251 hosts, /16 for up to 4091 hosts. Reserved CIDRs : 10.0.0.0/15, 172.31.0.0/16.
vxlanSubnet String
A logical network segment that will be created with the SDDC under the compute gateway.
numHost This property is required. number
The number of hosts in the primary Cluster of the SDDC.
region This property is required. string
The AWS specific (e.g. us-west-2) or VMC specific region (e.g. US_WEST_2) of the cloud resources to work in.
sddcName This property is required. string
Name of the SDDC.
accountLinkSddcConfigs SddcAccountLinkSddcConfig[]
The account linking configuration object.
delayAccountLink boolean
Boolean flag identifying whether account linking should be delayed or not for the SDDC.
deploymentType string
Denotes if request is for a SingleAZ or a MultiAZ SDDC. Default : SingleAZ.
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
hostInstanceType string
The instance type for the esx hosts in the primary cluster of the SDDC. Possible values : I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Default value : I3_METAL. Currently, I3EN_METAL host_instance_type does not support 1NODE and 2 node SDDC deployment.
intranetMtuUplink number
Uplink MTU of direct connect, SDDC-grouping and outposts traffic in edge tier-0 router port.
maxHosts number
The maximum number of hosts that the cluster can scale out to.
microsoftLicensingConfigs SddcMicrosoftLicensingConfig[]
Indicates the desired licensing support, if any, of Microsoft software.
minHosts number
The minimum number of hosts that the cluster can scale in to.
nsxtCloudadmin string
the NSXT userID admin for direct NSXT access
nsxtCloudadminPassword string
the NSXT userID admin password for direct NSXT access
nsxtCloudaudit string
the NSXT userID audit for direct NSXT access
nsxtCloudauditPassword string
the NSXT userID audit password for direct NSXT access
nsxtPrivateIp string
nsxtPrivateUrl string
for example "https://nsxManager.sddc-54-213-170-7.vmwarevmc.com/login.jsp"
nsxtUi boolean
providerType string
Determines what additional properties are available based on cloud provider. Default value : AWS
sddcId string
SDDC identifier.
sddcTemplateId string
If provided, configuration from the template will be applied to the provisioned SDDC.
sddcType string
Denotes the sddc type , if the value is null or empty, the type is considered as default.
size string
The size of the vCenter and NSX appliances. 'large' or 'LARGE' SDDC size corresponds to a large vCenter appliance and large NSX appliance. 'medium' or 'MEDIUM' SDDC size corresponds to medium vCenter appliance and medium NSX appliance. Default : 'medium'.
skipCreatingVxlan boolean
Boolean value to skip creating vxlan for compute gateway for SDDC provisioning.
ssoDomain string
The SSO domain name to use for vSphere users. If not specified, vmc.local will be used.
timeouts SddcTimeouts
vpcCidr string
SDDC management network CIDR. Only prefix of 16, 20 and 23 are supported. Note : Specify a private subnet range (RFC 1918) to be used for vCenter Server, NSX Manager, and ESXi hosts. Choose a range that will not conflict with other networks you will connect to this SDDC. Minimum CIDR sizes : /23 for up to 27 hosts, /20 for up to 251 hosts, /16 for up to 4091 hosts. Reserved CIDRs : 10.0.0.0/15, 172.31.0.0/16.
vxlanSubnet string
A logical network segment that will be created with the SDDC under the compute gateway.
num_host This property is required. float
The number of hosts in the primary Cluster of the SDDC.
region This property is required. str
The AWS specific (e.g. us-west-2) or VMC specific region (e.g. US_WEST_2) of the cloud resources to work in.
sddc_name This property is required. str
Name of the SDDC.
account_link_sddc_configs Sequence[SddcAccountLinkSddcConfigArgs]
The account linking configuration object.
delay_account_link bool
Boolean flag identifying whether account linking should be delayed or not for the SDDC.
deployment_type str
Denotes if request is for a SingleAZ or a MultiAZ SDDC. Default : SingleAZ.
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_instance_type str
The instance type for the esx hosts in the primary cluster of the SDDC. Possible values : I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Default value : I3_METAL. Currently, I3EN_METAL host_instance_type does not support 1NODE and 2 node SDDC deployment.
intranet_mtu_uplink float
Uplink MTU of direct connect, SDDC-grouping and outposts traffic in edge tier-0 router port.
max_hosts float
The maximum number of hosts that the cluster can scale out to.
microsoft_licensing_configs Sequence[SddcMicrosoftLicensingConfigArgs]
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.
nsxt_cloudadmin str
the NSXT userID admin for direct NSXT access
nsxt_cloudadmin_password str
the NSXT userID admin password for direct NSXT access
nsxt_cloudaudit str
the NSXT userID audit for direct NSXT access
nsxt_cloudaudit_password str
the NSXT userID audit password for direct NSXT access
nsxt_private_ip str
nsxt_private_url str
for example "https://nsxManager.sddc-54-213-170-7.vmwarevmc.com/login.jsp"
nsxt_ui bool
provider_type str
Determines what additional properties are available based on cloud provider. Default value : AWS
sddc_id str
SDDC identifier.
sddc_template_id str
If provided, configuration from the template will be applied to the provisioned SDDC.
sddc_type str
Denotes the sddc type , if the value is null or empty, the type is considered as default.
size str
The size of the vCenter and NSX appliances. 'large' or 'LARGE' SDDC size corresponds to a large vCenter appliance and large NSX appliance. 'medium' or 'MEDIUM' SDDC size corresponds to medium vCenter appliance and medium NSX appliance. Default : 'medium'.
skip_creating_vxlan bool
Boolean value to skip creating vxlan for compute gateway for SDDC provisioning.
sso_domain str
The SSO domain name to use for vSphere users. If not specified, vmc.local will be used.
timeouts SddcTimeoutsArgs
vpc_cidr str
SDDC management network CIDR. Only prefix of 16, 20 and 23 are supported. Note : Specify a private subnet range (RFC 1918) to be used for vCenter Server, NSX Manager, and ESXi hosts. Choose a range that will not conflict with other networks you will connect to this SDDC. Minimum CIDR sizes : /23 for up to 27 hosts, /20 for up to 251 hosts, /16 for up to 4091 hosts. Reserved CIDRs : 10.0.0.0/15, 172.31.0.0/16.
vxlan_subnet str
A logical network segment that will be created with the SDDC under the compute gateway.
numHost This property is required. Number
The number of hosts in the primary Cluster of the SDDC.
region This property is required. String
The AWS specific (e.g. us-west-2) or VMC specific region (e.g. US_WEST_2) of the cloud resources to work in.
sddcName This property is required. String
Name of the SDDC.
accountLinkSddcConfigs List<Property Map>
The account linking configuration object.
delayAccountLink Boolean
Boolean flag identifying whether account linking should be delayed or not for the SDDC.
deploymentType String
Denotes if request is for a SingleAZ or a MultiAZ SDDC. Default : SingleAZ.
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
hostInstanceType String
The instance type for the esx hosts in the primary cluster of the SDDC. Possible values : I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Default value : I3_METAL. Currently, I3EN_METAL host_instance_type does not support 1NODE and 2 node SDDC deployment.
intranetMtuUplink Number
Uplink MTU of direct connect, SDDC-grouping and outposts traffic in edge tier-0 router port.
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.
nsxtCloudadmin String
the NSXT userID admin for direct NSXT access
nsxtCloudadminPassword String
the NSXT userID admin password for direct NSXT access
nsxtCloudaudit String
the NSXT userID audit for direct NSXT access
nsxtCloudauditPassword String
the NSXT userID audit password for direct NSXT access
nsxtPrivateIp String
nsxtPrivateUrl String
for example "https://nsxManager.sddc-54-213-170-7.vmwarevmc.com/login.jsp"
nsxtUi Boolean
providerType String
Determines what additional properties are available based on cloud provider. Default value : AWS
sddcId String
SDDC identifier.
sddcTemplateId String
If provided, configuration from the template will be applied to the provisioned SDDC.
sddcType String
Denotes the sddc type , if the value is null or empty, the type is considered as default.
size String
The size of the vCenter and NSX appliances. 'large' or 'LARGE' SDDC size corresponds to a large vCenter appliance and large NSX appliance. 'medium' or 'MEDIUM' SDDC size corresponds to medium vCenter appliance and medium NSX appliance. Default : 'medium'.
skipCreatingVxlan Boolean
Boolean value to skip creating vxlan for compute gateway for SDDC provisioning.
ssoDomain String
The SSO domain name to use for vSphere users. If not specified, vmc.local will be used.
timeouts Property Map
vpcCidr String
SDDC management network CIDR. Only prefix of 16, 20 and 23 are supported. Note : Specify a private subnet range (RFC 1918) to be used for vCenter Server, NSX Manager, and ESXi hosts. Choose a range that will not conflict with other networks you will connect to this SDDC. Minimum CIDR sizes : /23 for up to 27 hosts, /20 for up to 251 hosts, /16 for up to 4091 hosts. Reserved CIDRs : 10.0.0.0/15, 172.31.0.0/16.
vxlanSubnet String
A logical network segment that will be created with the SDDC under the compute gateway.

Outputs

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

AccountLinkState string
AvailabilityZones List<string>
CloudPassword string
CloudUsername string
ClusterId string
Cluster identifier.
ClusterInfo Dictionary<string, string>
Information about cluster like id, name, state, host instance type.
Created string
Id string
The provider-assigned unique ID for this managed resource.
NsxtReverseProxyUrl string
NSXT reverse proxy url for managing public IP.
OrgId string
Organization identifier.
SddcAccessState string
SddcSize Dictionary<string, string>
Size information of vCenter appliance and NSX appliance.
SddcState string
Updated string
UpdatedByUserId string
UpdatedByUserName string
UserId string
UserName string
VcUrl string
Version double
AccountLinkState string
AvailabilityZones []string
CloudPassword string
CloudUsername string
ClusterId string
Cluster identifier.
ClusterInfo map[string]string
Information about cluster like id, name, state, host instance type.
Created string
Id string
The provider-assigned unique ID for this managed resource.
NsxtReverseProxyUrl string
NSXT reverse proxy url for managing public IP.
OrgId string
Organization identifier.
SddcAccessState string
SddcSize map[string]string
Size information of vCenter appliance and NSX appliance.
SddcState string
Updated string
UpdatedByUserId string
UpdatedByUserName string
UserId string
UserName string
VcUrl string
Version float64
accountLinkState String
availabilityZones List<String>
cloudPassword String
cloudUsername String
clusterId String
Cluster identifier.
clusterInfo Map<String,String>
Information about cluster like id, name, state, host instance type.
created String
id String
The provider-assigned unique ID for this managed resource.
nsxtReverseProxyUrl String
NSXT reverse proxy url for managing public IP.
orgId String
Organization identifier.
sddcAccessState String
sddcSize Map<String,String>
Size information of vCenter appliance and NSX appliance.
sddcState String
updated String
updatedByUserId String
updatedByUserName String
userId String
userName String
vcUrl String
version Double
accountLinkState string
availabilityZones string[]
cloudPassword string
cloudUsername string
clusterId string
Cluster identifier.
clusterInfo {[key: string]: string}
Information about cluster like id, name, state, host instance type.
created string
id string
The provider-assigned unique ID for this managed resource.
nsxtReverseProxyUrl string
NSXT reverse proxy url for managing public IP.
orgId string
Organization identifier.
sddcAccessState string
sddcSize {[key: string]: string}
Size information of vCenter appliance and NSX appliance.
sddcState string
updated string
updatedByUserId string
updatedByUserName string
userId string
userName string
vcUrl string
version number
account_link_state str
availability_zones Sequence[str]
cloud_password str
cloud_username str
cluster_id str
Cluster identifier.
cluster_info Mapping[str, str]
Information about cluster like id, name, state, host instance type.
created str
id str
The provider-assigned unique ID for this managed resource.
nsxt_reverse_proxy_url str
NSXT reverse proxy url for managing public IP.
org_id str
Organization identifier.
sddc_access_state str
sddc_size Mapping[str, str]
Size information of vCenter appliance and NSX appliance.
sddc_state str
updated str
updated_by_user_id str
updated_by_user_name str
user_id str
user_name str
vc_url str
version float
accountLinkState String
availabilityZones List<String>
cloudPassword String
cloudUsername String
clusterId String
Cluster identifier.
clusterInfo Map<String>
Information about cluster like id, name, state, host instance type.
created String
id String
The provider-assigned unique ID for this managed resource.
nsxtReverseProxyUrl String
NSXT reverse proxy url for managing public IP.
orgId String
Organization identifier.
sddcAccessState String
sddcSize Map<String>
Size information of vCenter appliance and NSX appliance.
sddcState String
updated String
updatedByUserId String
updatedByUserName String
userId String
userName String
vcUrl String
version Number

Look up Existing Sddc Resource

Get an existing Sddc 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?: SddcState, opts?: CustomResourceOptions): Sddc
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        account_link_sddc_configs: Optional[Sequence[SddcAccountLinkSddcConfigArgs]] = None,
        account_link_state: Optional[str] = None,
        availability_zones: Optional[Sequence[str]] = None,
        cloud_password: Optional[str] = None,
        cloud_username: Optional[str] = None,
        cluster_id: Optional[str] = None,
        cluster_info: Optional[Mapping[str, str]] = None,
        created: Optional[str] = None,
        delay_account_link: Optional[bool] = None,
        deployment_type: Optional[str] = None,
        edrs_policy_type: Optional[str] = None,
        enable_edrs: Optional[bool] = None,
        host_instance_type: Optional[str] = None,
        intranet_mtu_uplink: Optional[float] = None,
        max_hosts: Optional[float] = None,
        microsoft_licensing_configs: Optional[Sequence[SddcMicrosoftLicensingConfigArgs]] = None,
        min_hosts: Optional[float] = None,
        nsxt_cloudadmin: Optional[str] = None,
        nsxt_cloudadmin_password: Optional[str] = None,
        nsxt_cloudaudit: Optional[str] = None,
        nsxt_cloudaudit_password: Optional[str] = None,
        nsxt_private_ip: Optional[str] = None,
        nsxt_private_url: Optional[str] = None,
        nsxt_reverse_proxy_url: Optional[str] = None,
        nsxt_ui: Optional[bool] = None,
        num_host: Optional[float] = None,
        org_id: Optional[str] = None,
        provider_type: Optional[str] = None,
        region: Optional[str] = None,
        sddc_access_state: Optional[str] = None,
        sddc_id: Optional[str] = None,
        sddc_name: Optional[str] = None,
        sddc_size: Optional[Mapping[str, str]] = None,
        sddc_state: Optional[str] = None,
        sddc_template_id: Optional[str] = None,
        sddc_type: Optional[str] = None,
        size: Optional[str] = None,
        skip_creating_vxlan: Optional[bool] = None,
        sso_domain: Optional[str] = None,
        timeouts: Optional[SddcTimeoutsArgs] = None,
        updated: Optional[str] = None,
        updated_by_user_id: Optional[str] = None,
        updated_by_user_name: Optional[str] = None,
        user_id: Optional[str] = None,
        user_name: Optional[str] = None,
        vc_url: Optional[str] = None,
        version: Optional[float] = None,
        vpc_cidr: Optional[str] = None,
        vxlan_subnet: Optional[str] = None) -> Sddc
func GetSddc(ctx *Context, name string, id IDInput, state *SddcState, opts ...ResourceOption) (*Sddc, error)
public static Sddc Get(string name, Input<string> id, SddcState? state, CustomResourceOptions? opts = null)
public static Sddc get(String name, Output<String> id, SddcState state, CustomResourceOptions options)
resources:  _:    type: vmc:Sddc    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:
AccountLinkSddcConfigs List<SddcAccountLinkSddcConfig>
The account linking configuration object.
AccountLinkState string
AvailabilityZones List<string>
CloudPassword string
CloudUsername string
ClusterId string
Cluster identifier.
ClusterInfo Dictionary<string, string>
Information about cluster like id, name, state, host instance type.
Created string
DelayAccountLink bool
Boolean flag identifying whether account linking should be delayed or not for the SDDC.
DeploymentType string
Denotes if request is for a SingleAZ or a MultiAZ SDDC. Default : SingleAZ.
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
HostInstanceType string
The instance type for the esx hosts in the primary cluster of the SDDC. Possible values : I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Default value : I3_METAL. Currently, I3EN_METAL host_instance_type does not support 1NODE and 2 node SDDC deployment.
IntranetMtuUplink double
Uplink MTU of direct connect, SDDC-grouping and outposts traffic in edge tier-0 router port.
MaxHosts double
The maximum number of hosts that the cluster can scale out to.
MicrosoftLicensingConfigs List<SddcMicrosoftLicensingConfig>
Indicates the desired licensing support, if any, of Microsoft software.
MinHosts double
The minimum number of hosts that the cluster can scale in to.
NsxtCloudadmin string
the NSXT userID admin for direct NSXT access
NsxtCloudadminPassword string
the NSXT userID admin password for direct NSXT access
NsxtCloudaudit string
the NSXT userID audit for direct NSXT access
NsxtCloudauditPassword string
the NSXT userID audit password for direct NSXT access
NsxtPrivateIp string
NsxtPrivateUrl string
for example "https://nsxManager.sddc-54-213-170-7.vmwarevmc.com/login.jsp"
NsxtReverseProxyUrl string
NSXT reverse proxy url for managing public IP.
NsxtUi bool
NumHost double
The number of hosts in the primary Cluster of the SDDC.
OrgId string
Organization identifier.
ProviderType string
Determines what additional properties are available based on cloud provider. Default value : AWS
Region string
The AWS specific (e.g. us-west-2) or VMC specific region (e.g. US_WEST_2) of the cloud resources to work in.
SddcAccessState string
SddcId string
SDDC identifier.
SddcName string
Name of the SDDC.
SddcSize Dictionary<string, string>
Size information of vCenter appliance and NSX appliance.
SddcState string
SddcTemplateId string
If provided, configuration from the template will be applied to the provisioned SDDC.
SddcType string
Denotes the sddc type , if the value is null or empty, the type is considered as default.
Size string
The size of the vCenter and NSX appliances. 'large' or 'LARGE' SDDC size corresponds to a large vCenter appliance and large NSX appliance. 'medium' or 'MEDIUM' SDDC size corresponds to medium vCenter appliance and medium NSX appliance. Default : 'medium'.
SkipCreatingVxlan bool
Boolean value to skip creating vxlan for compute gateway for SDDC provisioning.
SsoDomain string
The SSO domain name to use for vSphere users. If not specified, vmc.local will be used.
Timeouts SddcTimeouts
Updated string
UpdatedByUserId string
UpdatedByUserName string
UserId string
UserName string
VcUrl string
Version double
VpcCidr string
SDDC management network CIDR. Only prefix of 16, 20 and 23 are supported. Note : Specify a private subnet range (RFC 1918) to be used for vCenter Server, NSX Manager, and ESXi hosts. Choose a range that will not conflict with other networks you will connect to this SDDC. Minimum CIDR sizes : /23 for up to 27 hosts, /20 for up to 251 hosts, /16 for up to 4091 hosts. Reserved CIDRs : 10.0.0.0/15, 172.31.0.0/16.
VxlanSubnet string
A logical network segment that will be created with the SDDC under the compute gateway.
AccountLinkSddcConfigs []SddcAccountLinkSddcConfigArgs
The account linking configuration object.
AccountLinkState string
AvailabilityZones []string
CloudPassword string
CloudUsername string
ClusterId string
Cluster identifier.
ClusterInfo map[string]string
Information about cluster like id, name, state, host instance type.
Created string
DelayAccountLink bool
Boolean flag identifying whether account linking should be delayed or not for the SDDC.
DeploymentType string
Denotes if request is for a SingleAZ or a MultiAZ SDDC. Default : SingleAZ.
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
HostInstanceType string
The instance type for the esx hosts in the primary cluster of the SDDC. Possible values : I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Default value : I3_METAL. Currently, I3EN_METAL host_instance_type does not support 1NODE and 2 node SDDC deployment.
IntranetMtuUplink float64
Uplink MTU of direct connect, SDDC-grouping and outposts traffic in edge tier-0 router port.
MaxHosts float64
The maximum number of hosts that the cluster can scale out to.
MicrosoftLicensingConfigs []SddcMicrosoftLicensingConfigArgs
Indicates the desired licensing support, if any, of Microsoft software.
MinHosts float64
The minimum number of hosts that the cluster can scale in to.
NsxtCloudadmin string
the NSXT userID admin for direct NSXT access
NsxtCloudadminPassword string
the NSXT userID admin password for direct NSXT access
NsxtCloudaudit string
the NSXT userID audit for direct NSXT access
NsxtCloudauditPassword string
the NSXT userID audit password for direct NSXT access
NsxtPrivateIp string
NsxtPrivateUrl string
for example "https://nsxManager.sddc-54-213-170-7.vmwarevmc.com/login.jsp"
NsxtReverseProxyUrl string
NSXT reverse proxy url for managing public IP.
NsxtUi bool
NumHost float64
The number of hosts in the primary Cluster of the SDDC.
OrgId string
Organization identifier.
ProviderType string
Determines what additional properties are available based on cloud provider. Default value : AWS
Region string
The AWS specific (e.g. us-west-2) or VMC specific region (e.g. US_WEST_2) of the cloud resources to work in.
SddcAccessState string
SddcId string
SDDC identifier.
SddcName string
Name of the SDDC.
SddcSize map[string]string
Size information of vCenter appliance and NSX appliance.
SddcState string
SddcTemplateId string
If provided, configuration from the template will be applied to the provisioned SDDC.
SddcType string
Denotes the sddc type , if the value is null or empty, the type is considered as default.
Size string
The size of the vCenter and NSX appliances. 'large' or 'LARGE' SDDC size corresponds to a large vCenter appliance and large NSX appliance. 'medium' or 'MEDIUM' SDDC size corresponds to medium vCenter appliance and medium NSX appliance. Default : 'medium'.
SkipCreatingVxlan bool
Boolean value to skip creating vxlan for compute gateway for SDDC provisioning.
SsoDomain string
The SSO domain name to use for vSphere users. If not specified, vmc.local will be used.
Timeouts SddcTimeoutsArgs
Updated string
UpdatedByUserId string
UpdatedByUserName string
UserId string
UserName string
VcUrl string
Version float64
VpcCidr string
SDDC management network CIDR. Only prefix of 16, 20 and 23 are supported. Note : Specify a private subnet range (RFC 1918) to be used for vCenter Server, NSX Manager, and ESXi hosts. Choose a range that will not conflict with other networks you will connect to this SDDC. Minimum CIDR sizes : /23 for up to 27 hosts, /20 for up to 251 hosts, /16 for up to 4091 hosts. Reserved CIDRs : 10.0.0.0/15, 172.31.0.0/16.
VxlanSubnet string
A logical network segment that will be created with the SDDC under the compute gateway.
accountLinkSddcConfigs List<SddcAccountLinkSddcConfig>
The account linking configuration object.
accountLinkState String
availabilityZones List<String>
cloudPassword String
cloudUsername String
clusterId String
Cluster identifier.
clusterInfo Map<String,String>
Information about cluster like id, name, state, host instance type.
created String
delayAccountLink Boolean
Boolean flag identifying whether account linking should be delayed or not for the SDDC.
deploymentType String
Denotes if request is for a SingleAZ or a MultiAZ SDDC. Default : SingleAZ.
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
hostInstanceType String
The instance type for the esx hosts in the primary cluster of the SDDC. Possible values : I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Default value : I3_METAL. Currently, I3EN_METAL host_instance_type does not support 1NODE and 2 node SDDC deployment.
intranetMtuUplink Double
Uplink MTU of direct connect, SDDC-grouping and outposts traffic in edge tier-0 router port.
maxHosts Double
The maximum number of hosts that the cluster can scale out to.
microsoftLicensingConfigs List<SddcMicrosoftLicensingConfig>
Indicates the desired licensing support, if any, of Microsoft software.
minHosts Double
The minimum number of hosts that the cluster can scale in to.
nsxtCloudadmin String
the NSXT userID admin for direct NSXT access
nsxtCloudadminPassword String
the NSXT userID admin password for direct NSXT access
nsxtCloudaudit String
the NSXT userID audit for direct NSXT access
nsxtCloudauditPassword String
the NSXT userID audit password for direct NSXT access
nsxtPrivateIp String
nsxtPrivateUrl String
for example "https://nsxManager.sddc-54-213-170-7.vmwarevmc.com/login.jsp"
nsxtReverseProxyUrl String
NSXT reverse proxy url for managing public IP.
nsxtUi Boolean
numHost Double
The number of hosts in the primary Cluster of the SDDC.
orgId String
Organization identifier.
providerType String
Determines what additional properties are available based on cloud provider. Default value : AWS
region String
The AWS specific (e.g. us-west-2) or VMC specific region (e.g. US_WEST_2) of the cloud resources to work in.
sddcAccessState String
sddcId String
SDDC identifier.
sddcName String
Name of the SDDC.
sddcSize Map<String,String>
Size information of vCenter appliance and NSX appliance.
sddcState String
sddcTemplateId String
If provided, configuration from the template will be applied to the provisioned SDDC.
sddcType String
Denotes the sddc type , if the value is null or empty, the type is considered as default.
size String
The size of the vCenter and NSX appliances. 'large' or 'LARGE' SDDC size corresponds to a large vCenter appliance and large NSX appliance. 'medium' or 'MEDIUM' SDDC size corresponds to medium vCenter appliance and medium NSX appliance. Default : 'medium'.
skipCreatingVxlan Boolean
Boolean value to skip creating vxlan for compute gateway for SDDC provisioning.
ssoDomain String
The SSO domain name to use for vSphere users. If not specified, vmc.local will be used.
timeouts SddcTimeouts
updated String
updatedByUserId String
updatedByUserName String
userId String
userName String
vcUrl String
version Double
vpcCidr String
SDDC management network CIDR. Only prefix of 16, 20 and 23 are supported. Note : Specify a private subnet range (RFC 1918) to be used for vCenter Server, NSX Manager, and ESXi hosts. Choose a range that will not conflict with other networks you will connect to this SDDC. Minimum CIDR sizes : /23 for up to 27 hosts, /20 for up to 251 hosts, /16 for up to 4091 hosts. Reserved CIDRs : 10.0.0.0/15, 172.31.0.0/16.
vxlanSubnet String
A logical network segment that will be created with the SDDC under the compute gateway.
accountLinkSddcConfigs SddcAccountLinkSddcConfig[]
The account linking configuration object.
accountLinkState string
availabilityZones string[]
cloudPassword string
cloudUsername string
clusterId string
Cluster identifier.
clusterInfo {[key: string]: string}
Information about cluster like id, name, state, host instance type.
created string
delayAccountLink boolean
Boolean flag identifying whether account linking should be delayed or not for the SDDC.
deploymentType string
Denotes if request is for a SingleAZ or a MultiAZ SDDC. Default : SingleAZ.
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
hostInstanceType string
The instance type for the esx hosts in the primary cluster of the SDDC. Possible values : I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Default value : I3_METAL. Currently, I3EN_METAL host_instance_type does not support 1NODE and 2 node SDDC deployment.
intranetMtuUplink number
Uplink MTU of direct connect, SDDC-grouping and outposts traffic in edge tier-0 router port.
maxHosts number
The maximum number of hosts that the cluster can scale out to.
microsoftLicensingConfigs SddcMicrosoftLicensingConfig[]
Indicates the desired licensing support, if any, of Microsoft software.
minHosts number
The minimum number of hosts that the cluster can scale in to.
nsxtCloudadmin string
the NSXT userID admin for direct NSXT access
nsxtCloudadminPassword string
the NSXT userID admin password for direct NSXT access
nsxtCloudaudit string
the NSXT userID audit for direct NSXT access
nsxtCloudauditPassword string
the NSXT userID audit password for direct NSXT access
nsxtPrivateIp string
nsxtPrivateUrl string
for example "https://nsxManager.sddc-54-213-170-7.vmwarevmc.com/login.jsp"
nsxtReverseProxyUrl string
NSXT reverse proxy url for managing public IP.
nsxtUi boolean
numHost number
The number of hosts in the primary Cluster of the SDDC.
orgId string
Organization identifier.
providerType string
Determines what additional properties are available based on cloud provider. Default value : AWS
region string
The AWS specific (e.g. us-west-2) or VMC specific region (e.g. US_WEST_2) of the cloud resources to work in.
sddcAccessState string
sddcId string
SDDC identifier.
sddcName string
Name of the SDDC.
sddcSize {[key: string]: string}
Size information of vCenter appliance and NSX appliance.
sddcState string
sddcTemplateId string
If provided, configuration from the template will be applied to the provisioned SDDC.
sddcType string
Denotes the sddc type , if the value is null or empty, the type is considered as default.
size string
The size of the vCenter and NSX appliances. 'large' or 'LARGE' SDDC size corresponds to a large vCenter appliance and large NSX appliance. 'medium' or 'MEDIUM' SDDC size corresponds to medium vCenter appliance and medium NSX appliance. Default : 'medium'.
skipCreatingVxlan boolean
Boolean value to skip creating vxlan for compute gateway for SDDC provisioning.
ssoDomain string
The SSO domain name to use for vSphere users. If not specified, vmc.local will be used.
timeouts SddcTimeouts
updated string
updatedByUserId string
updatedByUserName string
userId string
userName string
vcUrl string
version number
vpcCidr string
SDDC management network CIDR. Only prefix of 16, 20 and 23 are supported. Note : Specify a private subnet range (RFC 1918) to be used for vCenter Server, NSX Manager, and ESXi hosts. Choose a range that will not conflict with other networks you will connect to this SDDC. Minimum CIDR sizes : /23 for up to 27 hosts, /20 for up to 251 hosts, /16 for up to 4091 hosts. Reserved CIDRs : 10.0.0.0/15, 172.31.0.0/16.
vxlanSubnet string
A logical network segment that will be created with the SDDC under the compute gateway.
account_link_sddc_configs Sequence[SddcAccountLinkSddcConfigArgs]
The account linking configuration object.
account_link_state str
availability_zones Sequence[str]
cloud_password str
cloud_username str
cluster_id str
Cluster identifier.
cluster_info Mapping[str, str]
Information about cluster like id, name, state, host instance type.
created str
delay_account_link bool
Boolean flag identifying whether account linking should be delayed or not for the SDDC.
deployment_type str
Denotes if request is for a SingleAZ or a MultiAZ SDDC. Default : SingleAZ.
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_instance_type str
The instance type for the esx hosts in the primary cluster of the SDDC. Possible values : I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Default value : I3_METAL. Currently, I3EN_METAL host_instance_type does not support 1NODE and 2 node SDDC deployment.
intranet_mtu_uplink float
Uplink MTU of direct connect, SDDC-grouping and outposts traffic in edge tier-0 router port.
max_hosts float
The maximum number of hosts that the cluster can scale out to.
microsoft_licensing_configs Sequence[SddcMicrosoftLicensingConfigArgs]
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.
nsxt_cloudadmin str
the NSXT userID admin for direct NSXT access
nsxt_cloudadmin_password str
the NSXT userID admin password for direct NSXT access
nsxt_cloudaudit str
the NSXT userID audit for direct NSXT access
nsxt_cloudaudit_password str
the NSXT userID audit password for direct NSXT access
nsxt_private_ip str
nsxt_private_url str
for example "https://nsxManager.sddc-54-213-170-7.vmwarevmc.com/login.jsp"
nsxt_reverse_proxy_url str
NSXT reverse proxy url for managing public IP.
nsxt_ui bool
num_host float
The number of hosts in the primary Cluster of the SDDC.
org_id str
Organization identifier.
provider_type str
Determines what additional properties are available based on cloud provider. Default value : AWS
region str
The AWS specific (e.g. us-west-2) or VMC specific region (e.g. US_WEST_2) of the cloud resources to work in.
sddc_access_state str
sddc_id str
SDDC identifier.
sddc_name str
Name of the SDDC.
sddc_size Mapping[str, str]
Size information of vCenter appliance and NSX appliance.
sddc_state str
sddc_template_id str
If provided, configuration from the template will be applied to the provisioned SDDC.
sddc_type str
Denotes the sddc type , if the value is null or empty, the type is considered as default.
size str
The size of the vCenter and NSX appliances. 'large' or 'LARGE' SDDC size corresponds to a large vCenter appliance and large NSX appliance. 'medium' or 'MEDIUM' SDDC size corresponds to medium vCenter appliance and medium NSX appliance. Default : 'medium'.
skip_creating_vxlan bool
Boolean value to skip creating vxlan for compute gateway for SDDC provisioning.
sso_domain str
The SSO domain name to use for vSphere users. If not specified, vmc.local will be used.
timeouts SddcTimeoutsArgs
updated str
updated_by_user_id str
updated_by_user_name str
user_id str
user_name str
vc_url str
version float
vpc_cidr str
SDDC management network CIDR. Only prefix of 16, 20 and 23 are supported. Note : Specify a private subnet range (RFC 1918) to be used for vCenter Server, NSX Manager, and ESXi hosts. Choose a range that will not conflict with other networks you will connect to this SDDC. Minimum CIDR sizes : /23 for up to 27 hosts, /20 for up to 251 hosts, /16 for up to 4091 hosts. Reserved CIDRs : 10.0.0.0/15, 172.31.0.0/16.
vxlan_subnet str
A logical network segment that will be created with the SDDC under the compute gateway.
accountLinkSddcConfigs List<Property Map>
The account linking configuration object.
accountLinkState String
availabilityZones List<String>
cloudPassword String
cloudUsername String
clusterId String
Cluster identifier.
clusterInfo Map<String>
Information about cluster like id, name, state, host instance type.
created String
delayAccountLink Boolean
Boolean flag identifying whether account linking should be delayed or not for the SDDC.
deploymentType String
Denotes if request is for a SingleAZ or a MultiAZ SDDC. Default : SingleAZ.
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
hostInstanceType String
The instance type for the esx hosts in the primary cluster of the SDDC. Possible values : I3_METAL, I3EN_METAL, I4I_METAL, and R5_METAL. Default value : I3_METAL. Currently, I3EN_METAL host_instance_type does not support 1NODE and 2 node SDDC deployment.
intranetMtuUplink Number
Uplink MTU of direct connect, SDDC-grouping and outposts traffic in edge tier-0 router port.
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.
nsxtCloudadmin String
the NSXT userID admin for direct NSXT access
nsxtCloudadminPassword String
the NSXT userID admin password for direct NSXT access
nsxtCloudaudit String
the NSXT userID audit for direct NSXT access
nsxtCloudauditPassword String
the NSXT userID audit password for direct NSXT access
nsxtPrivateIp String
nsxtPrivateUrl String
for example "https://nsxManager.sddc-54-213-170-7.vmwarevmc.com/login.jsp"
nsxtReverseProxyUrl String
NSXT reverse proxy url for managing public IP.
nsxtUi Boolean
numHost Number
The number of hosts in the primary Cluster of the SDDC.
orgId String
Organization identifier.
providerType String
Determines what additional properties are available based on cloud provider. Default value : AWS
region String
The AWS specific (e.g. us-west-2) or VMC specific region (e.g. US_WEST_2) of the cloud resources to work in.
sddcAccessState String
sddcId String
SDDC identifier.
sddcName String
Name of the SDDC.
sddcSize Map<String>
Size information of vCenter appliance and NSX appliance.
sddcState String
sddcTemplateId String
If provided, configuration from the template will be applied to the provisioned SDDC.
sddcType String
Denotes the sddc type , if the value is null or empty, the type is considered as default.
size String
The size of the vCenter and NSX appliances. 'large' or 'LARGE' SDDC size corresponds to a large vCenter appliance and large NSX appliance. 'medium' or 'MEDIUM' SDDC size corresponds to medium vCenter appliance and medium NSX appliance. Default : 'medium'.
skipCreatingVxlan Boolean
Boolean value to skip creating vxlan for compute gateway for SDDC provisioning.
ssoDomain String
The SSO domain name to use for vSphere users. If not specified, vmc.local will be used.
timeouts Property Map
updated String
updatedByUserId String
updatedByUserName String
userId String
userName String
vcUrl String
version Number
vpcCidr String
SDDC management network CIDR. Only prefix of 16, 20 and 23 are supported. Note : Specify a private subnet range (RFC 1918) to be used for vCenter Server, NSX Manager, and ESXi hosts. Choose a range that will not conflict with other networks you will connect to this SDDC. Minimum CIDR sizes : /23 for up to 27 hosts, /20 for up to 251 hosts, /16 for up to 4091 hosts. Reserved CIDRs : 10.0.0.0/15, 172.31.0.0/16.
vxlanSubnet String
A logical network segment that will be created with the SDDC under the compute gateway.

Supporting Types

SddcAccountLinkSddcConfig
, SddcAccountLinkSddcConfigArgs

SddcMicrosoftLicensingConfig
, SddcMicrosoftLicensingConfigArgs

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.

SddcTimeouts
, SddcTimeoutsArgs

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

SDDC resource can be imported using the id , e.g.

$ pulumi import vmc:index/sddc:Sddc sddc_1 id`
Copy

For this example:

  • id = SDDC Identifier
$ pulumi import vmc:index/sddc:Sddc sddc_1 afe7a0fd-3f0a-48b2-9ddb-0489c22732ae`
Copy

Note : Running plan/apply after importing an SDDC causes the SDDC to be re-created. This is due to a limitation in the current Get and Update SDDC APIs. Hence, the import functionality is only partially supported.

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.