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=gcp.edgecontainer.ClusterAuthorizationArgs(
admin_users=gcp.edgecontainer.ClusterAuthorizationAdminUsersArgs(
username="admin@hashicorptest.com",
),
),
networking=gcp.edgecontainer.ClusterNetworkingArgs(
cluster_ipv4_cidr_blocks=["10.0.0.0/16"],
services_ipv4_cidr_blocks=["10.1.0.0/16"],
),
fleet=gcp.edgecontainer.ClusterFleetArgs(
project=f"projects/{project.number}",
),
labels={
"my_key": "my_val",
"other_key": "other_val",
})
package main
import (
"fmt"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/edgecontainer"
"github.com/pulumi/pulumi-gcp/sdk/v7/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, nil, 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.String(fmt.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=gcp.edgecontainer.ClusterAuthorizationArgs(
admin_users=gcp.edgecontainer.ClusterAuthorizationAdminUsersArgs(
username="admin@hashicorptest.com",
),
),
networking=gcp.edgecontainer.ClusterNetworkingArgs(
cluster_ipv4_cidr_blocks=["10.0.0.0/16"],
services_ipv4_cidr_blocks=["10.1.0.0/16"],
),
fleet=gcp.edgecontainer.ClusterFleetArgs(
project=f"projects/{project.number}",
),
maintenance_policy=gcp.edgecontainer.ClusterMaintenancePolicyArgs(
window=gcp.edgecontainer.ClusterMaintenancePolicyWindowArgs(
recurring_window=gcp.edgecontainer.ClusterMaintenancePolicyWindowRecurringWindowArgs(
window=gcp.edgecontainer.ClusterMaintenancePolicyWindowRecurringWindowWindowArgs(
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/v7/go/gcp/edgecontainer"
"github.com/pulumi/pulumi-gcp/sdk/v7/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, nil, 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.String(fmt.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=gcp.edgecontainer.ClusterAuthorizationArgs(
admin_users=gcp.edgecontainer.ClusterAuthorizationAdminUsersArgs(
username="admin@hashicorptest.com",
),
),
networking=gcp.edgecontainer.ClusterNetworkingArgs(
cluster_ipv4_cidr_blocks=["10.0.0.0/16"],
services_ipv4_cidr_blocks=["10.1.0.0/16"],
),
fleet=gcp.edgecontainer.ClusterFleetArgs(
project=f"projects/{project.number}",
),
external_load_balancer_ipv4_address_pools=["10.100.0.0-10.100.0.10"],
control_plane=gcp.edgecontainer.ClusterControlPlaneArgs(
local=gcp.edgecontainer.ClusterControlPlaneLocalArgs(
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/v7/go/gcp/edgecontainer"
"github.com/pulumi/pulumi-gcp/sdk/v7/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, nil, 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.String(fmt.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=gcp.edgecontainer.ClusterFleetArgs(
project="string",
membership="string",
),
networking=gcp.edgecontainer.ClusterNetworkingArgs(
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=gcp.edgecontainer.ClusterAuthorizationArgs(
admin_users=gcp.edgecontainer.ClusterAuthorizationAdminUsersArgs(
username="string",
),
),
labels={
"string": "string",
},
external_load_balancer_ipv4_address_pools=["string"],
default_max_pods_per_node=0,
control_plane_encryption=gcp.edgecontainer.ClusterControlPlaneEncryptionArgs(
kms_key="string",
kms_key_active_version="string",
kms_key_state="string",
kms_statuses=[gcp.edgecontainer.ClusterControlPlaneEncryptionKmsStatusArgs(
code=0,
message="string",
)],
),
maintenance_policy=gcp.edgecontainer.ClusterMaintenancePolicyArgs(
window=gcp.edgecontainer.ClusterMaintenancePolicyWindowArgs(
recurring_window=gcp.edgecontainer.ClusterMaintenancePolicyWindowRecurringWindowArgs(
recurrence="string",
window=gcp.edgecontainer.ClusterMaintenancePolicyWindowRecurringWindowWindowArgs(
end_time="string",
start_time="string",
),
),
),
maintenance_exclusions=[gcp.edgecontainer.ClusterMaintenancePolicyMaintenanceExclusionArgs(
id="string",
window=gcp.edgecontainer.ClusterMaintenancePolicyMaintenanceExclusionWindowArgs(
end_time="string",
start_time="string",
),
)],
),
name="string",
control_plane=gcp.edgecontainer.ClusterControlPlaneArgs(
local=gcp.edgecontainer.ClusterControlPlaneLocalArgs(
machine_filter="string",
node_count=0,
node_location="string",
shared_deployment_policy="string",
),
remote=gcp.edgecontainer.ClusterControlPlaneRemoteArgs(
node_location="string",
),
),
project="string",
release_channel="string",
system_addons_config=gcp.edgecontainer.ClusterSystemAddonsConfigArgs(
ingress=gcp.edgecontainer.ClusterSystemAddonsConfigIngressArgs(
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
The Cluster resource accepts the following input properties:
- Cluster
Authorization - RBAC policy that will be applied and managed by GEC. Structure is documented below.
- Fleet
Cluster
Fleet - 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
Cluster
Networking - 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 - The configuration of the cluster control plane.
- Control
Plane ClusterEncryption Control Plane Encryption - 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 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.
- Maintenance
Policy ClusterMaintenance Policy - Cluster-wide maintenance policy configuration.
- Name string
- The GDCE cluster name.
- Project string
- Release
Channel string - The release channel a cluster is subscribed to. Possible values: ["RELEASE_CHANNEL_UNSPECIFIED", "NONE", "REGULAR"]
- System
Addons ClusterConfig System Addons Config - Config that customers are allowed to define for GDCE system add-ons.
- Target
Version string - (Output) The target version of the cluster.
- Cluster
Authorization Args - RBAC policy that will be applied and managed by GEC. Structure is documented below.
- Fleet
Cluster
Fleet 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
Cluster
Networking 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 []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.
- Maintenance
Policy ClusterMaintenance Policy Args - Cluster-wide maintenance policy configuration.
- Name string
- The GDCE cluster name.
- Project string
- Release
Channel string - 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 string - (Output) The target version of the cluster.
- Cluster
Authorization - RBAC policy that will be applied and managed by GEC. Structure is documented below.
- fleet
Cluster
Fleet - 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
Cluster
Networking - 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 - The configuration of the cluster control plane.
- control
Plane ClusterEncryption Control Plane Encryption - Remote control plane disk encryption options. This field is only used when enabling CMEK support.
- default
Max 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.
- external
Load 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.
- maintenance
Policy ClusterMaintenance Policy - Cluster-wide maintenance policy configuration.
- name String
- The GDCE cluster name.
- project String
- release
Channel String - The release channel a cluster is subscribed to. Possible values: ["RELEASE_CHANNEL_UNSPECIFIED", "NONE", "REGULAR"]
- system
Addons ClusterConfig System Addons Config - Config that customers are allowed to define for GDCE system add-ons.
- target
Version String - (Output) The target version of the cluster.
- Cluster
Authorization - RBAC policy that will be applied and managed by GEC. Structure is documented below.
- fleet
Cluster
Fleet - 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
Cluster
Networking - 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 - The configuration of the cluster control plane.
- control
Plane ClusterEncryption Control Plane Encryption - Remote control plane disk encryption options. This field is only used when enabling CMEK support.
- default
Max 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.
- external
Load 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.
- maintenance
Policy ClusterMaintenance Policy - Cluster-wide maintenance policy configuration.
- name string
- The GDCE cluster name.
- project string
- release
Channel string - The release channel a cluster is subscribed to. Possible values: ["RELEASE_CHANNEL_UNSPECIFIED", "NONE", "REGULAR"]
- system
Addons ClusterConfig System Addons Config - Config that customers are allowed to define for GDCE system add-ons.
- target
Version string - (Output) The target version of the cluster.
- Cluster
Authorization Args - RBAC policy that will be applied and managed by GEC. Structure is documented below.
- fleet
Cluster
Fleet 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
Cluster
Networking 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.
- control
Plane Property Map - The configuration of the cluster control plane.
- control
Plane Property MapEncryption - Remote control plane disk encryption options. This field is only used when enabling CMEK support.
- default
Max 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.
- external
Load 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.
- maintenance
Policy Property Map - Cluster-wide maintenance policy configuration.
- name String
- The GDCE cluster name.
- project String
- release
Channel String - The release channel a cluster is subscribed to. Possible values: ["RELEASE_CHANNEL_UNSPECIFIED", "NONE", "REGULAR"]
- system
Addons Property MapConfig - Config that customers are allowed to define for GDCE system add-ons.
- target
Version 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:
- Cluster
Ca stringCertificate - 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 stringVersion - The control plane release version.
- Create
Time string - (Output) The time when the maintenance event request was created.
- Effective
Labels 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.
- Maintenance
Events 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.
- Node
Version 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.
- Pulumi
Labels 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.
- Update
Time string - (Output) The time when the maintenance event message was updated.
- Cluster
Ca stringCertificate - 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 stringVersion - The control plane release version.
- Create
Time string - (Output) The time when the maintenance event request was created.
- Effective
Labels 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.
- Maintenance
Events []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 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.
- Pulumi
Labels 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.
- Update
Time string - (Output) The time when the maintenance event message was updated.
- cluster
Ca StringCertificate - 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 StringVersion - The control plane release version.
- create
Time String - (Output) The time when the maintenance event request was created.
- effective
Labels 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.
- maintenance
Events 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.
- node
Version 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.
- pulumi
Labels 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.
- update
Time String - (Output) The time when the maintenance event message was updated.
- cluster
Ca stringCertificate - 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 stringVersion - The control plane release version.
- create
Time string - (Output) The time when the maintenance event request was created.
- effective
Labels {[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.
- maintenance
Events 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 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.
- pulumi
Labels {[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.
- update
Time 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.
- cluster
Ca StringCertificate - 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 StringVersion - The control plane release version.
- create
Time String - (Output) The time when the maintenance event request was created.
- effective
Labels 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.
- maintenance
Events 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.
- node
Version 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.
- pulumi
Labels 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.
- update
Time 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) -> Cluster
func GetCluster(ctx *Context, name string, id IDInput, state *ClusterState, opts ...ResourceOption) (*Cluster, error)
public static Cluster Get(string name, Input<string> id, ClusterState? state, CustomResourceOptions? opts = null)
public static Cluster get(String name, Output<String> id, ClusterState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Cluster
Authorization - RBAC policy that will be applied and managed by GEC. Structure is documented below.
- Cluster
Ca stringCertificate - 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 - The configuration of the cluster control plane.
- Control
Plane ClusterEncryption Control Plane Encryption - Remote control plane disk encryption options. This field is only used when enabling CMEK support.
- Control
Plane stringVersion - The control plane release version.
- Create
Time string - (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 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.
- External
Load List<string>Balancer Ipv4Address Pools - Address pools for cluster data plane external load balancing.
- Fleet
Cluster
Fleet - 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.
- Maintenance
Events 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.
- Maintenance
Policy ClusterMaintenance Policy - Cluster-wide maintenance policy configuration.
- Name string
- The GDCE cluster name.
- Networking
Cluster
Networking - 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 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
- Pulumi
Labels Dictionary<string, string> - The combination of labels configured directly on the resource and default labels configured on the provider.
- Release
Channel string - The release channel a cluster is subscribed to. Possible values: ["RELEASE_CHANNEL_UNSPECIFIED", "NONE", "REGULAR"]
- Status string
- Indicates the status of the cluster.
- System
Addons ClusterConfig System Addons Config - Config that customers are allowed to define for GDCE system add-ons.
- Target
Version string - (Output) The target version of the cluster.
- Update
Time string - (Output) The time when the maintenance event message was updated.
- Cluster
Authorization Args - RBAC policy that will be applied and managed by GEC. Structure is documented below.
- Cluster
Ca stringCertificate - 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 stringVersion - The control plane release version.
- Create
Time string - (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 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.
- External
Load []stringBalancer Ipv4Address Pools - Address pools for cluster data plane external load balancing.
- Fleet
Cluster
Fleet 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.
- Maintenance
Events []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 string
- The GDCE cluster name.
- Networking
Cluster
Networking 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 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
- Pulumi
Labels map[string]string - The combination of labels configured directly on the resource and default labels configured on the provider.
- Release
Channel string - The release channel a cluster is subscribed to. Possible values: ["RELEASE_CHANNEL_UNSPECIFIED", "NONE", "REGULAR"]
- Status string
- 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 string - (Output) The target version of the cluster.
- Update
Time string - (Output) The time when the maintenance event message was updated.
- Cluster
Authorization - RBAC policy that will be applied and managed by GEC. Structure is documented below.
- cluster
Ca StringCertificate - 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 - The configuration of the cluster control plane.
- control
Plane ClusterEncryption Control Plane Encryption - Remote control plane disk encryption options. This field is only used when enabling CMEK support.
- control
Plane StringVersion - The control plane release version.
- create
Time String - (Output) The time when the maintenance event request was created.
- default
Max 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.
- effective
Labels 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.
- external
Load List<String>Balancer Ipv4Address Pools - Address pools for cluster data plane external load balancing.
- fleet
Cluster
Fleet - 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.
- maintenance
Events 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.
- maintenance
Policy ClusterMaintenance Policy - Cluster-wide maintenance policy configuration.
- name String
- The GDCE cluster name.
- networking
Cluster
Networking - 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 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
- pulumi
Labels Map<String,String> - The combination of labels configured directly on the resource and default labels configured on the provider.
- release
Channel String - The release channel a cluster is subscribed to. Possible values: ["RELEASE_CHANNEL_UNSPECIFIED", "NONE", "REGULAR"]
- status String
- Indicates the status of the cluster.
- system
Addons ClusterConfig System Addons Config - Config that customers are allowed to define for GDCE system add-ons.
- target
Version String - (Output) The target version of the cluster.
- update
Time String - (Output) The time when the maintenance event message was updated.
- Cluster
Authorization - RBAC policy that will be applied and managed by GEC. Structure is documented below.
- cluster
Ca stringCertificate - 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 - The configuration of the cluster control plane.
- control
Plane ClusterEncryption Control Plane Encryption - Remote control plane disk encryption options. This field is only used when enabling CMEK support.
- control
Plane stringVersion - The control plane release version.
- create
Time string - (Output) The time when the maintenance event request was created.
- default
Max 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.
- effective
Labels {[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.
- external
Load string[]Balancer Ipv4Address Pools - Address pools for cluster data plane external load balancing.
- fleet
Cluster
Fleet - 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.
- maintenance
Events 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.
- maintenance
Policy ClusterMaintenance Policy - Cluster-wide maintenance policy configuration.
- name string
- The GDCE cluster name.
- networking
Cluster
Networking - 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 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
- pulumi
Labels {[key: string]: string} - The combination of labels configured directly on the resource and default labels configured on the provider.
- release
Channel string - The release channel a cluster is subscribed to. Possible values: ["RELEASE_CHANNEL_UNSPECIFIED", "NONE", "REGULAR"]
- status string
- Indicates the status of the cluster.
- system
Addons ClusterConfig System Addons Config - Config that customers are allowed to define for GDCE system add-ons.
- target
Version string - (Output) The target version of the cluster.
- update
Time string - (Output) The time when the maintenance event message was updated.
- Cluster
Authorization 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
Cluster
Fleet 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
Cluster
Networking 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.
- cluster
Ca StringCertificate - 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 Property Map - The configuration of the cluster control plane.
- control
Plane Property MapEncryption - Remote control plane disk encryption options. This field is only used when enabling CMEK support.
- control
Plane StringVersion - The control plane release version.
- create
Time String - (Output) The time when the maintenance event request was created.
- default
Max 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.
- effective
Labels 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.
- external
Load 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.
- maintenance
Events 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.
- maintenance
Policy 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.
- node
Version 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
- pulumi
Labels Map<String> - The combination of labels configured directly on the resource and default labels configured on the provider.
- release
Channel String - The release channel a cluster is subscribed to. Possible values: ["RELEASE_CHANNEL_UNSPECIFIED", "NONE", "REGULAR"]
- status String
- Indicates the status of the cluster.
- system
Addons Property MapConfig - Config that customers are allowed to define for GDCE system add-ons.
- target
Version String - (Output) The target version of the cluster.
- update
Time String - (Output) The time when the maintenance event message was updated.
Supporting Types
ClusterAuthorization, ClusterAuthorizationArgs
- 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.
- 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.
- 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.
- 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.
- 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.
- admin
Users 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
Cluster
Control Plane Local - Local control plane configuration. Structure is documented below.
- Remote
Cluster
Control Plane Remote - Remote control plane configuration. Structure is documented below.
- Local
Cluster
Control Plane Local - Local control plane configuration. Structure is documented below.
- Remote
Cluster
Control Plane Remote - Remote control plane configuration. Structure is documented below.
- local
Cluster
Control Plane Local - Local control plane configuration. Structure is documented below.
- remote
Cluster
Control Plane Remote - Remote control plane configuration. Structure is documented below.
- local
Cluster
Control Plane Local - Local control plane configuration. Structure is documented below.
- remote
Cluster
Control Plane Remote - Remote control plane configuration. Structure is documented below.
- local
Cluster
Control Plane Local - Local control plane configuration. Structure is documented below.
- remote
Cluster
Control 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
- Kms
Key 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.
- Kms
Key stringActive Version - (Output) The Cloud KMS CryptoKeyVersion currently in use for protecting control plane disks. Only applicable if kms_key is set.
- Kms
Key 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. - Kms
Statuses 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_state
is notKMS_KEY_STATE_KEY_AVAILABLE
. If populated, this field contains the error status reported by Cloud KMS. Structure is documented below.The
kms_status
block contains:
- Kms
Key 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.
- Kms
Key stringActive Version - (Output) The Cloud KMS CryptoKeyVersion currently in use for protecting control plane disks. Only applicable if kms_key is set.
- Kms
Key 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. - Kms
Statuses []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_state
is notKMS_KEY_STATE_KEY_AVAILABLE
. If populated, this field contains the error status reported by Cloud KMS. Structure is documented below.The
kms_status
block contains:
- kms
Key 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.
- kms
Key StringActive Version - (Output) The Cloud KMS CryptoKeyVersion currently in use for protecting control plane disks. Only applicable if kms_key is set.
- kms
Key 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. - kms
Statuses 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_state
is notKMS_KEY_STATE_KEY_AVAILABLE
. If populated, this field contains the error status reported by Cloud KMS. Structure is documented below.The
kms_status
block contains:
- kms
Key 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.
- kms
Key stringActive Version - (Output) The Cloud KMS CryptoKeyVersion currently in use for protecting control plane disks. Only applicable if kms_key is set.
- kms
Key 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. - kms
Statuses 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_state
is notKMS_KEY_STATE_KEY_AVAILABLE
. If populated, this field contains the error status reported by Cloud KMS. Structure is documented below.The
kms_status
block 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_state
is notKMS_KEY_STATE_KEY_AVAILABLE
. If populated, this field contains the error status reported by Cloud KMS. Structure is documented below.The
kms_status
block contains:
- kms
Key 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.
- kms
Key StringActive Version - (Output) The Cloud KMS CryptoKeyVersion currently in use for protecting control plane disks. Only applicable if kms_key is set.
- kms
Key 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. - kms
Statuses List<Property Map> (Output) Error status returned by Cloud KMS when using this key. This field may be populated only if
kms_key_state
is notKMS_KEY_STATE_KEY_AVAILABLE
. If populated, this field contains the error status reported by Cloud KMS. Structure is documented below.The
kms_status
block contains:
ClusterControlPlaneEncryptionKmsStatus, ClusterControlPlaneEncryptionKmsStatusArgs
ClusterControlPlaneLocal, ClusterControlPlaneLocalArgs
- Machine
Filter 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.
- Node
Count int - The number of nodes to serve as replicas of the Control Plane. Only 1 and 3 are supported.
- Node
Location 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 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.
- Node
Count int - The number of nodes to serve as replicas of the Control Plane. Only 1 and 3 are supported.
- Node
Location 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 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.
- node
Count Integer - The number of nodes to serve as replicas of the Control Plane. Only 1 and 3 are supported.
- node
Location 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 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.
- node
Count number - The number of nodes to serve as replicas of the Control Plane. Only 1 and 3 are supported.
- node
Location 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
.
- machine
Filter 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.
- node
Count Number - The number of nodes to serve as replicas of the Control Plane. Only 1 and 3 are supported.
- node
Location 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
- Node
Location 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 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 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 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
.
- node
Location 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
- Create
Time string - (Output) The time when the maintenance event request was created.
- End
Time 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.
- Start
Time string - (Output) The time when the maintenance event started.
- State string
- (Output) Indicates the maintenance event state.
- Target
Version string - (Output) The target version of the cluster.
- Type string
- (Output) Indicates the maintenance event type.
- Update
Time string - (Output) The time when the maintenance event message was updated.
- Uuid string
- (Output) UUID of the maintenance event.
- Create
Time string - (Output) The time when the maintenance event request was created.
- End
Time 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.
- Start
Time string - (Output) The time when the maintenance event started.
- State string
- (Output) Indicates the maintenance event state.
- Target
Version string - (Output) The target version of the cluster.
- Type string
- (Output) Indicates the maintenance event type.
- Update
Time string - (Output) The time when the maintenance event message was updated.
- Uuid string
- (Output) UUID of the maintenance event.
- create
Time String - (Output) The time when the maintenance event request was created.
- end
Time 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.
- start
Time String - (Output) The time when the maintenance event started.
- state String
- (Output) Indicates the maintenance event state.
- target
Version String - (Output) The target version of the cluster.
- type String
- (Output) Indicates the maintenance event type.
- update
Time String - (Output) The time when the maintenance event message was updated.
- uuid String
- (Output) UUID of the maintenance event.
- create
Time string - (Output) The time when the maintenance event request was created.
- end
Time 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.
- start
Time string - (Output) The time when the maintenance event started.
- state string
- (Output) Indicates the maintenance event state.
- target
Version string - (Output) The target version of the cluster.
- type string
- (Output) Indicates the maintenance event type.
- update
Time 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.
- create
Time String - (Output) The time when the maintenance event request was created.
- end
Time 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.
- start
Time String - (Output) The time when the maintenance event started.
- state String
- (Output) Indicates the maintenance event state.
- target
Version String - (Output) The target version of the cluster.
- type String
- (Output) Indicates the maintenance event type.
- update
Time String - (Output) The time when the maintenance event message was updated.
- uuid String
- (Output) UUID of the maintenance event.
ClusterMaintenancePolicy, ClusterMaintenancePolicyArgs
- Window
Cluster
Maintenance Policy Window - Specifies the maintenance window in which maintenance may be performed. Structure is documented below.
- Maintenance
Exclusions 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
Cluster
Maintenance Policy Window - Specifies the maintenance window in which maintenance may be performed. Structure is documented below.
- Maintenance
Exclusions []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
Cluster
Maintenance Policy Window - Specifies the maintenance window in which maintenance may be performed. Structure is documented below.
- maintenance
Exclusions 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
Cluster
Maintenance Policy Window - Specifies the maintenance window in which maintenance may be performed. Structure is documented below.
- maintenance
Exclusions 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
Cluster
Maintenance 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.
- maintenance
Exclusions 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
Cluster
Maintenance 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
Cluster
Maintenance 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
Cluster
Maintenance 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
Cluster
Maintenance 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
Cluster
Maintenance 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
- Recurring
Window 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.
- recurring
Window 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.
- recurring_
window ClusterMaintenance Policy Window Recurring Window - Represents an arbitrary window of time that recurs. Structure is documented below.
- recurring
Window 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
Cluster
Maintenance 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
Cluster
Maintenance 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
Cluster
Maintenance 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
Cluster
Maintenance 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
Cluster
Maintenance 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
- Cluster
Ipv4Cidr 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.
- Services
Ipv4Cidr 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.
- Cluster
Ipv6Cidr 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.
- Network
Type string - (Output) IP addressing type of this cluster i.e. SINGLESTACK_V4 vs DUALSTACK_V4_V6.
- Services
Ipv6Cidr 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.
- Cluster
Ipv4Cidr []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.
- Services
Ipv4Cidr []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.
- Cluster
Ipv6Cidr []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.
- Network
Type string - (Output) IP addressing type of this cluster i.e. SINGLESTACK_V4 vs DUALSTACK_V4_V6.
- Services
Ipv6Cidr []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.
- cluster
Ipv4Cidr 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.
- services
Ipv4Cidr 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.
- cluster
Ipv6Cidr 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.
- network
Type String - (Output) IP addressing type of this cluster i.e. SINGLESTACK_V4 vs DUALSTACK_V4_V6.
- services
Ipv6Cidr 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.
- cluster
Ipv4Cidr 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.
- services
Ipv4Cidr 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.
- cluster
Ipv6Cidr 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.
- network
Type string - (Output) IP addressing type of this cluster i.e. SINGLESTACK_V4 vs DUALSTACK_V4_V6.
- services
Ipv6Cidr 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.
- cluster
Ipv4Cidr 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.
- services
Ipv4Cidr 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.
- cluster
Ipv6Cidr 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.
- network
Type String - (Output) IP addressing type of this cluster i.e. SINGLESTACK_V4 vs DUALSTACK_V4_V6.
- services
Ipv6Cidr 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
Cluster
System 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
Cluster
System 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
Cluster
System 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
Cluster
System 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
Cluster
System 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-beta
Terraform Provider.