Class: Google::Apis::ContainerV1beta1::ClusterUpdate
- Inherits:
-
Object
- Object
- Google::Apis::ContainerV1beta1::ClusterUpdate
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/container_v1beta1/classes.rb,
lib/google/apis/container_v1beta1/representations.rb,
lib/google/apis/container_v1beta1/representations.rb
Overview
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.
Instance Attribute Summary collapse
-
#desired_addons_config ⇒ Google::Apis::ContainerV1beta1::AddonsConfig
Configuration for the addons that can be automatically spun up in the cluster, enabling additional functionality.
-
#desired_binary_authorization ⇒ Google::Apis::ContainerV1beta1::BinaryAuthorization
Configuration for Binary Authorization.
-
#desired_cluster_autoscaling ⇒ Google::Apis::ContainerV1beta1::ClusterAutoscaling
ClusterAutoscaling contains global, per-cluster information required by Cluster Autoscaler to automatically adjust the size of the cluster and create/ delete node pools based on the current needs.
-
#desired_cluster_telemetry ⇒ Google::Apis::ContainerV1beta1::ClusterTelemetry
Telemetry integration for the cluster.
-
#desired_database_encryption ⇒ Google::Apis::ContainerV1beta1::DatabaseEncryption
Configuration of etcd encryption.
-
#desired_datapath_provider ⇒ String
The desired datapath provider for the cluster.
-
#desired_default_snat_status ⇒ Google::Apis::ContainerV1beta1::DefaultSnatStatus
DefaultSnatStatus contains the desired state of whether default sNAT should be disabled on the cluster.
-
#desired_image_type ⇒ String
The desired image type for the node pool.
-
#desired_intra_node_visibility_config ⇒ Google::Apis::ContainerV1beta1::IntraNodeVisibilityConfig
IntraNodeVisibilityConfig contains the desired config of the intra-node visibility on this cluster.
-
#desired_locations ⇒ Array<String>
The desired list of Google Compute Engine zones in which the cluster's nodes should be located.
-
#desired_logging_service ⇒ String
The logging service the cluster should use to write logs.
-
#desired_master ⇒ Google::Apis::ContainerV1beta1::Master
Master is the configuration for components on master.
-
#desired_master_authorized_networks_config ⇒ Google::Apis::ContainerV1beta1::MasterAuthorizedNetworksConfig
Configuration options for the master authorized networks feature.
-
#desired_master_version ⇒ String
The Kubernetes version to change the master to.
-
#desired_monitoring_service ⇒ String
The monitoring service the cluster should use to write metrics.
-
#desired_node_pool_autoscaling ⇒ Google::Apis::ContainerV1beta1::NodePoolAutoscaling
NodePoolAutoscaling contains information required by cluster autoscaler to adjust the size of the node pool to the current cluster usage.
-
#desired_node_pool_id ⇒ String
The node pool to be upgraded.
-
#desired_node_version ⇒ String
The Kubernetes version to change the nodes to (typically an upgrade).
-
#desired_notification_config ⇒ Google::Apis::ContainerV1beta1::NotificationConfig
NotificationConfig is the configuration of notifications.
-
#desired_pod_security_policy_config ⇒ Google::Apis::ContainerV1beta1::PodSecurityPolicyConfig
Configuration for the PodSecurityPolicy feature.
-
#desired_private_cluster_config ⇒ Google::Apis::ContainerV1beta1::PrivateClusterConfig
Configuration options for private clusters.
-
#desired_private_ipv6_google_access ⇒ String
The desired state of IPv6 connectivity to Google Services.
-
#desired_release_channel ⇒ Google::Apis::ContainerV1beta1::ReleaseChannel
ReleaseChannel indicates which release channel a cluster is subscribed to.
-
#desired_resource_usage_export_config ⇒ Google::Apis::ContainerV1beta1::ResourceUsageExportConfig
Configuration for exporting cluster resource usages.
-
#desired_shielded_nodes ⇒ Google::Apis::ContainerV1beta1::ShieldedNodes
Configuration of Shielded Nodes feature.
-
#desired_tpu_config ⇒ Google::Apis::ContainerV1beta1::TpuConfig
Configuration for Cloud TPU.
-
#desired_vertical_pod_autoscaling ⇒ Google::Apis::ContainerV1beta1::VerticalPodAutoscaling
VerticalPodAutoscaling contains global, per-cluster information required by Vertical Pod Autoscaler to automatically adjust the resources of pods controlled by it.
-
#desired_workload_identity_config ⇒ Google::Apis::ContainerV1beta1::WorkloadIdentityConfig
Configuration for the use of Kubernetes Service Accounts in GCP IAM policies.
Instance Method Summary collapse
-
#initialize(**args) ⇒ ClusterUpdate
constructor
A new instance of ClusterUpdate.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ ClusterUpdate
Returns a new instance of ClusterUpdate.
1223 1224 1225 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1223 def initialize(**args) update!(**args) end |
Instance Attribute Details
#desired_addons_config ⇒ Google::Apis::ContainerV1beta1::AddonsConfig
Configuration for the addons that can be automatically spun up in the cluster,
enabling additional functionality.
Corresponds to the JSON property desiredAddonsConfig
1041 1042 1043 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1041 def desired_addons_config @desired_addons_config end |
#desired_binary_authorization ⇒ Google::Apis::ContainerV1beta1::BinaryAuthorization
Configuration for Binary Authorization.
Corresponds to the JSON property desiredBinaryAuthorization
1046 1047 1048 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1046 def @desired_binary_authorization end |
#desired_cluster_autoscaling ⇒ Google::Apis::ContainerV1beta1::ClusterAutoscaling
ClusterAutoscaling contains global, per-cluster information required by
Cluster Autoscaler to automatically adjust the size of the cluster and create/
delete node pools based on the current needs.
Corresponds to the JSON property desiredClusterAutoscaling
1053 1054 1055 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1053 def desired_cluster_autoscaling @desired_cluster_autoscaling end |
#desired_cluster_telemetry ⇒ Google::Apis::ContainerV1beta1::ClusterTelemetry
Telemetry integration for the cluster.
Corresponds to the JSON property desiredClusterTelemetry
1058 1059 1060 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1058 def desired_cluster_telemetry @desired_cluster_telemetry end |
#desired_database_encryption ⇒ Google::Apis::ContainerV1beta1::DatabaseEncryption
Configuration of etcd encryption.
Corresponds to the JSON property desiredDatabaseEncryption
1063 1064 1065 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1063 def desired_database_encryption @desired_database_encryption end |
#desired_datapath_provider ⇒ String
The desired datapath provider for the cluster.
Corresponds to the JSON property desiredDatapathProvider
1068 1069 1070 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1068 def desired_datapath_provider @desired_datapath_provider end |
#desired_default_snat_status ⇒ Google::Apis::ContainerV1beta1::DefaultSnatStatus
DefaultSnatStatus contains the desired state of whether default sNAT should be
disabled on the cluster.
Corresponds to the JSON property desiredDefaultSnatStatus
1074 1075 1076 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1074 def desired_default_snat_status @desired_default_snat_status end |
#desired_image_type ⇒ String
The desired image type for the node pool. NOTE: Set the "desired_node_pool"
field as well.
Corresponds to the JSON property desiredImageType
1080 1081 1082 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1080 def desired_image_type @desired_image_type end |
#desired_intra_node_visibility_config ⇒ Google::Apis::ContainerV1beta1::IntraNodeVisibilityConfig
IntraNodeVisibilityConfig contains the desired config of the intra-node
visibility on this cluster.
Corresponds to the JSON property desiredIntraNodeVisibilityConfig
1086 1087 1088 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1086 def desired_intra_node_visibility_config @desired_intra_node_visibility_config end |
#desired_locations ⇒ Array<String>
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.
Corresponds to the JSON property desiredLocations
1095 1096 1097 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1095 def desired_locations @desired_locations end |
#desired_logging_service ⇒ String
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.
Corresponds to the JSON property desiredLoggingService
1106 1107 1108 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1106 def desired_logging_service @desired_logging_service end |
#desired_master ⇒ Google::Apis::ContainerV1beta1::Master
Master is the configuration for components on master.
Corresponds to the JSON property desiredMaster
1111 1112 1113 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1111 def desired_master @desired_master end |
#desired_master_authorized_networks_config ⇒ Google::Apis::ContainerV1beta1::MasterAuthorizedNetworksConfig
Configuration options for the master authorized networks feature. Enabled
master authorized networks will disallow all external traffic to access
Kubernetes master through HTTPS except traffic from the given CIDR blocks,
Google Compute Engine Public IPs and Google Prod IPs.
Corresponds to the JSON property desiredMasterAuthorizedNetworksConfig
1119 1120 1121 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1119 def @desired_master_authorized_networks_config end |
#desired_master_version ⇒ String
The Kubernetes version to change the master to. The only valid value is the
latest supported version. 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
Corresponds to the JSON property desiredMasterVersion
1130 1131 1132 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1130 def desired_master_version @desired_master_version end |
#desired_monitoring_service ⇒ String
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.
Corresponds to the JSON property desiredMonitoringService
1141 1142 1143 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1141 def desired_monitoring_service @desired_monitoring_service end |
#desired_node_pool_autoscaling ⇒ Google::Apis::ContainerV1beta1::NodePoolAutoscaling
NodePoolAutoscaling contains information required by cluster autoscaler to
adjust the size of the node pool to the current cluster usage.
Corresponds to the JSON property desiredNodePoolAutoscaling
1147 1148 1149 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1147 def desired_node_pool_autoscaling @desired_node_pool_autoscaling end |
#desired_node_pool_id ⇒ String
The node pool to be upgraded. This field is mandatory if "desired_node_version"
, "desired_image_family", "desired_node_pool_autoscaling", or "
desired_workload_metadata_config" is specified and there is more than one node
pool on the cluster.
Corresponds to the JSON property desiredNodePoolId
1155 1156 1157 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1155 def desired_node_pool_id @desired_node_pool_id end |
#desired_node_version ⇒ String
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
Corresponds to the JSON property desiredNodeVersion
1166 1167 1168 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1166 def desired_node_version @desired_node_version end |
#desired_notification_config ⇒ Google::Apis::ContainerV1beta1::NotificationConfig
NotificationConfig is the configuration of notifications.
Corresponds to the JSON property desiredNotificationConfig
1171 1172 1173 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1171 def desired_notification_config @desired_notification_config end |
#desired_pod_security_policy_config ⇒ Google::Apis::ContainerV1beta1::PodSecurityPolicyConfig
Configuration for the PodSecurityPolicy feature.
Corresponds to the JSON property desiredPodSecurityPolicyConfig
1176 1177 1178 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1176 def desired_pod_security_policy_config @desired_pod_security_policy_config end |
#desired_private_cluster_config ⇒ Google::Apis::ContainerV1beta1::PrivateClusterConfig
Configuration options for private clusters.
Corresponds to the JSON property desiredPrivateClusterConfig
1181 1182 1183 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1181 def desired_private_cluster_config @desired_private_cluster_config end |
#desired_private_ipv6_google_access ⇒ String
The desired state of IPv6 connectivity to Google Services.
Corresponds to the JSON property desiredPrivateIpv6GoogleAccess
1186 1187 1188 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1186 def desired_private_ipv6_google_access @desired_private_ipv6_google_access end |
#desired_release_channel ⇒ Google::Apis::ContainerV1beta1::ReleaseChannel
ReleaseChannel indicates which release channel a cluster is subscribed to.
Release channels are arranged in order of risk. When a cluster is subscribed
to a release channel, Google maintains both the master version and the node
version. Node auto-upgrade defaults to true and cannot be disabled.
Corresponds to the JSON property desiredReleaseChannel
1194 1195 1196 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1194 def desired_release_channel @desired_release_channel end |
#desired_resource_usage_export_config ⇒ Google::Apis::ContainerV1beta1::ResourceUsageExportConfig
Configuration for exporting cluster resource usages.
Corresponds to the JSON property desiredResourceUsageExportConfig
1199 1200 1201 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1199 def desired_resource_usage_export_config @desired_resource_usage_export_config end |
#desired_shielded_nodes ⇒ Google::Apis::ContainerV1beta1::ShieldedNodes
Configuration of Shielded Nodes feature.
Corresponds to the JSON property desiredShieldedNodes
1204 1205 1206 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1204 def desired_shielded_nodes @desired_shielded_nodes end |
#desired_tpu_config ⇒ Google::Apis::ContainerV1beta1::TpuConfig
Configuration for Cloud TPU.
Corresponds to the JSON property desiredTpuConfig
1209 1210 1211 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1209 def desired_tpu_config @desired_tpu_config end |
#desired_vertical_pod_autoscaling ⇒ Google::Apis::ContainerV1beta1::VerticalPodAutoscaling
VerticalPodAutoscaling contains global, per-cluster information required by
Vertical Pod Autoscaler to automatically adjust the resources of pods
controlled by it.
Corresponds to the JSON property desiredVerticalPodAutoscaling
1216 1217 1218 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1216 def desired_vertical_pod_autoscaling @desired_vertical_pod_autoscaling end |
#desired_workload_identity_config ⇒ Google::Apis::ContainerV1beta1::WorkloadIdentityConfig
Configuration for the use of Kubernetes Service Accounts in GCP IAM policies.
Corresponds to the JSON property desiredWorkloadIdentityConfig
1221 1222 1223 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1221 def desired_workload_identity_config @desired_workload_identity_config end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1228 def update!(**args) @desired_addons_config = args[:desired_addons_config] if args.key?(:desired_addons_config) @desired_binary_authorization = args[:desired_binary_authorization] if args.key?(:desired_binary_authorization) @desired_cluster_autoscaling = args[:desired_cluster_autoscaling] if args.key?(:desired_cluster_autoscaling) @desired_cluster_telemetry = args[:desired_cluster_telemetry] if args.key?(:desired_cluster_telemetry) @desired_database_encryption = args[:desired_database_encryption] if args.key?(:desired_database_encryption) @desired_datapath_provider = args[:desired_datapath_provider] if args.key?(:desired_datapath_provider) @desired_default_snat_status = args[:desired_default_snat_status] if args.key?(:desired_default_snat_status) @desired_image_type = args[:desired_image_type] if args.key?(:desired_image_type) @desired_intra_node_visibility_config = args[:desired_intra_node_visibility_config] if args.key?(:desired_intra_node_visibility_config) @desired_locations = args[:desired_locations] if args.key?(:desired_locations) @desired_logging_service = args[:desired_logging_service] if args.key?(:desired_logging_service) @desired_master = args[:desired_master] if args.key?(:desired_master) @desired_master_authorized_networks_config = args[:desired_master_authorized_networks_config] if args.key?(:desired_master_authorized_networks_config) @desired_master_version = args[:desired_master_version] if args.key?(:desired_master_version) @desired_monitoring_service = args[:desired_monitoring_service] if args.key?(:desired_monitoring_service) @desired_node_pool_autoscaling = args[:desired_node_pool_autoscaling] if args.key?(:desired_node_pool_autoscaling) @desired_node_pool_id = args[:desired_node_pool_id] if args.key?(:desired_node_pool_id) @desired_node_version = args[:desired_node_version] if args.key?(:desired_node_version) @desired_notification_config = args[:desired_notification_config] if args.key?(:desired_notification_config) @desired_pod_security_policy_config = args[:desired_pod_security_policy_config] if args.key?(:desired_pod_security_policy_config) @desired_private_cluster_config = args[:desired_private_cluster_config] if args.key?(:desired_private_cluster_config) @desired_private_ipv6_google_access = args[:desired_private_ipv6_google_access] if args.key?(:desired_private_ipv6_google_access) @desired_release_channel = args[:desired_release_channel] if args.key?(:desired_release_channel) @desired_resource_usage_export_config = args[:desired_resource_usage_export_config] if args.key?(:desired_resource_usage_export_config) @desired_shielded_nodes = args[:desired_shielded_nodes] if args.key?(:desired_shielded_nodes) @desired_tpu_config = args[:desired_tpu_config] if args.key?(:desired_tpu_config) @desired_vertical_pod_autoscaling = args[:desired_vertical_pod_autoscaling] if args.key?(:desired_vertical_pod_autoscaling) @desired_workload_identity_config = args[:desired_workload_identity_config] if args.key?(:desired_workload_identity_config) end |