ClusterArgs class

The set of arguments for Cluster. The set of arguments for Cluster.

Constructors

ClusterArgs({Input<ClusterAddonsConfig?>? addonsConfig, Input<bool?>? allowNetAdmin, Input<ClusterAnonymousAuthenticationConfig?>? anonymousAuthenticationConfig, Input<ClusterAuthenticatorGroupsConfig?>? authenticatorGroupsConfig, Input<ClusterAutopilotClusterPolicyConfig?>? autopilotClusterPolicyConfig, Input<List<String>?>? autopilotPrivilegedAdmissions, Input<ClusterBinaryAuthorization?>? binaryAuthorization, Input<ClusterClusterAutoscaling?>? clusterAutoscaling, Input<String?>? clusterIpv4Cidr, Input<ClusterClusterTelemetry?>? clusterTelemetry, Input<ClusterConfidentialNodes?>? confidentialNodes, Input<ClusterControlPlaneEndpointsConfig?>? controlPlaneEndpointsConfig, Input<ClusterCostManagementConfig?>? costManagementConfig, Input<ClusterDatabaseEncryption?>? databaseEncryption, Input<String?>? datapathProvider, Input<String?>? dataplaneOptimizationMode, Input<int?>? defaultMaxPodsPerNode, Input<ClusterDefaultSnatStatus?>? defaultSnatStatus, Input<String?>? deletionPolicy, Input<bool?>? deletionProtection, Input<String?>? description, Input<String?>? desiredEmulatedVersion, Input<bool?>? disableL4LbFirewallReconciliation, Input<ClusterDnsConfig?>? dnsConfig, Input<bool?>? enableAutopilot, Input<bool?>? enableCiliumClusterwideNetworkPolicy, Input<bool?>? enableFqdnNetworkPolicy, Input<bool?>? enableIntranodeVisibility, Input<ClusterEnableK8sBetaApis?>? enableK8sBetaApis, Input<bool?>? enableKubernetesAlpha, Input<bool?>? enableL4IlbSubsetting, Input<bool?>? enableLegacyAbac, Input<bool?>? enableMultiNetworking, Input<bool?>? enableShieldedNodes, Input<bool?>? enableTpu, Input<ClusterEnterpriseConfig?>? enterpriseConfig, Input<ClusterFleet?>? fleet, Input<ClusterGatewayApiConfig?>? gatewayApiConfig, Input<ClusterGkeAutoUpgradeConfig?>? gkeAutoUpgradeConfig, Input<ClusterIdentityServiceConfig?>? identityServiceConfig, Input<bool?>? ignoreNodeCountChanges, Input<String?>? inTransitEncryptionConfig, Input<int?>? initialNodeCount, Input<ClusterIpAllocationPolicy?>? ipAllocationPolicy, Input<String?>? location, Input<ClusterLoggingConfig?>? loggingConfig, Input<String?>? loggingService, Input<ClusterMaintenancePolicy?>? maintenancePolicy, Input<ClusterManagedMachineLearningDiagnosticsConfig?>? managedMachineLearningDiagnosticsConfig, Input<ClusterManagedOpentelemetryConfig?>? managedOpentelemetryConfig, Input<ClusterMasterAuth?>? masterAuth, Input<ClusterMasterAuthorizedNetworksConfig?>? masterAuthorizedNetworksConfig, Input<ClusterMeshCertificates?>? meshCertificates, Input<String?>? minMasterVersion, Input<ClusterMonitoringConfig?>? monitoringConfig, Input<String?>? monitoringService, Input<String?>? name, Input<String?>? network, Input<ClusterNetworkPerformanceConfig?>? networkPerformanceConfig, Input<ClusterNetworkPolicy?>? networkPolicy, Input<String?>? networkingMode, Input<ClusterNodeConfig?>? nodeConfig, Input<ClusterNodeCreationConfig?>? nodeCreationConfig, Input<List<String>?>? nodeLocations, Input<ClusterNodePoolAutoConfig?>? nodePoolAutoConfig, Input<ClusterNodePoolDefaults?>? nodePoolDefaults, Input<List<ClusterNodePool>?>? nodePools, Input<String?>? nodeVersion, Input<ClusterNotificationConfig?>? notificationConfig, Input<ClusterPodAutoscaling?>? podAutoscaling, Input<ClusterPodSecurityPolicyConfig?>? podSecurityPolicyConfig, Input<ClusterPrivateClusterConfig?>? privateClusterConfig, Input<String?>? privateIpv6GoogleAccess, Input<String?>? project, Input<ClusterProtectConfig?>? protectConfig, Input<ClusterRbacBindingConfig?>? rbacBindingConfig, Input<ClusterReleaseChannel?>? releaseChannel, Input<bool?>? removeDefaultNodePool, Input<Map<String, String>?>? resourceLabels, Input<ClusterResourceUsageExportConfig?>? resourceUsageExportConfig, Input<ClusterRollbackSafeUpgrade?>? rollbackSafeUpgrade, Input<ClusterSecretManagerConfig?>? secretManagerConfig, Input<ClusterSecretSyncConfig?>? secretSyncConfig, Input<ClusterSecurityPostureConfig?>? securityPostureConfig, Input<ClusterServiceExternalIpsConfig?>? serviceExternalIpsConfig, Input<bool?>? skipNodePoolRefresh, Input<String?>? subnetwork, Input<ClusterTpuConfig?>? tpuConfig, Input<ClusterUserManagedKeysConfig?>? userManagedKeysConfig, Input<ClusterVerticalPodAutoscaling?>? verticalPodAutoscaling, Input<ClusterWorkloadAltsConfig?>? workloadAltsConfig, Input<ClusterWorkloadIdentityConfig?>? workloadIdentityConfig})
Creates a new ClusterArgs. addonsConfig The configuration for addons supported by GKE. allowNetAdmin Enable NET_ADMIN for the cluster. Defaults to anonymousAuthenticationConfig Configuration for anonymous authentication restrictions. Structure is documented below. authenticatorGroupsConfig Configuration for the autopilotClusterPolicyConfig Per-cluster configuration of Autopilot cluster policies in GKE clusters. This field can only be configured in non Autopilot clusters. Structure is documented below. autopilotPrivilegedAdmissions The customer binaryAuthorization Configuration options for the Binary clusterAutoscaling Per-cluster configuration of Node Auto-Provisioning with Cluster Autoscaler to clusterIpv4Cidr The IP address range of the Kubernetes pods clusterTelemetry ) Configuration for confidentialNodes Configuration for Confidential Nodes feature. Structure is documented below documented below. controlPlaneEndpointsConfig Configuration for all of the cluster's control plane endpoints. costManagementConfig Configuration for the databaseEncryption Structure is documented below. datapathProvider The desired datapath provider for this cluster. This is set to LEGACY_DATAPATH by default, which uses the IPTables-based kube-proxy implementation. Set to ADVANCED_DATAPATH to enable Dataplane v2. dataplaneOptimizationMode The dataplane optimization mode for the cluster. Possible values: SCALE_OPTIMIZED. defaultMaxPodsPerNode The default maximum number of pods defaultSnatStatus GKE SNAT DefaultSnatStatus contains the desired state of whether default sNAT should be disabled on the cluster, API doc. Structure is documented below deletionPolicy (Optional) Whether Terraform will be prevented from destroying the resource. Defaults to "DELETE". deletionProtection Whether Terraform will be prevented from description Description of the cluster. desiredEmulatedVersion The desired emulated version for the cluster. Used to complete a rollback-safe upgrade after a soak period. Must be in major.minor format (e.g., "1.31"). To complete the upgrade declaratively, set this field to the target minor version. Removing this field from your configuration will not trigger completion. disableL4LbFirewallReconciliation Disable L4 load balancer VPC firewalls to enable firewall policies. dnsConfig Configuration for Using Cloud DNS for GKE. Structure is documented below. enableAutopilot Enable Autopilot for this cluster. Defaults to false. enableCiliumClusterwideNetworkPolicy Whether CiliumClusterWideNetworkPolicy is enabled on this cluster. Defaults to false. enableFqdnNetworkPolicy Whether FQDN Network Policy is enabled on this cluster. Users who enable this feature for existing Standard clusters must restart the GKE Dataplane V2 anetd DaemonSet after enabling it. See the Enable FQDN Network Policy in an existing cluster for more information. enableIntranodeVisibility Whether Intra-node visibility is enabled for this cluster. This makes same node pod to pod traffic visible for VPC network. enableK8sBetaApis Configuration for Kubernetes Beta APIs. enableKubernetesAlpha Whether to enable Kubernetes Alpha features for enableL4IlbSubsetting Whether L4ILB Subsetting is enabled for this cluster. enableLegacyAbac Whether the ABAC authorizer is enabled for this cluster. enableMultiNetworking Whether multi-networking is enabled for this cluster. enableShieldedNodes Enable Shielded Nodes features on all nodes in this cluster. Defaults to true. enableTpu Whether to enable Cloud TPU resources in this cluster. enterpriseConfig (DEPRECATED) Configuration for Enterprise edition.(https://cloud.google.com/kubernetes-engine/enterprise/docs/concepts/gke-editions). Structure is documented below. Deprecated as GKE Enterprise features are now available without an Enterprise tier. See https://cloud.google.com/blog/products/containers-kubernetes/gke-gets-new-pricing-and-capabilities-on-10th-birthday for the announcement of this change. fleet Fleet configuration for the cluster. Structure is documented below. gatewayApiConfig Configuration for GKE Gateway API controller. Structure is documented below. gkeAutoUpgradeConfig Configuration options for the auto-upgrade patch type feature, which provide more control over the speed of automatic upgrades of your GKE clusters. identityServiceConfig . Structure is documented below. ignoreNodeCountChanges Whether to ignore external changes (drift) to the GKE node count (e.g. from GKE autoscaling). Setting this to true skips querying Compute Engine Instance Group Managers (IGMs) to determine the current node count on read, which can save API quota and speed up plans on large clusters. Unlike Terraform core's lifecycle { ignoreChanges = [nodeCount] }, this allows configuration-driven scaling updates in your HCL while still ignoring runtime autoscaling drift. inTransitEncryptionConfig Defines the config of in-transit encryption. Valid values are IN_TRANSIT_ENCRYPTION_DISABLED and IN_TRANSIT_ENCRYPTION_INTER_NODE_TRANSPARENT. initialNodeCount The number of nodes to create in this ipAllocationPolicy Configuration of cluster IP allocation for location The location (region or zone) in which the cluster loggingConfig Logging configuration for the cluster. loggingService The logging service that the cluster should maintenancePolicy The maintenance policy to use for the cluster. Structure is managedMachineLearningDiagnosticsConfig ) Configuration for the GKE Managed ML Diagnostics feature. Structure is documented below. managedOpentelemetryConfig ) Configuration for the GKE Managed OpenTelemetry feature. Structure is documented below. masterAuth The authentication information for accessing the masterAuthorizedNetworksConfig The desired meshCertificates Structure is documented below. minMasterVersion The minimum version of the master. GKE monitoringConfig Monitoring configuration for the cluster. monitoringService The monitoring service that the cluster name The name of the cluster, unique within the project and network The name or selfLink of the Google Compute Engine networkPerformanceConfig Network bandwidth tier configuration. networkPolicy Configuration options for the networkingMode Determines whether alias IPs or routes will be used for pod IPs in the cluster. nodeConfig Parameters used in creating the default node pool. nodeCreationConfig Configuration for node creation config. Structure is documented below. nodeLocations The list of zones in which the cluster's nodes nodePoolAutoConfig Node pool configs that apply to auto-provisioned node pools in nodePoolDefaults Default NodePool settings for the entire cluster. These settings are overridden if specified on the specific NodePool object. Structure is documented below. nodePools List of node pools associated with this cluster. Structure is documented below. See gcp.container.NodePool for exact schema. nodeVersion The Kubernetes version on the nodes. Must either be unset notificationConfig Configuration for the cluster upgrade notifications feature. Structure is documented below. podAutoscaling Configuration for the podSecurityPolicyConfig ) Configuration for the privateClusterConfig Configuration for private clusters, privateIpv6GoogleAccess The desired state of IPv6 connectivity to Google Services. By default, no private IPv6 access to or from Google Services (all access will be via IPv4). project The ID of the project in which the resource belongs. If it protectConfig ) rbacBindingConfig RBACBindingConfig allows user to restrict ClusterRoleBindings an RoleBindings that can be created. Structure is documented below. releaseChannel Configuration options for the Release channel removeDefaultNodePool If true, deletes the default node resourceLabels The GCE resource labels (a map of key/value pairs) to be applied to the cluster. resourceUsageExportConfig Configuration for the rollbackSafeUpgrade Configuration for rollback-safe (two-step) upgrades. Structure is documented below. secretManagerConfig Configuration for the secretSyncConfig Configuration for the securityPostureConfig Enable/Disable Security Posture API features for the cluster. Structure is documented below. serviceExternalIpsConfig Structure is documented below. skipNodePoolRefresh Whether to skip refreshing the GKE cluster's inline node pool list during read operations. Setting this to true prevents the provider from querying GKE API for node pools, resolving long plan times on clusters with a large number of node pools. Warning: When enabled, the cluster's nodePool attribute in the Terraform state will remain empty ([]), even if node pools exist externally. This flag cannot be set to true if you define inline nodePool blocks in your configuration; doing so will result in a validation error during plan. subnetwork The name or selfLink of the Google Compute Engine tpuConfig TPU configuration for the cluster. userManagedKeysConfig The custom keys configuration of the cluster Structure is documented below. verticalPodAutoscaling Vertical Pod Autoscaling automatically adjusts the resources of pods controlled by it. workloadAltsConfig ) workloadIdentityConfig Workload Identity allows Kubernetes service accounts to act as a user-managed
const
ClusterArgs.fromMap(Map<String, dynamic> map)
factory

Properties

addonsConfig → Input<ClusterAddonsConfig?>?
The configuration for addons supported by GKE. Structure is documented below.
final
allowNetAdmin → Input<bool?>?
Enable NET_ADMIN for the cluster. Defaults to false. This field should only be enabled for Autopilot clusters (enableAutopilot set to true).
final
anonymousAuthenticationConfig → Input<ClusterAnonymousAuthenticationConfig?>?
Configuration for anonymous authentication restrictions. Structure is documented below.
final
authenticatorGroupsConfig → Input<ClusterAuthenticatorGroupsConfig?>?
Configuration for the Google Groups for GKE feature. Structure is documented below.
final
autopilotClusterPolicyConfig → Input<ClusterAutopilotClusterPolicyConfig?>?
Per-cluster configuration of Autopilot cluster policies in GKE clusters. This field can only be configured in non Autopilot clusters. Structure is documented below.
final
autopilotPrivilegedAdmissions → Input<List<String>?>?
The customer allowlist Cloud Storage paths for the cluster. These paths are used with the --autopilot-privileged-admission flag to authorize privileged workloads in Autopilot clusters. See the Cluster API's PrivilegedAdmissionConfig documentation for more details.
final
binaryAuthorization → Input<ClusterBinaryAuthorization?>?
Configuration options for the Binary Authorization feature. Structure is documented below.
final
clusterAutoscaling → Input<ClusterClusterAutoscaling?>?
Per-cluster configuration of Node Auto-Provisioning with Cluster Autoscaler to automatically adjust the size of the cluster and create/delete node pools based on the current needs of the cluster's workload. See the guide to using Node Auto-Provisioning for more details. Structure is documented below.
final
clusterIpv4Cidr → Input<String?>?
The IP address range of the Kubernetes pods in this cluster in CIDR notation (e.g. 10.96.0.0/14). Leave blank to have one automatically chosen or specify a /14 block in 10.0.0.0/8. This field will default a new cluster to routes-based, where ipAllocationPolicy is not defined.
final
clusterTelemetry → Input<ClusterClusterTelemetry?>?
) Configuration for ClusterTelemetry feature, Structure is documented below.
final
confidentialNodes → Input<ClusterConfidentialNodes?>?
Configuration for Confidential Nodes feature. Structure is documented below documented below.
final
controlPlaneEndpointsConfig → Input<ClusterControlPlaneEndpointsConfig?>?
Configuration for all of the cluster's control plane endpoints. Structure is documented below.
final
costManagementConfig → Input<ClusterCostManagementConfig?>?
Configuration for the Cost Allocation feature. Structure is documented below.
final
databaseEncryption → Input<ClusterDatabaseEncryption?>?
Structure is documented below.
final
datapathProvider → Input<String?>?
The desired datapath provider for this cluster. This is set to LEGACY_DATAPATH by default, which uses the IPTables-based kube-proxy implementation. Set to ADVANCED_DATAPATH to enable Dataplane v2.
final
dataplaneOptimizationMode → Input<String?>?
The dataplane optimization mode for the cluster. Possible values: SCALE_OPTIMIZED.
final
defaultMaxPodsPerNode → Input<int?>?
The default maximum number of pods per node in this cluster. This doesn't work on "routes-based" clusters, clusters that don't have IP Aliasing enabled. See the official documentation for more information.
final
defaultSnatStatus → Input<ClusterDefaultSnatStatus?>?
GKE SNAT DefaultSnatStatus contains the desired state of whether default sNAT should be disabled on the cluster, API doc. Structure is documented below
final
deletionPolicy → Input<String?>?
(Optional) Whether Terraform will be prevented from destroying the resource. Defaults to "DELETE". When a 'terraform destroy' or 'pulumi up' would delete the resource, the command will fail if this field is set to "PREVENT" in Terraform state. When set to "ABANDON", the command will remove the resource from Terraform management without updating or deleting the resource in the API. When set to "DELETE", deleting the resource is allowed.
final
deletionProtection → Input<bool?>?
Whether Terraform will be prevented from destroying the cluster. Deleting this cluster via terraform destroy or pulumi up will only succeed if this field is false in the Terraform state.
final
description → Input<String?>?
Description of the cluster.
final
desiredEmulatedVersion → Input<String?>?
The desired emulated version for the cluster. Used to complete a rollback-safe upgrade after a soak period. Must be in major.minor format (e.g., "1.31"). To complete the upgrade declaratively, set this field to the target minor version. Removing this field from your configuration will not trigger completion.
final
disableL4LbFirewallReconciliation → Input<bool?>?
Disable L4 load balancer VPC firewalls to enable firewall policies.
final
dnsConfig → Input<ClusterDnsConfig?>?
Configuration for Using Cloud DNS for GKE. Structure is documented below.
final
enableAutopilot → Input<bool?>?
Enable Autopilot for this cluster. Defaults to false. Note that when this option is enabled, certain features of Standard GKE are not available. See the official documentation for available features.
final
enableCiliumClusterwideNetworkPolicy → Input<bool?>?
Whether CiliumClusterWideNetworkPolicy is enabled on this cluster. Defaults to false.
final
enableFqdnNetworkPolicy → Input<bool?>?
Whether FQDN Network Policy is enabled on this cluster. Users who enable this feature for existing Standard clusters must restart the GKE Dataplane V2 anetd DaemonSet after enabling it. See the Enable FQDN Network Policy in an existing cluster for more information.
final
enableIntranodeVisibility → Input<bool?>?
Whether Intra-node visibility is enabled for this cluster. This makes same node pod to pod traffic visible for VPC network.
final
enableK8sBetaApis → Input<ClusterEnableK8sBetaApis?>?
Configuration for Kubernetes Beta APIs. Structure is documented below.
final
enableKubernetesAlpha → Input<bool?>?
Whether to enable Kubernetes Alpha features for this cluster. Note that when this option is enabled, the cluster cannot be upgraded and will be automatically deleted after 30 days.
final
enableL4IlbSubsetting → Input<bool?>?
Whether L4ILB Subsetting is enabled for this cluster.
final
enableLegacyAbac → Input<bool?>?
Whether the ABAC authorizer is enabled for this cluster. When enabled, identities in the system, including service accounts, nodes, and controllers, will have statically granted permissions beyond those provided by the RBAC configuration or IAM. Defaults to false
final
enableMultiNetworking → Input<bool?>?
Whether multi-networking is enabled for this cluster.
final
enableShieldedNodes → Input<bool?>?
Enable Shielded Nodes features on all nodes in this cluster. Defaults to true.
final
enableTpu → Input<bool?>?
Whether to enable Cloud TPU resources in this cluster. See the official documentation.
final
enterpriseConfig → Input<ClusterEnterpriseConfig?>?
(DEPRECATED) Configuration for Enterprise edition.(https://cloud.google.com/kubernetes-engine/enterprise/docs/concepts/gke-editions). Structure is documented below. Deprecated as GKE Enterprise features are now available without an Enterprise tier. See https://cloud.google.com/blog/products/containers-kubernetes/gke-gets-new-pricing-and-capabilities-on-10th-birthday for the announcement of this change.
final
fleet → Input<ClusterFleet?>?
Fleet configuration for the cluster. Structure is documented below.
final
gatewayApiConfig → Input<ClusterGatewayApiConfig?>?
Configuration for GKE Gateway API controller. Structure is documented below.
final
gkeAutoUpgradeConfig → Input<ClusterGkeAutoUpgradeConfig?>?
Configuration options for the auto-upgrade patch type feature, which provide more control over the speed of automatic upgrades of your GKE clusters. Structure is documented below.
final
hashCode → int
The hash code for this object.
no setterinherited
identityServiceConfig → Input<ClusterIdentityServiceConfig?>?
. Structure is documented below.
final
ignoreNodeCountChanges → Input<bool?>?
Whether to ignore external changes (drift) to the GKE node count (e.g. from GKE autoscaling). Setting this to true skips querying Compute Engine Instance Group Managers (IGMs) to determine the current node count on read, which can save API quota and speed up plans on large clusters. Unlike Terraform core's lifecycle { ignoreChanges = [nodeCount] }, this allows configuration-driven scaling updates in your HCL while still ignoring runtime autoscaling drift.
final
initialNodeCount → Input<int?>?
The number of nodes to create in this cluster's default node pool. In regional or multi-zonal clusters, this is the number of nodes per zone. Must be set if nodePool is not set. If you're using gcp.container.NodePool objects with no default node pool, you'll need to set this to a value of at least 1, alongside setting removeDefaultNodePool to true.
final
inTransitEncryptionConfig → Input<String?>?
Defines the config of in-transit encryption. Valid values are IN_TRANSIT_ENCRYPTION_DISABLED and IN_TRANSIT_ENCRYPTION_INTER_NODE_TRANSPARENT.
final
ipAllocationPolicy → Input<ClusterIpAllocationPolicy?>?
Configuration of cluster IP allocation for VPC-native clusters. If this block is unset during creation, it will be set by the GKE backend. Structure is documented below.
final
location → Input<String?>?
The location (region or zone) in which the cluster master will be created, as well as the default node location. If you specify a zone (such as us-central1-a), the cluster will be a zonal cluster with a single cluster master. If you specify a region (such as us-west1), the cluster will be a regional cluster with multiple masters spread across zones in the region, and with default node locations in those zones as well
final
loggingConfig → Input<ClusterLoggingConfig?>?
Logging configuration for the cluster. Structure is documented below.
final
loggingService → Input<String?>?
The logging service that the cluster should write logs to. Available options include logging.googleapis.com(Legacy Stackdriver), logging.googleapis.com/kubernetes(Stackdriver Kubernetes Engine Logging), and none. Defaults to logging.googleapis.com/kubernetes
final
maintenancePolicy → Input<ClusterMaintenancePolicy?>?
The maintenance policy to use for the cluster. Structure is documented below.
final
managedMachineLearningDiagnosticsConfig → Input<ClusterManagedMachineLearningDiagnosticsConfig?>?
) Configuration for the GKE Managed ML Diagnostics feature. Structure is documented below.
final
managedOpentelemetryConfig → Input<ClusterManagedOpentelemetryConfig?>?
) Configuration for the GKE Managed OpenTelemetry feature. Structure is documented below.
final
masterAuth → Input<ClusterMasterAuth?>?
The authentication information for accessing the Kubernetes master. Some values in this block are only returned by the API if your service account has permission to get credentials for your GKE cluster. If you see an unexpected diff unsetting your client cert, ensure you have the container.clusters.getCredentials permission. Structure is documented below.
final
masterAuthorizedNetworksConfig → Input<ClusterMasterAuthorizedNetworksConfig?>?
The desired configuration options for master authorized networks. Omit the nested cidrBlocks attribute to disallow external access (except the cluster node IPs, which GKE automatically whitelists). Structure is documented below.
final
meshCertificates → Input<ClusterMeshCertificates?>?
Structure is documented below.
final
minMasterVersion → Input<String?>?
The minimum version of the master. GKE will auto-update the master to new versions, so this does not guarantee the current master version--use the read-only masterVersion field to obtain that. If unset, the cluster's version will be set by GKE to the version of the most recent official release (which is not necessarily the latest version). Most users will find the gcp.container.getEngineVersions data source useful - it indicates which versions are available. If you intend to specify versions manually, the docs describe the various acceptable formats for this field.
final
monitoringConfig → Input<ClusterMonitoringConfig?>?
Monitoring configuration for the cluster. Structure is documented below.
final
monitoringService → Input<String?>?
The monitoring service that the cluster should write metrics to. Automatically send metrics from pods in the cluster to the Google Cloud Monitoring API. VM metrics will be collected by Google Compute Engine regardless of this setting Available options include monitoring.googleapis.com(Legacy Stackdriver), monitoring.googleapis.com/kubernetes(Stackdriver Kubernetes Engine Monitoring), and none. Defaults to monitoring.googleapis.com/kubernetes
final
name → Input<String?>?
The name of the cluster, unique within the project and location.
final
network → Input<String?>?
The name or selfLink of the Google Compute Engine network to which the cluster is connected. For Shared VPC, set this to the self link of the shared network.
final
networkingMode → Input<String?>?
Determines whether alias IPs or routes will be used for pod IPs in the cluster. Options are VPC_NATIVE or ROUTES. VPC_NATIVE enables IP aliasing. Newly created clusters will default to VPC_NATIVE.
final
networkPerformanceConfig → Input<ClusterNetworkPerformanceConfig?>?
Network bandwidth tier configuration.
final
networkPolicy → Input<ClusterNetworkPolicy?>?
Configuration options for the NetworkPolicy feature. Structure is documented below.
final
nodeConfig → Input<ClusterNodeConfig?>?
Parameters used in creating the default node pool. Generally, this field should not be used at the same time as a gcp.container.NodePool or a nodePool block; this configuration manages the default node pool, which isn't recommended to be used. Structure is documented below.
final
nodeCreationConfig → Input<ClusterNodeCreationConfig?>?
Configuration for node creation config. Structure is documented below.
final
nodeLocations → Input<List<String>?>?
The list of zones in which the cluster's nodes are located. Nodes must be in the region of their regional cluster or in the same region as their cluster's zone for zonal clusters. If this is specified for a zonal cluster, omit the cluster's zone.
final
nodePoolAutoConfig → Input<ClusterNodePoolAutoConfig?>?
Node pool configs that apply to auto-provisioned node pools in autopilot clusters and node auto-provisioning-enabled clusters. Structure is documented below.
final
nodePoolDefaults → Input<ClusterNodePoolDefaults?>?
Default NodePool settings for the entire cluster. These settings are overridden if specified on the specific NodePool object. Structure is documented below.
final
nodePools → Input<List<ClusterNodePool>?>?
List of node pools associated with this cluster. Structure is documented below. See gcp.container.NodePool for exact schema. Warning: node pools defined inside a cluster can't be changed (or added/removed) after cluster creation without deleting and recreating the entire cluster. Unless you absolutely need the ability to say "these are the only node pools associated with this cluster", use the gcp.container.NodePool resource instead of this property.
final
nodeVersion → Input<String?>?
The Kubernetes version on the nodes. Must either be unset or set to the same value as minMasterVersion on create. Defaults to the default version set by GKE which is not necessarily the latest version. This only affects nodes in the default node pool. While a fuzzy version can be specified, it's recommended that you specify explicit versions as the provider will see spurious diffs when fuzzy versions are used. See the gcp.container.getEngineVersions data source's versionPrefix field to approximate fuzzy versions. To update nodes in other node pools, use the version attribute on the node pool.
final
notificationConfig → Input<ClusterNotificationConfig?>?
Configuration for the cluster upgrade notifications feature. Structure is documented below.
final
podAutoscaling → Input<ClusterPodAutoscaling?>?
Configuration for the Structure is documented below.
final
podSecurityPolicyConfig → Input<ClusterPodSecurityPolicyConfig?>?
) Configuration for the PodSecurityPolicy feature. Structure is documented below.
final
privateClusterConfig → Input<ClusterPrivateClusterConfig?>?
Configuration for private clusters, clusters with private nodes. Structure is documented below.
final
privateIpv6GoogleAccess → Input<String?>?
The desired state of IPv6 connectivity to Google Services. By default, no private IPv6 access to or from Google Services (all access will be via IPv4).
final
project → Input<String?>?
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
final
protectConfig → Input<ClusterProtectConfig?>?
) Enable/Disable Protect API features for the cluster. Structure is documented below.
final
rbacBindingConfig → Input<ClusterRbacBindingConfig?>?
RBACBindingConfig allows user to restrict ClusterRoleBindings an RoleBindings that can be created. Structure is documented below.
final
releaseChannel → Input<ClusterReleaseChannel?>?
Configuration options for the Release channel feature, which provide more control over automatic upgrades of your GKE clusters. When updating this field, GKE imposes specific version requirements. See Selecting a new release channel for more details; the gcp.container.getEngineVersions datasource can provide the default version for a channel. Note that removing the releaseChannel field from your config will cause the provider to stop managing your cluster's release channel, but will not unenroll it. Instead, use the "UNSPECIFIED" channel. Structure is documented below.
final
removeDefaultNodePool → Input<bool?>?
If true, deletes the default node pool upon cluster creation. If you're using gcp.container.NodePool resources with no default node pool, this should be set to true, alongside setting initialNodeCount to at least 1.
final
resourceLabels → Input<Map<String, String>?>?
The GCE resource labels (a map of key/value pairs) to be applied to the cluster.
final
resourceUsageExportConfig → Input<ClusterResourceUsageExportConfig?>?
Configuration for the ResourceUsageExportConfig feature. Structure is documented below.
final
rollbackSafeUpgrade → Input<ClusterRollbackSafeUpgrade?>?
Configuration for rollback-safe (two-step) upgrades. Structure is documented below.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
secretManagerConfig → Input<ClusterSecretManagerConfig?>?
Configuration for the SecretManagerConfig feature. Structure is documented below.
final
secretSyncConfig → Input<ClusterSecretSyncConfig?>?
Configuration for the SecretSyncConfig feature. Structure is documented below.
final
securityPostureConfig → Input<ClusterSecurityPostureConfig?>?
Enable/Disable Security Posture API features for the cluster. Structure is documented below.
final
serviceExternalIpsConfig → Input<ClusterServiceExternalIpsConfig?>?
Structure is documented below.
final
skipNodePoolRefresh → Input<bool?>?
Whether to skip refreshing the GKE cluster's inline node pool list during read operations. Setting this to true prevents the provider from querying GKE API for node pools, resolving long plan times on clusters with a large number of node pools. Warning: When enabled, the cluster's nodePool attribute in the Terraform state will remain empty ([]), even if node pools exist externally. This flag cannot be set to true if you define inline nodePool blocks in your configuration; doing so will result in a validation error during plan.
final
subnetwork → Input<String?>?
The name or selfLink of the Google Compute Engine subnetwork in which the cluster's instances are launched.
final
tpuConfig → Input<ClusterTpuConfig?>?
TPU configuration for the cluster.
final
userManagedKeysConfig → Input<ClusterUserManagedKeysConfig?>?
The custom keys configuration of the cluster Structure is documented below.
final
verticalPodAutoscaling → Input<ClusterVerticalPodAutoscaling?>?
Vertical Pod Autoscaling automatically adjusts the resources of pods controlled by it. Structure is documented below.
final
workloadAltsConfig → Input<ClusterWorkloadAltsConfig?>?
) Configuration for direct-path (via ALTS) with workload identity.. Structure is documented below.
final
workloadIdentityConfig → Input<ClusterWorkloadIdentityConfig?>?
Workload Identity allows Kubernetes service accounts to act as a user-managed Google IAM Service Account. Structure is documented below.
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toMap() → Map<String, dynamic>
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited