Class ClusterUpdate
ClusterUpdate describes an update to the cluster. Exactly one update can be applied to a cluster with each request, so at most one field can be provided.
Implements
Inherited Members
Namespace: Google.Apis.Container.v1.Data
Assembly: Google.Apis.Container.v1.dll
Syntax
public class ClusterUpdate : IDirectResponseSchemaProperties
AdditionalPodRangesConfig
The additional pod ranges to be added to the cluster. These pod ranges can be used by node pools to allocate pod IPs.
Declaration
[JsonProperty("additionalPodRangesConfig")]
public virtual AdditionalPodRangesConfig AdditionalPodRangesConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| AdditionalPodRangesConfig | 
DesiredAddonsConfig
Configurations for the various addons available to run in the cluster.
Declaration
[JsonProperty("desiredAddonsConfig")]
public virtual AddonsConfig DesiredAddonsConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| AddonsConfig | 
DesiredAnonymousAuthenticationConfig
Configuration for limiting anonymous access to all endpoints except the health checks.
Declaration
[JsonProperty("desiredAnonymousAuthenticationConfig")]
public virtual AnonymousAuthenticationConfig DesiredAnonymousAuthenticationConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| AnonymousAuthenticationConfig | 
DesiredAuthenticatorGroupsConfig
The desired authenticator groups config for the cluster.
Declaration
[JsonProperty("desiredAuthenticatorGroupsConfig")]
public virtual AuthenticatorGroupsConfig DesiredAuthenticatorGroupsConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| AuthenticatorGroupsConfig | 
DesiredAutopilotWorkloadPolicyConfig
WorkloadPolicyConfig is the configuration related to GCW workload policy
Declaration
[JsonProperty("desiredAutopilotWorkloadPolicyConfig")]
public virtual WorkloadPolicyConfig DesiredAutopilotWorkloadPolicyConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| WorkloadPolicyConfig | 
DesiredBinaryAuthorization
The desired configuration options for the Binary Authorization feature.
Declaration
[JsonProperty("desiredBinaryAuthorization")]
public virtual BinaryAuthorization DesiredBinaryAuthorization { get; set; }Property Value
| Type | Description | 
|---|---|
| BinaryAuthorization | 
DesiredClusterAutoscaling
Cluster-level autoscaling configuration.
Declaration
[JsonProperty("desiredClusterAutoscaling")]
public virtual ClusterAutoscaling DesiredClusterAutoscaling { get; set; }Property Value
| Type | Description | 
|---|---|
| ClusterAutoscaling | 
DesiredCompliancePostureConfig
Enable/Disable Compliance Posture features for the cluster.
Declaration
[JsonProperty("desiredCompliancePostureConfig")]
public virtual CompliancePostureConfig DesiredCompliancePostureConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| CompliancePostureConfig | 
DesiredContainerdConfig
The desired containerd config for the cluster.
Declaration
[JsonProperty("desiredContainerdConfig")]
public virtual ContainerdConfig DesiredContainerdConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| ContainerdConfig | 
DesiredControlPlaneEndpointsConfig
Control plane endpoints configuration.
Declaration
[JsonProperty("desiredControlPlaneEndpointsConfig")]
public virtual ControlPlaneEndpointsConfig DesiredControlPlaneEndpointsConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| ControlPlaneEndpointsConfig | 
DesiredCostManagementConfig
The desired configuration for the fine-grained cost management feature.
Declaration
[JsonProperty("desiredCostManagementConfig")]
public virtual CostManagementConfig DesiredCostManagementConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| CostManagementConfig | 
DesiredDatabaseEncryption
Configuration of etcd encryption.
Declaration
[JsonProperty("desiredDatabaseEncryption")]
public virtual DatabaseEncryption DesiredDatabaseEncryption { get; set; }Property Value
| Type | Description | 
|---|---|
| DatabaseEncryption | 
DesiredDatapathProvider
The desired datapath provider for the cluster.
Declaration
[JsonProperty("desiredDatapathProvider")]
public virtual string DesiredDatapathProvider { get; set; }Property Value
| Type | Description | 
|---|---|
| string | 
DesiredDefaultEnablePrivateNodes
Override the default setting of whether future created nodes have private IP addresses only, namely NetworkConfig.default_enable_private_nodes
Declaration
[JsonProperty("desiredDefaultEnablePrivateNodes")]
public virtual bool? DesiredDefaultEnablePrivateNodes { get; set; }Property Value
| Type | Description | 
|---|---|
| bool? | 
DesiredDefaultSnatStatus
The desired status of whether to disable default sNAT for this cluster.
Declaration
[JsonProperty("desiredDefaultSnatStatus")]
public virtual DefaultSnatStatus DesiredDefaultSnatStatus { get; set; }Property Value
| Type | Description | 
|---|---|
| DefaultSnatStatus | 
DesiredDisableL4LbFirewallReconciliation
Enable/Disable L4 LB VPC firewall reconciliation for the cluster.
Declaration
[JsonProperty("desiredDisableL4LbFirewallReconciliation")]
public virtual bool? DesiredDisableL4LbFirewallReconciliation { get; set; }Property Value
| Type | Description | 
|---|---|
| bool? | 
DesiredDnsConfig
DNSConfig contains clusterDNS config for this cluster.
Declaration
[JsonProperty("desiredDnsConfig")]
public virtual DNSConfig DesiredDnsConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| DNSConfig | 
DesiredEnableCiliumClusterwideNetworkPolicy
Enable/Disable Cilium Clusterwide Network Policy for the cluster.
Declaration
[JsonProperty("desiredEnableCiliumClusterwideNetworkPolicy")]
public virtual bool? DesiredEnableCiliumClusterwideNetworkPolicy { get; set; }Property Value
| Type | Description | 
|---|---|
| bool? | 
DesiredEnableFqdnNetworkPolicy
Enable/Disable FQDN Network Policy for the cluster.
Declaration
[JsonProperty("desiredEnableFqdnNetworkPolicy")]
public virtual bool? DesiredEnableFqdnNetworkPolicy { get; set; }Property Value
| Type | Description | 
|---|---|
| bool? | 
DesiredEnableMultiNetworking
Enable/Disable Multi-Networking for the cluster
Declaration
[JsonProperty("desiredEnableMultiNetworking")]
public virtual bool? DesiredEnableMultiNetworking { get; set; }Property Value
| Type | Description | 
|---|---|
| bool? | 
DesiredEnablePrivateEndpoint
Enable/Disable private endpoint for the cluster's master. Deprecated: Use desired_control_plane_endpoints_config.ip_endpoints_config.enable_public_endpoint instead. Note that the value of enable_public_endpoint is reversed: if enable_private_endpoint is false, then enable_public_endpoint will be true.
Declaration
[JsonProperty("desiredEnablePrivateEndpoint")]
public virtual bool? DesiredEnablePrivateEndpoint { get; set; }Property Value
| Type | Description | 
|---|---|
| bool? | 
DesiredEnterpriseConfig
The desired enterprise configuration for the cluster.
Declaration
[JsonProperty("desiredEnterpriseConfig")]
public virtual DesiredEnterpriseConfig DesiredEnterpriseConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| DesiredEnterpriseConfig | 
DesiredFleet
The desired fleet configuration for the cluster.
Declaration
[JsonProperty("desiredFleet")]
public virtual Fleet DesiredFleet { get; set; }Property Value
| Type | Description | 
|---|---|
| Fleet | 
DesiredGatewayApiConfig
The desired config of Gateway API on this cluster.
Declaration
[JsonProperty("desiredGatewayApiConfig")]
public virtual GatewayAPIConfig DesiredGatewayApiConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| GatewayAPIConfig | 
DesiredGcfsConfig
The desired GCFS config for the cluster
Declaration
[JsonProperty("desiredGcfsConfig")]
public virtual GcfsConfig DesiredGcfsConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| GcfsConfig | 
DesiredIdentityServiceConfig
The desired Identity Service component configuration.
Declaration
[JsonProperty("desiredIdentityServiceConfig")]
public virtual IdentityServiceConfig DesiredIdentityServiceConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| IdentityServiceConfig | 
DesiredImageType
The desired image type for the node pool. NOTE: Set the "desired_node_pool" field as well.
Declaration
[JsonProperty("desiredImageType")]
public virtual string DesiredImageType { get; set; }Property Value
| Type | Description | 
|---|---|
| string | 
DesiredInTransitEncryptionConfig
Specify the details of in-transit encryption.
Declaration
[JsonProperty("desiredInTransitEncryptionConfig")]
public virtual string DesiredInTransitEncryptionConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| string | 
DesiredIntraNodeVisibilityConfig
The desired config of Intra-node visibility.
Declaration
[JsonProperty("desiredIntraNodeVisibilityConfig")]
public virtual IntraNodeVisibilityConfig DesiredIntraNodeVisibilityConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| IntraNodeVisibilityConfig | 
DesiredK8sBetaApis
Desired Beta APIs to be enabled for cluster.
Declaration
[JsonProperty("desiredK8sBetaApis")]
public virtual K8sBetaAPIConfig DesiredK8sBetaApis { get; set; }Property Value
| Type | Description | 
|---|---|
| K8sBetaAPIConfig | 
DesiredL4ilbSubsettingConfig
The desired L4 Internal Load Balancer Subsetting configuration.
Declaration
[JsonProperty("desiredL4ilbSubsettingConfig")]
public virtual ILBSubsettingConfig DesiredL4ilbSubsettingConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| ILBSubsettingConfig | 
DesiredLocations
The desired list of Google Compute Engine zones in which the cluster's nodes should be located. This list must always include the cluster's primary zone. Warning: changing cluster locations will update the locations of all node pools and will result in nodes being added and/or removed.
Declaration
[JsonProperty("desiredLocations")]
public virtual IList<string> DesiredLocations { get; set; }Property Value
| Type | Description | 
|---|---|
| IList<string> | 
DesiredLoggingConfig
The desired logging configuration.
Declaration
[JsonProperty("desiredLoggingConfig")]
public virtual LoggingConfig DesiredLoggingConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| LoggingConfig | 
DesiredLoggingService
The logging service the cluster should use to write logs. Currently available options: *
logging.googleapis.com/kubernetes - The Cloud Logging service with a Kubernetes-native resource model *
logging.googleapis.com - The legacy Cloud Logging service (no longer available as of GKE 1.15). * none -
no logs will be exported from the cluster. If left as an empty string,logging.googleapis.com/kubernetes
will be used for GKE 1.14+ or logging.googleapis.com for earlier versions.
Declaration
[JsonProperty("desiredLoggingService")]
public virtual string DesiredLoggingService { get; set; }Property Value
| Type | Description | 
|---|---|
| string | 
DesiredMasterAuthorizedNetworksConfig
The desired configuration options for master authorized networks feature. Deprecated: Use desired_control_plane_endpoints_config.ip_endpoints_config.authorized_networks_config instead.
Declaration
[JsonProperty("desiredMasterAuthorizedNetworksConfig")]
public virtual MasterAuthorizedNetworksConfig DesiredMasterAuthorizedNetworksConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| MasterAuthorizedNetworksConfig | 
DesiredMasterVersion
The Kubernetes version to change the master to. Users may specify either explicit versions offered by Kubernetes Engine or version aliases, which have the following behavior: - "latest": picks the highest valid Kubernetes version - "1.X": picks the highest valid patch+gke.N patch in the 1.X version - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version - "1.X.Y-gke.N": picks an explicit Kubernetes version - "-": picks the default Kubernetes version
Declaration
[JsonProperty("desiredMasterVersion")]
public virtual string DesiredMasterVersion { get; set; }Property Value
| Type | Description | 
|---|---|
| string | 
DesiredMeshCertificates
Configuration for issuance of mTLS keys and certificates to Kubernetes pods.
Declaration
[JsonProperty("desiredMeshCertificates")]
public virtual MeshCertificates DesiredMeshCertificates { get; set; }Property Value
| Type | Description | 
|---|---|
| MeshCertificates | 
DesiredMonitoringConfig
The desired monitoring configuration.
Declaration
[JsonProperty("desiredMonitoringConfig")]
public virtual MonitoringConfig DesiredMonitoringConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| MonitoringConfig | 
DesiredMonitoringService
The monitoring service the cluster should use to write metrics. Currently available options: *
monitoring.googleapis.com/kubernetes - The Cloud Monitoring service with a Kubernetes-native resource
model * monitoring.googleapis.com - The legacy Cloud Monitoring service (no longer available as of GKE
1.15). * none - No metrics will be exported from the cluster. If left as an empty
string,monitoring.googleapis.com/kubernetes will be used for GKE 1.14+ or monitoring.googleapis.com for
earlier versions.
Declaration
[JsonProperty("desiredMonitoringService")]
public virtual string DesiredMonitoringService { get; set; }Property Value
| Type | Description | 
|---|---|
| string | 
DesiredNetworkPerformanceConfig
The desired network performance config.
Declaration
[JsonProperty("desiredNetworkPerformanceConfig")]
public virtual ClusterNetworkPerformanceConfig DesiredNetworkPerformanceConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| ClusterNetworkPerformanceConfig | 
DesiredNodeKubeletConfig
The desired node kubelet config for the cluster.
Declaration
[JsonProperty("desiredNodeKubeletConfig")]
public virtual NodeKubeletConfig DesiredNodeKubeletConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| NodeKubeletConfig | 
DesiredNodePoolAutoConfigKubeletConfig
The desired node kubelet config for all auto-provisioned node pools in autopilot clusters and node auto-provisioning enabled clusters.
Declaration
[JsonProperty("desiredNodePoolAutoConfigKubeletConfig")]
public virtual NodeKubeletConfig DesiredNodePoolAutoConfigKubeletConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| NodeKubeletConfig | 
DesiredNodePoolAutoConfigLinuxNodeConfig
The desired Linux node config for all auto-provisioned node pools in autopilot clusters and node
auto-provisioning enabled clusters. Currently only cgroup_mode can be set here.
Declaration
[JsonProperty("desiredNodePoolAutoConfigLinuxNodeConfig")]
public virtual LinuxNodeConfig DesiredNodePoolAutoConfigLinuxNodeConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| LinuxNodeConfig | 
DesiredNodePoolAutoConfigNetworkTags
The desired network tags that apply to all auto-provisioned node pools in autopilot clusters and node auto-provisioning enabled clusters.
Declaration
[JsonProperty("desiredNodePoolAutoConfigNetworkTags")]
public virtual NetworkTags DesiredNodePoolAutoConfigNetworkTags { get; set; }Property Value
| Type | Description | 
|---|---|
| NetworkTags | 
DesiredNodePoolAutoConfigResourceManagerTags
The desired resource manager tags that apply to all auto-provisioned node pools in autopilot clusters and node auto-provisioning enabled clusters.
Declaration
[JsonProperty("desiredNodePoolAutoConfigResourceManagerTags")]
public virtual ResourceManagerTags DesiredNodePoolAutoConfigResourceManagerTags { get; set; }Property Value
| Type | Description | 
|---|---|
| ResourceManagerTags | 
DesiredNodePoolAutoscaling
Autoscaler configuration for the node pool specified in desired_node_pool_id. If there is only one pool in the cluster and desired_node_pool_id is not provided then the change applies to that single node pool.
Declaration
[JsonProperty("desiredNodePoolAutoscaling")]
public virtual NodePoolAutoscaling DesiredNodePoolAutoscaling { get; set; }Property Value
| Type | Description | 
|---|---|
| NodePoolAutoscaling | 
DesiredNodePoolId
The node pool to be upgraded. This field is mandatory if "desired_node_version", "desired_image_family" or "desired_node_pool_autoscaling" is specified and there is more than one node pool on the cluster.
Declaration
[JsonProperty("desiredNodePoolId")]
public virtual string DesiredNodePoolId { get; set; }Property Value
| Type | Description | 
|---|---|
| string | 
DesiredNodePoolLoggingConfig
The desired node pool logging configuration defaults for the cluster.
Declaration
[JsonProperty("desiredNodePoolLoggingConfig")]
public virtual NodePoolLoggingConfig DesiredNodePoolLoggingConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| NodePoolLoggingConfig | 
DesiredNodeVersion
The Kubernetes version to change the nodes to (typically an upgrade). Users may specify either explicit versions offered by Kubernetes Engine or version aliases, which have the following behavior: - "latest": picks the highest valid Kubernetes version - "1.X": picks the highest valid patch+gke.N patch in the 1.X version - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version - "1.X.Y-gke.N": picks an explicit Kubernetes version - "-": picks the Kubernetes master version
Declaration
[JsonProperty("desiredNodeVersion")]
public virtual string DesiredNodeVersion { get; set; }Property Value
| Type | Description | 
|---|---|
| string | 
DesiredNotificationConfig
The desired notification configuration.
Declaration
[JsonProperty("desiredNotificationConfig")]
public virtual NotificationConfig DesiredNotificationConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| NotificationConfig | 
DesiredParentProductConfig
The desired parent product config for the cluster.
Declaration
[JsonProperty("desiredParentProductConfig")]
public virtual ParentProductConfig DesiredParentProductConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| ParentProductConfig | 
DesiredPodAutoscaling
The desired config for pod autoscaling.
Declaration
[JsonProperty("desiredPodAutoscaling")]
public virtual PodAutoscaling DesiredPodAutoscaling { get; set; }Property Value
| Type | Description | 
|---|---|
| PodAutoscaling | 
DesiredPrivateClusterConfig
The desired private cluster configuration. master_global_access_config is the only field that can be changed via this field. See also ClusterUpdate.desired_enable_private_endpoint for modifying other fields within PrivateClusterConfig. Deprecated: Use desired_control_plane_endpoints_config.ip_endpoints_config.global_access instead.
Declaration
[JsonProperty("desiredPrivateClusterConfig")]
public virtual PrivateClusterConfig DesiredPrivateClusterConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| PrivateClusterConfig | 
DesiredPrivateIpv6GoogleAccess
The desired state of IPv6 connectivity to Google Services.
Declaration
[JsonProperty("desiredPrivateIpv6GoogleAccess")]
public virtual string DesiredPrivateIpv6GoogleAccess { get; set; }Property Value
| Type | Description | 
|---|---|
| string | 
DesiredRbacBindingConfig
RBACBindingConfig allows user to restrict ClusterRoleBindings an RoleBindings that can be created.
Declaration
[JsonProperty("desiredRbacBindingConfig")]
public virtual RBACBindingConfig DesiredRbacBindingConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| RBACBindingConfig | 
DesiredReleaseChannel
The desired release channel configuration.
Declaration
[JsonProperty("desiredReleaseChannel")]
public virtual ReleaseChannel DesiredReleaseChannel { get; set; }Property Value
| Type | Description | 
|---|---|
| ReleaseChannel | 
DesiredResourceUsageExportConfig
The desired configuration for exporting resource usage.
Declaration
[JsonProperty("desiredResourceUsageExportConfig")]
public virtual ResourceUsageExportConfig DesiredResourceUsageExportConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| ResourceUsageExportConfig | 
DesiredSecretManagerConfig
Enable/Disable Secret Manager Config.
Declaration
[JsonProperty("desiredSecretManagerConfig")]
public virtual SecretManagerConfig DesiredSecretManagerConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| SecretManagerConfig | 
DesiredSecurityPostureConfig
Enable/Disable Security Posture API features for the cluster.
Declaration
[JsonProperty("desiredSecurityPostureConfig")]
public virtual SecurityPostureConfig DesiredSecurityPostureConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| SecurityPostureConfig | 
DesiredServiceExternalIpsConfig
ServiceExternalIPsConfig specifies the config for the use of Services with ExternalIPs field.
Declaration
[JsonProperty("desiredServiceExternalIpsConfig")]
public virtual ServiceExternalIPsConfig DesiredServiceExternalIpsConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| ServiceExternalIPsConfig | 
DesiredShieldedNodes
Configuration for Shielded Nodes.
Declaration
[JsonProperty("desiredShieldedNodes")]
public virtual ShieldedNodes DesiredShieldedNodes { get; set; }Property Value
| Type | Description | 
|---|---|
| ShieldedNodes | 
DesiredStackType
The desired stack type of the cluster. If a stack type is provided and does not match the current stack type of the cluster, update will attempt to change the stack type to the new type.
Declaration
[JsonProperty("desiredStackType")]
public virtual string DesiredStackType { get; set; }Property Value
| Type | Description | 
|---|---|
| string | 
DesiredVerticalPodAutoscaling
Cluster-level Vertical Pod Autoscaling configuration.
Declaration
[JsonProperty("desiredVerticalPodAutoscaling")]
public virtual VerticalPodAutoscaling DesiredVerticalPodAutoscaling { get; set; }Property Value
| Type | Description | 
|---|---|
| VerticalPodAutoscaling | 
DesiredWorkloadIdentityConfig
Configuration for Workload Identity.
Declaration
[JsonProperty("desiredWorkloadIdentityConfig")]
public virtual WorkloadIdentityConfig DesiredWorkloadIdentityConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| WorkloadIdentityConfig | 
ETag
The current etag of the cluster. If an etag is provided and does not match the current etag of the cluster, update will be blocked and an ABORTED error will be returned.
Declaration
[JsonProperty("etag")]
public virtual string ETag { get; set; }Property Value
| Type | Description | 
|---|---|
| string | 
EnableK8sBetaApis
Kubernetes open source beta apis enabled on the cluster. Only beta apis
Declaration
[JsonProperty("enableK8sBetaApis")]
public virtual K8sBetaAPIConfig EnableK8sBetaApis { get; set; }Property Value
| Type | Description | 
|---|---|
| K8sBetaAPIConfig | 
RemovedAdditionalPodRangesConfig
The additional pod ranges that are to be removed from the cluster. The pod ranges specified here must have been specified earlier in the 'additional_pod_ranges_config' argument.
Declaration
[JsonProperty("removedAdditionalPodRangesConfig")]
public virtual AdditionalPodRangesConfig RemovedAdditionalPodRangesConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| AdditionalPodRangesConfig | 
UserManagedKeysConfig
The Custom keys configuration for the cluster.
Declaration
[JsonProperty("userManagedKeysConfig")]
public virtual UserManagedKeysConfig UserManagedKeysConfig { get; set; }Property Value
| Type | Description | 
|---|---|
| UserManagedKeysConfig |