gcp.edgecontainer.Cluster
Explore with Pulumi AI
Cluster contains information about a Google Distributed Cloud Edge Kubernetes cluster.
To get more information about Cluster, see:
- API documentation
- How-to Guides
Example Usage
Edgecontainer Cluster
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const project = gcp.organizations.getProject({});
const _default = new gcp.edgecontainer.Cluster("default", {
    name: "basic-cluster",
    location: "us-central1",
    authorization: {
        adminUsers: {
            username: "admin@hashicorptest.com",
        },
    },
    networking: {
        clusterIpv4CidrBlocks: ["10.0.0.0/16"],
        servicesIpv4CidrBlocks: ["10.1.0.0/16"],
    },
    fleet: {
        project: project.then(project => `projects/${project.number}`),
    },
    labels: {
        my_key: "my_val",
        other_key: "other_val",
    },
});
import pulumi
import pulumi_gcp as gcp
project = gcp.organizations.get_project()
default = gcp.edgecontainer.Cluster("default",
    name="basic-cluster",
    location="us-central1",
    authorization={
        "admin_users": {
            "username": "admin@hashicorptest.com",
        },
    },
    networking={
        "cluster_ipv4_cidr_blocks": ["10.0.0.0/16"],
        "services_ipv4_cidr_blocks": ["10.1.0.0/16"],
    },
    fleet={
        "project": f"projects/{project.number}",
    },
    labels={
        "my_key": "my_val",
        "other_key": "other_val",
    })
package main
import (
	"fmt"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/edgecontainer"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		project, err := organizations.LookupProject(ctx, &organizations.LookupProjectArgs{}, nil)
		if err != nil {
			return err
		}
		_, err = edgecontainer.NewCluster(ctx, "default", &edgecontainer.ClusterArgs{
			Name:     pulumi.String("basic-cluster"),
			Location: pulumi.String("us-central1"),
			Authorization: &edgecontainer.ClusterAuthorizationArgs{
				AdminUsers: &edgecontainer.ClusterAuthorizationAdminUsersArgs{
					Username: pulumi.String("admin@hashicorptest.com"),
				},
			},
			Networking: &edgecontainer.ClusterNetworkingArgs{
				ClusterIpv4CidrBlocks: pulumi.StringArray{
					pulumi.String("10.0.0.0/16"),
				},
				ServicesIpv4CidrBlocks: pulumi.StringArray{
					pulumi.String("10.1.0.0/16"),
				},
			},
			Fleet: &edgecontainer.ClusterFleetArgs{
				Project: pulumi.Sprintf("projects/%v", project.Number),
			},
			Labels: pulumi.StringMap{
				"my_key":    pulumi.String("my_val"),
				"other_key": pulumi.String("other_val"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() => 
{
    var project = Gcp.Organizations.GetProject.Invoke();
    var @default = new Gcp.EdgeContainer.Cluster("default", new()
    {
        Name = "basic-cluster",
        Location = "us-central1",
        Authorization = new Gcp.EdgeContainer.Inputs.ClusterAuthorizationArgs
        {
            AdminUsers = new Gcp.EdgeContainer.Inputs.ClusterAuthorizationAdminUsersArgs
            {
                Username = "admin@hashicorptest.com",
            },
        },
        Networking = new Gcp.EdgeContainer.Inputs.ClusterNetworkingArgs
        {
            ClusterIpv4CidrBlocks = new[]
            {
                "10.0.0.0/16",
            },
            ServicesIpv4CidrBlocks = new[]
            {
                "10.1.0.0/16",
            },
        },
        Fleet = new Gcp.EdgeContainer.Inputs.ClusterFleetArgs
        {
            Project = $"projects/{project.Apply(getProjectResult => getProjectResult.Number)}",
        },
        Labels = 
        {
            { "my_key", "my_val" },
            { "other_key", "other_val" },
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.organizations.OrganizationsFunctions;
import com.pulumi.gcp.organizations.inputs.GetProjectArgs;
import com.pulumi.gcp.edgecontainer.Cluster;
import com.pulumi.gcp.edgecontainer.ClusterArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterAuthorizationArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterAuthorizationAdminUsersArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterNetworkingArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterFleetArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        final var project = OrganizationsFunctions.getProject();
        var default_ = new Cluster("default", ClusterArgs.builder()
            .name("basic-cluster")
            .location("us-central1")
            .authorization(ClusterAuthorizationArgs.builder()
                .adminUsers(ClusterAuthorizationAdminUsersArgs.builder()
                    .username("admin@hashicorptest.com")
                    .build())
                .build())
            .networking(ClusterNetworkingArgs.builder()
                .clusterIpv4CidrBlocks("10.0.0.0/16")
                .servicesIpv4CidrBlocks("10.1.0.0/16")
                .build())
            .fleet(ClusterFleetArgs.builder()
                .project(String.format("projects/%s", project.applyValue(getProjectResult -> getProjectResult.number())))
                .build())
            .labels(Map.ofEntries(
                Map.entry("my_key", "my_val"),
                Map.entry("other_key", "other_val")
            ))
            .build());
    }
}
resources:
  default:
    type: gcp:edgecontainer:Cluster
    properties:
      name: basic-cluster
      location: us-central1
      authorization:
        adminUsers:
          username: admin@hashicorptest.com
      networking:
        clusterIpv4CidrBlocks:
          - 10.0.0.0/16
        servicesIpv4CidrBlocks:
          - 10.1.0.0/16
      fleet:
        project: projects/${project.number}
      labels:
        my_key: my_val
        other_key: other_val
variables:
  project:
    fn::invoke:
      function: gcp:organizations:getProject
      arguments: {}
Edgecontainer Cluster With Maintenance Window
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const project = gcp.organizations.getProject({});
const _default = new gcp.edgecontainer.Cluster("default", {
    name: "cluster-with-maintenance",
    location: "us-central1",
    authorization: {
        adminUsers: {
            username: "admin@hashicorptest.com",
        },
    },
    networking: {
        clusterIpv4CidrBlocks: ["10.0.0.0/16"],
        servicesIpv4CidrBlocks: ["10.1.0.0/16"],
    },
    fleet: {
        project: project.then(project => `projects/${project.number}`),
    },
    maintenancePolicy: {
        window: {
            recurringWindow: {
                window: {
                    startTime: "2023-01-01T08:00:00Z",
                    endTime: "2023-01-01T17:00:00Z",
                },
                recurrence: "FREQ=WEEKLY;BYDAY=SA",
            },
        },
    },
});
import pulumi
import pulumi_gcp as gcp
project = gcp.organizations.get_project()
default = gcp.edgecontainer.Cluster("default",
    name="cluster-with-maintenance",
    location="us-central1",
    authorization={
        "admin_users": {
            "username": "admin@hashicorptest.com",
        },
    },
    networking={
        "cluster_ipv4_cidr_blocks": ["10.0.0.0/16"],
        "services_ipv4_cidr_blocks": ["10.1.0.0/16"],
    },
    fleet={
        "project": f"projects/{project.number}",
    },
    maintenance_policy={
        "window": {
            "recurring_window": {
                "window": {
                    "start_time": "2023-01-01T08:00:00Z",
                    "end_time": "2023-01-01T17:00:00Z",
                },
                "recurrence": "FREQ=WEEKLY;BYDAY=SA",
            },
        },
    })
package main
import (
	"fmt"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/edgecontainer"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		project, err := organizations.LookupProject(ctx, &organizations.LookupProjectArgs{}, nil)
		if err != nil {
			return err
		}
		_, err = edgecontainer.NewCluster(ctx, "default", &edgecontainer.ClusterArgs{
			Name:     pulumi.String("cluster-with-maintenance"),
			Location: pulumi.String("us-central1"),
			Authorization: &edgecontainer.ClusterAuthorizationArgs{
				AdminUsers: &edgecontainer.ClusterAuthorizationAdminUsersArgs{
					Username: pulumi.String("admin@hashicorptest.com"),
				},
			},
			Networking: &edgecontainer.ClusterNetworkingArgs{
				ClusterIpv4CidrBlocks: pulumi.StringArray{
					pulumi.String("10.0.0.0/16"),
				},
				ServicesIpv4CidrBlocks: pulumi.StringArray{
					pulumi.String("10.1.0.0/16"),
				},
			},
			Fleet: &edgecontainer.ClusterFleetArgs{
				Project: pulumi.Sprintf("projects/%v", project.Number),
			},
			MaintenancePolicy: &edgecontainer.ClusterMaintenancePolicyArgs{
				Window: &edgecontainer.ClusterMaintenancePolicyWindowArgs{
					RecurringWindow: &edgecontainer.ClusterMaintenancePolicyWindowRecurringWindowArgs{
						Window: &edgecontainer.ClusterMaintenancePolicyWindowRecurringWindowWindowArgs{
							StartTime: pulumi.String("2023-01-01T08:00:00Z"),
							EndTime:   pulumi.String("2023-01-01T17:00:00Z"),
						},
						Recurrence: pulumi.String("FREQ=WEEKLY;BYDAY=SA"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() => 
{
    var project = Gcp.Organizations.GetProject.Invoke();
    var @default = new Gcp.EdgeContainer.Cluster("default", new()
    {
        Name = "cluster-with-maintenance",
        Location = "us-central1",
        Authorization = new Gcp.EdgeContainer.Inputs.ClusterAuthorizationArgs
        {
            AdminUsers = new Gcp.EdgeContainer.Inputs.ClusterAuthorizationAdminUsersArgs
            {
                Username = "admin@hashicorptest.com",
            },
        },
        Networking = new Gcp.EdgeContainer.Inputs.ClusterNetworkingArgs
        {
            ClusterIpv4CidrBlocks = new[]
            {
                "10.0.0.0/16",
            },
            ServicesIpv4CidrBlocks = new[]
            {
                "10.1.0.0/16",
            },
        },
        Fleet = new Gcp.EdgeContainer.Inputs.ClusterFleetArgs
        {
            Project = $"projects/{project.Apply(getProjectResult => getProjectResult.Number)}",
        },
        MaintenancePolicy = new Gcp.EdgeContainer.Inputs.ClusterMaintenancePolicyArgs
        {
            Window = new Gcp.EdgeContainer.Inputs.ClusterMaintenancePolicyWindowArgs
            {
                RecurringWindow = new Gcp.EdgeContainer.Inputs.ClusterMaintenancePolicyWindowRecurringWindowArgs
                {
                    Window = new Gcp.EdgeContainer.Inputs.ClusterMaintenancePolicyWindowRecurringWindowWindowArgs
                    {
                        StartTime = "2023-01-01T08:00:00Z",
                        EndTime = "2023-01-01T17:00:00Z",
                    },
                    Recurrence = "FREQ=WEEKLY;BYDAY=SA",
                },
            },
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.organizations.OrganizationsFunctions;
import com.pulumi.gcp.organizations.inputs.GetProjectArgs;
import com.pulumi.gcp.edgecontainer.Cluster;
import com.pulumi.gcp.edgecontainer.ClusterArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterAuthorizationArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterAuthorizationAdminUsersArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterNetworkingArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterFleetArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterMaintenancePolicyArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterMaintenancePolicyWindowArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterMaintenancePolicyWindowRecurringWindowArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterMaintenancePolicyWindowRecurringWindowWindowArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        final var project = OrganizationsFunctions.getProject();
        var default_ = new Cluster("default", ClusterArgs.builder()
            .name("cluster-with-maintenance")
            .location("us-central1")
            .authorization(ClusterAuthorizationArgs.builder()
                .adminUsers(ClusterAuthorizationAdminUsersArgs.builder()
                    .username("admin@hashicorptest.com")
                    .build())
                .build())
            .networking(ClusterNetworkingArgs.builder()
                .clusterIpv4CidrBlocks("10.0.0.0/16")
                .servicesIpv4CidrBlocks("10.1.0.0/16")
                .build())
            .fleet(ClusterFleetArgs.builder()
                .project(String.format("projects/%s", project.applyValue(getProjectResult -> getProjectResult.number())))
                .build())
            .maintenancePolicy(ClusterMaintenancePolicyArgs.builder()
                .window(ClusterMaintenancePolicyWindowArgs.builder()
                    .recurringWindow(ClusterMaintenancePolicyWindowRecurringWindowArgs.builder()
                        .window(ClusterMaintenancePolicyWindowRecurringWindowWindowArgs.builder()
                            .startTime("2023-01-01T08:00:00Z")
                            .endTime("2023-01-01T17:00:00Z")
                            .build())
                        .recurrence("FREQ=WEEKLY;BYDAY=SA")
                        .build())
                    .build())
                .build())
            .build());
    }
}
resources:
  default:
    type: gcp:edgecontainer:Cluster
    properties:
      name: cluster-with-maintenance
      location: us-central1
      authorization:
        adminUsers:
          username: admin@hashicorptest.com
      networking:
        clusterIpv4CidrBlocks:
          - 10.0.0.0/16
        servicesIpv4CidrBlocks:
          - 10.1.0.0/16
      fleet:
        project: projects/${project.number}
      maintenancePolicy:
        window:
          recurringWindow:
            window:
              startTime: 2023-01-01T08:00:00Z
              endTime: 2023-01-01T17:00:00Z
            recurrence: FREQ=WEEKLY;BYDAY=SA
variables:
  project:
    fn::invoke:
      function: gcp:organizations:getProject
      arguments: {}
Edgecontainer Local Control Plane Cluster
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const project = gcp.organizations.getProject({});
const _default = new gcp.edgecontainer.Cluster("default", {
    name: "local-control-plane-cluster",
    location: "us-central1",
    authorization: {
        adminUsers: {
            username: "admin@hashicorptest.com",
        },
    },
    networking: {
        clusterIpv4CidrBlocks: ["10.0.0.0/16"],
        servicesIpv4CidrBlocks: ["10.1.0.0/16"],
    },
    fleet: {
        project: project.then(project => `projects/${project.number}`),
    },
    externalLoadBalancerIpv4AddressPools: ["10.100.0.0-10.100.0.10"],
    controlPlane: {
        local: {
            nodeLocation: "us-central1-edge-example-edgesite",
            nodeCount: 1,
            machineFilter: "machine-name",
            sharedDeploymentPolicy: "ALLOWED",
        },
    },
});
import pulumi
import pulumi_gcp as gcp
project = gcp.organizations.get_project()
default = gcp.edgecontainer.Cluster("default",
    name="local-control-plane-cluster",
    location="us-central1",
    authorization={
        "admin_users": {
            "username": "admin@hashicorptest.com",
        },
    },
    networking={
        "cluster_ipv4_cidr_blocks": ["10.0.0.0/16"],
        "services_ipv4_cidr_blocks": ["10.1.0.0/16"],
    },
    fleet={
        "project": f"projects/{project.number}",
    },
    external_load_balancer_ipv4_address_pools=["10.100.0.0-10.100.0.10"],
    control_plane={
        "local": {
            "node_location": "us-central1-edge-example-edgesite",
            "node_count": 1,
            "machine_filter": "machine-name",
            "shared_deployment_policy": "ALLOWED",
        },
    })
package main
import (
	"fmt"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/edgecontainer"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		project, err := organizations.LookupProject(ctx, &organizations.LookupProjectArgs{}, nil)
		if err != nil {
			return err
		}
		_, err = edgecontainer.NewCluster(ctx, "default", &edgecontainer.ClusterArgs{
			Name:     pulumi.String("local-control-plane-cluster"),
			Location: pulumi.String("us-central1"),
			Authorization: &edgecontainer.ClusterAuthorizationArgs{
				AdminUsers: &edgecontainer.ClusterAuthorizationAdminUsersArgs{
					Username: pulumi.String("admin@hashicorptest.com"),
				},
			},
			Networking: &edgecontainer.ClusterNetworkingArgs{
				ClusterIpv4CidrBlocks: pulumi.StringArray{
					pulumi.String("10.0.0.0/16"),
				},
				ServicesIpv4CidrBlocks: pulumi.StringArray{
					pulumi.String("10.1.0.0/16"),
				},
			},
			Fleet: &edgecontainer.ClusterFleetArgs{
				Project: pulumi.Sprintf("projects/%v", project.Number),
			},
			ExternalLoadBalancerIpv4AddressPools: pulumi.StringArray{
				pulumi.String("10.100.0.0-10.100.0.10"),
			},
			ControlPlane: &edgecontainer.ClusterControlPlaneArgs{
				Local: &edgecontainer.ClusterControlPlaneLocalArgs{
					NodeLocation:           pulumi.String("us-central1-edge-example-edgesite"),
					NodeCount:              pulumi.Int(1),
					MachineFilter:          pulumi.String("machine-name"),
					SharedDeploymentPolicy: pulumi.String("ALLOWED"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() => 
{
    var project = Gcp.Organizations.GetProject.Invoke();
    var @default = new Gcp.EdgeContainer.Cluster("default", new()
    {
        Name = "local-control-plane-cluster",
        Location = "us-central1",
        Authorization = new Gcp.EdgeContainer.Inputs.ClusterAuthorizationArgs
        {
            AdminUsers = new Gcp.EdgeContainer.Inputs.ClusterAuthorizationAdminUsersArgs
            {
                Username = "admin@hashicorptest.com",
            },
        },
        Networking = new Gcp.EdgeContainer.Inputs.ClusterNetworkingArgs
        {
            ClusterIpv4CidrBlocks = new[]
            {
                "10.0.0.0/16",
            },
            ServicesIpv4CidrBlocks = new[]
            {
                "10.1.0.0/16",
            },
        },
        Fleet = new Gcp.EdgeContainer.Inputs.ClusterFleetArgs
        {
            Project = $"projects/{project.Apply(getProjectResult => getProjectResult.Number)}",
        },
        ExternalLoadBalancerIpv4AddressPools = new[]
        {
            "10.100.0.0-10.100.0.10",
        },
        ControlPlane = new Gcp.EdgeContainer.Inputs.ClusterControlPlaneArgs
        {
            Local = new Gcp.EdgeContainer.Inputs.ClusterControlPlaneLocalArgs
            {
                NodeLocation = "us-central1-edge-example-edgesite",
                NodeCount = 1,
                MachineFilter = "machine-name",
                SharedDeploymentPolicy = "ALLOWED",
            },
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.organizations.OrganizationsFunctions;
import com.pulumi.gcp.organizations.inputs.GetProjectArgs;
import com.pulumi.gcp.edgecontainer.Cluster;
import com.pulumi.gcp.edgecontainer.ClusterArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterAuthorizationArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterAuthorizationAdminUsersArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterNetworkingArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterFleetArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterControlPlaneArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterControlPlaneLocalArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        final var project = OrganizationsFunctions.getProject();
        var default_ = new Cluster("default", ClusterArgs.builder()
            .name("local-control-plane-cluster")
            .location("us-central1")
            .authorization(ClusterAuthorizationArgs.builder()
                .adminUsers(ClusterAuthorizationAdminUsersArgs.builder()
                    .username("admin@hashicorptest.com")
                    .build())
                .build())
            .networking(ClusterNetworkingArgs.builder()
                .clusterIpv4CidrBlocks("10.0.0.0/16")
                .servicesIpv4CidrBlocks("10.1.0.0/16")
                .build())
            .fleet(ClusterFleetArgs.builder()
                .project(String.format("projects/%s", project.applyValue(getProjectResult -> getProjectResult.number())))
                .build())
            .externalLoadBalancerIpv4AddressPools("10.100.0.0-10.100.0.10")
            .controlPlane(ClusterControlPlaneArgs.builder()
                .local(ClusterControlPlaneLocalArgs.builder()
                    .nodeLocation("us-central1-edge-example-edgesite")
                    .nodeCount(1)
                    .machineFilter("machine-name")
                    .sharedDeploymentPolicy("ALLOWED")
                    .build())
                .build())
            .build());
    }
}
resources:
  default:
    type: gcp:edgecontainer:Cluster
    properties:
      name: local-control-plane-cluster
      location: us-central1
      authorization:
        adminUsers:
          username: admin@hashicorptest.com
      networking:
        clusterIpv4CidrBlocks:
          - 10.0.0.0/16
        servicesIpv4CidrBlocks:
          - 10.1.0.0/16
      fleet:
        project: projects/${project.number}
      externalLoadBalancerIpv4AddressPools:
        - 10.100.0.0-10.100.0.10
      controlPlane:
        local:
          nodeLocation: us-central1-edge-example-edgesite
          nodeCount: 1
          machineFilter: machine-name
          sharedDeploymentPolicy: ALLOWED
variables:
  project:
    fn::invoke:
      function: gcp:organizations:getProject
      arguments: {}
Create Cluster Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Cluster(name: string, args: ClusterArgs, opts?: CustomResourceOptions);@overload
def Cluster(resource_name: str,
            args: ClusterArgs,
            opts: Optional[ResourceOptions] = None)
@overload
def Cluster(resource_name: str,
            opts: Optional[ResourceOptions] = None,
            fleet: Optional[ClusterFleetArgs] = None,
            networking: Optional[ClusterNetworkingArgs] = None,
            location: Optional[str] = None,
            authorization: Optional[ClusterAuthorizationArgs] = None,
            labels: Optional[Mapping[str, str]] = None,
            external_load_balancer_ipv4_address_pools: Optional[Sequence[str]] = None,
            default_max_pods_per_node: Optional[int] = None,
            control_plane_encryption: Optional[ClusterControlPlaneEncryptionArgs] = None,
            maintenance_policy: Optional[ClusterMaintenancePolicyArgs] = None,
            name: Optional[str] = None,
            control_plane: Optional[ClusterControlPlaneArgs] = None,
            project: Optional[str] = None,
            release_channel: Optional[str] = None,
            system_addons_config: Optional[ClusterSystemAddonsConfigArgs] = None,
            target_version: Optional[str] = None)func NewCluster(ctx *Context, name string, args ClusterArgs, opts ...ResourceOption) (*Cluster, error)public Cluster(string name, ClusterArgs args, CustomResourceOptions? opts = null)
public Cluster(String name, ClusterArgs args)
public Cluster(String name, ClusterArgs args, CustomResourceOptions options)
type: gcp:edgecontainer:Cluster
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args ClusterArgs
- 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 ClusterArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args ClusterArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args ClusterArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args ClusterArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var exampleclusterResourceResourceFromEdgecontainercluster = new Gcp.EdgeContainer.Cluster("exampleclusterResourceResourceFromEdgecontainercluster", new()
{
    Fleet = new Gcp.EdgeContainer.Inputs.ClusterFleetArgs
    {
        Project = "string",
        Membership = "string",
    },
    Networking = new Gcp.EdgeContainer.Inputs.ClusterNetworkingArgs
    {
        ClusterIpv4CidrBlocks = new[]
        {
            "string",
        },
        ServicesIpv4CidrBlocks = new[]
        {
            "string",
        },
        ClusterIpv6CidrBlocks = new[]
        {
            "string",
        },
        NetworkType = "string",
        ServicesIpv6CidrBlocks = new[]
        {
            "string",
        },
    },
    Location = "string",
    Authorization = new Gcp.EdgeContainer.Inputs.ClusterAuthorizationArgs
    {
        AdminUsers = new Gcp.EdgeContainer.Inputs.ClusterAuthorizationAdminUsersArgs
        {
            Username = "string",
        },
    },
    Labels = 
    {
        { "string", "string" },
    },
    ExternalLoadBalancerIpv4AddressPools = new[]
    {
        "string",
    },
    DefaultMaxPodsPerNode = 0,
    ControlPlaneEncryption = new Gcp.EdgeContainer.Inputs.ClusterControlPlaneEncryptionArgs
    {
        KmsKey = "string",
        KmsKeyActiveVersion = "string",
        KmsKeyState = "string",
        KmsStatuses = new[]
        {
            new Gcp.EdgeContainer.Inputs.ClusterControlPlaneEncryptionKmsStatusArgs
            {
                Code = 0,
                Message = "string",
            },
        },
    },
    MaintenancePolicy = new Gcp.EdgeContainer.Inputs.ClusterMaintenancePolicyArgs
    {
        Window = new Gcp.EdgeContainer.Inputs.ClusterMaintenancePolicyWindowArgs
        {
            RecurringWindow = new Gcp.EdgeContainer.Inputs.ClusterMaintenancePolicyWindowRecurringWindowArgs
            {
                Recurrence = "string",
                Window = new Gcp.EdgeContainer.Inputs.ClusterMaintenancePolicyWindowRecurringWindowWindowArgs
                {
                    EndTime = "string",
                    StartTime = "string",
                },
            },
        },
        MaintenanceExclusions = new[]
        {
            new Gcp.EdgeContainer.Inputs.ClusterMaintenancePolicyMaintenanceExclusionArgs
            {
                Id = "string",
                Window = new Gcp.EdgeContainer.Inputs.ClusterMaintenancePolicyMaintenanceExclusionWindowArgs
                {
                    EndTime = "string",
                    StartTime = "string",
                },
            },
        },
    },
    Name = "string",
    ControlPlane = new Gcp.EdgeContainer.Inputs.ClusterControlPlaneArgs
    {
        Local = new Gcp.EdgeContainer.Inputs.ClusterControlPlaneLocalArgs
        {
            MachineFilter = "string",
            NodeCount = 0,
            NodeLocation = "string",
            SharedDeploymentPolicy = "string",
        },
        Remote = new Gcp.EdgeContainer.Inputs.ClusterControlPlaneRemoteArgs
        {
            NodeLocation = "string",
        },
    },
    Project = "string",
    ReleaseChannel = "string",
    SystemAddonsConfig = new Gcp.EdgeContainer.Inputs.ClusterSystemAddonsConfigArgs
    {
        Ingress = new Gcp.EdgeContainer.Inputs.ClusterSystemAddonsConfigIngressArgs
        {
            Disabled = false,
            Ipv4Vip = "string",
        },
    },
    TargetVersion = "string",
});
example, err := edgecontainer.NewCluster(ctx, "exampleclusterResourceResourceFromEdgecontainercluster", &edgecontainer.ClusterArgs{
	Fleet: &edgecontainer.ClusterFleetArgs{
		Project:    pulumi.String("string"),
		Membership: pulumi.String("string"),
	},
	Networking: &edgecontainer.ClusterNetworkingArgs{
		ClusterIpv4CidrBlocks: pulumi.StringArray{
			pulumi.String("string"),
		},
		ServicesIpv4CidrBlocks: pulumi.StringArray{
			pulumi.String("string"),
		},
		ClusterIpv6CidrBlocks: pulumi.StringArray{
			pulumi.String("string"),
		},
		NetworkType: pulumi.String("string"),
		ServicesIpv6CidrBlocks: pulumi.StringArray{
			pulumi.String("string"),
		},
	},
	Location: pulumi.String("string"),
	Authorization: &edgecontainer.ClusterAuthorizationArgs{
		AdminUsers: &edgecontainer.ClusterAuthorizationAdminUsersArgs{
			Username: pulumi.String("string"),
		},
	},
	Labels: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	ExternalLoadBalancerIpv4AddressPools: pulumi.StringArray{
		pulumi.String("string"),
	},
	DefaultMaxPodsPerNode: pulumi.Int(0),
	ControlPlaneEncryption: &edgecontainer.ClusterControlPlaneEncryptionArgs{
		KmsKey:              pulumi.String("string"),
		KmsKeyActiveVersion: pulumi.String("string"),
		KmsKeyState:         pulumi.String("string"),
		KmsStatuses: edgecontainer.ClusterControlPlaneEncryptionKmsStatusArray{
			&edgecontainer.ClusterControlPlaneEncryptionKmsStatusArgs{
				Code:    pulumi.Int(0),
				Message: pulumi.String("string"),
			},
		},
	},
	MaintenancePolicy: &edgecontainer.ClusterMaintenancePolicyArgs{
		Window: &edgecontainer.ClusterMaintenancePolicyWindowArgs{
			RecurringWindow: &edgecontainer.ClusterMaintenancePolicyWindowRecurringWindowArgs{
				Recurrence: pulumi.String("string"),
				Window: &edgecontainer.ClusterMaintenancePolicyWindowRecurringWindowWindowArgs{
					EndTime:   pulumi.String("string"),
					StartTime: pulumi.String("string"),
				},
			},
		},
		MaintenanceExclusions: edgecontainer.ClusterMaintenancePolicyMaintenanceExclusionArray{
			&edgecontainer.ClusterMaintenancePolicyMaintenanceExclusionArgs{
				Id: pulumi.String("string"),
				Window: &edgecontainer.ClusterMaintenancePolicyMaintenanceExclusionWindowArgs{
					EndTime:   pulumi.String("string"),
					StartTime: pulumi.String("string"),
				},
			},
		},
	},
	Name: pulumi.String("string"),
	ControlPlane: &edgecontainer.ClusterControlPlaneArgs{
		Local: &edgecontainer.ClusterControlPlaneLocalArgs{
			MachineFilter:          pulumi.String("string"),
			NodeCount:              pulumi.Int(0),
			NodeLocation:           pulumi.String("string"),
			SharedDeploymentPolicy: pulumi.String("string"),
		},
		Remote: &edgecontainer.ClusterControlPlaneRemoteArgs{
			NodeLocation: pulumi.String("string"),
		},
	},
	Project:        pulumi.String("string"),
	ReleaseChannel: pulumi.String("string"),
	SystemAddonsConfig: &edgecontainer.ClusterSystemAddonsConfigArgs{
		Ingress: &edgecontainer.ClusterSystemAddonsConfigIngressArgs{
			Disabled: pulumi.Bool(false),
			Ipv4Vip:  pulumi.String("string"),
		},
	},
	TargetVersion: pulumi.String("string"),
})
var exampleclusterResourceResourceFromEdgecontainercluster = new Cluster("exampleclusterResourceResourceFromEdgecontainercluster", ClusterArgs.builder()
    .fleet(ClusterFleetArgs.builder()
        .project("string")
        .membership("string")
        .build())
    .networking(ClusterNetworkingArgs.builder()
        .clusterIpv4CidrBlocks("string")
        .servicesIpv4CidrBlocks("string")
        .clusterIpv6CidrBlocks("string")
        .networkType("string")
        .servicesIpv6CidrBlocks("string")
        .build())
    .location("string")
    .authorization(ClusterAuthorizationArgs.builder()
        .adminUsers(ClusterAuthorizationAdminUsersArgs.builder()
            .username("string")
            .build())
        .build())
    .labels(Map.of("string", "string"))
    .externalLoadBalancerIpv4AddressPools("string")
    .defaultMaxPodsPerNode(0)
    .controlPlaneEncryption(ClusterControlPlaneEncryptionArgs.builder()
        .kmsKey("string")
        .kmsKeyActiveVersion("string")
        .kmsKeyState("string")
        .kmsStatuses(ClusterControlPlaneEncryptionKmsStatusArgs.builder()
            .code(0)
            .message("string")
            .build())
        .build())
    .maintenancePolicy(ClusterMaintenancePolicyArgs.builder()
        .window(ClusterMaintenancePolicyWindowArgs.builder()
            .recurringWindow(ClusterMaintenancePolicyWindowRecurringWindowArgs.builder()
                .recurrence("string")
                .window(ClusterMaintenancePolicyWindowRecurringWindowWindowArgs.builder()
                    .endTime("string")
                    .startTime("string")
                    .build())
                .build())
            .build())
        .maintenanceExclusions(ClusterMaintenancePolicyMaintenanceExclusionArgs.builder()
            .id("string")
            .window(ClusterMaintenancePolicyMaintenanceExclusionWindowArgs.builder()
                .endTime("string")
                .startTime("string")
                .build())
            .build())
        .build())
    .name("string")
    .controlPlane(ClusterControlPlaneArgs.builder()
        .local(ClusterControlPlaneLocalArgs.builder()
            .machineFilter("string")
            .nodeCount(0)
            .nodeLocation("string")
            .sharedDeploymentPolicy("string")
            .build())
        .remote(ClusterControlPlaneRemoteArgs.builder()
            .nodeLocation("string")
            .build())
        .build())
    .project("string")
    .releaseChannel("string")
    .systemAddonsConfig(ClusterSystemAddonsConfigArgs.builder()
        .ingress(ClusterSystemAddonsConfigIngressArgs.builder()
            .disabled(false)
            .ipv4Vip("string")
            .build())
        .build())
    .targetVersion("string")
    .build());
examplecluster_resource_resource_from_edgecontainercluster = gcp.edgecontainer.Cluster("exampleclusterResourceResourceFromEdgecontainercluster",
    fleet={
        "project": "string",
        "membership": "string",
    },
    networking={
        "cluster_ipv4_cidr_blocks": ["string"],
        "services_ipv4_cidr_blocks": ["string"],
        "cluster_ipv6_cidr_blocks": ["string"],
        "network_type": "string",
        "services_ipv6_cidr_blocks": ["string"],
    },
    location="string",
    authorization={
        "admin_users": {
            "username": "string",
        },
    },
    labels={
        "string": "string",
    },
    external_load_balancer_ipv4_address_pools=["string"],
    default_max_pods_per_node=0,
    control_plane_encryption={
        "kms_key": "string",
        "kms_key_active_version": "string",
        "kms_key_state": "string",
        "kms_statuses": [{
            "code": 0,
            "message": "string",
        }],
    },
    maintenance_policy={
        "window": {
            "recurring_window": {
                "recurrence": "string",
                "window": {
                    "end_time": "string",
                    "start_time": "string",
                },
            },
        },
        "maintenance_exclusions": [{
            "id": "string",
            "window": {
                "end_time": "string",
                "start_time": "string",
            },
        }],
    },
    name="string",
    control_plane={
        "local": {
            "machine_filter": "string",
            "node_count": 0,
            "node_location": "string",
            "shared_deployment_policy": "string",
        },
        "remote": {
            "node_location": "string",
        },
    },
    project="string",
    release_channel="string",
    system_addons_config={
        "ingress": {
            "disabled": False,
            "ipv4_vip": "string",
        },
    },
    target_version="string")
const exampleclusterResourceResourceFromEdgecontainercluster = new gcp.edgecontainer.Cluster("exampleclusterResourceResourceFromEdgecontainercluster", {
    fleet: {
        project: "string",
        membership: "string",
    },
    networking: {
        clusterIpv4CidrBlocks: ["string"],
        servicesIpv4CidrBlocks: ["string"],
        clusterIpv6CidrBlocks: ["string"],
        networkType: "string",
        servicesIpv6CidrBlocks: ["string"],
    },
    location: "string",
    authorization: {
        adminUsers: {
            username: "string",
        },
    },
    labels: {
        string: "string",
    },
    externalLoadBalancerIpv4AddressPools: ["string"],
    defaultMaxPodsPerNode: 0,
    controlPlaneEncryption: {
        kmsKey: "string",
        kmsKeyActiveVersion: "string",
        kmsKeyState: "string",
        kmsStatuses: [{
            code: 0,
            message: "string",
        }],
    },
    maintenancePolicy: {
        window: {
            recurringWindow: {
                recurrence: "string",
                window: {
                    endTime: "string",
                    startTime: "string",
                },
            },
        },
        maintenanceExclusions: [{
            id: "string",
            window: {
                endTime: "string",
                startTime: "string",
            },
        }],
    },
    name: "string",
    controlPlane: {
        local: {
            machineFilter: "string",
            nodeCount: 0,
            nodeLocation: "string",
            sharedDeploymentPolicy: "string",
        },
        remote: {
            nodeLocation: "string",
        },
    },
    project: "string",
    releaseChannel: "string",
    systemAddonsConfig: {
        ingress: {
            disabled: false,
            ipv4Vip: "string",
        },
    },
    targetVersion: "string",
});
type: gcp:edgecontainer:Cluster
properties:
    authorization:
        adminUsers:
            username: string
    controlPlane:
        local:
            machineFilter: string
            nodeCount: 0
            nodeLocation: string
            sharedDeploymentPolicy: string
        remote:
            nodeLocation: string
    controlPlaneEncryption:
        kmsKey: string
        kmsKeyActiveVersion: string
        kmsKeyState: string
        kmsStatuses:
            - code: 0
              message: string
    defaultMaxPodsPerNode: 0
    externalLoadBalancerIpv4AddressPools:
        - string
    fleet:
        membership: string
        project: string
    labels:
        string: string
    location: string
    maintenancePolicy:
        maintenanceExclusions:
            - id: string
              window:
                endTime: string
                startTime: string
        window:
            recurringWindow:
                recurrence: string
                window:
                    endTime: string
                    startTime: string
    name: string
    networking:
        clusterIpv4CidrBlocks:
            - string
        clusterIpv6CidrBlocks:
            - string
        networkType: string
        servicesIpv4CidrBlocks:
            - string
        servicesIpv6CidrBlocks:
            - string
    project: string
    releaseChannel: string
    systemAddonsConfig:
        ingress:
            disabled: false
            ipv4Vip: string
    targetVersion: string
Cluster Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The Cluster resource accepts the following input properties:
- 
ClusterAuthorization 
- RBAC policy that will be applied and managed by GEC. Structure is documented below.
- Fleet
ClusterFleet 
- 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. Structure is documented below.
- Location string
- The location of the resource.
- Networking
ClusterNetworking 
- 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. Structure is documented below.
- ControlPlane ClusterControl Plane 
- The configuration of the cluster control plane.
- ControlPlane ClusterEncryption Control Plane Encryption 
- Remote control plane disk encryption options. This field is only used when enabling CMEK support.
- DefaultMax intPods Per Node 
- The default maximum number of pods per node used if a maximum value is not specified explicitly for a node pool in this cluster. If unspecified, the Kubernetes default value will be used.
- ExternalLoad List<string>Balancer Ipv4Address Pools 
- Address pools for cluster data plane external load balancing.
- Labels Dictionary<string, string>
- User-defined labels for the edgecloud cluster. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- MaintenancePolicy ClusterMaintenance Policy 
- Cluster-wide maintenance policy configuration.
- Name string
- The GDCE cluster name.
- Project string
- ReleaseChannel string
- The release channel a cluster is subscribed to. Possible values: ["RELEASE_CHANNEL_UNSPECIFIED", "NONE", "REGULAR"]
- SystemAddons ClusterConfig System Addons Config 
- Config that customers are allowed to define for GDCE system add-ons.
- TargetVersion string
- (Output) The target version of the cluster.
- 
ClusterAuthorization Args 
- RBAC policy that will be applied and managed by GEC. Structure is documented below.
- Fleet
ClusterFleet Args 
- 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. Structure is documented below.
- Location string
- The location of the resource.
- Networking
ClusterNetworking Args 
- 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. Structure is documented below.
- ControlPlane ClusterControl Plane Args 
- The configuration of the cluster control plane.
- ControlPlane ClusterEncryption Control Plane Encryption Args 
- Remote control plane disk encryption options. This field is only used when enabling CMEK support.
- DefaultMax intPods Per Node 
- The default maximum number of pods per node used if a maximum value is not specified explicitly for a node pool in this cluster. If unspecified, the Kubernetes default value will be used.
- ExternalLoad []stringBalancer Ipv4Address Pools 
- Address pools for cluster data plane external load balancing.
- Labels map[string]string
- User-defined labels for the edgecloud cluster. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- MaintenancePolicy ClusterMaintenance Policy Args 
- Cluster-wide maintenance policy configuration.
- Name string
- The GDCE cluster name.
- Project string
- ReleaseChannel string
- The release channel a cluster is subscribed to. Possible values: ["RELEASE_CHANNEL_UNSPECIFIED", "NONE", "REGULAR"]
- SystemAddons ClusterConfig System Addons Config Args 
- Config that customers are allowed to define for GDCE system add-ons.
- TargetVersion string
- (Output) The target version of the cluster.
- 
ClusterAuthorization 
- RBAC policy that will be applied and managed by GEC. Structure is documented below.
- fleet
ClusterFleet 
- 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. Structure is documented below.
- location String
- The location of the resource.
- networking
ClusterNetworking 
- 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. Structure is documented below.
- controlPlane ClusterControl Plane 
- The configuration of the cluster control plane.
- controlPlane ClusterEncryption Control Plane Encryption 
- Remote control plane disk encryption options. This field is only used when enabling CMEK support.
- defaultMax IntegerPods Per Node 
- The default maximum number of pods per node used if a maximum value is not specified explicitly for a node pool in this cluster. If unspecified, the Kubernetes default value will be used.
- externalLoad List<String>Balancer Ipv4Address Pools 
- Address pools for cluster data plane external load balancing.
- labels Map<String,String>
- User-defined labels for the edgecloud cluster. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- maintenancePolicy ClusterMaintenance Policy 
- Cluster-wide maintenance policy configuration.
- name String
- The GDCE cluster name.
- project String
- releaseChannel String
- The release channel a cluster is subscribed to. Possible values: ["RELEASE_CHANNEL_UNSPECIFIED", "NONE", "REGULAR"]
- systemAddons ClusterConfig System Addons Config 
- Config that customers are allowed to define for GDCE system add-ons.
- targetVersion String
- (Output) The target version of the cluster.
- 
ClusterAuthorization 
- RBAC policy that will be applied and managed by GEC. Structure is documented below.
- fleet
ClusterFleet 
- 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. Structure is documented below.
- location string
- The location of the resource.
- networking
ClusterNetworking 
- 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. Structure is documented below.
- controlPlane ClusterControl Plane 
- The configuration of the cluster control plane.
- controlPlane ClusterEncryption Control Plane Encryption 
- Remote control plane disk encryption options. This field is only used when enabling CMEK support.
- defaultMax numberPods Per Node 
- The default maximum number of pods per node used if a maximum value is not specified explicitly for a node pool in this cluster. If unspecified, the Kubernetes default value will be used.
- externalLoad string[]Balancer Ipv4Address Pools 
- Address pools for cluster data plane external load balancing.
- labels {[key: string]: string}
- User-defined labels for the edgecloud cluster. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- maintenancePolicy ClusterMaintenance Policy 
- Cluster-wide maintenance policy configuration.
- name string
- The GDCE cluster name.
- project string
- releaseChannel string
- The release channel a cluster is subscribed to. Possible values: ["RELEASE_CHANNEL_UNSPECIFIED", "NONE", "REGULAR"]
- systemAddons ClusterConfig System Addons Config 
- Config that customers are allowed to define for GDCE system add-ons.
- targetVersion string
- (Output) The target version of the cluster.
- 
ClusterAuthorization Args 
- RBAC policy that will be applied and managed by GEC. Structure is documented below.
- fleet
ClusterFleet Args 
- 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. Structure is documented below.
- location str
- The location of the resource.
- networking
ClusterNetworking Args 
- 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. Structure is documented below.
- control_plane ClusterControl Plane Args 
- The configuration of the cluster control plane.
- control_plane_ Clusterencryption Control Plane Encryption Args 
- Remote control plane disk encryption options. This field is only used when enabling CMEK support.
- default_max_ intpods_ per_ node 
- The default maximum number of pods per node used if a maximum value is not specified explicitly for a node pool in this cluster. If unspecified, the Kubernetes default value will be used.
- external_load_ Sequence[str]balancer_ ipv4_ address_ pools 
- Address pools for cluster data plane external load balancing.
- labels Mapping[str, str]
- User-defined labels for the edgecloud cluster. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- maintenance_policy ClusterMaintenance Policy Args 
- Cluster-wide maintenance policy configuration.
- name str
- The GDCE cluster name.
- project str
- release_channel str
- The release channel a cluster is subscribed to. Possible values: ["RELEASE_CHANNEL_UNSPECIFIED", "NONE", "REGULAR"]
- system_addons_ Clusterconfig System Addons Config Args 
- Config that customers are allowed to define for GDCE system add-ons.
- target_version str
- (Output) The target version of the cluster.
- Property Map
- RBAC policy that will be applied and managed by GEC. Structure is documented below.
- fleet 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. Structure is documented below.
- location String
- The location of the resource.
- networking 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. Structure is documented below.
- controlPlane Property Map
- The configuration of the cluster control plane.
- controlPlane Property MapEncryption 
- Remote control plane disk encryption options. This field is only used when enabling CMEK support.
- defaultMax NumberPods Per Node 
- The default maximum number of pods per node used if a maximum value is not specified explicitly for a node pool in this cluster. If unspecified, the Kubernetes default value will be used.
- externalLoad List<String>Balancer Ipv4Address Pools 
- Address pools for cluster data plane external load balancing.
- labels Map<String>
- User-defined labels for the edgecloud cluster. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- maintenancePolicy Property Map
- Cluster-wide maintenance policy configuration.
- name String
- The GDCE cluster name.
- project String
- releaseChannel String
- The release channel a cluster is subscribed to. Possible values: ["RELEASE_CHANNEL_UNSPECIFIED", "NONE", "REGULAR"]
- systemAddons Property MapConfig 
- Config that customers are allowed to define for GDCE system add-ons.
- targetVersion String
- (Output) The target version of the cluster.
Outputs
All input properties are implicitly available as output properties. Additionally, the Cluster resource produces the following output properties:
- ClusterCa stringCertificate 
- The PEM-encoded public certificate of the cluster's CA. Note: This property is sensitive and will not be displayed in the plan.
- ControlPlane stringVersion 
- The control plane release version.
- CreateTime string
- (Output) The time when the maintenance event request was created.
- EffectiveLabels Dictionary<string, string>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- Endpoint string
- The IP address of the Kubernetes API server.
- Id string
- The provider-assigned unique ID for this managed resource.
- MaintenanceEvents List<ClusterMaintenance Event> 
- All the maintenance events scheduled for the cluster, including the ones ongoing, planned for the future and done in the past (up to 90 days). Structure is documented below.
- NodeVersion string
- The lowest release version among all worker nodes. This field can be empty if the cluster does not have any worker nodes.
- Port int
- The port number of the Kubernetes API server.
- PulumiLabels Dictionary<string, string>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- Status string
- Indicates the status of the cluster.
- UpdateTime string
- (Output) The time when the maintenance event message was updated.
- ClusterCa stringCertificate 
- The PEM-encoded public certificate of the cluster's CA. Note: This property is sensitive and will not be displayed in the plan.
- ControlPlane stringVersion 
- The control plane release version.
- CreateTime string
- (Output) The time when the maintenance event request was created.
- EffectiveLabels map[string]string
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- Endpoint string
- The IP address of the Kubernetes API server.
- Id string
- The provider-assigned unique ID for this managed resource.
- MaintenanceEvents []ClusterMaintenance Event 
- All the maintenance events scheduled for the cluster, including the ones ongoing, planned for the future and done in the past (up to 90 days). Structure is documented below.
- NodeVersion string
- The lowest release version among all worker nodes. This field can be empty if the cluster does not have any worker nodes.
- Port int
- The port number of the Kubernetes API server.
- PulumiLabels map[string]string
- The combination of labels configured directly on the resource and default labels configured on the provider.
- Status string
- Indicates the status of the cluster.
- UpdateTime string
- (Output) The time when the maintenance event message was updated.
- clusterCa StringCertificate 
- The PEM-encoded public certificate of the cluster's CA. Note: This property is sensitive and will not be displayed in the plan.
- controlPlane StringVersion 
- The control plane release version.
- createTime String
- (Output) The time when the maintenance event request was created.
- effectiveLabels Map<String,String>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- endpoint String
- The IP address of the Kubernetes API server.
- id String
- The provider-assigned unique ID for this managed resource.
- maintenanceEvents List<ClusterMaintenance Event> 
- All the maintenance events scheduled for the cluster, including the ones ongoing, planned for the future and done in the past (up to 90 days). Structure is documented below.
- nodeVersion String
- The lowest release version among all worker nodes. This field can be empty if the cluster does not have any worker nodes.
- port Integer
- The port number of the Kubernetes API server.
- pulumiLabels Map<String,String>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- status String
- Indicates the status of the cluster.
- updateTime String
- (Output) The time when the maintenance event message was updated.
- clusterCa stringCertificate 
- The PEM-encoded public certificate of the cluster's CA. Note: This property is sensitive and will not be displayed in the plan.
- controlPlane stringVersion 
- The control plane release version.
- createTime string
- (Output) The time when the maintenance event request was created.
- effectiveLabels {[key: string]: string}
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- endpoint string
- The IP address of the Kubernetes API server.
- id string
- The provider-assigned unique ID for this managed resource.
- maintenanceEvents ClusterMaintenance Event[] 
- All the maintenance events scheduled for the cluster, including the ones ongoing, planned for the future and done in the past (up to 90 days). Structure is documented below.
- nodeVersion string
- The lowest release version among all worker nodes. This field can be empty if the cluster does not have any worker nodes.
- port number
- The port number of the Kubernetes API server.
- pulumiLabels {[key: string]: string}
- The combination of labels configured directly on the resource and default labels configured on the provider.
- status string
- Indicates the status of the cluster.
- updateTime string
- (Output) The time when the maintenance event message was updated.
- cluster_ca_ strcertificate 
- The PEM-encoded public certificate of the cluster's CA. Note: This property is sensitive and will not be displayed in the plan.
- control_plane_ strversion 
- The control plane release version.
- create_time str
- (Output) The time when the maintenance event request was created.
- effective_labels Mapping[str, str]
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- endpoint str
- The IP address of the Kubernetes API server.
- id str
- The provider-assigned unique ID for this managed resource.
- maintenance_events Sequence[ClusterMaintenance Event] 
- All the maintenance events scheduled for the cluster, including the ones ongoing, planned for the future and done in the past (up to 90 days). Structure is documented below.
- node_version str
- The lowest release version among all worker nodes. This field can be empty if the cluster does not have any worker nodes.
- port int
- The port number of the Kubernetes API server.
- pulumi_labels Mapping[str, str]
- The combination of labels configured directly on the resource and default labels configured on the provider.
- status str
- Indicates the status of the cluster.
- update_time str
- (Output) The time when the maintenance event message was updated.
- clusterCa StringCertificate 
- The PEM-encoded public certificate of the cluster's CA. Note: This property is sensitive and will not be displayed in the plan.
- controlPlane StringVersion 
- The control plane release version.
- createTime String
- (Output) The time when the maintenance event request was created.
- effectiveLabels Map<String>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- endpoint String
- The IP address of the Kubernetes API server.
- id String
- The provider-assigned unique ID for this managed resource.
- maintenanceEvents List<Property Map>
- All the maintenance events scheduled for the cluster, including the ones ongoing, planned for the future and done in the past (up to 90 days). Structure is documented below.
- nodeVersion String
- The lowest release version among all worker nodes. This field can be empty if the cluster does not have any worker nodes.
- port Number
- The port number of the Kubernetes API server.
- pulumiLabels Map<String>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- status String
- Indicates the status of the cluster.
- updateTime String
- (Output) The time when the maintenance event message was updated.
Look up Existing Cluster Resource
Get an existing Cluster resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: ClusterState, opts?: CustomResourceOptions): Cluster@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        authorization: Optional[ClusterAuthorizationArgs] = None,
        cluster_ca_certificate: Optional[str] = None,
        control_plane: Optional[ClusterControlPlaneArgs] = None,
        control_plane_encryption: Optional[ClusterControlPlaneEncryptionArgs] = None,
        control_plane_version: Optional[str] = None,
        create_time: Optional[str] = None,
        default_max_pods_per_node: Optional[int] = None,
        effective_labels: Optional[Mapping[str, str]] = None,
        endpoint: Optional[str] = None,
        external_load_balancer_ipv4_address_pools: Optional[Sequence[str]] = None,
        fleet: Optional[ClusterFleetArgs] = None,
        labels: Optional[Mapping[str, str]] = None,
        location: Optional[str] = None,
        maintenance_events: Optional[Sequence[ClusterMaintenanceEventArgs]] = None,
        maintenance_policy: Optional[ClusterMaintenancePolicyArgs] = None,
        name: Optional[str] = None,
        networking: Optional[ClusterNetworkingArgs] = None,
        node_version: Optional[str] = None,
        port: Optional[int] = None,
        project: Optional[str] = None,
        pulumi_labels: Optional[Mapping[str, str]] = None,
        release_channel: Optional[str] = None,
        status: Optional[str] = None,
        system_addons_config: Optional[ClusterSystemAddonsConfigArgs] = None,
        target_version: Optional[str] = None,
        update_time: Optional[str] = None) -> Clusterfunc GetCluster(ctx *Context, name string, id IDInput, state *ClusterState, opts ...ResourceOption) (*Cluster, error)public static Cluster Get(string name, Input<string> id, ClusterState? state, CustomResourceOptions? opts = null)public static Cluster get(String name, Output<String> id, ClusterState state, CustomResourceOptions options)resources:  _:    type: gcp:edgecontainer:Cluster    get:      id: ${id}- 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.
- 
ClusterAuthorization 
- RBAC policy that will be applied and managed by GEC. Structure is documented below.
- ClusterCa stringCertificate 
- The PEM-encoded public certificate of the cluster's CA. Note: This property is sensitive and will not be displayed in the plan.
- ControlPlane ClusterControl Plane 
- The configuration of the cluster control plane.
- ControlPlane ClusterEncryption Control Plane Encryption 
- Remote control plane disk encryption options. This field is only used when enabling CMEK support.
- ControlPlane stringVersion 
- The control plane release version.
- CreateTime string
- (Output) The time when the maintenance event request was created.
- DefaultMax intPods Per Node 
- The default maximum number of pods per node used if a maximum value is not specified explicitly for a node pool in this cluster. If unspecified, the Kubernetes default value will be used.
- EffectiveLabels Dictionary<string, string>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- Endpoint string
- The IP address of the Kubernetes API server.
- ExternalLoad List<string>Balancer Ipv4Address Pools 
- Address pools for cluster data plane external load balancing.
- Fleet
ClusterFleet 
- 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. Structure is documented below.
- Labels Dictionary<string, string>
- User-defined labels for the edgecloud cluster. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- Location string
- The location of the resource.
- MaintenanceEvents List<ClusterMaintenance Event> 
- All the maintenance events scheduled for the cluster, including the ones ongoing, planned for the future and done in the past (up to 90 days). Structure is documented below.
- MaintenancePolicy ClusterMaintenance Policy 
- Cluster-wide maintenance policy configuration.
- Name string
- The GDCE cluster name.
- Networking
ClusterNetworking 
- 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. Structure is documented below.
- NodeVersion string
- The lowest release version among all worker nodes. This field can be empty if the cluster does not have any worker nodes.
- Port int
- The port number of the Kubernetes API server.
- Project string
- PulumiLabels Dictionary<string, string>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- ReleaseChannel string
- The release channel a cluster is subscribed to. Possible values: ["RELEASE_CHANNEL_UNSPECIFIED", "NONE", "REGULAR"]
- Status string
- Indicates the status of the cluster.
- SystemAddons ClusterConfig System Addons Config 
- Config that customers are allowed to define for GDCE system add-ons.
- TargetVersion string
- (Output) The target version of the cluster.
- UpdateTime string
- (Output) The time when the maintenance event message was updated.
- 
ClusterAuthorization Args 
- RBAC policy that will be applied and managed by GEC. Structure is documented below.
- ClusterCa stringCertificate 
- The PEM-encoded public certificate of the cluster's CA. Note: This property is sensitive and will not be displayed in the plan.
- ControlPlane ClusterControl Plane Args 
- The configuration of the cluster control plane.
- ControlPlane ClusterEncryption Control Plane Encryption Args 
- Remote control plane disk encryption options. This field is only used when enabling CMEK support.
- ControlPlane stringVersion 
- The control plane release version.
- CreateTime string
- (Output) The time when the maintenance event request was created.
- DefaultMax intPods Per Node 
- The default maximum number of pods per node used if a maximum value is not specified explicitly for a node pool in this cluster. If unspecified, the Kubernetes default value will be used.
- EffectiveLabels map[string]string
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- Endpoint string
- The IP address of the Kubernetes API server.
- ExternalLoad []stringBalancer Ipv4Address Pools 
- Address pools for cluster data plane external load balancing.
- Fleet
ClusterFleet Args 
- 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. Structure is documented below.
- Labels map[string]string
- User-defined labels for the edgecloud cluster. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- Location string
- The location of the resource.
- MaintenanceEvents []ClusterMaintenance Event Args 
- All the maintenance events scheduled for the cluster, including the ones ongoing, planned for the future and done in the past (up to 90 days). Structure is documented below.
- MaintenancePolicy ClusterMaintenance Policy Args 
- Cluster-wide maintenance policy configuration.
- Name string
- The GDCE cluster name.
- Networking
ClusterNetworking Args 
- 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. Structure is documented below.
- NodeVersion string
- The lowest release version among all worker nodes. This field can be empty if the cluster does not have any worker nodes.
- Port int
- The port number of the Kubernetes API server.
- Project string
- PulumiLabels map[string]string
- The combination of labels configured directly on the resource and default labels configured on the provider.
- ReleaseChannel string
- The release channel a cluster is subscribed to. Possible values: ["RELEASE_CHANNEL_UNSPECIFIED", "NONE", "REGULAR"]
- Status string
- Indicates the status of the cluster.
- SystemAddons ClusterConfig System Addons Config Args 
- Config that customers are allowed to define for GDCE system add-ons.
- TargetVersion string
- (Output) The target version of the cluster.
- UpdateTime string
- (Output) The time when the maintenance event message was updated.
- 
ClusterAuthorization 
- RBAC policy that will be applied and managed by GEC. Structure is documented below.
- clusterCa StringCertificate 
- The PEM-encoded public certificate of the cluster's CA. Note: This property is sensitive and will not be displayed in the plan.
- controlPlane ClusterControl Plane 
- The configuration of the cluster control plane.
- controlPlane ClusterEncryption Control Plane Encryption 
- Remote control plane disk encryption options. This field is only used when enabling CMEK support.
- controlPlane StringVersion 
- The control plane release version.
- createTime String
- (Output) The time when the maintenance event request was created.
- defaultMax IntegerPods Per Node 
- The default maximum number of pods per node used if a maximum value is not specified explicitly for a node pool in this cluster. If unspecified, the Kubernetes default value will be used.
- effectiveLabels Map<String,String>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- endpoint String
- The IP address of the Kubernetes API server.
- externalLoad List<String>Balancer Ipv4Address Pools 
- Address pools for cluster data plane external load balancing.
- fleet
ClusterFleet 
- 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. Structure is documented below.
- labels Map<String,String>
- User-defined labels for the edgecloud cluster. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- location String
- The location of the resource.
- maintenanceEvents List<ClusterMaintenance Event> 
- All the maintenance events scheduled for the cluster, including the ones ongoing, planned for the future and done in the past (up to 90 days). Structure is documented below.
- maintenancePolicy ClusterMaintenance Policy 
- Cluster-wide maintenance policy configuration.
- name String
- The GDCE cluster name.
- networking
ClusterNetworking 
- 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. Structure is documented below.
- nodeVersion String
- The lowest release version among all worker nodes. This field can be empty if the cluster does not have any worker nodes.
- port Integer
- The port number of the Kubernetes API server.
- project String
- pulumiLabels Map<String,String>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- releaseChannel String
- The release channel a cluster is subscribed to. Possible values: ["RELEASE_CHANNEL_UNSPECIFIED", "NONE", "REGULAR"]
- status String
- Indicates the status of the cluster.
- systemAddons ClusterConfig System Addons Config 
- Config that customers are allowed to define for GDCE system add-ons.
- targetVersion String
- (Output) The target version of the cluster.
- updateTime String
- (Output) The time when the maintenance event message was updated.
- 
ClusterAuthorization 
- RBAC policy that will be applied and managed by GEC. Structure is documented below.
- clusterCa stringCertificate 
- The PEM-encoded public certificate of the cluster's CA. Note: This property is sensitive and will not be displayed in the plan.
- controlPlane ClusterControl Plane 
- The configuration of the cluster control plane.
- controlPlane ClusterEncryption Control Plane Encryption 
- Remote control plane disk encryption options. This field is only used when enabling CMEK support.
- controlPlane stringVersion 
- The control plane release version.
- createTime string
- (Output) The time when the maintenance event request was created.
- defaultMax numberPods Per Node 
- The default maximum number of pods per node used if a maximum value is not specified explicitly for a node pool in this cluster. If unspecified, the Kubernetes default value will be used.
- effectiveLabels {[key: string]: string}
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- endpoint string
- The IP address of the Kubernetes API server.
- externalLoad string[]Balancer Ipv4Address Pools 
- Address pools for cluster data plane external load balancing.
- fleet
ClusterFleet 
- 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. Structure is documented below.
- labels {[key: string]: string}
- User-defined labels for the edgecloud cluster. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- location string
- The location of the resource.
- maintenanceEvents ClusterMaintenance Event[] 
- All the maintenance events scheduled for the cluster, including the ones ongoing, planned for the future and done in the past (up to 90 days). Structure is documented below.
- maintenancePolicy ClusterMaintenance Policy 
- Cluster-wide maintenance policy configuration.
- name string
- The GDCE cluster name.
- networking
ClusterNetworking 
- 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. Structure is documented below.
- nodeVersion string
- The lowest release version among all worker nodes. This field can be empty if the cluster does not have any worker nodes.
- port number
- The port number of the Kubernetes API server.
- project string
- pulumiLabels {[key: string]: string}
- The combination of labels configured directly on the resource and default labels configured on the provider.
- releaseChannel string
- The release channel a cluster is subscribed to. Possible values: ["RELEASE_CHANNEL_UNSPECIFIED", "NONE", "REGULAR"]
- status string
- Indicates the status of the cluster.
- systemAddons ClusterConfig System Addons Config 
- Config that customers are allowed to define for GDCE system add-ons.
- targetVersion string
- (Output) The target version of the cluster.
- updateTime string
- (Output) The time when the maintenance event message was updated.
- 
ClusterAuthorization Args 
- RBAC policy that will be applied and managed by GEC. Structure is documented below.
- cluster_ca_ strcertificate 
- The PEM-encoded public certificate of the cluster's CA. Note: This property is sensitive and will not be displayed in the plan.
- control_plane ClusterControl Plane Args 
- The configuration of the cluster control plane.
- control_plane_ Clusterencryption Control Plane Encryption Args 
- Remote control plane disk encryption options. This field is only used when enabling CMEK support.
- control_plane_ strversion 
- The control plane release version.
- create_time str
- (Output) The time when the maintenance event request was created.
- default_max_ intpods_ per_ node 
- The default maximum number of pods per node used if a maximum value is not specified explicitly for a node pool in this cluster. If unspecified, the Kubernetes default value will be used.
- effective_labels Mapping[str, str]
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- endpoint str
- The IP address of the Kubernetes API server.
- external_load_ Sequence[str]balancer_ ipv4_ address_ pools 
- Address pools for cluster data plane external load balancing.
- fleet
ClusterFleet Args 
- 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. Structure is documented below.
- labels Mapping[str, str]
- User-defined labels for the edgecloud cluster. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- location str
- The location of the resource.
- maintenance_events Sequence[ClusterMaintenance Event Args] 
- All the maintenance events scheduled for the cluster, including the ones ongoing, planned for the future and done in the past (up to 90 days). Structure is documented below.
- maintenance_policy ClusterMaintenance Policy Args 
- Cluster-wide maintenance policy configuration.
- name str
- The GDCE cluster name.
- networking
ClusterNetworking Args 
- 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. Structure is documented below.
- node_version str
- The lowest release version among all worker nodes. This field can be empty if the cluster does not have any worker nodes.
- port int
- The port number of the Kubernetes API server.
- project str
- pulumi_labels Mapping[str, str]
- The combination of labels configured directly on the resource and default labels configured on the provider.
- release_channel str
- The release channel a cluster is subscribed to. Possible values: ["RELEASE_CHANNEL_UNSPECIFIED", "NONE", "REGULAR"]
- status str
- Indicates the status of the cluster.
- system_addons_ Clusterconfig System Addons Config Args 
- Config that customers are allowed to define for GDCE system add-ons.
- target_version str
- (Output) The target version of the cluster.
- update_time str
- (Output) The time when the maintenance event message was updated.
- Property Map
- RBAC policy that will be applied and managed by GEC. Structure is documented below.
- clusterCa StringCertificate 
- The PEM-encoded public certificate of the cluster's CA. Note: This property is sensitive and will not be displayed in the plan.
- controlPlane Property Map
- The configuration of the cluster control plane.
- controlPlane Property MapEncryption 
- Remote control plane disk encryption options. This field is only used when enabling CMEK support.
- controlPlane StringVersion 
- The control plane release version.
- createTime String
- (Output) The time when the maintenance event request was created.
- defaultMax NumberPods Per Node 
- The default maximum number of pods per node used if a maximum value is not specified explicitly for a node pool in this cluster. If unspecified, the Kubernetes default value will be used.
- effectiveLabels Map<String>
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- endpoint String
- The IP address of the Kubernetes API server.
- externalLoad List<String>Balancer Ipv4Address Pools 
- Address pools for cluster data plane external load balancing.
- fleet 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. Structure is documented below.
- labels Map<String>
- User-defined labels for the edgecloud cluster. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- location String
- The location of the resource.
- maintenanceEvents List<Property Map>
- All the maintenance events scheduled for the cluster, including the ones ongoing, planned for the future and done in the past (up to 90 days). Structure is documented below.
- maintenancePolicy Property Map
- Cluster-wide maintenance policy configuration.
- name String
- The GDCE cluster name.
- networking 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. Structure is documented below.
- nodeVersion String
- The lowest release version among all worker nodes. This field can be empty if the cluster does not have any worker nodes.
- port Number
- The port number of the Kubernetes API server.
- project String
- pulumiLabels Map<String>
- The combination of labels configured directly on the resource and default labels configured on the provider.
- releaseChannel String
- The release channel a cluster is subscribed to. Possible values: ["RELEASE_CHANNEL_UNSPECIFIED", "NONE", "REGULAR"]
- status String
- Indicates the status of the cluster.
- systemAddons Property MapConfig 
- Config that customers are allowed to define for GDCE system add-ons.
- targetVersion String
- (Output) The target version of the cluster.
- updateTime String
- (Output) The time when the maintenance event message was updated.
Supporting Types
ClusterAuthorization, ClusterAuthorizationArgs    
- AdminUsers ClusterAuthorization Admin Users 
- User that will be granted the cluster-admin role on the cluster, providing full access to the cluster. Currently, this is a singular field, but will be expanded to allow multiple admins in the future. Structure is documented below.
- AdminUsers ClusterAuthorization Admin Users 
- User that will be granted the cluster-admin role on the cluster, providing full access to the cluster. Currently, this is a singular field, but will be expanded to allow multiple admins in the future. Structure is documented below.
- adminUsers ClusterAuthorization Admin Users 
- User that will be granted the cluster-admin role on the cluster, providing full access to the cluster. Currently, this is a singular field, but will be expanded to allow multiple admins in the future. Structure is documented below.
- adminUsers ClusterAuthorization Admin Users 
- User that will be granted the cluster-admin role on the cluster, providing full access to the cluster. Currently, this is a singular field, but will be expanded to allow multiple admins in the future. Structure is documented below.
- admin_users ClusterAuthorization Admin Users 
- User that will be granted the cluster-admin role on the cluster, providing full access to the cluster. Currently, this is a singular field, but will be expanded to allow multiple admins in the future. Structure is documented below.
- adminUsers Property Map
- User that will be granted the cluster-admin role on the cluster, providing full access to the cluster. Currently, this is a singular field, but will be expanded to allow multiple admins in the future. Structure is documented below.
ClusterAuthorizationAdminUsers, ClusterAuthorizationAdminUsersArgs        
- Username string
- An active Google username.
- Username string
- An active Google username.
- username String
- An active Google username.
- username string
- An active Google username.
- username str
- An active Google username.
- username String
- An active Google username.
ClusterControlPlane, ClusterControlPlaneArgs      
- Local
ClusterControl Plane Local 
- Local control plane configuration. Structure is documented below.
- Remote
ClusterControl Plane Remote 
- Remote control plane configuration. Structure is documented below.
- Local
ClusterControl Plane Local 
- Local control plane configuration. Structure is documented below.
- Remote
ClusterControl Plane Remote 
- Remote control plane configuration. Structure is documented below.
- local
ClusterControl Plane Local 
- Local control plane configuration. Structure is documented below.
- remote
ClusterControl Plane Remote 
- Remote control plane configuration. Structure is documented below.
- local
ClusterControl Plane Local 
- Local control plane configuration. Structure is documented below.
- remote
ClusterControl Plane Remote 
- Remote control plane configuration. Structure is documented below.
- local
ClusterControl Plane Local 
- Local control plane configuration. Structure is documented below.
- remote
ClusterControl Plane Remote 
- Remote control plane configuration. Structure is documented below.
- local Property Map
- Local control plane configuration. Structure is documented below.
- remote Property Map
- Remote control plane configuration. Structure is documented below.
ClusterControlPlaneEncryption, ClusterControlPlaneEncryptionArgs        
- KmsKey string
- The Cloud KMS CryptoKey e.g. projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{cryptoKey} to use for protecting control plane disks. If not specified, a Google-managed key will be used instead.
- KmsKey stringActive Version 
- (Output) The Cloud KMS CryptoKeyVersion currently in use for protecting control plane disks. Only applicable if kms_key is set.
- KmsKey stringState 
- (Output)
Availability of the Cloud KMS CryptoKey. If not KEY_AVAILABLE, then nodes may go offline as they cannot access their local data. This can be caused by a lack of permissions to use the key, or if the key is disabled or deleted.
- KmsStatuses List<ClusterControl Plane Encryption Kms Status> 
- (Output) Error status returned by Cloud KMS when using this key. This field may be populated only if - kms_key_stateis not- KMS_KEY_STATE_KEY_AVAILABLE. If populated, this field contains the error status reported by Cloud KMS. Structure is documented below.- The - kms_statusblock contains:
- KmsKey string
- The Cloud KMS CryptoKey e.g. projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{cryptoKey} to use for protecting control plane disks. If not specified, a Google-managed key will be used instead.
- KmsKey stringActive Version 
- (Output) The Cloud KMS CryptoKeyVersion currently in use for protecting control plane disks. Only applicable if kms_key is set.
- KmsKey stringState 
- (Output)
Availability of the Cloud KMS CryptoKey. If not KEY_AVAILABLE, then nodes may go offline as they cannot access their local data. This can be caused by a lack of permissions to use the key, or if the key is disabled or deleted.
- KmsStatuses []ClusterControl Plane Encryption Kms Status 
- (Output) Error status returned by Cloud KMS when using this key. This field may be populated only if - kms_key_stateis not- KMS_KEY_STATE_KEY_AVAILABLE. If populated, this field contains the error status reported by Cloud KMS. Structure is documented below.- The - kms_statusblock contains:
- kmsKey String
- The Cloud KMS CryptoKey e.g. projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{cryptoKey} to use for protecting control plane disks. If not specified, a Google-managed key will be used instead.
- kmsKey StringActive Version 
- (Output) The Cloud KMS CryptoKeyVersion currently in use for protecting control plane disks. Only applicable if kms_key is set.
- kmsKey StringState 
- (Output)
Availability of the Cloud KMS CryptoKey. If not KEY_AVAILABLE, then nodes may go offline as they cannot access their local data. This can be caused by a lack of permissions to use the key, or if the key is disabled or deleted.
- kmsStatuses List<ClusterControl Plane Encryption Kms Status> 
- (Output) Error status returned by Cloud KMS when using this key. This field may be populated only if - kms_key_stateis not- KMS_KEY_STATE_KEY_AVAILABLE. If populated, this field contains the error status reported by Cloud KMS. Structure is documented below.- The - kms_statusblock contains:
- kmsKey string
- The Cloud KMS CryptoKey e.g. projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{cryptoKey} to use for protecting control plane disks. If not specified, a Google-managed key will be used instead.
- kmsKey stringActive Version 
- (Output) The Cloud KMS CryptoKeyVersion currently in use for protecting control plane disks. Only applicable if kms_key is set.
- kmsKey stringState 
- (Output)
Availability of the Cloud KMS CryptoKey. If not KEY_AVAILABLE, then nodes may go offline as they cannot access their local data. This can be caused by a lack of permissions to use the key, or if the key is disabled or deleted.
- kmsStatuses ClusterControl Plane Encryption Kms Status[] 
- (Output) Error status returned by Cloud KMS when using this key. This field may be populated only if - kms_key_stateis not- KMS_KEY_STATE_KEY_AVAILABLE. If populated, this field contains the error status reported by Cloud KMS. Structure is documented below.- The - kms_statusblock contains:
- kms_key str
- The Cloud KMS CryptoKey e.g. projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{cryptoKey} to use for protecting control plane disks. If not specified, a Google-managed key will be used instead.
- kms_key_ stractive_ version 
- (Output) The Cloud KMS CryptoKeyVersion currently in use for protecting control plane disks. Only applicable if kms_key is set.
- kms_key_ strstate 
- (Output)
Availability of the Cloud KMS CryptoKey. If not KEY_AVAILABLE, then nodes may go offline as they cannot access their local data. This can be caused by a lack of permissions to use the key, or if the key is disabled or deleted.
- kms_statuses Sequence[ClusterControl Plane Encryption Kms Status] 
- (Output) Error status returned by Cloud KMS when using this key. This field may be populated only if - kms_key_stateis not- KMS_KEY_STATE_KEY_AVAILABLE. If populated, this field contains the error status reported by Cloud KMS. Structure is documented below.- The - kms_statusblock contains:
- kmsKey String
- The Cloud KMS CryptoKey e.g. projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{cryptoKey} to use for protecting control plane disks. If not specified, a Google-managed key will be used instead.
- kmsKey StringActive Version 
- (Output) The Cloud KMS CryptoKeyVersion currently in use for protecting control plane disks. Only applicable if kms_key is set.
- kmsKey StringState 
- (Output)
Availability of the Cloud KMS CryptoKey. If not KEY_AVAILABLE, then nodes may go offline as they cannot access their local data. This can be caused by a lack of permissions to use the key, or if the key is disabled or deleted.
- kmsStatuses List<Property Map>
- (Output) Error status returned by Cloud KMS when using this key. This field may be populated only if - kms_key_stateis not- KMS_KEY_STATE_KEY_AVAILABLE. If populated, this field contains the error status reported by Cloud KMS. Structure is documented below.- The - kms_statusblock contains:
ClusterControlPlaneEncryptionKmsStatus, ClusterControlPlaneEncryptionKmsStatusArgs            
ClusterControlPlaneLocal, ClusterControlPlaneLocalArgs        
- MachineFilter string
- Only machines matching this filter will be allowed to host control plane nodes. The filtering language accepts strings like "name=", and is documented here: AIP-160.
- NodeCount int
- The number of nodes to serve as replicas of the Control Plane. Only 1 and 3 are supported.
- NodeLocation string
- Name of the Google Distributed Cloud Edge zones where this node pool
will be created. For example: us-central1-edge-customer-a.
- string
- Policy configuration about how user applications are deployed.
Possible values are: SHARED_DEPLOYMENT_POLICY_UNSPECIFIED,ALLOWED,DISALLOWED.
- MachineFilter string
- Only machines matching this filter will be allowed to host control plane nodes. The filtering language accepts strings like "name=", and is documented here: AIP-160.
- NodeCount int
- The number of nodes to serve as replicas of the Control Plane. Only 1 and 3 are supported.
- NodeLocation string
- Name of the Google Distributed Cloud Edge zones where this node pool
will be created. For example: us-central1-edge-customer-a.
- string
- Policy configuration about how user applications are deployed.
Possible values are: SHARED_DEPLOYMENT_POLICY_UNSPECIFIED,ALLOWED,DISALLOWED.
- machineFilter String
- Only machines matching this filter will be allowed to host control plane nodes. The filtering language accepts strings like "name=", and is documented here: AIP-160.
- nodeCount Integer
- The number of nodes to serve as replicas of the Control Plane. Only 1 and 3 are supported.
- nodeLocation String
- Name of the Google Distributed Cloud Edge zones where this node pool
will be created. For example: us-central1-edge-customer-a.
- String
- Policy configuration about how user applications are deployed.
Possible values are: SHARED_DEPLOYMENT_POLICY_UNSPECIFIED,ALLOWED,DISALLOWED.
- machineFilter string
- Only machines matching this filter will be allowed to host control plane nodes. The filtering language accepts strings like "name=", and is documented here: AIP-160.
- nodeCount number
- The number of nodes to serve as replicas of the Control Plane. Only 1 and 3 are supported.
- nodeLocation string
- Name of the Google Distributed Cloud Edge zones where this node pool
will be created. For example: us-central1-edge-customer-a.
- string
- Policy configuration about how user applications are deployed.
Possible values are: SHARED_DEPLOYMENT_POLICY_UNSPECIFIED,ALLOWED,DISALLOWED.
- machine_filter str
- Only machines matching this filter will be allowed to host control plane nodes. The filtering language accepts strings like "name=", and is documented here: AIP-160.
- node_count int
- The number of nodes to serve as replicas of the Control Plane. Only 1 and 3 are supported.
- node_location str
- Name of the Google Distributed Cloud Edge zones where this node pool
will be created. For example: us-central1-edge-customer-a.
- str
- Policy configuration about how user applications are deployed.
Possible values are: SHARED_DEPLOYMENT_POLICY_UNSPECIFIED,ALLOWED,DISALLOWED.
- machineFilter String
- Only machines matching this filter will be allowed to host control plane nodes. The filtering language accepts strings like "name=", and is documented here: AIP-160.
- nodeCount Number
- The number of nodes to serve as replicas of the Control Plane. Only 1 and 3 are supported.
- nodeLocation String
- Name of the Google Distributed Cloud Edge zones where this node pool
will be created. For example: us-central1-edge-customer-a.
- String
- Policy configuration about how user applications are deployed.
Possible values are: SHARED_DEPLOYMENT_POLICY_UNSPECIFIED,ALLOWED,DISALLOWED.
ClusterControlPlaneRemote, ClusterControlPlaneRemoteArgs        
- NodeLocation string
- Name of the Google Distributed Cloud Edge zones where this node pool
will be created. For example: us-central1-edge-customer-a.
- NodeLocation string
- Name of the Google Distributed Cloud Edge zones where this node pool
will be created. For example: us-central1-edge-customer-a.
- nodeLocation String
- Name of the Google Distributed Cloud Edge zones where this node pool
will be created. For example: us-central1-edge-customer-a.
- nodeLocation string
- Name of the Google Distributed Cloud Edge zones where this node pool
will be created. For example: us-central1-edge-customer-a.
- node_location str
- Name of the Google Distributed Cloud Edge zones where this node pool
will be created. For example: us-central1-edge-customer-a.
- nodeLocation String
- Name of the Google Distributed Cloud Edge zones where this node pool
will be created. For example: us-central1-edge-customer-a.
ClusterFleet, ClusterFleetArgs    
- Project string
- The name of the Fleet host project where this cluster will be registered.
Project names are formatted as
projects/<project-number>.
- Membership string
- (Output)
The name of the managed Hub Membership resource associated to this cluster.
Membership names are formatted as
projects/<project-number>/locations/global/membership/<cluster-id>.
- Project string
- The name of the Fleet host project where this cluster will be registered.
Project names are formatted as
projects/<project-number>.
- Membership string
- (Output)
The name of the managed Hub Membership resource associated to this cluster.
Membership names are formatted as
projects/<project-number>/locations/global/membership/<cluster-id>.
- project String
- The name of the Fleet host project where this cluster will be registered.
Project names are formatted as
projects/<project-number>.
- membership String
- (Output)
The name of the managed Hub Membership resource associated to this cluster.
Membership names are formatted as
projects/<project-number>/locations/global/membership/<cluster-id>.
- project string
- The name of the Fleet host project where this cluster will be registered.
Project names are formatted as
projects/<project-number>.
- membership string
- (Output)
The name of the managed Hub Membership resource associated to this cluster.
Membership names are formatted as
projects/<project-number>/locations/global/membership/<cluster-id>.
- project str
- The name of the Fleet host project where this cluster will be registered.
Project names are formatted as
projects/<project-number>.
- membership str
- (Output)
The name of the managed Hub Membership resource associated to this cluster.
Membership names are formatted as
projects/<project-number>/locations/global/membership/<cluster-id>.
- project String
- The name of the Fleet host project where this cluster will be registered.
Project names are formatted as
projects/<project-number>.
- membership String
- (Output)
The name of the managed Hub Membership resource associated to this cluster.
Membership names are formatted as
projects/<project-number>/locations/global/membership/<cluster-id>.
ClusterMaintenanceEvent, ClusterMaintenanceEventArgs      
- CreateTime string
- (Output) The time when the maintenance event request was created.
- EndTime string
- (Output) The time when the maintenance event ended, either successfully or not. If the maintenance event is split into multiple maintenance windows, end_time is only updated when the whole flow ends.
- Operation string
- (Output) The operation for running the maintenance event. Specified in the format projects//locations//operations/*. If the maintenance event is split into multiple operations (e.g. due to maintenance windows), the latest one is recorded.
- Schedule string
- (Output) The schedule of the maintenance event.
- StartTime string
- (Output) The time when the maintenance event started.
- State string
- (Output) Indicates the maintenance event state.
- TargetVersion string
- (Output) The target version of the cluster.
- Type string
- (Output) Indicates the maintenance event type.
- UpdateTime string
- (Output) The time when the maintenance event message was updated.
- Uuid string
- (Output) UUID of the maintenance event.
- CreateTime string
- (Output) The time when the maintenance event request was created.
- EndTime string
- (Output) The time when the maintenance event ended, either successfully or not. If the maintenance event is split into multiple maintenance windows, end_time is only updated when the whole flow ends.
- Operation string
- (Output) The operation for running the maintenance event. Specified in the format projects//locations//operations/*. If the maintenance event is split into multiple operations (e.g. due to maintenance windows), the latest one is recorded.
- Schedule string
- (Output) The schedule of the maintenance event.
- StartTime string
- (Output) The time when the maintenance event started.
- State string
- (Output) Indicates the maintenance event state.
- TargetVersion string
- (Output) The target version of the cluster.
- Type string
- (Output) Indicates the maintenance event type.
- UpdateTime string
- (Output) The time when the maintenance event message was updated.
- Uuid string
- (Output) UUID of the maintenance event.
- createTime String
- (Output) The time when the maintenance event request was created.
- endTime String
- (Output) The time when the maintenance event ended, either successfully or not. If the maintenance event is split into multiple maintenance windows, end_time is only updated when the whole flow ends.
- operation String
- (Output) The operation for running the maintenance event. Specified in the format projects//locations//operations/*. If the maintenance event is split into multiple operations (e.g. due to maintenance windows), the latest one is recorded.
- schedule String
- (Output) The schedule of the maintenance event.
- startTime String
- (Output) The time when the maintenance event started.
- state String
- (Output) Indicates the maintenance event state.
- targetVersion String
- (Output) The target version of the cluster.
- type String
- (Output) Indicates the maintenance event type.
- updateTime String
- (Output) The time when the maintenance event message was updated.
- uuid String
- (Output) UUID of the maintenance event.
- createTime string
- (Output) The time when the maintenance event request was created.
- endTime string
- (Output) The time when the maintenance event ended, either successfully or not. If the maintenance event is split into multiple maintenance windows, end_time is only updated when the whole flow ends.
- operation string
- (Output) The operation for running the maintenance event. Specified in the format projects//locations//operations/*. If the maintenance event is split into multiple operations (e.g. due to maintenance windows), the latest one is recorded.
- schedule string
- (Output) The schedule of the maintenance event.
- startTime string
- (Output) The time when the maintenance event started.
- state string
- (Output) Indicates the maintenance event state.
- targetVersion string
- (Output) The target version of the cluster.
- type string
- (Output) Indicates the maintenance event type.
- updateTime string
- (Output) The time when the maintenance event message was updated.
- uuid string
- (Output) UUID of the maintenance event.
- create_time str
- (Output) The time when the maintenance event request was created.
- end_time str
- (Output) The time when the maintenance event ended, either successfully or not. If the maintenance event is split into multiple maintenance windows, end_time is only updated when the whole flow ends.
- operation str
- (Output) The operation for running the maintenance event. Specified in the format projects//locations//operations/*. If the maintenance event is split into multiple operations (e.g. due to maintenance windows), the latest one is recorded.
- schedule str
- (Output) The schedule of the maintenance event.
- start_time str
- (Output) The time when the maintenance event started.
- state str
- (Output) Indicates the maintenance event state.
- target_version str
- (Output) The target version of the cluster.
- type str
- (Output) Indicates the maintenance event type.
- update_time str
- (Output) The time when the maintenance event message was updated.
- uuid str
- (Output) UUID of the maintenance event.
- createTime String
- (Output) The time when the maintenance event request was created.
- endTime String
- (Output) The time when the maintenance event ended, either successfully or not. If the maintenance event is split into multiple maintenance windows, end_time is only updated when the whole flow ends.
- operation String
- (Output) The operation for running the maintenance event. Specified in the format projects//locations//operations/*. If the maintenance event is split into multiple operations (e.g. due to maintenance windows), the latest one is recorded.
- schedule String
- (Output) The schedule of the maintenance event.
- startTime String
- (Output) The time when the maintenance event started.
- state String
- (Output) Indicates the maintenance event state.
- targetVersion String
- (Output) The target version of the cluster.
- type String
- (Output) Indicates the maintenance event type.
- updateTime String
- (Output) The time when the maintenance event message was updated.
- uuid String
- (Output) UUID of the maintenance event.
ClusterMaintenancePolicy, ClusterMaintenancePolicyArgs      
- Window
ClusterMaintenance Policy Window 
- Specifies the maintenance window in which maintenance may be performed. Structure is documented below.
- MaintenanceExclusions List<ClusterMaintenance Policy Maintenance Exclusion> 
- Exclusions to automatic maintenance. Non-emergency maintenance should not occur in these windows. Each exclusion has a unique name and may be active or expired. The max number of maintenance exclusions allowed at a given time is 3. Structure is documented below.
- Window
ClusterMaintenance Policy Window 
- Specifies the maintenance window in which maintenance may be performed. Structure is documented below.
- MaintenanceExclusions []ClusterMaintenance Policy Maintenance Exclusion 
- Exclusions to automatic maintenance. Non-emergency maintenance should not occur in these windows. Each exclusion has a unique name and may be active or expired. The max number of maintenance exclusions allowed at a given time is 3. Structure is documented below.
- window
ClusterMaintenance Policy Window 
- Specifies the maintenance window in which maintenance may be performed. Structure is documented below.
- maintenanceExclusions List<ClusterMaintenance Policy Maintenance Exclusion> 
- Exclusions to automatic maintenance. Non-emergency maintenance should not occur in these windows. Each exclusion has a unique name and may be active or expired. The max number of maintenance exclusions allowed at a given time is 3. Structure is documented below.
- window
ClusterMaintenance Policy Window 
- Specifies the maintenance window in which maintenance may be performed. Structure is documented below.
- maintenanceExclusions ClusterMaintenance Policy Maintenance Exclusion[] 
- Exclusions to automatic maintenance. Non-emergency maintenance should not occur in these windows. Each exclusion has a unique name and may be active or expired. The max number of maintenance exclusions allowed at a given time is 3. Structure is documented below.
- window
ClusterMaintenance Policy Window 
- Specifies the maintenance window in which maintenance may be performed. Structure is documented below.
- maintenance_exclusions Sequence[ClusterMaintenance Policy Maintenance Exclusion] 
- Exclusions to automatic maintenance. Non-emergency maintenance should not occur in these windows. Each exclusion has a unique name and may be active or expired. The max number of maintenance exclusions allowed at a given time is 3. Structure is documented below.
- window Property Map
- Specifies the maintenance window in which maintenance may be performed. Structure is documented below.
- maintenanceExclusions List<Property Map>
- Exclusions to automatic maintenance. Non-emergency maintenance should not occur in these windows. Each exclusion has a unique name and may be active or expired. The max number of maintenance exclusions allowed at a given time is 3. Structure is documented below.
ClusterMaintenancePolicyMaintenanceExclusion, ClusterMaintenancePolicyMaintenanceExclusionArgs          
- Id string
- A unique (per cluster) id for the window.
- Window
ClusterMaintenance Policy Maintenance Exclusion Window 
- Represents an arbitrary window of time. Structure is documented below.
- Id string
- A unique (per cluster) id for the window.
- Window
ClusterMaintenance Policy Maintenance Exclusion Window 
- Represents an arbitrary window of time. Structure is documented below.
- id String
- A unique (per cluster) id for the window.
- window
ClusterMaintenance Policy Maintenance Exclusion Window 
- Represents an arbitrary window of time. Structure is documented below.
- id string
- A unique (per cluster) id for the window.
- window
ClusterMaintenance Policy Maintenance Exclusion Window 
- Represents an arbitrary window of time. Structure is documented below.
- id str
- A unique (per cluster) id for the window.
- window
ClusterMaintenance Policy Maintenance Exclusion Window 
- Represents an arbitrary window of time. Structure is documented below.
- id String
- A unique (per cluster) id for the window.
- window Property Map
- Represents an arbitrary window of time. Structure is documented below.
ClusterMaintenancePolicyMaintenanceExclusionWindow, ClusterMaintenancePolicyMaintenanceExclusionWindowArgs            
- end_time str
- The time that the window ends. The end time must take place after the start time.
- start_time str
- The time that the window first starts.
ClusterMaintenancePolicyWindow, ClusterMaintenancePolicyWindowArgs        
- RecurringWindow ClusterMaintenance Policy Window Recurring Window 
- Represents an arbitrary window of time that recurs. Structure is documented below.
- RecurringWindow ClusterMaintenance Policy Window Recurring Window 
- Represents an arbitrary window of time that recurs. Structure is documented below.
- recurringWindow ClusterMaintenance Policy Window Recurring Window 
- Represents an arbitrary window of time that recurs. Structure is documented below.
- recurringWindow ClusterMaintenance Policy Window Recurring Window 
- Represents an arbitrary window of time that recurs. Structure is documented below.
- recurring_window ClusterMaintenance Policy Window Recurring Window 
- Represents an arbitrary window of time that recurs. Structure is documented below.
- recurringWindow Property Map
- Represents an arbitrary window of time that recurs. Structure is documented below.
ClusterMaintenancePolicyWindowRecurringWindow, ClusterMaintenancePolicyWindowRecurringWindowArgs            
- Recurrence string
- An RRULE (https://tools.ietf.org/html/rfc5545#section-3.8.5.3) for how this window recurs. They go on for the span of time between the start and end time.
- Window
ClusterMaintenance Policy Window Recurring Window Window 
- Represents an arbitrary window of time. Structure is documented below.
- Recurrence string
- An RRULE (https://tools.ietf.org/html/rfc5545#section-3.8.5.3) for how this window recurs. They go on for the span of time between the start and end time.
- Window
ClusterMaintenance Policy Window Recurring Window Window 
- Represents an arbitrary window of time. Structure is documented below.
- recurrence String
- An RRULE (https://tools.ietf.org/html/rfc5545#section-3.8.5.3) for how this window recurs. They go on for the span of time between the start and end time.
- window
ClusterMaintenance Policy Window Recurring Window Window 
- Represents an arbitrary window of time. Structure is documented below.
- recurrence string
- An RRULE (https://tools.ietf.org/html/rfc5545#section-3.8.5.3) for how this window recurs. They go on for the span of time between the start and end time.
- window
ClusterMaintenance Policy Window Recurring Window Window 
- Represents an arbitrary window of time. Structure is documented below.
- recurrence str
- An RRULE (https://tools.ietf.org/html/rfc5545#section-3.8.5.3) for how this window recurs. They go on for the span of time between the start and end time.
- window
ClusterMaintenance Policy Window Recurring Window Window 
- Represents an arbitrary window of time. Structure is documented below.
- recurrence String
- An RRULE (https://tools.ietf.org/html/rfc5545#section-3.8.5.3) for how this window recurs. They go on for the span of time between the start and end time.
- window Property Map
- Represents an arbitrary window of time. Structure is documented below.
ClusterMaintenancePolicyWindowRecurringWindowWindow, ClusterMaintenancePolicyWindowRecurringWindowWindowArgs              
- end_time str
- The time that the window ends. The end time must take place after the start time.
- start_time str
- The time that the window first starts.
ClusterNetworking, ClusterNetworkingArgs    
- ClusterIpv4Cidr List<string>Blocks 
- All pods in the cluster are assigned an RFC1918 IPv4 address from these blocks. Only a single block is supported. This field cannot be changed after creation.
- ServicesIpv4Cidr List<string>Blocks 
- All services in the cluster are assigned an RFC1918 IPv4 address from these blocks. Only a single block is supported. This field cannot be changed after creation.
- ClusterIpv6Cidr List<string>Blocks 
- If specified, dual stack mode is enabled and all pods in the cluster are assigned an IPv6 address from these blocks alongside from an IPv4 address. Only a single block is supported. This field cannot be changed after creation.
- NetworkType string
- (Output) IP addressing type of this cluster i.e. SINGLESTACK_V4 vs DUALSTACK_V4_V6.
- ServicesIpv6Cidr List<string>Blocks 
- If specified, dual stack mode is enabled and all services in the cluster are assigned an IPv6 address from these blocks alongside from an IPv4 address. Only a single block is supported. This field cannot be changed after creation.
- ClusterIpv4Cidr []stringBlocks 
- All pods in the cluster are assigned an RFC1918 IPv4 address from these blocks. Only a single block is supported. This field cannot be changed after creation.
- ServicesIpv4Cidr []stringBlocks 
- All services in the cluster are assigned an RFC1918 IPv4 address from these blocks. Only a single block is supported. This field cannot be changed after creation.
- ClusterIpv6Cidr []stringBlocks 
- If specified, dual stack mode is enabled and all pods in the cluster are assigned an IPv6 address from these blocks alongside from an IPv4 address. Only a single block is supported. This field cannot be changed after creation.
- NetworkType string
- (Output) IP addressing type of this cluster i.e. SINGLESTACK_V4 vs DUALSTACK_V4_V6.
- ServicesIpv6Cidr []stringBlocks 
- If specified, dual stack mode is enabled and all services in the cluster are assigned an IPv6 address from these blocks alongside from an IPv4 address. Only a single block is supported. This field cannot be changed after creation.
- clusterIpv4Cidr List<String>Blocks 
- All pods in the cluster are assigned an RFC1918 IPv4 address from these blocks. Only a single block is supported. This field cannot be changed after creation.
- servicesIpv4Cidr List<String>Blocks 
- All services in the cluster are assigned an RFC1918 IPv4 address from these blocks. Only a single block is supported. This field cannot be changed after creation.
- clusterIpv6Cidr List<String>Blocks 
- If specified, dual stack mode is enabled and all pods in the cluster are assigned an IPv6 address from these blocks alongside from an IPv4 address. Only a single block is supported. This field cannot be changed after creation.
- networkType String
- (Output) IP addressing type of this cluster i.e. SINGLESTACK_V4 vs DUALSTACK_V4_V6.
- servicesIpv6Cidr List<String>Blocks 
- If specified, dual stack mode is enabled and all services in the cluster are assigned an IPv6 address from these blocks alongside from an IPv4 address. Only a single block is supported. This field cannot be changed after creation.
- clusterIpv4Cidr string[]Blocks 
- All pods in the cluster are assigned an RFC1918 IPv4 address from these blocks. Only a single block is supported. This field cannot be changed after creation.
- servicesIpv4Cidr string[]Blocks 
- All services in the cluster are assigned an RFC1918 IPv4 address from these blocks. Only a single block is supported. This field cannot be changed after creation.
- clusterIpv6Cidr string[]Blocks 
- If specified, dual stack mode is enabled and all pods in the cluster are assigned an IPv6 address from these blocks alongside from an IPv4 address. Only a single block is supported. This field cannot be changed after creation.
- networkType string
- (Output) IP addressing type of this cluster i.e. SINGLESTACK_V4 vs DUALSTACK_V4_V6.
- servicesIpv6Cidr string[]Blocks 
- If specified, dual stack mode is enabled and all services in the cluster are assigned an IPv6 address from these blocks alongside from an IPv4 address. Only a single block is supported. This field cannot be changed after creation.
- cluster_ipv4_ Sequence[str]cidr_ blocks 
- All pods in the cluster are assigned an RFC1918 IPv4 address from these blocks. Only a single block is supported. This field cannot be changed after creation.
- services_ipv4_ Sequence[str]cidr_ blocks 
- All services in the cluster are assigned an RFC1918 IPv4 address from these blocks. Only a single block is supported. This field cannot be changed after creation.
- cluster_ipv6_ Sequence[str]cidr_ blocks 
- If specified, dual stack mode is enabled and all pods in the cluster are assigned an IPv6 address from these blocks alongside from an IPv4 address. Only a single block is supported. This field cannot be changed after creation.
- network_type str
- (Output) IP addressing type of this cluster i.e. SINGLESTACK_V4 vs DUALSTACK_V4_V6.
- services_ipv6_ Sequence[str]cidr_ blocks 
- If specified, dual stack mode is enabled and all services in the cluster are assigned an IPv6 address from these blocks alongside from an IPv4 address. Only a single block is supported. This field cannot be changed after creation.
- clusterIpv4Cidr List<String>Blocks 
- All pods in the cluster are assigned an RFC1918 IPv4 address from these blocks. Only a single block is supported. This field cannot be changed after creation.
- servicesIpv4Cidr List<String>Blocks 
- All services in the cluster are assigned an RFC1918 IPv4 address from these blocks. Only a single block is supported. This field cannot be changed after creation.
- clusterIpv6Cidr List<String>Blocks 
- If specified, dual stack mode is enabled and all pods in the cluster are assigned an IPv6 address from these blocks alongside from an IPv4 address. Only a single block is supported. This field cannot be changed after creation.
- networkType String
- (Output) IP addressing type of this cluster i.e. SINGLESTACK_V4 vs DUALSTACK_V4_V6.
- servicesIpv6Cidr List<String>Blocks 
- If specified, dual stack mode is enabled and all services in the cluster are assigned an IPv6 address from these blocks alongside from an IPv4 address. Only a single block is supported. This field cannot be changed after creation.
ClusterSystemAddonsConfig, ClusterSystemAddonsConfigArgs        
- Ingress
ClusterSystem Addons Config Ingress 
- Config for the Ingress add-on which allows customers to create an Ingress object to manage external access to the servers in a cluster. The add-on consists of istiod and istio-ingress. Structure is documented below.
- Ingress
ClusterSystem Addons Config Ingress 
- Config for the Ingress add-on which allows customers to create an Ingress object to manage external access to the servers in a cluster. The add-on consists of istiod and istio-ingress. Structure is documented below.
- ingress
ClusterSystem Addons Config Ingress 
- Config for the Ingress add-on which allows customers to create an Ingress object to manage external access to the servers in a cluster. The add-on consists of istiod and istio-ingress. Structure is documented below.
- ingress
ClusterSystem Addons Config Ingress 
- Config for the Ingress add-on which allows customers to create an Ingress object to manage external access to the servers in a cluster. The add-on consists of istiod and istio-ingress. Structure is documented below.
- ingress
ClusterSystem Addons Config Ingress 
- Config for the Ingress add-on which allows customers to create an Ingress object to manage external access to the servers in a cluster. The add-on consists of istiod and istio-ingress. Structure is documented below.
- ingress Property Map
- Config for the Ingress add-on which allows customers to create an Ingress object to manage external access to the servers in a cluster. The add-on consists of istiod and istio-ingress. Structure is documented below.
ClusterSystemAddonsConfigIngress, ClusterSystemAddonsConfigIngressArgs          
Import
Cluster can be imported using any of these accepted formats:
- projects/{{project}}/locations/{{location}}/clusters/{{name}}
- {{project}}/{{location}}/{{name}}
- {{location}}/{{name}}
When using the pulumi import command, Cluster can be imported using one of the formats above. For example:
$ pulumi import gcp:edgecontainer/cluster:Cluster default projects/{{project}}/locations/{{location}}/clusters/{{name}}
$ pulumi import gcp:edgecontainer/cluster:Cluster default {{project}}/{{location}}/{{name}}
$ pulumi import gcp:edgecontainer/cluster:Cluster default {{location}}/{{name}}
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Google Cloud (GCP) Classic pulumi/pulumi-gcp
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the google-betaTerraform Provider.