1. Packages
  2. Google Cloud (GCP) Classic
  3. API Docs
  4. gkeonprem
  5. VMwareCluster
Google Cloud v8.27.1 published on Friday, Apr 25, 2025 by Pulumi

gcp.gkeonprem.VMwareCluster

Explore with Pulumi AI

A Google VMware User Cluster.

Example Usage

Gkeonprem Vmware Cluster Basic

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

const cluster_basic = new gcp.gkeonprem.VMwareCluster("cluster-basic", {
    name: "cluster-basic",
    location: "us-west1",
    adminClusterMembership: "projects/870316890899/locations/global/memberships/gkeonprem-terraform-test",
    description: "test cluster",
    onPremVersion: "1.13.1-gke.35",
    annotations: {},
    networkConfig: {
        serviceAddressCidrBlocks: ["10.96.0.0/12"],
        podAddressCidrBlocks: ["192.168.0.0/16"],
        dhcpIpConfig: {
            enabled: true,
        },
    },
    controlPlaneNode: {
        cpus: 4,
        memory: 8192,
        replicas: 1,
    },
    loadBalancer: {
        vipConfig: {
            controlPlaneVip: "10.251.133.5",
            ingressVip: "10.251.135.19",
        },
        metalLbConfig: {
            addressPools: [
                {
                    pool: "ingress-ip",
                    manualAssign: true,
                    addresses: ["10.251.135.19"],
                    avoidBuggyIps: true,
                },
                {
                    pool: "lb-test-ip",
                    manualAssign: true,
                    addresses: ["10.251.135.19"],
                    avoidBuggyIps: true,
                },
            ],
        },
    },
});
Copy
import pulumi
import pulumi_gcp as gcp

cluster_basic = gcp.gkeonprem.VMwareCluster("cluster-basic",
    name="cluster-basic",
    location="us-west1",
    admin_cluster_membership="projects/870316890899/locations/global/memberships/gkeonprem-terraform-test",
    description="test cluster",
    on_prem_version="1.13.1-gke.35",
    annotations={},
    network_config={
        "service_address_cidr_blocks": ["10.96.0.0/12"],
        "pod_address_cidr_blocks": ["192.168.0.0/16"],
        "dhcp_ip_config": {
            "enabled": True,
        },
    },
    control_plane_node={
        "cpus": 4,
        "memory": 8192,
        "replicas": 1,
    },
    load_balancer={
        "vip_config": {
            "control_plane_vip": "10.251.133.5",
            "ingress_vip": "10.251.135.19",
        },
        "metal_lb_config": {
            "address_pools": [
                {
                    "pool": "ingress-ip",
                    "manual_assign": True,
                    "addresses": ["10.251.135.19"],
                    "avoid_buggy_ips": True,
                },
                {
                    "pool": "lb-test-ip",
                    "manual_assign": True,
                    "addresses": ["10.251.135.19"],
                    "avoid_buggy_ips": True,
                },
            ],
        },
    })
Copy
package main

import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/gkeonprem"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkeonprem.NewVMwareCluster(ctx, "cluster-basic", &gkeonprem.VMwareClusterArgs{
			Name:                   pulumi.String("cluster-basic"),
			Location:               pulumi.String("us-west1"),
			AdminClusterMembership: pulumi.String("projects/870316890899/locations/global/memberships/gkeonprem-terraform-test"),
			Description:            pulumi.String("test cluster"),
			OnPremVersion:          pulumi.String("1.13.1-gke.35"),
			Annotations:            pulumi.StringMap{},
			NetworkConfig: &gkeonprem.VMwareClusterNetworkConfigArgs{
				ServiceAddressCidrBlocks: pulumi.StringArray{
					pulumi.String("10.96.0.0/12"),
				},
				PodAddressCidrBlocks: pulumi.StringArray{
					pulumi.String("192.168.0.0/16"),
				},
				DhcpIpConfig: &gkeonprem.VMwareClusterNetworkConfigDhcpIpConfigArgs{
					Enabled: pulumi.Bool(true),
				},
			},
			ControlPlaneNode: &gkeonprem.VMwareClusterControlPlaneNodeArgs{
				Cpus:     pulumi.Int(4),
				Memory:   pulumi.Int(8192),
				Replicas: pulumi.Int(1),
			},
			LoadBalancer: &gkeonprem.VMwareClusterLoadBalancerArgs{
				VipConfig: &gkeonprem.VMwareClusterLoadBalancerVipConfigArgs{
					ControlPlaneVip: pulumi.String("10.251.133.5"),
					IngressVip:      pulumi.String("10.251.135.19"),
				},
				MetalLbConfig: &gkeonprem.VMwareClusterLoadBalancerMetalLbConfigArgs{
					AddressPools: gkeonprem.VMwareClusterLoadBalancerMetalLbConfigAddressPoolArray{
						&gkeonprem.VMwareClusterLoadBalancerMetalLbConfigAddressPoolArgs{
							Pool:         pulumi.String("ingress-ip"),
							ManualAssign: pulumi.Bool(true),
							Addresses: pulumi.StringArray{
								pulumi.String("10.251.135.19"),
							},
							AvoidBuggyIps: pulumi.Bool(true),
						},
						&gkeonprem.VMwareClusterLoadBalancerMetalLbConfigAddressPoolArgs{
							Pool:         pulumi.String("lb-test-ip"),
							ManualAssign: pulumi.Bool(true),
							Addresses: pulumi.StringArray{
								pulumi.String("10.251.135.19"),
							},
							AvoidBuggyIps: pulumi.Bool(true),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;

return await Deployment.RunAsync(() => 
{
    var cluster_basic = new Gcp.GkeOnPrem.VMwareCluster("cluster-basic", new()
    {
        Name = "cluster-basic",
        Location = "us-west1",
        AdminClusterMembership = "projects/870316890899/locations/global/memberships/gkeonprem-terraform-test",
        Description = "test cluster",
        OnPremVersion = "1.13.1-gke.35",
        Annotations = null,
        NetworkConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigArgs
        {
            ServiceAddressCidrBlocks = new[]
            {
                "10.96.0.0/12",
            },
            PodAddressCidrBlocks = new[]
            {
                "192.168.0.0/16",
            },
            DhcpIpConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigDhcpIpConfigArgs
            {
                Enabled = true,
            },
        },
        ControlPlaneNode = new Gcp.GkeOnPrem.Inputs.VMwareClusterControlPlaneNodeArgs
        {
            Cpus = 4,
            Memory = 8192,
            Replicas = 1,
        },
        LoadBalancer = new Gcp.GkeOnPrem.Inputs.VMwareClusterLoadBalancerArgs
        {
            VipConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterLoadBalancerVipConfigArgs
            {
                ControlPlaneVip = "10.251.133.5",
                IngressVip = "10.251.135.19",
            },
            MetalLbConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterLoadBalancerMetalLbConfigArgs
            {
                AddressPools = new[]
                {
                    new Gcp.GkeOnPrem.Inputs.VMwareClusterLoadBalancerMetalLbConfigAddressPoolArgs
                    {
                        Pool = "ingress-ip",
                        ManualAssign = true,
                        Addresses = new[]
                        {
                            "10.251.135.19",
                        },
                        AvoidBuggyIps = true,
                    },
                    new Gcp.GkeOnPrem.Inputs.VMwareClusterLoadBalancerMetalLbConfigAddressPoolArgs
                    {
                        Pool = "lb-test-ip",
                        ManualAssign = true,
                        Addresses = new[]
                        {
                            "10.251.135.19",
                        },
                        AvoidBuggyIps = true,
                    },
                },
            },
        },
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.gkeonprem.VMwareCluster;
import com.pulumi.gcp.gkeonprem.VMwareClusterArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterNetworkConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterNetworkConfigDhcpIpConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterControlPlaneNodeArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterLoadBalancerArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterLoadBalancerVipConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterLoadBalancerMetalLbConfigArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

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

    public static void stack(Context ctx) {
        var cluster_basic = new VMwareCluster("cluster-basic", VMwareClusterArgs.builder()
            .name("cluster-basic")
            .location("us-west1")
            .adminClusterMembership("projects/870316890899/locations/global/memberships/gkeonprem-terraform-test")
            .description("test cluster")
            .onPremVersion("1.13.1-gke.35")
            .annotations(Map.ofEntries(
            ))
            .networkConfig(VMwareClusterNetworkConfigArgs.builder()
                .serviceAddressCidrBlocks("10.96.0.0/12")
                .podAddressCidrBlocks("192.168.0.0/16")
                .dhcpIpConfig(VMwareClusterNetworkConfigDhcpIpConfigArgs.builder()
                    .enabled(true)
                    .build())
                .build())
            .controlPlaneNode(VMwareClusterControlPlaneNodeArgs.builder()
                .cpus(4)
                .memory(8192)
                .replicas(1)
                .build())
            .loadBalancer(VMwareClusterLoadBalancerArgs.builder()
                .vipConfig(VMwareClusterLoadBalancerVipConfigArgs.builder()
                    .controlPlaneVip("10.251.133.5")
                    .ingressVip("10.251.135.19")
                    .build())
                .metalLbConfig(VMwareClusterLoadBalancerMetalLbConfigArgs.builder()
                    .addressPools(                    
                        VMwareClusterLoadBalancerMetalLbConfigAddressPoolArgs.builder()
                            .pool("ingress-ip")
                            .manualAssign(true)
                            .addresses("10.251.135.19")
                            .avoidBuggyIps(true)
                            .build(),
                        VMwareClusterLoadBalancerMetalLbConfigAddressPoolArgs.builder()
                            .pool("lb-test-ip")
                            .manualAssign(true)
                            .addresses("10.251.135.19")
                            .avoidBuggyIps(true)
                            .build())
                    .build())
                .build())
            .build());

    }
}
Copy
resources:
  cluster-basic:
    type: gcp:gkeonprem:VMwareCluster
    properties:
      name: cluster-basic
      location: us-west1
      adminClusterMembership: projects/870316890899/locations/global/memberships/gkeonprem-terraform-test
      description: test cluster
      onPremVersion: 1.13.1-gke.35
      annotations: {}
      networkConfig:
        serviceAddressCidrBlocks:
          - 10.96.0.0/12
        podAddressCidrBlocks:
          - 192.168.0.0/16
        dhcpIpConfig:
          enabled: true
      controlPlaneNode:
        cpus: 4
        memory: 8192
        replicas: 1
      loadBalancer:
        vipConfig:
          controlPlaneVip: 10.251.133.5
          ingressVip: 10.251.135.19
        metalLbConfig:
          addressPools:
            - pool: ingress-ip
              manualAssign: 'true'
              addresses:
                - 10.251.135.19
              avoidBuggyIps: true
            - pool: lb-test-ip
              manualAssign: 'true'
              addresses:
                - 10.251.135.19
              avoidBuggyIps: true
Copy

Gkeonprem Vmware Cluster F5lb

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

const cluster_f5lb = new gcp.gkeonprem.VMwareCluster("cluster-f5lb", {
    name: "cluster-f5lb",
    location: "us-west1",
    adminClusterMembership: "projects/870316890899/locations/global/memberships/gkeonprem-terraform-test",
    description: "test cluster",
    onPremVersion: "1.13.1-gke.35",
    annotations: {},
    networkConfig: {
        serviceAddressCidrBlocks: ["10.96.0.0/12"],
        podAddressCidrBlocks: ["192.168.0.0/16"],
        dhcpIpConfig: {
            enabled: true,
        },
        controlPlaneV2Config: {
            controlPlaneIpBlock: {
                ips: [{
                    hostname: "test-hostname",
                    ip: "10.0.0.1",
                }],
                netmask: "10.0.0.1/32",
                gateway: "test-gateway",
            },
        },
        vcenterNetwork: "test-vcenter-network",
    },
    controlPlaneNode: {
        cpus: 4,
        memory: 8192,
        replicas: 1,
        autoResizeConfig: {
            enabled: true,
        },
    },
    loadBalancer: {
        vipConfig: {
            controlPlaneVip: "10.251.133.5",
            ingressVip: "10.251.135.19",
        },
        f5Config: {
            address: "10.0.0.1",
            partition: "test-partition",
            snatPool: "test-snap-pool",
        },
    },
    dataplaneV2: {
        dataplaneV2Enabled: true,
        windowsDataplaneV2Enabled: true,
        advancedNetworking: true,
    },
    vmTrackingEnabled: true,
    enableControlPlaneV2: true,
    disableBundledIngress: true,
    authorization: {
        adminUsers: [{
            username: "testuser@gmail.com",
        }],
    },
    antiAffinityGroups: {
        aagConfigDisabled: true,
    },
    autoRepairConfig: {
        enabled: true,
    },
    storage: {
        vsphereCsiDisabled: true,
    },
});
Copy
import pulumi
import pulumi_gcp as gcp

cluster_f5lb = gcp.gkeonprem.VMwareCluster("cluster-f5lb",
    name="cluster-f5lb",
    location="us-west1",
    admin_cluster_membership="projects/870316890899/locations/global/memberships/gkeonprem-terraform-test",
    description="test cluster",
    on_prem_version="1.13.1-gke.35",
    annotations={},
    network_config={
        "service_address_cidr_blocks": ["10.96.0.0/12"],
        "pod_address_cidr_blocks": ["192.168.0.0/16"],
        "dhcp_ip_config": {
            "enabled": True,
        },
        "control_plane_v2_config": {
            "control_plane_ip_block": {
                "ips": [{
                    "hostname": "test-hostname",
                    "ip": "10.0.0.1",
                }],
                "netmask": "10.0.0.1/32",
                "gateway": "test-gateway",
            },
        },
        "vcenter_network": "test-vcenter-network",
    },
    control_plane_node={
        "cpus": 4,
        "memory": 8192,
        "replicas": 1,
        "auto_resize_config": {
            "enabled": True,
        },
    },
    load_balancer={
        "vip_config": {
            "control_plane_vip": "10.251.133.5",
            "ingress_vip": "10.251.135.19",
        },
        "f5_config": {
            "address": "10.0.0.1",
            "partition": "test-partition",
            "snat_pool": "test-snap-pool",
        },
    },
    dataplane_v2={
        "dataplane_v2_enabled": True,
        "windows_dataplane_v2_enabled": True,
        "advanced_networking": True,
    },
    vm_tracking_enabled=True,
    enable_control_plane_v2=True,
    disable_bundled_ingress=True,
    authorization={
        "admin_users": [{
            "username": "testuser@gmail.com",
        }],
    },
    anti_affinity_groups={
        "aag_config_disabled": True,
    },
    auto_repair_config={
        "enabled": True,
    },
    storage={
        "vsphere_csi_disabled": True,
    })
Copy
package main

import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/gkeonprem"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkeonprem.NewVMwareCluster(ctx, "cluster-f5lb", &gkeonprem.VMwareClusterArgs{
			Name:                   pulumi.String("cluster-f5lb"),
			Location:               pulumi.String("us-west1"),
			AdminClusterMembership: pulumi.String("projects/870316890899/locations/global/memberships/gkeonprem-terraform-test"),
			Description:            pulumi.String("test cluster"),
			OnPremVersion:          pulumi.String("1.13.1-gke.35"),
			Annotations:            pulumi.StringMap{},
			NetworkConfig: &gkeonprem.VMwareClusterNetworkConfigArgs{
				ServiceAddressCidrBlocks: pulumi.StringArray{
					pulumi.String("10.96.0.0/12"),
				},
				PodAddressCidrBlocks: pulumi.StringArray{
					pulumi.String("192.168.0.0/16"),
				},
				DhcpIpConfig: &gkeonprem.VMwareClusterNetworkConfigDhcpIpConfigArgs{
					Enabled: pulumi.Bool(true),
				},
				ControlPlaneV2Config: &gkeonprem.VMwareClusterNetworkConfigControlPlaneV2ConfigArgs{
					ControlPlaneIpBlock: &gkeonprem.VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlockArgs{
						Ips: gkeonprem.VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlockIpArray{
							&gkeonprem.VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlockIpArgs{
								Hostname: pulumi.String("test-hostname"),
								Ip:       pulumi.String("10.0.0.1"),
							},
						},
						Netmask: pulumi.String("10.0.0.1/32"),
						Gateway: pulumi.String("test-gateway"),
					},
				},
				VcenterNetwork: pulumi.String("test-vcenter-network"),
			},
			ControlPlaneNode: &gkeonprem.VMwareClusterControlPlaneNodeArgs{
				Cpus:     pulumi.Int(4),
				Memory:   pulumi.Int(8192),
				Replicas: pulumi.Int(1),
				AutoResizeConfig: &gkeonprem.VMwareClusterControlPlaneNodeAutoResizeConfigArgs{
					Enabled: pulumi.Bool(true),
				},
			},
			LoadBalancer: &gkeonprem.VMwareClusterLoadBalancerArgs{
				VipConfig: &gkeonprem.VMwareClusterLoadBalancerVipConfigArgs{
					ControlPlaneVip: pulumi.String("10.251.133.5"),
					IngressVip:      pulumi.String("10.251.135.19"),
				},
				F5Config: &gkeonprem.VMwareClusterLoadBalancerF5ConfigArgs{
					Address:   pulumi.String("10.0.0.1"),
					Partition: pulumi.String("test-partition"),
					SnatPool:  pulumi.String("test-snap-pool"),
				},
			},
			DataplaneV2: &gkeonprem.VMwareClusterDataplaneV2Args{
				DataplaneV2Enabled:        pulumi.Bool(true),
				WindowsDataplaneV2Enabled: pulumi.Bool(true),
				AdvancedNetworking:        pulumi.Bool(true),
			},
			VmTrackingEnabled:     pulumi.Bool(true),
			EnableControlPlaneV2:  pulumi.Bool(true),
			DisableBundledIngress: pulumi.Bool(true),
			Authorization: &gkeonprem.VMwareClusterAuthorizationArgs{
				AdminUsers: gkeonprem.VMwareClusterAuthorizationAdminUserArray{
					&gkeonprem.VMwareClusterAuthorizationAdminUserArgs{
						Username: pulumi.String("testuser@gmail.com"),
					},
				},
			},
			AntiAffinityGroups: &gkeonprem.VMwareClusterAntiAffinityGroupsArgs{
				AagConfigDisabled: pulumi.Bool(true),
			},
			AutoRepairConfig: &gkeonprem.VMwareClusterAutoRepairConfigArgs{
				Enabled: pulumi.Bool(true),
			},
			Storage: &gkeonprem.VMwareClusterStorageArgs{
				VsphereCsiDisabled: pulumi.Bool(true),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;

return await Deployment.RunAsync(() => 
{
    var cluster_f5lb = new Gcp.GkeOnPrem.VMwareCluster("cluster-f5lb", new()
    {
        Name = "cluster-f5lb",
        Location = "us-west1",
        AdminClusterMembership = "projects/870316890899/locations/global/memberships/gkeonprem-terraform-test",
        Description = "test cluster",
        OnPremVersion = "1.13.1-gke.35",
        Annotations = null,
        NetworkConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigArgs
        {
            ServiceAddressCidrBlocks = new[]
            {
                "10.96.0.0/12",
            },
            PodAddressCidrBlocks = new[]
            {
                "192.168.0.0/16",
            },
            DhcpIpConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigDhcpIpConfigArgs
            {
                Enabled = true,
            },
            ControlPlaneV2Config = new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigControlPlaneV2ConfigArgs
            {
                ControlPlaneIpBlock = new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlockArgs
                {
                    Ips = new[]
                    {
                        new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlockIpArgs
                        {
                            Hostname = "test-hostname",
                            Ip = "10.0.0.1",
                        },
                    },
                    Netmask = "10.0.0.1/32",
                    Gateway = "test-gateway",
                },
            },
            VcenterNetwork = "test-vcenter-network",
        },
        ControlPlaneNode = new Gcp.GkeOnPrem.Inputs.VMwareClusterControlPlaneNodeArgs
        {
            Cpus = 4,
            Memory = 8192,
            Replicas = 1,
            AutoResizeConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterControlPlaneNodeAutoResizeConfigArgs
            {
                Enabled = true,
            },
        },
        LoadBalancer = new Gcp.GkeOnPrem.Inputs.VMwareClusterLoadBalancerArgs
        {
            VipConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterLoadBalancerVipConfigArgs
            {
                ControlPlaneVip = "10.251.133.5",
                IngressVip = "10.251.135.19",
            },
            F5Config = new Gcp.GkeOnPrem.Inputs.VMwareClusterLoadBalancerF5ConfigArgs
            {
                Address = "10.0.0.1",
                Partition = "test-partition",
                SnatPool = "test-snap-pool",
            },
        },
        DataplaneV2 = new Gcp.GkeOnPrem.Inputs.VMwareClusterDataplaneV2Args
        {
            DataplaneV2Enabled = true,
            WindowsDataplaneV2Enabled = true,
            AdvancedNetworking = true,
        },
        VmTrackingEnabled = true,
        EnableControlPlaneV2 = true,
        DisableBundledIngress = true,
        Authorization = new Gcp.GkeOnPrem.Inputs.VMwareClusterAuthorizationArgs
        {
            AdminUsers = new[]
            {
                new Gcp.GkeOnPrem.Inputs.VMwareClusterAuthorizationAdminUserArgs
                {
                    Username = "testuser@gmail.com",
                },
            },
        },
        AntiAffinityGroups = new Gcp.GkeOnPrem.Inputs.VMwareClusterAntiAffinityGroupsArgs
        {
            AagConfigDisabled = true,
        },
        AutoRepairConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterAutoRepairConfigArgs
        {
            Enabled = true,
        },
        Storage = new Gcp.GkeOnPrem.Inputs.VMwareClusterStorageArgs
        {
            VsphereCsiDisabled = true,
        },
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.gkeonprem.VMwareCluster;
import com.pulumi.gcp.gkeonprem.VMwareClusterArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterNetworkConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterNetworkConfigDhcpIpConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterNetworkConfigControlPlaneV2ConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlockArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterControlPlaneNodeArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterControlPlaneNodeAutoResizeConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterLoadBalancerArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterLoadBalancerVipConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterLoadBalancerF5ConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterDataplaneV2Args;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterAuthorizationArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterAntiAffinityGroupsArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterAutoRepairConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterStorageArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

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

    public static void stack(Context ctx) {
        var cluster_f5lb = new VMwareCluster("cluster-f5lb", VMwareClusterArgs.builder()
            .name("cluster-f5lb")
            .location("us-west1")
            .adminClusterMembership("projects/870316890899/locations/global/memberships/gkeonprem-terraform-test")
            .description("test cluster")
            .onPremVersion("1.13.1-gke.35")
            .annotations(Map.ofEntries(
            ))
            .networkConfig(VMwareClusterNetworkConfigArgs.builder()
                .serviceAddressCidrBlocks("10.96.0.0/12")
                .podAddressCidrBlocks("192.168.0.0/16")
                .dhcpIpConfig(VMwareClusterNetworkConfigDhcpIpConfigArgs.builder()
                    .enabled(true)
                    .build())
                .controlPlaneV2Config(VMwareClusterNetworkConfigControlPlaneV2ConfigArgs.builder()
                    .controlPlaneIpBlock(VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlockArgs.builder()
                        .ips(VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlockIpArgs.builder()
                            .hostname("test-hostname")
                            .ip("10.0.0.1")
                            .build())
                        .netmask("10.0.0.1/32")
                        .gateway("test-gateway")
                        .build())
                    .build())
                .vcenterNetwork("test-vcenter-network")
                .build())
            .controlPlaneNode(VMwareClusterControlPlaneNodeArgs.builder()
                .cpus(4)
                .memory(8192)
                .replicas(1)
                .autoResizeConfig(VMwareClusterControlPlaneNodeAutoResizeConfigArgs.builder()
                    .enabled(true)
                    .build())
                .build())
            .loadBalancer(VMwareClusterLoadBalancerArgs.builder()
                .vipConfig(VMwareClusterLoadBalancerVipConfigArgs.builder()
                    .controlPlaneVip("10.251.133.5")
                    .ingressVip("10.251.135.19")
                    .build())
                .f5Config(VMwareClusterLoadBalancerF5ConfigArgs.builder()
                    .address("10.0.0.1")
                    .partition("test-partition")
                    .snatPool("test-snap-pool")
                    .build())
                .build())
            .dataplaneV2(VMwareClusterDataplaneV2Args.builder()
                .dataplaneV2Enabled(true)
                .windowsDataplaneV2Enabled(true)
                .advancedNetworking(true)
                .build())
            .vmTrackingEnabled(true)
            .enableControlPlaneV2(true)
            .disableBundledIngress(true)
            .authorization(VMwareClusterAuthorizationArgs.builder()
                .adminUsers(VMwareClusterAuthorizationAdminUserArgs.builder()
                    .username("testuser@gmail.com")
                    .build())
                .build())
            .antiAffinityGroups(VMwareClusterAntiAffinityGroupsArgs.builder()
                .aagConfigDisabled(true)
                .build())
            .autoRepairConfig(VMwareClusterAutoRepairConfigArgs.builder()
                .enabled(true)
                .build())
            .storage(VMwareClusterStorageArgs.builder()
                .vsphereCsiDisabled(true)
                .build())
            .build());

    }
}
Copy
resources:
  cluster-f5lb:
    type: gcp:gkeonprem:VMwareCluster
    properties:
      name: cluster-f5lb
      location: us-west1
      adminClusterMembership: projects/870316890899/locations/global/memberships/gkeonprem-terraform-test
      description: test cluster
      onPremVersion: 1.13.1-gke.35
      annotations: {}
      networkConfig:
        serviceAddressCidrBlocks:
          - 10.96.0.0/12
        podAddressCidrBlocks:
          - 192.168.0.0/16
        dhcpIpConfig:
          enabled: true
        controlPlaneV2Config:
          controlPlaneIpBlock:
            ips:
              - hostname: test-hostname
                ip: 10.0.0.1
            netmask: 10.0.0.1/32
            gateway: test-gateway
        vcenterNetwork: test-vcenter-network
      controlPlaneNode:
        cpus: 4
        memory: 8192
        replicas: 1
        autoResizeConfig:
          enabled: true
      loadBalancer:
        vipConfig:
          controlPlaneVip: 10.251.133.5
          ingressVip: 10.251.135.19
        f5Config:
          address: 10.0.0.1
          partition: test-partition
          snatPool: test-snap-pool
      dataplaneV2:
        dataplaneV2Enabled: true
        windowsDataplaneV2Enabled: true
        advancedNetworking: true
      vmTrackingEnabled: true
      enableControlPlaneV2: true
      disableBundledIngress: true
      authorization:
        adminUsers:
          - username: testuser@gmail.com
      antiAffinityGroups:
        aagConfigDisabled: true
      autoRepairConfig:
        enabled: true
      storage:
        vsphereCsiDisabled: true
Copy

Gkeonprem Vmware Cluster Manuallb

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

const cluster_manuallb = new gcp.gkeonprem.VMwareCluster("cluster-manuallb", {
    name: "cluster-manuallb",
    location: "us-west1",
    adminClusterMembership: "projects/870316890899/locations/global/memberships/gkeonprem-terraform-test",
    description: "test cluster",
    onPremVersion: "1.13.1-gke.35",
    annotations: {},
    networkConfig: {
        serviceAddressCidrBlocks: ["10.96.0.0/12"],
        podAddressCidrBlocks: ["192.168.0.0/16"],
        hostConfig: {
            dnsServers: ["10.254.41.1"],
            ntpServers: ["216.239.35.8"],
            dnsSearchDomains: ["test-domain"],
        },
        staticIpConfig: {
            ipBlocks: [{
                netmask: "255.255.252.0",
                gateway: "10.251.31.254",
                ips: [
                    {
                        ip: "10.251.30.153",
                        hostname: "test-hostname1",
                    },
                    {
                        ip: "10.251.31.206",
                        hostname: "test-hostname2",
                    },
                    {
                        ip: "10.251.31.193",
                        hostname: "test-hostname3",
                    },
                    {
                        ip: "10.251.30.230",
                        hostname: "test-hostname4",
                    },
                ],
            }],
        },
    },
    controlPlaneNode: {
        cpus: 4,
        memory: 8192,
        replicas: 1,
        autoResizeConfig: {
            enabled: true,
        },
    },
    loadBalancer: {
        vipConfig: {
            controlPlaneVip: "10.251.133.5",
            ingressVip: "10.251.135.19",
        },
        manualLbConfig: {
            ingressHttpNodePort: 30005,
            ingressHttpsNodePort: 30006,
            controlPlaneNodePort: 30007,
            konnectivityServerNodePort: 30008,
        },
    },
    vcenter: {
        resourcePool: "test-resource-pool",
        datastore: "test-datastore",
        datacenter: "test-datacenter",
        cluster: "test-cluster",
        folder: "test-folder",
        caCertData: "test-ca-cert-data",
        storagePolicyName: "test-storage-policy-name",
    },
    dataplaneV2: {
        dataplaneV2Enabled: true,
        windowsDataplaneV2Enabled: true,
        advancedNetworking: true,
    },
    vmTrackingEnabled: true,
    enableControlPlaneV2: true,
    enableAdvancedCluster: true,
    upgradePolicy: {
        controlPlaneOnly: true,
    },
    authorization: {
        adminUsers: [{
            username: "testuser@gmail.com",
        }],
    },
    antiAffinityGroups: {
        aagConfigDisabled: true,
    },
    autoRepairConfig: {
        enabled: true,
    },
});
Copy
import pulumi
import pulumi_gcp as gcp

cluster_manuallb = gcp.gkeonprem.VMwareCluster("cluster-manuallb",
    name="cluster-manuallb",
    location="us-west1",
    admin_cluster_membership="projects/870316890899/locations/global/memberships/gkeonprem-terraform-test",
    description="test cluster",
    on_prem_version="1.13.1-gke.35",
    annotations={},
    network_config={
        "service_address_cidr_blocks": ["10.96.0.0/12"],
        "pod_address_cidr_blocks": ["192.168.0.0/16"],
        "host_config": {
            "dns_servers": ["10.254.41.1"],
            "ntp_servers": ["216.239.35.8"],
            "dns_search_domains": ["test-domain"],
        },
        "static_ip_config": {
            "ip_blocks": [{
                "netmask": "255.255.252.0",
                "gateway": "10.251.31.254",
                "ips": [
                    {
                        "ip": "10.251.30.153",
                        "hostname": "test-hostname1",
                    },
                    {
                        "ip": "10.251.31.206",
                        "hostname": "test-hostname2",
                    },
                    {
                        "ip": "10.251.31.193",
                        "hostname": "test-hostname3",
                    },
                    {
                        "ip": "10.251.30.230",
                        "hostname": "test-hostname4",
                    },
                ],
            }],
        },
    },
    control_plane_node={
        "cpus": 4,
        "memory": 8192,
        "replicas": 1,
        "auto_resize_config": {
            "enabled": True,
        },
    },
    load_balancer={
        "vip_config": {
            "control_plane_vip": "10.251.133.5",
            "ingress_vip": "10.251.135.19",
        },
        "manual_lb_config": {
            "ingress_http_node_port": 30005,
            "ingress_https_node_port": 30006,
            "control_plane_node_port": 30007,
            "konnectivity_server_node_port": 30008,
        },
    },
    vcenter={
        "resource_pool": "test-resource-pool",
        "datastore": "test-datastore",
        "datacenter": "test-datacenter",
        "cluster": "test-cluster",
        "folder": "test-folder",
        "ca_cert_data": "test-ca-cert-data",
        "storage_policy_name": "test-storage-policy-name",
    },
    dataplane_v2={
        "dataplane_v2_enabled": True,
        "windows_dataplane_v2_enabled": True,
        "advanced_networking": True,
    },
    vm_tracking_enabled=True,
    enable_control_plane_v2=True,
    enable_advanced_cluster=True,
    upgrade_policy={
        "control_plane_only": True,
    },
    authorization={
        "admin_users": [{
            "username": "testuser@gmail.com",
        }],
    },
    anti_affinity_groups={
        "aag_config_disabled": True,
    },
    auto_repair_config={
        "enabled": True,
    })
Copy
package main

import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/gkeonprem"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkeonprem.NewVMwareCluster(ctx, "cluster-manuallb", &gkeonprem.VMwareClusterArgs{
			Name:                   pulumi.String("cluster-manuallb"),
			Location:               pulumi.String("us-west1"),
			AdminClusterMembership: pulumi.String("projects/870316890899/locations/global/memberships/gkeonprem-terraform-test"),
			Description:            pulumi.String("test cluster"),
			OnPremVersion:          pulumi.String("1.13.1-gke.35"),
			Annotations:            pulumi.StringMap{},
			NetworkConfig: &gkeonprem.VMwareClusterNetworkConfigArgs{
				ServiceAddressCidrBlocks: pulumi.StringArray{
					pulumi.String("10.96.0.0/12"),
				},
				PodAddressCidrBlocks: pulumi.StringArray{
					pulumi.String("192.168.0.0/16"),
				},
				HostConfig: &gkeonprem.VMwareClusterNetworkConfigHostConfigArgs{
					DnsServers: pulumi.StringArray{
						pulumi.String("10.254.41.1"),
					},
					NtpServers: pulumi.StringArray{
						pulumi.String("216.239.35.8"),
					},
					DnsSearchDomains: pulumi.StringArray{
						pulumi.String("test-domain"),
					},
				},
				StaticIpConfig: &gkeonprem.VMwareClusterNetworkConfigStaticIpConfigArgs{
					IpBlocks: gkeonprem.VMwareClusterNetworkConfigStaticIpConfigIpBlockArray{
						&gkeonprem.VMwareClusterNetworkConfigStaticIpConfigIpBlockArgs{
							Netmask: pulumi.String("255.255.252.0"),
							Gateway: pulumi.String("10.251.31.254"),
							Ips: gkeonprem.VMwareClusterNetworkConfigStaticIpConfigIpBlockIpArray{
								&gkeonprem.VMwareClusterNetworkConfigStaticIpConfigIpBlockIpArgs{
									Ip:       pulumi.String("10.251.30.153"),
									Hostname: pulumi.String("test-hostname1"),
								},
								&gkeonprem.VMwareClusterNetworkConfigStaticIpConfigIpBlockIpArgs{
									Ip:       pulumi.String("10.251.31.206"),
									Hostname: pulumi.String("test-hostname2"),
								},
								&gkeonprem.VMwareClusterNetworkConfigStaticIpConfigIpBlockIpArgs{
									Ip:       pulumi.String("10.251.31.193"),
									Hostname: pulumi.String("test-hostname3"),
								},
								&gkeonprem.VMwareClusterNetworkConfigStaticIpConfigIpBlockIpArgs{
									Ip:       pulumi.String("10.251.30.230"),
									Hostname: pulumi.String("test-hostname4"),
								},
							},
						},
					},
				},
			},
			ControlPlaneNode: &gkeonprem.VMwareClusterControlPlaneNodeArgs{
				Cpus:     pulumi.Int(4),
				Memory:   pulumi.Int(8192),
				Replicas: pulumi.Int(1),
				AutoResizeConfig: &gkeonprem.VMwareClusterControlPlaneNodeAutoResizeConfigArgs{
					Enabled: pulumi.Bool(true),
				},
			},
			LoadBalancer: &gkeonprem.VMwareClusterLoadBalancerArgs{
				VipConfig: &gkeonprem.VMwareClusterLoadBalancerVipConfigArgs{
					ControlPlaneVip: pulumi.String("10.251.133.5"),
					IngressVip:      pulumi.String("10.251.135.19"),
				},
				ManualLbConfig: &gkeonprem.VMwareClusterLoadBalancerManualLbConfigArgs{
					IngressHttpNodePort:        pulumi.Int(30005),
					IngressHttpsNodePort:       pulumi.Int(30006),
					ControlPlaneNodePort:       pulumi.Int(30007),
					KonnectivityServerNodePort: pulumi.Int(30008),
				},
			},
			Vcenter: &gkeonprem.VMwareClusterVcenterArgs{
				ResourcePool:      pulumi.String("test-resource-pool"),
				Datastore:         pulumi.String("test-datastore"),
				Datacenter:        pulumi.String("test-datacenter"),
				Cluster:           pulumi.String("test-cluster"),
				Folder:            pulumi.String("test-folder"),
				CaCertData:        pulumi.String("test-ca-cert-data"),
				StoragePolicyName: pulumi.String("test-storage-policy-name"),
			},
			DataplaneV2: &gkeonprem.VMwareClusterDataplaneV2Args{
				DataplaneV2Enabled:        pulumi.Bool(true),
				WindowsDataplaneV2Enabled: pulumi.Bool(true),
				AdvancedNetworking:        pulumi.Bool(true),
			},
			VmTrackingEnabled:     pulumi.Bool(true),
			EnableControlPlaneV2:  pulumi.Bool(true),
			EnableAdvancedCluster: pulumi.Bool(true),
			UpgradePolicy: &gkeonprem.VMwareClusterUpgradePolicyArgs{
				ControlPlaneOnly: pulumi.Bool(true),
			},
			Authorization: &gkeonprem.VMwareClusterAuthorizationArgs{
				AdminUsers: gkeonprem.VMwareClusterAuthorizationAdminUserArray{
					&gkeonprem.VMwareClusterAuthorizationAdminUserArgs{
						Username: pulumi.String("testuser@gmail.com"),
					},
				},
			},
			AntiAffinityGroups: &gkeonprem.VMwareClusterAntiAffinityGroupsArgs{
				AagConfigDisabled: pulumi.Bool(true),
			},
			AutoRepairConfig: &gkeonprem.VMwareClusterAutoRepairConfigArgs{
				Enabled: pulumi.Bool(true),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;

return await Deployment.RunAsync(() => 
{
    var cluster_manuallb = new Gcp.GkeOnPrem.VMwareCluster("cluster-manuallb", new()
    {
        Name = "cluster-manuallb",
        Location = "us-west1",
        AdminClusterMembership = "projects/870316890899/locations/global/memberships/gkeonprem-terraform-test",
        Description = "test cluster",
        OnPremVersion = "1.13.1-gke.35",
        Annotations = null,
        NetworkConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigArgs
        {
            ServiceAddressCidrBlocks = new[]
            {
                "10.96.0.0/12",
            },
            PodAddressCidrBlocks = new[]
            {
                "192.168.0.0/16",
            },
            HostConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigHostConfigArgs
            {
                DnsServers = new[]
                {
                    "10.254.41.1",
                },
                NtpServers = new[]
                {
                    "216.239.35.8",
                },
                DnsSearchDomains = new[]
                {
                    "test-domain",
                },
            },
            StaticIpConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigStaticIpConfigArgs
            {
                IpBlocks = new[]
                {
                    new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigStaticIpConfigIpBlockArgs
                    {
                        Netmask = "255.255.252.0",
                        Gateway = "10.251.31.254",
                        Ips = new[]
                        {
                            new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigStaticIpConfigIpBlockIpArgs
                            {
                                Ip = "10.251.30.153",
                                Hostname = "test-hostname1",
                            },
                            new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigStaticIpConfigIpBlockIpArgs
                            {
                                Ip = "10.251.31.206",
                                Hostname = "test-hostname2",
                            },
                            new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigStaticIpConfigIpBlockIpArgs
                            {
                                Ip = "10.251.31.193",
                                Hostname = "test-hostname3",
                            },
                            new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigStaticIpConfigIpBlockIpArgs
                            {
                                Ip = "10.251.30.230",
                                Hostname = "test-hostname4",
                            },
                        },
                    },
                },
            },
        },
        ControlPlaneNode = new Gcp.GkeOnPrem.Inputs.VMwareClusterControlPlaneNodeArgs
        {
            Cpus = 4,
            Memory = 8192,
            Replicas = 1,
            AutoResizeConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterControlPlaneNodeAutoResizeConfigArgs
            {
                Enabled = true,
            },
        },
        LoadBalancer = new Gcp.GkeOnPrem.Inputs.VMwareClusterLoadBalancerArgs
        {
            VipConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterLoadBalancerVipConfigArgs
            {
                ControlPlaneVip = "10.251.133.5",
                IngressVip = "10.251.135.19",
            },
            ManualLbConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterLoadBalancerManualLbConfigArgs
            {
                IngressHttpNodePort = 30005,
                IngressHttpsNodePort = 30006,
                ControlPlaneNodePort = 30007,
                KonnectivityServerNodePort = 30008,
            },
        },
        Vcenter = new Gcp.GkeOnPrem.Inputs.VMwareClusterVcenterArgs
        {
            ResourcePool = "test-resource-pool",
            Datastore = "test-datastore",
            Datacenter = "test-datacenter",
            Cluster = "test-cluster",
            Folder = "test-folder",
            CaCertData = "test-ca-cert-data",
            StoragePolicyName = "test-storage-policy-name",
        },
        DataplaneV2 = new Gcp.GkeOnPrem.Inputs.VMwareClusterDataplaneV2Args
        {
            DataplaneV2Enabled = true,
            WindowsDataplaneV2Enabled = true,
            AdvancedNetworking = true,
        },
        VmTrackingEnabled = true,
        EnableControlPlaneV2 = true,
        EnableAdvancedCluster = true,
        UpgradePolicy = new Gcp.GkeOnPrem.Inputs.VMwareClusterUpgradePolicyArgs
        {
            ControlPlaneOnly = true,
        },
        Authorization = new Gcp.GkeOnPrem.Inputs.VMwareClusterAuthorizationArgs
        {
            AdminUsers = new[]
            {
                new Gcp.GkeOnPrem.Inputs.VMwareClusterAuthorizationAdminUserArgs
                {
                    Username = "testuser@gmail.com",
                },
            },
        },
        AntiAffinityGroups = new Gcp.GkeOnPrem.Inputs.VMwareClusterAntiAffinityGroupsArgs
        {
            AagConfigDisabled = true,
        },
        AutoRepairConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterAutoRepairConfigArgs
        {
            Enabled = true,
        },
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.gkeonprem.VMwareCluster;
import com.pulumi.gcp.gkeonprem.VMwareClusterArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterNetworkConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterNetworkConfigHostConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterNetworkConfigStaticIpConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterControlPlaneNodeArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterControlPlaneNodeAutoResizeConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterLoadBalancerArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterLoadBalancerVipConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterLoadBalancerManualLbConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterVcenterArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterDataplaneV2Args;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterUpgradePolicyArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterAuthorizationArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterAntiAffinityGroupsArgs;
import com.pulumi.gcp.gkeonprem.inputs.VMwareClusterAutoRepairConfigArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

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

    public static void stack(Context ctx) {
        var cluster_manuallb = new VMwareCluster("cluster-manuallb", VMwareClusterArgs.builder()
            .name("cluster-manuallb")
            .location("us-west1")
            .adminClusterMembership("projects/870316890899/locations/global/memberships/gkeonprem-terraform-test")
            .description("test cluster")
            .onPremVersion("1.13.1-gke.35")
            .annotations(Map.ofEntries(
            ))
            .networkConfig(VMwareClusterNetworkConfigArgs.builder()
                .serviceAddressCidrBlocks("10.96.0.0/12")
                .podAddressCidrBlocks("192.168.0.0/16")
                .hostConfig(VMwareClusterNetworkConfigHostConfigArgs.builder()
                    .dnsServers("10.254.41.1")
                    .ntpServers("216.239.35.8")
                    .dnsSearchDomains("test-domain")
                    .build())
                .staticIpConfig(VMwareClusterNetworkConfigStaticIpConfigArgs.builder()
                    .ipBlocks(VMwareClusterNetworkConfigStaticIpConfigIpBlockArgs.builder()
                        .netmask("255.255.252.0")
                        .gateway("10.251.31.254")
                        .ips(                        
                            VMwareClusterNetworkConfigStaticIpConfigIpBlockIpArgs.builder()
                                .ip("10.251.30.153")
                                .hostname("test-hostname1")
                                .build(),
                            VMwareClusterNetworkConfigStaticIpConfigIpBlockIpArgs.builder()
                                .ip("10.251.31.206")
                                .hostname("test-hostname2")
                                .build(),
                            VMwareClusterNetworkConfigStaticIpConfigIpBlockIpArgs.builder()
                                .ip("10.251.31.193")
                                .hostname("test-hostname3")
                                .build(),
                            VMwareClusterNetworkConfigStaticIpConfigIpBlockIpArgs.builder()
                                .ip("10.251.30.230")
                                .hostname("test-hostname4")
                                .build())
                        .build())
                    .build())
                .build())
            .controlPlaneNode(VMwareClusterControlPlaneNodeArgs.builder()
                .cpus(4)
                .memory(8192)
                .replicas(1)
                .autoResizeConfig(VMwareClusterControlPlaneNodeAutoResizeConfigArgs.builder()
                    .enabled(true)
                    .build())
                .build())
            .loadBalancer(VMwareClusterLoadBalancerArgs.builder()
                .vipConfig(VMwareClusterLoadBalancerVipConfigArgs.builder()
                    .controlPlaneVip("10.251.133.5")
                    .ingressVip("10.251.135.19")
                    .build())
                .manualLbConfig(VMwareClusterLoadBalancerManualLbConfigArgs.builder()
                    .ingressHttpNodePort(30005)
                    .ingressHttpsNodePort(30006)
                    .controlPlaneNodePort(30007)
                    .konnectivityServerNodePort(30008)
                    .build())
                .build())
            .vcenter(VMwareClusterVcenterArgs.builder()
                .resourcePool("test-resource-pool")
                .datastore("test-datastore")
                .datacenter("test-datacenter")
                .cluster("test-cluster")
                .folder("test-folder")
                .caCertData("test-ca-cert-data")
                .storagePolicyName("test-storage-policy-name")
                .build())
            .dataplaneV2(VMwareClusterDataplaneV2Args.builder()
                .dataplaneV2Enabled(true)
                .windowsDataplaneV2Enabled(true)
                .advancedNetworking(true)
                .build())
            .vmTrackingEnabled(true)
            .enableControlPlaneV2(true)
            .enableAdvancedCluster(true)
            .upgradePolicy(VMwareClusterUpgradePolicyArgs.builder()
                .controlPlaneOnly(true)
                .build())
            .authorization(VMwareClusterAuthorizationArgs.builder()
                .adminUsers(VMwareClusterAuthorizationAdminUserArgs.builder()
                    .username("testuser@gmail.com")
                    .build())
                .build())
            .antiAffinityGroups(VMwareClusterAntiAffinityGroupsArgs.builder()
                .aagConfigDisabled(true)
                .build())
            .autoRepairConfig(VMwareClusterAutoRepairConfigArgs.builder()
                .enabled(true)
                .build())
            .build());

    }
}
Copy
resources:
  cluster-manuallb:
    type: gcp:gkeonprem:VMwareCluster
    properties:
      name: cluster-manuallb
      location: us-west1
      adminClusterMembership: projects/870316890899/locations/global/memberships/gkeonprem-terraform-test
      description: test cluster
      onPremVersion: 1.13.1-gke.35
      annotations: {}
      networkConfig:
        serviceAddressCidrBlocks:
          - 10.96.0.0/12
        podAddressCidrBlocks:
          - 192.168.0.0/16
        hostConfig:
          dnsServers:
            - 10.254.41.1
          ntpServers:
            - 216.239.35.8
          dnsSearchDomains:
            - test-domain
        staticIpConfig:
          ipBlocks:
            - netmask: 255.255.252.0
              gateway: 10.251.31.254
              ips:
                - ip: 10.251.30.153
                  hostname: test-hostname1
                - ip: 10.251.31.206
                  hostname: test-hostname2
                - ip: 10.251.31.193
                  hostname: test-hostname3
                - ip: 10.251.30.230
                  hostname: test-hostname4
      controlPlaneNode:
        cpus: 4
        memory: 8192
        replicas: 1
        autoResizeConfig:
          enabled: true
      loadBalancer:
        vipConfig:
          controlPlaneVip: 10.251.133.5
          ingressVip: 10.251.135.19
        manualLbConfig:
          ingressHttpNodePort: 30005
          ingressHttpsNodePort: 30006
          controlPlaneNodePort: 30007
          konnectivityServerNodePort: 30008
      vcenter:
        resourcePool: test-resource-pool
        datastore: test-datastore
        datacenter: test-datacenter
        cluster: test-cluster
        folder: test-folder
        caCertData: test-ca-cert-data
        storagePolicyName: test-storage-policy-name
      dataplaneV2:
        dataplaneV2Enabled: true
        windowsDataplaneV2Enabled: true
        advancedNetworking: true
      vmTrackingEnabled: true
      enableControlPlaneV2: true
      enableAdvancedCluster: true
      upgradePolicy:
        controlPlaneOnly: true
      authorization:
        adminUsers:
          - username: testuser@gmail.com
      antiAffinityGroups:
        aagConfigDisabled: true
      autoRepairConfig:
        enabled: true
Copy

Create VMwareCluster Resource

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

Constructor syntax

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

@overload
def VMwareCluster(resource_name: str,
                  opts: Optional[ResourceOptions] = None,
                  on_prem_version: Optional[str] = None,
                  control_plane_node: Optional[VMwareClusterControlPlaneNodeArgs] = None,
                  admin_cluster_membership: Optional[str] = None,
                  location: Optional[str] = None,
                  load_balancer: Optional[VMwareClusterLoadBalancerArgs] = None,
                  name: Optional[str] = None,
                  dataplane_v2: Optional[VMwareClusterDataplaneV2Args] = None,
                  description: Optional[str] = None,
                  disable_bundled_ingress: Optional[bool] = None,
                  enable_advanced_cluster: Optional[bool] = None,
                  annotations: Optional[Mapping[str, str]] = None,
                  authorization: Optional[VMwareClusterAuthorizationArgs] = None,
                  enable_control_plane_v2: Optional[bool] = None,
                  auto_repair_config: Optional[VMwareClusterAutoRepairConfigArgs] = None,
                  network_config: Optional[VMwareClusterNetworkConfigArgs] = None,
                  anti_affinity_groups: Optional[VMwareClusterAntiAffinityGroupsArgs] = None,
                  project: Optional[str] = None,
                  storage: Optional[VMwareClusterStorageArgs] = None,
                  upgrade_policy: Optional[VMwareClusterUpgradePolicyArgs] = None,
                  vcenter: Optional[VMwareClusterVcenterArgs] = None,
                  vm_tracking_enabled: Optional[bool] = None)
func NewVMwareCluster(ctx *Context, name string, args VMwareClusterArgs, opts ...ResourceOption) (*VMwareCluster, error)
public VMwareCluster(string name, VMwareClusterArgs args, CustomResourceOptions? opts = null)
public VMwareCluster(String name, VMwareClusterArgs args)
public VMwareCluster(String name, VMwareClusterArgs args, CustomResourceOptions options)
type: gcp:gkeonprem:VMwareCluster
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. VMwareClusterArgs
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. VMwareClusterArgs
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. VMwareClusterArgs
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. VMwareClusterArgs
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. VMwareClusterArgs
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 vmwareClusterResource = new Gcp.GkeOnPrem.VMwareCluster("vmwareClusterResource", new()
{
    OnPremVersion = "string",
    ControlPlaneNode = new Gcp.GkeOnPrem.Inputs.VMwareClusterControlPlaneNodeArgs
    {
        AutoResizeConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterControlPlaneNodeAutoResizeConfigArgs
        {
            Enabled = false,
        },
        Cpus = 0,
        Memory = 0,
        Replicas = 0,
        VsphereConfigs = new[]
        {
            new Gcp.GkeOnPrem.Inputs.VMwareClusterControlPlaneNodeVsphereConfigArgs
            {
                Datastore = "string",
                StoragePolicyName = "string",
            },
        },
    },
    AdminClusterMembership = "string",
    Location = "string",
    LoadBalancer = new Gcp.GkeOnPrem.Inputs.VMwareClusterLoadBalancerArgs
    {
        F5Config = new Gcp.GkeOnPrem.Inputs.VMwareClusterLoadBalancerF5ConfigArgs
        {
            Address = "string",
            Partition = "string",
            SnatPool = "string",
        },
        ManualLbConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterLoadBalancerManualLbConfigArgs
        {
            ControlPlaneNodePort = 0,
            IngressHttpNodePort = 0,
            IngressHttpsNodePort = 0,
            KonnectivityServerNodePort = 0,
        },
        MetalLbConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterLoadBalancerMetalLbConfigArgs
        {
            AddressPools = new[]
            {
                new Gcp.GkeOnPrem.Inputs.VMwareClusterLoadBalancerMetalLbConfigAddressPoolArgs
                {
                    Addresses = new[]
                    {
                        "string",
                    },
                    Pool = "string",
                    AvoidBuggyIps = false,
                    ManualAssign = false,
                },
            },
        },
        VipConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterLoadBalancerVipConfigArgs
        {
            ControlPlaneVip = "string",
            IngressVip = "string",
        },
    },
    Name = "string",
    DataplaneV2 = new Gcp.GkeOnPrem.Inputs.VMwareClusterDataplaneV2Args
    {
        AdvancedNetworking = false,
        DataplaneV2Enabled = false,
        WindowsDataplaneV2Enabled = false,
    },
    Description = "string",
    DisableBundledIngress = false,
    EnableAdvancedCluster = false,
    Annotations = 
    {
        { "string", "string" },
    },
    Authorization = new Gcp.GkeOnPrem.Inputs.VMwareClusterAuthorizationArgs
    {
        AdminUsers = new[]
        {
            new Gcp.GkeOnPrem.Inputs.VMwareClusterAuthorizationAdminUserArgs
            {
                Username = "string",
            },
        },
    },
    EnableControlPlaneV2 = false,
    AutoRepairConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterAutoRepairConfigArgs
    {
        Enabled = false,
    },
    NetworkConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigArgs
    {
        PodAddressCidrBlocks = new[]
        {
            "string",
        },
        ServiceAddressCidrBlocks = new[]
        {
            "string",
        },
        ControlPlaneV2Config = new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigControlPlaneV2ConfigArgs
        {
            ControlPlaneIpBlock = new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlockArgs
            {
                Gateway = "string",
                Ips = new[]
                {
                    new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlockIpArgs
                    {
                        Hostname = "string",
                        Ip = "string",
                    },
                },
                Netmask = "string",
            },
        },
        DhcpIpConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigDhcpIpConfigArgs
        {
            Enabled = false,
        },
        HostConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigHostConfigArgs
        {
            DnsSearchDomains = new[]
            {
                "string",
            },
            DnsServers = new[]
            {
                "string",
            },
            NtpServers = new[]
            {
                "string",
            },
        },
        StaticIpConfig = new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigStaticIpConfigArgs
        {
            IpBlocks = new[]
            {
                new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigStaticIpConfigIpBlockArgs
                {
                    Gateway = "string",
                    Ips = new[]
                    {
                        new Gcp.GkeOnPrem.Inputs.VMwareClusterNetworkConfigStaticIpConfigIpBlockIpArgs
                        {
                            Ip = "string",
                            Hostname = "string",
                        },
                    },
                    Netmask = "string",
                },
            },
        },
        VcenterNetwork = "string",
    },
    AntiAffinityGroups = new Gcp.GkeOnPrem.Inputs.VMwareClusterAntiAffinityGroupsArgs
    {
        AagConfigDisabled = false,
    },
    Project = "string",
    Storage = new Gcp.GkeOnPrem.Inputs.VMwareClusterStorageArgs
    {
        VsphereCsiDisabled = false,
    },
    UpgradePolicy = new Gcp.GkeOnPrem.Inputs.VMwareClusterUpgradePolicyArgs
    {
        ControlPlaneOnly = false,
    },
    Vcenter = new Gcp.GkeOnPrem.Inputs.VMwareClusterVcenterArgs
    {
        Address = "string",
        CaCertData = "string",
        Cluster = "string",
        Datacenter = "string",
        Datastore = "string",
        Folder = "string",
        ResourcePool = "string",
        StoragePolicyName = "string",
    },
    VmTrackingEnabled = false,
});
Copy
example, err := gkeonprem.NewVMwareCluster(ctx, "vmwareClusterResource", &gkeonprem.VMwareClusterArgs{
	OnPremVersion: pulumi.String("string"),
	ControlPlaneNode: &gkeonprem.VMwareClusterControlPlaneNodeArgs{
		AutoResizeConfig: &gkeonprem.VMwareClusterControlPlaneNodeAutoResizeConfigArgs{
			Enabled: pulumi.Bool(false),
		},
		Cpus:     pulumi.Int(0),
		Memory:   pulumi.Int(0),
		Replicas: pulumi.Int(0),
		VsphereConfigs: gkeonprem.VMwareClusterControlPlaneNodeVsphereConfigArray{
			&gkeonprem.VMwareClusterControlPlaneNodeVsphereConfigArgs{
				Datastore:         pulumi.String("string"),
				StoragePolicyName: pulumi.String("string"),
			},
		},
	},
	AdminClusterMembership: pulumi.String("string"),
	Location:               pulumi.String("string"),
	LoadBalancer: &gkeonprem.VMwareClusterLoadBalancerArgs{
		F5Config: &gkeonprem.VMwareClusterLoadBalancerF5ConfigArgs{
			Address:   pulumi.String("string"),
			Partition: pulumi.String("string"),
			SnatPool:  pulumi.String("string"),
		},
		ManualLbConfig: &gkeonprem.VMwareClusterLoadBalancerManualLbConfigArgs{
			ControlPlaneNodePort:       pulumi.Int(0),
			IngressHttpNodePort:        pulumi.Int(0),
			IngressHttpsNodePort:       pulumi.Int(0),
			KonnectivityServerNodePort: pulumi.Int(0),
		},
		MetalLbConfig: &gkeonprem.VMwareClusterLoadBalancerMetalLbConfigArgs{
			AddressPools: gkeonprem.VMwareClusterLoadBalancerMetalLbConfigAddressPoolArray{
				&gkeonprem.VMwareClusterLoadBalancerMetalLbConfigAddressPoolArgs{
					Addresses: pulumi.StringArray{
						pulumi.String("string"),
					},
					Pool:          pulumi.String("string"),
					AvoidBuggyIps: pulumi.Bool(false),
					ManualAssign:  pulumi.Bool(false),
				},
			},
		},
		VipConfig: &gkeonprem.VMwareClusterLoadBalancerVipConfigArgs{
			ControlPlaneVip: pulumi.String("string"),
			IngressVip:      pulumi.String("string"),
		},
	},
	Name: pulumi.String("string"),
	DataplaneV2: &gkeonprem.VMwareClusterDataplaneV2Args{
		AdvancedNetworking:        pulumi.Bool(false),
		DataplaneV2Enabled:        pulumi.Bool(false),
		WindowsDataplaneV2Enabled: pulumi.Bool(false),
	},
	Description:           pulumi.String("string"),
	DisableBundledIngress: pulumi.Bool(false),
	EnableAdvancedCluster: pulumi.Bool(false),
	Annotations: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	Authorization: &gkeonprem.VMwareClusterAuthorizationArgs{
		AdminUsers: gkeonprem.VMwareClusterAuthorizationAdminUserArray{
			&gkeonprem.VMwareClusterAuthorizationAdminUserArgs{
				Username: pulumi.String("string"),
			},
		},
	},
	EnableControlPlaneV2: pulumi.Bool(false),
	AutoRepairConfig: &gkeonprem.VMwareClusterAutoRepairConfigArgs{
		Enabled: pulumi.Bool(false),
	},
	NetworkConfig: &gkeonprem.VMwareClusterNetworkConfigArgs{
		PodAddressCidrBlocks: pulumi.StringArray{
			pulumi.String("string"),
		},
		ServiceAddressCidrBlocks: pulumi.StringArray{
			pulumi.String("string"),
		},
		ControlPlaneV2Config: &gkeonprem.VMwareClusterNetworkConfigControlPlaneV2ConfigArgs{
			ControlPlaneIpBlock: &gkeonprem.VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlockArgs{
				Gateway: pulumi.String("string"),
				Ips: gkeonprem.VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlockIpArray{
					&gkeonprem.VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlockIpArgs{
						Hostname: pulumi.String("string"),
						Ip:       pulumi.String("string"),
					},
				},
				Netmask: pulumi.String("string"),
			},
		},
		DhcpIpConfig: &gkeonprem.VMwareClusterNetworkConfigDhcpIpConfigArgs{
			Enabled: pulumi.Bool(false),
		},
		HostConfig: &gkeonprem.VMwareClusterNetworkConfigHostConfigArgs{
			DnsSearchDomains: pulumi.StringArray{
				pulumi.String("string"),
			},
			DnsServers: pulumi.StringArray{
				pulumi.String("string"),
			},
			NtpServers: pulumi.StringArray{
				pulumi.String("string"),
			},
		},
		StaticIpConfig: &gkeonprem.VMwareClusterNetworkConfigStaticIpConfigArgs{
			IpBlocks: gkeonprem.VMwareClusterNetworkConfigStaticIpConfigIpBlockArray{
				&gkeonprem.VMwareClusterNetworkConfigStaticIpConfigIpBlockArgs{
					Gateway: pulumi.String("string"),
					Ips: gkeonprem.VMwareClusterNetworkConfigStaticIpConfigIpBlockIpArray{
						&gkeonprem.VMwareClusterNetworkConfigStaticIpConfigIpBlockIpArgs{
							Ip:       pulumi.String("string"),
							Hostname: pulumi.String("string"),
						},
					},
					Netmask: pulumi.String("string"),
				},
			},
		},
		VcenterNetwork: pulumi.String("string"),
	},
	AntiAffinityGroups: &gkeonprem.VMwareClusterAntiAffinityGroupsArgs{
		AagConfigDisabled: pulumi.Bool(false),
	},
	Project: pulumi.String("string"),
	Storage: &gkeonprem.VMwareClusterStorageArgs{
		VsphereCsiDisabled: pulumi.Bool(false),
	},
	UpgradePolicy: &gkeonprem.VMwareClusterUpgradePolicyArgs{
		ControlPlaneOnly: pulumi.Bool(false),
	},
	Vcenter: &gkeonprem.VMwareClusterVcenterArgs{
		Address:           pulumi.String("string"),
		CaCertData:        pulumi.String("string"),
		Cluster:           pulumi.String("string"),
		Datacenter:        pulumi.String("string"),
		Datastore:         pulumi.String("string"),
		Folder:            pulumi.String("string"),
		ResourcePool:      pulumi.String("string"),
		StoragePolicyName: pulumi.String("string"),
	},
	VmTrackingEnabled: pulumi.Bool(false),
})
Copy
var vmwareClusterResource = new VMwareCluster("vmwareClusterResource", VMwareClusterArgs.builder()
    .onPremVersion("string")
    .controlPlaneNode(VMwareClusterControlPlaneNodeArgs.builder()
        .autoResizeConfig(VMwareClusterControlPlaneNodeAutoResizeConfigArgs.builder()
            .enabled(false)
            .build())
        .cpus(0)
        .memory(0)
        .replicas(0)
        .vsphereConfigs(VMwareClusterControlPlaneNodeVsphereConfigArgs.builder()
            .datastore("string")
            .storagePolicyName("string")
            .build())
        .build())
    .adminClusterMembership("string")
    .location("string")
    .loadBalancer(VMwareClusterLoadBalancerArgs.builder()
        .f5Config(VMwareClusterLoadBalancerF5ConfigArgs.builder()
            .address("string")
            .partition("string")
            .snatPool("string")
            .build())
        .manualLbConfig(VMwareClusterLoadBalancerManualLbConfigArgs.builder()
            .controlPlaneNodePort(0)
            .ingressHttpNodePort(0)
            .ingressHttpsNodePort(0)
            .konnectivityServerNodePort(0)
            .build())
        .metalLbConfig(VMwareClusterLoadBalancerMetalLbConfigArgs.builder()
            .addressPools(VMwareClusterLoadBalancerMetalLbConfigAddressPoolArgs.builder()
                .addresses("string")
                .pool("string")
                .avoidBuggyIps(false)
                .manualAssign(false)
                .build())
            .build())
        .vipConfig(VMwareClusterLoadBalancerVipConfigArgs.builder()
            .controlPlaneVip("string")
            .ingressVip("string")
            .build())
        .build())
    .name("string")
    .dataplaneV2(VMwareClusterDataplaneV2Args.builder()
        .advancedNetworking(false)
        .dataplaneV2Enabled(false)
        .windowsDataplaneV2Enabled(false)
        .build())
    .description("string")
    .disableBundledIngress(false)
    .enableAdvancedCluster(false)
    .annotations(Map.of("string", "string"))
    .authorization(VMwareClusterAuthorizationArgs.builder()
        .adminUsers(VMwareClusterAuthorizationAdminUserArgs.builder()
            .username("string")
            .build())
        .build())
    .enableControlPlaneV2(false)
    .autoRepairConfig(VMwareClusterAutoRepairConfigArgs.builder()
        .enabled(false)
        .build())
    .networkConfig(VMwareClusterNetworkConfigArgs.builder()
        .podAddressCidrBlocks("string")
        .serviceAddressCidrBlocks("string")
        .controlPlaneV2Config(VMwareClusterNetworkConfigControlPlaneV2ConfigArgs.builder()
            .controlPlaneIpBlock(VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlockArgs.builder()
                .gateway("string")
                .ips(VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlockIpArgs.builder()
                    .hostname("string")
                    .ip("string")
                    .build())
                .netmask("string")
                .build())
            .build())
        .dhcpIpConfig(VMwareClusterNetworkConfigDhcpIpConfigArgs.builder()
            .enabled(false)
            .build())
        .hostConfig(VMwareClusterNetworkConfigHostConfigArgs.builder()
            .dnsSearchDomains("string")
            .dnsServers("string")
            .ntpServers("string")
            .build())
        .staticIpConfig(VMwareClusterNetworkConfigStaticIpConfigArgs.builder()
            .ipBlocks(VMwareClusterNetworkConfigStaticIpConfigIpBlockArgs.builder()
                .gateway("string")
                .ips(VMwareClusterNetworkConfigStaticIpConfigIpBlockIpArgs.builder()
                    .ip("string")
                    .hostname("string")
                    .build())
                .netmask("string")
                .build())
            .build())
        .vcenterNetwork("string")
        .build())
    .antiAffinityGroups(VMwareClusterAntiAffinityGroupsArgs.builder()
        .aagConfigDisabled(false)
        .build())
    .project("string")
    .storage(VMwareClusterStorageArgs.builder()
        .vsphereCsiDisabled(false)
        .build())
    .upgradePolicy(VMwareClusterUpgradePolicyArgs.builder()
        .controlPlaneOnly(false)
        .build())
    .vcenter(VMwareClusterVcenterArgs.builder()
        .address("string")
        .caCertData("string")
        .cluster("string")
        .datacenter("string")
        .datastore("string")
        .folder("string")
        .resourcePool("string")
        .storagePolicyName("string")
        .build())
    .vmTrackingEnabled(false)
    .build());
Copy
vmware_cluster_resource = gcp.gkeonprem.VMwareCluster("vmwareClusterResource",
    on_prem_version="string",
    control_plane_node={
        "auto_resize_config": {
            "enabled": False,
        },
        "cpus": 0,
        "memory": 0,
        "replicas": 0,
        "vsphere_configs": [{
            "datastore": "string",
            "storage_policy_name": "string",
        }],
    },
    admin_cluster_membership="string",
    location="string",
    load_balancer={
        "f5_config": {
            "address": "string",
            "partition": "string",
            "snat_pool": "string",
        },
        "manual_lb_config": {
            "control_plane_node_port": 0,
            "ingress_http_node_port": 0,
            "ingress_https_node_port": 0,
            "konnectivity_server_node_port": 0,
        },
        "metal_lb_config": {
            "address_pools": [{
                "addresses": ["string"],
                "pool": "string",
                "avoid_buggy_ips": False,
                "manual_assign": False,
            }],
        },
        "vip_config": {
            "control_plane_vip": "string",
            "ingress_vip": "string",
        },
    },
    name="string",
    dataplane_v2={
        "advanced_networking": False,
        "dataplane_v2_enabled": False,
        "windows_dataplane_v2_enabled": False,
    },
    description="string",
    disable_bundled_ingress=False,
    enable_advanced_cluster=False,
    annotations={
        "string": "string",
    },
    authorization={
        "admin_users": [{
            "username": "string",
        }],
    },
    enable_control_plane_v2=False,
    auto_repair_config={
        "enabled": False,
    },
    network_config={
        "pod_address_cidr_blocks": ["string"],
        "service_address_cidr_blocks": ["string"],
        "control_plane_v2_config": {
            "control_plane_ip_block": {
                "gateway": "string",
                "ips": [{
                    "hostname": "string",
                    "ip": "string",
                }],
                "netmask": "string",
            },
        },
        "dhcp_ip_config": {
            "enabled": False,
        },
        "host_config": {
            "dns_search_domains": ["string"],
            "dns_servers": ["string"],
            "ntp_servers": ["string"],
        },
        "static_ip_config": {
            "ip_blocks": [{
                "gateway": "string",
                "ips": [{
                    "ip": "string",
                    "hostname": "string",
                }],
                "netmask": "string",
            }],
        },
        "vcenter_network": "string",
    },
    anti_affinity_groups={
        "aag_config_disabled": False,
    },
    project="string",
    storage={
        "vsphere_csi_disabled": False,
    },
    upgrade_policy={
        "control_plane_only": False,
    },
    vcenter={
        "address": "string",
        "ca_cert_data": "string",
        "cluster": "string",
        "datacenter": "string",
        "datastore": "string",
        "folder": "string",
        "resource_pool": "string",
        "storage_policy_name": "string",
    },
    vm_tracking_enabled=False)
Copy
const vmwareClusterResource = new gcp.gkeonprem.VMwareCluster("vmwareClusterResource", {
    onPremVersion: "string",
    controlPlaneNode: {
        autoResizeConfig: {
            enabled: false,
        },
        cpus: 0,
        memory: 0,
        replicas: 0,
        vsphereConfigs: [{
            datastore: "string",
            storagePolicyName: "string",
        }],
    },
    adminClusterMembership: "string",
    location: "string",
    loadBalancer: {
        f5Config: {
            address: "string",
            partition: "string",
            snatPool: "string",
        },
        manualLbConfig: {
            controlPlaneNodePort: 0,
            ingressHttpNodePort: 0,
            ingressHttpsNodePort: 0,
            konnectivityServerNodePort: 0,
        },
        metalLbConfig: {
            addressPools: [{
                addresses: ["string"],
                pool: "string",
                avoidBuggyIps: false,
                manualAssign: false,
            }],
        },
        vipConfig: {
            controlPlaneVip: "string",
            ingressVip: "string",
        },
    },
    name: "string",
    dataplaneV2: {
        advancedNetworking: false,
        dataplaneV2Enabled: false,
        windowsDataplaneV2Enabled: false,
    },
    description: "string",
    disableBundledIngress: false,
    enableAdvancedCluster: false,
    annotations: {
        string: "string",
    },
    authorization: {
        adminUsers: [{
            username: "string",
        }],
    },
    enableControlPlaneV2: false,
    autoRepairConfig: {
        enabled: false,
    },
    networkConfig: {
        podAddressCidrBlocks: ["string"],
        serviceAddressCidrBlocks: ["string"],
        controlPlaneV2Config: {
            controlPlaneIpBlock: {
                gateway: "string",
                ips: [{
                    hostname: "string",
                    ip: "string",
                }],
                netmask: "string",
            },
        },
        dhcpIpConfig: {
            enabled: false,
        },
        hostConfig: {
            dnsSearchDomains: ["string"],
            dnsServers: ["string"],
            ntpServers: ["string"],
        },
        staticIpConfig: {
            ipBlocks: [{
                gateway: "string",
                ips: [{
                    ip: "string",
                    hostname: "string",
                }],
                netmask: "string",
            }],
        },
        vcenterNetwork: "string",
    },
    antiAffinityGroups: {
        aagConfigDisabled: false,
    },
    project: "string",
    storage: {
        vsphereCsiDisabled: false,
    },
    upgradePolicy: {
        controlPlaneOnly: false,
    },
    vcenter: {
        address: "string",
        caCertData: "string",
        cluster: "string",
        datacenter: "string",
        datastore: "string",
        folder: "string",
        resourcePool: "string",
        storagePolicyName: "string",
    },
    vmTrackingEnabled: false,
});
Copy
type: gcp:gkeonprem:VMwareCluster
properties:
    adminClusterMembership: string
    annotations:
        string: string
    antiAffinityGroups:
        aagConfigDisabled: false
    authorization:
        adminUsers:
            - username: string
    autoRepairConfig:
        enabled: false
    controlPlaneNode:
        autoResizeConfig:
            enabled: false
        cpus: 0
        memory: 0
        replicas: 0
        vsphereConfigs:
            - datastore: string
              storagePolicyName: string
    dataplaneV2:
        advancedNetworking: false
        dataplaneV2Enabled: false
        windowsDataplaneV2Enabled: false
    description: string
    disableBundledIngress: false
    enableAdvancedCluster: false
    enableControlPlaneV2: false
    loadBalancer:
        f5Config:
            address: string
            partition: string
            snatPool: string
        manualLbConfig:
            controlPlaneNodePort: 0
            ingressHttpNodePort: 0
            ingressHttpsNodePort: 0
            konnectivityServerNodePort: 0
        metalLbConfig:
            addressPools:
                - addresses:
                    - string
                  avoidBuggyIps: false
                  manualAssign: false
                  pool: string
        vipConfig:
            controlPlaneVip: string
            ingressVip: string
    location: string
    name: string
    networkConfig:
        controlPlaneV2Config:
            controlPlaneIpBlock:
                gateway: string
                ips:
                    - hostname: string
                      ip: string
                netmask: string
        dhcpIpConfig:
            enabled: false
        hostConfig:
            dnsSearchDomains:
                - string
            dnsServers:
                - string
            ntpServers:
                - string
        podAddressCidrBlocks:
            - string
        serviceAddressCidrBlocks:
            - string
        staticIpConfig:
            ipBlocks:
                - gateway: string
                  ips:
                    - hostname: string
                      ip: string
                  netmask: string
        vcenterNetwork: string
    onPremVersion: string
    project: string
    storage:
        vsphereCsiDisabled: false
    upgradePolicy:
        controlPlaneOnly: false
    vcenter:
        address: string
        caCertData: string
        cluster: string
        datacenter: string
        datastore: string
        folder: string
        resourcePool: string
        storagePolicyName: string
    vmTrackingEnabled: false
Copy

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

AdminClusterMembership
This property is required.
Changes to this property will trigger replacement.
string
The admin cluster this VMware User Cluster belongs to. This is the full resource name of the admin cluster's hub membership. In the future, references to other resource types might be allowed if admin clusters are modeled as their own resources.
ControlPlaneNode This property is required. VMwareClusterControlPlaneNode
VMware User Cluster control plane nodes must have either 1 or 3 replicas. Structure is documented below.
Location
This property is required.
Changes to this property will trigger replacement.
string
The location of the resource.
OnPremVersion This property is required. string
The Anthos clusters on the VMware version for your user cluster.
Annotations Dictionary<string, string>
Annotations on the VMware User Cluster. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix (optional) and name (required), separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between. Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field 'effective_annotations' for all of the annotations present on the resource.
AntiAffinityGroups VMwareClusterAntiAffinityGroups
AAGConfig specifies whether to spread VMware User Cluster nodes across at least three physical hosts in the datacenter.
Authorization VMwareClusterAuthorization
RBAC policy that will be applied and managed by GKE On-Prem.
AutoRepairConfig VMwareClusterAutoRepairConfig
Configuration for auto repairing.
DataplaneV2 VMwareClusterDataplaneV2
VmwareDataplaneV2Config specifies configuration for Dataplane V2.
Description string
(Output) The description of the validation check.
DisableBundledIngress bool
Disable bundled ingress.
EnableAdvancedCluster bool
Enable advanced cluster. Default to false.
EnableControlPlaneV2 bool
Enable control plane V2. Default to false.
LoadBalancer VMwareClusterLoadBalancer
Load Balancer configuration.
Name Changes to this property will trigger replacement. string
The VMware cluster name.
NetworkConfig VMwareClusterNetworkConfig
The VMware User Cluster network configuration.
Project Changes to this property will trigger replacement. string
Storage VMwareClusterStorage
Storage configuration.
UpgradePolicy VMwareClusterUpgradePolicy
Specifies upgrade policy for the cluster.
Vcenter VMwareClusterVcenter
VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster.
VmTrackingEnabled bool
Enable VM tracking.
AdminClusterMembership
This property is required.
Changes to this property will trigger replacement.
string
The admin cluster this VMware User Cluster belongs to. This is the full resource name of the admin cluster's hub membership. In the future, references to other resource types might be allowed if admin clusters are modeled as their own resources.
ControlPlaneNode This property is required. VMwareClusterControlPlaneNodeArgs
VMware User Cluster control plane nodes must have either 1 or 3 replicas. Structure is documented below.
Location
This property is required.
Changes to this property will trigger replacement.
string
The location of the resource.
OnPremVersion This property is required. string
The Anthos clusters on the VMware version for your user cluster.
Annotations map[string]string
Annotations on the VMware User Cluster. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix (optional) and name (required), separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between. Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field 'effective_annotations' for all of the annotations present on the resource.
AntiAffinityGroups VMwareClusterAntiAffinityGroupsArgs
AAGConfig specifies whether to spread VMware User Cluster nodes across at least three physical hosts in the datacenter.
Authorization VMwareClusterAuthorizationArgs
RBAC policy that will be applied and managed by GKE On-Prem.
AutoRepairConfig VMwareClusterAutoRepairConfigArgs
Configuration for auto repairing.
DataplaneV2 VMwareClusterDataplaneV2Args
VmwareDataplaneV2Config specifies configuration for Dataplane V2.
Description string
(Output) The description of the validation check.
DisableBundledIngress bool
Disable bundled ingress.
EnableAdvancedCluster bool
Enable advanced cluster. Default to false.
EnableControlPlaneV2 bool
Enable control plane V2. Default to false.
LoadBalancer VMwareClusterLoadBalancerArgs
Load Balancer configuration.
Name Changes to this property will trigger replacement. string
The VMware cluster name.
NetworkConfig VMwareClusterNetworkConfigArgs
The VMware User Cluster network configuration.
Project Changes to this property will trigger replacement. string
Storage VMwareClusterStorageArgs
Storage configuration.
UpgradePolicy VMwareClusterUpgradePolicyArgs
Specifies upgrade policy for the cluster.
Vcenter VMwareClusterVcenterArgs
VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster.
VmTrackingEnabled bool
Enable VM tracking.
adminClusterMembership
This property is required.
Changes to this property will trigger replacement.
String
The admin cluster this VMware User Cluster belongs to. This is the full resource name of the admin cluster's hub membership. In the future, references to other resource types might be allowed if admin clusters are modeled as their own resources.
controlPlaneNode This property is required. VMwareClusterControlPlaneNode
VMware User Cluster control plane nodes must have either 1 or 3 replicas. Structure is documented below.
location
This property is required.
Changes to this property will trigger replacement.
String
The location of the resource.
onPremVersion This property is required. String
The Anthos clusters on the VMware version for your user cluster.
annotations Map<String,String>
Annotations on the VMware User Cluster. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix (optional) and name (required), separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between. Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field 'effective_annotations' for all of the annotations present on the resource.
antiAffinityGroups VMwareClusterAntiAffinityGroups
AAGConfig specifies whether to spread VMware User Cluster nodes across at least three physical hosts in the datacenter.
authorization VMwareClusterAuthorization
RBAC policy that will be applied and managed by GKE On-Prem.
autoRepairConfig VMwareClusterAutoRepairConfig
Configuration for auto repairing.
dataplaneV2 VMwareClusterDataplaneV2
VmwareDataplaneV2Config specifies configuration for Dataplane V2.
description String
(Output) The description of the validation check.
disableBundledIngress Boolean
Disable bundled ingress.
enableAdvancedCluster Boolean
Enable advanced cluster. Default to false.
enableControlPlaneV2 Boolean
Enable control plane V2. Default to false.
loadBalancer VMwareClusterLoadBalancer
Load Balancer configuration.
name Changes to this property will trigger replacement. String
The VMware cluster name.
networkConfig VMwareClusterNetworkConfig
The VMware User Cluster network configuration.
project Changes to this property will trigger replacement. String
storage VMwareClusterStorage
Storage configuration.
upgradePolicy VMwareClusterUpgradePolicy
Specifies upgrade policy for the cluster.
vcenter VMwareClusterVcenter
VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster.
vmTrackingEnabled Boolean
Enable VM tracking.
adminClusterMembership
This property is required.
Changes to this property will trigger replacement.
string
The admin cluster this VMware User Cluster belongs to. This is the full resource name of the admin cluster's hub membership. In the future, references to other resource types might be allowed if admin clusters are modeled as their own resources.
controlPlaneNode This property is required. VMwareClusterControlPlaneNode
VMware User Cluster control plane nodes must have either 1 or 3 replicas. Structure is documented below.
location
This property is required.
Changes to this property will trigger replacement.
string
The location of the resource.
onPremVersion This property is required. string
The Anthos clusters on the VMware version for your user cluster.
annotations {[key: string]: string}
Annotations on the VMware User Cluster. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix (optional) and name (required), separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between. Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field 'effective_annotations' for all of the annotations present on the resource.
antiAffinityGroups VMwareClusterAntiAffinityGroups
AAGConfig specifies whether to spread VMware User Cluster nodes across at least three physical hosts in the datacenter.
authorization VMwareClusterAuthorization
RBAC policy that will be applied and managed by GKE On-Prem.
autoRepairConfig VMwareClusterAutoRepairConfig
Configuration for auto repairing.
dataplaneV2 VMwareClusterDataplaneV2
VmwareDataplaneV2Config specifies configuration for Dataplane V2.
description string
(Output) The description of the validation check.
disableBundledIngress boolean
Disable bundled ingress.
enableAdvancedCluster boolean
Enable advanced cluster. Default to false.
enableControlPlaneV2 boolean
Enable control plane V2. Default to false.
loadBalancer VMwareClusterLoadBalancer
Load Balancer configuration.
name Changes to this property will trigger replacement. string
The VMware cluster name.
networkConfig VMwareClusterNetworkConfig
The VMware User Cluster network configuration.
project Changes to this property will trigger replacement. string
storage VMwareClusterStorage
Storage configuration.
upgradePolicy VMwareClusterUpgradePolicy
Specifies upgrade policy for the cluster.
vcenter VMwareClusterVcenter
VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster.
vmTrackingEnabled boolean
Enable VM tracking.
admin_cluster_membership
This property is required.
Changes to this property will trigger replacement.
str
The admin cluster this VMware User Cluster belongs to. This is the full resource name of the admin cluster's hub membership. In the future, references to other resource types might be allowed if admin clusters are modeled as their own resources.
control_plane_node This property is required. VMwareClusterControlPlaneNodeArgs
VMware User Cluster control plane nodes must have either 1 or 3 replicas. Structure is documented below.
location
This property is required.
Changes to this property will trigger replacement.
str
The location of the resource.
on_prem_version This property is required. str
The Anthos clusters on the VMware version for your user cluster.
annotations Mapping[str, str]
Annotations on the VMware User Cluster. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix (optional) and name (required), separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between. Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field 'effective_annotations' for all of the annotations present on the resource.
anti_affinity_groups VMwareClusterAntiAffinityGroupsArgs
AAGConfig specifies whether to spread VMware User Cluster nodes across at least three physical hosts in the datacenter.
authorization VMwareClusterAuthorizationArgs
RBAC policy that will be applied and managed by GKE On-Prem.
auto_repair_config VMwareClusterAutoRepairConfigArgs
Configuration for auto repairing.
dataplane_v2 VMwareClusterDataplaneV2Args
VmwareDataplaneV2Config specifies configuration for Dataplane V2.
description str
(Output) The description of the validation check.
disable_bundled_ingress bool
Disable bundled ingress.
enable_advanced_cluster bool
Enable advanced cluster. Default to false.
enable_control_plane_v2 bool
Enable control plane V2. Default to false.
load_balancer VMwareClusterLoadBalancerArgs
Load Balancer configuration.
name Changes to this property will trigger replacement. str
The VMware cluster name.
network_config VMwareClusterNetworkConfigArgs
The VMware User Cluster network configuration.
project Changes to this property will trigger replacement. str
storage VMwareClusterStorageArgs
Storage configuration.
upgrade_policy VMwareClusterUpgradePolicyArgs
Specifies upgrade policy for the cluster.
vcenter VMwareClusterVcenterArgs
VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster.
vm_tracking_enabled bool
Enable VM tracking.
adminClusterMembership
This property is required.
Changes to this property will trigger replacement.
String
The admin cluster this VMware User Cluster belongs to. This is the full resource name of the admin cluster's hub membership. In the future, references to other resource types might be allowed if admin clusters are modeled as their own resources.
controlPlaneNode This property is required. Property Map
VMware User Cluster control plane nodes must have either 1 or 3 replicas. Structure is documented below.
location
This property is required.
Changes to this property will trigger replacement.
String
The location of the resource.
onPremVersion This property is required. String
The Anthos clusters on the VMware version for your user cluster.
annotations Map<String>
Annotations on the VMware User Cluster. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix (optional) and name (required), separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between. Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field 'effective_annotations' for all of the annotations present on the resource.
antiAffinityGroups Property Map
AAGConfig specifies whether to spread VMware User Cluster nodes across at least three physical hosts in the datacenter.
authorization Property Map
RBAC policy that will be applied and managed by GKE On-Prem.
autoRepairConfig Property Map
Configuration for auto repairing.
dataplaneV2 Property Map
VmwareDataplaneV2Config specifies configuration for Dataplane V2.
description String
(Output) The description of the validation check.
disableBundledIngress Boolean
Disable bundled ingress.
enableAdvancedCluster Boolean
Enable advanced cluster. Default to false.
enableControlPlaneV2 Boolean
Enable control plane V2. Default to false.
loadBalancer Property Map
Load Balancer configuration.
name Changes to this property will trigger replacement. String
The VMware cluster name.
networkConfig Property Map
The VMware User Cluster network configuration.
project Changes to this property will trigger replacement. String
storage Property Map
Storage configuration.
upgradePolicy Property Map
Specifies upgrade policy for the cluster.
vcenter Property Map
VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster.
vmTrackingEnabled Boolean
Enable VM tracking.

Outputs

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

CreateTime string
The time at which VMware User Cluster was created.
DeleteTime string
The time at which VMware User Cluster was deleted.
EffectiveAnnotations Dictionary<string, string>
Endpoint string
The DNS name of VMware User Cluster's API server.
Etag string
This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. Allows clients to perform consistent read-modify-writes through optimistic concurrency control.
Fleets List<VMwareClusterFleet>
Fleet configuration for the cluster. Structure is documented below.
Id string
The provider-assigned unique ID for this managed resource.
LocalName string
The object name of the VMware OnPremUserCluster custom resource on the associated admin cluster. This field is used to support conflicting names when enrolling existing clusters to the API. When used as a part of cluster enrollment, this field will differ from the ID in the resource name. For new clusters, this field will match the user provided cluster ID and be visible in the last component of the resource name. It is not modifiable. All users should use this name to access their cluster using gkectl or kubectl and should expect to see the local name when viewing admin cluster controller logs.
Reconciling bool
If set, there are currently changes in flight to the VMware User Cluster.
State string
(Output) The lifecycle state of the condition.
Statuses List<VMwareClusterStatus>
(Output) Specifies the detailed validation check status Structure is documented below.
Uid string
The unique identifier of the VMware User Cluster.
UpdateTime string
The time at which VMware User Cluster was last updated.
ValidationChecks List<VMwareClusterValidationCheck>
ValidationCheck represents the result of the preflight check job. Structure is documented below.
CreateTime string
The time at which VMware User Cluster was created.
DeleteTime string
The time at which VMware User Cluster was deleted.
EffectiveAnnotations map[string]string
Endpoint string
The DNS name of VMware User Cluster's API server.
Etag string
This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. Allows clients to perform consistent read-modify-writes through optimistic concurrency control.
Fleets []VMwareClusterFleet
Fleet configuration for the cluster. Structure is documented below.
Id string
The provider-assigned unique ID for this managed resource.
LocalName string
The object name of the VMware OnPremUserCluster custom resource on the associated admin cluster. This field is used to support conflicting names when enrolling existing clusters to the API. When used as a part of cluster enrollment, this field will differ from the ID in the resource name. For new clusters, this field will match the user provided cluster ID and be visible in the last component of the resource name. It is not modifiable. All users should use this name to access their cluster using gkectl or kubectl and should expect to see the local name when viewing admin cluster controller logs.
Reconciling bool
If set, there are currently changes in flight to the VMware User Cluster.
State string
(Output) The lifecycle state of the condition.
Statuses []VMwareClusterStatus
(Output) Specifies the detailed validation check status Structure is documented below.
Uid string
The unique identifier of the VMware User Cluster.
UpdateTime string
The time at which VMware User Cluster was last updated.
ValidationChecks []VMwareClusterValidationCheck
ValidationCheck represents the result of the preflight check job. Structure is documented below.
createTime String
The time at which VMware User Cluster was created.
deleteTime String
The time at which VMware User Cluster was deleted.
effectiveAnnotations Map<String,String>
endpoint String
The DNS name of VMware User Cluster's API server.
etag String
This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. Allows clients to perform consistent read-modify-writes through optimistic concurrency control.
fleets List<VMwareClusterFleet>
Fleet configuration for the cluster. Structure is documented below.
id String
The provider-assigned unique ID for this managed resource.
localName String
The object name of the VMware OnPremUserCluster custom resource on the associated admin cluster. This field is used to support conflicting names when enrolling existing clusters to the API. When used as a part of cluster enrollment, this field will differ from the ID in the resource name. For new clusters, this field will match the user provided cluster ID and be visible in the last component of the resource name. It is not modifiable. All users should use this name to access their cluster using gkectl or kubectl and should expect to see the local name when viewing admin cluster controller logs.
reconciling Boolean
If set, there are currently changes in flight to the VMware User Cluster.
state String
(Output) The lifecycle state of the condition.
statuses List<VMwareClusterStatus>
(Output) Specifies the detailed validation check status Structure is documented below.
uid String
The unique identifier of the VMware User Cluster.
updateTime String
The time at which VMware User Cluster was last updated.
validationChecks List<VMwareClusterValidationCheck>
ValidationCheck represents the result of the preflight check job. Structure is documented below.
createTime string
The time at which VMware User Cluster was created.
deleteTime string
The time at which VMware User Cluster was deleted.
effectiveAnnotations {[key: string]: string}
endpoint string
The DNS name of VMware User Cluster's API server.
etag string
This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. Allows clients to perform consistent read-modify-writes through optimistic concurrency control.
fleets VMwareClusterFleet[]
Fleet configuration for the cluster. Structure is documented below.
id string
The provider-assigned unique ID for this managed resource.
localName string
The object name of the VMware OnPremUserCluster custom resource on the associated admin cluster. This field is used to support conflicting names when enrolling existing clusters to the API. When used as a part of cluster enrollment, this field will differ from the ID in the resource name. For new clusters, this field will match the user provided cluster ID and be visible in the last component of the resource name. It is not modifiable. All users should use this name to access their cluster using gkectl or kubectl and should expect to see the local name when viewing admin cluster controller logs.
reconciling boolean
If set, there are currently changes in flight to the VMware User Cluster.
state string
(Output) The lifecycle state of the condition.
statuses VMwareClusterStatus[]
(Output) Specifies the detailed validation check status Structure is documented below.
uid string
The unique identifier of the VMware User Cluster.
updateTime string
The time at which VMware User Cluster was last updated.
validationChecks VMwareClusterValidationCheck[]
ValidationCheck represents the result of the preflight check job. Structure is documented below.
create_time str
The time at which VMware User Cluster was created.
delete_time str
The time at which VMware User Cluster was deleted.
effective_annotations Mapping[str, str]
endpoint str
The DNS name of VMware User Cluster's API server.
etag str
This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. Allows clients to perform consistent read-modify-writes through optimistic concurrency control.
fleets Sequence[VMwareClusterFleet]
Fleet configuration for the cluster. Structure is documented below.
id str
The provider-assigned unique ID for this managed resource.
local_name str
The object name of the VMware OnPremUserCluster custom resource on the associated admin cluster. This field is used to support conflicting names when enrolling existing clusters to the API. When used as a part of cluster enrollment, this field will differ from the ID in the resource name. For new clusters, this field will match the user provided cluster ID and be visible in the last component of the resource name. It is not modifiable. All users should use this name to access their cluster using gkectl or kubectl and should expect to see the local name when viewing admin cluster controller logs.
reconciling bool
If set, there are currently changes in flight to the VMware User Cluster.
state str
(Output) The lifecycle state of the condition.
statuses Sequence[VMwareClusterStatus]
(Output) Specifies the detailed validation check status Structure is documented below.
uid str
The unique identifier of the VMware User Cluster.
update_time str
The time at which VMware User Cluster was last updated.
validation_checks Sequence[VMwareClusterValidationCheck]
ValidationCheck represents the result of the preflight check job. Structure is documented below.
createTime String
The time at which VMware User Cluster was created.
deleteTime String
The time at which VMware User Cluster was deleted.
effectiveAnnotations Map<String>
endpoint String
The DNS name of VMware User Cluster's API server.
etag String
This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. Allows clients to perform consistent read-modify-writes through optimistic concurrency control.
fleets List<Property Map>
Fleet configuration for the cluster. Structure is documented below.
id String
The provider-assigned unique ID for this managed resource.
localName String
The object name of the VMware OnPremUserCluster custom resource on the associated admin cluster. This field is used to support conflicting names when enrolling existing clusters to the API. When used as a part of cluster enrollment, this field will differ from the ID in the resource name. For new clusters, this field will match the user provided cluster ID and be visible in the last component of the resource name. It is not modifiable. All users should use this name to access their cluster using gkectl or kubectl and should expect to see the local name when viewing admin cluster controller logs.
reconciling Boolean
If set, there are currently changes in flight to the VMware User Cluster.
state String
(Output) The lifecycle state of the condition.
statuses List<Property Map>
(Output) Specifies the detailed validation check status Structure is documented below.
uid String
The unique identifier of the VMware User Cluster.
updateTime String
The time at which VMware User Cluster was last updated.
validationChecks List<Property Map>
ValidationCheck represents the result of the preflight check job. Structure is documented below.

Look up Existing VMwareCluster Resource

Get an existing VMwareCluster 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?: VMwareClusterState, opts?: CustomResourceOptions): VMwareCluster
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        admin_cluster_membership: Optional[str] = None,
        annotations: Optional[Mapping[str, str]] = None,
        anti_affinity_groups: Optional[VMwareClusterAntiAffinityGroupsArgs] = None,
        authorization: Optional[VMwareClusterAuthorizationArgs] = None,
        auto_repair_config: Optional[VMwareClusterAutoRepairConfigArgs] = None,
        control_plane_node: Optional[VMwareClusterControlPlaneNodeArgs] = None,
        create_time: Optional[str] = None,
        dataplane_v2: Optional[VMwareClusterDataplaneV2Args] = None,
        delete_time: Optional[str] = None,
        description: Optional[str] = None,
        disable_bundled_ingress: Optional[bool] = None,
        effective_annotations: Optional[Mapping[str, str]] = None,
        enable_advanced_cluster: Optional[bool] = None,
        enable_control_plane_v2: Optional[bool] = None,
        endpoint: Optional[str] = None,
        etag: Optional[str] = None,
        fleets: Optional[Sequence[VMwareClusterFleetArgs]] = None,
        load_balancer: Optional[VMwareClusterLoadBalancerArgs] = None,
        local_name: Optional[str] = None,
        location: Optional[str] = None,
        name: Optional[str] = None,
        network_config: Optional[VMwareClusterNetworkConfigArgs] = None,
        on_prem_version: Optional[str] = None,
        project: Optional[str] = None,
        reconciling: Optional[bool] = None,
        state: Optional[str] = None,
        statuses: Optional[Sequence[VMwareClusterStatusArgs]] = None,
        storage: Optional[VMwareClusterStorageArgs] = None,
        uid: Optional[str] = None,
        update_time: Optional[str] = None,
        upgrade_policy: Optional[VMwareClusterUpgradePolicyArgs] = None,
        validation_checks: Optional[Sequence[VMwareClusterValidationCheckArgs]] = None,
        vcenter: Optional[VMwareClusterVcenterArgs] = None,
        vm_tracking_enabled: Optional[bool] = None) -> VMwareCluster
func GetVMwareCluster(ctx *Context, name string, id IDInput, state *VMwareClusterState, opts ...ResourceOption) (*VMwareCluster, error)
public static VMwareCluster Get(string name, Input<string> id, VMwareClusterState? state, CustomResourceOptions? opts = null)
public static VMwareCluster get(String name, Output<String> id, VMwareClusterState state, CustomResourceOptions options)
resources:  _:    type: gcp:gkeonprem:VMwareCluster    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:
AdminClusterMembership Changes to this property will trigger replacement. string
The admin cluster this VMware User Cluster belongs to. This is the full resource name of the admin cluster's hub membership. In the future, references to other resource types might be allowed if admin clusters are modeled as their own resources.
Annotations Dictionary<string, string>
Annotations on the VMware User Cluster. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix (optional) and name (required), separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between. Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field 'effective_annotations' for all of the annotations present on the resource.
AntiAffinityGroups VMwareClusterAntiAffinityGroups
AAGConfig specifies whether to spread VMware User Cluster nodes across at least three physical hosts in the datacenter.
Authorization VMwareClusterAuthorization
RBAC policy that will be applied and managed by GKE On-Prem.
AutoRepairConfig VMwareClusterAutoRepairConfig
Configuration for auto repairing.
ControlPlaneNode VMwareClusterControlPlaneNode
VMware User Cluster control plane nodes must have either 1 or 3 replicas. Structure is documented below.
CreateTime string
The time at which VMware User Cluster was created.
DataplaneV2 VMwareClusterDataplaneV2
VmwareDataplaneV2Config specifies configuration for Dataplane V2.
DeleteTime string
The time at which VMware User Cluster was deleted.
Description string
(Output) The description of the validation check.
DisableBundledIngress bool
Disable bundled ingress.
EffectiveAnnotations Dictionary<string, string>
EnableAdvancedCluster bool
Enable advanced cluster. Default to false.
EnableControlPlaneV2 bool
Enable control plane V2. Default to false.
Endpoint string
The DNS name of VMware User Cluster's API server.
Etag string
This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. Allows clients to perform consistent read-modify-writes through optimistic concurrency control.
Fleets List<VMwareClusterFleet>
Fleet configuration for the cluster. Structure is documented below.
LoadBalancer VMwareClusterLoadBalancer
Load Balancer configuration.
LocalName string
The object name of the VMware OnPremUserCluster custom resource on the associated admin cluster. This field is used to support conflicting names when enrolling existing clusters to the API. When used as a part of cluster enrollment, this field will differ from the ID in the resource name. For new clusters, this field will match the user provided cluster ID and be visible in the last component of the resource name. It is not modifiable. All users should use this name to access their cluster using gkectl or kubectl and should expect to see the local name when viewing admin cluster controller logs.
Location Changes to this property will trigger replacement. string
The location of the resource.
Name Changes to this property will trigger replacement. string
The VMware cluster name.
NetworkConfig VMwareClusterNetworkConfig
The VMware User Cluster network configuration.
OnPremVersion string
The Anthos clusters on the VMware version for your user cluster.
Project Changes to this property will trigger replacement. string
Reconciling bool
If set, there are currently changes in flight to the VMware User Cluster.
State string
(Output) The lifecycle state of the condition.
Statuses List<VMwareClusterStatus>
(Output) Specifies the detailed validation check status Structure is documented below.
Storage VMwareClusterStorage
Storage configuration.
Uid string
The unique identifier of the VMware User Cluster.
UpdateTime string
The time at which VMware User Cluster was last updated.
UpgradePolicy VMwareClusterUpgradePolicy
Specifies upgrade policy for the cluster.
ValidationChecks List<VMwareClusterValidationCheck>
ValidationCheck represents the result of the preflight check job. Structure is documented below.
Vcenter VMwareClusterVcenter
VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster.
VmTrackingEnabled bool
Enable VM tracking.
AdminClusterMembership Changes to this property will trigger replacement. string
The admin cluster this VMware User Cluster belongs to. This is the full resource name of the admin cluster's hub membership. In the future, references to other resource types might be allowed if admin clusters are modeled as their own resources.
Annotations map[string]string
Annotations on the VMware User Cluster. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix (optional) and name (required), separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between. Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field 'effective_annotations' for all of the annotations present on the resource.
AntiAffinityGroups VMwareClusterAntiAffinityGroupsArgs
AAGConfig specifies whether to spread VMware User Cluster nodes across at least three physical hosts in the datacenter.
Authorization VMwareClusterAuthorizationArgs
RBAC policy that will be applied and managed by GKE On-Prem.
AutoRepairConfig VMwareClusterAutoRepairConfigArgs
Configuration for auto repairing.
ControlPlaneNode VMwareClusterControlPlaneNodeArgs
VMware User Cluster control plane nodes must have either 1 or 3 replicas. Structure is documented below.
CreateTime string
The time at which VMware User Cluster was created.
DataplaneV2 VMwareClusterDataplaneV2Args
VmwareDataplaneV2Config specifies configuration for Dataplane V2.
DeleteTime string
The time at which VMware User Cluster was deleted.
Description string
(Output) The description of the validation check.
DisableBundledIngress bool
Disable bundled ingress.
EffectiveAnnotations map[string]string
EnableAdvancedCluster bool
Enable advanced cluster. Default to false.
EnableControlPlaneV2 bool
Enable control plane V2. Default to false.
Endpoint string
The DNS name of VMware User Cluster's API server.
Etag string
This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. Allows clients to perform consistent read-modify-writes through optimistic concurrency control.
Fleets []VMwareClusterFleetArgs
Fleet configuration for the cluster. Structure is documented below.
LoadBalancer VMwareClusterLoadBalancerArgs
Load Balancer configuration.
LocalName string
The object name of the VMware OnPremUserCluster custom resource on the associated admin cluster. This field is used to support conflicting names when enrolling existing clusters to the API. When used as a part of cluster enrollment, this field will differ from the ID in the resource name. For new clusters, this field will match the user provided cluster ID and be visible in the last component of the resource name. It is not modifiable. All users should use this name to access their cluster using gkectl or kubectl and should expect to see the local name when viewing admin cluster controller logs.
Location Changes to this property will trigger replacement. string
The location of the resource.
Name Changes to this property will trigger replacement. string
The VMware cluster name.
NetworkConfig VMwareClusterNetworkConfigArgs
The VMware User Cluster network configuration.
OnPremVersion string
The Anthos clusters on the VMware version for your user cluster.
Project Changes to this property will trigger replacement. string
Reconciling bool
If set, there are currently changes in flight to the VMware User Cluster.
State string
(Output) The lifecycle state of the condition.
Statuses []VMwareClusterStatusArgs
(Output) Specifies the detailed validation check status Structure is documented below.
Storage VMwareClusterStorageArgs
Storage configuration.
Uid string
The unique identifier of the VMware User Cluster.
UpdateTime string
The time at which VMware User Cluster was last updated.
UpgradePolicy VMwareClusterUpgradePolicyArgs
Specifies upgrade policy for the cluster.
ValidationChecks []VMwareClusterValidationCheckArgs
ValidationCheck represents the result of the preflight check job. Structure is documented below.
Vcenter VMwareClusterVcenterArgs
VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster.
VmTrackingEnabled bool
Enable VM tracking.
adminClusterMembership Changes to this property will trigger replacement. String
The admin cluster this VMware User Cluster belongs to. This is the full resource name of the admin cluster's hub membership. In the future, references to other resource types might be allowed if admin clusters are modeled as their own resources.
annotations Map<String,String>
Annotations on the VMware User Cluster. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix (optional) and name (required), separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between. Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field 'effective_annotations' for all of the annotations present on the resource.
antiAffinityGroups VMwareClusterAntiAffinityGroups
AAGConfig specifies whether to spread VMware User Cluster nodes across at least three physical hosts in the datacenter.
authorization VMwareClusterAuthorization
RBAC policy that will be applied and managed by GKE On-Prem.
autoRepairConfig VMwareClusterAutoRepairConfig
Configuration for auto repairing.
controlPlaneNode VMwareClusterControlPlaneNode
VMware User Cluster control plane nodes must have either 1 or 3 replicas. Structure is documented below.
createTime String
The time at which VMware User Cluster was created.
dataplaneV2 VMwareClusterDataplaneV2
VmwareDataplaneV2Config specifies configuration for Dataplane V2.
deleteTime String
The time at which VMware User Cluster was deleted.
description String
(Output) The description of the validation check.
disableBundledIngress Boolean
Disable bundled ingress.
effectiveAnnotations Map<String,String>
enableAdvancedCluster Boolean
Enable advanced cluster. Default to false.
enableControlPlaneV2 Boolean
Enable control plane V2. Default to false.
endpoint String
The DNS name of VMware User Cluster's API server.
etag String
This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. Allows clients to perform consistent read-modify-writes through optimistic concurrency control.
fleets List<VMwareClusterFleet>
Fleet configuration for the cluster. Structure is documented below.
loadBalancer VMwareClusterLoadBalancer
Load Balancer configuration.
localName String
The object name of the VMware OnPremUserCluster custom resource on the associated admin cluster. This field is used to support conflicting names when enrolling existing clusters to the API. When used as a part of cluster enrollment, this field will differ from the ID in the resource name. For new clusters, this field will match the user provided cluster ID and be visible in the last component of the resource name. It is not modifiable. All users should use this name to access their cluster using gkectl or kubectl and should expect to see the local name when viewing admin cluster controller logs.
location Changes to this property will trigger replacement. String
The location of the resource.
name Changes to this property will trigger replacement. String
The VMware cluster name.
networkConfig VMwareClusterNetworkConfig
The VMware User Cluster network configuration.
onPremVersion String
The Anthos clusters on the VMware version for your user cluster.
project Changes to this property will trigger replacement. String
reconciling Boolean
If set, there are currently changes in flight to the VMware User Cluster.
state String
(Output) The lifecycle state of the condition.
statuses List<VMwareClusterStatus>
(Output) Specifies the detailed validation check status Structure is documented below.
storage VMwareClusterStorage
Storage configuration.
uid String
The unique identifier of the VMware User Cluster.
updateTime String
The time at which VMware User Cluster was last updated.
upgradePolicy VMwareClusterUpgradePolicy
Specifies upgrade policy for the cluster.
validationChecks List<VMwareClusterValidationCheck>
ValidationCheck represents the result of the preflight check job. Structure is documented below.
vcenter VMwareClusterVcenter
VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster.
vmTrackingEnabled Boolean
Enable VM tracking.
adminClusterMembership Changes to this property will trigger replacement. string
The admin cluster this VMware User Cluster belongs to. This is the full resource name of the admin cluster's hub membership. In the future, references to other resource types might be allowed if admin clusters are modeled as their own resources.
annotations {[key: string]: string}
Annotations on the VMware User Cluster. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix (optional) and name (required), separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between. Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field 'effective_annotations' for all of the annotations present on the resource.
antiAffinityGroups VMwareClusterAntiAffinityGroups
AAGConfig specifies whether to spread VMware User Cluster nodes across at least three physical hosts in the datacenter.
authorization VMwareClusterAuthorization
RBAC policy that will be applied and managed by GKE On-Prem.
autoRepairConfig VMwareClusterAutoRepairConfig
Configuration for auto repairing.
controlPlaneNode VMwareClusterControlPlaneNode
VMware User Cluster control plane nodes must have either 1 or 3 replicas. Structure is documented below.
createTime string
The time at which VMware User Cluster was created.
dataplaneV2 VMwareClusterDataplaneV2
VmwareDataplaneV2Config specifies configuration for Dataplane V2.
deleteTime string
The time at which VMware User Cluster was deleted.
description string
(Output) The description of the validation check.
disableBundledIngress boolean
Disable bundled ingress.
effectiveAnnotations {[key: string]: string}
enableAdvancedCluster boolean
Enable advanced cluster. Default to false.
enableControlPlaneV2 boolean
Enable control plane V2. Default to false.
endpoint string
The DNS name of VMware User Cluster's API server.
etag string
This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. Allows clients to perform consistent read-modify-writes through optimistic concurrency control.
fleets VMwareClusterFleet[]
Fleet configuration for the cluster. Structure is documented below.
loadBalancer VMwareClusterLoadBalancer
Load Balancer configuration.
localName string
The object name of the VMware OnPremUserCluster custom resource on the associated admin cluster. This field is used to support conflicting names when enrolling existing clusters to the API. When used as a part of cluster enrollment, this field will differ from the ID in the resource name. For new clusters, this field will match the user provided cluster ID and be visible in the last component of the resource name. It is not modifiable. All users should use this name to access their cluster using gkectl or kubectl and should expect to see the local name when viewing admin cluster controller logs.
location Changes to this property will trigger replacement. string
The location of the resource.
name Changes to this property will trigger replacement. string
The VMware cluster name.
networkConfig VMwareClusterNetworkConfig
The VMware User Cluster network configuration.
onPremVersion string
The Anthos clusters on the VMware version for your user cluster.
project Changes to this property will trigger replacement. string
reconciling boolean
If set, there are currently changes in flight to the VMware User Cluster.
state string
(Output) The lifecycle state of the condition.
statuses VMwareClusterStatus[]
(Output) Specifies the detailed validation check status Structure is documented below.
storage VMwareClusterStorage
Storage configuration.
uid string
The unique identifier of the VMware User Cluster.
updateTime string
The time at which VMware User Cluster was last updated.
upgradePolicy VMwareClusterUpgradePolicy
Specifies upgrade policy for the cluster.
validationChecks VMwareClusterValidationCheck[]
ValidationCheck represents the result of the preflight check job. Structure is documented below.
vcenter VMwareClusterVcenter
VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster.
vmTrackingEnabled boolean
Enable VM tracking.
admin_cluster_membership Changes to this property will trigger replacement. str
The admin cluster this VMware User Cluster belongs to. This is the full resource name of the admin cluster's hub membership. In the future, references to other resource types might be allowed if admin clusters are modeled as their own resources.
annotations Mapping[str, str]
Annotations on the VMware User Cluster. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix (optional) and name (required), separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between. Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field 'effective_annotations' for all of the annotations present on the resource.
anti_affinity_groups VMwareClusterAntiAffinityGroupsArgs
AAGConfig specifies whether to spread VMware User Cluster nodes across at least three physical hosts in the datacenter.
authorization VMwareClusterAuthorizationArgs
RBAC policy that will be applied and managed by GKE On-Prem.
auto_repair_config VMwareClusterAutoRepairConfigArgs
Configuration for auto repairing.
control_plane_node VMwareClusterControlPlaneNodeArgs
VMware User Cluster control plane nodes must have either 1 or 3 replicas. Structure is documented below.
create_time str
The time at which VMware User Cluster was created.
dataplane_v2 VMwareClusterDataplaneV2Args
VmwareDataplaneV2Config specifies configuration for Dataplane V2.
delete_time str
The time at which VMware User Cluster was deleted.
description str
(Output) The description of the validation check.
disable_bundled_ingress bool
Disable bundled ingress.
effective_annotations Mapping[str, str]
enable_advanced_cluster bool
Enable advanced cluster. Default to false.
enable_control_plane_v2 bool
Enable control plane V2. Default to false.
endpoint str
The DNS name of VMware User Cluster's API server.
etag str
This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. Allows clients to perform consistent read-modify-writes through optimistic concurrency control.
fleets Sequence[VMwareClusterFleetArgs]
Fleet configuration for the cluster. Structure is documented below.
load_balancer VMwareClusterLoadBalancerArgs
Load Balancer configuration.
local_name str
The object name of the VMware OnPremUserCluster custom resource on the associated admin cluster. This field is used to support conflicting names when enrolling existing clusters to the API. When used as a part of cluster enrollment, this field will differ from the ID in the resource name. For new clusters, this field will match the user provided cluster ID and be visible in the last component of the resource name. It is not modifiable. All users should use this name to access their cluster using gkectl or kubectl and should expect to see the local name when viewing admin cluster controller logs.
location Changes to this property will trigger replacement. str
The location of the resource.
name Changes to this property will trigger replacement. str
The VMware cluster name.
network_config VMwareClusterNetworkConfigArgs
The VMware User Cluster network configuration.
on_prem_version str
The Anthos clusters on the VMware version for your user cluster.
project Changes to this property will trigger replacement. str
reconciling bool
If set, there are currently changes in flight to the VMware User Cluster.
state str
(Output) The lifecycle state of the condition.
statuses Sequence[VMwareClusterStatusArgs]
(Output) Specifies the detailed validation check status Structure is documented below.
storage VMwareClusterStorageArgs
Storage configuration.
uid str
The unique identifier of the VMware User Cluster.
update_time str
The time at which VMware User Cluster was last updated.
upgrade_policy VMwareClusterUpgradePolicyArgs
Specifies upgrade policy for the cluster.
validation_checks Sequence[VMwareClusterValidationCheckArgs]
ValidationCheck represents the result of the preflight check job. Structure is documented below.
vcenter VMwareClusterVcenterArgs
VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster.
vm_tracking_enabled bool
Enable VM tracking.
adminClusterMembership Changes to this property will trigger replacement. String
The admin cluster this VMware User Cluster belongs to. This is the full resource name of the admin cluster's hub membership. In the future, references to other resource types might be allowed if admin clusters are modeled as their own resources.
annotations Map<String>
Annotations on the VMware User Cluster. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix (optional) and name (required), separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between. Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field 'effective_annotations' for all of the annotations present on the resource.
antiAffinityGroups Property Map
AAGConfig specifies whether to spread VMware User Cluster nodes across at least three physical hosts in the datacenter.
authorization Property Map
RBAC policy that will be applied and managed by GKE On-Prem.
autoRepairConfig Property Map
Configuration for auto repairing.
controlPlaneNode Property Map
VMware User Cluster control plane nodes must have either 1 or 3 replicas. Structure is documented below.
createTime String
The time at which VMware User Cluster was created.
dataplaneV2 Property Map
VmwareDataplaneV2Config specifies configuration for Dataplane V2.
deleteTime String
The time at which VMware User Cluster was deleted.
description String
(Output) The description of the validation check.
disableBundledIngress Boolean
Disable bundled ingress.
effectiveAnnotations Map<String>
enableAdvancedCluster Boolean
Enable advanced cluster. Default to false.
enableControlPlaneV2 Boolean
Enable control plane V2. Default to false.
endpoint String
The DNS name of VMware User Cluster's API server.
etag String
This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. Allows clients to perform consistent read-modify-writes through optimistic concurrency control.
fleets List<Property Map>
Fleet configuration for the cluster. Structure is documented below.
loadBalancer Property Map
Load Balancer configuration.
localName String
The object name of the VMware OnPremUserCluster custom resource on the associated admin cluster. This field is used to support conflicting names when enrolling existing clusters to the API. When used as a part of cluster enrollment, this field will differ from the ID in the resource name. For new clusters, this field will match the user provided cluster ID and be visible in the last component of the resource name. It is not modifiable. All users should use this name to access their cluster using gkectl or kubectl and should expect to see the local name when viewing admin cluster controller logs.
location Changes to this property will trigger replacement. String
The location of the resource.
name Changes to this property will trigger replacement. String
The VMware cluster name.
networkConfig Property Map
The VMware User Cluster network configuration.
onPremVersion String
The Anthos clusters on the VMware version for your user cluster.
project Changes to this property will trigger replacement. String
reconciling Boolean
If set, there are currently changes in flight to the VMware User Cluster.
state String
(Output) The lifecycle state of the condition.
statuses List<Property Map>
(Output) Specifies the detailed validation check status Structure is documented below.
storage Property Map
Storage configuration.
uid String
The unique identifier of the VMware User Cluster.
updateTime String
The time at which VMware User Cluster was last updated.
upgradePolicy Property Map
Specifies upgrade policy for the cluster.
validationChecks List<Property Map>
ValidationCheck represents the result of the preflight check job. Structure is documented below.
vcenter Property Map
VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster.
vmTrackingEnabled Boolean
Enable VM tracking.

Supporting Types

VMwareClusterAntiAffinityGroups
, VMwareClusterAntiAffinityGroupsArgs

AagConfigDisabled This property is required. bool
Spread nodes across at least three physical hosts (requires at least three hosts). Enabled by default.
AagConfigDisabled This property is required. bool
Spread nodes across at least three physical hosts (requires at least three hosts). Enabled by default.
aagConfigDisabled This property is required. Boolean
Spread nodes across at least three physical hosts (requires at least three hosts). Enabled by default.
aagConfigDisabled This property is required. boolean
Spread nodes across at least three physical hosts (requires at least three hosts). Enabled by default.
aag_config_disabled This property is required. bool
Spread nodes across at least three physical hosts (requires at least three hosts). Enabled by default.
aagConfigDisabled This property is required. Boolean
Spread nodes across at least three physical hosts (requires at least three hosts). Enabled by default.

VMwareClusterAuthorization
, VMwareClusterAuthorizationArgs

AdminUsers List<VMwareClusterAuthorizationAdminUser>
Users that will be granted the cluster-admin role on the cluster, providing full access to the cluster. Structure is documented below.
AdminUsers []VMwareClusterAuthorizationAdminUser
Users that will be granted the cluster-admin role on the cluster, providing full access to the cluster. Structure is documented below.
adminUsers List<VMwareClusterAuthorizationAdminUser>
Users that will be granted the cluster-admin role on the cluster, providing full access to the cluster. Structure is documented below.
adminUsers VMwareClusterAuthorizationAdminUser[]
Users that will be granted the cluster-admin role on the cluster, providing full access to the cluster. Structure is documented below.
admin_users Sequence[VMwareClusterAuthorizationAdminUser]
Users that will be granted the cluster-admin role on the cluster, providing full access to the cluster. Structure is documented below.
adminUsers List<Property Map>
Users that will be granted the cluster-admin role on the cluster, providing full access to the cluster. Structure is documented below.

VMwareClusterAuthorizationAdminUser
, VMwareClusterAuthorizationAdminUserArgs

Username This property is required. string
The name of the user, e.g. my-gcp-id@gmail.com.
Username This property is required. string
The name of the user, e.g. my-gcp-id@gmail.com.
username This property is required. String
The name of the user, e.g. my-gcp-id@gmail.com.
username This property is required. string
The name of the user, e.g. my-gcp-id@gmail.com.
username This property is required. str
The name of the user, e.g. my-gcp-id@gmail.com.
username This property is required. String
The name of the user, e.g. my-gcp-id@gmail.com.

VMwareClusterAutoRepairConfig
, VMwareClusterAutoRepairConfigArgs

Enabled This property is required. bool
Whether auto repair is enabled.
Enabled This property is required. bool
Whether auto repair is enabled.
enabled This property is required. Boolean
Whether auto repair is enabled.
enabled This property is required. boolean
Whether auto repair is enabled.
enabled This property is required. bool
Whether auto repair is enabled.
enabled This property is required. Boolean
Whether auto repair is enabled.

VMwareClusterControlPlaneNode
, VMwareClusterControlPlaneNodeArgs

AutoResizeConfig VMwareClusterControlPlaneNodeAutoResizeConfig
AutoResizeConfig provides auto resizing configurations. Structure is documented below.
Cpus int
The number of CPUs for each admin cluster node that serve as control planes for this VMware User Cluster. (default: 4 CPUs)
Memory int
The megabytes of memory for each admin cluster node that serves as a control plane for this VMware User Cluster (default: 8192 MB memory).
Replicas int
The number of control plane nodes for this VMware User Cluster. (default: 1 replica).
VsphereConfigs List<VMwareClusterControlPlaneNodeVsphereConfig>
(Output) Vsphere-specific config. Structure is documented below.
AutoResizeConfig VMwareClusterControlPlaneNodeAutoResizeConfig
AutoResizeConfig provides auto resizing configurations. Structure is documented below.
Cpus int
The number of CPUs for each admin cluster node that serve as control planes for this VMware User Cluster. (default: 4 CPUs)
Memory int
The megabytes of memory for each admin cluster node that serves as a control plane for this VMware User Cluster (default: 8192 MB memory).
Replicas int
The number of control plane nodes for this VMware User Cluster. (default: 1 replica).
VsphereConfigs []VMwareClusterControlPlaneNodeVsphereConfig
(Output) Vsphere-specific config. Structure is documented below.
autoResizeConfig VMwareClusterControlPlaneNodeAutoResizeConfig
AutoResizeConfig provides auto resizing configurations. Structure is documented below.
cpus Integer
The number of CPUs for each admin cluster node that serve as control planes for this VMware User Cluster. (default: 4 CPUs)
memory Integer
The megabytes of memory for each admin cluster node that serves as a control plane for this VMware User Cluster (default: 8192 MB memory).
replicas Integer
The number of control plane nodes for this VMware User Cluster. (default: 1 replica).
vsphereConfigs List<VMwareClusterControlPlaneNodeVsphereConfig>
(Output) Vsphere-specific config. Structure is documented below.
autoResizeConfig VMwareClusterControlPlaneNodeAutoResizeConfig
AutoResizeConfig provides auto resizing configurations. Structure is documented below.
cpus number
The number of CPUs for each admin cluster node that serve as control planes for this VMware User Cluster. (default: 4 CPUs)
memory number
The megabytes of memory for each admin cluster node that serves as a control plane for this VMware User Cluster (default: 8192 MB memory).
replicas number
The number of control plane nodes for this VMware User Cluster. (default: 1 replica).
vsphereConfigs VMwareClusterControlPlaneNodeVsphereConfig[]
(Output) Vsphere-specific config. Structure is documented below.
auto_resize_config VMwareClusterControlPlaneNodeAutoResizeConfig
AutoResizeConfig provides auto resizing configurations. Structure is documented below.
cpus int
The number of CPUs for each admin cluster node that serve as control planes for this VMware User Cluster. (default: 4 CPUs)
memory int
The megabytes of memory for each admin cluster node that serves as a control plane for this VMware User Cluster (default: 8192 MB memory).
replicas int
The number of control plane nodes for this VMware User Cluster. (default: 1 replica).
vsphere_configs Sequence[VMwareClusterControlPlaneNodeVsphereConfig]
(Output) Vsphere-specific config. Structure is documented below.
autoResizeConfig Property Map
AutoResizeConfig provides auto resizing configurations. Structure is documented below.
cpus Number
The number of CPUs for each admin cluster node that serve as control planes for this VMware User Cluster. (default: 4 CPUs)
memory Number
The megabytes of memory for each admin cluster node that serves as a control plane for this VMware User Cluster (default: 8192 MB memory).
replicas Number
The number of control plane nodes for this VMware User Cluster. (default: 1 replica).
vsphereConfigs List<Property Map>
(Output) Vsphere-specific config. Structure is documented below.

VMwareClusterControlPlaneNodeAutoResizeConfig
, VMwareClusterControlPlaneNodeAutoResizeConfigArgs

Enabled This property is required. bool

Whether to enable control plane node auto resizing.

The vsphere_config block contains:

Enabled This property is required. bool

Whether to enable control plane node auto resizing.

The vsphere_config block contains:

enabled This property is required. Boolean

Whether to enable control plane node auto resizing.

The vsphere_config block contains:

enabled This property is required. boolean

Whether to enable control plane node auto resizing.

The vsphere_config block contains:

enabled This property is required. bool

Whether to enable control plane node auto resizing.

The vsphere_config block contains:

enabled This property is required. Boolean

Whether to enable control plane node auto resizing.

The vsphere_config block contains:

VMwareClusterControlPlaneNodeVsphereConfig
, VMwareClusterControlPlaneNodeVsphereConfigArgs

Datastore string
The Vsphere datastore used by the Control Plane Node.
StoragePolicyName string
The Vsphere storage policy used by the control plane Node.
Datastore string
The Vsphere datastore used by the Control Plane Node.
StoragePolicyName string
The Vsphere storage policy used by the control plane Node.
datastore String
The Vsphere datastore used by the Control Plane Node.
storagePolicyName String
The Vsphere storage policy used by the control plane Node.
datastore string
The Vsphere datastore used by the Control Plane Node.
storagePolicyName string
The Vsphere storage policy used by the control plane Node.
datastore str
The Vsphere datastore used by the Control Plane Node.
storage_policy_name str
The Vsphere storage policy used by the control plane Node.
datastore String
The Vsphere datastore used by the Control Plane Node.
storagePolicyName String
The Vsphere storage policy used by the control plane Node.

VMwareClusterDataplaneV2
, VMwareClusterDataplaneV2Args

AdvancedNetworking bool
Enable advanced networking which requires dataplane_v2_enabled to be set true.
DataplaneV2Enabled bool
Enables Dataplane V2.
WindowsDataplaneV2Enabled bool
Enable Dataplane V2 for clusters with Windows nodes.
AdvancedNetworking bool
Enable advanced networking which requires dataplane_v2_enabled to be set true.
DataplaneV2Enabled bool
Enables Dataplane V2.
WindowsDataplaneV2Enabled bool
Enable Dataplane V2 for clusters with Windows nodes.
advancedNetworking Boolean
Enable advanced networking which requires dataplane_v2_enabled to be set true.
dataplaneV2Enabled Boolean
Enables Dataplane V2.
windowsDataplaneV2Enabled Boolean
Enable Dataplane V2 for clusters with Windows nodes.
advancedNetworking boolean
Enable advanced networking which requires dataplane_v2_enabled to be set true.
dataplaneV2Enabled boolean
Enables Dataplane V2.
windowsDataplaneV2Enabled boolean
Enable Dataplane V2 for clusters with Windows nodes.
advanced_networking bool
Enable advanced networking which requires dataplane_v2_enabled to be set true.
dataplane_v2_enabled bool
Enables Dataplane V2.
windows_dataplane_v2_enabled bool
Enable Dataplane V2 for clusters with Windows nodes.
advancedNetworking Boolean
Enable advanced networking which requires dataplane_v2_enabled to be set true.
dataplaneV2Enabled Boolean
Enables Dataplane V2.
windowsDataplaneV2Enabled Boolean
Enable Dataplane V2 for clusters with Windows nodes.

VMwareClusterFleet
, VMwareClusterFleetArgs

Membership string
(Output) The name of the managed Hub Membership resource associated to this cluster. Membership names are formatted as projects/<project-number>/locations/<location>/memberships/<cluster-id>.
Membership string
(Output) The name of the managed Hub Membership resource associated to this cluster. Membership names are formatted as projects/<project-number>/locations/<location>/memberships/<cluster-id>.
membership String
(Output) The name of the managed Hub Membership resource associated to this cluster. Membership names are formatted as projects/<project-number>/locations/<location>/memberships/<cluster-id>.
membership string
(Output) The name of the managed Hub Membership resource associated to this cluster. Membership names are formatted as projects/<project-number>/locations/<location>/memberships/<cluster-id>.
membership str
(Output) The name of the managed Hub Membership resource associated to this cluster. Membership names are formatted as projects/<project-number>/locations/<location>/memberships/<cluster-id>.
membership String
(Output) The name of the managed Hub Membership resource associated to this cluster. Membership names are formatted as projects/<project-number>/locations/<location>/memberships/<cluster-id>.

VMwareClusterLoadBalancer
, VMwareClusterLoadBalancerArgs

F5Config VMwareClusterLoadBalancerF5Config
Configuration for F5 Big IP typed load balancers. Structure is documented below.
ManualLbConfig VMwareClusterLoadBalancerManualLbConfig
Manually configured load balancers. Structure is documented below.
MetalLbConfig VMwareClusterLoadBalancerMetalLbConfig
Configuration for MetalLB typed load balancers. Structure is documented below.
VipConfig VMwareClusterLoadBalancerVipConfig
The VIPs used by the load balancer. Structure is documented below.
F5Config VMwareClusterLoadBalancerF5Config
Configuration for F5 Big IP typed load balancers. Structure is documented below.
ManualLbConfig VMwareClusterLoadBalancerManualLbConfig
Manually configured load balancers. Structure is documented below.
MetalLbConfig VMwareClusterLoadBalancerMetalLbConfig
Configuration for MetalLB typed load balancers. Structure is documented below.
VipConfig VMwareClusterLoadBalancerVipConfig
The VIPs used by the load balancer. Structure is documented below.
f5Config VMwareClusterLoadBalancerF5Config
Configuration for F5 Big IP typed load balancers. Structure is documented below.
manualLbConfig VMwareClusterLoadBalancerManualLbConfig
Manually configured load balancers. Structure is documented below.
metalLbConfig VMwareClusterLoadBalancerMetalLbConfig
Configuration for MetalLB typed load balancers. Structure is documented below.
vipConfig VMwareClusterLoadBalancerVipConfig
The VIPs used by the load balancer. Structure is documented below.
f5Config VMwareClusterLoadBalancerF5Config
Configuration for F5 Big IP typed load balancers. Structure is documented below.
manualLbConfig VMwareClusterLoadBalancerManualLbConfig
Manually configured load balancers. Structure is documented below.
metalLbConfig VMwareClusterLoadBalancerMetalLbConfig
Configuration for MetalLB typed load balancers. Structure is documented below.
vipConfig VMwareClusterLoadBalancerVipConfig
The VIPs used by the load balancer. Structure is documented below.
f5_config VMwareClusterLoadBalancerF5Config
Configuration for F5 Big IP typed load balancers. Structure is documented below.
manual_lb_config VMwareClusterLoadBalancerManualLbConfig
Manually configured load balancers. Structure is documented below.
metal_lb_config VMwareClusterLoadBalancerMetalLbConfig
Configuration for MetalLB typed load balancers. Structure is documented below.
vip_config VMwareClusterLoadBalancerVipConfig
The VIPs used by the load balancer. Structure is documented below.
f5Config Property Map
Configuration for F5 Big IP typed load balancers. Structure is documented below.
manualLbConfig Property Map
Manually configured load balancers. Structure is documented below.
metalLbConfig Property Map
Configuration for MetalLB typed load balancers. Structure is documented below.
vipConfig Property Map
The VIPs used by the load balancer. Structure is documented below.

VMwareClusterLoadBalancerF5Config
, VMwareClusterLoadBalancerF5ConfigArgs

Address string
The load balancer's IP address.
Partition string
he preexisting partition to be used by the load balancer. T his partition is usually created for the admin cluster for example: 'my-f5-admin-partition'.
SnatPool string
The pool name. Only necessary, if using SNAT.
Address string
The load balancer's IP address.
Partition string
he preexisting partition to be used by the load balancer. T his partition is usually created for the admin cluster for example: 'my-f5-admin-partition'.
SnatPool string
The pool name. Only necessary, if using SNAT.
address String
The load balancer's IP address.
partition String
he preexisting partition to be used by the load balancer. T his partition is usually created for the admin cluster for example: 'my-f5-admin-partition'.
snatPool String
The pool name. Only necessary, if using SNAT.
address string
The load balancer's IP address.
partition string
he preexisting partition to be used by the load balancer. T his partition is usually created for the admin cluster for example: 'my-f5-admin-partition'.
snatPool string
The pool name. Only necessary, if using SNAT.
address str
The load balancer's IP address.
partition str
he preexisting partition to be used by the load balancer. T his partition is usually created for the admin cluster for example: 'my-f5-admin-partition'.
snat_pool str
The pool name. Only necessary, if using SNAT.
address String
The load balancer's IP address.
partition String
he preexisting partition to be used by the load balancer. T his partition is usually created for the admin cluster for example: 'my-f5-admin-partition'.
snatPool String
The pool name. Only necessary, if using SNAT.

VMwareClusterLoadBalancerManualLbConfig
, VMwareClusterLoadBalancerManualLbConfigArgs

ControlPlaneNodePort int
NodePort for control plane service. The Kubernetes API server in the admin cluster is implemented as a Service of type NodePort (ex. 30968).
IngressHttpNodePort int
NodePort for ingress service's http. The ingress service in the admin cluster is implemented as a Service of type NodePort (ex. 32527).
IngressHttpsNodePort int
NodePort for ingress service's https. The ingress service in the admin cluster is implemented as a Service of type NodePort (ex. 30139).
KonnectivityServerNodePort int
NodePort for konnectivity server service running as a sidecar in each kube-apiserver pod (ex. 30564).
ControlPlaneNodePort int
NodePort for control plane service. The Kubernetes API server in the admin cluster is implemented as a Service of type NodePort (ex. 30968).
IngressHttpNodePort int
NodePort for ingress service's http. The ingress service in the admin cluster is implemented as a Service of type NodePort (ex. 32527).
IngressHttpsNodePort int
NodePort for ingress service's https. The ingress service in the admin cluster is implemented as a Service of type NodePort (ex. 30139).
KonnectivityServerNodePort int
NodePort for konnectivity server service running as a sidecar in each kube-apiserver pod (ex. 30564).
controlPlaneNodePort Integer
NodePort for control plane service. The Kubernetes API server in the admin cluster is implemented as a Service of type NodePort (ex. 30968).
ingressHttpNodePort Integer
NodePort for ingress service's http. The ingress service in the admin cluster is implemented as a Service of type NodePort (ex. 32527).
ingressHttpsNodePort Integer
NodePort for ingress service's https. The ingress service in the admin cluster is implemented as a Service of type NodePort (ex. 30139).
konnectivityServerNodePort Integer
NodePort for konnectivity server service running as a sidecar in each kube-apiserver pod (ex. 30564).
controlPlaneNodePort number
NodePort for control plane service. The Kubernetes API server in the admin cluster is implemented as a Service of type NodePort (ex. 30968).
ingressHttpNodePort number
NodePort for ingress service's http. The ingress service in the admin cluster is implemented as a Service of type NodePort (ex. 32527).
ingressHttpsNodePort number
NodePort for ingress service's https. The ingress service in the admin cluster is implemented as a Service of type NodePort (ex. 30139).
konnectivityServerNodePort number
NodePort for konnectivity server service running as a sidecar in each kube-apiserver pod (ex. 30564).
control_plane_node_port int
NodePort for control plane service. The Kubernetes API server in the admin cluster is implemented as a Service of type NodePort (ex. 30968).
ingress_http_node_port int
NodePort for ingress service's http. The ingress service in the admin cluster is implemented as a Service of type NodePort (ex. 32527).
ingress_https_node_port int
NodePort for ingress service's https. The ingress service in the admin cluster is implemented as a Service of type NodePort (ex. 30139).
konnectivity_server_node_port int
NodePort for konnectivity server service running as a sidecar in each kube-apiserver pod (ex. 30564).
controlPlaneNodePort Number
NodePort for control plane service. The Kubernetes API server in the admin cluster is implemented as a Service of type NodePort (ex. 30968).
ingressHttpNodePort Number
NodePort for ingress service's http. The ingress service in the admin cluster is implemented as a Service of type NodePort (ex. 32527).
ingressHttpsNodePort Number
NodePort for ingress service's https. The ingress service in the admin cluster is implemented as a Service of type NodePort (ex. 30139).
konnectivityServerNodePort Number
NodePort for konnectivity server service running as a sidecar in each kube-apiserver pod (ex. 30564).

VMwareClusterLoadBalancerMetalLbConfig
, VMwareClusterLoadBalancerMetalLbConfigArgs

AddressPools This property is required. List<VMwareClusterLoadBalancerMetalLbConfigAddressPool>
AddressPools is a list of non-overlapping IP pools used by load balancer typed services. All addresses must be routable to load balancer nodes. IngressVIP must be included in the pools. Structure is documented below.
AddressPools This property is required. []VMwareClusterLoadBalancerMetalLbConfigAddressPool
AddressPools is a list of non-overlapping IP pools used by load balancer typed services. All addresses must be routable to load balancer nodes. IngressVIP must be included in the pools. Structure is documented below.
addressPools This property is required. List<VMwareClusterLoadBalancerMetalLbConfigAddressPool>
AddressPools is a list of non-overlapping IP pools used by load balancer typed services. All addresses must be routable to load balancer nodes. IngressVIP must be included in the pools. Structure is documented below.
addressPools This property is required. VMwareClusterLoadBalancerMetalLbConfigAddressPool[]
AddressPools is a list of non-overlapping IP pools used by load balancer typed services. All addresses must be routable to load balancer nodes. IngressVIP must be included in the pools. Structure is documented below.
address_pools This property is required. Sequence[VMwareClusterLoadBalancerMetalLbConfigAddressPool]
AddressPools is a list of non-overlapping IP pools used by load balancer typed services. All addresses must be routable to load balancer nodes. IngressVIP must be included in the pools. Structure is documented below.
addressPools This property is required. List<Property Map>
AddressPools is a list of non-overlapping IP pools used by load balancer typed services. All addresses must be routable to load balancer nodes. IngressVIP must be included in the pools. Structure is documented below.

VMwareClusterLoadBalancerMetalLbConfigAddressPool
, VMwareClusterLoadBalancerMetalLbConfigAddressPoolArgs

Addresses This property is required. List<string>
The addresses that are part of this pool. Each address must be either in the CIDR form (1.2.3.0/24) or range form (1.2.3.1-1.2.3.5).
Pool This property is required. string
The name of the address pool.
AvoidBuggyIps bool
If true, avoid using IPs ending in .0 or .255. This avoids buggy consumer devices mistakenly dropping IPv4 traffic for those special IP addresses.
ManualAssign bool

If true, prevent IP addresses from being automatically assigned.

The dataplane_v2 block supports:

Addresses This property is required. []string
The addresses that are part of this pool. Each address must be either in the CIDR form (1.2.3.0/24) or range form (1.2.3.1-1.2.3.5).
Pool This property is required. string
The name of the address pool.
AvoidBuggyIps bool
If true, avoid using IPs ending in .0 or .255. This avoids buggy consumer devices mistakenly dropping IPv4 traffic for those special IP addresses.
ManualAssign bool

If true, prevent IP addresses from being automatically assigned.

The dataplane_v2 block supports:

addresses This property is required. List<String>
The addresses that are part of this pool. Each address must be either in the CIDR form (1.2.3.0/24) or range form (1.2.3.1-1.2.3.5).
pool This property is required. String
The name of the address pool.
avoidBuggyIps Boolean
If true, avoid using IPs ending in .0 or .255. This avoids buggy consumer devices mistakenly dropping IPv4 traffic for those special IP addresses.
manualAssign Boolean

If true, prevent IP addresses from being automatically assigned.

The dataplane_v2 block supports:

addresses This property is required. string[]
The addresses that are part of this pool. Each address must be either in the CIDR form (1.2.3.0/24) or range form (1.2.3.1-1.2.3.5).
pool This property is required. string
The name of the address pool.
avoidBuggyIps boolean
If true, avoid using IPs ending in .0 or .255. This avoids buggy consumer devices mistakenly dropping IPv4 traffic for those special IP addresses.
manualAssign boolean

If true, prevent IP addresses from being automatically assigned.

The dataplane_v2 block supports:

addresses This property is required. Sequence[str]
The addresses that are part of this pool. Each address must be either in the CIDR form (1.2.3.0/24) or range form (1.2.3.1-1.2.3.5).
pool This property is required. str
The name of the address pool.
avoid_buggy_ips bool
If true, avoid using IPs ending in .0 or .255. This avoids buggy consumer devices mistakenly dropping IPv4 traffic for those special IP addresses.
manual_assign bool

If true, prevent IP addresses from being automatically assigned.

The dataplane_v2 block supports:

addresses This property is required. List<String>
The addresses that are part of this pool. Each address must be either in the CIDR form (1.2.3.0/24) or range form (1.2.3.1-1.2.3.5).
pool This property is required. String
The name of the address pool.
avoidBuggyIps Boolean
If true, avoid using IPs ending in .0 or .255. This avoids buggy consumer devices mistakenly dropping IPv4 traffic for those special IP addresses.
manualAssign Boolean

If true, prevent IP addresses from being automatically assigned.

The dataplane_v2 block supports:

VMwareClusterLoadBalancerVipConfig
, VMwareClusterLoadBalancerVipConfigArgs

ControlPlaneVip string
The VIP which you previously set aside for the Kubernetes API of this cluster.
IngressVip string

The VIP which you previously set aside for ingress traffic into this cluster.

The f5_config block supports:

ControlPlaneVip string
The VIP which you previously set aside for the Kubernetes API of this cluster.
IngressVip string

The VIP which you previously set aside for ingress traffic into this cluster.

The f5_config block supports:

controlPlaneVip String
The VIP which you previously set aside for the Kubernetes API of this cluster.
ingressVip String

The VIP which you previously set aside for ingress traffic into this cluster.

The f5_config block supports:

controlPlaneVip string
The VIP which you previously set aside for the Kubernetes API of this cluster.
ingressVip string

The VIP which you previously set aside for ingress traffic into this cluster.

The f5_config block supports:

control_plane_vip str
The VIP which you previously set aside for the Kubernetes API of this cluster.
ingress_vip str

The VIP which you previously set aside for ingress traffic into this cluster.

The f5_config block supports:

controlPlaneVip String
The VIP which you previously set aside for the Kubernetes API of this cluster.
ingressVip String

The VIP which you previously set aside for ingress traffic into this cluster.

The f5_config block supports:

VMwareClusterNetworkConfig
, VMwareClusterNetworkConfigArgs

PodAddressCidrBlocks This property is required. List<string>
All pods in the cluster are assigned an RFC1918 IPv4 address from these ranges. Only a single range is supported. This field cannot be changed after creation.
ServiceAddressCidrBlocks This property is required. List<string>
All services in the cluster are assigned an RFC1918 IPv4 address from these ranges. Only a single range is supported.. This field cannot be changed after creation.
ControlPlaneV2Config VMwareClusterNetworkConfigControlPlaneV2Config
Configuration for control plane V2 mode. Structure is documented below.
DhcpIpConfig VMwareClusterNetworkConfigDhcpIpConfig
Configuration settings for a DHCP IP configuration. Structure is documented below.
HostConfig VMwareClusterNetworkConfigHostConfig
Represents common network settings irrespective of the host's IP address. Structure is documented below.
StaticIpConfig VMwareClusterNetworkConfigStaticIpConfig
Configuration settings for a static IP configuration. Structure is documented below.
VcenterNetwork Changes to this property will trigger replacement. string
vcenter_network specifies vCenter network name. Inherited from the admin cluster.
PodAddressCidrBlocks This property is required. []string
All pods in the cluster are assigned an RFC1918 IPv4 address from these ranges. Only a single range is supported. This field cannot be changed after creation.
ServiceAddressCidrBlocks This property is required. []string
All services in the cluster are assigned an RFC1918 IPv4 address from these ranges. Only a single range is supported.. This field cannot be changed after creation.
ControlPlaneV2Config VMwareClusterNetworkConfigControlPlaneV2Config
Configuration for control plane V2 mode. Structure is documented below.
DhcpIpConfig VMwareClusterNetworkConfigDhcpIpConfig
Configuration settings for a DHCP IP configuration. Structure is documented below.
HostConfig VMwareClusterNetworkConfigHostConfig
Represents common network settings irrespective of the host's IP address. Structure is documented below.
StaticIpConfig VMwareClusterNetworkConfigStaticIpConfig
Configuration settings for a static IP configuration. Structure is documented below.
VcenterNetwork Changes to this property will trigger replacement. string
vcenter_network specifies vCenter network name. Inherited from the admin cluster.
podAddressCidrBlocks This property is required. List<String>
All pods in the cluster are assigned an RFC1918 IPv4 address from these ranges. Only a single range is supported. This field cannot be changed after creation.
serviceAddressCidrBlocks This property is required. List<String>
All services in the cluster are assigned an RFC1918 IPv4 address from these ranges. Only a single range is supported.. This field cannot be changed after creation.
controlPlaneV2Config VMwareClusterNetworkConfigControlPlaneV2Config
Configuration for control plane V2 mode. Structure is documented below.
dhcpIpConfig VMwareClusterNetworkConfigDhcpIpConfig
Configuration settings for a DHCP IP configuration. Structure is documented below.
hostConfig VMwareClusterNetworkConfigHostConfig
Represents common network settings irrespective of the host's IP address. Structure is documented below.
staticIpConfig VMwareClusterNetworkConfigStaticIpConfig
Configuration settings for a static IP configuration. Structure is documented below.
vcenterNetwork Changes to this property will trigger replacement. String
vcenter_network specifies vCenter network name. Inherited from the admin cluster.
podAddressCidrBlocks This property is required. string[]
All pods in the cluster are assigned an RFC1918 IPv4 address from these ranges. Only a single range is supported. This field cannot be changed after creation.
serviceAddressCidrBlocks This property is required. string[]
All services in the cluster are assigned an RFC1918 IPv4 address from these ranges. Only a single range is supported.. This field cannot be changed after creation.
controlPlaneV2Config VMwareClusterNetworkConfigControlPlaneV2Config
Configuration for control plane V2 mode. Structure is documented below.
dhcpIpConfig VMwareClusterNetworkConfigDhcpIpConfig
Configuration settings for a DHCP IP configuration. Structure is documented below.
hostConfig VMwareClusterNetworkConfigHostConfig
Represents common network settings irrespective of the host's IP address. Structure is documented below.
staticIpConfig VMwareClusterNetworkConfigStaticIpConfig
Configuration settings for a static IP configuration. Structure is documented below.
vcenterNetwork Changes to this property will trigger replacement. string
vcenter_network specifies vCenter network name. Inherited from the admin cluster.
pod_address_cidr_blocks This property is required. Sequence[str]
All pods in the cluster are assigned an RFC1918 IPv4 address from these ranges. Only a single range is supported. This field cannot be changed after creation.
service_address_cidr_blocks This property is required. Sequence[str]
All services in the cluster are assigned an RFC1918 IPv4 address from these ranges. Only a single range is supported.. This field cannot be changed after creation.
control_plane_v2_config VMwareClusterNetworkConfigControlPlaneV2Config
Configuration for control plane V2 mode. Structure is documented below.
dhcp_ip_config VMwareClusterNetworkConfigDhcpIpConfig
Configuration settings for a DHCP IP configuration. Structure is documented below.
host_config VMwareClusterNetworkConfigHostConfig
Represents common network settings irrespective of the host's IP address. Structure is documented below.
static_ip_config VMwareClusterNetworkConfigStaticIpConfig
Configuration settings for a static IP configuration. Structure is documented below.
vcenter_network Changes to this property will trigger replacement. str
vcenter_network specifies vCenter network name. Inherited from the admin cluster.
podAddressCidrBlocks This property is required. List<String>
All pods in the cluster are assigned an RFC1918 IPv4 address from these ranges. Only a single range is supported. This field cannot be changed after creation.
serviceAddressCidrBlocks This property is required. List<String>
All services in the cluster are assigned an RFC1918 IPv4 address from these ranges. Only a single range is supported.. This field cannot be changed after creation.
controlPlaneV2Config Property Map
Configuration for control plane V2 mode. Structure is documented below.
dhcpIpConfig Property Map
Configuration settings for a DHCP IP configuration. Structure is documented below.
hostConfig Property Map
Represents common network settings irrespective of the host's IP address. Structure is documented below.
staticIpConfig Property Map
Configuration settings for a static IP configuration. Structure is documented below.
vcenterNetwork Changes to this property will trigger replacement. String
vcenter_network specifies vCenter network name. Inherited from the admin cluster.

VMwareClusterNetworkConfigControlPlaneV2Config
, VMwareClusterNetworkConfigControlPlaneV2ConfigArgs

controlPlaneIpBlock Property Map
Static IP addresses for the control plane nodes.

VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlock
, VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlockArgs

Gateway string
The network gateway used by the VMware User Cluster.
Ips List<VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlockIp>
The node's network configurations used by the VMware User Cluster. Structure is documented below.
Netmask string
The netmask used by the VMware User Cluster.
Gateway string
The network gateway used by the VMware User Cluster.
Ips []VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlockIp
The node's network configurations used by the VMware User Cluster. Structure is documented below.
Netmask string
The netmask used by the VMware User Cluster.
gateway String
The network gateway used by the VMware User Cluster.
ips List<VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlockIp>
The node's network configurations used by the VMware User Cluster. Structure is documented below.
netmask String
The netmask used by the VMware User Cluster.
gateway string
The network gateway used by the VMware User Cluster.
ips VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlockIp[]
The node's network configurations used by the VMware User Cluster. Structure is documented below.
netmask string
The netmask used by the VMware User Cluster.
gateway str
The network gateway used by the VMware User Cluster.
ips Sequence[VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlockIp]
The node's network configurations used by the VMware User Cluster. Structure is documented below.
netmask str
The netmask used by the VMware User Cluster.
gateway String
The network gateway used by the VMware User Cluster.
ips List<Property Map>
The node's network configurations used by the VMware User Cluster. Structure is documented below.
netmask String
The netmask used by the VMware User Cluster.

VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlockIp
, VMwareClusterNetworkConfigControlPlaneV2ConfigControlPlaneIpBlockIpArgs

Hostname string
Hostname of the machine. VM's name will be used if this field is empty.
Ip string
IP could be an IP address (like 1.2.3.4) or a CIDR (like 1.2.3.0/24).
Hostname string
Hostname of the machine. VM's name will be used if this field is empty.
Ip string
IP could be an IP address (like 1.2.3.4) or a CIDR (like 1.2.3.0/24).
hostname String
Hostname of the machine. VM's name will be used if this field is empty.
ip String
IP could be an IP address (like 1.2.3.4) or a CIDR (like 1.2.3.0/24).
hostname string
Hostname of the machine. VM's name will be used if this field is empty.
ip string
IP could be an IP address (like 1.2.3.4) or a CIDR (like 1.2.3.0/24).
hostname str
Hostname of the machine. VM's name will be used if this field is empty.
ip str
IP could be an IP address (like 1.2.3.4) or a CIDR (like 1.2.3.0/24).
hostname String
Hostname of the machine. VM's name will be used if this field is empty.
ip String
IP could be an IP address (like 1.2.3.4) or a CIDR (like 1.2.3.0/24).

VMwareClusterNetworkConfigDhcpIpConfig
, VMwareClusterNetworkConfigDhcpIpConfigArgs

Enabled This property is required. bool
enabled is a flag to mark if DHCP IP allocation is used for VMware user clusters.
Enabled This property is required. bool
enabled is a flag to mark if DHCP IP allocation is used for VMware user clusters.
enabled This property is required. Boolean
enabled is a flag to mark if DHCP IP allocation is used for VMware user clusters.
enabled This property is required. boolean
enabled is a flag to mark if DHCP IP allocation is used for VMware user clusters.
enabled This property is required. bool
enabled is a flag to mark if DHCP IP allocation is used for VMware user clusters.
enabled This property is required. Boolean
enabled is a flag to mark if DHCP IP allocation is used for VMware user clusters.

VMwareClusterNetworkConfigHostConfig
, VMwareClusterNetworkConfigHostConfigArgs

DnsSearchDomains List<string>

DNS search domains.

The control_plane_v2_config block supports:

DnsServers List<string>
DNS servers.
NtpServers List<string>
NTP servers.
DnsSearchDomains []string

DNS search domains.

The control_plane_v2_config block supports:

DnsServers []string
DNS servers.
NtpServers []string
NTP servers.
dnsSearchDomains List<String>

DNS search domains.

The control_plane_v2_config block supports:

dnsServers List<String>
DNS servers.
ntpServers List<String>
NTP servers.
dnsSearchDomains string[]

DNS search domains.

The control_plane_v2_config block supports:

dnsServers string[]
DNS servers.
ntpServers string[]
NTP servers.
dns_search_domains Sequence[str]

DNS search domains.

The control_plane_v2_config block supports:

dns_servers Sequence[str]
DNS servers.
ntp_servers Sequence[str]
NTP servers.
dnsSearchDomains List<String>

DNS search domains.

The control_plane_v2_config block supports:

dnsServers List<String>
DNS servers.
ntpServers List<String>
NTP servers.

VMwareClusterNetworkConfigStaticIpConfig
, VMwareClusterNetworkConfigStaticIpConfigArgs

IpBlocks This property is required. List<VMwareClusterNetworkConfigStaticIpConfigIpBlock>
Represents the configuration values for static IP allocation to nodes. Structure is documented below.
IpBlocks This property is required. []VMwareClusterNetworkConfigStaticIpConfigIpBlock
Represents the configuration values for static IP allocation to nodes. Structure is documented below.
ipBlocks This property is required. List<VMwareClusterNetworkConfigStaticIpConfigIpBlock>
Represents the configuration values for static IP allocation to nodes. Structure is documented below.
ipBlocks This property is required. VMwareClusterNetworkConfigStaticIpConfigIpBlock[]
Represents the configuration values for static IP allocation to nodes. Structure is documented below.
ip_blocks This property is required. Sequence[VMwareClusterNetworkConfigStaticIpConfigIpBlock]
Represents the configuration values for static IP allocation to nodes. Structure is documented below.
ipBlocks This property is required. List<Property Map>
Represents the configuration values for static IP allocation to nodes. Structure is documented below.

VMwareClusterNetworkConfigStaticIpConfigIpBlock
, VMwareClusterNetworkConfigStaticIpConfigIpBlockArgs

Gateway This property is required. string
The network gateway used by the VMware User Cluster.
Ips This property is required. List<VMwareClusterNetworkConfigStaticIpConfigIpBlockIp>
The node's network configurations used by the VMware User Cluster. Structure is documented below.
Netmask This property is required. string
The netmask used by the VMware User Cluster.
Gateway This property is required. string
The network gateway used by the VMware User Cluster.
Ips This property is required. []VMwareClusterNetworkConfigStaticIpConfigIpBlockIp
The node's network configurations used by the VMware User Cluster. Structure is documented below.
Netmask This property is required. string
The netmask used by the VMware User Cluster.
gateway This property is required. String
The network gateway used by the VMware User Cluster.
ips This property is required. List<VMwareClusterNetworkConfigStaticIpConfigIpBlockIp>
The node's network configurations used by the VMware User Cluster. Structure is documented below.
netmask This property is required. String
The netmask used by the VMware User Cluster.
gateway This property is required. string
The network gateway used by the VMware User Cluster.
ips This property is required. VMwareClusterNetworkConfigStaticIpConfigIpBlockIp[]
The node's network configurations used by the VMware User Cluster. Structure is documented below.
netmask This property is required. string
The netmask used by the VMware User Cluster.
gateway This property is required. str
The network gateway used by the VMware User Cluster.
ips This property is required. Sequence[VMwareClusterNetworkConfigStaticIpConfigIpBlockIp]
The node's network configurations used by the VMware User Cluster. Structure is documented below.
netmask This property is required. str
The netmask used by the VMware User Cluster.
gateway This property is required. String
The network gateway used by the VMware User Cluster.
ips This property is required. List<Property Map>
The node's network configurations used by the VMware User Cluster. Structure is documented below.
netmask This property is required. String
The netmask used by the VMware User Cluster.

VMwareClusterNetworkConfigStaticIpConfigIpBlockIp
, VMwareClusterNetworkConfigStaticIpConfigIpBlockIpArgs

Ip This property is required. string
IP could be an IP address (like 1.2.3.4) or a CIDR (like 1.2.3.0/24).
Hostname string
Hostname of the machine. VM's name will be used if this field is empty.
Ip This property is required. string
IP could be an IP address (like 1.2.3.4) or a CIDR (like 1.2.3.0/24).
Hostname string
Hostname of the machine. VM's name will be used if this field is empty.
ip This property is required. String
IP could be an IP address (like 1.2.3.4) or a CIDR (like 1.2.3.0/24).
hostname String
Hostname of the machine. VM's name will be used if this field is empty.
ip This property is required. string
IP could be an IP address (like 1.2.3.4) or a CIDR (like 1.2.3.0/24).
hostname string
Hostname of the machine. VM's name will be used if this field is empty.
ip This property is required. str
IP could be an IP address (like 1.2.3.4) or a CIDR (like 1.2.3.0/24).
hostname str
Hostname of the machine. VM's name will be used if this field is empty.
ip This property is required. String
IP could be an IP address (like 1.2.3.4) or a CIDR (like 1.2.3.0/24).
hostname String
Hostname of the machine. VM's name will be used if this field is empty.

VMwareClusterStatus
, VMwareClusterStatusArgs

Conditions List<VMwareClusterStatusCondition>
(Output) ResourceConditions provide a standard mechanism for higher-level status reporting from user cluster controller. Structure is documented below.
ErrorMessage string
(Output) Human-friendly representation of the error message from the user cluster controller. The error message can be temporary as the user cluster controller creates a cluster or node pool. If the error message persists for a longer period of time, it can be used to surface error message to indicate real problems requiring user intervention.
Conditions []VMwareClusterStatusCondition
(Output) ResourceConditions provide a standard mechanism for higher-level status reporting from user cluster controller. Structure is documented below.
ErrorMessage string
(Output) Human-friendly representation of the error message from the user cluster controller. The error message can be temporary as the user cluster controller creates a cluster or node pool. If the error message persists for a longer period of time, it can be used to surface error message to indicate real problems requiring user intervention.
conditions List<VMwareClusterStatusCondition>
(Output) ResourceConditions provide a standard mechanism for higher-level status reporting from user cluster controller. Structure is documented below.
errorMessage String
(Output) Human-friendly representation of the error message from the user cluster controller. The error message can be temporary as the user cluster controller creates a cluster or node pool. If the error message persists for a longer period of time, it can be used to surface error message to indicate real problems requiring user intervention.
conditions VMwareClusterStatusCondition[]
(Output) ResourceConditions provide a standard mechanism for higher-level status reporting from user cluster controller. Structure is documented below.
errorMessage string
(Output) Human-friendly representation of the error message from the user cluster controller. The error message can be temporary as the user cluster controller creates a cluster or node pool. If the error message persists for a longer period of time, it can be used to surface error message to indicate real problems requiring user intervention.
conditions Sequence[VMwareClusterStatusCondition]
(Output) ResourceConditions provide a standard mechanism for higher-level status reporting from user cluster controller. Structure is documented below.
error_message str
(Output) Human-friendly representation of the error message from the user cluster controller. The error message can be temporary as the user cluster controller creates a cluster or node pool. If the error message persists for a longer period of time, it can be used to surface error message to indicate real problems requiring user intervention.
conditions List<Property Map>
(Output) ResourceConditions provide a standard mechanism for higher-level status reporting from user cluster controller. Structure is documented below.
errorMessage String
(Output) Human-friendly representation of the error message from the user cluster controller. The error message can be temporary as the user cluster controller creates a cluster or node pool. If the error message persists for a longer period of time, it can be used to surface error message to indicate real problems requiring user intervention.

VMwareClusterStatusCondition
, VMwareClusterStatusConditionArgs

LastTransitionTime string
(Output) Last time the condition transit from one status to another.
Message string
(Output) Human-readable message indicating details about last transition.
Reason string
(Output) Machine-readable message indicating details about last transition.
State string
(Output) The lifecycle state of the condition.
Type string
(Output) Type of the condition. (e.g., ClusterRunning, NodePoolRunning or ServerSidePreflightReady)
LastTransitionTime string
(Output) Last time the condition transit from one status to another.
Message string
(Output) Human-readable message indicating details about last transition.
Reason string
(Output) Machine-readable message indicating details about last transition.
State string
(Output) The lifecycle state of the condition.
Type string
(Output) Type of the condition. (e.g., ClusterRunning, NodePoolRunning or ServerSidePreflightReady)
lastTransitionTime String
(Output) Last time the condition transit from one status to another.
message String
(Output) Human-readable message indicating details about last transition.
reason String
(Output) Machine-readable message indicating details about last transition.
state String
(Output) The lifecycle state of the condition.
type String
(Output) Type of the condition. (e.g., ClusterRunning, NodePoolRunning or ServerSidePreflightReady)
lastTransitionTime string
(Output) Last time the condition transit from one status to another.
message string
(Output) Human-readable message indicating details about last transition.
reason string
(Output) Machine-readable message indicating details about last transition.
state string
(Output) The lifecycle state of the condition.
type string
(Output) Type of the condition. (e.g., ClusterRunning, NodePoolRunning or ServerSidePreflightReady)
last_transition_time str
(Output) Last time the condition transit from one status to another.
message str
(Output) Human-readable message indicating details about last transition.
reason str
(Output) Machine-readable message indicating details about last transition.
state str
(Output) The lifecycle state of the condition.
type str
(Output) Type of the condition. (e.g., ClusterRunning, NodePoolRunning or ServerSidePreflightReady)
lastTransitionTime String
(Output) Last time the condition transit from one status to another.
message String
(Output) Human-readable message indicating details about last transition.
reason String
(Output) Machine-readable message indicating details about last transition.
state String
(Output) The lifecycle state of the condition.
type String
(Output) Type of the condition. (e.g., ClusterRunning, NodePoolRunning or ServerSidePreflightReady)

VMwareClusterStorage
, VMwareClusterStorageArgs

VsphereCsiDisabled This property is required. bool
Whether or not to deploy vSphere CSI components in the VMware User Cluster. Enabled by default.
VsphereCsiDisabled This property is required. bool
Whether or not to deploy vSphere CSI components in the VMware User Cluster. Enabled by default.
vsphereCsiDisabled This property is required. Boolean
Whether or not to deploy vSphere CSI components in the VMware User Cluster. Enabled by default.
vsphereCsiDisabled This property is required. boolean
Whether or not to deploy vSphere CSI components in the VMware User Cluster. Enabled by default.
vsphere_csi_disabled This property is required. bool
Whether or not to deploy vSphere CSI components in the VMware User Cluster. Enabled by default.
vsphereCsiDisabled This property is required. Boolean
Whether or not to deploy vSphere CSI components in the VMware User Cluster. Enabled by default.

VMwareClusterUpgradePolicy
, VMwareClusterUpgradePolicyArgs

ControlPlaneOnly bool
Controls whether the upgrade applies to the control plane only.
ControlPlaneOnly bool
Controls whether the upgrade applies to the control plane only.
controlPlaneOnly Boolean
Controls whether the upgrade applies to the control plane only.
controlPlaneOnly boolean
Controls whether the upgrade applies to the control plane only.
control_plane_only bool
Controls whether the upgrade applies to the control plane only.
controlPlaneOnly Boolean
Controls whether the upgrade applies to the control plane only.

VMwareClusterValidationCheck
, VMwareClusterValidationCheckArgs

Options string
(Output) Options used for the validation check.
Scenario string
(Output) The scenario when the preflight checks were run..
Statuses List<VMwareClusterValidationCheckStatus>
(Output) Specifies the detailed validation check status Structure is documented below.
Options string
(Output) Options used for the validation check.
Scenario string
(Output) The scenario when the preflight checks were run..
Statuses []VMwareClusterValidationCheckStatus
(Output) Specifies the detailed validation check status Structure is documented below.
options String
(Output) Options used for the validation check.
scenario String
(Output) The scenario when the preflight checks were run..
statuses List<VMwareClusterValidationCheckStatus>
(Output) Specifies the detailed validation check status Structure is documented below.
options string
(Output) Options used for the validation check.
scenario string
(Output) The scenario when the preflight checks were run..
statuses VMwareClusterValidationCheckStatus[]
(Output) Specifies the detailed validation check status Structure is documented below.
options str
(Output) Options used for the validation check.
scenario str
(Output) The scenario when the preflight checks were run..
statuses Sequence[VMwareClusterValidationCheckStatus]
(Output) Specifies the detailed validation check status Structure is documented below.
options String
(Output) Options used for the validation check.
scenario String
(Output) The scenario when the preflight checks were run..
statuses List<Property Map>
(Output) Specifies the detailed validation check status Structure is documented below.

VMwareClusterValidationCheckStatus
, VMwareClusterValidationCheckStatusArgs

Results List<VMwareClusterValidationCheckStatusResult>
(Output) Individual checks which failed as part of the Preflight check execution. Structure is documented below.
Results []VMwareClusterValidationCheckStatusResult
(Output) Individual checks which failed as part of the Preflight check execution. Structure is documented below.
results List<VMwareClusterValidationCheckStatusResult>
(Output) Individual checks which failed as part of the Preflight check execution. Structure is documented below.
results VMwareClusterValidationCheckStatusResult[]
(Output) Individual checks which failed as part of the Preflight check execution. Structure is documented below.
results Sequence[VMwareClusterValidationCheckStatusResult]
(Output) Individual checks which failed as part of the Preflight check execution. Structure is documented below.
results List<Property Map>
(Output) Individual checks which failed as part of the Preflight check execution. Structure is documented below.

VMwareClusterValidationCheckStatusResult
, VMwareClusterValidationCheckStatusResultArgs

Category string
(Output) The category of the validation.
Description string
(Output) The description of the validation check.
Details string
(Output) Detailed failure information, which might be unformatted.
Options string
(Output) Options used for the validation check.
Reason string
(Output) Machine-readable message indicating details about last transition.
Category string
(Output) The category of the validation.
Description string
(Output) The description of the validation check.
Details string
(Output) Detailed failure information, which might be unformatted.
Options string
(Output) Options used for the validation check.
Reason string
(Output) Machine-readable message indicating details about last transition.
category String
(Output) The category of the validation.
description String
(Output) The description of the validation check.
details String
(Output) Detailed failure information, which might be unformatted.
options String
(Output) Options used for the validation check.
reason String
(Output) Machine-readable message indicating details about last transition.
category string
(Output) The category of the validation.
description string
(Output) The description of the validation check.
details string
(Output) Detailed failure information, which might be unformatted.
options string
(Output) Options used for the validation check.
reason string
(Output) Machine-readable message indicating details about last transition.
category str
(Output) The category of the validation.
description str
(Output) The description of the validation check.
details str
(Output) Detailed failure information, which might be unformatted.
options str
(Output) Options used for the validation check.
reason str
(Output) Machine-readable message indicating details about last transition.
category String
(Output) The category of the validation.
description String
(Output) The description of the validation check.
details String
(Output) Detailed failure information, which might be unformatted.
options String
(Output) Options used for the validation check.
reason String
(Output) Machine-readable message indicating details about last transition.

VMwareClusterVcenter
, VMwareClusterVcenterArgs

Address string
(Output) The vCenter IP address.
CaCertData string
Contains the vCenter CA certificate public key for SSL verification.
Cluster string
The name of the vCenter cluster for the user cluster.
Datacenter string
The name of the vCenter datacenter for the user cluster.
Datastore string
The name of the vCenter datastore for the user cluster.
Folder string
The name of the vCenter folder for the user cluster.
ResourcePool string
The name of the vCenter resource pool for the user cluster.
StoragePolicyName string
The name of the vCenter storage policy for the user cluster.
Address string
(Output) The vCenter IP address.
CaCertData string
Contains the vCenter CA certificate public key for SSL verification.
Cluster string
The name of the vCenter cluster for the user cluster.
Datacenter string
The name of the vCenter datacenter for the user cluster.
Datastore string
The name of the vCenter datastore for the user cluster.
Folder string
The name of the vCenter folder for the user cluster.
ResourcePool string
The name of the vCenter resource pool for the user cluster.
StoragePolicyName string
The name of the vCenter storage policy for the user cluster.
address String
(Output) The vCenter IP address.
caCertData String
Contains the vCenter CA certificate public key for SSL verification.
cluster String
The name of the vCenter cluster for the user cluster.
datacenter String
The name of the vCenter datacenter for the user cluster.
datastore String
The name of the vCenter datastore for the user cluster.
folder String
The name of the vCenter folder for the user cluster.
resourcePool String
The name of the vCenter resource pool for the user cluster.
storagePolicyName String
The name of the vCenter storage policy for the user cluster.
address string
(Output) The vCenter IP address.
caCertData string
Contains the vCenter CA certificate public key for SSL verification.
cluster string
The name of the vCenter cluster for the user cluster.
datacenter string
The name of the vCenter datacenter for the user cluster.
datastore string
The name of the vCenter datastore for the user cluster.
folder string
The name of the vCenter folder for the user cluster.
resourcePool string
The name of the vCenter resource pool for the user cluster.
storagePolicyName string
The name of the vCenter storage policy for the user cluster.
address str
(Output) The vCenter IP address.
ca_cert_data str
Contains the vCenter CA certificate public key for SSL verification.
cluster str
The name of the vCenter cluster for the user cluster.
datacenter str
The name of the vCenter datacenter for the user cluster.
datastore str
The name of the vCenter datastore for the user cluster.
folder str
The name of the vCenter folder for the user cluster.
resource_pool str
The name of the vCenter resource pool for the user cluster.
storage_policy_name str
The name of the vCenter storage policy for the user cluster.
address String
(Output) The vCenter IP address.
caCertData String
Contains the vCenter CA certificate public key for SSL verification.
cluster String
The name of the vCenter cluster for the user cluster.
datacenter String
The name of the vCenter datacenter for the user cluster.
datastore String
The name of the vCenter datastore for the user cluster.
folder String
The name of the vCenter folder for the user cluster.
resourcePool String
The name of the vCenter resource pool for the user cluster.
storagePolicyName String
The name of the vCenter storage policy for the user cluster.

Import

VmwareCluster can be imported using any of these accepted formats:

  • projects/{{project}}/locations/{{location}}/vmwareClusters/{{name}}

  • {{project}}/{{location}}/{{name}}

  • {{location}}/{{name}}

When using the pulumi import command, VmwareCluster can be imported using one of the formats above. For example:

$ pulumi import gcp:gkeonprem/vMwareCluster:VMwareCluster default projects/{{project}}/locations/{{location}}/vmwareClusters/{{name}}
Copy
$ pulumi import gcp:gkeonprem/vMwareCluster:VMwareCluster default {{project}}/{{location}}/{{name}}
Copy
$ pulumi import gcp:gkeonprem/vMwareCluster:VMwareCluster default {{location}}/{{name}}
Copy

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

Package Details

Repository
Google Cloud (GCP) Classic pulumi/pulumi-gcp
License
Apache-2.0
Notes
This Pulumi package is based on the google-beta Terraform Provider.