Class: Google::Apis::ContainerV1beta1::Cluster
- Inherits:
-
Object
- Object
- Google::Apis::ContainerV1beta1::Cluster
- 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
A Google Kubernetes Engine cluster.
Instance Attribute Summary collapse
-
#addons_config ⇒ Google::Apis::ContainerV1beta1::AddonsConfig
Configuration for the addons that can be automatically spun up in the cluster, enabling additional functionality.
-
#authenticator_groups_config ⇒ Google::Apis::ContainerV1beta1::AuthenticatorGroupsConfig
Configuration for returning group information from authenticators.
-
#autopilot ⇒ Google::Apis::ContainerV1beta1::Autopilot
Autopilot is the configuration for Autopilot settings on the 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.
-
#binary_authorization ⇒ Google::Apis::ContainerV1beta1::BinaryAuthorization
Configuration for Binary Authorization.
-
#cluster_ipv4_cidr ⇒ String
The IP address range of the container pods in this cluster, in CIDR notation (e.g.
10.96.0. 0/14). -
#cluster_telemetry ⇒ Google::Apis::ContainerV1beta1::ClusterTelemetry
Telemetry integration for the cluster.
-
#conditions ⇒ Array<Google::Apis::ContainerV1beta1::StatusCondition>
Which conditions caused the current cluster state.
-
#confidential_nodes ⇒ Google::Apis::ContainerV1beta1::ConfidentialNodes
ConfidentialNodes is configuration for the confidential nodes feature, which makes nodes run on confidential VMs.
-
#cost_management_config ⇒ Google::Apis::ContainerV1beta1::CostManagementConfig
Configuration for fine-grained cost management feature.
-
#create_time ⇒ String
[Output only] The time the cluster was created, in RFC3339 text format.
-
#current_master_version ⇒ String
[Output only] The current software version of the master endpoint.
-
#current_node_count ⇒ Fixnum
[Output only] The number of nodes currently in the cluster.
-
#current_node_version ⇒ String
[Output only] Deprecated, use NodePool.version instead.
-
#database_encryption ⇒ Google::Apis::ContainerV1beta1::DatabaseEncryption
Configuration of etcd encryption.
-
#default_max_pods_constraint ⇒ Google::Apis::ContainerV1beta1::MaxPodsConstraint
Constraints applied to pods.
-
#description ⇒ String
An optional description of this cluster.
-
#enable_k8s_beta_apis ⇒ Google::Apis::ContainerV1beta1::K8sBetaApiConfig
Kubernetes open source beta apis enabled on the cluster.
-
#enable_kubernetes_alpha ⇒ Boolean
(also: #enable_kubernetes_alpha?)
Kubernetes alpha features are enabled on this cluster.
-
#enable_tpu ⇒ Boolean
(also: #enable_tpu?)
Enable the ability to use Cloud TPUs in this cluster.
-
#endpoint ⇒ String
[Output only] The IP address of this cluster's master endpoint.
-
#etag ⇒ String
This checksum is computed by the server based on the value of cluster fields, and may be sent on update requests to ensure the client has an up-to-date value before proceeding.
-
#expire_time ⇒ String
[Output only] The time the cluster will be automatically deleted in RFC3339 text format.
-
#fleet ⇒ Google::Apis::ContainerV1beta1::Fleet
Fleet is the fleet configuration for the cluster.
-
#id ⇒ String
Output only.
-
#identity_service_config ⇒ Google::Apis::ContainerV1beta1::IdentityServiceConfig
IdentityServiceConfig is configuration for Identity Service which allows customers to use external identity providers with the K8S API Corresponds to the JSON property
identityServiceConfig. -
#initial_cluster_version ⇒ String
The initial Kubernetes version for this cluster.
-
#initial_node_count ⇒ Fixnum
The number of nodes to create in this cluster.
-
#instance_group_urls ⇒ Array<String>
Deprecated.
-
#ip_allocation_policy ⇒ Google::Apis::ContainerV1beta1::IpAllocationPolicy
Configuration for controlling how IPs are allocated in the cluster.
-
#label_fingerprint ⇒ String
The fingerprint of the set of labels for this cluster.
-
#legacy_abac ⇒ Google::Apis::ContainerV1beta1::LegacyAbac
Configuration for the legacy Attribute Based Access Control authorization mode.
- #location ⇒ String
-
#locations ⇒ Array<String>
The list of Google Compute Engine zones in which the cluster's nodes should be located.
-
#logging_config ⇒ Google::Apis::ContainerV1beta1::LoggingConfig
LoggingConfig is cluster logging configuration.
-
#logging_service ⇒ String
The logging service the cluster should use to write logs.
-
#maintenance_policy ⇒ Google::Apis::ContainerV1beta1::MaintenancePolicy
MaintenancePolicy defines the maintenance policy to be used for the cluster.
-
#master ⇒ Google::Apis::ContainerV1beta1::Master
Master is the configuration for components on master.
-
#master_auth ⇒ Google::Apis::ContainerV1beta1::MasterAuth
The authentication information for accessing the master endpoint.
-
#master_authorized_networks_config ⇒ Google::Apis::ContainerV1beta1::MasterAuthorizedNetworksConfig
Configuration options for the master authorized networks feature.
-
#master_ipv4_cidr_block ⇒ String
The IP prefix in CIDR notation to use for the hosted master network.
-
#mesh_certificates ⇒ Google::Apis::ContainerV1beta1::MeshCertificates
Configuration for issuance of mTLS keys and certificates to Kubernetes pods.
-
#monitoring_config ⇒ Google::Apis::ContainerV1beta1::MonitoringConfig
MonitoringConfig is cluster monitoring configuration.
-
#monitoring_service ⇒ String
The monitoring service the cluster should use to write metrics.
-
#name ⇒ String
The name of this cluster.
-
#network ⇒ String
The name of the Google Compute Engine network to which the cluster is connected.
-
#network_config ⇒ Google::Apis::ContainerV1beta1::NetworkConfig
NetworkConfig reports the relative names of network & subnetwork.
-
#network_policy ⇒ Google::Apis::ContainerV1beta1::NetworkPolicy
Configuration options for the NetworkPolicy feature.
-
#node_config ⇒ Google::Apis::ContainerV1beta1::NodeConfig
Parameters that describe the nodes in a cluster.
-
#node_ipv4_cidr_size ⇒ Fixnum
[Output only] The size of the address space on each node for hosting containers.
-
#node_pool_auto_config ⇒ Google::Apis::ContainerV1beta1::NodePoolAutoConfig
node pool configs that apply to all auto-provisioned node pools in autopilot clusters and node auto-provisioning enabled clusters Corresponds to the JSON property
nodePoolAutoConfig. -
#node_pool_defaults ⇒ Google::Apis::ContainerV1beta1::NodePoolDefaults
Subset of Nodepool message that has defaults.
-
#node_pools ⇒ Array<Google::Apis::ContainerV1beta1::NodePool>
The node pools associated with this cluster.
-
#notification_config ⇒ Google::Apis::ContainerV1beta1::NotificationConfig
NotificationConfig is the configuration of notifications.
-
#pod_security_policy_config ⇒ Google::Apis::ContainerV1beta1::PodSecurityPolicyConfig
Configuration for the PodSecurityPolicy feature.
-
#private_cluster ⇒ Boolean
(also: #private_cluster?)
If this is a private cluster setup.
-
#private_cluster_config ⇒ Google::Apis::ContainerV1beta1::PrivateClusterConfig
Configuration options for private clusters.
-
#protect_config ⇒ Google::Apis::ContainerV1beta1::ProtectConfig
ProtectConfig defines the flags needed to enable/disable features for the Protect API.
-
#release_channel ⇒ Google::Apis::ContainerV1beta1::ReleaseChannel
ReleaseChannel indicates which release channel a cluster is subscribed to.
-
#resource_labels ⇒ Hash<String,String>
The resource labels for the cluster to use to annotate any related Google Compute Engine resources.
-
#resource_usage_export_config ⇒ Google::Apis::ContainerV1beta1::ResourceUsageExportConfig
Configuration for exporting cluster resource usages.
-
#security_posture_config ⇒ Google::Apis::ContainerV1beta1::SecurityPostureConfig
SecurityPostureConfig defines the flags needed to enable/disable features for the Security Posture API.
-
#self_link ⇒ String
[Output only] Server-defined URL for the resource.
-
#services_ipv4_cidr ⇒ String
[Output only] The IP address range of the Kubernetes services in this cluster, in CIDR notation (e.g.
1.2.3.4/29). -
#shielded_nodes ⇒ Google::Apis::ContainerV1beta1::ShieldedNodes
Configuration of Shielded Nodes feature.
-
#status ⇒ String
[Output only] The current status of this cluster.
-
#status_message ⇒ String
[Output only] Deprecated.
-
#subnetwork ⇒ String
The name of the Google Compute Engine subnetwork to which the cluster is connected.
-
#tpu_config ⇒ Google::Apis::ContainerV1beta1::TpuConfig
Configuration for Cloud TPU.
-
#tpu_ipv4_cidr_block ⇒ String
[Output only] The IP address range of the Cloud TPUs in this cluster, in CIDR notation (e.g.
1.2.3.4/29). -
#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.
-
#workload_alts_config ⇒ Google::Apis::ContainerV1beta1::WorkloadAltsConfig
Configuration for direct-path (via ALTS) with workload identity.
-
#workload_certificates ⇒ Google::Apis::ContainerV1beta1::WorkloadCertificates
Configuration for issuance of mTLS keys and certificates to Kubernetes pods.
-
#workload_identity_config ⇒ Google::Apis::ContainerV1beta1::WorkloadIdentityConfig
Configuration for the use of Kubernetes Service Accounts in GCP IAM policies.
-
#zone ⇒ String
[Output only] The name of the Google Compute Engine zone in which the cluster resides.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Cluster
constructor
A new instance of Cluster.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Cluster
Returns a new instance of Cluster.
1307 1308 1309 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1307 def initialize(**args) update!(**args) end |
Instance Attribute Details
#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 addonsConfig
829 830 831 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 829 def addons_config @addons_config end |
#authenticator_groups_config ⇒ Google::Apis::ContainerV1beta1::AuthenticatorGroupsConfig
Configuration for returning group information from authenticators.
Corresponds to the JSON property authenticatorGroupsConfig
834 835 836 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 834 def authenticator_groups_config @authenticator_groups_config end |
#autopilot ⇒ Google::Apis::ContainerV1beta1::Autopilot
Autopilot is the configuration for Autopilot settings on the cluster.
Corresponds to the JSON property autopilot
839 840 841 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 839 def autopilot @autopilot end |
#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 autoscaling
846 847 848 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 846 def autoscaling @autoscaling end |
#binary_authorization ⇒ Google::Apis::ContainerV1beta1::BinaryAuthorization
Configuration for Binary Authorization.
Corresponds to the JSON property binaryAuthorization
851 852 853 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 851 def @binary_authorization end |
#cluster_ipv4_cidr ⇒ String
The IP address range of the container 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.
Corresponds to the JSON property clusterIpv4Cidr
859 860 861 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 859 def cluster_ipv4_cidr @cluster_ipv4_cidr end |
#cluster_telemetry ⇒ Google::Apis::ContainerV1beta1::ClusterTelemetry
Telemetry integration for the cluster.
Corresponds to the JSON property clusterTelemetry
864 865 866 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 864 def cluster_telemetry @cluster_telemetry end |
#conditions ⇒ Array<Google::Apis::ContainerV1beta1::StatusCondition>
Which conditions caused the current cluster state.
Corresponds to the JSON property conditions
869 870 871 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 869 def conditions @conditions end |
#confidential_nodes ⇒ Google::Apis::ContainerV1beta1::ConfidentialNodes
ConfidentialNodes is configuration for the confidential nodes feature, which
makes nodes run on confidential VMs.
Corresponds to the JSON property confidentialNodes
875 876 877 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 875 def confidential_nodes @confidential_nodes end |
#cost_management_config ⇒ Google::Apis::ContainerV1beta1::CostManagementConfig
Configuration for fine-grained cost management feature.
Corresponds to the JSON property costManagementConfig
880 881 882 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 880 def cost_management_config @cost_management_config end |
#create_time ⇒ String
[Output only] The time the cluster was created, in RFC3339 text format.
Corresponds to the JSON property createTime
886 887 888 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 886 def create_time @create_time end |
#current_master_version ⇒ String
[Output only] The current software version of the master endpoint.
Corresponds to the JSON property currentMasterVersion
891 892 893 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 891 def current_master_version @current_master_version end |
#current_node_count ⇒ Fixnum
[Output only] The number of nodes currently in the cluster. Deprecated. Call
Kubernetes API directly to retrieve node information.
Corresponds to the JSON property currentNodeCount
897 898 899 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 897 def current_node_count @current_node_count end |
#current_node_version ⇒ String
[Output only] Deprecated, use NodePool.version instead. The current version of the node software components. If
they are currently at multiple versions because they're in the process of
being upgraded, this reflects the minimum version of all nodes.
Corresponds to the JSON property currentNodeVersion
906 907 908 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 906 def current_node_version @current_node_version end |
#database_encryption ⇒ Google::Apis::ContainerV1beta1::DatabaseEncryption
Configuration of etcd encryption.
Corresponds to the JSON property databaseEncryption
911 912 913 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 911 def database_encryption @database_encryption end |
#default_max_pods_constraint ⇒ Google::Apis::ContainerV1beta1::MaxPodsConstraint
Constraints applied to pods.
Corresponds to the JSON property defaultMaxPodsConstraint
916 917 918 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 916 def default_max_pods_constraint @default_max_pods_constraint end |
#description ⇒ String
An optional description of this cluster.
Corresponds to the JSON property description
921 922 923 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 921 def description @description end |
#enable_k8s_beta_apis ⇒ Google::Apis::ContainerV1beta1::K8sBetaApiConfig
Kubernetes open source beta apis enabled on the cluster.
Corresponds to the JSON property enableK8sBetaApis
926 927 928 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 926 def enable_k8s_beta_apis @enable_k8s_beta_apis end |
#enable_kubernetes_alpha ⇒ Boolean Also known as: enable_kubernetes_alpha?
Kubernetes alpha features are enabled on this cluster. This includes alpha API
groups (e.g. v1beta1) and features that may not be production ready in the
kubernetes version of the master and nodes. The cluster has no SLA for uptime
and master/node upgrades are disabled. Alpha enabled clusters are
automatically deleted thirty days after creation.
Corresponds to the JSON property enableKubernetesAlpha
935 936 937 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 935 def enable_kubernetes_alpha @enable_kubernetes_alpha end |
#enable_tpu ⇒ Boolean Also known as: enable_tpu?
Enable the ability to use Cloud TPUs in this cluster. This field is deprecated,
use tpu_config.enabled instead.
Corresponds to the JSON property enableTpu
942 943 944 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 942 def enable_tpu @enable_tpu end |
#endpoint ⇒ String
[Output only] The IP address of this cluster's master endpoint. The endpoint
can be accessed from the internet at https://username:password@endpoint/.
See the masterAuth property of this resource for username and password
information.
Corresponds to the JSON property endpoint
951 952 953 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 951 def endpoint @endpoint end |
#etag ⇒ String
This checksum is computed by the server based on the value of cluster fields,
and may be sent on update requests to ensure the client has an up-to-date
value before proceeding.
Corresponds to the JSON property etag
958 959 960 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 958 def etag @etag end |
#expire_time ⇒ String
[Output only] The time the cluster will be automatically deleted in RFC3339 text format.
Corresponds to the JSON property expireTime
964 965 966 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 964 def expire_time @expire_time end |
#fleet ⇒ Google::Apis::ContainerV1beta1::Fleet
Fleet is the fleet configuration for the cluster.
Corresponds to the JSON property fleet
969 970 971 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 969 def fleet @fleet end |
#id ⇒ String
Output only. Unique id for the cluster.
Corresponds to the JSON property id
974 975 976 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 974 def id @id end |
#identity_service_config ⇒ Google::Apis::ContainerV1beta1::IdentityServiceConfig
IdentityServiceConfig is configuration for Identity Service which allows
customers to use external identity providers with the K8S API
Corresponds to the JSON property identityServiceConfig
980 981 982 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 980 def identity_service_config @identity_service_config end |
#initial_cluster_version ⇒ String
The initial Kubernetes version for this cluster. Valid versions are those
found in validMasterVersions returned by getServerConfig. The version can be
upgraded over time; such upgrades are reflected in currentMasterVersion and
currentNodeVersion. 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 initialClusterVersion
993 994 995 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 993 def initial_cluster_version @initial_cluster_version end |
#initial_node_count ⇒ Fixnum
The number of nodes to create in this cluster. You must ensure that your
Compute Engine resource quota is
sufficient for this number of instances. You must also have available firewall
and routes quota. For requests, this field should only be used in lieu of a "
node_pool" object, since this configuration (along with the "node_config")
will be used to create a "NodePool" object with an auto-generated name. Do not
use this and a node_pool at the same time. This field is deprecated, use
node_pool.initial_node_count instead.
Corresponds to the JSON property initialNodeCount
1005 1006 1007 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1005 def initial_node_count @initial_node_count end |
#instance_group_urls ⇒ Array<String>
Deprecated. Use node_pools.instance_group_urls.
Corresponds to the JSON property instanceGroupUrls
1010 1011 1012 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1010 def instance_group_urls @instance_group_urls end |
#ip_allocation_policy ⇒ Google::Apis::ContainerV1beta1::IpAllocationPolicy
Configuration for controlling how IPs are allocated in the cluster.
Corresponds to the JSON property ipAllocationPolicy
1015 1016 1017 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1015 def ip_allocation_policy @ip_allocation_policy end |
#label_fingerprint ⇒ String
The fingerprint of the set of labels for this cluster.
Corresponds to the JSON property labelFingerprint
1020 1021 1022 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1020 def label_fingerprint @label_fingerprint end |
#legacy_abac ⇒ Google::Apis::ContainerV1beta1::LegacyAbac
Configuration for the legacy Attribute Based Access Control authorization mode.
Corresponds to the JSON property legacyAbac
1025 1026 1027 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1025 def legacy_abac @legacy_abac end |
#location ⇒ String
1033 1034 1035 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1033 def location @location end |
#locations ⇒ Array<String>
The list of Google Compute Engine zones in which the cluster's nodes should be located. This
field provides a default value if NodePool.Locations are not specified during node pool
creation. Warning: changing cluster locations will update the NodePool.
Locations of all node
pools and will result in nodes being added and/or removed.
Corresponds to the JSON property locations
1046 1047 1048 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1046 def locations @locations end |
#logging_config ⇒ Google::Apis::ContainerV1beta1::LoggingConfig
LoggingConfig is cluster logging configuration.
Corresponds to the JSON property loggingConfig
1051 1052 1053 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1051 def logging_config @logging_config end |
#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 loggingService
1062 1063 1064 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1062 def logging_service @logging_service end |
#maintenance_policy ⇒ Google::Apis::ContainerV1beta1::MaintenancePolicy
MaintenancePolicy defines the maintenance policy to be used for the cluster.
Corresponds to the JSON property maintenancePolicy
1067 1068 1069 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1067 def maintenance_policy @maintenance_policy end |
#master ⇒ Google::Apis::ContainerV1beta1::Master
Master is the configuration for components on master.
Corresponds to the JSON property master
1072 1073 1074 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1072 def master @master end |
#master_auth ⇒ Google::Apis::ContainerV1beta1::MasterAuth
The authentication information for accessing the master endpoint.
Authentication can be done using HTTP basic auth or using client certificates.
Corresponds to the JSON property masterAuth
1078 1079 1080 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1078 def master_auth @master_auth end |
#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 masterAuthorizedNetworksConfig
1086 1087 1088 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1086 def @master_authorized_networks_config end |
#master_ipv4_cidr_block ⇒ String
The IP prefix in CIDR notation to use for the hosted master network. This
prefix will be used for assigning private IP addresses to the master or set of
masters, as well as the ILB VIP. This field is deprecated, use
private_cluster_config.master_ipv4_cidr_block instead.
Corresponds to the JSON property masterIpv4CidrBlock
1094 1095 1096 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1094 def master_ipv4_cidr_block @master_ipv4_cidr_block end |
#mesh_certificates ⇒ Google::Apis::ContainerV1beta1::MeshCertificates
Configuration for issuance of mTLS keys and certificates to Kubernetes pods.
Corresponds to the JSON property meshCertificates
1099 1100 1101 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1099 def mesh_certificates @mesh_certificates end |
#monitoring_config ⇒ Google::Apis::ContainerV1beta1::MonitoringConfig
MonitoringConfig is cluster monitoring configuration.
Corresponds to the JSON property monitoringConfig
1104 1105 1106 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1104 def monitoring_config @monitoring_config end |
#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 monitoringService
1115 1116 1117 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1115 def monitoring_service @monitoring_service end |
#name ⇒ String
The name of this cluster. The name must be unique within this project and
location (e.g. zone or region), and can be up to 40 characters with the
following restrictions: * Lowercase letters, numbers, and hyphens only. * Must
start with a letter. * Must end with a number or a letter.
Corresponds to the JSON property name
1123 1124 1125 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1123 def name @name end |
#network ⇒ String
The name of the Google Compute Engine network to which the cluster is
connected. If left unspecified, the default network will be used. On output
this shows the network ID instead of the name.
Corresponds to the JSON property network
1131 1132 1133 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1131 def network @network end |
#network_config ⇒ Google::Apis::ContainerV1beta1::NetworkConfig
NetworkConfig reports the relative names of network & subnetwork.
Corresponds to the JSON property networkConfig
1136 1137 1138 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1136 def network_config @network_config end |
#network_policy ⇒ Google::Apis::ContainerV1beta1::NetworkPolicy
Configuration options for the NetworkPolicy feature. https://kubernetes.io/
docs/concepts/services-networking/networkpolicies/
Corresponds to the JSON property networkPolicy
1142 1143 1144 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1142 def network_policy @network_policy end |
#node_config ⇒ Google::Apis::ContainerV1beta1::NodeConfig
Parameters that describe the nodes in a cluster. GKE Autopilot clusters do not
recognize parameters in NodeConfig. Use AutoprovisioningNodePoolDefaults
instead.
Corresponds to the JSON property nodeConfig
1149 1150 1151 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1149 def node_config @node_config end |
#node_ipv4_cidr_size ⇒ Fixnum
[Output only] The size of the address space on each node for hosting
containers. This is provisioned from within the container_ipv4_cidr range.
This field will only be set when cluster is in route-based network mode.
Corresponds to the JSON property nodeIpv4CidrSize
1156 1157 1158 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1156 def node_ipv4_cidr_size @node_ipv4_cidr_size end |
#node_pool_auto_config ⇒ Google::Apis::ContainerV1beta1::NodePoolAutoConfig
node pool configs that apply to all auto-provisioned node pools in autopilot
clusters and node auto-provisioning enabled clusters
Corresponds to the JSON property nodePoolAutoConfig
1162 1163 1164 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1162 def node_pool_auto_config @node_pool_auto_config end |
#node_pool_defaults ⇒ Google::Apis::ContainerV1beta1::NodePoolDefaults
Subset of Nodepool message that has defaults.
Corresponds to the JSON property nodePoolDefaults
1167 1168 1169 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1167 def node_pool_defaults @node_pool_defaults end |
#node_pools ⇒ Array<Google::Apis::ContainerV1beta1::NodePool>
The node pools associated with this cluster. This field should not be set if "
node_config" or "initial_node_count" are specified.
Corresponds to the JSON property nodePools
1173 1174 1175 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1173 def node_pools @node_pools end |
#notification_config ⇒ Google::Apis::ContainerV1beta1::NotificationConfig
NotificationConfig is the configuration of notifications.
Corresponds to the JSON property notificationConfig
1178 1179 1180 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1178 def notification_config @notification_config end |
#pod_security_policy_config ⇒ Google::Apis::ContainerV1beta1::PodSecurityPolicyConfig
Configuration for the PodSecurityPolicy feature.
Corresponds to the JSON property podSecurityPolicyConfig
1183 1184 1185 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1183 def pod_security_policy_config @pod_security_policy_config end |
#private_cluster ⇒ Boolean Also known as: private_cluster?
If this is a private cluster setup. Private clusters are clusters that, by
default have no external IP addresses on the nodes and where nodes and the
master communicate over private IP addresses. This field is deprecated, use
private_cluster_config.enable_private_nodes instead.
Corresponds to the JSON property privateCluster
1191 1192 1193 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1191 def private_cluster @private_cluster end |
#private_cluster_config ⇒ Google::Apis::ContainerV1beta1::PrivateClusterConfig
Configuration options for private clusters.
Corresponds to the JSON property privateClusterConfig
1197 1198 1199 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1197 def private_cluster_config @private_cluster_config end |
#protect_config ⇒ Google::Apis::ContainerV1beta1::ProtectConfig
ProtectConfig defines the flags needed to enable/disable features for the
Protect API.
Corresponds to the JSON property protectConfig
1203 1204 1205 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1203 def protect_config @protect_config end |
#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 releaseChannel
1211 1212 1213 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1211 def release_channel @release_channel end |
#resource_labels ⇒ Hash<String,String>
The resource labels for the cluster to use to annotate any related Google
Compute Engine resources.
Corresponds to the JSON property resourceLabels
1217 1218 1219 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1217 def resource_labels @resource_labels end |
#resource_usage_export_config ⇒ Google::Apis::ContainerV1beta1::ResourceUsageExportConfig
Configuration for exporting cluster resource usages.
Corresponds to the JSON property resourceUsageExportConfig
1222 1223 1224 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1222 def resource_usage_export_config @resource_usage_export_config end |
#security_posture_config ⇒ Google::Apis::ContainerV1beta1::SecurityPostureConfig
SecurityPostureConfig defines the flags needed to enable/disable features for
the Security Posture API.
Corresponds to the JSON property securityPostureConfig
1228 1229 1230 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1228 def security_posture_config @security_posture_config end |
#self_link ⇒ String
[Output only] Server-defined URL for the resource.
Corresponds to the JSON property selfLink
1233 1234 1235 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1233 def self_link @self_link end |
#services_ipv4_cidr ⇒ String
[Output only] The IP address range of the Kubernetes services in this cluster,
in CIDR
notation (e.g. 1.2.3.4/29). Service addresses are typically put in the last
/16 from the container CIDR.
Corresponds to the JSON property servicesIpv4Cidr
1241 1242 1243 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1241 def services_ipv4_cidr @services_ipv4_cidr end |
#shielded_nodes ⇒ Google::Apis::ContainerV1beta1::ShieldedNodes
Configuration of Shielded Nodes feature.
Corresponds to the JSON property shieldedNodes
1246 1247 1248 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1246 def shielded_nodes @shielded_nodes end |
#status ⇒ String
[Output only] The current status of this cluster.
Corresponds to the JSON property status
1251 1252 1253 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1251 def status @status end |
#status_message ⇒ String
[Output only] Deprecated. Use conditions instead. Additional information about
the current status of this cluster, if available.
Corresponds to the JSON property statusMessage
1257 1258 1259 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1257 def @status_message end |
#subnetwork ⇒ String
The name of the Google Compute Engine subnetwork to which the cluster is connected. On output this
shows the subnetwork ID instead of the name.
Corresponds to the JSON property subnetwork
1264 1265 1266 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1264 def subnetwork @subnetwork end |
#tpu_config ⇒ Google::Apis::ContainerV1beta1::TpuConfig
Configuration for Cloud TPU.
Corresponds to the JSON property tpuConfig
1269 1270 1271 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1269 def tpu_config @tpu_config end |
#tpu_ipv4_cidr_block ⇒ String
[Output only] The IP address range of the Cloud TPUs in this cluster, in CIDR notation (e.g.
1.2.3.4/29).
Corresponds to the JSON property tpuIpv4CidrBlock
1276 1277 1278 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1276 def tpu_ipv4_cidr_block @tpu_ipv4_cidr_block end |
#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 verticalPodAutoscaling
1283 1284 1285 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1283 def vertical_pod_autoscaling @vertical_pod_autoscaling end |
#workload_alts_config ⇒ Google::Apis::ContainerV1beta1::WorkloadAltsConfig
Configuration for direct-path (via ALTS) with workload identity.
Corresponds to the JSON property workloadAltsConfig
1288 1289 1290 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1288 def workload_alts_config @workload_alts_config end |
#workload_certificates ⇒ Google::Apis::ContainerV1beta1::WorkloadCertificates
Configuration for issuance of mTLS keys and certificates to Kubernetes pods.
Corresponds to the JSON property workloadCertificates
1293 1294 1295 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1293 def workload_certificates @workload_certificates end |
#workload_identity_config ⇒ Google::Apis::ContainerV1beta1::WorkloadIdentityConfig
Configuration for the use of Kubernetes Service Accounts in GCP IAM policies.
Corresponds to the JSON property workloadIdentityConfig
1298 1299 1300 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1298 def workload_identity_config @workload_identity_config end |
#zone ⇒ String
[Output only] The name of the Google Compute Engine zone in which the cluster resides. This
field is deprecated, use location instead.
Corresponds to the JSON property zone
1305 1306 1307 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1305 def zone @zone end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1312 def update!(**args) @addons_config = args[:addons_config] if args.key?(:addons_config) @authenticator_groups_config = args[:authenticator_groups_config] if args.key?(:authenticator_groups_config) @autopilot = args[:autopilot] if args.key?(:autopilot) @autoscaling = args[:autoscaling] if args.key?(:autoscaling) @binary_authorization = args[:binary_authorization] if args.key?(:binary_authorization) @cluster_ipv4_cidr = args[:cluster_ipv4_cidr] if args.key?(:cluster_ipv4_cidr) @cluster_telemetry = args[:cluster_telemetry] if args.key?(:cluster_telemetry) @conditions = args[:conditions] if args.key?(:conditions) @confidential_nodes = args[:confidential_nodes] if args.key?(:confidential_nodes) @cost_management_config = args[:cost_management_config] if args.key?(:cost_management_config) @create_time = args[:create_time] if args.key?(:create_time) @current_master_version = args[:current_master_version] if args.key?(:current_master_version) @current_node_count = args[:current_node_count] if args.key?(:current_node_count) @current_node_version = args[:current_node_version] if args.key?(:current_node_version) @database_encryption = args[:database_encryption] if args.key?(:database_encryption) @default_max_pods_constraint = args[:default_max_pods_constraint] if args.key?(:default_max_pods_constraint) @description = args[:description] if args.key?(:description) @enable_k8s_beta_apis = args[:enable_k8s_beta_apis] if args.key?(:enable_k8s_beta_apis) @enable_kubernetes_alpha = args[:enable_kubernetes_alpha] if args.key?(:enable_kubernetes_alpha) @enable_tpu = args[:enable_tpu] if args.key?(:enable_tpu) @endpoint = args[:endpoint] if args.key?(:endpoint) @etag = args[:etag] if args.key?(:etag) @expire_time = args[:expire_time] if args.key?(:expire_time) @fleet = args[:fleet] if args.key?(:fleet) @id = args[:id] if args.key?(:id) @identity_service_config = args[:identity_service_config] if args.key?(:identity_service_config) @initial_cluster_version = args[:initial_cluster_version] if args.key?(:initial_cluster_version) @initial_node_count = args[:initial_node_count] if args.key?(:initial_node_count) @instance_group_urls = args[:instance_group_urls] if args.key?(:instance_group_urls) @ip_allocation_policy = args[:ip_allocation_policy] if args.key?(:ip_allocation_policy) @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint) @legacy_abac = args[:legacy_abac] if args.key?(:legacy_abac) @location = args[:location] if args.key?(:location) @locations = args[:locations] if args.key?(:locations) @logging_config = args[:logging_config] if args.key?(:logging_config) @logging_service = args[:logging_service] if args.key?(:logging_service) @maintenance_policy = args[:maintenance_policy] if args.key?(:maintenance_policy) @master = args[:master] if args.key?(:master) @master_auth = args[:master_auth] if args.key?(:master_auth) @master_authorized_networks_config = args[:master_authorized_networks_config] if args.key?(:master_authorized_networks_config) @master_ipv4_cidr_block = args[:master_ipv4_cidr_block] if args.key?(:master_ipv4_cidr_block) @mesh_certificates = args[:mesh_certificates] if args.key?(:mesh_certificates) @monitoring_config = args[:monitoring_config] if args.key?(:monitoring_config) @monitoring_service = args[:monitoring_service] if args.key?(:monitoring_service) @name = args[:name] if args.key?(:name) @network = args[:network] if args.key?(:network) @network_config = args[:network_config] if args.key?(:network_config) @network_policy = args[:network_policy] if args.key?(:network_policy) @node_config = args[:node_config] if args.key?(:node_config) @node_ipv4_cidr_size = args[:node_ipv4_cidr_size] if args.key?(:node_ipv4_cidr_size) @node_pool_auto_config = args[:node_pool_auto_config] if args.key?(:node_pool_auto_config) @node_pool_defaults = args[:node_pool_defaults] if args.key?(:node_pool_defaults) @node_pools = args[:node_pools] if args.key?(:node_pools) @notification_config = args[:notification_config] if args.key?(:notification_config) @pod_security_policy_config = args[:pod_security_policy_config] if args.key?(:pod_security_policy_config) @private_cluster = args[:private_cluster] if args.key?(:private_cluster) @private_cluster_config = args[:private_cluster_config] if args.key?(:private_cluster_config) @protect_config = args[:protect_config] if args.key?(:protect_config) @release_channel = args[:release_channel] if args.key?(:release_channel) @resource_labels = args[:resource_labels] if args.key?(:resource_labels) @resource_usage_export_config = args[:resource_usage_export_config] if args.key?(:resource_usage_export_config) @security_posture_config = args[:security_posture_config] if args.key?(:security_posture_config) @self_link = args[:self_link] if args.key?(:self_link) @services_ipv4_cidr = args[:services_ipv4_cidr] if args.key?(:services_ipv4_cidr) @shielded_nodes = args[:shielded_nodes] if args.key?(:shielded_nodes) @status = args[:status] if args.key?(:status) @status_message = args[:status_message] if args.key?(:status_message) @subnetwork = args[:subnetwork] if args.key?(:subnetwork) @tpu_config = args[:tpu_config] if args.key?(:tpu_config) @tpu_ipv4_cidr_block = args[:tpu_ipv4_cidr_block] if args.key?(:tpu_ipv4_cidr_block) @vertical_pod_autoscaling = args[:vertical_pod_autoscaling] if args.key?(:vertical_pod_autoscaling) @workload_alts_config = args[:workload_alts_config] if args.key?(:workload_alts_config) @workload_certificates = args[:workload_certificates] if args.key?(:workload_certificates) @workload_identity_config = args[:workload_identity_config] if args.key?(:workload_identity_config) @zone = args[:zone] if args.key?(:zone) end |