1. Packages
  2. Google Cloud (GCP) Classic
  3. API Docs
  4. gkeonprem
  5. BareMetalCluster
Google Cloud Classic v7.2.1 published on Wednesday, Nov 22, 2023 by Pulumi

gcp.gkeonprem.BareMetalCluster

Explore with Pulumi AI

gcp logo
Google Cloud Classic v7.2.1 published on Wednesday, Nov 22, 2023 by Pulumi

    A Google Bare Metal User Cluster.

    Example Usage

    Gkeonprem Bare Metal Cluster Basic

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    
    return await Deployment.RunAsync(() => 
    {
        var cluster_basic = new Gcp.GkeOnPrem.BareMetalCluster("cluster-basic", new()
        {
            AdminClusterMembership = "projects/870316890899/locations/global/memberships/gkeonprem-terraform-test",
            BareMetalVersion = "1.12.3",
            ControlPlane = new Gcp.GkeOnPrem.Inputs.BareMetalClusterControlPlaneArgs
            {
                ControlPlaneNodePoolConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterControlPlaneControlPlaneNodePoolConfigArgs
                {
                    NodePoolConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigArgs
                    {
                        Labels = null,
                        NodeConfigs = new[]
                        {
                            new Gcp.GkeOnPrem.Inputs.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfigArgs
                            {
                                Labels = null,
                                NodeIp = "10.200.0.9",
                            },
                        },
                        OperatingSystem = "LINUX",
                    },
                },
            },
            LoadBalancer = new Gcp.GkeOnPrem.Inputs.BareMetalClusterLoadBalancerArgs
            {
                MetalLbConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterLoadBalancerMetalLbConfigArgs
                {
                    AddressPools = new[]
                    {
                        new Gcp.GkeOnPrem.Inputs.BareMetalClusterLoadBalancerMetalLbConfigAddressPoolArgs
                        {
                            Addresses = new[]
                            {
                                "10.200.0.14/32",
                                "10.200.0.15/32",
                                "10.200.0.16/32",
                                "10.200.0.17/32",
                                "10.200.0.18/32",
                                "fd00:1::f/128",
                                "fd00:1::10/128",
                                "fd00:1::11/128",
                                "fd00:1::12/128",
                            },
                            AvoidBuggyIps = true,
                            ManualAssign = true,
                            Pool = "pool1",
                        },
                    },
                },
                PortConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterLoadBalancerPortConfigArgs
                {
                    ControlPlaneLoadBalancerPort = 443,
                },
                VipConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterLoadBalancerVipConfigArgs
                {
                    ControlPlaneVip = "10.200.0.13",
                    IngressVip = "10.200.0.14",
                },
            },
            Location = "us-west1",
            NetworkConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterNetworkConfigArgs
            {
                IslandModeCidr = new Gcp.GkeOnPrem.Inputs.BareMetalClusterNetworkConfigIslandModeCidrArgs
                {
                    PodAddressCidrBlocks = new[]
                    {
                        "10.240.0.0/13",
                    },
                    ServiceAddressCidrBlocks = new[]
                    {
                        "172.26.0.0/16",
                    },
                },
            },
            SecurityConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterSecurityConfigArgs
            {
                Authorization = new Gcp.GkeOnPrem.Inputs.BareMetalClusterSecurityConfigAuthorizationArgs
                {
                    AdminUsers = new[]
                    {
                        new Gcp.GkeOnPrem.Inputs.BareMetalClusterSecurityConfigAuthorizationAdminUserArgs
                        {
                            Username = "admin@hashicorptest.com",
                        },
                    },
                },
            },
            Storage = new Gcp.GkeOnPrem.Inputs.BareMetalClusterStorageArgs
            {
                LvpNodeMountsConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterStorageLvpNodeMountsConfigArgs
                {
                    Path = "/mnt/localpv-disk",
                    StorageClass = "local-disks",
                },
                LvpShareConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterStorageLvpShareConfigArgs
                {
                    LvpConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterStorageLvpShareConfigLvpConfigArgs
                    {
                        Path = "/mnt/localpv-share",
                        StorageClass = "local-shared",
                    },
                    SharedPathPvCount = 5,
                },
            },
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkeonprem"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := gkeonprem.NewBareMetalCluster(ctx, "cluster-basic", &gkeonprem.BareMetalClusterArgs{
    			AdminClusterMembership: pulumi.String("projects/870316890899/locations/global/memberships/gkeonprem-terraform-test"),
    			BareMetalVersion:       pulumi.String("1.12.3"),
    			ControlPlane: &gkeonprem.BareMetalClusterControlPlaneArgs{
    				ControlPlaneNodePoolConfig: &gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigArgs{
    					NodePoolConfig: &gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigArgs{
    						Labels: nil,
    						NodeConfigs: gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfigArray{
    							&gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfigArgs{
    								Labels: nil,
    								NodeIp: pulumi.String("10.200.0.9"),
    							},
    						},
    						OperatingSystem: pulumi.String("LINUX"),
    					},
    				},
    			},
    			LoadBalancer: &gkeonprem.BareMetalClusterLoadBalancerArgs{
    				MetalLbConfig: &gkeonprem.BareMetalClusterLoadBalancerMetalLbConfigArgs{
    					AddressPools: gkeonprem.BareMetalClusterLoadBalancerMetalLbConfigAddressPoolArray{
    						&gkeonprem.BareMetalClusterLoadBalancerMetalLbConfigAddressPoolArgs{
    							Addresses: pulumi.StringArray{
    								pulumi.String("10.200.0.14/32"),
    								pulumi.String("10.200.0.15/32"),
    								pulumi.String("10.200.0.16/32"),
    								pulumi.String("10.200.0.17/32"),
    								pulumi.String("10.200.0.18/32"),
    								pulumi.String("fd00:1::f/128"),
    								pulumi.String("fd00:1::10/128"),
    								pulumi.String("fd00:1::11/128"),
    								pulumi.String("fd00:1::12/128"),
    							},
    							AvoidBuggyIps: pulumi.Bool(true),
    							ManualAssign:  pulumi.Bool(true),
    							Pool:          pulumi.String("pool1"),
    						},
    					},
    				},
    				PortConfig: &gkeonprem.BareMetalClusterLoadBalancerPortConfigArgs{
    					ControlPlaneLoadBalancerPort: pulumi.Int(443),
    				},
    				VipConfig: &gkeonprem.BareMetalClusterLoadBalancerVipConfigArgs{
    					ControlPlaneVip: pulumi.String("10.200.0.13"),
    					IngressVip:      pulumi.String("10.200.0.14"),
    				},
    			},
    			Location: pulumi.String("us-west1"),
    			NetworkConfig: &gkeonprem.BareMetalClusterNetworkConfigArgs{
    				IslandModeCidr: &gkeonprem.BareMetalClusterNetworkConfigIslandModeCidrArgs{
    					PodAddressCidrBlocks: pulumi.StringArray{
    						pulumi.String("10.240.0.0/13"),
    					},
    					ServiceAddressCidrBlocks: pulumi.StringArray{
    						pulumi.String("172.26.0.0/16"),
    					},
    				},
    			},
    			SecurityConfig: &gkeonprem.BareMetalClusterSecurityConfigArgs{
    				Authorization: &gkeonprem.BareMetalClusterSecurityConfigAuthorizationArgs{
    					AdminUsers: gkeonprem.BareMetalClusterSecurityConfigAuthorizationAdminUserArray{
    						&gkeonprem.BareMetalClusterSecurityConfigAuthorizationAdminUserArgs{
    							Username: pulumi.String("admin@hashicorptest.com"),
    						},
    					},
    				},
    			},
    			Storage: &gkeonprem.BareMetalClusterStorageArgs{
    				LvpNodeMountsConfig: &gkeonprem.BareMetalClusterStorageLvpNodeMountsConfigArgs{
    					Path:         pulumi.String("/mnt/localpv-disk"),
    					StorageClass: pulumi.String("local-disks"),
    				},
    				LvpShareConfig: &gkeonprem.BareMetalClusterStorageLvpShareConfigArgs{
    					LvpConfig: &gkeonprem.BareMetalClusterStorageLvpShareConfigLvpConfigArgs{
    						Path:         pulumi.String("/mnt/localpv-share"),
    						StorageClass: pulumi.String("local-shared"),
    					},
    					SharedPathPvCount: pulumi.Int(5),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.gkeonprem.BareMetalCluster;
    import com.pulumi.gcp.gkeonprem.BareMetalClusterArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterControlPlaneArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterControlPlaneControlPlaneNodePoolConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterLoadBalancerArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterLoadBalancerMetalLbConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterLoadBalancerPortConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterLoadBalancerVipConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterNetworkConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterNetworkConfigIslandModeCidrArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterSecurityConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterSecurityConfigAuthorizationArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterStorageArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterStorageLvpNodeMountsConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterStorageLvpShareConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterStorageLvpShareConfigLvpConfigArgs;
    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 BareMetalCluster("cluster-basic", BareMetalClusterArgs.builder()        
                .adminClusterMembership("projects/870316890899/locations/global/memberships/gkeonprem-terraform-test")
                .bareMetalVersion("1.12.3")
                .controlPlane(BareMetalClusterControlPlaneArgs.builder()
                    .controlPlaneNodePoolConfig(BareMetalClusterControlPlaneControlPlaneNodePoolConfigArgs.builder()
                        .nodePoolConfig(BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigArgs.builder()
                            .labels()
                            .nodeConfigs(BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfigArgs.builder()
                                .labels()
                                .nodeIp("10.200.0.9")
                                .build())
                            .operatingSystem("LINUX")
                            .build())
                        .build())
                    .build())
                .loadBalancer(BareMetalClusterLoadBalancerArgs.builder()
                    .metalLbConfig(BareMetalClusterLoadBalancerMetalLbConfigArgs.builder()
                        .addressPools(BareMetalClusterLoadBalancerMetalLbConfigAddressPoolArgs.builder()
                            .addresses(                        
                                "10.200.0.14/32",
                                "10.200.0.15/32",
                                "10.200.0.16/32",
                                "10.200.0.17/32",
                                "10.200.0.18/32",
                                "fd00:1::f/128",
                                "fd00:1::10/128",
                                "fd00:1::11/128",
                                "fd00:1::12/128")
                            .avoidBuggyIps(true)
                            .manualAssign(true)
                            .pool("pool1")
                            .build())
                        .build())
                    .portConfig(BareMetalClusterLoadBalancerPortConfigArgs.builder()
                        .controlPlaneLoadBalancerPort(443)
                        .build())
                    .vipConfig(BareMetalClusterLoadBalancerVipConfigArgs.builder()
                        .controlPlaneVip("10.200.0.13")
                        .ingressVip("10.200.0.14")
                        .build())
                    .build())
                .location("us-west1")
                .networkConfig(BareMetalClusterNetworkConfigArgs.builder()
                    .islandModeCidr(BareMetalClusterNetworkConfigIslandModeCidrArgs.builder()
                        .podAddressCidrBlocks("10.240.0.0/13")
                        .serviceAddressCidrBlocks("172.26.0.0/16")
                        .build())
                    .build())
                .securityConfig(BareMetalClusterSecurityConfigArgs.builder()
                    .authorization(BareMetalClusterSecurityConfigAuthorizationArgs.builder()
                        .adminUsers(BareMetalClusterSecurityConfigAuthorizationAdminUserArgs.builder()
                            .username("admin@hashicorptest.com")
                            .build())
                        .build())
                    .build())
                .storage(BareMetalClusterStorageArgs.builder()
                    .lvpNodeMountsConfig(BareMetalClusterStorageLvpNodeMountsConfigArgs.builder()
                        .path("/mnt/localpv-disk")
                        .storageClass("local-disks")
                        .build())
                    .lvpShareConfig(BareMetalClusterStorageLvpShareConfigArgs.builder()
                        .lvpConfig(BareMetalClusterStorageLvpShareConfigLvpConfigArgs.builder()
                            .path("/mnt/localpv-share")
                            .storageClass("local-shared")
                            .build())
                        .sharedPathPvCount(5)
                        .build())
                    .build())
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_gcp as gcp
    
    cluster_basic = gcp.gkeonprem.BareMetalCluster("cluster-basic",
        admin_cluster_membership="projects/870316890899/locations/global/memberships/gkeonprem-terraform-test",
        bare_metal_version="1.12.3",
        control_plane=gcp.gkeonprem.BareMetalClusterControlPlaneArgs(
            control_plane_node_pool_config=gcp.gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigArgs(
                node_pool_config=gcp.gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigArgs(
                    labels={},
                    node_configs=[gcp.gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfigArgs(
                        labels={},
                        node_ip="10.200.0.9",
                    )],
                    operating_system="LINUX",
                ),
            ),
        ),
        load_balancer=gcp.gkeonprem.BareMetalClusterLoadBalancerArgs(
            metal_lb_config=gcp.gkeonprem.BareMetalClusterLoadBalancerMetalLbConfigArgs(
                address_pools=[gcp.gkeonprem.BareMetalClusterLoadBalancerMetalLbConfigAddressPoolArgs(
                    addresses=[
                        "10.200.0.14/32",
                        "10.200.0.15/32",
                        "10.200.0.16/32",
                        "10.200.0.17/32",
                        "10.200.0.18/32",
                        "fd00:1::f/128",
                        "fd00:1::10/128",
                        "fd00:1::11/128",
                        "fd00:1::12/128",
                    ],
                    avoid_buggy_ips=True,
                    manual_assign=True,
                    pool="pool1",
                )],
            ),
            port_config=gcp.gkeonprem.BareMetalClusterLoadBalancerPortConfigArgs(
                control_plane_load_balancer_port=443,
            ),
            vip_config=gcp.gkeonprem.BareMetalClusterLoadBalancerVipConfigArgs(
                control_plane_vip="10.200.0.13",
                ingress_vip="10.200.0.14",
            ),
        ),
        location="us-west1",
        network_config=gcp.gkeonprem.BareMetalClusterNetworkConfigArgs(
            island_mode_cidr=gcp.gkeonprem.BareMetalClusterNetworkConfigIslandModeCidrArgs(
                pod_address_cidr_blocks=["10.240.0.0/13"],
                service_address_cidr_blocks=["172.26.0.0/16"],
            ),
        ),
        security_config=gcp.gkeonprem.BareMetalClusterSecurityConfigArgs(
            authorization=gcp.gkeonprem.BareMetalClusterSecurityConfigAuthorizationArgs(
                admin_users=[gcp.gkeonprem.BareMetalClusterSecurityConfigAuthorizationAdminUserArgs(
                    username="admin@hashicorptest.com",
                )],
            ),
        ),
        storage=gcp.gkeonprem.BareMetalClusterStorageArgs(
            lvp_node_mounts_config=gcp.gkeonprem.BareMetalClusterStorageLvpNodeMountsConfigArgs(
                path="/mnt/localpv-disk",
                storage_class="local-disks",
            ),
            lvp_share_config=gcp.gkeonprem.BareMetalClusterStorageLvpShareConfigArgs(
                lvp_config=gcp.gkeonprem.BareMetalClusterStorageLvpShareConfigLvpConfigArgs(
                    path="/mnt/localpv-share",
                    storage_class="local-shared",
                ),
                shared_path_pv_count=5,
            ),
        ))
    
    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const cluster_basic = new gcp.gkeonprem.BareMetalCluster("cluster-basic", {
        adminClusterMembership: "projects/870316890899/locations/global/memberships/gkeonprem-terraform-test",
        bareMetalVersion: "1.12.3",
        controlPlane: {
            controlPlaneNodePoolConfig: {
                nodePoolConfig: {
                    labels: {},
                    nodeConfigs: [{
                        labels: {},
                        nodeIp: "10.200.0.9",
                    }],
                    operatingSystem: "LINUX",
                },
            },
        },
        loadBalancer: {
            metalLbConfig: {
                addressPools: [{
                    addresses: [
                        "10.200.0.14/32",
                        "10.200.0.15/32",
                        "10.200.0.16/32",
                        "10.200.0.17/32",
                        "10.200.0.18/32",
                        "fd00:1::f/128",
                        "fd00:1::10/128",
                        "fd00:1::11/128",
                        "fd00:1::12/128",
                    ],
                    avoidBuggyIps: true,
                    manualAssign: true,
                    pool: "pool1",
                }],
            },
            portConfig: {
                controlPlaneLoadBalancerPort: 443,
            },
            vipConfig: {
                controlPlaneVip: "10.200.0.13",
                ingressVip: "10.200.0.14",
            },
        },
        location: "us-west1",
        networkConfig: {
            islandModeCidr: {
                podAddressCidrBlocks: ["10.240.0.0/13"],
                serviceAddressCidrBlocks: ["172.26.0.0/16"],
            },
        },
        securityConfig: {
            authorization: {
                adminUsers: [{
                    username: "admin@hashicorptest.com",
                }],
            },
        },
        storage: {
            lvpNodeMountsConfig: {
                path: "/mnt/localpv-disk",
                storageClass: "local-disks",
            },
            lvpShareConfig: {
                lvpConfig: {
                    path: "/mnt/localpv-share",
                    storageClass: "local-shared",
                },
                sharedPathPvCount: 5,
            },
        },
    });
    
    resources:
      cluster-basic:
        type: gcp:gkeonprem:BareMetalCluster
        properties:
          adminClusterMembership: projects/870316890899/locations/global/memberships/gkeonprem-terraform-test
          bareMetalVersion: 1.12.3
          controlPlane:
            controlPlaneNodePoolConfig:
              nodePoolConfig:
                labels: {}
                nodeConfigs:
                  - labels: {}
                    nodeIp: 10.200.0.9
                operatingSystem: LINUX
          loadBalancer:
            metalLbConfig:
              addressPools:
                - addresses:
                    - 10.200.0.14/32
                    - 10.200.0.15/32
                    - 10.200.0.16/32
                    - 10.200.0.17/32
                    - 10.200.0.18/32
                    - fd00:1::f/128
                    - fd00:1::10/128
                    - fd00:1::11/128
                    - fd00:1::12/128
                  avoidBuggyIps: true
                  manualAssign: true
                  pool: pool1
            portConfig:
              controlPlaneLoadBalancerPort: 443
            vipConfig:
              controlPlaneVip: 10.200.0.13
              ingressVip: 10.200.0.14
          location: us-west1
          networkConfig:
            islandModeCidr:
              podAddressCidrBlocks:
                - 10.240.0.0/13
              serviceAddressCidrBlocks:
                - 172.26.0.0/16
          securityConfig:
            authorization:
              adminUsers:
                - username: admin@hashicorptest.com
          storage:
            lvpNodeMountsConfig:
              path: /mnt/localpv-disk
              storageClass: local-disks
            lvpShareConfig:
              lvpConfig:
                path: /mnt/localpv-share
                storageClass: local-shared
              sharedPathPvCount: 5
    

    Gkeonprem Bare Metal Cluster Manuallb

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    
    return await Deployment.RunAsync(() => 
    {
        var cluster_manuallb = new Gcp.GkeOnPrem.BareMetalCluster("cluster-manuallb", new()
        {
            AdminClusterMembership = "projects/870316890899/locations/global/memberships/gkeonprem-terraform-test",
            BareMetalVersion = "1.12.3",
            BinaryAuthorization = new Gcp.GkeOnPrem.Inputs.BareMetalClusterBinaryAuthorizationArgs
            {
                EvaluationMode = "DISABLED",
            },
            ControlPlane = new Gcp.GkeOnPrem.Inputs.BareMetalClusterControlPlaneArgs
            {
                ControlPlaneNodePoolConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterControlPlaneControlPlaneNodePoolConfigArgs
                {
                    NodePoolConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigArgs
                    {
                        Labels = null,
                        NodeConfigs = new[]
                        {
                            new Gcp.GkeOnPrem.Inputs.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfigArgs
                            {
                                Labels = null,
                                NodeIp = "10.200.0.9",
                            },
                        },
                        OperatingSystem = "LINUX",
                    },
                },
            },
            LoadBalancer = new Gcp.GkeOnPrem.Inputs.BareMetalClusterLoadBalancerArgs
            {
                ManualLbConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterLoadBalancerManualLbConfigArgs
                {
                    Enabled = true,
                },
                PortConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterLoadBalancerPortConfigArgs
                {
                    ControlPlaneLoadBalancerPort = 443,
                },
                VipConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterLoadBalancerVipConfigArgs
                {
                    ControlPlaneVip = "10.200.0.13",
                    IngressVip = "10.200.0.14",
                },
            },
            Location = "us-west1",
            NetworkConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterNetworkConfigArgs
            {
                IslandModeCidr = new Gcp.GkeOnPrem.Inputs.BareMetalClusterNetworkConfigIslandModeCidrArgs
                {
                    PodAddressCidrBlocks = new[]
                    {
                        "10.240.0.0/13",
                    },
                    ServiceAddressCidrBlocks = new[]
                    {
                        "172.26.0.0/16",
                    },
                },
            },
            SecurityConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterSecurityConfigArgs
            {
                Authorization = new Gcp.GkeOnPrem.Inputs.BareMetalClusterSecurityConfigAuthorizationArgs
                {
                    AdminUsers = new[]
                    {
                        new Gcp.GkeOnPrem.Inputs.BareMetalClusterSecurityConfigAuthorizationAdminUserArgs
                        {
                            Username = "admin@hashicorptest.com",
                        },
                    },
                },
            },
            Storage = new Gcp.GkeOnPrem.Inputs.BareMetalClusterStorageArgs
            {
                LvpNodeMountsConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterStorageLvpNodeMountsConfigArgs
                {
                    Path = "/mnt/localpv-disk",
                    StorageClass = "local-disks",
                },
                LvpShareConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterStorageLvpShareConfigArgs
                {
                    LvpConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterStorageLvpShareConfigLvpConfigArgs
                    {
                        Path = "/mnt/localpv-share",
                        StorageClass = "local-shared",
                    },
                    SharedPathPvCount = 5,
                },
            },
            UpgradePolicy = new Gcp.GkeOnPrem.Inputs.BareMetalClusterUpgradePolicyArgs
            {
                Policy = "SERIAL",
            },
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkeonprem"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := gkeonprem.NewBareMetalCluster(ctx, "cluster-manuallb", &gkeonprem.BareMetalClusterArgs{
    			AdminClusterMembership: pulumi.String("projects/870316890899/locations/global/memberships/gkeonprem-terraform-test"),
    			BareMetalVersion:       pulumi.String("1.12.3"),
    			BinaryAuthorization: &gkeonprem.BareMetalClusterBinaryAuthorizationArgs{
    				EvaluationMode: pulumi.String("DISABLED"),
    			},
    			ControlPlane: &gkeonprem.BareMetalClusterControlPlaneArgs{
    				ControlPlaneNodePoolConfig: &gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigArgs{
    					NodePoolConfig: &gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigArgs{
    						Labels: nil,
    						NodeConfigs: gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfigArray{
    							&gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfigArgs{
    								Labels: nil,
    								NodeIp: pulumi.String("10.200.0.9"),
    							},
    						},
    						OperatingSystem: pulumi.String("LINUX"),
    					},
    				},
    			},
    			LoadBalancer: &gkeonprem.BareMetalClusterLoadBalancerArgs{
    				ManualLbConfig: &gkeonprem.BareMetalClusterLoadBalancerManualLbConfigArgs{
    					Enabled: pulumi.Bool(true),
    				},
    				PortConfig: &gkeonprem.BareMetalClusterLoadBalancerPortConfigArgs{
    					ControlPlaneLoadBalancerPort: pulumi.Int(443),
    				},
    				VipConfig: &gkeonprem.BareMetalClusterLoadBalancerVipConfigArgs{
    					ControlPlaneVip: pulumi.String("10.200.0.13"),
    					IngressVip:      pulumi.String("10.200.0.14"),
    				},
    			},
    			Location: pulumi.String("us-west1"),
    			NetworkConfig: &gkeonprem.BareMetalClusterNetworkConfigArgs{
    				IslandModeCidr: &gkeonprem.BareMetalClusterNetworkConfigIslandModeCidrArgs{
    					PodAddressCidrBlocks: pulumi.StringArray{
    						pulumi.String("10.240.0.0/13"),
    					},
    					ServiceAddressCidrBlocks: pulumi.StringArray{
    						pulumi.String("172.26.0.0/16"),
    					},
    				},
    			},
    			SecurityConfig: &gkeonprem.BareMetalClusterSecurityConfigArgs{
    				Authorization: &gkeonprem.BareMetalClusterSecurityConfigAuthorizationArgs{
    					AdminUsers: gkeonprem.BareMetalClusterSecurityConfigAuthorizationAdminUserArray{
    						&gkeonprem.BareMetalClusterSecurityConfigAuthorizationAdminUserArgs{
    							Username: pulumi.String("admin@hashicorptest.com"),
    						},
    					},
    				},
    			},
    			Storage: &gkeonprem.BareMetalClusterStorageArgs{
    				LvpNodeMountsConfig: &gkeonprem.BareMetalClusterStorageLvpNodeMountsConfigArgs{
    					Path:         pulumi.String("/mnt/localpv-disk"),
    					StorageClass: pulumi.String("local-disks"),
    				},
    				LvpShareConfig: &gkeonprem.BareMetalClusterStorageLvpShareConfigArgs{
    					LvpConfig: &gkeonprem.BareMetalClusterStorageLvpShareConfigLvpConfigArgs{
    						Path:         pulumi.String("/mnt/localpv-share"),
    						StorageClass: pulumi.String("local-shared"),
    					},
    					SharedPathPvCount: pulumi.Int(5),
    				},
    			},
    			UpgradePolicy: &gkeonprem.BareMetalClusterUpgradePolicyArgs{
    				Policy: pulumi.String("SERIAL"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.gkeonprem.BareMetalCluster;
    import com.pulumi.gcp.gkeonprem.BareMetalClusterArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterBinaryAuthorizationArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterControlPlaneArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterControlPlaneControlPlaneNodePoolConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterLoadBalancerArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterLoadBalancerManualLbConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterLoadBalancerPortConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterLoadBalancerVipConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterNetworkConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterNetworkConfigIslandModeCidrArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterSecurityConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterSecurityConfigAuthorizationArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterStorageArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterStorageLvpNodeMountsConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterStorageLvpShareConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterStorageLvpShareConfigLvpConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterUpgradePolicyArgs;
    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 BareMetalCluster("cluster-manuallb", BareMetalClusterArgs.builder()        
                .adminClusterMembership("projects/870316890899/locations/global/memberships/gkeonprem-terraform-test")
                .bareMetalVersion("1.12.3")
                .binaryAuthorization(BareMetalClusterBinaryAuthorizationArgs.builder()
                    .evaluationMode("DISABLED")
                    .build())
                .controlPlane(BareMetalClusterControlPlaneArgs.builder()
                    .controlPlaneNodePoolConfig(BareMetalClusterControlPlaneControlPlaneNodePoolConfigArgs.builder()
                        .nodePoolConfig(BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigArgs.builder()
                            .labels()
                            .nodeConfigs(BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfigArgs.builder()
                                .labels()
                                .nodeIp("10.200.0.9")
                                .build())
                            .operatingSystem("LINUX")
                            .build())
                        .build())
                    .build())
                .loadBalancer(BareMetalClusterLoadBalancerArgs.builder()
                    .manualLbConfig(BareMetalClusterLoadBalancerManualLbConfigArgs.builder()
                        .enabled(true)
                        .build())
                    .portConfig(BareMetalClusterLoadBalancerPortConfigArgs.builder()
                        .controlPlaneLoadBalancerPort(443)
                        .build())
                    .vipConfig(BareMetalClusterLoadBalancerVipConfigArgs.builder()
                        .controlPlaneVip("10.200.0.13")
                        .ingressVip("10.200.0.14")
                        .build())
                    .build())
                .location("us-west1")
                .networkConfig(BareMetalClusterNetworkConfigArgs.builder()
                    .islandModeCidr(BareMetalClusterNetworkConfigIslandModeCidrArgs.builder()
                        .podAddressCidrBlocks("10.240.0.0/13")
                        .serviceAddressCidrBlocks("172.26.0.0/16")
                        .build())
                    .build())
                .securityConfig(BareMetalClusterSecurityConfigArgs.builder()
                    .authorization(BareMetalClusterSecurityConfigAuthorizationArgs.builder()
                        .adminUsers(BareMetalClusterSecurityConfigAuthorizationAdminUserArgs.builder()
                            .username("admin@hashicorptest.com")
                            .build())
                        .build())
                    .build())
                .storage(BareMetalClusterStorageArgs.builder()
                    .lvpNodeMountsConfig(BareMetalClusterStorageLvpNodeMountsConfigArgs.builder()
                        .path("/mnt/localpv-disk")
                        .storageClass("local-disks")
                        .build())
                    .lvpShareConfig(BareMetalClusterStorageLvpShareConfigArgs.builder()
                        .lvpConfig(BareMetalClusterStorageLvpShareConfigLvpConfigArgs.builder()
                            .path("/mnt/localpv-share")
                            .storageClass("local-shared")
                            .build())
                        .sharedPathPvCount(5)
                        .build())
                    .build())
                .upgradePolicy(BareMetalClusterUpgradePolicyArgs.builder()
                    .policy("SERIAL")
                    .build())
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_gcp as gcp
    
    cluster_manuallb = gcp.gkeonprem.BareMetalCluster("cluster-manuallb",
        admin_cluster_membership="projects/870316890899/locations/global/memberships/gkeonprem-terraform-test",
        bare_metal_version="1.12.3",
        binary_authorization=gcp.gkeonprem.BareMetalClusterBinaryAuthorizationArgs(
            evaluation_mode="DISABLED",
        ),
        control_plane=gcp.gkeonprem.BareMetalClusterControlPlaneArgs(
            control_plane_node_pool_config=gcp.gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigArgs(
                node_pool_config=gcp.gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigArgs(
                    labels={},
                    node_configs=[gcp.gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfigArgs(
                        labels={},
                        node_ip="10.200.0.9",
                    )],
                    operating_system="LINUX",
                ),
            ),
        ),
        load_balancer=gcp.gkeonprem.BareMetalClusterLoadBalancerArgs(
            manual_lb_config=gcp.gkeonprem.BareMetalClusterLoadBalancerManualLbConfigArgs(
                enabled=True,
            ),
            port_config=gcp.gkeonprem.BareMetalClusterLoadBalancerPortConfigArgs(
                control_plane_load_balancer_port=443,
            ),
            vip_config=gcp.gkeonprem.BareMetalClusterLoadBalancerVipConfigArgs(
                control_plane_vip="10.200.0.13",
                ingress_vip="10.200.0.14",
            ),
        ),
        location="us-west1",
        network_config=gcp.gkeonprem.BareMetalClusterNetworkConfigArgs(
            island_mode_cidr=gcp.gkeonprem.BareMetalClusterNetworkConfigIslandModeCidrArgs(
                pod_address_cidr_blocks=["10.240.0.0/13"],
                service_address_cidr_blocks=["172.26.0.0/16"],
            ),
        ),
        security_config=gcp.gkeonprem.BareMetalClusterSecurityConfigArgs(
            authorization=gcp.gkeonprem.BareMetalClusterSecurityConfigAuthorizationArgs(
                admin_users=[gcp.gkeonprem.BareMetalClusterSecurityConfigAuthorizationAdminUserArgs(
                    username="admin@hashicorptest.com",
                )],
            ),
        ),
        storage=gcp.gkeonprem.BareMetalClusterStorageArgs(
            lvp_node_mounts_config=gcp.gkeonprem.BareMetalClusterStorageLvpNodeMountsConfigArgs(
                path="/mnt/localpv-disk",
                storage_class="local-disks",
            ),
            lvp_share_config=gcp.gkeonprem.BareMetalClusterStorageLvpShareConfigArgs(
                lvp_config=gcp.gkeonprem.BareMetalClusterStorageLvpShareConfigLvpConfigArgs(
                    path="/mnt/localpv-share",
                    storage_class="local-shared",
                ),
                shared_path_pv_count=5,
            ),
        ),
        upgrade_policy=gcp.gkeonprem.BareMetalClusterUpgradePolicyArgs(
            policy="SERIAL",
        ))
    
    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const cluster_manuallb = new gcp.gkeonprem.BareMetalCluster("cluster-manuallb", {
        adminClusterMembership: "projects/870316890899/locations/global/memberships/gkeonprem-terraform-test",
        bareMetalVersion: "1.12.3",
        binaryAuthorization: {
            evaluationMode: "DISABLED",
        },
        controlPlane: {
            controlPlaneNodePoolConfig: {
                nodePoolConfig: {
                    labels: {},
                    nodeConfigs: [{
                        labels: {},
                        nodeIp: "10.200.0.9",
                    }],
                    operatingSystem: "LINUX",
                },
            },
        },
        loadBalancer: {
            manualLbConfig: {
                enabled: true,
            },
            portConfig: {
                controlPlaneLoadBalancerPort: 443,
            },
            vipConfig: {
                controlPlaneVip: "10.200.0.13",
                ingressVip: "10.200.0.14",
            },
        },
        location: "us-west1",
        networkConfig: {
            islandModeCidr: {
                podAddressCidrBlocks: ["10.240.0.0/13"],
                serviceAddressCidrBlocks: ["172.26.0.0/16"],
            },
        },
        securityConfig: {
            authorization: {
                adminUsers: [{
                    username: "admin@hashicorptest.com",
                }],
            },
        },
        storage: {
            lvpNodeMountsConfig: {
                path: "/mnt/localpv-disk",
                storageClass: "local-disks",
            },
            lvpShareConfig: {
                lvpConfig: {
                    path: "/mnt/localpv-share",
                    storageClass: "local-shared",
                },
                sharedPathPvCount: 5,
            },
        },
        upgradePolicy: {
            policy: "SERIAL",
        },
    });
    
    resources:
      cluster-manuallb:
        type: gcp:gkeonprem:BareMetalCluster
        properties:
          adminClusterMembership: projects/870316890899/locations/global/memberships/gkeonprem-terraform-test
          bareMetalVersion: 1.12.3
          binaryAuthorization:
            evaluationMode: DISABLED
          controlPlane:
            controlPlaneNodePoolConfig:
              nodePoolConfig:
                labels: {}
                nodeConfigs:
                  - labels: {}
                    nodeIp: 10.200.0.9
                operatingSystem: LINUX
          loadBalancer:
            manualLbConfig:
              enabled: true
            portConfig:
              controlPlaneLoadBalancerPort: 443
            vipConfig:
              controlPlaneVip: 10.200.0.13
              ingressVip: 10.200.0.14
          location: us-west1
          networkConfig:
            islandModeCidr:
              podAddressCidrBlocks:
                - 10.240.0.0/13
              serviceAddressCidrBlocks:
                - 172.26.0.0/16
          securityConfig:
            authorization:
              adminUsers:
                - username: admin@hashicorptest.com
          storage:
            lvpNodeMountsConfig:
              path: /mnt/localpv-disk
              storageClass: local-disks
            lvpShareConfig:
              lvpConfig:
                path: /mnt/localpv-share
                storageClass: local-shared
              sharedPathPvCount: 5
          upgradePolicy:
            policy: SERIAL
    

    Gkeonprem Bare Metal Cluster Bgplb

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    
    return await Deployment.RunAsync(() => 
    {
        var cluster_bgplb = new Gcp.GkeOnPrem.BareMetalCluster("cluster-bgplb", new()
        {
            AdminClusterMembership = "projects/870316890899/locations/global/memberships/gkeonprem-terraform-test",
            BareMetalVersion = "1.12.3",
            ClusterOperations = new Gcp.GkeOnPrem.Inputs.BareMetalClusterClusterOperationsArgs
            {
                EnableApplicationLogs = true,
            },
            ControlPlane = new Gcp.GkeOnPrem.Inputs.BareMetalClusterControlPlaneArgs
            {
                ApiServerArgs = new[]
                {
                    new Gcp.GkeOnPrem.Inputs.BareMetalClusterControlPlaneApiServerArgArgs
                    {
                        Argument = "test-argument",
                        Value = "test-value",
                    },
                },
                ControlPlaneNodePoolConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterControlPlaneControlPlaneNodePoolConfigArgs
                {
                    NodePoolConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigArgs
                    {
                        Labels = null,
                        NodeConfigs = new[]
                        {
                            new Gcp.GkeOnPrem.Inputs.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfigArgs
                            {
                                Labels = null,
                                NodeIp = "10.200.0.9",
                            },
                        },
                        OperatingSystem = "LINUX",
                        Taints = new[]
                        {
                            new Gcp.GkeOnPrem.Inputs.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigTaintArgs
                            {
                                Effect = "NO_EXECUTE",
                                Key = "test-key",
                                Value = "test-value",
                            },
                        },
                    },
                },
            },
            LoadBalancer = new Gcp.GkeOnPrem.Inputs.BareMetalClusterLoadBalancerArgs
            {
                BgpLbConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterLoadBalancerBgpLbConfigArgs
                {
                    AddressPools = new[]
                    {
                        new Gcp.GkeOnPrem.Inputs.BareMetalClusterLoadBalancerBgpLbConfigAddressPoolArgs
                        {
                            Addresses = new[]
                            {
                                "10.200.0.14/32",
                                "10.200.0.15/32",
                                "10.200.0.16/32",
                                "10.200.0.17/32",
                                "10.200.0.18/32",
                                "fd00:1::f/128",
                                "fd00:1::10/128",
                                "fd00:1::11/128",
                                "fd00:1::12/128",
                            },
                            Pool = "pool1",
                        },
                    },
                    Asn = 123456,
                    BgpPeerConfigs = new[]
                    {
                        new Gcp.GkeOnPrem.Inputs.BareMetalClusterLoadBalancerBgpLbConfigBgpPeerConfigArgs
                        {
                            Asn = 123457,
                            ControlPlaneNodes = new[]
                            {
                                "test-node",
                            },
                            IpAddress = "10.0.0.1",
                        },
                    },
                    LoadBalancerNodePoolConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigArgs
                    {
                        NodePoolConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigArgs
                        {
                            KubeletConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigKubeletConfigArgs
                            {
                                RegistryBurst = 12,
                                RegistryPullQps = 10,
                                SerializeImagePullsDisabled = true,
                            },
                            Labels = null,
                            NodeConfigs = new[]
                            {
                                new Gcp.GkeOnPrem.Inputs.BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigNodeConfigArgs
                                {
                                    Labels = null,
                                    NodeIp = "10.200.0.9",
                                },
                            },
                            OperatingSystem = "LINUX",
                            Taints = new[]
                            {
                                new Gcp.GkeOnPrem.Inputs.BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigTaintArgs
                                {
                                    Effect = "NO_EXECUTE",
                                    Key = "test-key",
                                    Value = "test-value",
                                },
                            },
                        },
                    },
                },
                PortConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterLoadBalancerPortConfigArgs
                {
                    ControlPlaneLoadBalancerPort = 443,
                },
                VipConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterLoadBalancerVipConfigArgs
                {
                    ControlPlaneVip = "10.200.0.13",
                    IngressVip = "10.200.0.14",
                },
            },
            Location = "us-west1",
            MaintenanceConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterMaintenanceConfigArgs
            {
                MaintenanceAddressCidrBlocks = new[]
                {
                    "192.168.0.1/20",
                },
            },
            NetworkConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterNetworkConfigArgs
            {
                AdvancedNetworking = true,
                IslandModeCidr = new Gcp.GkeOnPrem.Inputs.BareMetalClusterNetworkConfigIslandModeCidrArgs
                {
                    PodAddressCidrBlocks = new[]
                    {
                        "10.240.0.0/13",
                    },
                    ServiceAddressCidrBlocks = new[]
                    {
                        "172.26.0.0/16",
                    },
                },
                MultipleNetworkInterfacesConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterNetworkConfigMultipleNetworkInterfacesConfigArgs
                {
                    Enabled = true,
                },
                SrIovConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterNetworkConfigSrIovConfigArgs
                {
                    Enabled = true,
                },
            },
            NodeAccessConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterNodeAccessConfigArgs
            {
                LoginUser = "test@example.com",
            },
            NodeConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterNodeConfigArgs
            {
                ContainerRuntime = "CONTAINERD",
                MaxPodsPerNode = 10,
            },
            OsEnvironmentConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterOsEnvironmentConfigArgs
            {
                PackageRepoExcluded = true,
            },
            Proxy = new Gcp.GkeOnPrem.Inputs.BareMetalClusterProxyArgs
            {
                NoProxies = new[]
                {
                    "127.0.0.1",
                },
                Uri = "http://test-domain/test",
            },
            SecurityConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterSecurityConfigArgs
            {
                Authorization = new Gcp.GkeOnPrem.Inputs.BareMetalClusterSecurityConfigAuthorizationArgs
                {
                    AdminUsers = new[]
                    {
                        new Gcp.GkeOnPrem.Inputs.BareMetalClusterSecurityConfigAuthorizationAdminUserArgs
                        {
                            Username = "admin@hashicorptest.com",
                        },
                    },
                },
            },
            Storage = new Gcp.GkeOnPrem.Inputs.BareMetalClusterStorageArgs
            {
                LvpNodeMountsConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterStorageLvpNodeMountsConfigArgs
                {
                    Path = "/mnt/localpv-disk",
                    StorageClass = "local-disks",
                },
                LvpShareConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterStorageLvpShareConfigArgs
                {
                    LvpConfig = new Gcp.GkeOnPrem.Inputs.BareMetalClusterStorageLvpShareConfigLvpConfigArgs
                    {
                        Path = "/mnt/localpv-share",
                        StorageClass = "local-shared",
                    },
                    SharedPathPvCount = 5,
                },
            },
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkeonprem"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := gkeonprem.NewBareMetalCluster(ctx, "cluster-bgplb", &gkeonprem.BareMetalClusterArgs{
    			AdminClusterMembership: pulumi.String("projects/870316890899/locations/global/memberships/gkeonprem-terraform-test"),
    			BareMetalVersion:       pulumi.String("1.12.3"),
    			ClusterOperations: &gkeonprem.BareMetalClusterClusterOperationsArgs{
    				EnableApplicationLogs: pulumi.Bool(true),
    			},
    			ControlPlane: &gkeonprem.BareMetalClusterControlPlaneArgs{
    				ApiServerArgs: gkeonprem.BareMetalClusterControlPlaneApiServerArgArray{
    					&gkeonprem.BareMetalClusterControlPlaneApiServerArgArgs{
    						Argument: pulumi.String("test-argument"),
    						Value:    pulumi.String("test-value"),
    					},
    				},
    				ControlPlaneNodePoolConfig: &gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigArgs{
    					NodePoolConfig: &gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigArgs{
    						Labels: nil,
    						NodeConfigs: gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfigArray{
    							&gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfigArgs{
    								Labels: nil,
    								NodeIp: pulumi.String("10.200.0.9"),
    							},
    						},
    						OperatingSystem: pulumi.String("LINUX"),
    						Taints: gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigTaintArray{
    							&gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigTaintArgs{
    								Effect: pulumi.String("NO_EXECUTE"),
    								Key:    pulumi.String("test-key"),
    								Value:  pulumi.String("test-value"),
    							},
    						},
    					},
    				},
    			},
    			LoadBalancer: &gkeonprem.BareMetalClusterLoadBalancerArgs{
    				BgpLbConfig: &gkeonprem.BareMetalClusterLoadBalancerBgpLbConfigArgs{
    					AddressPools: gkeonprem.BareMetalClusterLoadBalancerBgpLbConfigAddressPoolArray{
    						&gkeonprem.BareMetalClusterLoadBalancerBgpLbConfigAddressPoolArgs{
    							Addresses: pulumi.StringArray{
    								pulumi.String("10.200.0.14/32"),
    								pulumi.String("10.200.0.15/32"),
    								pulumi.String("10.200.0.16/32"),
    								pulumi.String("10.200.0.17/32"),
    								pulumi.String("10.200.0.18/32"),
    								pulumi.String("fd00:1::f/128"),
    								pulumi.String("fd00:1::10/128"),
    								pulumi.String("fd00:1::11/128"),
    								pulumi.String("fd00:1::12/128"),
    							},
    							Pool: pulumi.String("pool1"),
    						},
    					},
    					Asn: pulumi.Int(123456),
    					BgpPeerConfigs: gkeonprem.BareMetalClusterLoadBalancerBgpLbConfigBgpPeerConfigArray{
    						&gkeonprem.BareMetalClusterLoadBalancerBgpLbConfigBgpPeerConfigArgs{
    							Asn: pulumi.Int(123457),
    							ControlPlaneNodes: pulumi.StringArray{
    								pulumi.String("test-node"),
    							},
    							IpAddress: pulumi.String("10.0.0.1"),
    						},
    					},
    					LoadBalancerNodePoolConfig: &gkeonprem.BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigArgs{
    						NodePoolConfig: &gkeonprem.BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigArgs{
    							KubeletConfig: &gkeonprem.BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigKubeletConfigArgs{
    								RegistryBurst:               pulumi.Int(12),
    								RegistryPullQps:             pulumi.Int(10),
    								SerializeImagePullsDisabled: pulumi.Bool(true),
    							},
    							Labels: nil,
    							NodeConfigs: gkeonprem.BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigNodeConfigArray{
    								&gkeonprem.BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigNodeConfigArgs{
    									Labels: nil,
    									NodeIp: pulumi.String("10.200.0.9"),
    								},
    							},
    							OperatingSystem: pulumi.String("LINUX"),
    							Taints: gkeonprem.BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigTaintArray{
    								&gkeonprem.BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigTaintArgs{
    									Effect: pulumi.String("NO_EXECUTE"),
    									Key:    pulumi.String("test-key"),
    									Value:  pulumi.String("test-value"),
    								},
    							},
    						},
    					},
    				},
    				PortConfig: &gkeonprem.BareMetalClusterLoadBalancerPortConfigArgs{
    					ControlPlaneLoadBalancerPort: pulumi.Int(443),
    				},
    				VipConfig: &gkeonprem.BareMetalClusterLoadBalancerVipConfigArgs{
    					ControlPlaneVip: pulumi.String("10.200.0.13"),
    					IngressVip:      pulumi.String("10.200.0.14"),
    				},
    			},
    			Location: pulumi.String("us-west1"),
    			MaintenanceConfig: &gkeonprem.BareMetalClusterMaintenanceConfigArgs{
    				MaintenanceAddressCidrBlocks: pulumi.StringArray{
    					pulumi.String("192.168.0.1/20"),
    				},
    			},
    			NetworkConfig: &gkeonprem.BareMetalClusterNetworkConfigArgs{
    				AdvancedNetworking: pulumi.Bool(true),
    				IslandModeCidr: &gkeonprem.BareMetalClusterNetworkConfigIslandModeCidrArgs{
    					PodAddressCidrBlocks: pulumi.StringArray{
    						pulumi.String("10.240.0.0/13"),
    					},
    					ServiceAddressCidrBlocks: pulumi.StringArray{
    						pulumi.String("172.26.0.0/16"),
    					},
    				},
    				MultipleNetworkInterfacesConfig: &gkeonprem.BareMetalClusterNetworkConfigMultipleNetworkInterfacesConfigArgs{
    					Enabled: pulumi.Bool(true),
    				},
    				SrIovConfig: &gkeonprem.BareMetalClusterNetworkConfigSrIovConfigArgs{
    					Enabled: pulumi.Bool(true),
    				},
    			},
    			NodeAccessConfig: &gkeonprem.BareMetalClusterNodeAccessConfigArgs{
    				LoginUser: pulumi.String("test@example.com"),
    			},
    			NodeConfig: &gkeonprem.BareMetalClusterNodeConfigArgs{
    				ContainerRuntime: pulumi.String("CONTAINERD"),
    				MaxPodsPerNode:   pulumi.Int(10),
    			},
    			OsEnvironmentConfig: &gkeonprem.BareMetalClusterOsEnvironmentConfigArgs{
    				PackageRepoExcluded: pulumi.Bool(true),
    			},
    			Proxy: &gkeonprem.BareMetalClusterProxyArgs{
    				NoProxies: pulumi.StringArray{
    					pulumi.String("127.0.0.1"),
    				},
    				Uri: pulumi.String("http://test-domain/test"),
    			},
    			SecurityConfig: &gkeonprem.BareMetalClusterSecurityConfigArgs{
    				Authorization: &gkeonprem.BareMetalClusterSecurityConfigAuthorizationArgs{
    					AdminUsers: gkeonprem.BareMetalClusterSecurityConfigAuthorizationAdminUserArray{
    						&gkeonprem.BareMetalClusterSecurityConfigAuthorizationAdminUserArgs{
    							Username: pulumi.String("admin@hashicorptest.com"),
    						},
    					},
    				},
    			},
    			Storage: &gkeonprem.BareMetalClusterStorageArgs{
    				LvpNodeMountsConfig: &gkeonprem.BareMetalClusterStorageLvpNodeMountsConfigArgs{
    					Path:         pulumi.String("/mnt/localpv-disk"),
    					StorageClass: pulumi.String("local-disks"),
    				},
    				LvpShareConfig: &gkeonprem.BareMetalClusterStorageLvpShareConfigArgs{
    					LvpConfig: &gkeonprem.BareMetalClusterStorageLvpShareConfigLvpConfigArgs{
    						Path:         pulumi.String("/mnt/localpv-share"),
    						StorageClass: pulumi.String("local-shared"),
    					},
    					SharedPathPvCount: pulumi.Int(5),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.gkeonprem.BareMetalCluster;
    import com.pulumi.gcp.gkeonprem.BareMetalClusterArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterClusterOperationsArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterControlPlaneArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterControlPlaneControlPlaneNodePoolConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterLoadBalancerArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterLoadBalancerBgpLbConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigKubeletConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterLoadBalancerPortConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterLoadBalancerVipConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterMaintenanceConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterNetworkConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterNetworkConfigIslandModeCidrArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterNetworkConfigMultipleNetworkInterfacesConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterNetworkConfigSrIovConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterNodeAccessConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterNodeConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterOsEnvironmentConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterProxyArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterSecurityConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterSecurityConfigAuthorizationArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterStorageArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterStorageLvpNodeMountsConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterStorageLvpShareConfigArgs;
    import com.pulumi.gcp.gkeonprem.inputs.BareMetalClusterStorageLvpShareConfigLvpConfigArgs;
    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_bgplb = new BareMetalCluster("cluster-bgplb", BareMetalClusterArgs.builder()        
                .adminClusterMembership("projects/870316890899/locations/global/memberships/gkeonprem-terraform-test")
                .bareMetalVersion("1.12.3")
                .clusterOperations(BareMetalClusterClusterOperationsArgs.builder()
                    .enableApplicationLogs(true)
                    .build())
                .controlPlane(BareMetalClusterControlPlaneArgs.builder()
                    .apiServerArgs(BareMetalClusterControlPlaneApiServerArgArgs.builder()
                        .argument("test-argument")
                        .value("test-value")
                        .build())
                    .controlPlaneNodePoolConfig(BareMetalClusterControlPlaneControlPlaneNodePoolConfigArgs.builder()
                        .nodePoolConfig(BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigArgs.builder()
                            .labels()
                            .nodeConfigs(BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfigArgs.builder()
                                .labels()
                                .nodeIp("10.200.0.9")
                                .build())
                            .operatingSystem("LINUX")
                            .taints(BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigTaintArgs.builder()
                                .effect("NO_EXECUTE")
                                .key("test-key")
                                .value("test-value")
                                .build())
                            .build())
                        .build())
                    .build())
                .loadBalancer(BareMetalClusterLoadBalancerArgs.builder()
                    .bgpLbConfig(BareMetalClusterLoadBalancerBgpLbConfigArgs.builder()
                        .addressPools(BareMetalClusterLoadBalancerBgpLbConfigAddressPoolArgs.builder()
                            .addresses(                        
                                "10.200.0.14/32",
                                "10.200.0.15/32",
                                "10.200.0.16/32",
                                "10.200.0.17/32",
                                "10.200.0.18/32",
                                "fd00:1::f/128",
                                "fd00:1::10/128",
                                "fd00:1::11/128",
                                "fd00:1::12/128")
                            .pool("pool1")
                            .build())
                        .asn(123456)
                        .bgpPeerConfigs(BareMetalClusterLoadBalancerBgpLbConfigBgpPeerConfigArgs.builder()
                            .asn(123457)
                            .controlPlaneNodes("test-node")
                            .ipAddress("10.0.0.1")
                            .build())
                        .loadBalancerNodePoolConfig(BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigArgs.builder()
                            .nodePoolConfig(BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigArgs.builder()
                                .kubeletConfig(BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigKubeletConfigArgs.builder()
                                    .registryBurst(12)
                                    .registryPullQps(10)
                                    .serializeImagePullsDisabled(true)
                                    .build())
                                .labels()
                                .nodeConfigs(BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigNodeConfigArgs.builder()
                                    .labels()
                                    .nodeIp("10.200.0.9")
                                    .build())
                                .operatingSystem("LINUX")
                                .taints(BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigTaintArgs.builder()
                                    .effect("NO_EXECUTE")
                                    .key("test-key")
                                    .value("test-value")
                                    .build())
                                .build())
                            .build())
                        .build())
                    .portConfig(BareMetalClusterLoadBalancerPortConfigArgs.builder()
                        .controlPlaneLoadBalancerPort(443)
                        .build())
                    .vipConfig(BareMetalClusterLoadBalancerVipConfigArgs.builder()
                        .controlPlaneVip("10.200.0.13")
                        .ingressVip("10.200.0.14")
                        .build())
                    .build())
                .location("us-west1")
                .maintenanceConfig(BareMetalClusterMaintenanceConfigArgs.builder()
                    .maintenanceAddressCidrBlocks("192.168.0.1/20")
                    .build())
                .networkConfig(BareMetalClusterNetworkConfigArgs.builder()
                    .advancedNetworking(true)
                    .islandModeCidr(BareMetalClusterNetworkConfigIslandModeCidrArgs.builder()
                        .podAddressCidrBlocks("10.240.0.0/13")
                        .serviceAddressCidrBlocks("172.26.0.0/16")
                        .build())
                    .multipleNetworkInterfacesConfig(BareMetalClusterNetworkConfigMultipleNetworkInterfacesConfigArgs.builder()
                        .enabled(true)
                        .build())
                    .srIovConfig(BareMetalClusterNetworkConfigSrIovConfigArgs.builder()
                        .enabled(true)
                        .build())
                    .build())
                .nodeAccessConfig(BareMetalClusterNodeAccessConfigArgs.builder()
                    .loginUser("test@example.com")
                    .build())
                .nodeConfig(BareMetalClusterNodeConfigArgs.builder()
                    .containerRuntime("CONTAINERD")
                    .maxPodsPerNode(10)
                    .build())
                .osEnvironmentConfig(BareMetalClusterOsEnvironmentConfigArgs.builder()
                    .packageRepoExcluded(true)
                    .build())
                .proxy(BareMetalClusterProxyArgs.builder()
                    .noProxies("127.0.0.1")
                    .uri("http://test-domain/test")
                    .build())
                .securityConfig(BareMetalClusterSecurityConfigArgs.builder()
                    .authorization(BareMetalClusterSecurityConfigAuthorizationArgs.builder()
                        .adminUsers(BareMetalClusterSecurityConfigAuthorizationAdminUserArgs.builder()
                            .username("admin@hashicorptest.com")
                            .build())
                        .build())
                    .build())
                .storage(BareMetalClusterStorageArgs.builder()
                    .lvpNodeMountsConfig(BareMetalClusterStorageLvpNodeMountsConfigArgs.builder()
                        .path("/mnt/localpv-disk")
                        .storageClass("local-disks")
                        .build())
                    .lvpShareConfig(BareMetalClusterStorageLvpShareConfigArgs.builder()
                        .lvpConfig(BareMetalClusterStorageLvpShareConfigLvpConfigArgs.builder()
                            .path("/mnt/localpv-share")
                            .storageClass("local-shared")
                            .build())
                        .sharedPathPvCount(5)
                        .build())
                    .build())
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_gcp as gcp
    
    cluster_bgplb = gcp.gkeonprem.BareMetalCluster("cluster-bgplb",
        admin_cluster_membership="projects/870316890899/locations/global/memberships/gkeonprem-terraform-test",
        bare_metal_version="1.12.3",
        cluster_operations=gcp.gkeonprem.BareMetalClusterClusterOperationsArgs(
            enable_application_logs=True,
        ),
        control_plane=gcp.gkeonprem.BareMetalClusterControlPlaneArgs(
            api_server_args=[gcp.gkeonprem.BareMetalClusterControlPlaneApiServerArgArgs(
                argument="test-argument",
                value="test-value",
            )],
            control_plane_node_pool_config=gcp.gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigArgs(
                node_pool_config=gcp.gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigArgs(
                    labels={},
                    node_configs=[gcp.gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfigArgs(
                        labels={},
                        node_ip="10.200.0.9",
                    )],
                    operating_system="LINUX",
                    taints=[gcp.gkeonprem.BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigTaintArgs(
                        effect="NO_EXECUTE",
                        key="test-key",
                        value="test-value",
                    )],
                ),
            ),
        ),
        load_balancer=gcp.gkeonprem.BareMetalClusterLoadBalancerArgs(
            bgp_lb_config=gcp.gkeonprem.BareMetalClusterLoadBalancerBgpLbConfigArgs(
                address_pools=[gcp.gkeonprem.BareMetalClusterLoadBalancerBgpLbConfigAddressPoolArgs(
                    addresses=[
                        "10.200.0.14/32",
                        "10.200.0.15/32",
                        "10.200.0.16/32",
                        "10.200.0.17/32",
                        "10.200.0.18/32",
                        "fd00:1::f/128",
                        "fd00:1::10/128",
                        "fd00:1::11/128",
                        "fd00:1::12/128",
                    ],
                    pool="pool1",
                )],
                asn=123456,
                bgp_peer_configs=[gcp.gkeonprem.BareMetalClusterLoadBalancerBgpLbConfigBgpPeerConfigArgs(
                    asn=123457,
                    control_plane_nodes=["test-node"],
                    ip_address="10.0.0.1",
                )],
                load_balancer_node_pool_config=gcp.gkeonprem.BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigArgs(
                    node_pool_config=gcp.gkeonprem.BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigArgs(
                        kubelet_config=gcp.gkeonprem.BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigKubeletConfigArgs(
                            registry_burst=12,
                            registry_pull_qps=10,
                            serialize_image_pulls_disabled=True,
                        ),
                        labels={},
                        node_configs=[gcp.gkeonprem.BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigNodeConfigArgs(
                            labels={},
                            node_ip="10.200.0.9",
                        )],
                        operating_system="LINUX",
                        taints=[gcp.gkeonprem.BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigTaintArgs(
                            effect="NO_EXECUTE",
                            key="test-key",
                            value="test-value",
                        )],
                    ),
                ),
            ),
            port_config=gcp.gkeonprem.BareMetalClusterLoadBalancerPortConfigArgs(
                control_plane_load_balancer_port=443,
            ),
            vip_config=gcp.gkeonprem.BareMetalClusterLoadBalancerVipConfigArgs(
                control_plane_vip="10.200.0.13",
                ingress_vip="10.200.0.14",
            ),
        ),
        location="us-west1",
        maintenance_config=gcp.gkeonprem.BareMetalClusterMaintenanceConfigArgs(
            maintenance_address_cidr_blocks=["192.168.0.1/20"],
        ),
        network_config=gcp.gkeonprem.BareMetalClusterNetworkConfigArgs(
            advanced_networking=True,
            island_mode_cidr=gcp.gkeonprem.BareMetalClusterNetworkConfigIslandModeCidrArgs(
                pod_address_cidr_blocks=["10.240.0.0/13"],
                service_address_cidr_blocks=["172.26.0.0/16"],
            ),
            multiple_network_interfaces_config=gcp.gkeonprem.BareMetalClusterNetworkConfigMultipleNetworkInterfacesConfigArgs(
                enabled=True,
            ),
            sr_iov_config=gcp.gkeonprem.BareMetalClusterNetworkConfigSrIovConfigArgs(
                enabled=True,
            ),
        ),
        node_access_config=gcp.gkeonprem.BareMetalClusterNodeAccessConfigArgs(
            login_user="test@example.com",
        ),
        node_config=gcp.gkeonprem.BareMetalClusterNodeConfigArgs(
            container_runtime="CONTAINERD",
            max_pods_per_node=10,
        ),
        os_environment_config=gcp.gkeonprem.BareMetalClusterOsEnvironmentConfigArgs(
            package_repo_excluded=True,
        ),
        proxy=gcp.gkeonprem.BareMetalClusterProxyArgs(
            no_proxies=["127.0.0.1"],
            uri="http://test-domain/test",
        ),
        security_config=gcp.gkeonprem.BareMetalClusterSecurityConfigArgs(
            authorization=gcp.gkeonprem.BareMetalClusterSecurityConfigAuthorizationArgs(
                admin_users=[gcp.gkeonprem.BareMetalClusterSecurityConfigAuthorizationAdminUserArgs(
                    username="admin@hashicorptest.com",
                )],
            ),
        ),
        storage=gcp.gkeonprem.BareMetalClusterStorageArgs(
            lvp_node_mounts_config=gcp.gkeonprem.BareMetalClusterStorageLvpNodeMountsConfigArgs(
                path="/mnt/localpv-disk",
                storage_class="local-disks",
            ),
            lvp_share_config=gcp.gkeonprem.BareMetalClusterStorageLvpShareConfigArgs(
                lvp_config=gcp.gkeonprem.BareMetalClusterStorageLvpShareConfigLvpConfigArgs(
                    path="/mnt/localpv-share",
                    storage_class="local-shared",
                ),
                shared_path_pv_count=5,
            ),
        ))
    
    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const cluster_bgplb = new gcp.gkeonprem.BareMetalCluster("cluster-bgplb", {
        adminClusterMembership: "projects/870316890899/locations/global/memberships/gkeonprem-terraform-test",
        bareMetalVersion: "1.12.3",
        clusterOperations: {
            enableApplicationLogs: true,
        },
        controlPlane: {
            apiServerArgs: [{
                argument: "test-argument",
                value: "test-value",
            }],
            controlPlaneNodePoolConfig: {
                nodePoolConfig: {
                    labels: {},
                    nodeConfigs: [{
                        labels: {},
                        nodeIp: "10.200.0.9",
                    }],
                    operatingSystem: "LINUX",
                    taints: [{
                        effect: "NO_EXECUTE",
                        key: "test-key",
                        value: "test-value",
                    }],
                },
            },
        },
        loadBalancer: {
            bgpLbConfig: {
                addressPools: [{
                    addresses: [
                        "10.200.0.14/32",
                        "10.200.0.15/32",
                        "10.200.0.16/32",
                        "10.200.0.17/32",
                        "10.200.0.18/32",
                        "fd00:1::f/128",
                        "fd00:1::10/128",
                        "fd00:1::11/128",
                        "fd00:1::12/128",
                    ],
                    pool: "pool1",
                }],
                asn: 123456,
                bgpPeerConfigs: [{
                    asn: 123457,
                    controlPlaneNodes: ["test-node"],
                    ipAddress: "10.0.0.1",
                }],
                loadBalancerNodePoolConfig: {
                    nodePoolConfig: {
                        kubeletConfig: {
                            registryBurst: 12,
                            registryPullQps: 10,
                            serializeImagePullsDisabled: true,
                        },
                        labels: {},
                        nodeConfigs: [{
                            labels: {},
                            nodeIp: "10.200.0.9",
                        }],
                        operatingSystem: "LINUX",
                        taints: [{
                            effect: "NO_EXECUTE",
                            key: "test-key",
                            value: "test-value",
                        }],
                    },
                },
            },
            portConfig: {
                controlPlaneLoadBalancerPort: 443,
            },
            vipConfig: {
                controlPlaneVip: "10.200.0.13",
                ingressVip: "10.200.0.14",
            },
        },
        location: "us-west1",
        maintenanceConfig: {
            maintenanceAddressCidrBlocks: ["192.168.0.1/20"],
        },
        networkConfig: {
            advancedNetworking: true,
            islandModeCidr: {
                podAddressCidrBlocks: ["10.240.0.0/13"],
                serviceAddressCidrBlocks: ["172.26.0.0/16"],
            },
            multipleNetworkInterfacesConfig: {
                enabled: true,
            },
            srIovConfig: {
                enabled: true,
            },
        },
        nodeAccessConfig: {
            loginUser: "test@example.com",
        },
        nodeConfig: {
            containerRuntime: "CONTAINERD",
            maxPodsPerNode: 10,
        },
        osEnvironmentConfig: {
            packageRepoExcluded: true,
        },
        proxy: {
            noProxies: ["127.0.0.1"],
            uri: "http://test-domain/test",
        },
        securityConfig: {
            authorization: {
                adminUsers: [{
                    username: "admin@hashicorptest.com",
                }],
            },
        },
        storage: {
            lvpNodeMountsConfig: {
                path: "/mnt/localpv-disk",
                storageClass: "local-disks",
            },
            lvpShareConfig: {
                lvpConfig: {
                    path: "/mnt/localpv-share",
                    storageClass: "local-shared",
                },
                sharedPathPvCount: 5,
            },
        },
    });
    
    resources:
      cluster-bgplb:
        type: gcp:gkeonprem:BareMetalCluster
        properties:
          adminClusterMembership: projects/870316890899/locations/global/memberships/gkeonprem-terraform-test
          bareMetalVersion: 1.12.3
          clusterOperations:
            enableApplicationLogs: true
          controlPlane:
            apiServerArgs:
              - argument: test-argument
                value: test-value
            controlPlaneNodePoolConfig:
              nodePoolConfig:
                labels: {}
                nodeConfigs:
                  - labels: {}
                    nodeIp: 10.200.0.9
                operatingSystem: LINUX
                taints:
                  - effect: NO_EXECUTE
                    key: test-key
                    value: test-value
          loadBalancer:
            bgpLbConfig:
              addressPools:
                - addresses:
                    - 10.200.0.14/32
                    - 10.200.0.15/32
                    - 10.200.0.16/32
                    - 10.200.0.17/32
                    - 10.200.0.18/32
                    - fd00:1::f/128
                    - fd00:1::10/128
                    - fd00:1::11/128
                    - fd00:1::12/128
                  pool: pool1
              asn: 123456
              bgpPeerConfigs:
                - asn: 123457
                  controlPlaneNodes:
                    - test-node
                  ipAddress: 10.0.0.1
              loadBalancerNodePoolConfig:
                nodePoolConfig:
                  kubeletConfig:
                    registryBurst: 12
                    registryPullQps: 10
                    serializeImagePullsDisabled: true
                  labels: {}
                  nodeConfigs:
                    - labels: {}
                      nodeIp: 10.200.0.9
                  operatingSystem: LINUX
                  taints:
                    - effect: NO_EXECUTE
                      key: test-key
                      value: test-value
            portConfig:
              controlPlaneLoadBalancerPort: 443
            vipConfig:
              controlPlaneVip: 10.200.0.13
              ingressVip: 10.200.0.14
          location: us-west1
          maintenanceConfig:
            maintenanceAddressCidrBlocks:
              - 192.168.0.1/20
          networkConfig:
            advancedNetworking: true
            islandModeCidr:
              podAddressCidrBlocks:
                - 10.240.0.0/13
              serviceAddressCidrBlocks:
                - 172.26.0.0/16
            multipleNetworkInterfacesConfig:
              enabled: true
            srIovConfig:
              enabled: true
          nodeAccessConfig:
            loginUser: test@example.com
          nodeConfig:
            containerRuntime: CONTAINERD
            maxPodsPerNode: 10
          osEnvironmentConfig:
            packageRepoExcluded: true
          proxy:
            noProxies:
              - 127.0.0.1
            uri: http://test-domain/test
          securityConfig:
            authorization:
              adminUsers:
                - username: admin@hashicorptest.com
          storage:
            lvpNodeMountsConfig:
              path: /mnt/localpv-disk
              storageClass: local-disks
            lvpShareConfig:
              lvpConfig:
                path: /mnt/localpv-share
                storageClass: local-shared
              sharedPathPvCount: 5
    

    Create BareMetalCluster Resource

    new BareMetalCluster(name: string, args: BareMetalClusterArgs, opts?: CustomResourceOptions);
    @overload
    def BareMetalCluster(resource_name: str,
                         opts: Optional[ResourceOptions] = None,
                         admin_cluster_membership: Optional[str] = None,
                         annotations: Optional[Mapping[str, str]] = None,
                         bare_metal_version: Optional[str] = None,
                         binary_authorization: Optional[BareMetalClusterBinaryAuthorizationArgs] = None,
                         cluster_operations: Optional[BareMetalClusterClusterOperationsArgs] = None,
                         control_plane: Optional[BareMetalClusterControlPlaneArgs] = None,
                         description: Optional[str] = None,
                         load_balancer: Optional[BareMetalClusterLoadBalancerArgs] = None,
                         location: Optional[str] = None,
                         maintenance_config: Optional[BareMetalClusterMaintenanceConfigArgs] = None,
                         name: Optional[str] = None,
                         network_config: Optional[BareMetalClusterNetworkConfigArgs] = None,
                         node_access_config: Optional[BareMetalClusterNodeAccessConfigArgs] = None,
                         node_config: Optional[BareMetalClusterNodeConfigArgs] = None,
                         os_environment_config: Optional[BareMetalClusterOsEnvironmentConfigArgs] = None,
                         project: Optional[str] = None,
                         proxy: Optional[BareMetalClusterProxyArgs] = None,
                         security_config: Optional[BareMetalClusterSecurityConfigArgs] = None,
                         storage: Optional[BareMetalClusterStorageArgs] = None,
                         upgrade_policy: Optional[BareMetalClusterUpgradePolicyArgs] = None)
    @overload
    def BareMetalCluster(resource_name: str,
                         args: BareMetalClusterArgs,
                         opts: Optional[ResourceOptions] = None)
    func NewBareMetalCluster(ctx *Context, name string, args BareMetalClusterArgs, opts ...ResourceOption) (*BareMetalCluster, error)
    public BareMetalCluster(string name, BareMetalClusterArgs args, CustomResourceOptions? opts = null)
    public BareMetalCluster(String name, BareMetalClusterArgs args)
    public BareMetalCluster(String name, BareMetalClusterArgs args, CustomResourceOptions options)
    
    type: gcp:gkeonprem:BareMetalCluster
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    name string
    The unique name of the resource.
    args BareMetalClusterArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args BareMetalClusterArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args BareMetalClusterArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args BareMetalClusterArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args BareMetalClusterArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    BareMetalCluster Resource Properties

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

    Inputs

    The BareMetalCluster resource accepts the following input properties:

    AdminClusterMembership string

    The Admin Cluster this Bare Metal User Cluster belongs to. This is the full resource name of the Admin Cluster's hub membership.

    BareMetalVersion string

    A human readable description of this Bare Metal User Cluster.

    ControlPlane BareMetalClusterControlPlane

    Specifies the control plane configuration. Structure is documented below.

    LoadBalancer BareMetalClusterLoadBalancer

    Specifies the load balancer configuration. Structure is documented below.

    Location string

    The location of the resource.

    NetworkConfig BareMetalClusterNetworkConfig

    Network configuration. Structure is documented below.

    Storage BareMetalClusterStorage

    Specifies the cluster storage configuration. Structure is documented below.

    Annotations Dictionary<string, string>

    Annotations on the Bare Metal 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.

    BinaryAuthorization BareMetalClusterBinaryAuthorization

    Binary Authorization related configurations. Structure is documented below.

    ClusterOperations BareMetalClusterClusterOperations

    Specifies the User Cluster's observability infrastructure. Structure is documented below.

    Description string

    A human readable description of this Bare Metal User Cluster.

    MaintenanceConfig BareMetalClusterMaintenanceConfig

    Specifies the workload node configurations. Structure is documented below.

    Name string

    The bare metal cluster name.

    NodeAccessConfig BareMetalClusterNodeAccessConfig

    Specifies the node access related settings for the bare metal user cluster. Structure is documented below.

    NodeConfig BareMetalClusterNodeConfig

    Specifies the workload node configurations. Structure is documented below.

    OsEnvironmentConfig BareMetalClusterOsEnvironmentConfig

    OS environment related configurations. Structure is documented below.

    Project string

    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

    Proxy BareMetalClusterProxy

    Specifies the cluster proxy configuration. Structure is documented below.

    SecurityConfig BareMetalClusterSecurityConfig

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    UpgradePolicy BareMetalClusterUpgradePolicy

    The cluster upgrade policy. Structure is documented below.

    AdminClusterMembership string

    The Admin Cluster this Bare Metal User Cluster belongs to. This is the full resource name of the Admin Cluster's hub membership.

    BareMetalVersion string

    A human readable description of this Bare Metal User Cluster.

    ControlPlane BareMetalClusterControlPlaneArgs

    Specifies the control plane configuration. Structure is documented below.

    LoadBalancer BareMetalClusterLoadBalancerArgs

    Specifies the load balancer configuration. Structure is documented below.

    Location string

    The location of the resource.

    NetworkConfig BareMetalClusterNetworkConfigArgs

    Network configuration. Structure is documented below.

    Storage BareMetalClusterStorageArgs

    Specifies the cluster storage configuration. Structure is documented below.

    Annotations map[string]string

    Annotations on the Bare Metal 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.

    BinaryAuthorization BareMetalClusterBinaryAuthorizationArgs

    Binary Authorization related configurations. Structure is documented below.

    ClusterOperations BareMetalClusterClusterOperationsArgs

    Specifies the User Cluster's observability infrastructure. Structure is documented below.

    Description string

    A human readable description of this Bare Metal User Cluster.

    MaintenanceConfig BareMetalClusterMaintenanceConfigArgs

    Specifies the workload node configurations. Structure is documented below.

    Name string

    The bare metal cluster name.

    NodeAccessConfig BareMetalClusterNodeAccessConfigArgs

    Specifies the node access related settings for the bare metal user cluster. Structure is documented below.

    NodeConfig BareMetalClusterNodeConfigArgs

    Specifies the workload node configurations. Structure is documented below.

    OsEnvironmentConfig BareMetalClusterOsEnvironmentConfigArgs

    OS environment related configurations. Structure is documented below.

    Project string

    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

    Proxy BareMetalClusterProxyArgs

    Specifies the cluster proxy configuration. Structure is documented below.

    SecurityConfig BareMetalClusterSecurityConfigArgs

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    UpgradePolicy BareMetalClusterUpgradePolicyArgs

    The cluster upgrade policy. Structure is documented below.

    adminClusterMembership String

    The Admin Cluster this Bare Metal User Cluster belongs to. This is the full resource name of the Admin Cluster's hub membership.

    bareMetalVersion String

    A human readable description of this Bare Metal User Cluster.

    controlPlane BareMetalClusterControlPlane

    Specifies the control plane configuration. Structure is documented below.

    loadBalancer BareMetalClusterLoadBalancer

    Specifies the load balancer configuration. Structure is documented below.

    location String

    The location of the resource.

    networkConfig BareMetalClusterNetworkConfig

    Network configuration. Structure is documented below.

    storage BareMetalClusterStorage

    Specifies the cluster storage configuration. Structure is documented below.

    annotations Map<String,String>

    Annotations on the Bare Metal 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.

    binaryAuthorization BareMetalClusterBinaryAuthorization

    Binary Authorization related configurations. Structure is documented below.

    clusterOperations BareMetalClusterClusterOperations

    Specifies the User Cluster's observability infrastructure. Structure is documented below.

    description String

    A human readable description of this Bare Metal User Cluster.

    maintenanceConfig BareMetalClusterMaintenanceConfig

    Specifies the workload node configurations. Structure is documented below.

    name String

    The bare metal cluster name.

    nodeAccessConfig BareMetalClusterNodeAccessConfig

    Specifies the node access related settings for the bare metal user cluster. Structure is documented below.

    nodeConfig BareMetalClusterNodeConfig

    Specifies the workload node configurations. Structure is documented below.

    osEnvironmentConfig BareMetalClusterOsEnvironmentConfig

    OS environment related configurations. Structure is documented below.

    project String

    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

    proxy BareMetalClusterProxy

    Specifies the cluster proxy configuration. Structure is documented below.

    securityConfig BareMetalClusterSecurityConfig

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    upgradePolicy BareMetalClusterUpgradePolicy

    The cluster upgrade policy. Structure is documented below.

    adminClusterMembership string

    The Admin Cluster this Bare Metal User Cluster belongs to. This is the full resource name of the Admin Cluster's hub membership.

    bareMetalVersion string

    A human readable description of this Bare Metal User Cluster.

    controlPlane BareMetalClusterControlPlane

    Specifies the control plane configuration. Structure is documented below.

    loadBalancer BareMetalClusterLoadBalancer

    Specifies the load balancer configuration. Structure is documented below.

    location string

    The location of the resource.

    networkConfig BareMetalClusterNetworkConfig

    Network configuration. Structure is documented below.

    storage BareMetalClusterStorage

    Specifies the cluster storage configuration. Structure is documented below.

    annotations {[key: string]: string}

    Annotations on the Bare Metal 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.

    binaryAuthorization BareMetalClusterBinaryAuthorization

    Binary Authorization related configurations. Structure is documented below.

    clusterOperations BareMetalClusterClusterOperations

    Specifies the User Cluster's observability infrastructure. Structure is documented below.

    description string

    A human readable description of this Bare Metal User Cluster.

    maintenanceConfig BareMetalClusterMaintenanceConfig

    Specifies the workload node configurations. Structure is documented below.

    name string

    The bare metal cluster name.

    nodeAccessConfig BareMetalClusterNodeAccessConfig

    Specifies the node access related settings for the bare metal user cluster. Structure is documented below.

    nodeConfig BareMetalClusterNodeConfig

    Specifies the workload node configurations. Structure is documented below.

    osEnvironmentConfig BareMetalClusterOsEnvironmentConfig

    OS environment related configurations. Structure is documented below.

    project string

    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

    proxy BareMetalClusterProxy

    Specifies the cluster proxy configuration. Structure is documented below.

    securityConfig BareMetalClusterSecurityConfig

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    upgradePolicy BareMetalClusterUpgradePolicy

    The cluster upgrade policy. Structure is documented below.

    admin_cluster_membership str

    The Admin Cluster this Bare Metal User Cluster belongs to. This is the full resource name of the Admin Cluster's hub membership.

    bare_metal_version str

    A human readable description of this Bare Metal User Cluster.

    control_plane BareMetalClusterControlPlaneArgs

    Specifies the control plane configuration. Structure is documented below.

    load_balancer BareMetalClusterLoadBalancerArgs

    Specifies the load balancer configuration. Structure is documented below.

    location str

    The location of the resource.

    network_config BareMetalClusterNetworkConfigArgs

    Network configuration. Structure is documented below.

    storage BareMetalClusterStorageArgs

    Specifies the cluster storage configuration. Structure is documented below.

    annotations Mapping[str, str]

    Annotations on the Bare Metal 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.

    binary_authorization BareMetalClusterBinaryAuthorizationArgs

    Binary Authorization related configurations. Structure is documented below.

    cluster_operations BareMetalClusterClusterOperationsArgs

    Specifies the User Cluster's observability infrastructure. Structure is documented below.

    description str

    A human readable description of this Bare Metal User Cluster.

    maintenance_config BareMetalClusterMaintenanceConfigArgs

    Specifies the workload node configurations. Structure is documented below.

    name str

    The bare metal cluster name.

    node_access_config BareMetalClusterNodeAccessConfigArgs

    Specifies the node access related settings for the bare metal user cluster. Structure is documented below.

    node_config BareMetalClusterNodeConfigArgs

    Specifies the workload node configurations. Structure is documented below.

    os_environment_config BareMetalClusterOsEnvironmentConfigArgs

    OS environment related configurations. Structure is documented below.

    project str

    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

    proxy BareMetalClusterProxyArgs

    Specifies the cluster proxy configuration. Structure is documented below.

    security_config BareMetalClusterSecurityConfigArgs

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    upgrade_policy BareMetalClusterUpgradePolicyArgs

    The cluster upgrade policy. Structure is documented below.

    adminClusterMembership String

    The Admin Cluster this Bare Metal User Cluster belongs to. This is the full resource name of the Admin Cluster's hub membership.

    bareMetalVersion String

    A human readable description of this Bare Metal User Cluster.

    controlPlane Property Map

    Specifies the control plane configuration. Structure is documented below.

    loadBalancer Property Map

    Specifies the load balancer configuration. Structure is documented below.

    location String

    The location of the resource.

    networkConfig Property Map

    Network configuration. Structure is documented below.

    storage Property Map

    Specifies the cluster storage configuration. Structure is documented below.

    annotations Map<String>

    Annotations on the Bare Metal 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.

    binaryAuthorization Property Map

    Binary Authorization related configurations. Structure is documented below.

    clusterOperations Property Map

    Specifies the User Cluster's observability infrastructure. Structure is documented below.

    description String

    A human readable description of this Bare Metal User Cluster.

    maintenanceConfig Property Map

    Specifies the workload node configurations. Structure is documented below.

    name String

    The bare metal cluster name.

    nodeAccessConfig Property Map

    Specifies the node access related settings for the bare metal user cluster. Structure is documented below.

    nodeConfig Property Map

    Specifies the workload node configurations. Structure is documented below.

    osEnvironmentConfig Property Map

    OS environment related configurations. Structure is documented below.

    project String

    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

    proxy Property Map

    Specifies the cluster proxy configuration. Structure is documented below.

    securityConfig Property Map

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    upgradePolicy Property Map

    The cluster upgrade policy. Structure is documented below.

    Outputs

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

    CreateTime string

    The time the cluster was created, in RFC3339 text format.

    DeleteTime string

    The time the cluster was deleted, in RFC3339 text format.

    EffectiveAnnotations Dictionary<string, string>

    All of annotations (key/value pairs) present on the resource in GCP, including the annotations configured through Terraform, other clients and services.

    Endpoint string

    The IP address name of Bare Metal 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<BareMetalClusterFleet>

    Fleet related configuration. Fleets are a Google Cloud concept for logically organizing clusters, letting you use and manage multi-cluster capabilities and apply consistent policies across your systems. See Anthos Fleets for more details on Anthos multi-cluster capabilities using Fleets. Structure is documented below.

    Id string

    The provider-assigned unique ID for this managed resource.

    LocalName string

    The object name of the Bare Metal Cluster 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 Bare Metal User Cluster.

    State string

    (Output) The lifecycle state of the condition.

    Statuses List<BareMetalClusterStatus>

    (Output) Specifies the detailed validation check status Structure is documented below.

    Uid string

    The unique identifier of the Bare Metal User Cluster.

    UpdateTime string

    The time the cluster was last updated, in RFC3339 text format.

    ValidationChecks List<BareMetalClusterValidationCheck>

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    CreateTime string

    The time the cluster was created, in RFC3339 text format.

    DeleteTime string

    The time the cluster was deleted, in RFC3339 text format.

    EffectiveAnnotations map[string]string

    All of annotations (key/value pairs) present on the resource in GCP, including the annotations configured through Terraform, other clients and services.

    Endpoint string

    The IP address name of Bare Metal 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 []BareMetalClusterFleet

    Fleet related configuration. Fleets are a Google Cloud concept for logically organizing clusters, letting you use and manage multi-cluster capabilities and apply consistent policies across your systems. See Anthos Fleets for more details on Anthos multi-cluster capabilities using Fleets. Structure is documented below.

    Id string

    The provider-assigned unique ID for this managed resource.

    LocalName string

    The object name of the Bare Metal Cluster 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 Bare Metal User Cluster.

    State string

    (Output) The lifecycle state of the condition.

    Statuses []BareMetalClusterStatus

    (Output) Specifies the detailed validation check status Structure is documented below.

    Uid string

    The unique identifier of the Bare Metal User Cluster.

    UpdateTime string

    The time the cluster was last updated, in RFC3339 text format.

    ValidationChecks []BareMetalClusterValidationCheck

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    createTime String

    The time the cluster was created, in RFC3339 text format.

    deleteTime String

    The time the cluster was deleted, in RFC3339 text format.

    effectiveAnnotations Map<String,String>

    All of annotations (key/value pairs) present on the resource in GCP, including the annotations configured through Terraform, other clients and services.

    endpoint String

    The IP address name of Bare Metal 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<BareMetalClusterFleet>

    Fleet related configuration. Fleets are a Google Cloud concept for logically organizing clusters, letting you use and manage multi-cluster capabilities and apply consistent policies across your systems. See Anthos Fleets for more details on Anthos multi-cluster capabilities using Fleets. Structure is documented below.

    id String

    The provider-assigned unique ID for this managed resource.

    localName String

    The object name of the Bare Metal Cluster 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 Bare Metal User Cluster.

    state String

    (Output) The lifecycle state of the condition.

    statuses List<BareMetalClusterStatus>

    (Output) Specifies the detailed validation check status Structure is documented below.

    uid String

    The unique identifier of the Bare Metal User Cluster.

    updateTime String

    The time the cluster was last updated, in RFC3339 text format.

    validationChecks List<BareMetalClusterValidationCheck>

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    createTime string

    The time the cluster was created, in RFC3339 text format.

    deleteTime string

    The time the cluster was deleted, in RFC3339 text format.

    effectiveAnnotations {[key: string]: string}

    All of annotations (key/value pairs) present on the resource in GCP, including the annotations configured through Terraform, other clients and services.

    endpoint string

    The IP address name of Bare Metal 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 BareMetalClusterFleet[]

    Fleet related configuration. Fleets are a Google Cloud concept for logically organizing clusters, letting you use and manage multi-cluster capabilities and apply consistent policies across your systems. See Anthos Fleets for more details on Anthos multi-cluster capabilities using Fleets. Structure is documented below.

    id string

    The provider-assigned unique ID for this managed resource.

    localName string

    The object name of the Bare Metal Cluster 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 Bare Metal User Cluster.

    state string

    (Output) The lifecycle state of the condition.

    statuses BareMetalClusterStatus[]

    (Output) Specifies the detailed validation check status Structure is documented below.

    uid string

    The unique identifier of the Bare Metal User Cluster.

    updateTime string

    The time the cluster was last updated, in RFC3339 text format.

    validationChecks BareMetalClusterValidationCheck[]

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    create_time str

    The time the cluster was created, in RFC3339 text format.

    delete_time str

    The time the cluster was deleted, in RFC3339 text format.

    effective_annotations Mapping[str, str]

    All of annotations (key/value pairs) present on the resource in GCP, including the annotations configured through Terraform, other clients and services.

    endpoint str

    The IP address name of Bare Metal 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[BareMetalClusterFleet]

    Fleet related configuration. Fleets are a Google Cloud concept for logically organizing clusters, letting you use and manage multi-cluster capabilities and apply consistent policies across your systems. See Anthos Fleets for more details on Anthos multi-cluster capabilities using Fleets. Structure is documented below.

    id str

    The provider-assigned unique ID for this managed resource.

    local_name str

    The object name of the Bare Metal Cluster 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 Bare Metal User Cluster.

    state str

    (Output) The lifecycle state of the condition.

    statuses Sequence[BareMetalClusterStatus]

    (Output) Specifies the detailed validation check status Structure is documented below.

    uid str

    The unique identifier of the Bare Metal User Cluster.

    update_time str

    The time the cluster was last updated, in RFC3339 text format.

    validation_checks Sequence[BareMetalClusterValidationCheck]

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    createTime String

    The time the cluster was created, in RFC3339 text format.

    deleteTime String

    The time the cluster was deleted, in RFC3339 text format.

    effectiveAnnotations Map<String>

    All of annotations (key/value pairs) present on the resource in GCP, including the annotations configured through Terraform, other clients and services.

    endpoint String

    The IP address name of Bare Metal 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 related configuration. Fleets are a Google Cloud concept for logically organizing clusters, letting you use and manage multi-cluster capabilities and apply consistent policies across your systems. See Anthos Fleets for more details on Anthos multi-cluster capabilities using Fleets. Structure is documented below.

    id String

    The provider-assigned unique ID for this managed resource.

    localName String

    The object name of the Bare Metal Cluster 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 Bare Metal 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 Bare Metal User Cluster.

    updateTime String

    The time the cluster was last updated, in RFC3339 text format.

    validationChecks List<Property Map>

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    Look up Existing BareMetalCluster Resource

    Get an existing BareMetalCluster 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?: BareMetalClusterState, opts?: CustomResourceOptions): BareMetalCluster
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            admin_cluster_membership: Optional[str] = None,
            annotations: Optional[Mapping[str, str]] = None,
            bare_metal_version: Optional[str] = None,
            binary_authorization: Optional[BareMetalClusterBinaryAuthorizationArgs] = None,
            cluster_operations: Optional[BareMetalClusterClusterOperationsArgs] = None,
            control_plane: Optional[BareMetalClusterControlPlaneArgs] = None,
            create_time: Optional[str] = None,
            delete_time: Optional[str] = None,
            description: Optional[str] = None,
            effective_annotations: Optional[Mapping[str, str]] = None,
            endpoint: Optional[str] = None,
            etag: Optional[str] = None,
            fleets: Optional[Sequence[BareMetalClusterFleetArgs]] = None,
            load_balancer: Optional[BareMetalClusterLoadBalancerArgs] = None,
            local_name: Optional[str] = None,
            location: Optional[str] = None,
            maintenance_config: Optional[BareMetalClusterMaintenanceConfigArgs] = None,
            name: Optional[str] = None,
            network_config: Optional[BareMetalClusterNetworkConfigArgs] = None,
            node_access_config: Optional[BareMetalClusterNodeAccessConfigArgs] = None,
            node_config: Optional[BareMetalClusterNodeConfigArgs] = None,
            os_environment_config: Optional[BareMetalClusterOsEnvironmentConfigArgs] = None,
            project: Optional[str] = None,
            proxy: Optional[BareMetalClusterProxyArgs] = None,
            reconciling: Optional[bool] = None,
            security_config: Optional[BareMetalClusterSecurityConfigArgs] = None,
            state: Optional[str] = None,
            statuses: Optional[Sequence[BareMetalClusterStatusArgs]] = None,
            storage: Optional[BareMetalClusterStorageArgs] = None,
            uid: Optional[str] = None,
            update_time: Optional[str] = None,
            upgrade_policy: Optional[BareMetalClusterUpgradePolicyArgs] = None,
            validation_checks: Optional[Sequence[BareMetalClusterValidationCheckArgs]] = None) -> BareMetalCluster
    func GetBareMetalCluster(ctx *Context, name string, id IDInput, state *BareMetalClusterState, opts ...ResourceOption) (*BareMetalCluster, error)
    public static BareMetalCluster Get(string name, Input<string> id, BareMetalClusterState? state, CustomResourceOptions? opts = null)
    public static BareMetalCluster get(String name, Output<String> id, BareMetalClusterState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    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
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    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
    The unique name of the resulting resource.
    id
    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
    The unique name of the resulting resource.
    id
    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 string

    The Admin Cluster this Bare Metal User Cluster belongs to. This is the full resource name of the Admin Cluster's hub membership.

    Annotations Dictionary<string, string>

    Annotations on the Bare Metal 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.

    BareMetalVersion string

    A human readable description of this Bare Metal User Cluster.

    BinaryAuthorization BareMetalClusterBinaryAuthorization

    Binary Authorization related configurations. Structure is documented below.

    ClusterOperations BareMetalClusterClusterOperations

    Specifies the User Cluster's observability infrastructure. Structure is documented below.

    ControlPlane BareMetalClusterControlPlane

    Specifies the control plane configuration. Structure is documented below.

    CreateTime string

    The time the cluster was created, in RFC3339 text format.

    DeleteTime string

    The time the cluster was deleted, in RFC3339 text format.

    Description string

    A human readable description of this Bare Metal User Cluster.

    EffectiveAnnotations Dictionary<string, string>

    All of annotations (key/value pairs) present on the resource in GCP, including the annotations configured through Terraform, other clients and services.

    Endpoint string

    The IP address name of Bare Metal 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<BareMetalClusterFleet>

    Fleet related configuration. Fleets are a Google Cloud concept for logically organizing clusters, letting you use and manage multi-cluster capabilities and apply consistent policies across your systems. See Anthos Fleets for more details on Anthos multi-cluster capabilities using Fleets. Structure is documented below.

    LoadBalancer BareMetalClusterLoadBalancer

    Specifies the load balancer configuration. Structure is documented below.

    LocalName string

    The object name of the Bare Metal Cluster 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 string

    The location of the resource.

    MaintenanceConfig BareMetalClusterMaintenanceConfig

    Specifies the workload node configurations. Structure is documented below.

    Name string

    The bare metal cluster name.

    NetworkConfig BareMetalClusterNetworkConfig

    Network configuration. Structure is documented below.

    NodeAccessConfig BareMetalClusterNodeAccessConfig

    Specifies the node access related settings for the bare metal user cluster. Structure is documented below.

    NodeConfig BareMetalClusterNodeConfig

    Specifies the workload node configurations. Structure is documented below.

    OsEnvironmentConfig BareMetalClusterOsEnvironmentConfig

    OS environment related configurations. Structure is documented below.

    Project string

    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

    Proxy BareMetalClusterProxy

    Specifies the cluster proxy configuration. Structure is documented below.

    Reconciling bool

    If set, there are currently changes in flight to the Bare Metal User Cluster.

    SecurityConfig BareMetalClusterSecurityConfig

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    State string

    (Output) The lifecycle state of the condition.

    Statuses List<BareMetalClusterStatus>

    (Output) Specifies the detailed validation check status Structure is documented below.

    Storage BareMetalClusterStorage

    Specifies the cluster storage configuration. Structure is documented below.

    Uid string

    The unique identifier of the Bare Metal User Cluster.

    UpdateTime string

    The time the cluster was last updated, in RFC3339 text format.

    UpgradePolicy BareMetalClusterUpgradePolicy

    The cluster upgrade policy. Structure is documented below.

    ValidationChecks List<BareMetalClusterValidationCheck>

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    AdminClusterMembership string

    The Admin Cluster this Bare Metal User Cluster belongs to. This is the full resource name of the Admin Cluster's hub membership.

    Annotations map[string]string

    Annotations on the Bare Metal 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.

    BareMetalVersion string

    A human readable description of this Bare Metal User Cluster.

    BinaryAuthorization BareMetalClusterBinaryAuthorizationArgs

    Binary Authorization related configurations. Structure is documented below.

    ClusterOperations BareMetalClusterClusterOperationsArgs

    Specifies the User Cluster's observability infrastructure. Structure is documented below.

    ControlPlane BareMetalClusterControlPlaneArgs

    Specifies the control plane configuration. Structure is documented below.

    CreateTime string

    The time the cluster was created, in RFC3339 text format.

    DeleteTime string

    The time the cluster was deleted, in RFC3339 text format.

    Description string

    A human readable description of this Bare Metal User Cluster.

    EffectiveAnnotations map[string]string

    All of annotations (key/value pairs) present on the resource in GCP, including the annotations configured through Terraform, other clients and services.

    Endpoint string

    The IP address name of Bare Metal 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 []BareMetalClusterFleetArgs

    Fleet related configuration. Fleets are a Google Cloud concept for logically organizing clusters, letting you use and manage multi-cluster capabilities and apply consistent policies across your systems. See Anthos Fleets for more details on Anthos multi-cluster capabilities using Fleets. Structure is documented below.

    LoadBalancer BareMetalClusterLoadBalancerArgs

    Specifies the load balancer configuration. Structure is documented below.

    LocalName string

    The object name of the Bare Metal Cluster 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 string

    The location of the resource.

    MaintenanceConfig BareMetalClusterMaintenanceConfigArgs

    Specifies the workload node configurations. Structure is documented below.

    Name string

    The bare metal cluster name.

    NetworkConfig BareMetalClusterNetworkConfigArgs

    Network configuration. Structure is documented below.

    NodeAccessConfig BareMetalClusterNodeAccessConfigArgs

    Specifies the node access related settings for the bare metal user cluster. Structure is documented below.

    NodeConfig BareMetalClusterNodeConfigArgs

    Specifies the workload node configurations. Structure is documented below.

    OsEnvironmentConfig BareMetalClusterOsEnvironmentConfigArgs

    OS environment related configurations. Structure is documented below.

    Project string

    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

    Proxy BareMetalClusterProxyArgs

    Specifies the cluster proxy configuration. Structure is documented below.

    Reconciling bool

    If set, there are currently changes in flight to the Bare Metal User Cluster.

    SecurityConfig BareMetalClusterSecurityConfigArgs

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    State string

    (Output) The lifecycle state of the condition.

    Statuses []BareMetalClusterStatusArgs

    (Output) Specifies the detailed validation check status Structure is documented below.

    Storage BareMetalClusterStorageArgs

    Specifies the cluster storage configuration. Structure is documented below.

    Uid string

    The unique identifier of the Bare Metal User Cluster.

    UpdateTime string

    The time the cluster was last updated, in RFC3339 text format.

    UpgradePolicy BareMetalClusterUpgradePolicyArgs

    The cluster upgrade policy. Structure is documented below.

    ValidationChecks []BareMetalClusterValidationCheckArgs

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    adminClusterMembership String

    The Admin Cluster this Bare Metal User Cluster belongs to. This is the full resource name of the Admin Cluster's hub membership.

    annotations Map<String,String>

    Annotations on the Bare Metal 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.

    bareMetalVersion String

    A human readable description of this Bare Metal User Cluster.

    binaryAuthorization BareMetalClusterBinaryAuthorization

    Binary Authorization related configurations. Structure is documented below.

    clusterOperations BareMetalClusterClusterOperations

    Specifies the User Cluster's observability infrastructure. Structure is documented below.

    controlPlane BareMetalClusterControlPlane

    Specifies the control plane configuration. Structure is documented below.

    createTime String

    The time the cluster was created, in RFC3339 text format.

    deleteTime String

    The time the cluster was deleted, in RFC3339 text format.

    description String

    A human readable description of this Bare Metal User Cluster.

    effectiveAnnotations Map<String,String>

    All of annotations (key/value pairs) present on the resource in GCP, including the annotations configured through Terraform, other clients and services.

    endpoint String

    The IP address name of Bare Metal 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<BareMetalClusterFleet>

    Fleet related configuration. Fleets are a Google Cloud concept for logically organizing clusters, letting you use and manage multi-cluster capabilities and apply consistent policies across your systems. See Anthos Fleets for more details on Anthos multi-cluster capabilities using Fleets. Structure is documented below.

    loadBalancer BareMetalClusterLoadBalancer

    Specifies the load balancer configuration. Structure is documented below.

    localName String

    The object name of the Bare Metal Cluster 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 String

    The location of the resource.

    maintenanceConfig BareMetalClusterMaintenanceConfig

    Specifies the workload node configurations. Structure is documented below.

    name String

    The bare metal cluster name.

    networkConfig BareMetalClusterNetworkConfig

    Network configuration. Structure is documented below.

    nodeAccessConfig BareMetalClusterNodeAccessConfig

    Specifies the node access related settings for the bare metal user cluster. Structure is documented below.

    nodeConfig BareMetalClusterNodeConfig

    Specifies the workload node configurations. Structure is documented below.

    osEnvironmentConfig BareMetalClusterOsEnvironmentConfig

    OS environment related configurations. Structure is documented below.

    project String

    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

    proxy BareMetalClusterProxy

    Specifies the cluster proxy configuration. Structure is documented below.

    reconciling Boolean

    If set, there are currently changes in flight to the Bare Metal User Cluster.

    securityConfig BareMetalClusterSecurityConfig

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    state String

    (Output) The lifecycle state of the condition.

    statuses List<BareMetalClusterStatus>

    (Output) Specifies the detailed validation check status Structure is documented below.

    storage BareMetalClusterStorage

    Specifies the cluster storage configuration. Structure is documented below.

    uid String

    The unique identifier of the Bare Metal User Cluster.

    updateTime String

    The time the cluster was last updated, in RFC3339 text format.

    upgradePolicy BareMetalClusterUpgradePolicy

    The cluster upgrade policy. Structure is documented below.

    validationChecks List<BareMetalClusterValidationCheck>

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    adminClusterMembership string

    The Admin Cluster this Bare Metal User Cluster belongs to. This is the full resource name of the Admin Cluster's hub membership.

    annotations {[key: string]: string}

    Annotations on the Bare Metal 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.

    bareMetalVersion string

    A human readable description of this Bare Metal User Cluster.

    binaryAuthorization BareMetalClusterBinaryAuthorization

    Binary Authorization related configurations. Structure is documented below.

    clusterOperations BareMetalClusterClusterOperations

    Specifies the User Cluster's observability infrastructure. Structure is documented below.

    controlPlane BareMetalClusterControlPlane

    Specifies the control plane configuration. Structure is documented below.

    createTime string

    The time the cluster was created, in RFC3339 text format.

    deleteTime string

    The time the cluster was deleted, in RFC3339 text format.

    description string

    A human readable description of this Bare Metal User Cluster.

    effectiveAnnotations {[key: string]: string}

    All of annotations (key/value pairs) present on the resource in GCP, including the annotations configured through Terraform, other clients and services.

    endpoint string

    The IP address name of Bare Metal 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 BareMetalClusterFleet[]

    Fleet related configuration. Fleets are a Google Cloud concept for logically organizing clusters, letting you use and manage multi-cluster capabilities and apply consistent policies across your systems. See Anthos Fleets for more details on Anthos multi-cluster capabilities using Fleets. Structure is documented below.

    loadBalancer BareMetalClusterLoadBalancer

    Specifies the load balancer configuration. Structure is documented below.

    localName string

    The object name of the Bare Metal Cluster 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 string

    The location of the resource.

    maintenanceConfig BareMetalClusterMaintenanceConfig

    Specifies the workload node configurations. Structure is documented below.

    name string

    The bare metal cluster name.

    networkConfig BareMetalClusterNetworkConfig

    Network configuration. Structure is documented below.

    nodeAccessConfig BareMetalClusterNodeAccessConfig

    Specifies the node access related settings for the bare metal user cluster. Structure is documented below.

    nodeConfig BareMetalClusterNodeConfig

    Specifies the workload node configurations. Structure is documented below.

    osEnvironmentConfig BareMetalClusterOsEnvironmentConfig

    OS environment related configurations. Structure is documented below.

    project string

    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

    proxy BareMetalClusterProxy

    Specifies the cluster proxy configuration. Structure is documented below.

    reconciling boolean

    If set, there are currently changes in flight to the Bare Metal User Cluster.

    securityConfig BareMetalClusterSecurityConfig

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    state string

    (Output) The lifecycle state of the condition.

    statuses BareMetalClusterStatus[]

    (Output) Specifies the detailed validation check status Structure is documented below.

    storage BareMetalClusterStorage

    Specifies the cluster storage configuration. Structure is documented below.

    uid string

    The unique identifier of the Bare Metal User Cluster.

    updateTime string

    The time the cluster was last updated, in RFC3339 text format.

    upgradePolicy BareMetalClusterUpgradePolicy

    The cluster upgrade policy. Structure is documented below.

    validationChecks BareMetalClusterValidationCheck[]

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    admin_cluster_membership str

    The Admin Cluster this Bare Metal User Cluster belongs to. This is the full resource name of the Admin Cluster's hub membership.

    annotations Mapping[str, str]

    Annotations on the Bare Metal 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.

    bare_metal_version str

    A human readable description of this Bare Metal User Cluster.

    binary_authorization BareMetalClusterBinaryAuthorizationArgs

    Binary Authorization related configurations. Structure is documented below.

    cluster_operations BareMetalClusterClusterOperationsArgs

    Specifies the User Cluster's observability infrastructure. Structure is documented below.

    control_plane BareMetalClusterControlPlaneArgs

    Specifies the control plane configuration. Structure is documented below.

    create_time str

    The time the cluster was created, in RFC3339 text format.

    delete_time str

    The time the cluster was deleted, in RFC3339 text format.

    description str

    A human readable description of this Bare Metal User Cluster.

    effective_annotations Mapping[str, str]

    All of annotations (key/value pairs) present on the resource in GCP, including the annotations configured through Terraform, other clients and services.

    endpoint str

    The IP address name of Bare Metal 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[BareMetalClusterFleetArgs]

    Fleet related configuration. Fleets are a Google Cloud concept for logically organizing clusters, letting you use and manage multi-cluster capabilities and apply consistent policies across your systems. See Anthos Fleets for more details on Anthos multi-cluster capabilities using Fleets. Structure is documented below.

    load_balancer BareMetalClusterLoadBalancerArgs

    Specifies the load balancer configuration. Structure is documented below.

    local_name str

    The object name of the Bare Metal Cluster 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 str

    The location of the resource.

    maintenance_config BareMetalClusterMaintenanceConfigArgs

    Specifies the workload node configurations. Structure is documented below.

    name str

    The bare metal cluster name.

    network_config BareMetalClusterNetworkConfigArgs

    Network configuration. Structure is documented below.

    node_access_config BareMetalClusterNodeAccessConfigArgs

    Specifies the node access related settings for the bare metal user cluster. Structure is documented below.

    node_config BareMetalClusterNodeConfigArgs

    Specifies the workload node configurations. Structure is documented below.

    os_environment_config BareMetalClusterOsEnvironmentConfigArgs

    OS environment related configurations. Structure is documented below.

    project str

    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

    proxy BareMetalClusterProxyArgs

    Specifies the cluster proxy configuration. Structure is documented below.

    reconciling bool

    If set, there are currently changes in flight to the Bare Metal User Cluster.

    security_config BareMetalClusterSecurityConfigArgs

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    state str

    (Output) The lifecycle state of the condition.

    statuses Sequence[BareMetalClusterStatusArgs]

    (Output) Specifies the detailed validation check status Structure is documented below.

    storage BareMetalClusterStorageArgs

    Specifies the cluster storage configuration. Structure is documented below.

    uid str

    The unique identifier of the Bare Metal User Cluster.

    update_time str

    The time the cluster was last updated, in RFC3339 text format.

    upgrade_policy BareMetalClusterUpgradePolicyArgs

    The cluster upgrade policy. Structure is documented below.

    validation_checks Sequence[BareMetalClusterValidationCheckArgs]

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    adminClusterMembership String

    The Admin Cluster this Bare Metal User Cluster belongs to. This is the full resource name of the Admin Cluster's hub membership.

    annotations Map<String>

    Annotations on the Bare Metal 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.

    bareMetalVersion String

    A human readable description of this Bare Metal User Cluster.

    binaryAuthorization Property Map

    Binary Authorization related configurations. Structure is documented below.

    clusterOperations Property Map

    Specifies the User Cluster's observability infrastructure. Structure is documented below.

    controlPlane Property Map

    Specifies the control plane configuration. Structure is documented below.

    createTime String

    The time the cluster was created, in RFC3339 text format.

    deleteTime String

    The time the cluster was deleted, in RFC3339 text format.

    description String

    A human readable description of this Bare Metal User Cluster.

    effectiveAnnotations Map<String>

    All of annotations (key/value pairs) present on the resource in GCP, including the annotations configured through Terraform, other clients and services.

    endpoint String

    The IP address name of Bare Metal 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 related configuration. Fleets are a Google Cloud concept for logically organizing clusters, letting you use and manage multi-cluster capabilities and apply consistent policies across your systems. See Anthos Fleets for more details on Anthos multi-cluster capabilities using Fleets. Structure is documented below.

    loadBalancer Property Map

    Specifies the load balancer configuration. Structure is documented below.

    localName String

    The object name of the Bare Metal Cluster 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 String

    The location of the resource.

    maintenanceConfig Property Map

    Specifies the workload node configurations. Structure is documented below.

    name String

    The bare metal cluster name.

    networkConfig Property Map

    Network configuration. Structure is documented below.

    nodeAccessConfig Property Map

    Specifies the node access related settings for the bare metal user cluster. Structure is documented below.

    nodeConfig Property Map

    Specifies the workload node configurations. Structure is documented below.

    osEnvironmentConfig Property Map

    OS environment related configurations. Structure is documented below.

    project String

    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

    proxy Property Map

    Specifies the cluster proxy configuration. Structure is documented below.

    reconciling Boolean

    If set, there are currently changes in flight to the Bare Metal User Cluster.

    securityConfig Property Map

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    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

    Specifies the cluster storage configuration. Structure is documented below.

    uid String

    The unique identifier of the Bare Metal User Cluster.

    updateTime String

    The time the cluster was last updated, in RFC3339 text format.

    upgradePolicy Property Map

    The cluster upgrade policy. Structure is documented below.

    validationChecks List<Property Map>

    Specifies the security related settings for the Bare Metal User Cluster. Structure is documented below.

    Supporting Types

    BareMetalClusterBinaryAuthorization, BareMetalClusterBinaryAuthorizationArgs

    EvaluationMode string

    Mode of operation for binauthz policy evaluation. If unspecified, defaults to DISABLED. Possible values are: DISABLED, PROJECT_SINGLETON_POLICY_ENFORCE.

    EvaluationMode string

    Mode of operation for binauthz policy evaluation. If unspecified, defaults to DISABLED. Possible values are: DISABLED, PROJECT_SINGLETON_POLICY_ENFORCE.

    evaluationMode String

    Mode of operation for binauthz policy evaluation. If unspecified, defaults to DISABLED. Possible values are: DISABLED, PROJECT_SINGLETON_POLICY_ENFORCE.

    evaluationMode string

    Mode of operation for binauthz policy evaluation. If unspecified, defaults to DISABLED. Possible values are: DISABLED, PROJECT_SINGLETON_POLICY_ENFORCE.

    evaluation_mode str

    Mode of operation for binauthz policy evaluation. If unspecified, defaults to DISABLED. Possible values are: DISABLED, PROJECT_SINGLETON_POLICY_ENFORCE.

    evaluationMode String

    Mode of operation for binauthz policy evaluation. If unspecified, defaults to DISABLED. Possible values are: DISABLED, PROJECT_SINGLETON_POLICY_ENFORCE.

    BareMetalClusterClusterOperations, BareMetalClusterClusterOperationsArgs

    EnableApplicationLogs bool

    Whether collection of application logs/metrics should be enabled (in addition to system logs/metrics).

    EnableApplicationLogs bool

    Whether collection of application logs/metrics should be enabled (in addition to system logs/metrics).

    enableApplicationLogs Boolean

    Whether collection of application logs/metrics should be enabled (in addition to system logs/metrics).

    enableApplicationLogs boolean

    Whether collection of application logs/metrics should be enabled (in addition to system logs/metrics).

    enable_application_logs bool

    Whether collection of application logs/metrics should be enabled (in addition to system logs/metrics).

    enableApplicationLogs Boolean

    Whether collection of application logs/metrics should be enabled (in addition to system logs/metrics).

    BareMetalClusterControlPlane, BareMetalClusterControlPlaneArgs

    ControlPlaneNodePoolConfig BareMetalClusterControlPlaneControlPlaneNodePoolConfig

    Configures the node pool running the control plane. If specified the corresponding NodePool will be created for the cluster's control plane. The NodePool will have the same name and namespace as the cluster. Structure is documented below.

    ApiServerArgs List<BareMetalClusterControlPlaneApiServerArg>

    Customizes the default API server args. Only a subset of customized flags are supported. Please refer to the API server documentation below to know the exact format: https://kubernetes.io/docs/reference/command-line-tools-reference/kube-apiserver/ Structure is documented below.

    ControlPlaneNodePoolConfig BareMetalClusterControlPlaneControlPlaneNodePoolConfig

    Configures the node pool running the control plane. If specified the corresponding NodePool will be created for the cluster's control plane. The NodePool will have the same name and namespace as the cluster. Structure is documented below.

    ApiServerArgs []BareMetalClusterControlPlaneApiServerArg

    Customizes the default API server args. Only a subset of customized flags are supported. Please refer to the API server documentation below to know the exact format: https://kubernetes.io/docs/reference/command-line-tools-reference/kube-apiserver/ Structure is documented below.

    controlPlaneNodePoolConfig BareMetalClusterControlPlaneControlPlaneNodePoolConfig

    Configures the node pool running the control plane. If specified the corresponding NodePool will be created for the cluster's control plane. The NodePool will have the same name and namespace as the cluster. Structure is documented below.

    apiServerArgs List<BareMetalClusterControlPlaneApiServerArg>

    Customizes the default API server args. Only a subset of customized flags are supported. Please refer to the API server documentation below to know the exact format: https://kubernetes.io/docs/reference/command-line-tools-reference/kube-apiserver/ Structure is documented below.

    controlPlaneNodePoolConfig BareMetalClusterControlPlaneControlPlaneNodePoolConfig

    Configures the node pool running the control plane. If specified the corresponding NodePool will be created for the cluster's control plane. The NodePool will have the same name and namespace as the cluster. Structure is documented below.

    apiServerArgs BareMetalClusterControlPlaneApiServerArg[]

    Customizes the default API server args. Only a subset of customized flags are supported. Please refer to the API server documentation below to know the exact format: https://kubernetes.io/docs/reference/command-line-tools-reference/kube-apiserver/ Structure is documented below.

    control_plane_node_pool_config BareMetalClusterControlPlaneControlPlaneNodePoolConfig

    Configures the node pool running the control plane. If specified the corresponding NodePool will be created for the cluster's control plane. The NodePool will have the same name and namespace as the cluster. Structure is documented below.

    api_server_args Sequence[BareMetalClusterControlPlaneApiServerArg]

    Customizes the default API server args. Only a subset of customized flags are supported. Please refer to the API server documentation below to know the exact format: https://kubernetes.io/docs/reference/command-line-tools-reference/kube-apiserver/ Structure is documented below.

    controlPlaneNodePoolConfig Property Map

    Configures the node pool running the control plane. If specified the corresponding NodePool will be created for the cluster's control plane. The NodePool will have the same name and namespace as the cluster. Structure is documented below.

    apiServerArgs List<Property Map>

    Customizes the default API server args. Only a subset of customized flags are supported. Please refer to the API server documentation below to know the exact format: https://kubernetes.io/docs/reference/command-line-tools-reference/kube-apiserver/ Structure is documented below.

    BareMetalClusterControlPlaneApiServerArg, BareMetalClusterControlPlaneApiServerArgArgs

    Argument string

    The argument name as it appears on the API Server command line please make sure to remove the leading dashes.

    Value string

    The value of the arg as it will be passed to the API Server command line.

    Argument string

    The argument name as it appears on the API Server command line please make sure to remove the leading dashes.

    Value string

    The value of the arg as it will be passed to the API Server command line.

    argument String

    The argument name as it appears on the API Server command line please make sure to remove the leading dashes.

    value String

    The value of the arg as it will be passed to the API Server command line.

    argument string

    The argument name as it appears on the API Server command line please make sure to remove the leading dashes.

    value string

    The value of the arg as it will be passed to the API Server command line.

    argument str

    The argument name as it appears on the API Server command line please make sure to remove the leading dashes.

    value str

    The value of the arg as it will be passed to the API Server command line.

    argument String

    The argument name as it appears on the API Server command line please make sure to remove the leading dashes.

    value String

    The value of the arg as it will be passed to the API Server command line.

    BareMetalClusterControlPlaneControlPlaneNodePoolConfig, BareMetalClusterControlPlaneControlPlaneNodePoolConfigArgs

    NodePoolConfig BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfig

    The generic configuration for a node pool running the control plane. Structure is documented below.

    NodePoolConfig BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfig

    The generic configuration for a node pool running the control plane. Structure is documented below.

    nodePoolConfig BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfig

    The generic configuration for a node pool running the control plane. Structure is documented below.

    nodePoolConfig BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfig

    The generic configuration for a node pool running the control plane. Structure is documented below.

    node_pool_config BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfig

    The generic configuration for a node pool running the control plane. Structure is documented below.

    nodePoolConfig Property Map

    The generic configuration for a node pool running the control plane. Structure is documented below.

    BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfig, BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigArgs

    Labels Dictionary<string, string>

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    NodeConfigs List<BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfig>

    The list of machine addresses in the Bare Metal Node Pool. Structure is documented below.

    OperatingSystem string

    Specifies the nodes operating system (default: LINUX).

    Taints List<BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigTaint>

    The initial taints assigned to nodes of this node pool. Structure is documented below.

    Labels map[string]string

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    NodeConfigs []BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfig

    The list of machine addresses in the Bare Metal Node Pool. Structure is documented below.

    OperatingSystem string

    Specifies the nodes operating system (default: LINUX).

    Taints []BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigTaint

    The initial taints assigned to nodes of this node pool. Structure is documented below.

    labels Map<String,String>

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    nodeConfigs List<BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfig>

    The list of machine addresses in the Bare Metal Node Pool. Structure is documented below.

    operatingSystem String

    Specifies the nodes operating system (default: LINUX).

    taints List<BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigTaint>

    The initial taints assigned to nodes of this node pool. Structure is documented below.

    labels {[key: string]: string}

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    nodeConfigs BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfig[]

    The list of machine addresses in the Bare Metal Node Pool. Structure is documented below.

    operatingSystem string

    Specifies the nodes operating system (default: LINUX).

    taints BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigTaint[]

    The initial taints assigned to nodes of this node pool. Structure is documented below.

    labels Mapping[str, str]

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    node_configs Sequence[BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfig]

    The list of machine addresses in the Bare Metal Node Pool. Structure is documented below.

    operating_system str

    Specifies the nodes operating system (default: LINUX).

    taints Sequence[BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigTaint]

    The initial taints assigned to nodes of this node pool. Structure is documented below.

    labels Map<String>

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    nodeConfigs List<Property Map>

    The list of machine addresses in the Bare Metal Node Pool. Structure is documented below.

    operatingSystem String

    Specifies the nodes operating system (default: LINUX).

    taints List<Property Map>

    The initial taints assigned to nodes of this node pool. Structure is documented below.

    BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfig, BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfigArgs

    Labels Dictionary<string, string>

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    NodeIp string

    The default IPv4 address for SSH access and Kubernetes node. Example: 192.168.0.1

    Labels map[string]string

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    NodeIp string

    The default IPv4 address for SSH access and Kubernetes node. Example: 192.168.0.1

    labels Map<String,String>

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    nodeIp String

    The default IPv4 address for SSH access and Kubernetes node. Example: 192.168.0.1

    labels {[key: string]: string}

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    nodeIp string

    The default IPv4 address for SSH access and Kubernetes node. Example: 192.168.0.1

    labels Mapping[str, str]

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    node_ip str

    The default IPv4 address for SSH access and Kubernetes node. Example: 192.168.0.1

    labels Map<String>

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    nodeIp String

    The default IPv4 address for SSH access and Kubernetes node. Example: 192.168.0.1

    BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigTaint, BareMetalClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigTaintArgs

    Effect string

    Specifies the nodes operating system (default: LINUX). Possible values are: EFFECT_UNSPECIFIED, PREFER_NO_SCHEDULE, NO_EXECUTE.

    Key string

    Key associated with the effect.

    Value string

    Value associated with the effect.

    Effect string

    Specifies the nodes operating system (default: LINUX). Possible values are: EFFECT_UNSPECIFIED, PREFER_NO_SCHEDULE, NO_EXECUTE.

    Key string

    Key associated with the effect.

    Value string

    Value associated with the effect.

    effect String

    Specifies the nodes operating system (default: LINUX). Possible values are: EFFECT_UNSPECIFIED, PREFER_NO_SCHEDULE, NO_EXECUTE.

    key String

    Key associated with the effect.

    value String

    Value associated with the effect.

    effect string

    Specifies the nodes operating system (default: LINUX). Possible values are: EFFECT_UNSPECIFIED, PREFER_NO_SCHEDULE, NO_EXECUTE.

    key string

    Key associated with the effect.

    value string

    Value associated with the effect.

    effect str

    Specifies the nodes operating system (default: LINUX). Possible values are: EFFECT_UNSPECIFIED, PREFER_NO_SCHEDULE, NO_EXECUTE.

    key str

    Key associated with the effect.

    value str

    Value associated with the effect.

    effect String

    Specifies the nodes operating system (default: LINUX). Possible values are: EFFECT_UNSPECIFIED, PREFER_NO_SCHEDULE, NO_EXECUTE.

    key String

    Key associated with the effect.

    value String

    Value associated with the effect.

    BareMetalClusterFleet, BareMetalClusterFleetArgs

    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>.

    BareMetalClusterLoadBalancer, BareMetalClusterLoadBalancerArgs

    PortConfig BareMetalClusterLoadBalancerPortConfig

    Specifies the load balancer ports. Structure is documented below.

    VipConfig BareMetalClusterLoadBalancerVipConfig

    Specified the Bare Metal Load Balancer Config Structure is documented below.

    BgpLbConfig BareMetalClusterLoadBalancerBgpLbConfig

    Configuration for BGP typed load balancers. Structure is documented below.

    ManualLbConfig BareMetalClusterLoadBalancerManualLbConfig

    A nested object resource Structure is documented below.

    MetalLbConfig BareMetalClusterLoadBalancerMetalLbConfig

    A nested object resource Structure is documented below.

    PortConfig BareMetalClusterLoadBalancerPortConfig

    Specifies the load balancer ports. Structure is documented below.

    VipConfig BareMetalClusterLoadBalancerVipConfig

    Specified the Bare Metal Load Balancer Config Structure is documented below.

    BgpLbConfig BareMetalClusterLoadBalancerBgpLbConfig

    Configuration for BGP typed load balancers. Structure is documented below.

    ManualLbConfig BareMetalClusterLoadBalancerManualLbConfig

    A nested object resource Structure is documented below.

    MetalLbConfig BareMetalClusterLoadBalancerMetalLbConfig

    A nested object resource Structure is documented below.

    portConfig BareMetalClusterLoadBalancerPortConfig

    Specifies the load balancer ports. Structure is documented below.

    vipConfig BareMetalClusterLoadBalancerVipConfig

    Specified the Bare Metal Load Balancer Config Structure is documented below.

    bgpLbConfig BareMetalClusterLoadBalancerBgpLbConfig

    Configuration for BGP typed load balancers. Structure is documented below.

    manualLbConfig BareMetalClusterLoadBalancerManualLbConfig

    A nested object resource Structure is documented below.

    metalLbConfig BareMetalClusterLoadBalancerMetalLbConfig

    A nested object resource Structure is documented below.

    portConfig BareMetalClusterLoadBalancerPortConfig

    Specifies the load balancer ports. Structure is documented below.

    vipConfig BareMetalClusterLoadBalancerVipConfig

    Specified the Bare Metal Load Balancer Config Structure is documented below.

    bgpLbConfig BareMetalClusterLoadBalancerBgpLbConfig

    Configuration for BGP typed load balancers. Structure is documented below.

    manualLbConfig BareMetalClusterLoadBalancerManualLbConfig

    A nested object resource Structure is documented below.

    metalLbConfig BareMetalClusterLoadBalancerMetalLbConfig

    A nested object resource Structure is documented below.

    port_config BareMetalClusterLoadBalancerPortConfig

    Specifies the load balancer ports. Structure is documented below.

    vip_config BareMetalClusterLoadBalancerVipConfig

    Specified the Bare Metal Load Balancer Config Structure is documented below.

    bgp_lb_config BareMetalClusterLoadBalancerBgpLbConfig

    Configuration for BGP typed load balancers. Structure is documented below.

    manual_lb_config BareMetalClusterLoadBalancerManualLbConfig

    A nested object resource Structure is documented below.

    metal_lb_config BareMetalClusterLoadBalancerMetalLbConfig

    A nested object resource Structure is documented below.

    portConfig Property Map

    Specifies the load balancer ports. Structure is documented below.

    vipConfig Property Map

    Specified the Bare Metal Load Balancer Config Structure is documented below.

    bgpLbConfig Property Map

    Configuration for BGP typed load balancers. Structure is documented below.

    manualLbConfig Property Map

    A nested object resource Structure is documented below.

    metalLbConfig Property Map

    A nested object resource Structure is documented below.

    BareMetalClusterLoadBalancerBgpLbConfig, BareMetalClusterLoadBalancerBgpLbConfigArgs

    AddressPools List<BareMetalClusterLoadBalancerBgpLbConfigAddressPool>

    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.

    Asn int

    BGP autonomous system number (ASN) of the cluster. This field can be updated after cluster creation.

    BgpPeerConfigs List<BareMetalClusterLoadBalancerBgpLbConfigBgpPeerConfig>

    The list of BGP peers that the cluster will connect to. At least one peer must be configured for each control plane node. Control plane nodes will connect to these peers to advertise the control plane VIP. The Services load balancer also uses these peers by default. This field can be updated after cluster creation. Structure is documented below.

    LoadBalancerNodePoolConfig BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfig

    Specifies the node pool running data plane load balancing. L2 connectivity is required among nodes in this pool. If missing, the control plane node pool is used for data plane load balancing. Structure is documented below.

    AddressPools []BareMetalClusterLoadBalancerBgpLbConfigAddressPool

    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.

    Asn int

    BGP autonomous system number (ASN) of the cluster. This field can be updated after cluster creation.

    BgpPeerConfigs []BareMetalClusterLoadBalancerBgpLbConfigBgpPeerConfig

    The list of BGP peers that the cluster will connect to. At least one peer must be configured for each control plane node. Control plane nodes will connect to these peers to advertise the control plane VIP. The Services load balancer also uses these peers by default. This field can be updated after cluster creation. Structure is documented below.

    LoadBalancerNodePoolConfig BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfig

    Specifies the node pool running data plane load balancing. L2 connectivity is required among nodes in this pool. If missing, the control plane node pool is used for data plane load balancing. Structure is documented below.

    addressPools List<BareMetalClusterLoadBalancerBgpLbConfigAddressPool>

    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.

    asn Integer

    BGP autonomous system number (ASN) of the cluster. This field can be updated after cluster creation.

    bgpPeerConfigs List<BareMetalClusterLoadBalancerBgpLbConfigBgpPeerConfig>

    The list of BGP peers that the cluster will connect to. At least one peer must be configured for each control plane node. Control plane nodes will connect to these peers to advertise the control plane VIP. The Services load balancer also uses these peers by default. This field can be updated after cluster creation. Structure is documented below.

    loadBalancerNodePoolConfig BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfig

    Specifies the node pool running data plane load balancing. L2 connectivity is required among nodes in this pool. If missing, the control plane node pool is used for data plane load balancing. Structure is documented below.

    addressPools BareMetalClusterLoadBalancerBgpLbConfigAddressPool[]

    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.

    asn number

    BGP autonomous system number (ASN) of the cluster. This field can be updated after cluster creation.

    bgpPeerConfigs BareMetalClusterLoadBalancerBgpLbConfigBgpPeerConfig[]

    The list of BGP peers that the cluster will connect to. At least one peer must be configured for each control plane node. Control plane nodes will connect to these peers to advertise the control plane VIP. The Services load balancer also uses these peers by default. This field can be updated after cluster creation. Structure is documented below.

    loadBalancerNodePoolConfig BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfig

    Specifies the node pool running data plane load balancing. L2 connectivity is required among nodes in this pool. If missing, the control plane node pool is used for data plane load balancing. Structure is documented below.

    address_pools Sequence[BareMetalClusterLoadBalancerBgpLbConfigAddressPool]

    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.

    asn int

    BGP autonomous system number (ASN) of the cluster. This field can be updated after cluster creation.

    bgp_peer_configs Sequence[BareMetalClusterLoadBalancerBgpLbConfigBgpPeerConfig]

    The list of BGP peers that the cluster will connect to. At least one peer must be configured for each control plane node. Control plane nodes will connect to these peers to advertise the control plane VIP. The Services load balancer also uses these peers by default. This field can be updated after cluster creation. Structure is documented below.

    load_balancer_node_pool_config BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfig

    Specifies the node pool running data plane load balancing. L2 connectivity is required among nodes in this pool. If missing, the control plane node pool is used for data plane load balancing. Structure is documented below.

    addressPools 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.

    asn Number

    BGP autonomous system number (ASN) of the cluster. This field can be updated after cluster creation.

    bgpPeerConfigs List<Property Map>

    The list of BGP peers that the cluster will connect to. At least one peer must be configured for each control plane node. Control plane nodes will connect to these peers to advertise the control plane VIP. The Services load balancer also uses these peers by default. This field can be updated after cluster creation. Structure is documented below.

    loadBalancerNodePoolConfig Property Map

    Specifies the node pool running data plane load balancing. L2 connectivity is required among nodes in this pool. If missing, the control plane node pool is used for data plane load balancing. Structure is documented below.

    BareMetalClusterLoadBalancerBgpLbConfigAddressPool, BareMetalClusterLoadBalancerBgpLbConfigAddressPoolArgs

    Addresses 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 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 string

    If true, prevent IP addresses from being automatically assigned.

    Addresses []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 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 string

    If true, prevent IP addresses from being automatically assigned.

    addresses 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 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 String

    If true, prevent IP addresses from being automatically assigned.

    addresses 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 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 string

    If true, prevent IP addresses from being automatically assigned.

    addresses 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 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 str

    If true, prevent IP addresses from being automatically assigned.

    addresses 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 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 String

    If true, prevent IP addresses from being automatically assigned.

    BareMetalClusterLoadBalancerBgpLbConfigBgpPeerConfig, BareMetalClusterLoadBalancerBgpLbConfigBgpPeerConfigArgs

    Asn int

    BGP autonomous system number (ASN) for the network that contains the external peer device.

    IpAddress string

    The IP address of the external peer device.

    ControlPlaneNodes List<string>

    The IP address of the control plane node that connects to the external peer. If you don't specify any control plane nodes, all control plane nodes can connect to the external peer. If you specify one or more IP addresses, only the nodes specified participate in peering sessions.

    Asn int

    BGP autonomous system number (ASN) for the network that contains the external peer device.

    IpAddress string

    The IP address of the external peer device.

    ControlPlaneNodes []string

    The IP address of the control plane node that connects to the external peer. If you don't specify any control plane nodes, all control plane nodes can connect to the external peer. If you specify one or more IP addresses, only the nodes specified participate in peering sessions.

    asn Integer

    BGP autonomous system number (ASN) for the network that contains the external peer device.

    ipAddress String

    The IP address of the external peer device.

    controlPlaneNodes List<String>

    The IP address of the control plane node that connects to the external peer. If you don't specify any control plane nodes, all control plane nodes can connect to the external peer. If you specify one or more IP addresses, only the nodes specified participate in peering sessions.

    asn number

    BGP autonomous system number (ASN) for the network that contains the external peer device.

    ipAddress string

    The IP address of the external peer device.

    controlPlaneNodes string[]

    The IP address of the control plane node that connects to the external peer. If you don't specify any control plane nodes, all control plane nodes can connect to the external peer. If you specify one or more IP addresses, only the nodes specified participate in peering sessions.

    asn int

    BGP autonomous system number (ASN) for the network that contains the external peer device.

    ip_address str

    The IP address of the external peer device.

    control_plane_nodes Sequence[str]

    The IP address of the control plane node that connects to the external peer. If you don't specify any control plane nodes, all control plane nodes can connect to the external peer. If you specify one or more IP addresses, only the nodes specified participate in peering sessions.

    asn Number

    BGP autonomous system number (ASN) for the network that contains the external peer device.

    ipAddress String

    The IP address of the external peer device.

    controlPlaneNodes List<String>

    The IP address of the control plane node that connects to the external peer. If you don't specify any control plane nodes, all control plane nodes can connect to the external peer. If you specify one or more IP addresses, only the nodes specified participate in peering sessions.

    BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfig, BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigArgs

    NodePoolConfig BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfig

    The generic configuration for a node pool running a load balancer. Structure is documented below.

    NodePoolConfig BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfig

    The generic configuration for a node pool running a load balancer. Structure is documented below.

    nodePoolConfig BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfig

    The generic configuration for a node pool running a load balancer. Structure is documented below.

    nodePoolConfig BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfig

    The generic configuration for a node pool running a load balancer. Structure is documented below.

    node_pool_config BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfig

    The generic configuration for a node pool running a load balancer. Structure is documented below.

    nodePoolConfig Property Map

    The generic configuration for a node pool running a load balancer. Structure is documented below.

    BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfig, BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigArgs

    KubeletConfig BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigKubeletConfig

    The modifiable kubelet configurations for the baremetal machines. Structure is documented below.

    Labels Dictionary<string, string>

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    NodeConfigs List<BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigNodeConfig>

    The list of machine addresses in the Bare Metal Node Pool. Structure is documented below.

    OperatingSystem string

    Specifies the nodes operating system (default: LINUX).

    Taints List<BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigTaint>

    The initial taints assigned to nodes of this node pool. Structure is documented below.

    KubeletConfig BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigKubeletConfig

    The modifiable kubelet configurations for the baremetal machines. Structure is documented below.

    Labels map[string]string

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    NodeConfigs []BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigNodeConfig

    The list of machine addresses in the Bare Metal Node Pool. Structure is documented below.

    OperatingSystem string

    Specifies the nodes operating system (default: LINUX).

    Taints []BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigTaint

    The initial taints assigned to nodes of this node pool. Structure is documented below.

    kubeletConfig BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigKubeletConfig

    The modifiable kubelet configurations for the baremetal machines. Structure is documented below.

    labels Map<String,String>

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    nodeConfigs List<BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigNodeConfig>

    The list of machine addresses in the Bare Metal Node Pool. Structure is documented below.

    operatingSystem String

    Specifies the nodes operating system (default: LINUX).

    taints List<BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigTaint>

    The initial taints assigned to nodes of this node pool. Structure is documented below.

    kubeletConfig BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigKubeletConfig

    The modifiable kubelet configurations for the baremetal machines. Structure is documented below.

    labels {[key: string]: string}

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    nodeConfigs BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigNodeConfig[]

    The list of machine addresses in the Bare Metal Node Pool. Structure is documented below.

    operatingSystem string

    Specifies the nodes operating system (default: LINUX).

    taints BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigTaint[]

    The initial taints assigned to nodes of this node pool. Structure is documented below.

    kubelet_config BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigKubeletConfig

    The modifiable kubelet configurations for the baremetal machines. Structure is documented below.

    labels Mapping[str, str]

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    node_configs Sequence[BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigNodeConfig]

    The list of machine addresses in the Bare Metal Node Pool. Structure is documented below.

    operating_system str

    Specifies the nodes operating system (default: LINUX).

    taints Sequence[BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigTaint]

    The initial taints assigned to nodes of this node pool. Structure is documented below.

    kubeletConfig Property Map

    The modifiable kubelet configurations for the baremetal machines. Structure is documented below.

    labels Map<String>

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    nodeConfigs List<Property Map>

    The list of machine addresses in the Bare Metal Node Pool. Structure is documented below.

    operatingSystem String

    Specifies the nodes operating system (default: LINUX).

    taints List<Property Map>

    The initial taints assigned to nodes of this node pool. Structure is documented below.

    BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigKubeletConfig, BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigKubeletConfigArgs

    RegistryBurst int

    The maximum size of bursty pulls, temporarily allows pulls to burst to this number, while still not exceeding registry_pull_qps. The value must not be a negative number. Updating this field may impact scalability by changing the amount of traffic produced by image pulls. Defaults to 10.

    RegistryPullQps int

    The limit of registry pulls per second. Setting this value to 0 means no limit. Updating this field may impact scalability by changing the amount of traffic produced by image pulls. Defaults to 5.

    SerializeImagePullsDisabled bool

    Prevents the Kubelet from pulling multiple images at a time. We recommend not changing the default value on nodes that run docker daemon with version < 1.9 or an Another Union File System (Aufs) storage backend. Issue https://github.com/kubernetes/kubernetes/issues/10959 has more details.

    RegistryBurst int

    The maximum size of bursty pulls, temporarily allows pulls to burst to this number, while still not exceeding registry_pull_qps. The value must not be a negative number. Updating this field may impact scalability by changing the amount of traffic produced by image pulls. Defaults to 10.

    RegistryPullQps int

    The limit of registry pulls per second. Setting this value to 0 means no limit. Updating this field may impact scalability by changing the amount of traffic produced by image pulls. Defaults to 5.

    SerializeImagePullsDisabled bool

    Prevents the Kubelet from pulling multiple images at a time. We recommend not changing the default value on nodes that run docker daemon with version < 1.9 or an Another Union File System (Aufs) storage backend. Issue https://github.com/kubernetes/kubernetes/issues/10959 has more details.

    registryBurst Integer

    The maximum size of bursty pulls, temporarily allows pulls to burst to this number, while still not exceeding registry_pull_qps. The value must not be a negative number. Updating this field may impact scalability by changing the amount of traffic produced by image pulls. Defaults to 10.

    registryPullQps Integer

    The limit of registry pulls per second. Setting this value to 0 means no limit. Updating this field may impact scalability by changing the amount of traffic produced by image pulls. Defaults to 5.

    serializeImagePullsDisabled Boolean

    Prevents the Kubelet from pulling multiple images at a time. We recommend not changing the default value on nodes that run docker daemon with version < 1.9 or an Another Union File System (Aufs) storage backend. Issue https://github.com/kubernetes/kubernetes/issues/10959 has more details.

    registryBurst number

    The maximum size of bursty pulls, temporarily allows pulls to burst to this number, while still not exceeding registry_pull_qps. The value must not be a negative number. Updating this field may impact scalability by changing the amount of traffic produced by image pulls. Defaults to 10.

    registryPullQps number

    The limit of registry pulls per second. Setting this value to 0 means no limit. Updating this field may impact scalability by changing the amount of traffic produced by image pulls. Defaults to 5.

    serializeImagePullsDisabled boolean

    Prevents the Kubelet from pulling multiple images at a time. We recommend not changing the default value on nodes that run docker daemon with version < 1.9 or an Another Union File System (Aufs) storage backend. Issue https://github.com/kubernetes/kubernetes/issues/10959 has more details.

    registry_burst int

    The maximum size of bursty pulls, temporarily allows pulls to burst to this number, while still not exceeding registry_pull_qps. The value must not be a negative number. Updating this field may impact scalability by changing the amount of traffic produced by image pulls. Defaults to 10.

    registry_pull_qps int

    The limit of registry pulls per second. Setting this value to 0 means no limit. Updating this field may impact scalability by changing the amount of traffic produced by image pulls. Defaults to 5.

    serialize_image_pulls_disabled bool

    Prevents the Kubelet from pulling multiple images at a time. We recommend not changing the default value on nodes that run docker daemon with version < 1.9 or an Another Union File System (Aufs) storage backend. Issue https://github.com/kubernetes/kubernetes/issues/10959 has more details.

    registryBurst Number

    The maximum size of bursty pulls, temporarily allows pulls to burst to this number, while still not exceeding registry_pull_qps. The value must not be a negative number. Updating this field may impact scalability by changing the amount of traffic produced by image pulls. Defaults to 10.

    registryPullQps Number

    The limit of registry pulls per second. Setting this value to 0 means no limit. Updating this field may impact scalability by changing the amount of traffic produced by image pulls. Defaults to 5.

    serializeImagePullsDisabled Boolean

    Prevents the Kubelet from pulling multiple images at a time. We recommend not changing the default value on nodes that run docker daemon with version < 1.9 or an Another Union File System (Aufs) storage backend. Issue https://github.com/kubernetes/kubernetes/issues/10959 has more details.

    BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigNodeConfig, BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigNodeConfigArgs

    Labels Dictionary<string, string>

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    NodeIp string

    The default IPv4 address for SSH access and Kubernetes node. Example: 192.168.0.1

    Labels map[string]string

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    NodeIp string

    The default IPv4 address for SSH access and Kubernetes node. Example: 192.168.0.1

    labels Map<String,String>

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    nodeIp String

    The default IPv4 address for SSH access and Kubernetes node. Example: 192.168.0.1

    labels {[key: string]: string}

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    nodeIp string

    The default IPv4 address for SSH access and Kubernetes node. Example: 192.168.0.1

    labels Mapping[str, str]

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    node_ip str

    The default IPv4 address for SSH access and Kubernetes node. Example: 192.168.0.1

    labels Map<String>

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    nodeIp String

    The default IPv4 address for SSH access and Kubernetes node. Example: 192.168.0.1

    BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigTaint, BareMetalClusterLoadBalancerBgpLbConfigLoadBalancerNodePoolConfigNodePoolConfigTaintArgs

    Effect string

    Specifies the nodes operating system (default: LINUX). Possible values are: EFFECT_UNSPECIFIED, PREFER_NO_SCHEDULE, NO_EXECUTE.

    Key string

    Key associated with the effect.

    Value string

    Value associated with the effect.

    Effect string

    Specifies the nodes operating system (default: LINUX). Possible values are: EFFECT_UNSPECIFIED, PREFER_NO_SCHEDULE, NO_EXECUTE.

    Key string

    Key associated with the effect.

    Value string

    Value associated with the effect.

    effect String

    Specifies the nodes operating system (default: LINUX). Possible values are: EFFECT_UNSPECIFIED, PREFER_NO_SCHEDULE, NO_EXECUTE.

    key String

    Key associated with the effect.

    value String

    Value associated with the effect.

    effect string

    Specifies the nodes operating system (default: LINUX). Possible values are: EFFECT_UNSPECIFIED, PREFER_NO_SCHEDULE, NO_EXECUTE.

    key string

    Key associated with the effect.

    value string

    Value associated with the effect.

    effect str

    Specifies the nodes operating system (default: LINUX). Possible values are: EFFECT_UNSPECIFIED, PREFER_NO_SCHEDULE, NO_EXECUTE.

    key str

    Key associated with the effect.

    value str

    Value associated with the effect.

    effect String

    Specifies the nodes operating system (default: LINUX). Possible values are: EFFECT_UNSPECIFIED, PREFER_NO_SCHEDULE, NO_EXECUTE.

    key String

    Key associated with the effect.

    value String

    Value associated with the effect.

    BareMetalClusterLoadBalancerManualLbConfig, BareMetalClusterLoadBalancerManualLbConfigArgs

    Enabled bool

    Whether manual load balancing is enabled.

    Enabled bool

    Whether manual load balancing is enabled.

    enabled Boolean

    Whether manual load balancing is enabled.

    enabled boolean

    Whether manual load balancing is enabled.

    enabled bool

    Whether manual load balancing is enabled.

    enabled Boolean

    Whether manual load balancing is enabled.

    BareMetalClusterLoadBalancerMetalLbConfig, BareMetalClusterLoadBalancerMetalLbConfigArgs

    AddressPools List<BareMetalClusterLoadBalancerMetalLbConfigAddressPool>

    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.

    LoadBalancerNodePoolConfig BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfig

    Specifies the load balancer's node pool configuration. Structure is documented below.

    AddressPools []BareMetalClusterLoadBalancerMetalLbConfigAddressPool

    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.

    LoadBalancerNodePoolConfig BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfig

    Specifies the load balancer's node pool configuration. Structure is documented below.

    addressPools List<BareMetalClusterLoadBalancerMetalLbConfigAddressPool>

    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.

    loadBalancerNodePoolConfig BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfig

    Specifies the load balancer's node pool configuration. Structure is documented below.

    addressPools BareMetalClusterLoadBalancerMetalLbConfigAddressPool[]

    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.

    loadBalancerNodePoolConfig BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfig

    Specifies the load balancer's node pool configuration. Structure is documented below.

    address_pools Sequence[BareMetalClusterLoadBalancerMetalLbConfigAddressPool]

    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.

    load_balancer_node_pool_config BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfig

    Specifies the load balancer's node pool configuration. Structure is documented below.

    addressPools 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.

    loadBalancerNodePoolConfig Property Map

    Specifies the load balancer's node pool configuration. Structure is documented below.

    BareMetalClusterLoadBalancerMetalLbConfigAddressPool, BareMetalClusterLoadBalancerMetalLbConfigAddressPoolArgs

    Addresses 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 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.

    Addresses []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 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.

    addresses 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 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.

    addresses 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 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.

    addresses 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 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.

    addresses 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 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.

    BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfig, BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfigArgs

    NodePoolConfig BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfigNodePoolConfig

    The generic configuration for a node pool running a load balancer. Structure is documented below.

    NodePoolConfig BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfigNodePoolConfig

    The generic configuration for a node pool running a load balancer. Structure is documented below.

    nodePoolConfig BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfigNodePoolConfig

    The generic configuration for a node pool running a load balancer. Structure is documented below.

    nodePoolConfig BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfigNodePoolConfig

    The generic configuration for a node pool running a load balancer. Structure is documented below.

    node_pool_config BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfigNodePoolConfig

    The generic configuration for a node pool running a load balancer. Structure is documented below.

    nodePoolConfig Property Map

    The generic configuration for a node pool running a load balancer. Structure is documented below.

    BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfigNodePoolConfig, BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfigNodePoolConfigArgs

    Labels Dictionary<string, string>

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    NodeConfigs List<BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfigNodePoolConfigNodeConfig>

    The list of machine addresses in the Bare Metal Node Pool. Structure is documented below.

    OperatingSystem string

    Specifies the nodes operating system (default: LINUX).

    Taints List<BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfigNodePoolConfigTaint>

    The initial taints assigned to nodes of this node pool. Structure is documented below.

    Labels map[string]string

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    NodeConfigs []BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfigNodePoolConfigNodeConfig

    The list of machine addresses in the Bare Metal Node Pool. Structure is documented below.

    OperatingSystem string

    Specifies the nodes operating system (default: LINUX).

    Taints []BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfigNodePoolConfigTaint

    The initial taints assigned to nodes of this node pool. Structure is documented below.

    labels Map<String,String>

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    nodeConfigs List<BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfigNodePoolConfigNodeConfig>

    The list of machine addresses in the Bare Metal Node Pool. Structure is documented below.

    operatingSystem String

    Specifies the nodes operating system (default: LINUX).

    taints List<BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfigNodePoolConfigTaint>

    The initial taints assigned to nodes of this node pool. Structure is documented below.

    labels {[key: string]: string}

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    nodeConfigs BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfigNodePoolConfigNodeConfig[]

    The list of machine addresses in the Bare Metal Node Pool. Structure is documented below.

    operatingSystem string

    Specifies the nodes operating system (default: LINUX).

    taints BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfigNodePoolConfigTaint[]

    The initial taints assigned to nodes of this node pool. Structure is documented below.

    labels Mapping[str, str]

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    node_configs Sequence[BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfigNodePoolConfigNodeConfig]

    The list of machine addresses in the Bare Metal Node Pool. Structure is documented below.

    operating_system str

    Specifies the nodes operating system (default: LINUX).

    taints Sequence[BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfigNodePoolConfigTaint]

    The initial taints assigned to nodes of this node pool. Structure is documented below.

    labels Map<String>

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    nodeConfigs List<Property Map>

    The list of machine addresses in the Bare Metal Node Pool. Structure is documented below.

    operatingSystem String

    Specifies the nodes operating system (default: LINUX).

    taints List<Property Map>

    The initial taints assigned to nodes of this node pool. Structure is documented below.

    BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfigNodePoolConfigNodeConfig, BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfigNodePoolConfigNodeConfigArgs

    Labels Dictionary<string, string>

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    NodeIp string

    The default IPv4 address for SSH access and Kubernetes node. Example: 192.168.0.1

    Labels map[string]string

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    NodeIp string

    The default IPv4 address for SSH access and Kubernetes node. Example: 192.168.0.1

    labels Map<String,String>

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    nodeIp String

    The default IPv4 address for SSH access and Kubernetes node. Example: 192.168.0.1

    labels {[key: string]: string}

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    nodeIp string

    The default IPv4 address for SSH access and Kubernetes node. Example: 192.168.0.1

    labels Mapping[str, str]

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    node_ip str

    The default IPv4 address for SSH access and Kubernetes node. Example: 192.168.0.1

    labels Map<String>

    The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: http://kubernetes.io/v1.1/docs/user-guide/labels.html An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

    nodeIp String

    The default IPv4 address for SSH access and Kubernetes node. Example: 192.168.0.1

    BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfigNodePoolConfigTaint, BareMetalClusterLoadBalancerMetalLbConfigLoadBalancerNodePoolConfigNodePoolConfigTaintArgs

    Effect string

    Specifies the nodes operating system (default: LINUX). Possible values are: EFFECT_UNSPECIFIED, PREFER_NO_SCHEDULE, NO_EXECUTE.

    Key string

    Key associated with the effect.

    Value string

    Value associated with the effect.

    Effect string

    Specifies the nodes operating system (default: LINUX). Possible values are: EFFECT_UNSPECIFIED, PREFER_NO_SCHEDULE, NO_EXECUTE.

    Key string

    Key associated with the effect.

    Value string

    Value associated with the effect.

    effect String

    Specifies the nodes operating system (default: LINUX). Possible values are: EFFECT_UNSPECIFIED, PREFER_NO_SCHEDULE, NO_EXECUTE.

    key String

    Key associated with the effect.

    value String

    Value associated with the effect.

    effect string

    Specifies the nodes operating system (default: LINUX). Possible values are: EFFECT_UNSPECIFIED, PREFER_NO_SCHEDULE, NO_EXECUTE.

    key string

    Key associated with the effect.

    value string

    Value associated with the effect.

    effect str

    Specifies the nodes operating system (default: LINUX). Possible values are: EFFECT_UNSPECIFIED, PREFER_NO_SCHEDULE, NO_EXECUTE.

    key str

    Key associated with the effect.

    value str

    Value associated with the effect.

    effect String

    Specifies the nodes operating system (default: LINUX). Possible values are: EFFECT_UNSPECIFIED, PREFER_NO_SCHEDULE, NO_EXECUTE.

    key String

    Key associated with the effect.

    value String

    Value associated with the effect.

    BareMetalClusterLoadBalancerPortConfig, BareMetalClusterLoadBalancerPortConfigArgs

    ControlPlaneLoadBalancerPort int

    The port that control plane hosted load balancers will listen on.

    ControlPlaneLoadBalancerPort int

    The port that control plane hosted load balancers will listen on.

    controlPlaneLoadBalancerPort Integer

    The port that control plane hosted load balancers will listen on.

    controlPlaneLoadBalancerPort number

    The port that control plane hosted load balancers will listen on.

    control_plane_load_balancer_port int

    The port that control plane hosted load balancers will listen on.

    controlPlaneLoadBalancerPort Number

    The port that control plane hosted load balancers will listen on.

    BareMetalClusterLoadBalancerVipConfig, BareMetalClusterLoadBalancerVipConfigArgs

    ControlPlaneVip string

    The VIP which you previously set aside for the Kubernetes API of this Bare Metal User Cluster.

    IngressVip string

    The VIP which you previously set aside for ingress traffic into this Bare Metal User Cluster.

    ControlPlaneVip string

    The VIP which you previously set aside for the Kubernetes API of this Bare Metal User Cluster.

    IngressVip string

    The VIP which you previously set aside for ingress traffic into this Bare Metal User Cluster.

    controlPlaneVip String

    The VIP which you previously set aside for the Kubernetes API of this Bare Metal User Cluster.

    ingressVip String

    The VIP which you previously set aside for ingress traffic into this Bare Metal User Cluster.

    controlPlaneVip string

    The VIP which you previously set aside for the Kubernetes API of this Bare Metal User Cluster.

    ingressVip string

    The VIP which you previously set aside for ingress traffic into this Bare Metal User Cluster.

    control_plane_vip str

    The VIP which you previously set aside for the Kubernetes API of this Bare Metal User Cluster.

    ingress_vip str

    The VIP which you previously set aside for ingress traffic into this Bare Metal User Cluster.

    controlPlaneVip String

    The VIP which you previously set aside for the Kubernetes API of this Bare Metal User Cluster.

    ingressVip String

    The VIP which you previously set aside for ingress traffic into this Bare Metal User Cluster.

    BareMetalClusterMaintenanceConfig, BareMetalClusterMaintenanceConfigArgs

    MaintenanceAddressCidrBlocks List<string>

    All IPv4 address from these ranges will be placed into maintenance mode. Nodes in maintenance mode will be cordoned and drained. When both of these are true, the "baremetal.cluster.gke.io/maintenance" annotation will be set on the node resource.

    MaintenanceAddressCidrBlocks []string

    All IPv4 address from these ranges will be placed into maintenance mode. Nodes in maintenance mode will be cordoned and drained. When both of these are true, the "baremetal.cluster.gke.io/maintenance" annotation will be set on the node resource.

    maintenanceAddressCidrBlocks List<String>

    All IPv4 address from these ranges will be placed into maintenance mode. Nodes in maintenance mode will be cordoned and drained. When both of these are true, the "baremetal.cluster.gke.io/maintenance" annotation will be set on the node resource.

    maintenanceAddressCidrBlocks string[]

    All IPv4 address from these ranges will be placed into maintenance mode. Nodes in maintenance mode will be cordoned and drained. When both of these are true, the "baremetal.cluster.gke.io/maintenance" annotation will be set on the node resource.

    maintenance_address_cidr_blocks Sequence[str]

    All IPv4 address from these ranges will be placed into maintenance mode. Nodes in maintenance mode will be cordoned and drained. When both of these are true, the "baremetal.cluster.gke.io/maintenance" annotation will be set on the node resource.

    maintenanceAddressCidrBlocks List<String>

    All IPv4 address from these ranges will be placed into maintenance mode. Nodes in maintenance mode will be cordoned and drained. When both of these are true, the "baremetal.cluster.gke.io/maintenance" annotation will be set on the node resource.

    BareMetalClusterNetworkConfig, BareMetalClusterNetworkConfigArgs

    AdvancedNetworking bool

    Enables the use of advanced Anthos networking features, such as Bundled Load Balancing with BGP or the egress NAT gateway. Setting configuration for advanced networking features will automatically set this flag.

    IslandModeCidr BareMetalClusterNetworkConfigIslandModeCidr

    A nested object resource Structure is documented below.

    MultipleNetworkInterfacesConfig BareMetalClusterNetworkConfigMultipleNetworkInterfacesConfig

    Configuration for multiple network interfaces. Structure is documented below.

    SrIovConfig BareMetalClusterNetworkConfigSrIovConfig

    Configuration for SR-IOV. Structure is documented below.

    AdvancedNetworking bool

    Enables the use of advanced Anthos networking features, such as Bundled Load Balancing with BGP or the egress NAT gateway. Setting configuration for advanced networking features will automatically set this flag.

    IslandModeCidr BareMetalClusterNetworkConfigIslandModeCidr

    A nested object resource Structure is documented below.

    MultipleNetworkInterfacesConfig BareMetalClusterNetworkConfigMultipleNetworkInterfacesConfig

    Configuration for multiple network interfaces. Structure is documented below.

    SrIovConfig BareMetalClusterNetworkConfigSrIovConfig

    Configuration for SR-IOV. Structure is documented below.

    advancedNetworking Boolean

    Enables the use of advanced Anthos networking features, such as Bundled Load Balancing with BGP or the egress NAT gateway. Setting configuration for advanced networking features will automatically set this flag.

    islandModeCidr BareMetalClusterNetworkConfigIslandModeCidr

    A nested object resource Structure is documented below.

    multipleNetworkInterfacesConfig BareMetalClusterNetworkConfigMultipleNetworkInterfacesConfig

    Configuration for multiple network interfaces. Structure is documented below.

    srIovConfig BareMetalClusterNetworkConfigSrIovConfig

    Configuration for SR-IOV. Structure is documented below.

    advancedNetworking boolean

    Enables the use of advanced Anthos networking features, such as Bundled Load Balancing with BGP or the egress NAT gateway. Setting configuration for advanced networking features will automatically set this flag.

    islandModeCidr BareMetalClusterNetworkConfigIslandModeCidr

    A nested object resource Structure is documented below.

    multipleNetworkInterfacesConfig BareMetalClusterNetworkConfigMultipleNetworkInterfacesConfig

    Configuration for multiple network interfaces. Structure is documented below.

    srIovConfig BareMetalClusterNetworkConfigSrIovConfig

    Configuration for SR-IOV. Structure is documented below.

    advanced_networking bool

    Enables the use of advanced Anthos networking features, such as Bundled Load Balancing with BGP or the egress NAT gateway. Setting configuration for advanced networking features will automatically set this flag.

    island_mode_cidr BareMetalClusterNetworkConfigIslandModeCidr

    A nested object resource Structure is documented below.

    multiple_network_interfaces_config BareMetalClusterNetworkConfigMultipleNetworkInterfacesConfig

    Configuration for multiple network interfaces. Structure is documented below.

    sr_iov_config BareMetalClusterNetworkConfigSrIovConfig

    Configuration for SR-IOV. Structure is documented below.

    advancedNetworking Boolean

    Enables the use of advanced Anthos networking features, such as Bundled Load Balancing with BGP or the egress NAT gateway. Setting configuration for advanced networking features will automatically set this flag.

    islandModeCidr Property Map

    A nested object resource Structure is documented below.

    multipleNetworkInterfacesConfig Property Map

    Configuration for multiple network interfaces. Structure is documented below.

    srIovConfig Property Map

    Configuration for SR-IOV. Structure is documented below.

    BareMetalClusterNetworkConfigIslandModeCidr, BareMetalClusterNetworkConfigIslandModeCidrArgs

    PodAddressCidrBlocks List<string>

    All pods in the cluster are assigned an RFC1918 IPv4 address from these ranges. This field cannot be changed after creation.

    ServiceAddressCidrBlocks List<string>

    All services in the cluster are assigned an RFC1918 IPv4 address from these ranges. This field cannot be changed after creation.

    PodAddressCidrBlocks []string

    All pods in the cluster are assigned an RFC1918 IPv4 address from these ranges. This field cannot be changed after creation.

    ServiceAddressCidrBlocks []string

    All services in the cluster are assigned an RFC1918 IPv4 address from these ranges. This field cannot be changed after creation.

    podAddressCidrBlocks List<String>

    All pods in the cluster are assigned an RFC1918 IPv4 address from these ranges. This field cannot be changed after creation.

    serviceAddressCidrBlocks List<String>

    All services in the cluster are assigned an RFC1918 IPv4 address from these ranges. This field cannot be changed after creation.

    podAddressCidrBlocks string[]

    All pods in the cluster are assigned an RFC1918 IPv4 address from these ranges. This field cannot be changed after creation.

    serviceAddressCidrBlocks string[]

    All services in the cluster are assigned an RFC1918 IPv4 address from these ranges. This field cannot be changed after creation.

    pod_address_cidr_blocks Sequence[str]

    All pods in the cluster are assigned an RFC1918 IPv4 address from these ranges. This field cannot be changed after creation.

    service_address_cidr_blocks Sequence[str]

    All services in the cluster are assigned an RFC1918 IPv4 address from these ranges. This field cannot be changed after creation.

    podAddressCidrBlocks List<String>

    All pods in the cluster are assigned an RFC1918 IPv4 address from these ranges. This field cannot be changed after creation.

    serviceAddressCidrBlocks List<String>

    All services in the cluster are assigned an RFC1918 IPv4 address from these ranges. This field cannot be changed after creation.

    BareMetalClusterNetworkConfigMultipleNetworkInterfacesConfig, BareMetalClusterNetworkConfigMultipleNetworkInterfacesConfigArgs

    Enabled bool

    Whether to enable multiple network interfaces for your pods. When set network_config.advanced_networking is automatically set to true.

    Enabled bool

    Whether to enable multiple network interfaces for your pods. When set network_config.advanced_networking is automatically set to true.

    enabled Boolean

    Whether to enable multiple network interfaces for your pods. When set network_config.advanced_networking is automatically set to true.

    enabled boolean

    Whether to enable multiple network interfaces for your pods. When set network_config.advanced_networking is automatically set to true.

    enabled bool

    Whether to enable multiple network interfaces for your pods. When set network_config.advanced_networking is automatically set to true.

    enabled Boolean

    Whether to enable multiple network interfaces for your pods. When set network_config.advanced_networking is automatically set to true.

    BareMetalClusterNetworkConfigSrIovConfig, BareMetalClusterNetworkConfigSrIovConfigArgs

    Enabled bool

    Whether to install the SR-IOV operator.

    Enabled bool

    Whether to install the SR-IOV operator.

    enabled Boolean

    Whether to install the SR-IOV operator.

    enabled boolean

    Whether to install the SR-IOV operator.

    enabled bool

    Whether to install the SR-IOV operator.

    enabled Boolean

    Whether to install the SR-IOV operator.

    BareMetalClusterNodeAccessConfig, BareMetalClusterNodeAccessConfigArgs

    LoginUser string

    LoginUser is the user name used to access node machines. It defaults to "root" if not set.

    LoginUser string

    LoginUser is the user name used to access node machines. It defaults to "root" if not set.

    loginUser String

    LoginUser is the user name used to access node machines. It defaults to "root" if not set.

    loginUser string

    LoginUser is the user name used to access node machines. It defaults to "root" if not set.

    login_user str

    LoginUser is the user name used to access node machines. It defaults to "root" if not set.

    loginUser String

    LoginUser is the user name used to access node machines. It defaults to "root" if not set.

    BareMetalClusterNodeConfig, BareMetalClusterNodeConfigArgs

    ContainerRuntime string

    The available runtimes that can be used to run containers in a Bare Metal User Cluster. Possible values are: CONTAINER_RUNTIME_UNSPECIFIED, DOCKER, CONTAINERD.

    MaxPodsPerNode int

    The maximum number of pods a node can run. The size of the CIDR range assigned to the node will be derived from this parameter.

    ContainerRuntime string

    The available runtimes that can be used to run containers in a Bare Metal User Cluster. Possible values are: CONTAINER_RUNTIME_UNSPECIFIED, DOCKER, CONTAINERD.

    MaxPodsPerNode int

    The maximum number of pods a node can run. The size of the CIDR range assigned to the node will be derived from this parameter.

    containerRuntime String

    The available runtimes that can be used to run containers in a Bare Metal User Cluster. Possible values are: CONTAINER_RUNTIME_UNSPECIFIED, DOCKER, CONTAINERD.

    maxPodsPerNode Integer

    The maximum number of pods a node can run. The size of the CIDR range assigned to the node will be derived from this parameter.

    containerRuntime string

    The available runtimes that can be used to run containers in a Bare Metal User Cluster. Possible values are: CONTAINER_RUNTIME_UNSPECIFIED, DOCKER, CONTAINERD.

    maxPodsPerNode number

    The maximum number of pods a node can run. The size of the CIDR range assigned to the node will be derived from this parameter.

    container_runtime str

    The available runtimes that can be used to run containers in a Bare Metal User Cluster. Possible values are: CONTAINER_RUNTIME_UNSPECIFIED, DOCKER, CONTAINERD.

    max_pods_per_node int

    The maximum number of pods a node can run. The size of the CIDR range assigned to the node will be derived from this parameter.

    containerRuntime String

    The available runtimes that can be used to run containers in a Bare Metal User Cluster. Possible values are: CONTAINER_RUNTIME_UNSPECIFIED, DOCKER, CONTAINERD.

    maxPodsPerNode Number

    The maximum number of pods a node can run. The size of the CIDR range assigned to the node will be derived from this parameter.

    BareMetalClusterOsEnvironmentConfig, BareMetalClusterOsEnvironmentConfigArgs

    PackageRepoExcluded bool

    Whether the package repo should not be included when initializing bare metal machines.

    PackageRepoExcluded bool

    Whether the package repo should not be included when initializing bare metal machines.

    packageRepoExcluded Boolean

    Whether the package repo should not be included when initializing bare metal machines.

    packageRepoExcluded boolean

    Whether the package repo should not be included when initializing bare metal machines.

    package_repo_excluded bool

    Whether the package repo should not be included when initializing bare metal machines.

    packageRepoExcluded Boolean

    Whether the package repo should not be included when initializing bare metal machines.

    BareMetalClusterProxy, BareMetalClusterProxyArgs

    Uri string

    Specifies the address of your proxy server. Examples: http://domain WARNING: Do not provide credentials in the format http://(username:password@)domain these will be rejected by the server.

    NoProxies List<string>

    A list of IPs, hostnames, and domains that should skip the proxy. Examples: ["127.0.0.1", "example.com", ".corp", "localhost"].

    Uri string

    Specifies the address of your proxy server. Examples: http://domain WARNING: Do not provide credentials in the format http://(username:password@)domain these will be rejected by the server.

    NoProxies []string

    A list of IPs, hostnames, and domains that should skip the proxy. Examples: ["127.0.0.1", "example.com", ".corp", "localhost"].

    uri String

    Specifies the address of your proxy server. Examples: http://domain WARNING: Do not provide credentials in the format http://(username:password@)domain these will be rejected by the server.

    noProxies List<String>

    A list of IPs, hostnames, and domains that should skip the proxy. Examples: ["127.0.0.1", "example.com", ".corp", "localhost"].

    uri string

    Specifies the address of your proxy server. Examples: http://domain WARNING: Do not provide credentials in the format http://(username:password@)domain these will be rejected by the server.

    noProxies string[]

    A list of IPs, hostnames, and domains that should skip the proxy. Examples: ["127.0.0.1", "example.com", ".corp", "localhost"].

    uri str

    Specifies the address of your proxy server. Examples: http://domain WARNING: Do not provide credentials in the format http://(username:password@)domain these will be rejected by the server.

    no_proxies Sequence[str]

    A list of IPs, hostnames, and domains that should skip the proxy. Examples: ["127.0.0.1", "example.com", ".corp", "localhost"].

    uri String

    Specifies the address of your proxy server. Examples: http://domain WARNING: Do not provide credentials in the format http://(username:password@)domain these will be rejected by the server.

    noProxies List<String>

    A list of IPs, hostnames, and domains that should skip the proxy. Examples: ["127.0.0.1", "example.com", ".corp", "localhost"].

    BareMetalClusterSecurityConfig, BareMetalClusterSecurityConfigArgs

    Authorization BareMetalClusterSecurityConfigAuthorization

    Configures user access to the Bare Metal User cluster. Structure is documented below.

    Authorization BareMetalClusterSecurityConfigAuthorization

    Configures user access to the Bare Metal User cluster. Structure is documented below.

    authorization BareMetalClusterSecurityConfigAuthorization

    Configures user access to the Bare Metal User cluster. Structure is documented below.

    authorization BareMetalClusterSecurityConfigAuthorization

    Configures user access to the Bare Metal User cluster. Structure is documented below.

    authorization BareMetalClusterSecurityConfigAuthorization

    Configures user access to the Bare Metal User cluster. Structure is documented below.

    authorization Property Map

    Configures user access to the Bare Metal User cluster. Structure is documented below.

    BareMetalClusterSecurityConfigAuthorization, BareMetalClusterSecurityConfigAuthorizationArgs

    AdminUsers List<BareMetalClusterSecurityConfigAuthorizationAdminUser>

    Users that will be granted the cluster-admin role on the cluster, providing full access to the cluster. Structure is documented below.

    AdminUsers []BareMetalClusterSecurityConfigAuthorizationAdminUser

    Users that will be granted the cluster-admin role on the cluster, providing full access to the cluster. Structure is documented below.

    adminUsers List<BareMetalClusterSecurityConfigAuthorizationAdminUser>

    Users that will be granted the cluster-admin role on the cluster, providing full access to the cluster. Structure is documented below.

    adminUsers BareMetalClusterSecurityConfigAuthorizationAdminUser[]

    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[BareMetalClusterSecurityConfigAuthorizationAdminUser]

    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.

    BareMetalClusterSecurityConfigAuthorizationAdminUser, BareMetalClusterSecurityConfigAuthorizationAdminUserArgs

    Username string

    The name of the user, e.g. my-gcp-id@gmail.com.

    Username string

    The name of the user, e.g. my-gcp-id@gmail.com.

    username String

    The name of the user, e.g. my-gcp-id@gmail.com.

    username string

    The name of the user, e.g. my-gcp-id@gmail.com.

    username str

    The name of the user, e.g. my-gcp-id@gmail.com.

    username String

    The name of the user, e.g. my-gcp-id@gmail.com.

    BareMetalClusterStatus, BareMetalClusterStatusArgs

    Conditions List<BareMetalClusterStatusCondition>

    (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 []BareMetalClusterStatusCondition

    (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<BareMetalClusterStatusCondition>

    (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 BareMetalClusterStatusCondition[]

    (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[BareMetalClusterStatusCondition]

    (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.

    BareMetalClusterStatusCondition, BareMetalClusterStatusConditionArgs

    LastTransitionTime string

    (Output) Last time the condition transit from one status to another.

    Message string

    Human-readable message indicating details about last transition.

    Reason string

    (Output) A human-readable message of the check failure.

    State string

    (Output) The lifecycle state of the condition.

    Type string

    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

    Human-readable message indicating details about last transition.

    Reason string

    (Output) A human-readable message of the check failure.

    State string

    (Output) The lifecycle state of the condition.

    Type string

    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

    Human-readable message indicating details about last transition.

    reason String

    (Output) A human-readable message of the check failure.

    state String

    (Output) The lifecycle state of the condition.

    type String

    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

    Human-readable message indicating details about last transition.

    reason string

    (Output) A human-readable message of the check failure.

    state string

    (Output) The lifecycle state of the condition.

    type string

    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

    Human-readable message indicating details about last transition.

    reason str

    (Output) A human-readable message of the check failure.

    state str

    (Output) The lifecycle state of the condition.

    type str

    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

    Human-readable message indicating details about last transition.

    reason String

    (Output) A human-readable message of the check failure.

    state String

    (Output) The lifecycle state of the condition.

    type String

    Type of the condition. (e.g., ClusterRunning, NodePoolRunning or ServerSidePreflightReady)

    BareMetalClusterStorage, BareMetalClusterStorageArgs

    LvpNodeMountsConfig BareMetalClusterStorageLvpNodeMountsConfig

    Specifies the config for local PersistentVolumes backed by mounted node disks. These disks need to be formatted and mounted by the user, which can be done before or after cluster creation. Structure is documented below.

    LvpShareConfig BareMetalClusterStorageLvpShareConfig

    Specifies the config for local PersistentVolumes backed by subdirectories in a shared filesystem. These subdirectores are automatically created during cluster creation. Structure is documented below.

    LvpNodeMountsConfig BareMetalClusterStorageLvpNodeMountsConfig

    Specifies the config for local PersistentVolumes backed by mounted node disks. These disks need to be formatted and mounted by the user, which can be done before or after cluster creation. Structure is documented below.

    LvpShareConfig BareMetalClusterStorageLvpShareConfig

    Specifies the config for local PersistentVolumes backed by subdirectories in a shared filesystem. These subdirectores are automatically created during cluster creation. Structure is documented below.

    lvpNodeMountsConfig BareMetalClusterStorageLvpNodeMountsConfig

    Specifies the config for local PersistentVolumes backed by mounted node disks. These disks need to be formatted and mounted by the user, which can be done before or after cluster creation. Structure is documented below.

    lvpShareConfig BareMetalClusterStorageLvpShareConfig

    Specifies the config for local PersistentVolumes backed by subdirectories in a shared filesystem. These subdirectores are automatically created during cluster creation. Structure is documented below.

    lvpNodeMountsConfig BareMetalClusterStorageLvpNodeMountsConfig

    Specifies the config for local PersistentVolumes backed by mounted node disks. These disks need to be formatted and mounted by the user, which can be done before or after cluster creation. Structure is documented below.

    lvpShareConfig BareMetalClusterStorageLvpShareConfig

    Specifies the config for local PersistentVolumes backed by subdirectories in a shared filesystem. These subdirectores are automatically created during cluster creation. Structure is documented below.

    lvp_node_mounts_config BareMetalClusterStorageLvpNodeMountsConfig

    Specifies the config for local PersistentVolumes backed by mounted node disks. These disks need to be formatted and mounted by the user, which can be done before or after cluster creation. Structure is documented below.

    lvp_share_config BareMetalClusterStorageLvpShareConfig

    Specifies the config for local PersistentVolumes backed by subdirectories in a shared filesystem. These subdirectores are automatically created during cluster creation. Structure is documented below.

    lvpNodeMountsConfig Property Map

    Specifies the config for local PersistentVolumes backed by mounted node disks. These disks need to be formatted and mounted by the user, which can be done before or after cluster creation. Structure is documented below.

    lvpShareConfig Property Map

    Specifies the config for local PersistentVolumes backed by subdirectories in a shared filesystem. These subdirectores are automatically created during cluster creation. Structure is documented below.

    BareMetalClusterStorageLvpNodeMountsConfig, BareMetalClusterStorageLvpNodeMountsConfigArgs

    Path string

    The host machine path.

    StorageClass string

    The StorageClass name that PVs will be created with.


    Path string

    The host machine path.

    StorageClass string

    The StorageClass name that PVs will be created with.


    path String

    The host machine path.

    storageClass String

    The StorageClass name that PVs will be created with.


    path string

    The host machine path.

    storageClass string

    The StorageClass name that PVs will be created with.


    path str

    The host machine path.

    storage_class str

    The StorageClass name that PVs will be created with.


    path String

    The host machine path.

    storageClass String

    The StorageClass name that PVs will be created with.


    BareMetalClusterStorageLvpShareConfig, BareMetalClusterStorageLvpShareConfigArgs

    LvpConfig BareMetalClusterStorageLvpShareConfigLvpConfig

    Defines the machine path and storage class for the LVP Share. Structure is documented below.

    SharedPathPvCount int

    The number of subdirectories to create under path.

    LvpConfig BareMetalClusterStorageLvpShareConfigLvpConfig

    Defines the machine path and storage class for the LVP Share. Structure is documented below.

    SharedPathPvCount int

    The number of subdirectories to create under path.

    lvpConfig BareMetalClusterStorageLvpShareConfigLvpConfig

    Defines the machine path and storage class for the LVP Share. Structure is documented below.

    sharedPathPvCount Integer

    The number of subdirectories to create under path.

    lvpConfig BareMetalClusterStorageLvpShareConfigLvpConfig

    Defines the machine path and storage class for the LVP Share. Structure is documented below.

    sharedPathPvCount number

    The number of subdirectories to create under path.

    lvp_config BareMetalClusterStorageLvpShareConfigLvpConfig

    Defines the machine path and storage class for the LVP Share. Structure is documented below.

    shared_path_pv_count int

    The number of subdirectories to create under path.

    lvpConfig Property Map

    Defines the machine path and storage class for the LVP Share. Structure is documented below.

    sharedPathPvCount Number

    The number of subdirectories to create under path.

    BareMetalClusterStorageLvpShareConfigLvpConfig, BareMetalClusterStorageLvpShareConfigLvpConfigArgs

    Path string

    The host machine path.

    StorageClass string

    The StorageClass name that PVs will be created with.

    Path string

    The host machine path.

    StorageClass string

    The StorageClass name that PVs will be created with.

    path String

    The host machine path.

    storageClass String

    The StorageClass name that PVs will be created with.

    path string

    The host machine path.

    storageClass string

    The StorageClass name that PVs will be created with.

    path str

    The host machine path.

    storage_class str

    The StorageClass name that PVs will be created with.

    path String

    The host machine path.

    storageClass String

    The StorageClass name that PVs will be created with.

    BareMetalClusterUpgradePolicy, BareMetalClusterUpgradePolicyArgs

    Policy string

    Specifies which upgrade policy to use. Possible values are: SERIAL, CONCURRENT.

    Policy string

    Specifies which upgrade policy to use. Possible values are: SERIAL, CONCURRENT.

    policy String

    Specifies which upgrade policy to use. Possible values are: SERIAL, CONCURRENT.

    policy string

    Specifies which upgrade policy to use. Possible values are: SERIAL, CONCURRENT.

    policy str

    Specifies which upgrade policy to use. Possible values are: SERIAL, CONCURRENT.

    policy String

    Specifies which upgrade policy to use. Possible values are: SERIAL, CONCURRENT.

    BareMetalClusterValidationCheck, BareMetalClusterValidationCheckArgs

    Options string

    (Output) Options used for the validation check.

    Scenario string

    (Output) The scenario when the preflight checks were run..

    Statuses List<BareMetalClusterValidationCheckStatus>

    (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 []BareMetalClusterValidationCheckStatus

    (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<BareMetalClusterValidationCheckStatus>

    (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 BareMetalClusterValidationCheckStatus[]

    (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[BareMetalClusterValidationCheckStatus]

    (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.

    BareMetalClusterValidationCheckStatus, BareMetalClusterValidationCheckStatusArgs

    Results List<BareMetalClusterValidationCheckStatusResult>

    (Output) Individual checks which failed as part of the Preflight check execution. Structure is documented below.

    Results []BareMetalClusterValidationCheckStatusResult

    (Output) Individual checks which failed as part of the Preflight check execution. Structure is documented below.

    results List<BareMetalClusterValidationCheckStatusResult>

    (Output) Individual checks which failed as part of the Preflight check execution. Structure is documented below.

    results BareMetalClusterValidationCheckStatusResult[]

    (Output) Individual checks which failed as part of the Preflight check execution. Structure is documented below.

    results Sequence[BareMetalClusterValidationCheckStatusResult]

    (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.

    BareMetalClusterValidationCheckStatusResult, BareMetalClusterValidationCheckStatusResultArgs

    Category string

    (Output) The category of the validation.

    Description string

    A human readable description of this Bare Metal User Cluster.

    Details string

    (Output) Detailed failure information, which might be unformatted.

    Options string

    (Output) Options used for the validation check.

    Reason string

    (Output) A human-readable message of the check failure.

    Category string

    (Output) The category of the validation.

    Description string

    A human readable description of this Bare Metal User Cluster.

    Details string

    (Output) Detailed failure information, which might be unformatted.

    Options string

    (Output) Options used for the validation check.

    Reason string

    (Output) A human-readable message of the check failure.

    category String

    (Output) The category of the validation.

    description String

    A human readable description of this Bare Metal User Cluster.

    details String

    (Output) Detailed failure information, which might be unformatted.

    options String

    (Output) Options used for the validation check.

    reason String

    (Output) A human-readable message of the check failure.

    category string

    (Output) The category of the validation.

    description string

    A human readable description of this Bare Metal User Cluster.

    details string

    (Output) Detailed failure information, which might be unformatted.

    options string

    (Output) Options used for the validation check.

    reason string

    (Output) A human-readable message of the check failure.

    category str

    (Output) The category of the validation.

    description str

    A human readable description of this Bare Metal User Cluster.

    details str

    (Output) Detailed failure information, which might be unformatted.

    options str

    (Output) Options used for the validation check.

    reason str

    (Output) A human-readable message of the check failure.

    category String

    (Output) The category of the validation.

    description String

    A human readable description of this Bare Metal User Cluster.

    details String

    (Output) Detailed failure information, which might be unformatted.

    options String

    (Output) Options used for the validation check.

    reason String

    (Output) A human-readable message of the check failure.

    Import

    BareMetalCluster can be imported using any of these accepted formats* projects/{{project}}/locations/{{location}}/bareMetalClusters/{{name}} * {{project}}/{{location}}/{{name}} * {{location}}/{{name}} In Terraform v1.5.0 and later, use an import block to import BareMetalCluster using one of the formats above. For exampletf import {

    id = “projects/{{project}}/locations/{{location}}/bareMetalClusters/{{name}}”

    to = google_gkeonprem_bare_metal_cluster.default }

     $ pulumi import gcp:gkeonprem/bareMetalCluster:BareMetalCluster When using the [`terraform import` command](https://developer.hashicorp.com/terraform/cli/commands/import), BareMetalCluster can be imported using one of the formats above. For example
    
     $ pulumi import gcp:gkeonprem/bareMetalCluster:BareMetalCluster default projects/{{project}}/locations/{{location}}/bareMetalClusters/{{name}}
    
     $ pulumi import gcp:gkeonprem/bareMetalCluster:BareMetalCluster default {{project}}/{{location}}/{{name}}
    
     $ pulumi import gcp:gkeonprem/bareMetalCluster:BareMetalCluster default {{location}}/{{name}}
    

    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.

    gcp logo
    Google Cloud Classic v7.2.1 published on Wednesday, Nov 22, 2023 by Pulumi