gcp.edgecontainer.Cluster
Explore with Pulumi AI
Cluster contains information about a Google Distributed Cloud Edge Kubernetes cluster.
To get more information about Cluster, see:
- API documentation
- How-to Guides
Example Usage
Edgecontainer Cluster
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const project = gcp.organizations.getProject({});
const _default = new gcp.edgecontainer.Cluster("default", {
name: "basic-cluster",
location: "us-central1",
authorization: {
adminUsers: {
username: "admin@hashicorptest.com",
},
},
networking: {
clusterIpv4CidrBlocks: ["10.0.0.0/16"],
servicesIpv4CidrBlocks: ["10.1.0.0/16"],
},
fleet: {
project: project.then(project => `projects/${project.number}`),
},
labels: {
my_key: "my_val",
other_key: "other_val",
},
});
import pulumi
import pulumi_gcp as gcp
project = gcp.organizations.get_project()
default = gcp.edgecontainer.Cluster("default",
name="basic-cluster",
location="us-central1",
authorization={
"admin_users": {
"username": "admin@hashicorptest.com",
},
},
networking={
"cluster_ipv4_cidr_blocks": ["10.0.0.0/16"],
"services_ipv4_cidr_blocks": ["10.1.0.0/16"],
},
fleet={
"project": f"projects/{project.number}",
},
labels={
"my_key": "my_val",
"other_key": "other_val",
})
package main
import (
"fmt"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/edgecontainer"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
project, err := organizations.LookupProject(ctx, &organizations.LookupProjectArgs{}, nil)
if err != nil {
return err
}
_, err = edgecontainer.NewCluster(ctx, "default", &edgecontainer.ClusterArgs{
Name: pulumi.String("basic-cluster"),
Location: pulumi.String("us-central1"),
Authorization: &edgecontainer.ClusterAuthorizationArgs{
AdminUsers: &edgecontainer.ClusterAuthorizationAdminUsersArgs{
Username: pulumi.String("admin@hashicorptest.com"),
},
},
Networking: &edgecontainer.ClusterNetworkingArgs{
ClusterIpv4CidrBlocks: pulumi.StringArray{
pulumi.String("10.0.0.0/16"),
},
ServicesIpv4CidrBlocks: pulumi.StringArray{
pulumi.String("10.1.0.0/16"),
},
},
Fleet: &edgecontainer.ClusterFleetArgs{
Project: pulumi.Sprintf("projects/%v", project.Number),
},
Labels: pulumi.StringMap{
"my_key": pulumi.String("my_val"),
"other_key": pulumi.String("other_val"),
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var project = Gcp.Organizations.GetProject.Invoke();
var @default = new Gcp.EdgeContainer.Cluster("default", new()
{
Name = "basic-cluster",
Location = "us-central1",
Authorization = new Gcp.EdgeContainer.Inputs.ClusterAuthorizationArgs
{
AdminUsers = new Gcp.EdgeContainer.Inputs.ClusterAuthorizationAdminUsersArgs
{
Username = "admin@hashicorptest.com",
},
},
Networking = new Gcp.EdgeContainer.Inputs.ClusterNetworkingArgs
{
ClusterIpv4CidrBlocks = new[]
{
"10.0.0.0/16",
},
ServicesIpv4CidrBlocks = new[]
{
"10.1.0.0/16",
},
},
Fleet = new Gcp.EdgeContainer.Inputs.ClusterFleetArgs
{
Project = $"projects/{project.Apply(getProjectResult => getProjectResult.Number)}",
},
Labels =
{
{ "my_key", "my_val" },
{ "other_key", "other_val" },
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.organizations.OrganizationsFunctions;
import com.pulumi.gcp.organizations.inputs.GetProjectArgs;
import com.pulumi.gcp.edgecontainer.Cluster;
import com.pulumi.gcp.edgecontainer.ClusterArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterAuthorizationArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterAuthorizationAdminUsersArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterNetworkingArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterFleetArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var project = OrganizationsFunctions.getProject();
var default_ = new Cluster("default", ClusterArgs.builder()
.name("basic-cluster")
.location("us-central1")
.authorization(ClusterAuthorizationArgs.builder()
.adminUsers(ClusterAuthorizationAdminUsersArgs.builder()
.username("admin@hashicorptest.com")
.build())
.build())
.networking(ClusterNetworkingArgs.builder()
.clusterIpv4CidrBlocks("10.0.0.0/16")
.servicesIpv4CidrBlocks("10.1.0.0/16")
.build())
.fleet(ClusterFleetArgs.builder()
.project(String.format("projects/%s", project.applyValue(getProjectResult -> getProjectResult.number())))
.build())
.labels(Map.ofEntries(
Map.entry("my_key", "my_val"),
Map.entry("other_key", "other_val")
))
.build());
}
}
resources:
default:
type: gcp:edgecontainer:Cluster
properties:
name: basic-cluster
location: us-central1
authorization:
adminUsers:
username: admin@hashicorptest.com
networking:
clusterIpv4CidrBlocks:
- 10.0.0.0/16
servicesIpv4CidrBlocks:
- 10.1.0.0/16
fleet:
project: projects/${project.number}
labels:
my_key: my_val
other_key: other_val
variables:
project:
fn::invoke:
function: gcp:organizations:getProject
arguments: {}
Edgecontainer Cluster With Maintenance Window
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const project = gcp.organizations.getProject({});
const _default = new gcp.edgecontainer.Cluster("default", {
name: "cluster-with-maintenance",
location: "us-central1",
authorization: {
adminUsers: {
username: "admin@hashicorptest.com",
},
},
networking: {
clusterIpv4CidrBlocks: ["10.0.0.0/16"],
servicesIpv4CidrBlocks: ["10.1.0.0/16"],
},
fleet: {
project: project.then(project => `projects/${project.number}`),
},
maintenancePolicy: {
window: {
recurringWindow: {
window: {
startTime: "2023-01-01T08:00:00Z",
endTime: "2023-01-01T17:00:00Z",
},
recurrence: "FREQ=WEEKLY;BYDAY=SA",
},
},
},
});
import pulumi
import pulumi_gcp as gcp
project = gcp.organizations.get_project()
default = gcp.edgecontainer.Cluster("default",
name="cluster-with-maintenance",
location="us-central1",
authorization={
"admin_users": {
"username": "admin@hashicorptest.com",
},
},
networking={
"cluster_ipv4_cidr_blocks": ["10.0.0.0/16"],
"services_ipv4_cidr_blocks": ["10.1.0.0/16"],
},
fleet={
"project": f"projects/{project.number}",
},
maintenance_policy={
"window": {
"recurring_window": {
"window": {
"start_time": "2023-01-01T08:00:00Z",
"end_time": "2023-01-01T17:00:00Z",
},
"recurrence": "FREQ=WEEKLY;BYDAY=SA",
},
},
})
package main
import (
"fmt"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/edgecontainer"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
project, err := organizations.LookupProject(ctx, &organizations.LookupProjectArgs{}, nil)
if err != nil {
return err
}
_, err = edgecontainer.NewCluster(ctx, "default", &edgecontainer.ClusterArgs{
Name: pulumi.String("cluster-with-maintenance"),
Location: pulumi.String("us-central1"),
Authorization: &edgecontainer.ClusterAuthorizationArgs{
AdminUsers: &edgecontainer.ClusterAuthorizationAdminUsersArgs{
Username: pulumi.String("admin@hashicorptest.com"),
},
},
Networking: &edgecontainer.ClusterNetworkingArgs{
ClusterIpv4CidrBlocks: pulumi.StringArray{
pulumi.String("10.0.0.0/16"),
},
ServicesIpv4CidrBlocks: pulumi.StringArray{
pulumi.String("10.1.0.0/16"),
},
},
Fleet: &edgecontainer.ClusterFleetArgs{
Project: pulumi.Sprintf("projects/%v", project.Number),
},
MaintenancePolicy: &edgecontainer.ClusterMaintenancePolicyArgs{
Window: &edgecontainer.ClusterMaintenancePolicyWindowArgs{
RecurringWindow: &edgecontainer.ClusterMaintenancePolicyWindowRecurringWindowArgs{
Window: &edgecontainer.ClusterMaintenancePolicyWindowRecurringWindowWindowArgs{
StartTime: pulumi.String("2023-01-01T08:00:00Z"),
EndTime: pulumi.String("2023-01-01T17:00:00Z"),
},
Recurrence: pulumi.String("FREQ=WEEKLY;BYDAY=SA"),
},
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var project = Gcp.Organizations.GetProject.Invoke();
var @default = new Gcp.EdgeContainer.Cluster("default", new()
{
Name = "cluster-with-maintenance",
Location = "us-central1",
Authorization = new Gcp.EdgeContainer.Inputs.ClusterAuthorizationArgs
{
AdminUsers = new Gcp.EdgeContainer.Inputs.ClusterAuthorizationAdminUsersArgs
{
Username = "admin@hashicorptest.com",
},
},
Networking = new Gcp.EdgeContainer.Inputs.ClusterNetworkingArgs
{
ClusterIpv4CidrBlocks = new[]
{
"10.0.0.0/16",
},
ServicesIpv4CidrBlocks = new[]
{
"10.1.0.0/16",
},
},
Fleet = new Gcp.EdgeContainer.Inputs.ClusterFleetArgs
{
Project = $"projects/{project.Apply(getProjectResult => getProjectResult.Number)}",
},
MaintenancePolicy = new Gcp.EdgeContainer.Inputs.ClusterMaintenancePolicyArgs
{
Window = new Gcp.EdgeContainer.Inputs.ClusterMaintenancePolicyWindowArgs
{
RecurringWindow = new Gcp.EdgeContainer.Inputs.ClusterMaintenancePolicyWindowRecurringWindowArgs
{
Window = new Gcp.EdgeContainer.Inputs.ClusterMaintenancePolicyWindowRecurringWindowWindowArgs
{
StartTime = "2023-01-01T08:00:00Z",
EndTime = "2023-01-01T17:00:00Z",
},
Recurrence = "FREQ=WEEKLY;BYDAY=SA",
},
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.organizations.OrganizationsFunctions;
import com.pulumi.gcp.organizations.inputs.GetProjectArgs;
import com.pulumi.gcp.edgecontainer.Cluster;
import com.pulumi.gcp.edgecontainer.ClusterArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterAuthorizationArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterAuthorizationAdminUsersArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterNetworkingArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterFleetArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterMaintenancePolicyArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterMaintenancePolicyWindowArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterMaintenancePolicyWindowRecurringWindowArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterMaintenancePolicyWindowRecurringWindowWindowArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var project = OrganizationsFunctions.getProject();
var default_ = new Cluster("default", ClusterArgs.builder()
.name("cluster-with-maintenance")
.location("us-central1")
.authorization(ClusterAuthorizationArgs.builder()
.adminUsers(ClusterAuthorizationAdminUsersArgs.builder()
.username("admin@hashicorptest.com")
.build())
.build())
.networking(ClusterNetworkingArgs.builder()
.clusterIpv4CidrBlocks("10.0.0.0/16")
.servicesIpv4CidrBlocks("10.1.0.0/16")
.build())
.fleet(ClusterFleetArgs.builder()
.project(String.format("projects/%s", project.applyValue(getProjectResult -> getProjectResult.number())))
.build())
.maintenancePolicy(ClusterMaintenancePolicyArgs.builder()
.window(ClusterMaintenancePolicyWindowArgs.builder()
.recurringWindow(ClusterMaintenancePolicyWindowRecurringWindowArgs.builder()
.window(ClusterMaintenancePolicyWindowRecurringWindowWindowArgs.builder()
.startTime("2023-01-01T08:00:00Z")
.endTime("2023-01-01T17:00:00Z")
.build())
.recurrence("FREQ=WEEKLY;BYDAY=SA")
.build())
.build())
.build())
.build());
}
}
resources:
default:
type: gcp:edgecontainer:Cluster
properties:
name: cluster-with-maintenance
location: us-central1
authorization:
adminUsers:
username: admin@hashicorptest.com
networking:
clusterIpv4CidrBlocks:
- 10.0.0.0/16
servicesIpv4CidrBlocks:
- 10.1.0.0/16
fleet:
project: projects/${project.number}
maintenancePolicy:
window:
recurringWindow:
window:
startTime: 2023-01-01T08:00:00Z
endTime: 2023-01-01T17:00:00Z
recurrence: FREQ=WEEKLY;BYDAY=SA
variables:
project:
fn::invoke:
function: gcp:organizations:getProject
arguments: {}
Edgecontainer Local Control Plane Cluster
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const project = gcp.organizations.getProject({});
const _default = new gcp.edgecontainer.Cluster("default", {
name: "local-control-plane-cluster",
location: "us-central1",
authorization: {
adminUsers: {
username: "admin@hashicorptest.com",
},
},
networking: {
clusterIpv4CidrBlocks: ["10.0.0.0/16"],
servicesIpv4CidrBlocks: ["10.1.0.0/16"],
},
fleet: {
project: project.then(project => `projects/${project.number}`),
},
externalLoadBalancerIpv4AddressPools: ["10.100.0.0-10.100.0.10"],
controlPlane: {
local: {
nodeLocation: "us-central1-edge-example-edgesite",
nodeCount: 1,
machineFilter: "machine-name",
sharedDeploymentPolicy: "ALLOWED",
},
},
});
import pulumi
import pulumi_gcp as gcp
project = gcp.organizations.get_project()
default = gcp.edgecontainer.Cluster("default",
name="local-control-plane-cluster",
location="us-central1",
authorization={
"admin_users": {
"username": "admin@hashicorptest.com",
},
},
networking={
"cluster_ipv4_cidr_blocks": ["10.0.0.0/16"],
"services_ipv4_cidr_blocks": ["10.1.0.0/16"],
},
fleet={
"project": f"projects/{project.number}",
},
external_load_balancer_ipv4_address_pools=["10.100.0.0-10.100.0.10"],
control_plane={
"local": {
"node_location": "us-central1-edge-example-edgesite",
"node_count": 1,
"machine_filter": "machine-name",
"shared_deployment_policy": "ALLOWED",
},
})
package main
import (
"fmt"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/edgecontainer"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
project, err := organizations.LookupProject(ctx, &organizations.LookupProjectArgs{}, nil)
if err != nil {
return err
}
_, err = edgecontainer.NewCluster(ctx, "default", &edgecontainer.ClusterArgs{
Name: pulumi.String("local-control-plane-cluster"),
Location: pulumi.String("us-central1"),
Authorization: &edgecontainer.ClusterAuthorizationArgs{
AdminUsers: &edgecontainer.ClusterAuthorizationAdminUsersArgs{
Username: pulumi.String("admin@hashicorptest.com"),
},
},
Networking: &edgecontainer.ClusterNetworkingArgs{
ClusterIpv4CidrBlocks: pulumi.StringArray{
pulumi.String("10.0.0.0/16"),
},
ServicesIpv4CidrBlocks: pulumi.StringArray{
pulumi.String("10.1.0.0/16"),
},
},
Fleet: &edgecontainer.ClusterFleetArgs{
Project: pulumi.Sprintf("projects/%v", project.Number),
},
ExternalLoadBalancerIpv4AddressPools: pulumi.StringArray{
pulumi.String("10.100.0.0-10.100.0.10"),
},
ControlPlane: &edgecontainer.ClusterControlPlaneArgs{
Local: &edgecontainer.ClusterControlPlaneLocalArgs{
NodeLocation: pulumi.String("us-central1-edge-example-edgesite"),
NodeCount: pulumi.Int(1),
MachineFilter: pulumi.String("machine-name"),
SharedDeploymentPolicy: pulumi.String("ALLOWED"),
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var project = Gcp.Organizations.GetProject.Invoke();
var @default = new Gcp.EdgeContainer.Cluster("default", new()
{
Name = "local-control-plane-cluster",
Location = "us-central1",
Authorization = new Gcp.EdgeContainer.Inputs.ClusterAuthorizationArgs
{
AdminUsers = new Gcp.EdgeContainer.Inputs.ClusterAuthorizationAdminUsersArgs
{
Username = "admin@hashicorptest.com",
},
},
Networking = new Gcp.EdgeContainer.Inputs.ClusterNetworkingArgs
{
ClusterIpv4CidrBlocks = new[]
{
"10.0.0.0/16",
},
ServicesIpv4CidrBlocks = new[]
{
"10.1.0.0/16",
},
},
Fleet = new Gcp.EdgeContainer.Inputs.ClusterFleetArgs
{
Project = $"projects/{project.Apply(getProjectResult => getProjectResult.Number)}",
},
ExternalLoadBalancerIpv4AddressPools = new[]
{
"10.100.0.0-10.100.0.10",
},
ControlPlane = new Gcp.EdgeContainer.Inputs.ClusterControlPlaneArgs
{
Local = new Gcp.EdgeContainer.Inputs.ClusterControlPlaneLocalArgs
{
NodeLocation = "us-central1-edge-example-edgesite",
NodeCount = 1,
MachineFilter = "machine-name",
SharedDeploymentPolicy = "ALLOWED",
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.organizations.OrganizationsFunctions;
import com.pulumi.gcp.organizations.inputs.GetProjectArgs;
import com.pulumi.gcp.edgecontainer.Cluster;
import com.pulumi.gcp.edgecontainer.ClusterArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterAuthorizationArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterAuthorizationAdminUsersArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterNetworkingArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterFleetArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterControlPlaneArgs;
import com.pulumi.gcp.edgecontainer.inputs.ClusterControlPlaneLocalArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var project = OrganizationsFunctions.getProject();
var default_ = new Cluster("default", ClusterArgs.builder()
.name("local-control-plane-cluster")
.location("us-central1")
.authorization(ClusterAuthorizationArgs.builder()
.adminUsers(ClusterAuthorizationAdminUsersArgs.builder()
.username("admin@hashicorptest.com")
.build())
.build())
.networking(ClusterNetworkingArgs.builder()
.clusterIpv4CidrBlocks("10.0.0.0/16")
.servicesIpv4CidrBlocks("10.1.0.0/16")
.build())
.fleet(ClusterFleetArgs.builder()
.project(String.format("projects/%s", project.applyValue(getProjectResult -> getProjectResult.number())))
.build())
.externalLoadBalancerIpv4AddressPools("10.100.0.0-10.100.0.10")
.controlPlane(ClusterControlPlaneArgs.builder()
.local(ClusterControlPlaneLocalArgs.builder()
.nodeLocation("us-central1-edge-example-edgesite")
.nodeCount(1)
.machineFilter("machine-name")
.sharedDeploymentPolicy("ALLOWED")
.build())
.build())
.build());
}
}
resources:
default:
type: gcp:edgecontainer:Cluster
properties:
name: local-control-plane-cluster
location: us-central1
authorization:
adminUsers:
username: admin@hashicorptest.com
networking:
clusterIpv4CidrBlocks:
- 10.0.0.0/16
servicesIpv4CidrBlocks:
- 10.1.0.0/16
fleet:
project: projects/${project.number}
externalLoadBalancerIpv4AddressPools:
- 10.100.0.0-10.100.0.10
controlPlane:
local:
nodeLocation: us-central1-edge-example-edgesite
nodeCount: 1
machineFilter: machine-name
sharedDeploymentPolicy: ALLOWED
variables:
project:
fn::invoke:
function: gcp:organizations:getProject
arguments: {}
Create Cluster Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Cluster(name: string, args: ClusterArgs, opts?: CustomResourceOptions);
@overload
def Cluster(resource_name: str,
args: ClusterArgs,
opts: Optional[ResourceOptions] = None)
@overload
def Cluster(resource_name: str,
opts: Optional[ResourceOptions] = None,
fleet: Optional[ClusterFleetArgs] = None,
networking: Optional[ClusterNetworkingArgs] = None,
location: Optional[str] = None,
authorization: Optional[ClusterAuthorizationArgs] = None,
labels: Optional[Mapping[str, str]] = None,
external_load_balancer_ipv4_address_pools: Optional[Sequence[str]] = None,
default_max_pods_per_node: Optional[int] = None,
control_plane_encryption: Optional[ClusterControlPlaneEncryptionArgs] = None,
maintenance_policy: Optional[ClusterMaintenancePolicyArgs] = None,
name: Optional[str] = None,
control_plane: Optional[ClusterControlPlaneArgs] = None,
project: Optional[str] = None,
release_channel: Optional[str] = None,
system_addons_config: Optional[ClusterSystemAddonsConfigArgs] = None,
target_version: Optional[str] = None)
func NewCluster(ctx *Context, name string, args ClusterArgs, opts ...ResourceOption) (*Cluster, error)
public Cluster(string name, ClusterArgs args, CustomResourceOptions? opts = null)
public Cluster(String name, ClusterArgs args)
public Cluster(String name, ClusterArgs args, CustomResourceOptions options)
type: gcp:edgecontainer:Cluster
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name
This property is required. string - The unique name of the resource.
- args
This property is required. ClusterArgs - The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name
This property is required. str - The unique name of the resource.
- args
This property is required. 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
This property is required. string - The unique name of the resource.
- args
This property is required. ClusterArgs - The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name
This property is required. string - The unique name of the resource.
- args
This property is required. ClusterArgs - The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name
This property is required. String - The unique name of the resource.
- args
This property is required. ClusterArgs - The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var exampleclusterResourceResourceFromEdgecontainercluster = new Gcp.EdgeContainer.Cluster("exampleclusterResourceResourceFromEdgecontainercluster", new()
{
Fleet = new Gcp.EdgeContainer.Inputs.ClusterFleetArgs
{
Project = "string",
Membership = "string",
},
Networking = new Gcp.EdgeContainer.Inputs.ClusterNetworkingArgs
{
ClusterIpv4CidrBlocks = new[]
{
"string",
},
ServicesIpv4CidrBlocks = new[]
{
"string",
},
ClusterIpv6CidrBlocks = new[]
{
"string",
},
NetworkType = "string",
ServicesIpv6CidrBlocks = new[]
{
"string",
},
},
Location = "string",
Authorization = new Gcp.EdgeContainer.Inputs.ClusterAuthorizationArgs
{
AdminUsers = new Gcp.EdgeContainer.Inputs.ClusterAuthorizationAdminUsersArgs
{
Username = "string",
},
},
Labels =
{
{ "string", "string" },
},
ExternalLoadBalancerIpv4AddressPools = new[]
{
"string",
},
DefaultMaxPodsPerNode = 0,
ControlPlaneEncryption = new Gcp.EdgeContainer.Inputs.ClusterControlPlaneEncryptionArgs
{
KmsKey = "string",
KmsKeyActiveVersion = "string",
KmsKeyState = "string",
KmsStatuses = new[]
{
new Gcp.EdgeContainer.Inputs.ClusterControlPlaneEncryptionKmsStatusArgs
{
Code = 0,
Message = "string",
},
},
},
MaintenancePolicy = new Gcp.EdgeContainer.Inputs.ClusterMaintenancePolicyArgs
{
Window = new Gcp.EdgeContainer.Inputs.ClusterMaintenancePolicyWindowArgs
{
RecurringWindow = new Gcp.EdgeContainer.Inputs.ClusterMaintenancePolicyWindowRecurringWindowArgs
{
Recurrence = "string",
Window = new Gcp.EdgeContainer.Inputs.ClusterMaintenancePolicyWindowRecurringWindowWindowArgs
{
EndTime = "string",
StartTime = "string",
},
},
},
MaintenanceExclusions = new[]
{
new Gcp.EdgeContainer.Inputs.ClusterMaintenancePolicyMaintenanceExclusionArgs
{
Id = "string",
Window = new Gcp.EdgeContainer.Inputs.ClusterMaintenancePolicyMaintenanceExclusionWindowArgs
{
EndTime = "string",
StartTime = "string",
},
},
},
},
Name = "string",
ControlPlane = new Gcp.EdgeContainer.Inputs.ClusterControlPlaneArgs
{
Local = new Gcp.EdgeContainer.Inputs.ClusterControlPlaneLocalArgs
{
MachineFilter = "string",
NodeCount = 0,
NodeLocation = "string",
SharedDeploymentPolicy = "string",
},
Remote = new Gcp.EdgeContainer.Inputs.ClusterControlPlaneRemoteArgs
{
NodeLocation = "string",
},
},
Project = "string",
ReleaseChannel = "string",
SystemAddonsConfig = new Gcp.EdgeContainer.Inputs.ClusterSystemAddonsConfigArgs
{
Ingress = new Gcp.EdgeContainer.Inputs.ClusterSystemAddonsConfigIngressArgs
{
Disabled = false,
Ipv4Vip = "string",
},
},
TargetVersion = "string",
});
example, err := edgecontainer.NewCluster(ctx, "exampleclusterResourceResourceFromEdgecontainercluster", &edgecontainer.ClusterArgs{
Fleet: &edgecontainer.ClusterFleetArgs{
Project: pulumi.String("string"),
Membership: pulumi.String("string"),
},
Networking: &edgecontainer.ClusterNetworkingArgs{
ClusterIpv4CidrBlocks: pulumi.StringArray{
pulumi.String("string"),
},
ServicesIpv4CidrBlocks: pulumi.StringArray{
pulumi.String("string"),
},
ClusterIpv6CidrBlocks: pulumi.StringArray{
pulumi.String("string"),
},
NetworkType: pulumi.String("string"),
ServicesIpv6CidrBlocks: pulumi.StringArray{
pulumi.String("string"),
},
},
Location: pulumi.String("string"),
Authorization: &edgecontainer.ClusterAuthorizationArgs{
AdminUsers: &edgecontainer.ClusterAuthorizationAdminUsersArgs{
Username: pulumi.String("string"),
},
},
Labels: pulumi.StringMap{
"string": pulumi.String("string"),
},
ExternalLoadBalancerIpv4AddressPools: pulumi.StringArray{
pulumi.String("string"),
},
DefaultMaxPodsPerNode: pulumi.Int(0),
ControlPlaneEncryption: &edgecontainer.ClusterControlPlaneEncryptionArgs{
KmsKey: pulumi.String("string"),
KmsKeyActiveVersion: pulumi.String("string"),
KmsKeyState: pulumi.String("string"),
KmsStatuses: edgecontainer.ClusterControlPlaneEncryptionKmsStatusArray{
&edgecontainer.ClusterControlPlaneEncryptionKmsStatusArgs{
Code: pulumi.Int(0),
Message: pulumi.String("string"),
},
},
},
MaintenancePolicy: &edgecontainer.ClusterMaintenancePolicyArgs{
Window: &edgecontainer.ClusterMaintenancePolicyWindowArgs{
RecurringWindow: &edgecontainer.ClusterMaintenancePolicyWindowRecurringWindowArgs{
Recurrence: pulumi.String("string"),
Window: &edgecontainer.ClusterMaintenancePolicyWindowRecurringWindowWindowArgs{
EndTime: pulumi.String("string"),
StartTime: pulumi.String("string"),
},
},
},
MaintenanceExclusions: edgecontainer.ClusterMaintenancePolicyMaintenanceExclusionArray{
&edgecontainer.ClusterMaintenancePolicyMaintenanceExclusionArgs{
Id: pulumi.String("string"),
Window: &edgecontainer.ClusterMaintenancePolicyMaintenanceExclusionWindowArgs{
EndTime: pulumi.String("string"),
StartTime: pulumi.String("string"),
},
},
},
},
Name: pulumi.String("string"),
ControlPlane: &edgecontainer.ClusterControlPlaneArgs{
Local: &edgecontainer.ClusterControlPlaneLocalArgs{
MachineFilter: pulumi.String("string"),
NodeCount: pulumi.Int(0),
NodeLocation: pulumi.String("string"),
SharedDeploymentPolicy: pulumi.String("string"),
},
Remote: &edgecontainer.ClusterControlPlaneRemoteArgs{
NodeLocation: pulumi.String("string"),
},
},
Project: pulumi.String("string"),
ReleaseChannel: pulumi.String("string"),
SystemAddonsConfig: &edgecontainer.ClusterSystemAddonsConfigArgs{
Ingress: &edgecontainer.ClusterSystemAddonsConfigIngressArgs{
Disabled: pulumi.Bool(false),
Ipv4Vip: pulumi.String("string"),
},
},
TargetVersion: pulumi.String("string"),
})
var exampleclusterResourceResourceFromEdgecontainercluster = new Cluster("exampleclusterResourceResourceFromEdgecontainercluster", ClusterArgs.builder()
.fleet(ClusterFleetArgs.builder()
.project("string")
.membership("string")
.build())
.networking(ClusterNetworkingArgs.builder()
.clusterIpv4CidrBlocks("string")
.servicesIpv4CidrBlocks("string")
.clusterIpv6CidrBlocks("string")
.networkType("string")
.servicesIpv6CidrBlocks("string")
.build())
.location("string")
.authorization(ClusterAuthorizationArgs.builder()
.adminUsers(ClusterAuthorizationAdminUsersArgs.builder()
.username("string")
.build())
.build())
.labels(Map.of("string", "string"))
.externalLoadBalancerIpv4AddressPools("string")
.defaultMaxPodsPerNode(0)
.controlPlaneEncryption(ClusterControlPlaneEncryptionArgs.builder()
.kmsKey("string")
.kmsKeyActiveVersion("string")
.kmsKeyState("string")
.kmsStatuses(ClusterControlPlaneEncryptionKmsStatusArgs.builder()
.code(0)
.message("string")
.build())
.build())
.maintenancePolicy(ClusterMaintenancePolicyArgs.builder()
.window(ClusterMaintenancePolicyWindowArgs.builder()
.recurringWindow(ClusterMaintenancePolicyWindowRecurringWindowArgs.builder()
.recurrence("string")
.window(ClusterMaintenancePolicyWindowRecurringWindowWindowArgs.builder()
.endTime("string")
.startTime("string")
.build())
.build())
.build())
.maintenanceExclusions(ClusterMaintenancePolicyMaintenanceExclusionArgs.builder()
.id("string")
.window(ClusterMaintenancePolicyMaintenanceExclusionWindowArgs.builder()
.endTime("string")
.startTime("string")
.build())
.build())
.build())
.name("string")
.controlPlane(ClusterControlPlaneArgs.builder()
.local(ClusterControlPlaneLocalArgs.builder()
.machineFilter("string")
.nodeCount(0)
.nodeLocation("string")
.sharedDeploymentPolicy("string")
.build())
.remote(ClusterControlPlaneRemoteArgs.builder()
.nodeLocation("string")
.build())
.build())
.project("string")
.releaseChannel("string")
.systemAddonsConfig(ClusterSystemAddonsConfigArgs.builder()
.ingress(ClusterSystemAddonsConfigIngressArgs.builder()
.disabled(false)
.ipv4Vip("string")
.build())
.build())
.targetVersion("string")
.build());
examplecluster_resource_resource_from_edgecontainercluster = gcp.edgecontainer.Cluster("exampleclusterResourceResourceFromEdgecontainercluster",
fleet={
"project": "string",
"membership": "string",
},
networking={
"cluster_ipv4_cidr_blocks": ["string"],
"services_ipv4_cidr_blocks": ["string"],
"cluster_ipv6_cidr_blocks": ["string"],
"network_type": "string",
"services_ipv6_cidr_blocks": ["string"],
},
location="string",
authorization={
"admin_users": {
"username": "string",
},
},
labels={
"string": "string",
},
external_load_balancer_ipv4_address_pools=["string"],
default_max_pods_per_node=0,
control_plane_encryption={
"kms_key": "string",
"kms_key_active_version": "string",
"kms_key_state": "string",
"kms_statuses": [{
"code": 0,
"message": "string",
}],
},
maintenance_policy={
"window": {
"recurring_window": {
"recurrence": "string",
"window": {
"end_time": "string",
"start_time": "string",
},
},
},
"maintenance_exclusions": [{
"id": "string",
"window": {
"end_time": "string",
"start_time": "string",
},
}],
},
name="string",
control_plane={
"local": {
"machine_filter": "string",
"node_count": 0,
"node_location": "string",
"shared_deployment_policy": "string",
},
"remote": {
"node_location": "string",
},
},
project="string",
release_channel="string",
system_addons_config={
"ingress": {
"disabled": False,
"ipv4_vip": "string",
},
},
target_version="string")
const exampleclusterResourceResourceFromEdgecontainercluster = new gcp.edgecontainer.Cluster("exampleclusterResourceResourceFromEdgecontainercluster", {
fleet: {
project: "string",
membership: "string",
},
networking: {
clusterIpv4CidrBlocks: ["string"],
servicesIpv4CidrBlocks: ["string"],
clusterIpv6CidrBlocks: ["string"],
networkType: "string",
servicesIpv6CidrBlocks: ["string"],
},
location: "string",
authorization: {
adminUsers: {
username: "string",
},
},
labels: {
string: "string",
},
externalLoadBalancerIpv4AddressPools: ["string"],
defaultMaxPodsPerNode: 0,
controlPlaneEncryption: {
kmsKey: "string",
kmsKeyActiveVersion: "string",
kmsKeyState: "string",
kmsStatuses: [{
code: 0,
message: "string",
}],
},
maintenancePolicy: {
window: {
recurringWindow: {
recurrence: "string",
window: {
endTime: "string",
startTime: "string",
},
},
},
maintenanceExclusions: [{
id: "string",
window: {
endTime: "string",
startTime: "string",
},
}],
},
name: "string",
controlPlane: {
local: {
machineFilter: "string",
nodeCount: 0,
nodeLocation: "string",
sharedDeploymentPolicy: "string",
},
remote: {
nodeLocation: "string",
},
},
project: "string",
releaseChannel: "string",
systemAddonsConfig: {
ingress: {
disabled: false,
ipv4Vip: "string",
},
},
targetVersion: "string",
});
type: gcp:edgecontainer:Cluster
properties:
authorization:
adminUsers:
username: string
controlPlane:
local:
machineFilter: string
nodeCount: 0
nodeLocation: string
sharedDeploymentPolicy: string
remote:
nodeLocation: string
controlPlaneEncryption:
kmsKey: string
kmsKeyActiveVersion: string
kmsKeyState: string
kmsStatuses:
- code: 0
message: string
defaultMaxPodsPerNode: 0
externalLoadBalancerIpv4AddressPools:
- string
fleet:
membership: string
project: string
labels:
string: string
location: string
maintenancePolicy:
maintenanceExclusions:
- id: string
window:
endTime: string
startTime: string
window:
recurringWindow:
recurrence: string
window:
endTime: string
startTime: string
name: string
networking:
clusterIpv4CidrBlocks:
- string
clusterIpv6CidrBlocks:
- string
networkType: string
servicesIpv4CidrBlocks:
- string
servicesIpv6CidrBlocks:
- string
project: string
releaseChannel: string
systemAddonsConfig:
ingress:
disabled: false
ipv4Vip: string
targetVersion: string
Cluster Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The Cluster resource accepts the following input properties:
This property is required. Changes to this property will trigger replacement.
Authorization - RBAC policy that will be applied and managed by GEC. Structure is documented below.
- Fleet
This property is required. Changes to this property will trigger replacement.
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
This property is required. Changes to this property will trigger replacement.
- The location of the resource.
- Networking
This property is required. ClusterNetworking - Fleet related configuration. Fleets are a Google Cloud concept for logically organizing clusters, letting you use and manage multi-cluster capabilities and apply consistent policies across your systems. Structure is documented below.
- 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
Changes to this property will trigger replacement.
- The GDCE cluster name.
- Project
Changes to this property will trigger replacement.
- 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.
This property is required. Changes to this property will trigger replacement.
Authorization Args - RBAC policy that will be applied and managed by GEC. Structure is documented below.
- Fleet
This property is required. Changes to this property will trigger replacement.
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
This property is required. Changes to this property will trigger replacement.
- The location of the resource.
- Networking
This property is required. ClusterNetworking Args - Fleet related configuration. Fleets are a Google Cloud concept for logically organizing clusters, letting you use and manage multi-cluster capabilities and apply consistent policies across your systems. Structure is documented below.
- Control
Plane ClusterControl Plane Args - The configuration of the cluster control plane.
- Control
Plane ClusterEncryption Control Plane Encryption Args - Remote control plane disk encryption options. This field is only used when enabling CMEK support.
- Default
Max intPods Per Node - The default maximum number of pods per node used if a maximum value is not specified explicitly for a node pool in this cluster. If unspecified, the Kubernetes default value will be used.
- External
Load []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
Changes to this property will trigger replacement.
- The GDCE cluster name.
- Project
Changes to this property will trigger replacement.
- 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.
This property is required. Changes to this property will trigger replacement.
Authorization - RBAC policy that will be applied and managed by GEC. Structure is documented below.
- fleet
This property is required. Changes to this property will trigger replacement.
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
This property is required. Changes to this property will trigger replacement.
- The location of the resource.
- networking
This property is required. ClusterNetworking - Fleet related configuration. Fleets are a Google Cloud concept for logically organizing clusters, letting you use and manage multi-cluster capabilities and apply consistent policies across your systems. Structure is documented below.
- 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
Changes to this property will trigger replacement.
- The GDCE cluster name.
- project
Changes to this property will trigger replacement.
- 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.
This property is required. Changes to this property will trigger replacement.
Authorization - RBAC policy that will be applied and managed by GEC. Structure is documented below.
- fleet
This property is required. Changes to this property will trigger replacement.
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
This property is required. Changes to this property will trigger replacement.
- The location of the resource.
- networking
This property is required. ClusterNetworking - Fleet related configuration. Fleets are a Google Cloud concept for logically organizing clusters, letting you use and manage multi-cluster capabilities and apply consistent policies across your systems. Structure is documented below.
- 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
Changes to this property will trigger replacement.
- The GDCE cluster name.
- project
Changes to this property will trigger replacement.
- 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.
This property is required. Changes to this property will trigger replacement.
Authorization Args - RBAC policy that will be applied and managed by GEC. Structure is documented below.
- fleet
This property is required. Changes to this property will trigger replacement.
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
This property is required. Changes to this property will trigger replacement.
- The location of the resource.
- networking
This property is required. ClusterNetworking Args - Fleet related configuration. Fleets are a Google Cloud concept for logically organizing clusters, letting you use and manage multi-cluster capabilities and apply consistent policies across your systems. Structure is documented below.
- control_
plane ClusterControl Plane Args - The configuration of the cluster control plane.
- control_
plane_ Clusterencryption Control Plane Encryption Args - Remote control plane disk encryption options. This field is only used when enabling CMEK support.
- default_
max_ intpods_ per_ node - The default maximum number of pods per node used if a maximum value is not specified explicitly for a node pool in this cluster. If unspecified, the Kubernetes default value will be used.
- external_
load_ Sequence[str]balancer_ ipv4_ address_ pools - Address pools for cluster data plane external load balancing.
- labels Mapping[str, str]
- User-defined labels for the edgecloud cluster. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- maintenance_
policy ClusterMaintenance Policy Args - Cluster-wide maintenance policy configuration.
- name
Changes to this property will trigger replacement.
- The GDCE cluster name.
- project
Changes to this property will trigger replacement.
- 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.
This property is required. Changes to this property will trigger replacement.
- RBAC policy that will be applied and managed by GEC. Structure is documented below.
- fleet
This property is required. Changes to this property will trigger replacement.
- 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
This property is required. Changes to this property will trigger replacement.
- The location of the resource.
- networking
This property is required. 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
Changes to this property will trigger replacement.
- The GDCE cluster name.
- project
Changes to this property will trigger replacement.
- 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)
resources: _: type: gcp:edgecontainer:Cluster get: id: ${id}
- name
This property is required. - The unique name of the resulting resource.
- id
This property is required. - The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
This property is required. - The unique name of the resulting resource.
- id
This property is required. - The unique provider ID of the resource to lookup.
- name
This property is required. - The unique name of the resulting resource.
- id
This property is required. - The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
This property is required. - The unique name of the resulting resource.
- id
This property is required. - The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
This property is required. - The unique name of the resulting resource.
- id
This property is required. - The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
Changes to this property will trigger replacement.
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
Changes to this property will trigger replacement.
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
Changes to this property will trigger replacement.
- 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
Changes to this property will trigger replacement.
- 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
Changes to this property will trigger replacement.
- 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.
Changes to this property will trigger replacement.
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
Changes to this property will trigger replacement.
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
Changes to this property will trigger replacement.
- 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
Changes to this property will trigger replacement.
- 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
Changes to this property will trigger replacement.
- 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.
Changes to this property will trigger replacement.
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
Changes to this property will trigger replacement.
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
Changes to this property will trigger replacement.
- 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
Changes to this property will trigger replacement.
- 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
Changes to this property will trigger replacement.
- 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.
Changes to this property will trigger replacement.
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
Changes to this property will trigger replacement.
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
Changes to this property will trigger replacement.
- 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
Changes to this property will trigger replacement.
- 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
Changes to this property will trigger replacement.
- 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.
Changes to this property will trigger replacement.
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
Changes to this property will trigger replacement.
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
Changes to this property will trigger replacement.
- 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
Changes to this property will trigger replacement.
- 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
Changes to this property will trigger replacement.
- 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.
Changes to this property will trigger replacement.
- 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
Changes to this property will trigger replacement.
- 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
Changes to this property will trigger replacement.
- 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
Changes to this property will trigger replacement.
- 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
Changes to this property will trigger replacement.
- 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 This property is required. 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 This property is required. 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 This property is required. 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 This property is required. 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 This property is required. 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 This property is required. 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
This property is required. string - An active Google username.
- Username
This property is required. string - An active Google username.
- username
This property is required. String - An active Google username.
- username
This property is required. string - An active Google username.
- username
This property is required. str - An active Google username.
- username
This property is required. String - An active Google username.
ClusterControlPlane, ClusterControlPlaneArgs
- Local
Changes to this property will trigger replacement.
Control Plane Local - Local control plane configuration. Structure is documented below.
- Remote
Changes to this property will trigger replacement.
Control Plane Remote - Remote control plane configuration. Structure is documented below.
- Local
Changes to this property will trigger replacement.
Control Plane Local - Local control plane configuration. Structure is documented below.
- Remote
Changes to this property will trigger replacement.
Control Plane Remote - Remote control plane configuration. Structure is documented below.
- local
Changes to this property will trigger replacement.
Control Plane Local - Local control plane configuration. Structure is documented below.
- remote
Changes to this property will trigger replacement.
Control Plane Remote - Remote control plane configuration. Structure is documented below.
- local
Changes to this property will trigger replacement.
Control Plane Local - Local control plane configuration. Structure is documented below.
- remote
Changes to this property will trigger replacement.
Control Plane Remote - Remote control plane configuration. Structure is documented below.
- local
Changes to this property will trigger replacement.
Control Plane Local - Local control plane configuration. Structure is documented below.
- remote
Changes to this property will trigger replacement.
Control Plane Remote - Remote control plane configuration. Structure is documented below.
- local
Changes to this property will trigger replacement.
- Local control plane configuration. Structure is documented below.
- remote
Changes to this property will trigger replacement.
- Remote control plane configuration. Structure is documented below.
ClusterControlPlaneEncryption, ClusterControlPlaneEncryptionArgs
- Kms
Key Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- Name of the Google Distributed Cloud Edge zones where this node pool
will be created. For example:
us-central1-edge-customer-a
.
- Node
Location Changes to this property will trigger replacement.
- Name of the Google Distributed Cloud Edge zones where this node pool
will be created. For example:
us-central1-edge-customer-a
.
- node
Location Changes to this property will trigger replacement.
- Name of the Google Distributed Cloud Edge zones where this node pool
will be created. For example:
us-central1-edge-customer-a
.
- node
Location Changes to this property will trigger replacement.
- Name of the Google Distributed Cloud Edge zones where this node pool
will be created. For example:
us-central1-edge-customer-a
.
- node_
location Changes to this property will trigger replacement.
- Name of the Google Distributed Cloud Edge zones where this node pool
will be created. For example:
us-central1-edge-customer-a
.
- node
Location Changes to this property will trigger replacement.
- 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
This property is required. Changes to this property will trigger replacement.
- 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
This property is required. Changes to this property will trigger replacement.
- 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
This property is required. Changes to this property will trigger replacement.
- 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
This property is required. Changes to this property will trigger replacement.
- 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
This property is required. Changes to this property will trigger replacement.
- 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
This property is required. Changes to this property will trigger replacement.
- 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
This property is required. ClusterMaintenance 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
This property is required. ClusterMaintenance 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
This property is required. ClusterMaintenance 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
This property is required. ClusterMaintenance 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
This property is required. ClusterMaintenance Policy Window - Specifies the maintenance window in which maintenance may be performed. Structure is documented below.
- maintenance_
exclusions Sequence[ClusterMaintenance Policy Maintenance Exclusion] - Exclusions to automatic maintenance. Non-emergency maintenance should not occur in these windows. Each exclusion has a unique name and may be active or expired. The max number of maintenance exclusions allowed at a given time is 3. Structure is documented below.
- window
This property is required. 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 This property is required. ClusterMaintenance Policy Window Recurring Window - Represents an arbitrary window of time that recurs. Structure is documented below.
- Recurring
Window This property is required. ClusterMaintenance Policy Window Recurring Window - Represents an arbitrary window of time that recurs. Structure is documented below.
- recurring
Window This property is required. ClusterMaintenance Policy Window Recurring Window - Represents an arbitrary window of time that recurs. Structure is documented below.
- recurring
Window This property is required. ClusterMaintenance Policy Window Recurring Window - Represents an arbitrary window of time that recurs. Structure is documented below.
- recurring_
window This property is required. ClusterMaintenance Policy Window Recurring Window - Represents an arbitrary window of time that recurs. Structure is documented below.
- recurring
Window This property is required. 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 Blocks This property is required. Changes to this property will trigger replacement.
- 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 Blocks This property is required. Changes to this property will trigger replacement.
- 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 Blocks Changes to this property will trigger replacement.
- 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 Blocks Changes to this property will trigger replacement.
- 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 Blocks This property is required. Changes to this property will trigger replacement.
- 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 Blocks This property is required. Changes to this property will trigger replacement.
- 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 Blocks Changes to this property will trigger replacement.
- 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 Blocks Changes to this property will trigger replacement.
- 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 Blocks This property is required. Changes to this property will trigger replacement.
- 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 Blocks This property is required. Changes to this property will trigger replacement.
- 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 Blocks Changes to this property will trigger replacement.
- 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 Blocks Changes to this property will trigger replacement.
- 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 Blocks This property is required. Changes to this property will trigger replacement.
- 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 Blocks This property is required. Changes to this property will trigger replacement.
- 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 Blocks Changes to this property will trigger replacement.
- 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 Blocks Changes to this property will trigger replacement.
- 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_ cidr_ blocks This property is required. Changes to this property will trigger replacement.
- 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_ cidr_ blocks This property is required. Changes to this property will trigger replacement.
- 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_ cidr_ blocks Changes to this property will trigger replacement.
- 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_ cidr_ blocks Changes to this property will trigger replacement.
- 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 Blocks This property is required. Changes to this property will trigger replacement.
- 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 Blocks This property is required. Changes to this property will trigger replacement.
- 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 Blocks Changes to this property will trigger replacement.
- 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 Blocks Changes to this property will trigger replacement.
- 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.