docs: update generated docs (#981)
diff --git a/docs/dyn/container_v1.projects.locations.clusters.html b/docs/dyn/container_v1.projects.locations.clusters.html
index 0cb091d..b8d2c01 100644
--- a/docs/dyn/container_v1.projects.locations.clusters.html
+++ b/docs/dyn/container_v1.projects.locations.clusters.html
@@ -91,16 +91,16 @@
<code><a href="#create">create(parent, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Creates a cluster, consisting of the specified number and type of Google</p>
<p class="toc_element">
- <code><a href="#delete">delete(name, projectId=None, zone=None, clusterId=None, x__xgafv=None)</a></code></p>
+ <code><a href="#delete">delete(name, clusterId=None, projectId=None, zone=None, x__xgafv=None)</a></code></p>
<p class="firstline">Deletes the cluster, including the Kubernetes endpoint and all worker</p>
<p class="toc_element">
- <code><a href="#get">get(name, clusterId=None, projectId=None, zone=None, x__xgafv=None)</a></code></p>
+ <code><a href="#get">get(name, clusterId=None, zone=None, projectId=None, x__xgafv=None)</a></code></p>
<p class="firstline">Gets the details of a specific cluster.</p>
<p class="toc_element">
<code><a href="#getJwks">getJwks(parent, x__xgafv=None)</a></code></p>
<p class="firstline">Gets the public component of the cluster signing keys in</p>
<p class="toc_element">
- <code><a href="#list">list(parent, projectId=None, zone=None, x__xgafv=None)</a></code></p>
+ <code><a href="#list">list(parent, zone=None, projectId=None, x__xgafv=None)</a></code></p>
<p class="firstline">Lists all clusters owned by a project in either the specified zone or all</p>
<p class="toc_element">
<code><a href="#setAddons">setAddons(name, body=None, x__xgafv=None)</a></code></p>
@@ -150,10 +150,10 @@
The object takes the form of:
{ # CompleteIPRotationRequest moves the cluster master back into single-IP mode.
- "clusterId": "A String", # Deprecated. The name of the cluster.
- # This field has been deprecated and replaced by the name field.
"name": "A String", # The name (project, location, cluster id) of the cluster to complete IP
# rotation. Specified in the format `projects/*/locations/*/clusters/*`.
+ "clusterId": "A String", # Deprecated. The name of the cluster.
+ # This field has been deprecated and replaced by the name field.
"projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
# number](https://developers.google.com/console/help/new/#projectnumber).
# This field has been deprecated and replaced by the name field.
@@ -173,19 +173,9 @@
{ # This operation resource represents operations that may have happened or are
# happening on the cluster. All fields are output only.
- "clusterConditions": [ # Which conditions caused the current cluster state.
- { # StatusCondition describes why a cluster or a node pool has a certain status
- # (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
- "message": "A String", # Human-friendly representation of the condition
- },
- ],
"progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
"name": "A String", # A non-parameterized string describing an operation stage.
# Unset for single-stage operations.
- "stages": [ # Substages of an operation or a stage.
- # Object with schema name: OperationProgress
- ],
"metrics": [ # Progress metric bundle, for example:
# metrics: [{name: "nodes done", int_value: 15},
# {name: "nodes total", int_value: 32}]
@@ -193,41 +183,51 @@
# metrics: [{name: "progress", double_value: 0.56},
# {name: "progress scale", double_value: 1.0}]
{ # Progress metric is (string, int|float|string) pair.
- "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
+ "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
"doubleValue": 3.14, # For metrics with floating point value.
"intValue": "A String", # For metrics with integer value.
- "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
+ "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
},
],
"status": "A String", # Status of an operation stage.
# Unset for single-stage operations.
+ "stages": [ # Substages of an operation or a stage.
+ # Object with schema name: OperationProgress
+ ],
},
+ "targetLink": "A String", # Server-defined URL for the target of the operation.
+ "status": "A String", # The current status of the operation.
+ "operationType": "A String", # The operation type.
+ "startTime": "A String", # [Output only] The time the operation started, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "clusterConditions": [ # Which conditions caused the current cluster state.
+ { # StatusCondition describes why a cluster or a node pool has a certain status
+ # (e.g., ERROR or DEGRADED).
+ "message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
+ },
+ ],
"zone": "A String", # The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# operation is taking place. This field is deprecated, use location instead.
- "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
"selfLink": "A String", # Server-defined URL for the resource.
- "detail": "A String", # Detailed operation progress, if available.
- "targetLink": "A String", # Server-defined URL for the target of the operation.
- "operationType": "A String", # The operation type.
- "status": "A String", # The current status of the operation.
"name": "A String", # The server-assigned ID for the operation.
+ "detail": "A String", # Detailed operation progress, if available.
+ "endTime": "A String", # [Output only] The time the operation completed, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"nodepoolConditions": [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
"message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
},
],
- "endTime": "A String", # [Output only] The time the operation completed, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"location": "A String", # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
- "startTime": "A String", # [Output only] The time the operation started, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
}</pre>
</div>
@@ -255,237 +255,153 @@
The object takes the form of:
{ # CreateClusterRequest creates a cluster.
+ "zone": "A String", # Deprecated. The name of the Google Compute Engine
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ # cluster resides. This field has been deprecated and replaced by the parent
+ # field.
"parent": "A String", # The parent (project and location) where the cluster will be created.
# Specified in the format `projects/*/locations/*`.
"cluster": { # A Google Kubernetes Engine cluster. # Required. A [cluster
- # resource](https://cloud.google.com/container-engine/reference/rest/v1/projects.zones.clusters)
- "createTime": "A String", # [Output only] The time the cluster was created, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
- "clusterIpv4Cidr": "A String", # The IP address range of the container pods in this cluster, in
- # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
- # 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`.
- "autoscaling": { # ClusterAutoscaling contains global, per-cluster information # Cluster-level autoscaling configuration.
- # required by Cluster Autoscaler to automatically adjust
- # the size of the cluster and create/delete
- # node pools based on the current needs.
- "autoprovisioningLocations": [ # The list of Google Compute Engine
- # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
- # NodePool's nodes can be created by NAP.
- "A String",
- ],
- "resourceLimits": [ # Contains global constraints regarding minimum and maximum
- # amount of resources in the cluster.
- { # Contains information about amount of some resource in the cluster.
- # For memory, value should be in GB.
- "minimum": "A String", # Minimum amount of the resource in the cluster.
- "maximum": "A String", # Maximum amount of the resource in the cluster.
- "resourceType": "A String", # Resource name "cpu", "memory" or gpu-specific string.
- },
- ],
- "enableNodeAutoprovisioning": True or False, # Enables automatic node pool creation and deletion.
- "autoprovisioningNodePoolDefaults": { # AutoprovisioningNodePoolDefaults contains defaults for a node pool created # AutoprovisioningNodePoolDefaults contains defaults for a node pool
- # created by NAP.
- # by NAP.
- "management": { # NodeManagement defines the set of node management services turned on for the # Specifies the node management options for NAP created node-pools.
- # node pool.
- "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
- # the Auto Upgrades will proceed.
- "autoUpgradeStartTime": "A String", # [Output only] This field is set when upgrades are about to commence
- # with the approximate start time for the upgrades, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
- "description": "A String", # [Output only] This field is set when upgrades are about to commence
- # with the description of the upgrade.
- },
- "autoRepair": True or False, # A flag that specifies whether the node auto-repair is enabled for the node
- # pool. If enabled, the nodes in this node pool will be monitored and, if
- # they fail health checks too many times, an automatic repair action will be
- # triggered.
- "autoUpgrade": True or False, # A flag that specifies whether node auto-upgrade is enabled for the node
- # pool. If enabled, node auto-upgrade helps keep the nodes in your node pool
- # up to date with the latest release version of Kubernetes.
- },
- "oauthScopes": [ # Scopes that are used by NAP when creating node pools. If oauth_scopes are
- # specified, service_account should be empty.
- "A String",
- ],
- "upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Specifies the upgrade settings for NAP created node pools
- # disruption caused by an upgrade.
- #
- # maxUnavailable controls the number of nodes that can be simultaneously
- # unavailable.
- #
- # maxSurge controls the number of additional nodes that can be added to the
- # node pool temporarily for the time of the upgrade to increase the number of
- # available nodes.
- #
- # (maxUnavailable + maxSurge) determines the level of parallelism (how many
- # nodes are being upgraded at the same time).
- #
- # Note: upgrades inevitably introduce some disruption since workloads need to
- # be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
- # this holds true. (Disruption stays within the limits of
- # PodDisruptionBudget, if it is configured.)
- #
- # Consider a hypothetical node pool with 5 nodes having maxSurge=2,
- # maxUnavailable=1. This means the upgrade process upgrades 3 nodes
- # simultaneously. It creates 2 additional (upgraded) nodes, then it brings
- # down 3 old (not yet upgraded) nodes at the same time. This ensures that
- # there are always at least 4 nodes available.
- "maxUnavailable": 42, # The maximum number of nodes that can be simultaneously unavailable during
- # the upgrade process. A node is considered available if its status is
- # Ready.
- "maxSurge": 42, # The maximum number of nodes that can be created beyond the current size
- # of the node pool during the upgrade process.
- },
- "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs. If
- # service_account is specified, scopes should be empty.
- },
+ # resource](https://cloud.google.com/container-engine/reference/rest/v1/projects.locations.clusters)
+ "currentMasterVersion": "A String", # [Output only] The current software version of the master endpoint.
+ "currentNodeVersion": "A String", # [Output only] Deprecated, use
+ # [NodePools.version](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters.nodePools)
+ # 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.
+ "authenticatorGroupsConfig": { # Configuration for returning group information from authenticators. # Configuration controlling RBAC group membership information.
+ "securityGroup": "A String", # The name of the security group-of-groups to be used. Only relevant
+ # if enabled = true.
+ "enabled": True or False, # Whether this cluster should return group membership lookups
+ # during authentication using a group of security groups.
},
- "initialNodeCount": 42, # The number of nodes to create in this cluster. You must ensure that your
- # Compute Engine <a href="/compute/docs/resource-quotas">resource quota</a>
- # 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.
+ "enableKubernetesAlpha": True or False, # Kubernetes alpha features are enabled on this cluster. This includes alpha
+ # API groups (e.g. v1alpha1) 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.
+ "ipAllocationPolicy": { # Configuration for controlling how IPs are allocated in the cluster. # Configuration for cluster IP allocation.
+ "servicesSecondaryRangeName": "A String", # The name of the secondary range to be used as for the services
+ # CIDR block. The secondary range will be used for service
+ # ClusterIPs. This must be an existing secondary range associated
+ # with the cluster subnetwork.
+ #
+ # This field is only applicable with use_ip_aliases is true and
+ # create_subnetwork is false.
+ "subnetworkName": "A String", # A custom subnetwork name to be used if `create_subnetwork` is true. If
+ # this field is empty, then an automatic name will be chosen for the new
+ # subnetwork.
+ "nodeIpv4Cidr": "A String", # This field is deprecated, use node_ipv4_cidr_block.
+ "servicesIpv4CidrBlock": "A String", # The IP address range of the services IPs in this cluster. If blank, a range
+ # will be automatically chosen with the default size.
+ #
+ # This field is only applicable when `use_ip_aliases` is true.
+ #
+ # Set to blank to have a range chosen with the default size.
+ #
+ # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
+ # netmask.
+ #
+ # Set to a
+ # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
+ # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
+ # to use.
+ "servicesIpv4Cidr": "A String", # This field is deprecated, use services_ipv4_cidr_block.
+ "clusterSecondaryRangeName": "A String", # The name of the secondary range to be used for the cluster CIDR
+ # block. The secondary range will be used for pod IP
+ # addresses. This must be an existing secondary range associated
+ # with the cluster subnetwork.
+ #
+ # This field is only applicable with use_ip_aliases is true and
+ # create_subnetwork is false.
+ "tpuIpv4CidrBlock": "A String", # The IP address range of the Cloud TPUs in this cluster. If unspecified, a
+ # range will be automatically chosen with the default size.
+ #
+ # This field is only applicable when `use_ip_aliases` is true.
+ #
+ # If unspecified, the range will use the default size.
+ #
+ # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
+ # netmask.
+ #
+ # Set to a
+ # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
+ # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
+ # to use.
+ "nodeIpv4CidrBlock": "A String", # The IP address range of the instance IPs in this cluster.
+ #
+ # This is applicable only if `create_subnetwork` is true.
+ #
+ # Set to blank to have a range chosen with the default size.
+ #
+ # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
+ # netmask.
+ #
+ # Set to a
+ # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
+ # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
+ # to use.
+ "useIpAliases": True or False, # Whether alias IPs will be used for pod IPs in the cluster.
+ "createSubnetwork": True or False, # Whether a new subnetwork will be created automatically for the cluster.
+ #
+ # This field is only applicable when `use_ip_aliases` is true.
+ "clusterIpv4CidrBlock": "A String", # The IP address range for the cluster pod IPs. If this field is set, then
+ # `cluster.cluster_ipv4_cidr` must be left blank.
+ #
+ # This field is only applicable when `use_ip_aliases` is true.
+ #
+ # Set to blank to have a range chosen with the default size.
+ #
+ # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
+ # netmask.
+ #
+ # Set to a
+ # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
+ # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
+ # to use.
+ "clusterIpv4Cidr": "A String", # This field is deprecated, use cluster_ipv4_cidr_block.
+ },
+ "loggingService": "A String", # The logging service the cluster should use to write logs.
+ # Currently available options:
#
- # This field is deprecated, use node_pool.initial_node_count instead.
- "instanceGroupUrls": [ # Deprecated. Use node_pools.instance_group_urls.
- "A String",
- ],
- "privateClusterConfig": { # Configuration options for private clusters. # Configuration for private cluster.
- "masterIpv4CidrBlock": "A String", # The IP range in CIDR notation to use for the hosted master network. This
- # range will be used for assigning internal IP addresses to the master or
- # set of masters, as well as the ILB VIP. This range must not overlap with
- # any other ranges in use within the cluster's network.
- "enablePrivateNodes": True or False, # Whether nodes have internal IP addresses only. If enabled, all nodes are
- # given only RFC 1918 private addresses and communicate with the master via
- # private networking.
- "privateEndpoint": "A String", # Output only. The internal IP address of this cluster's master endpoint.
- "enablePrivateEndpoint": True or False, # Whether the master's internal IP address is used as the cluster endpoint.
- "peeringName": "A String", # Output only. The peering name in the customer VPC used by this cluster.
- "publicEndpoint": "A String", # Output only. The external IP address of this cluster's master endpoint.
+ # * `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.
+ "zone": "A String", # [Output only] The name of the Google Compute Engine
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ # cluster resides. This field is deprecated, use location instead.
+ "legacyAbac": { # Configuration for the legacy Attribute Based Access Control authorization # Configuration for the legacy ABAC authorization mode.
+ # mode.
+ "enabled": True or False, # 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.
},
- "shieldedNodes": { # Configuration of Shielded Nodes feature. # Shielded Nodes configuration.
- "enabled": True or False, # Whether Shielded Nodes features are enabled on all nodes in this cluster.
+ "resourceLabels": { # The resource labels for the cluster to use to annotate any related
+ # Google Compute Engine resources.
+ "a_key": "A String",
},
- "verticalPodAutoscaling": { # VerticalPodAutoscaling contains global, per-cluster information # Cluster-level Vertical Pod Autoscaling configuration.
- # required by Vertical Pod Autoscaler to automatically adjust
- # the resources of pods controlled by it.
- "enabled": True or False, # Enables vertical pod autoscaling.
- },
- "defaultMaxPodsConstraint": { # Constraints applied to pods. # The default constraint on the maximum number of pods that can be run
- # simultaneously on a node in the node pool of this cluster. Only honored
- # if cluster created with IP Alias support.
- "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
- },
- "network": "A String", # The name of the Google Compute Engine
- # [network](https://cloud.google.com/compute/docs/networks-and-firewalls#networks)
- # to which the cluster is connected. If left unspecified, the `default`
- # network will be used.
- "labelFingerprint": "A String", # The fingerprint of the set of labels for this cluster.
"nodeIpv4CidrSize": 42, # [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.
- "masterAuthorizedNetworksConfig": { # Configuration options for the master authorized networks feature. Enabled # The configuration options for master authorized networks feature.
- # 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.
- "cidrBlocks": [ # cidr_blocks define up to 50 external networks that could access
- # Kubernetes master through HTTPS.
- { # CidrBlock contains an optional name and one CIDR block.
- "displayName": "A String", # display_name is an optional field for users to identify CIDR blocks.
- "cidrBlock": "A String", # cidr_block must be specified in CIDR notation.
- },
- ],
- "enabled": True or False, # Whether or not master authorized networks is enabled.
- },
- "statusMessage": "A String", # [Output only] Additional information about the current status of this
- # cluster, if available.
- "masterAuth": { # The authentication information for accessing the master endpoint. # The authentication information for accessing the master endpoint.
- # If unspecified, the defaults are used:
- # For clusters before v1.12, if master_auth is unspecified, `username` will
- # be set to "admin", a random password will be generated, and a client
- # certificate will be issued.
- # Authentication can be done using HTTP basic auth or using client
- # certificates.
- "password": "A String", # The password to use for HTTP basic authentication to the master endpoint.
- # Because the master endpoint is open to the Internet, you should create a
- # strong password. If a password is provided for cluster creation, username
- # must be non-empty.
- "clientCertificateConfig": { # Configuration for client certificates on the cluster. # Configuration for client certificate authentication on the cluster. For
- # clusters before v1.12, if no configuration is specified, a client
- # certificate is issued.
- "issueClientCertificate": True or False, # Issue a client certificate.
- },
- "clientKey": "A String", # [Output only] Base64-encoded private key used by clients to authenticate
- # to the cluster endpoint.
- "clusterCaCertificate": "A String", # [Output only] Base64-encoded public certificate that is the root of
- # trust for the cluster.
- "clientCertificate": "A String", # [Output only] Base64-encoded public certificate used by clients to
- # authenticate to the cluster endpoint.
- "username": "A String", # The username to use for HTTP basic authentication to the master endpoint.
- # For clusters v1.6.0 and later, basic authentication can be disabled by
- # leaving username unspecified (or setting it to the empty string).
- },
- "authenticatorGroupsConfig": { # Configuration for returning group information from authenticators. # Configuration controlling RBAC group membership information.
- "enabled": True or False, # Whether this cluster should return group membership lookups
- # during authentication using a group of security groups.
- "securityGroup": "A String", # The name of the security group-of-groups to be used. Only relevant
- # if enabled = true.
- },
- "currentMasterVersion": "A String", # [Output only] The current software version of the master endpoint.
- "addonsConfig": { # Configuration for the addons that can be automatically spun up in the # Configurations for the various addons available to run in the cluster.
- # cluster, enabling additional functionality.
- "networkPolicyConfig": { # Configuration for NetworkPolicy. This only tracks whether the addon # Configuration for NetworkPolicy. This only tracks whether the addon
- # is enabled or not on the Master, it does not track whether network policy
- # is enabled for the nodes.
- # is enabled or not on the Master, it does not track whether network policy
- # is enabled for the nodes.
- "disabled": True or False, # Whether NetworkPolicy is enabled for this cluster.
- },
- "cloudRunConfig": { # Configuration options for the Cloud Run feature. # Configuration for the Cloud Run addon, which allows the user to use a
- # managed Knative service.
- "disabled": True or False, # Whether Cloud Run addon is enabled for this cluster.
- },
- "horizontalPodAutoscaling": { # Configuration options for the horizontal pod autoscaling feature, which # Configuration for the horizontal pod autoscaling feature, which
- # increases or decreases the number of replica pods a replication controller
- # has based on the resource usage of the existing pods.
- # increases or decreases the number of replica pods a replication controller
- # has based on the resource usage of the existing pods.
- "disabled": True or False, # Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.
- # When enabled, it ensures that metrics are collected into Stackdriver
- # Monitoring.
- },
- "httpLoadBalancing": { # Configuration options for the HTTP (L7) load balancing controller addon, # Configuration for the HTTP (L7) load balancing controller addon, which
- # makes it easy to set up HTTP load balancers for services in a cluster.
- # which makes it easy to set up HTTP load balancers for services in a cluster.
- "disabled": True or False, # Whether the HTTP Load Balancing controller is enabled in the cluster.
- # When enabled, it runs a small pod in the cluster that manages the load
- # balancers.
- },
- "kubernetesDashboard": { # Configuration for the Kubernetes Dashboard. # Configuration for the Kubernetes Dashboard.
- # This addon is deprecated, and will be disabled in 1.15. It is recommended
- # to use the Cloud Console to manage and monitor your Kubernetes clusters,
- # workloads and applications. For more information, see:
- # https://cloud.google.com/kubernetes-engine/docs/concepts/dashboards
- "disabled": True or False, # Whether the Kubernetes Dashboard is enabled for this cluster.
- },
- },
- "currentNodeVersion": "A String", # [Output only] Deprecated, use
- # [NodePools.version](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.zones.clusters.nodePools)
- # 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.
- "subnetwork": "A String", # The name of the Google Compute Engine
- # [subnetwork](https://cloud.google.com/compute/docs/subnetworks) to which
- # the cluster is connected.
- "resourceLabels": { # The resource labels for the cluster to use to annotate any related
- # Google Compute Engine resources.
- "a_key": "A String",
+ "releaseChannel": { # ReleaseChannel indicates which release channel a cluster is # Release channel configuration.
+ # 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.
+ "channel": "A String", # channel specifies which release channel the cluster is subscribed to.
},
"maintenancePolicy": { # MaintenancePolicy defines the maintenance policy to be used for the cluster. # Configure the maintenance policy for this cluster.
"window": { # MaintenanceWindow defines the maintenance window to be used for the cluster. # Specifies the maintenance window in which maintenance may be performed.
@@ -497,6 +413,15 @@
"startTime": "A String", # The time that the window first starts.
},
},
+ "dailyMaintenanceWindow": { # Time window specified for daily maintenance operations. # DailyMaintenanceWindow specifies a daily maintenance operation window.
+ "duration": "A String", # [Output only] Duration of the time window, automatically chosen to be
+ # smallest possible in the given scenario.
+ # Duration will be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
+ # format "PTnHnMnS".
+ "startTime": "A String", # Time within the maintenance window to start the maintenance operations.
+ # Time format should be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
+ # format "HH:MM", where HH : [00-23] and MM : [00-59] GMT.
+ },
"recurringWindow": { # Represents an arbitrary window of time that recurs. # RecurringWindow specifies some number of recurring time periods for
# maintenance to occur. The time windows may be overlapping. If no
# maintenance windows are set, maintenance can occur at any time.
@@ -533,15 +458,6 @@
# to specify duration of the window and when it first starts.
# The FREQ values of HOURLY, MINUTELY, and SECONDLY are not supported.
},
- "dailyMaintenanceWindow": { # Time window specified for daily maintenance operations. # DailyMaintenanceWindow specifies a daily maintenance operation window.
- "startTime": "A String", # Time within the maintenance window to start the maintenance operations.
- # Time format should be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
- # format "HH:MM", where HH : [00-23] and MM : [00-59] GMT.
- "duration": "A String", # [Output only] Duration of the time window, automatically chosen to be
- # smallest possible in the given scenario.
- # Duration will be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
- # format "PTnHnMnS".
- },
},
"resourceVersion": "A String", # A hash identifying the version of this policy, so that updates to fields of
# the policy won't accidentally undo intermediate changes (and so that users
@@ -549,157 +465,96 @@
# Make a <code>get()</code> request to the cluster to get the current
# resource version and include it with requests to set the policy.
},
- "initialClusterVersion": "A 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.
+ "monitoringService": "A String", # The monitoring service the cluster should use to write metrics.
+ # Currently available options:
#
- # Users may specify either explicit versions offered by
- # Kubernetes Engine or version aliases, which have the following behavior:
+ # * "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.
#
- # - "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
- "ipAllocationPolicy": { # Configuration for controlling how IPs are allocated in the cluster. # Configuration for cluster IP allocation.
- "nodeIpv4Cidr": "A String", # This field is deprecated, use node_ipv4_cidr_block.
- "clusterSecondaryRangeName": "A String", # The name of the secondary range to be used for the cluster CIDR
- # block. The secondary range will be used for pod IP
- # addresses. This must be an existing secondary range associated
- # with the cluster subnetwork.
- #
- # This field is only applicable with use_ip_aliases is true and
- # create_subnetwork is false.
- "clusterIpv4CidrBlock": "A String", # The IP address range for the cluster pod IPs. If this field is set, then
- # `cluster.cluster_ipv4_cidr` must be left blank.
- #
- # This field is only applicable when `use_ip_aliases` is true.
- #
- # Set to blank to have a range chosen with the default size.
- #
- # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
- # netmask.
- #
- # Set to a
- # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
- # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
- # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
- # to use.
- "nodeIpv4CidrBlock": "A String", # The IP address range of the instance IPs in this cluster.
- #
- # This is applicable only if `create_subnetwork` is true.
- #
- # Set to blank to have a range chosen with the default size.
- #
- # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
- # netmask.
- #
- # Set to a
- # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
- # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
- # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
- # to use.
- "tpuIpv4CidrBlock": "A String", # The IP address range of the Cloud TPUs in this cluster. If unspecified, a
- # range will be automatically chosen with the default size.
- #
- # This field is only applicable when `use_ip_aliases` is true.
- #
- # If unspecified, the range will use the default size.
- #
- # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
- # netmask.
- #
- # Set to a
- # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
- # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
- # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
- # to use.
- "useIpAliases": True or False, # Whether alias IPs will be used for pod IPs in the cluster.
- "servicesSecondaryRangeName": "A String", # The name of the secondary range to be used as for the services
- # CIDR block. The secondary range will be used for service
- # ClusterIPs. This must be an existing secondary range associated
- # with the cluster subnetwork.
- #
- # This field is only applicable with use_ip_aliases is true and
- # create_subnetwork is false.
- "createSubnetwork": True or False, # Whether a new subnetwork will be created automatically for the cluster.
- #
- # This field is only applicable when `use_ip_aliases` is true.
- "subnetworkName": "A String", # A custom subnetwork name to be used if `create_subnetwork` is true. If
- # this field is empty, then an automatic name will be chosen for the new
- # subnetwork.
- "clusterIpv4Cidr": "A String", # This field is deprecated, use cluster_ipv4_cidr_block.
- "servicesIpv4Cidr": "A String", # This field is deprecated, use services_ipv4_cidr_block.
- "servicesIpv4CidrBlock": "A String", # The IP address range of the services IPs in this cluster. If blank, a range
- # will be automatically chosen with the default size.
- #
- # This field is only applicable when `use_ip_aliases` is true.
- #
- # Set to blank to have a range chosen with the default size.
- #
- # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
- # netmask.
- #
- # Set to a
- # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
- # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
- # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
- # to use.
+ # If left as an empty string,`monitoring.googleapis.com/kubernetes` will be
+ # used for GKE 1.14+ or `monitoring.googleapis.com` for earlier versions.
+ "binaryAuthorization": { # Configuration for Binary Authorization. # Configuration for Binary Authorization.
+ "enabled": True or False, # Enable Binary Authorization for this cluster. If enabled, all container
+ # images will be validated by Binary Authorization.
},
- "legacyAbac": { # Configuration for the legacy Attribute Based Access Control authorization # Configuration for the legacy ABAC authorization mode.
- # mode.
- "enabled": True or False, # 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.
- },
- "resourceUsageExportConfig": { # Configuration for exporting cluster resource usages. # Configuration for exporting resource usages. Resource usage export is
- # disabled when this config is unspecified.
- "enableNetworkEgressMetering": True or False, # Whether to enable network egress metering for this cluster. If enabled, a
- # daemonset will be created in the cluster to meter network egress traffic.
- "consumptionMeteringConfig": { # Parameters for controlling consumption metering. # Configuration to enable resource consumption metering.
- "enabled": True or False, # Whether to enable consumption metering for this cluster. If enabled, a
- # second BigQuery table will be created to hold resource consumption
- # records.
- },
- "bigqueryDestination": { # Parameters for using BigQuery as the destination of resource usage export. # Configuration to use BigQuery as usage export destination.
- "datasetId": "A String", # The ID of a BigQuery Dataset.
- },
- },
- "enableTpu": True or False, # Enable the ability to use Cloud TPUs in this cluster.
- "locations": [ # The list of Google Compute Engine
- # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
- # cluster's nodes should be located.
+ "expireTime": "A String", # [Output only] The time the cluster will be automatically
+ # deleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "instanceGroupUrls": [ # Deprecated. Use node_pools.instance_group_urls.
"A String",
],
- "nodePools": [ # The node pools associated with this cluster.
- # This field should not be set if "node_config" or "initial_node_count" are
- # specified.
- { # NodePool contains the name and configuration for a cluster's node pool.
- # Node pools are a set of nodes (i.e. VM's), with a common configuration and
- # specification, under the control of the cluster master. They may have a set
- # of Kubernetes labels applied to them, which may be used to reference them
- # during pod scheduling. They may also be resized up or down, to accommodate
- # the workload.
- "statusMessage": "A String", # [Output only] Additional information about the current status of this
- # node pool instance, if available.
- "autoscaling": { # NodePoolAutoscaling contains information required by cluster autoscaler to # Autoscaler configuration for this NodePool. Autoscaler is enabled
- # only if a valid configuration is present.
- # adjust the size of the node pool to the current cluster usage.
- "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be >= min_node_count. There
- # has to enough quota to scale up the cluster.
- "autoprovisioned": True or False, # Can this node pool be deleted automatically.
- "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be >= 1 and <=
- # max_node_count.
- "enabled": True or False, # Is autoscaling enabled for this node pool.
+ "endpoint": "A 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.
+ "shieldedNodes": { # Configuration of Shielded Nodes feature. # Shielded Nodes configuration.
+ "enabled": True or False, # Whether Shielded Nodes features are enabled on all nodes in this cluster.
+ },
+ "masterAuthorizedNetworksConfig": { # Configuration options for the master authorized networks feature. Enabled # The configuration options for master authorized networks feature.
+ # 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.
+ "enabled": True or False, # Whether or not master authorized networks is enabled.
+ "cidrBlocks": [ # cidr_blocks define up to 50 external networks that could access
+ # Kubernetes master through HTTPS.
+ { # CidrBlock contains an optional name and one CIDR block.
+ "displayName": "A String", # display_name is an optional field for users to identify CIDR blocks.
+ "cidrBlock": "A String", # cidr_block must be specified in CIDR notation.
},
- "initialNodeCount": 42, # The initial node count for the pool. You must ensure that your
- # Compute Engine <a href="/compute/docs/resource-quotas">resource quota</a>
- # is sufficient for this number of instances. You must also have available
- # firewall and routes quota.
- "selfLink": "A String", # [Output only] Server-defined URL for the resource.
- "upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Upgrade settings control disruption and speed of the upgrade.
+ ],
+ },
+ "conditions": [ # Which conditions caused the current cluster state.
+ { # StatusCondition describes why a cluster or a node pool has a certain status
+ # (e.g., ERROR or DEGRADED).
+ "message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
+ },
+ ],
+ "network": "A String", # The name of the Google Compute Engine
+ # [network](https://cloud.google.com/compute/docs/networks-and-firewalls#networks)
+ # to which the cluster is connected. If left unspecified, the `default`
+ # network will be used.
+ "status": "A String", # [Output only] The current status of this cluster.
+ "autoscaling": { # ClusterAutoscaling contains global, per-cluster information # Cluster-level autoscaling configuration.
+ # required by Cluster Autoscaler to automatically adjust
+ # the size of the cluster and create/delete
+ # node pools based on the current needs.
+ "resourceLimits": [ # Contains global constraints regarding minimum and maximum
+ # amount of resources in the cluster.
+ { # Contains information about amount of some resource in the cluster.
+ # For memory, value should be in GB.
+ "minimum": "A String", # Minimum amount of the resource in the cluster.
+ "resourceType": "A String", # Resource name "cpu", "memory" or gpu-specific string.
+ "maximum": "A String", # Maximum amount of the resource in the cluster.
+ },
+ ],
+ "autoprovisioningNodePoolDefaults": { # AutoprovisioningNodePoolDefaults contains defaults for a node pool created # AutoprovisioningNodePoolDefaults contains defaults for a node pool
+ # created by NAP.
+ # by NAP.
+ "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs.
+ "management": { # NodeManagement defines the set of node management services turned on for the # Specifies the node management options for NAP created node-pools.
+ # node pool.
+ "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
+ # the Auto Upgrades will proceed.
+ "description": "A String", # [Output only] This field is set when upgrades are about to commence
+ # with the description of the upgrade.
+ "autoUpgradeStartTime": "A String", # [Output only] This field is set when upgrades are about to commence
+ # with the approximate start time for the upgrades, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ },
+ "autoRepair": True or False, # A flag that specifies whether the node auto-repair is enabled for the node
+ # pool. If enabled, the nodes in this node pool will be monitored and, if
+ # they fail health checks too many times, an automatic repair action will be
+ # triggered.
+ "autoUpgrade": True or False, # A flag that specifies whether node auto-upgrade is enabled for the node
+ # pool. If enabled, node auto-upgrade helps keep the nodes in your node pool
+ # up to date with the latest release version of Kubernetes.
+ },
+ "upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Specifies the upgrade settings for NAP created node pools
# disruption caused by an upgrade.
#
# maxUnavailable controls the number of nodes that can be simultaneously
@@ -728,284 +583,32 @@
"maxSurge": 42, # The maximum number of nodes that can be created beyond the current size
# of the node pool during the upgrade process.
},
- "locations": [ # The list of Google Compute Engine
- # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
- # NodePool's nodes should be located.
+ "oauthScopes": [ # Scopes that are used by NAP when creating node pools.
"A String",
],
- "instanceGroupUrls": [ # [Output only] The resource URLs of the [managed instance
- # groups](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances)
- # associated with this node pool.
- "A String",
- ],
- "version": "A String", # The version of the Kubernetes of this node.
- "podIpv4CidrSize": 42, # [Output only] The pod CIDR block size per node in this node pool.
- "conditions": [ # Which conditions caused the current node pool state.
- { # StatusCondition describes why a cluster or a node pool has a certain status
- # (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
- "message": "A String", # Human-friendly representation of the condition
- },
- ],
- "status": "A String", # [Output only] The status of the nodes in this pool instance.
- "config": { # Parameters that describe the nodes in a cluster. # The node configuration of the pool.
- "oauthScopes": [ # The set of Google API scopes to be made available on all of the
- # node VMs under the "default" service account.
- #
- # The following scopes are recommended, but not required, and by default are
- # not included:
- #
- # * `https://www.googleapis.com/auth/compute` is required for mounting
- # persistent storage on your nodes.
- # * `https://www.googleapis.com/auth/devstorage.read_only` is required for
- # communicating with **gcr.io**
- # (the [Google Container
- # Registry](https://cloud.google.com/container-registry/)).
- #
- # If unspecified, no scopes are added, unless Cloud Logging or Cloud
- # Monitoring are enabled, in which case their required scopes will be added.
- "A String",
- ],
- "taints": [ # List of kubernetes taints to be applied to each node.
- #
- # For more information, including usage and the valid values, see:
- # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
- { # Kubernetes taint is comprised of three fields: key, value, and effect. Effect
- # can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute.
- #
- # See
- # [here](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration)
- # for more information, including usage and the valid values.
- "effect": "A String", # Effect for taint.
- "value": "A String", # Value for taint.
- "key": "A String", # Key for taint.
- },
- ],
- "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
- # These will added in addition to any default label(s) that
- # Kubernetes may apply to the node.
- # In case of conflict in label keys, the applied set may differ depending on
- # the Kubernetes version -- it's best to assume the behavior is undefined
- # and conflicts should be avoided.
- # For more information, including usage and the valid values, see:
- # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
- "a_key": "A String",
- },
- "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
- # The smallest allowed disk size is 10GB.
- #
- # If unspecified, the default disk size is 100GB.
- "workloadMetadataConfig": { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
- # workloads on the node pool.
- "mode": "A String", # Mode is the configuration for how to expose metadata to workloads running
- # on the node pool.
- },
- "accelerators": [ # A list of hardware accelerators to be attached to each node.
- # See https://cloud.google.com/compute/docs/gpus for more information about
- # support for GPUs.
- { # AcceleratorConfig represents a Hardware Accelerator request.
- "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
- # [here](https://cloud.google.com/compute/docs/gpus)
- "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
- },
- ],
- "machineType": "A String", # The name of a Google Compute Engine [machine
- # type](https://cloud.google.com/compute/docs/machine-types) (e.g.
- # `n1-standard-1`).
- #
- # If unspecified, the default machine type is
- # `n1-standard-1`.
- "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
- #
- # If unspecified, the default disk type is 'pd-standard'
- "shieldedInstanceConfig": { # A set of Shielded Instance options. # Shielded Instance options.
- "enableIntegrityMonitoring": True or False, # Defines whether the instance has integrity monitoring enabled.
- #
- # Enables monitoring and attestation of the boot integrity of the instance.
- # The attestation is performed against the integrity policy baseline. This
- # baseline is initially derived from the implicitly trusted boot image when
- # the instance is created.
- "enableSecureBoot": True or False, # Defines whether the instance has Secure Boot enabled.
- #
- # Secure Boot helps ensure that the system only runs authentic software by
- # verifying the digital signature of all boot components, and halting the
- # boot process if signature verification fails.
- },
- "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
- # scheduled on the specified or newer CPU platform. Applicable values are the
- # friendly names of CPU platforms, such as
- # <code>minCpuPlatform: &quot;Intel Haswell&quot;</code> or
- # <code>minCpuPlatform: &quot;Intel Sandy Bridge&quot;</code>. For more
- # information, read [how to specify min CPU
- # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
- "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
- # https://cloud.google.com/compute/docs/instances/preemptible for more
- # information about preemptible VM instances.
- "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
- #
- # The limit for this value is dependent upon the maximum number of
- # disks available on a machine per zone. See:
- # https://cloud.google.com/compute/docs/disks/local-ssd
- # for more information.
- "sandboxConfig": { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
- "type": "A String", # Type of the sandbox to use for the node.
- },
- "metadata": { # The metadata key/value pairs assigned to instances in the cluster.
- #
- # Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
- # in length. These are reflected as part of a URL in the metadata server.
- # Additionally, to avoid ambiguity, keys must not conflict with any other
- # metadata keys for the project or be one of the reserved keys:
- # "cluster-location"
- # "cluster-name"
- # "cluster-uid"
- # "configure-sh"
- # "containerd-configure-sh"
- # "enable-os-login"
- # "gci-ensure-gke-docker"
- # "gci-metrics-enabled"
- # "gci-update-strategy"
- # "instance-template"
- # "kube-env"
- # "startup-script"
- # "user-data"
- # "disable-address-manager"
- # "windows-startup-script-ps1"
- # "common-psm1"
- # "k8s-node-setup-psm1"
- # "install-ssh-psm1"
- # "user-profile-psm1"
- # "serial-port-logging-enable"
- #
- # Values are free-form strings, and only have meaning as interpreted by
- # the image running in the instance. The only restriction placed on them is
- # that each value's size must be less than or equal to 32 KB.
- #
- # The total size of all keys and values must be less than 512 KB.
- "a_key": "A String",
- },
- "reservationAffinity": { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
- # the specified [Zonal Compute
- # Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
- # to this node pool.
- # is the configuration of desired reservation which instances could take
- # capacity from.
- "values": [ # Corresponds to the label value(s) of reservation resource(s).
- "A String",
- ],
- "consumeReservationType": "A String", # Corresponds to the type of reservation consumption.
- "key": "A String", # Corresponds to the label key of a reservation resource. To target a
- # SPECIFIC_RESERVATION by name, specify "googleapis.com/reservation-name" as
- # the key and specify the name of your reservation as its value.
- },
- "tags": [ # The list of instance tags applied to all nodes. Tags are used to identify
- # valid sources or targets for network firewalls and are specified by
- # the client during cluster or node pool creation. Each tag within the list
- # must comply with RFC1035.
- "A String",
- ],
- "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs.
- # Specify the email address of the Service Account; otherwise, if no Service
- # Account is specified, the "default" service account is used.
- "imageType": "A String", # The image type to use for this node. Note that for a given image type,
- # the latest version of it will be used.
- },
- "maxPodsConstraint": { # Constraints applied to pods. # The constraint on the maximum number of pods that can be run
- # simultaneously on a node in the node pool.
- "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
- },
- "name": "A String", # The name of the node pool.
- "management": { # NodeManagement defines the set of node management services turned on for the # NodeManagement configuration for this NodePool.
- # node pool.
- "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
- # the Auto Upgrades will proceed.
- "autoUpgradeStartTime": "A String", # [Output only] This field is set when upgrades are about to commence
- # with the approximate start time for the upgrades, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
- "description": "A String", # [Output only] This field is set when upgrades are about to commence
- # with the description of the upgrade.
- },
- "autoRepair": True or False, # A flag that specifies whether the node auto-repair is enabled for the node
- # pool. If enabled, the nodes in this node pool will be monitored and, if
- # they fail health checks too many times, an automatic repair action will be
- # triggered.
- "autoUpgrade": True or False, # A flag that specifies whether node auto-upgrade is enabled for the node
- # pool. If enabled, node auto-upgrade helps keep the nodes in your node pool
- # up to date with the latest release version of Kubernetes.
- },
},
- ],
- "selfLink": "A String", # [Output only] Server-defined URL for the resource.
+ "enableNodeAutoprovisioning": True or False, # Enables automatic node pool creation and deletion.
+ "autoprovisioningLocations": [ # The list of Google Compute Engine
+ # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
+ # NodePool's nodes can be created by NAP.
+ "A String",
+ ],
+ },
+ "labelFingerprint": "A String", # The fingerprint of the set of labels for this cluster.
"networkPolicy": { # Configuration options for the NetworkPolicy feature. # Configuration options for the NetworkPolicy feature.
# https://kubernetes.io/docs/concepts/services-networking/networkpolicies/
- "provider": "A String", # The selected network policy provider.
"enabled": True or False, # Whether network policy is enabled on the cluster.
+ "provider": "A String", # The selected network policy provider.
},
- "servicesIpv4Cidr": "A String", # [Output only] The IP address range of the Kubernetes services in
- # this cluster, in
+ "clusterIpv4Cidr": "A String", # The IP address range of the container pods in this cluster, in
# [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
- # notation (e.g. `1.2.3.4/29`). Service addresses are
- # typically put in the last `/16` from the container CIDR.
- "enableKubernetesAlpha": True or False, # Kubernetes alpha features are enabled on this cluster. This includes alpha
- # API groups (e.g. v1alpha1) 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.
- "description": "A String", # An optional description of this cluster.
- "conditions": [ # Which conditions caused the current cluster state.
- { # StatusCondition describes why a cluster or a node pool has a certain status
- # (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
- "message": "A String", # Human-friendly representation of the condition
- },
- ],
- "currentNodeCount": 42, # [Output only] The number of nodes currently in the cluster. Deprecated.
- # Call Kubernetes API directly to retrieve node information.
- "monitoringService": "A 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.
- "databaseEncryption": { # Configuration of etcd encryption. # Configuration of etcd encryption.
- "keyName": "A String", # Name of CloudKMS key to use for the encryption of secrets in etcd.
- # Ex. projects/my-project/locations/global/keyRings/my-ring/cryptoKeys/my-key
- "state": "A String", # Denotes the state of etcd encryption.
+ # 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`.
+ "defaultMaxPodsConstraint": { # Constraints applied to pods. # The default constraint on the maximum number of pods that can be run
+ # simultaneously on a node in the node pool of this cluster. Only honored
+ # if cluster created with IP Alias support.
+ "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
},
- "binaryAuthorization": { # Configuration for Binary Authorization. # Configuration for Binary Authorization.
- "enabled": True or False, # Enable Binary Authorization for this cluster. If enabled, all container
- # images will be validated by Binary Authorization.
- },
- "tpuIpv4CidrBlock": "A String", # [Output only] The IP address range of the Cloud TPUs in this cluster, in
- # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
- # notation (e.g. `1.2.3.4/29`).
- "workloadIdentityConfig": { # Configuration for the use of Kubernetes Service Accounts in GCP IAM # Configuration for the use of Kubernetes Service Accounts in GCP IAM
- # policies.
- # policies.
- "workloadPool": "A String", # The workload pool to attach all Kubernetes service accounts to.
- },
- "zone": "A String", # [Output only] The name of the Google Compute Engine
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
- # cluster resides. This field is deprecated, use location instead.
- "expireTime": "A String", # [Output only] The time the cluster will be automatically
- # deleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
- "loggingService": "A 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.
"nodeConfig": { # Parameters that describe the nodes in a cluster. # Parameters used in creating the cluster's nodes.
# For requests, this field should only be used in lieu of a
# "node_pool" object, since this configuration (along with the
@@ -1017,6 +620,39 @@
#
# If unspecified, the defaults are used.
# This field is deprecated, use node_pool.config instead.
+ "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
+ #
+ # If unspecified, the default disk type is 'pd-standard'
+ "bootDiskKmsKey": "A String", #
+ # The Customer Managed Encryption Key used to encrypt the boot disk attached
+ # to each node in the node pool. This should be of the form
+ # projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME].
+ # For more information about protecting resources with Cloud KMS Keys please
+ # see:
+ # https://cloud.google.com/compute/docs/disks/customer-managed-encryption
+ "shieldedInstanceConfig": { # A set of Shielded Instance options. # Shielded Instance options.
+ "enableIntegrityMonitoring": True or False, # Defines whether the instance has integrity monitoring enabled.
+ #
+ # Enables monitoring and attestation of the boot integrity of the instance.
+ # The attestation is performed against the integrity policy baseline. This
+ # baseline is initially derived from the implicitly trusted boot image when
+ # the instance is created.
+ "enableSecureBoot": True or False, # Defines whether the instance has Secure Boot enabled.
+ #
+ # Secure Boot helps ensure that the system only runs authentic software by
+ # verifying the digital signature of all boot components, and halting the
+ # boot process if signature verification fails.
+ },
+ "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
+ # These will added in addition to any default label(s) that
+ # Kubernetes may apply to the node.
+ # In case of conflict in label keys, the applied set may differ depending on
+ # the Kubernetes version -- it's best to assume the behavior is undefined
+ # and conflicts should be avoided.
+ # For more information, including usage and the valid values, see:
+ # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
+ "a_key": "A String",
+ },
"oauthScopes": [ # The set of Google API scopes to be made available on all of the
# node VMs under the "default" service account.
#
@@ -1034,6 +670,19 @@
# Monitoring are enabled, in which case their required scopes will be added.
"A String",
],
+ "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
+ # scheduled on the specified or newer CPU platform. Applicable values are the
+ # friendly names of CPU platforms, such as
+ # <code>minCpuPlatform: &quot;Intel Haswell&quot;</code> or
+ # <code>minCpuPlatform: &quot;Intel Sandy Bridge&quot;</code>. For more
+ # information, read [how to specify min CPU
+ # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
+ "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
+ #
+ # The limit for this value is dependent upon the maximum number of
+ # disks available on a machine per zone. See:
+ # https://cloud.google.com/compute/docs/disks/local-ssd
+ # for more information.
"taints": [ # List of kubernetes taints to be applied to each node.
#
# For more information, including usage and the valid values, see:
@@ -1044,80 +693,37 @@
# See
# [here](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration)
# for more information, including usage and the valid values.
- "effect": "A String", # Effect for taint.
"value": "A String", # Value for taint.
"key": "A String", # Key for taint.
+ "effect": "A String", # Effect for taint.
},
],
- "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
- # These will added in addition to any default label(s) that
- # Kubernetes may apply to the node.
- # In case of conflict in label keys, the applied set may differ depending on
- # the Kubernetes version -- it's best to assume the behavior is undefined
- # and conflicts should be avoided.
- # For more information, including usage and the valid values, see:
- # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
- "a_key": "A String",
+ "imageType": "A String", # The image type to use for this node. Note that for a given image type,
+ # the latest version of it will be used.
+ "reservationAffinity": { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
+ # the specified [Zonal Compute
+ # Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
+ # to this node pool.
+ # is the configuration of desired reservation which instances could take
+ # capacity from.
+ "consumeReservationType": "A String", # Corresponds to the type of reservation consumption.
+ "key": "A String", # Corresponds to the label key of a reservation resource. To target a
+ # SPECIFIC_RESERVATION by name, specify "googleapis.com/reservation-name" as
+ # the key and specify the name of your reservation as its value.
+ "values": [ # Corresponds to the label value(s) of reservation resource(s).
+ "A String",
+ ],
},
- "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
- # The smallest allowed disk size is 10GB.
- #
- # If unspecified, the default disk size is 100GB.
- "workloadMetadataConfig": { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
- # workloads on the node pool.
- "mode": "A String", # Mode is the configuration for how to expose metadata to workloads running
- # on the node pool.
- },
- "accelerators": [ # A list of hardware accelerators to be attached to each node.
- # See https://cloud.google.com/compute/docs/gpus for more information about
- # support for GPUs.
- { # AcceleratorConfig represents a Hardware Accelerator request.
- "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
- # [here](https://cloud.google.com/compute/docs/gpus)
- "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
- },
- ],
"machineType": "A String", # The name of a Google Compute Engine [machine
# type](https://cloud.google.com/compute/docs/machine-types) (e.g.
# `n1-standard-1`).
#
# If unspecified, the default machine type is
# `n1-standard-1`.
- "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
- #
- # If unspecified, the default disk type is 'pd-standard'
- "shieldedInstanceConfig": { # A set of Shielded Instance options. # Shielded Instance options.
- "enableIntegrityMonitoring": True or False, # Defines whether the instance has integrity monitoring enabled.
- #
- # Enables monitoring and attestation of the boot integrity of the instance.
- # The attestation is performed against the integrity policy baseline. This
- # baseline is initially derived from the implicitly trusted boot image when
- # the instance is created.
- "enableSecureBoot": True or False, # Defines whether the instance has Secure Boot enabled.
- #
- # Secure Boot helps ensure that the system only runs authentic software by
- # verifying the digital signature of all boot components, and halting the
- # boot process if signature verification fails.
- },
- "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
- # scheduled on the specified or newer CPU platform. Applicable values are the
- # friendly names of CPU platforms, such as
- # <code>minCpuPlatform: &quot;Intel Haswell&quot;</code> or
- # <code>minCpuPlatform: &quot;Intel Sandy Bridge&quot;</code>. For more
- # information, read [how to specify min CPU
- # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
- "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
- # https://cloud.google.com/compute/docs/instances/preemptible for more
- # information about preemptible VM instances.
- "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
- #
- # The limit for this value is dependent upon the maximum number of
- # disks available on a machine per zone. See:
- # https://cloud.google.com/compute/docs/disks/local-ssd
- # for more information.
- "sandboxConfig": { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
- "type": "A String", # Type of the sandbox to use for the node.
- },
+ "nodeGroup": "A String", # Setting this field will assign instances of this
+ # pool to run on the specified node group. This is useful for running
+ # workloads on [sole tenant
+ # nodes](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes).
"metadata": { # The metadata key/value pairs assigned to instances in the cluster.
#
# Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
@@ -1152,45 +758,63 @@
# The total size of all keys and values must be less than 512 KB.
"a_key": "A String",
},
- "reservationAffinity": { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
- # the specified [Zonal Compute
- # Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
- # to this node pool.
- # is the configuration of desired reservation which instances could take
- # capacity from.
- "values": [ # Corresponds to the label value(s) of reservation resource(s).
- "A String",
- ],
- "consumeReservationType": "A String", # Corresponds to the type of reservation consumption.
- "key": "A String", # Corresponds to the label key of a reservation resource. To target a
- # SPECIFIC_RESERVATION by name, specify "googleapis.com/reservation-name" as
- # the key and specify the name of your reservation as its value.
- },
"tags": [ # The list of instance tags applied to all nodes. Tags are used to identify
# valid sources or targets for network firewalls and are specified by
# the client during cluster or node pool creation. Each tag within the list
# must comply with RFC1035.
"A String",
],
+ "sandboxConfig": { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
+ "type": "A String", # Type of the sandbox to use for the node.
+ },
+ "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
+ # https://cloud.google.com/compute/docs/instances/preemptible for more
+ # information about preemptible VM instances.
+ "workloadMetadataConfig": { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
+ # workloads on the node pool.
+ "mode": "A String", # Mode is the configuration for how to expose metadata to workloads running
+ # on the node pool.
+ },
+ "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
+ # The smallest allowed disk size is 10GB.
+ #
+ # If unspecified, the default disk size is 100GB.
"serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs.
# Specify the email address of the Service Account; otherwise, if no Service
# Account is specified, the "default" service account is used.
- "imageType": "A String", # The image type to use for this node. Note that for a given image type,
- # the latest version of it will be used.
+ "accelerators": [ # A list of hardware accelerators to be attached to each node.
+ # See https://cloud.google.com/compute/docs/gpus for more information about
+ # support for GPUs.
+ { # AcceleratorConfig represents a Hardware Accelerator request.
+ "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
+ # [here](https://cloud.google.com/compute/docs/gpus)
+ "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
+ },
+ ],
},
- "status": "A String", # [Output only] The current status of this cluster.
- "networkConfig": { # NetworkConfig reports the relative names of network & subnetwork. # Configuration for cluster networking.
- "enableIntraNodeVisibility": True or False, # Whether Intra-node visibility is enabled for this cluster.
- # This makes same node pod to pod traffic visible for VPC network.
- "subnetwork": "A String", # Output only. The relative name of the Google Compute Engine
- # [subnetwork](https://cloud.google.com/compute/docs/vpc) to which the
- # cluster is connected. Example:
- # projects/my-project/regions/us-central1/subnetworks/my-subnet
- "network": "A String", # Output only. The relative name of the Google Compute Engine
- # network(https://cloud.google.com/compute/docs/networks-and-firewalls#networks)
- # to which the cluster is connected. Example:
- # projects/my-project/global/networks/my-network
+ "resourceUsageExportConfig": { # Configuration for exporting cluster resource usages. # Configuration for exporting resource usages. Resource usage export is
+ # disabled when this config is unspecified.
+ "enableNetworkEgressMetering": True or False, # Whether to enable network egress metering for this cluster. If enabled, a
+ # daemonset will be created in the cluster to meter network egress traffic.
+ "bigqueryDestination": { # Parameters for using BigQuery as the destination of resource usage export. # Configuration to use BigQuery as usage export destination.
+ "datasetId": "A String", # The ID of a BigQuery Dataset.
+ },
+ "consumptionMeteringConfig": { # Parameters for controlling consumption metering. # Configuration to enable resource consumption metering.
+ "enabled": True or False, # Whether to enable consumption metering for this cluster. If enabled, a
+ # second BigQuery table will be created to hold resource consumption
+ # records.
+ },
},
+ "initialNodeCount": 42, # The number of nodes to create in this cluster. You must ensure that your
+ # Compute Engine [resource quota](https://cloud.google.com/compute/quotas)
+ # 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.
"name": "A 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:
@@ -1198,25 +822,432 @@
# * Lowercase letters, numbers, and hyphens only.
# * Must start with a letter.
# * Must end with a number or a letter.
- "endpoint": "A 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/`.
+ "workloadIdentityConfig": { # Configuration for the use of Kubernetes Service Accounts in GCP IAM # Configuration for the use of Kubernetes Service Accounts in GCP IAM
+ # policies.
+ # policies.
+ "workloadPool": "A String", # The workload pool to attach all Kubernetes service accounts to.
+ },
+ "networkConfig": { # NetworkConfig reports the relative names of network & subnetwork. # Configuration for cluster networking.
+ "network": "A String", # Output only. The relative name of the Google Compute Engine
+ # network(https://cloud.google.com/compute/docs/networks-and-firewalls#networks)
+ # to which the cluster is connected. Example:
+ # projects/my-project/global/networks/my-network
+ "enableIntraNodeVisibility": True or False, # Whether Intra-node visibility is enabled for this cluster.
+ # This makes same node pod to pod traffic visible for VPC network.
+ "subnetwork": "A String", # Output only. The relative name of the Google Compute Engine
+ # [subnetwork](https://cloud.google.com/compute/docs/vpc) to which the
+ # cluster is connected. Example:
+ # projects/my-project/regions/us-central1/subnetworks/my-subnet
+ },
+ "databaseEncryption": { # Configuration of etcd encryption. # Configuration of etcd encryption.
+ "state": "A String", # Denotes the state of etcd encryption.
+ "keyName": "A String", # Name of CloudKMS key to use for the encryption of secrets in etcd.
+ # Ex. projects/my-project/locations/global/keyRings/my-ring/cryptoKeys/my-key
+ },
+ "privateClusterConfig": { # Configuration options for private clusters. # Configuration for private cluster.
+ "privateEndpoint": "A String", # Output only. The internal IP address of this cluster's master endpoint.
+ "peeringName": "A String", # Output only. The peering name in the customer VPC used by this cluster.
+ "enablePrivateNodes": True or False, # Whether nodes have internal IP addresses only. If enabled, all nodes are
+ # given only RFC 1918 private addresses and communicate with the master via
+ # private networking.
+ "publicEndpoint": "A String", # Output only. The external IP address of this cluster's master endpoint.
+ "enablePrivateEndpoint": True or False, # Whether the master's internal IP address is used as the cluster endpoint.
+ "masterIpv4CidrBlock": "A String", # The IP range in CIDR notation to use for the hosted master network. This
+ # range will be used for assigning internal IP addresses to the master or
+ # set of masters, as well as the ILB VIP. This range must not overlap with
+ # any other ranges in use within the cluster's network.
+ },
+ "createTime": "A String", # [Output only] The time the cluster was created, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "nodePools": [ # The node pools associated with this cluster.
+ # This field should not be set if "node_config" or "initial_node_count" are
+ # specified.
+ { # NodePool contains the name and configuration for a cluster's node pool.
+ # Node pools are a set of nodes (i.e. VM's), with a common configuration and
+ # specification, under the control of the cluster master. They may have a set
+ # of Kubernetes labels applied to them, which may be used to reference them
+ # during pod scheduling. They may also be resized up or down, to accommodate
+ # the workload.
+ "selfLink": "A String", # [Output only] Server-defined URL for the resource.
+ "management": { # NodeManagement defines the set of node management services turned on for the # NodeManagement configuration for this NodePool.
+ # node pool.
+ "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
+ # the Auto Upgrades will proceed.
+ "description": "A String", # [Output only] This field is set when upgrades are about to commence
+ # with the description of the upgrade.
+ "autoUpgradeStartTime": "A String", # [Output only] This field is set when upgrades are about to commence
+ # with the approximate start time for the upgrades, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ },
+ "autoRepair": True or False, # A flag that specifies whether the node auto-repair is enabled for the node
+ # pool. If enabled, the nodes in this node pool will be monitored and, if
+ # they fail health checks too many times, an automatic repair action will be
+ # triggered.
+ "autoUpgrade": True or False, # A flag that specifies whether node auto-upgrade is enabled for the node
+ # pool. If enabled, node auto-upgrade helps keep the nodes in your node pool
+ # up to date with the latest release version of Kubernetes.
+ },
+ "upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Upgrade settings control disruption and speed of the upgrade.
+ # disruption caused by an upgrade.
+ #
+ # maxUnavailable controls the number of nodes that can be simultaneously
+ # unavailable.
+ #
+ # maxSurge controls the number of additional nodes that can be added to the
+ # node pool temporarily for the time of the upgrade to increase the number of
+ # available nodes.
+ #
+ # (maxUnavailable + maxSurge) determines the level of parallelism (how many
+ # nodes are being upgraded at the same time).
+ #
+ # Note: upgrades inevitably introduce some disruption since workloads need to
+ # be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
+ # this holds true. (Disruption stays within the limits of
+ # PodDisruptionBudget, if it is configured.)
+ #
+ # Consider a hypothetical node pool with 5 nodes having maxSurge=2,
+ # maxUnavailable=1. This means the upgrade process upgrades 3 nodes
+ # simultaneously. It creates 2 additional (upgraded) nodes, then it brings
+ # down 3 old (not yet upgraded) nodes at the same time. This ensures that
+ # there are always at least 4 nodes available.
+ "maxUnavailable": 42, # The maximum number of nodes that can be simultaneously unavailable during
+ # the upgrade process. A node is considered available if its status is
+ # Ready.
+ "maxSurge": 42, # The maximum number of nodes that can be created beyond the current size
+ # of the node pool during the upgrade process.
+ },
+ "initialNodeCount": 42, # The initial node count for the pool. You must ensure that your
+ # Compute Engine [resource quota](https://cloud.google.com/compute/quotas)
+ # is sufficient for this number of instances. You must also have available
+ # firewall and routes quota.
+ "statusMessage": "A String", # [Output only] Additional information about the current status of this
+ # node pool instance, if available.
+ "version": "A String", # The version of the Kubernetes of this node.
+ "conditions": [ # Which conditions caused the current node pool state.
+ { # StatusCondition describes why a cluster or a node pool has a certain status
+ # (e.g., ERROR or DEGRADED).
+ "message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
+ },
+ ],
+ "config": { # Parameters that describe the nodes in a cluster. # The node configuration of the pool.
+ "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
+ #
+ # If unspecified, the default disk type is 'pd-standard'
+ "bootDiskKmsKey": "A String", #
+ # The Customer Managed Encryption Key used to encrypt the boot disk attached
+ # to each node in the node pool. This should be of the form
+ # projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME].
+ # For more information about protecting resources with Cloud KMS Keys please
+ # see:
+ # https://cloud.google.com/compute/docs/disks/customer-managed-encryption
+ "shieldedInstanceConfig": { # A set of Shielded Instance options. # Shielded Instance options.
+ "enableIntegrityMonitoring": True or False, # Defines whether the instance has integrity monitoring enabled.
+ #
+ # Enables monitoring and attestation of the boot integrity of the instance.
+ # The attestation is performed against the integrity policy baseline. This
+ # baseline is initially derived from the implicitly trusted boot image when
+ # the instance is created.
+ "enableSecureBoot": True or False, # Defines whether the instance has Secure Boot enabled.
+ #
+ # Secure Boot helps ensure that the system only runs authentic software by
+ # verifying the digital signature of all boot components, and halting the
+ # boot process if signature verification fails.
+ },
+ "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
+ # These will added in addition to any default label(s) that
+ # Kubernetes may apply to the node.
+ # In case of conflict in label keys, the applied set may differ depending on
+ # the Kubernetes version -- it's best to assume the behavior is undefined
+ # and conflicts should be avoided.
+ # For more information, including usage and the valid values, see:
+ # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
+ "a_key": "A String",
+ },
+ "oauthScopes": [ # The set of Google API scopes to be made available on all of the
+ # node VMs under the "default" service account.
+ #
+ # The following scopes are recommended, but not required, and by default are
+ # not included:
+ #
+ # * `https://www.googleapis.com/auth/compute` is required for mounting
+ # persistent storage on your nodes.
+ # * `https://www.googleapis.com/auth/devstorage.read_only` is required for
+ # communicating with **gcr.io**
+ # (the [Google Container
+ # Registry](https://cloud.google.com/container-registry/)).
+ #
+ # If unspecified, no scopes are added, unless Cloud Logging or Cloud
+ # Monitoring are enabled, in which case their required scopes will be added.
+ "A String",
+ ],
+ "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
+ # scheduled on the specified or newer CPU platform. Applicable values are the
+ # friendly names of CPU platforms, such as
+ # <code>minCpuPlatform: &quot;Intel Haswell&quot;</code> or
+ # <code>minCpuPlatform: &quot;Intel Sandy Bridge&quot;</code>. For more
+ # information, read [how to specify min CPU
+ # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
+ "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
+ #
+ # The limit for this value is dependent upon the maximum number of
+ # disks available on a machine per zone. See:
+ # https://cloud.google.com/compute/docs/disks/local-ssd
+ # for more information.
+ "taints": [ # List of kubernetes taints to be applied to each node.
+ #
+ # For more information, including usage and the valid values, see:
+ # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
+ { # Kubernetes taint is comprised of three fields: key, value, and effect. Effect
+ # can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute.
+ #
+ # See
+ # [here](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration)
+ # for more information, including usage and the valid values.
+ "value": "A String", # Value for taint.
+ "key": "A String", # Key for taint.
+ "effect": "A String", # Effect for taint.
+ },
+ ],
+ "imageType": "A String", # The image type to use for this node. Note that for a given image type,
+ # the latest version of it will be used.
+ "reservationAffinity": { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
+ # the specified [Zonal Compute
+ # Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
+ # to this node pool.
+ # is the configuration of desired reservation which instances could take
+ # capacity from.
+ "consumeReservationType": "A String", # Corresponds to the type of reservation consumption.
+ "key": "A String", # Corresponds to the label key of a reservation resource. To target a
+ # SPECIFIC_RESERVATION by name, specify "googleapis.com/reservation-name" as
+ # the key and specify the name of your reservation as its value.
+ "values": [ # Corresponds to the label value(s) of reservation resource(s).
+ "A String",
+ ],
+ },
+ "machineType": "A String", # The name of a Google Compute Engine [machine
+ # type](https://cloud.google.com/compute/docs/machine-types) (e.g.
+ # `n1-standard-1`).
+ #
+ # If unspecified, the default machine type is
+ # `n1-standard-1`.
+ "nodeGroup": "A String", # Setting this field will assign instances of this
+ # pool to run on the specified node group. This is useful for running
+ # workloads on [sole tenant
+ # nodes](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes).
+ "metadata": { # The metadata key/value pairs assigned to instances in the cluster.
+ #
+ # Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
+ # in length. These are reflected as part of a URL in the metadata server.
+ # Additionally, to avoid ambiguity, keys must not conflict with any other
+ # metadata keys for the project or be one of the reserved keys:
+ # "cluster-location"
+ # "cluster-name"
+ # "cluster-uid"
+ # "configure-sh"
+ # "containerd-configure-sh"
+ # "enable-os-login"
+ # "gci-ensure-gke-docker"
+ # "gci-metrics-enabled"
+ # "gci-update-strategy"
+ # "instance-template"
+ # "kube-env"
+ # "startup-script"
+ # "user-data"
+ # "disable-address-manager"
+ # "windows-startup-script-ps1"
+ # "common-psm1"
+ # "k8s-node-setup-psm1"
+ # "install-ssh-psm1"
+ # "user-profile-psm1"
+ # "serial-port-logging-enable"
+ #
+ # Values are free-form strings, and only have meaning as interpreted by
+ # the image running in the instance. The only restriction placed on them is
+ # that each value's size must be less than or equal to 32 KB.
+ #
+ # The total size of all keys and values must be less than 512 KB.
+ "a_key": "A String",
+ },
+ "tags": [ # The list of instance tags applied to all nodes. Tags are used to identify
+ # valid sources or targets for network firewalls and are specified by
+ # the client during cluster or node pool creation. Each tag within the list
+ # must comply with RFC1035.
+ "A String",
+ ],
+ "sandboxConfig": { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
+ "type": "A String", # Type of the sandbox to use for the node.
+ },
+ "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
+ # https://cloud.google.com/compute/docs/instances/preemptible for more
+ # information about preemptible VM instances.
+ "workloadMetadataConfig": { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
+ # workloads on the node pool.
+ "mode": "A String", # Mode is the configuration for how to expose metadata to workloads running
+ # on the node pool.
+ },
+ "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
+ # The smallest allowed disk size is 10GB.
+ #
+ # If unspecified, the default disk size is 100GB.
+ "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs.
+ # Specify the email address of the Service Account; otherwise, if no Service
+ # Account is specified, the "default" service account is used.
+ "accelerators": [ # A list of hardware accelerators to be attached to each node.
+ # See https://cloud.google.com/compute/docs/gpus for more information about
+ # support for GPUs.
+ { # AcceleratorConfig represents a Hardware Accelerator request.
+ "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
+ # [here](https://cloud.google.com/compute/docs/gpus)
+ "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
+ },
+ ],
+ },
+ "name": "A String", # The name of the node pool.
+ "maxPodsConstraint": { # Constraints applied to pods. # The constraint on the maximum number of pods that can be run
+ # simultaneously on a node in the node pool.
+ "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
+ },
+ "autoscaling": { # NodePoolAutoscaling contains information required by cluster autoscaler to # Autoscaler configuration for this NodePool. Autoscaler is enabled
+ # only if a valid configuration is present.
+ # adjust the size of the node pool to the current cluster usage.
+ "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be >= 1 and <=
+ # max_node_count.
+ "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be >= min_node_count. There
+ # has to enough quota to scale up the cluster.
+ "enabled": True or False, # Is autoscaling enabled for this node pool.
+ "autoprovisioned": True or False, # Can this node pool be deleted automatically.
+ },
+ "podIpv4CidrSize": 42, # [Output only] The pod CIDR block size per node in this node pool.
+ "instanceGroupUrls": [ # [Output only] The resource URLs of the [managed instance
+ # groups](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances)
+ # associated with this node pool.
+ "A String",
+ ],
+ "status": "A String", # [Output only] The status of the nodes in this pool instance.
+ "locations": [ # The list of Google Compute Engine
+ # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
+ # NodePool's nodes should be located.
+ "A String",
+ ],
+ },
+ ],
+ "subnetwork": "A String", # The name of the Google Compute Engine
+ # [subnetwork](https://cloud.google.com/compute/docs/subnetworks) to which
+ # the cluster is connected.
+ "addonsConfig": { # Configuration for the addons that can be automatically spun up in the # Configurations for the various addons available to run in the cluster.
+ # cluster, enabling additional functionality.
+ "kubernetesDashboard": { # Configuration for the Kubernetes Dashboard. # Configuration for the Kubernetes Dashboard.
+ # This addon is deprecated, and will be disabled in 1.15. It is recommended
+ # to use the Cloud Console to manage and monitor your Kubernetes clusters,
+ # workloads and applications. For more information, see:
+ # https://cloud.google.com/kubernetes-engine/docs/concepts/dashboards
+ "disabled": True or False, # Whether the Kubernetes Dashboard is enabled for this cluster.
+ },
+ "cloudRunConfig": { # Configuration options for the Cloud Run feature. # Configuration for the Cloud Run addon, which allows the user to use a
+ # managed Knative service.
+ "disabled": True or False, # Whether Cloud Run addon is enabled for this cluster.
+ },
+ "httpLoadBalancing": { # Configuration options for the HTTP (L7) load balancing controller addon, # Configuration for the HTTP (L7) load balancing controller addon, which
+ # makes it easy to set up HTTP load balancers for services in a cluster.
+ # which makes it easy to set up HTTP load balancers for services in a cluster.
+ "disabled": True or False, # Whether the HTTP Load Balancing controller is enabled in the cluster.
+ # When enabled, it runs a small pod in the cluster that manages the load
+ # balancers.
+ },
+ "horizontalPodAutoscaling": { # Configuration options for the horizontal pod autoscaling feature, which # Configuration for the horizontal pod autoscaling feature, which
+ # increases or decreases the number of replica pods a replication controller
+ # has based on the resource usage of the existing pods.
+ # increases or decreases the number of replica pods a replication controller
+ # has based on the resource usage of the existing pods.
+ "disabled": True or False, # Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.
+ # When enabled, it ensures that metrics are collected into Stackdriver
+ # Monitoring.
+ },
+ "dnsCacheConfig": { # Configuration for NodeLocal DNSCache # Configuration for NodeLocalDNS, a dns cache running on cluster nodes
+ "enabled": True or False, # Whether NodeLocal DNSCache is enabled for this cluster.
+ },
+ "networkPolicyConfig": { # Configuration for NetworkPolicy. This only tracks whether the addon # Configuration for NetworkPolicy. This only tracks whether the addon
+ # is enabled or not on the Master, it does not track whether network policy
+ # is enabled for the nodes.
+ # is enabled or not on the Master, it does not track whether network policy
+ # is enabled for the nodes.
+ "disabled": True or False, # Whether NetworkPolicy is enabled for this cluster.
+ },
+ },
+ "masterAuth": { # The authentication information for accessing the master endpoint. # The authentication information for accessing the master endpoint.
+ # If unspecified, the defaults are used:
+ # For clusters before v1.12, if master_auth is unspecified, `username` will
+ # be set to "admin", a random password will be generated, and a client
+ # certificate will be issued.
+ # Authentication can be done using HTTP basic auth or using client
+ # certificates.
+ "clientKey": "A String", # [Output only] Base64-encoded private key used by clients to authenticate
+ # to the cluster endpoint.
+ "clientCertificate": "A String", # [Output only] Base64-encoded public certificate used by clients to
+ # authenticate to the cluster endpoint.
+ "username": "A String", # The username to use for HTTP basic authentication to the master endpoint.
+ # For clusters v1.6.0 and later, basic authentication can be disabled by
+ # leaving username unspecified (or setting it to the empty string).
+ "password": "A String", # The password to use for HTTP basic authentication to the master endpoint.
+ # Because the master endpoint is open to the Internet, you should create a
+ # strong password. If a password is provided for cluster creation, username
+ # must be non-empty.
+ "clientCertificateConfig": { # Configuration for client certificates on the cluster. # Configuration for client certificate authentication on the cluster. For
+ # clusters before v1.12, if no configuration is specified, a client
+ # certificate is issued.
+ "issueClientCertificate": True or False, # Issue a client certificate.
+ },
+ "clusterCaCertificate": "A String", # [Output only] Base64-encoded public certificate that is the root of
+ # trust for the cluster.
+ },
+ "verticalPodAutoscaling": { # VerticalPodAutoscaling contains global, per-cluster information # Cluster-level Vertical Pod Autoscaling configuration.
+ # required by Vertical Pod Autoscaler to automatically adjust
+ # the resources of pods controlled by it.
+ "enabled": True or False, # Enables vertical pod autoscaling.
+ },
+ "enableTpu": True or False, # Enable the ability to use Cloud TPUs in this cluster.
+ "initialClusterVersion": "A 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.
#
- # See the `masterAuth` property of this resource for username and
- # password information.
+ # 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
+ "currentNodeCount": 42, # [Output only] The number of nodes currently in the cluster. Deprecated.
+ # Call Kubernetes API directly to retrieve node information.
+ "tpuIpv4CidrBlock": "A String", # [Output only] The IP address range of the Cloud TPUs in this cluster, in
+ # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ # notation (e.g. `1.2.3.4/29`).
+ "locations": [ # The list of Google Compute Engine
+ # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
+ # cluster's nodes should be located.
+ "A String",
+ ],
+ "selfLink": "A String", # [Output only] Server-defined URL for the resource.
+ "description": "A String", # An optional description of this cluster.
+ "statusMessage": "A String", # [Output only] Additional information about the current status of this
+ # cluster, if available.
"location": "A String", # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
+ "servicesIpv4Cidr": "A String", # [Output only] The IP address range of the Kubernetes services in
+ # this cluster, in
+ # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ # notation (e.g. `1.2.3.4/29`). Service addresses are
+ # typically put in the last `/16` from the container CIDR.
},
"projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
# number](https://support.google.com/cloud/answer/6158840).
# This field has been deprecated and replaced by the parent field.
- "zone": "A String", # Deprecated. The name of the Google Compute Engine
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
- # cluster resides. This field has been deprecated and replaced by the parent
- # field.
}
x__xgafv: string, V1 error format.
@@ -1229,19 +1260,9 @@
{ # This operation resource represents operations that may have happened or are
# happening on the cluster. All fields are output only.
- "clusterConditions": [ # Which conditions caused the current cluster state.
- { # StatusCondition describes why a cluster or a node pool has a certain status
- # (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
- "message": "A String", # Human-friendly representation of the condition
- },
- ],
"progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
"name": "A String", # A non-parameterized string describing an operation stage.
# Unset for single-stage operations.
- "stages": [ # Substages of an operation or a stage.
- # Object with schema name: OperationProgress
- ],
"metrics": [ # Progress metric bundle, for example:
# metrics: [{name: "nodes done", int_value: 15},
# {name: "nodes total", int_value: 32}]
@@ -1249,46 +1270,56 @@
# metrics: [{name: "progress", double_value: 0.56},
# {name: "progress scale", double_value: 1.0}]
{ # Progress metric is (string, int|float|string) pair.
- "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
+ "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
"doubleValue": 3.14, # For metrics with floating point value.
"intValue": "A String", # For metrics with integer value.
- "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
+ "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
},
],
"status": "A String", # Status of an operation stage.
# Unset for single-stage operations.
+ "stages": [ # Substages of an operation or a stage.
+ # Object with schema name: OperationProgress
+ ],
},
+ "targetLink": "A String", # Server-defined URL for the target of the operation.
+ "status": "A String", # The current status of the operation.
+ "operationType": "A String", # The operation type.
+ "startTime": "A String", # [Output only] The time the operation started, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "clusterConditions": [ # Which conditions caused the current cluster state.
+ { # StatusCondition describes why a cluster or a node pool has a certain status
+ # (e.g., ERROR or DEGRADED).
+ "message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
+ },
+ ],
"zone": "A String", # The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# operation is taking place. This field is deprecated, use location instead.
- "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
"selfLink": "A String", # Server-defined URL for the resource.
- "detail": "A String", # Detailed operation progress, if available.
- "targetLink": "A String", # Server-defined URL for the target of the operation.
- "operationType": "A String", # The operation type.
- "status": "A String", # The current status of the operation.
"name": "A String", # The server-assigned ID for the operation.
+ "detail": "A String", # Detailed operation progress, if available.
+ "endTime": "A String", # [Output only] The time the operation completed, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"nodepoolConditions": [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
"message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
},
],
- "endTime": "A String", # [Output only] The time the operation completed, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"location": "A String", # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
- "startTime": "A String", # [Output only] The time the operation started, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
}</pre>
</div>
<div class="method">
- <code class="details" id="delete">delete(name, projectId=None, zone=None, clusterId=None, x__xgafv=None)</code>
+ <code class="details" id="delete">delete(name, clusterId=None, projectId=None, zone=None, x__xgafv=None)</code>
<pre>Deletes the cluster, including the Kubernetes endpoint and all worker
nodes.
@@ -1302,6 +1333,8 @@
Args:
name: string, The name (project, location, cluster) of the cluster to delete.
Specified in the format `projects/*/locations/*/clusters/*`. (required)
+ clusterId: string, Deprecated. The name of the cluster to delete.
+This field has been deprecated and replaced by the name field.
projectId: string, Deprecated. The Google Developers Console [project ID or project
number](https://support.google.com/cloud/answer/6158840).
This field has been deprecated and replaced by the name field.
@@ -1309,8 +1342,6 @@
[zone](https://cloud.google.com/compute/docs/zones#available) in which the
cluster resides. This field has been deprecated and replaced by the name
field.
- clusterId: string, Deprecated. The name of the cluster to delete.
-This field has been deprecated and replaced by the name field.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -1321,19 +1352,9 @@
{ # This operation resource represents operations that may have happened or are
# happening on the cluster. All fields are output only.
- "clusterConditions": [ # Which conditions caused the current cluster state.
- { # StatusCondition describes why a cluster or a node pool has a certain status
- # (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
- "message": "A String", # Human-friendly representation of the condition
- },
- ],
"progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
"name": "A String", # A non-parameterized string describing an operation stage.
# Unset for single-stage operations.
- "stages": [ # Substages of an operation or a stage.
- # Object with schema name: OperationProgress
- ],
"metrics": [ # Progress metric bundle, for example:
# metrics: [{name: "nodes done", int_value: 15},
# {name: "nodes total", int_value: 32}]
@@ -1341,46 +1362,56 @@
# metrics: [{name: "progress", double_value: 0.56},
# {name: "progress scale", double_value: 1.0}]
{ # Progress metric is (string, int|float|string) pair.
- "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
+ "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
"doubleValue": 3.14, # For metrics with floating point value.
"intValue": "A String", # For metrics with integer value.
- "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
+ "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
},
],
"status": "A String", # Status of an operation stage.
# Unset for single-stage operations.
+ "stages": [ # Substages of an operation or a stage.
+ # Object with schema name: OperationProgress
+ ],
},
+ "targetLink": "A String", # Server-defined URL for the target of the operation.
+ "status": "A String", # The current status of the operation.
+ "operationType": "A String", # The operation type.
+ "startTime": "A String", # [Output only] The time the operation started, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "clusterConditions": [ # Which conditions caused the current cluster state.
+ { # StatusCondition describes why a cluster or a node pool has a certain status
+ # (e.g., ERROR or DEGRADED).
+ "message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
+ },
+ ],
"zone": "A String", # The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# operation is taking place. This field is deprecated, use location instead.
- "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
"selfLink": "A String", # Server-defined URL for the resource.
- "detail": "A String", # Detailed operation progress, if available.
- "targetLink": "A String", # Server-defined URL for the target of the operation.
- "operationType": "A String", # The operation type.
- "status": "A String", # The current status of the operation.
"name": "A String", # The server-assigned ID for the operation.
+ "detail": "A String", # Detailed operation progress, if available.
+ "endTime": "A String", # [Output only] The time the operation completed, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"nodepoolConditions": [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
"message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
},
],
- "endTime": "A String", # [Output only] The time the operation completed, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"location": "A String", # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
- "startTime": "A String", # [Output only] The time the operation started, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
}</pre>
</div>
<div class="method">
- <code class="details" id="get">get(name, clusterId=None, projectId=None, zone=None, x__xgafv=None)</code>
+ <code class="details" id="get">get(name, clusterId=None, zone=None, projectId=None, x__xgafv=None)</code>
<pre>Gets the details of a specific cluster.
Args:
@@ -1388,13 +1419,13 @@
Specified in the format `projects/*/locations/*/clusters/*`. (required)
clusterId: string, Deprecated. The name of the cluster to retrieve.
This field has been deprecated and replaced by the name field.
- projectId: string, Deprecated. The Google Developers Console [project ID or project
-number](https://support.google.com/cloud/answer/6158840).
-This field has been deprecated and replaced by the name field.
zone: string, Deprecated. The name of the Google Compute Engine
[zone](https://cloud.google.com/compute/docs/zones#available) in which the
cluster resides. This field has been deprecated and replaced by the name
field.
+ projectId: string, Deprecated. The Google Developers Console [project ID or project
+number](https://support.google.com/cloud/answer/6158840).
+This field has been deprecated and replaced by the name field.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -1404,233 +1435,145 @@
An object of the form:
{ # A Google Kubernetes Engine cluster.
- "createTime": "A String", # [Output only] The time the cluster was created, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
- "clusterIpv4Cidr": "A String", # The IP address range of the container pods in this cluster, in
- # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
- # 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`.
- "autoscaling": { # ClusterAutoscaling contains global, per-cluster information # Cluster-level autoscaling configuration.
- # required by Cluster Autoscaler to automatically adjust
- # the size of the cluster and create/delete
- # node pools based on the current needs.
- "autoprovisioningLocations": [ # The list of Google Compute Engine
- # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
- # NodePool's nodes can be created by NAP.
- "A String",
- ],
- "resourceLimits": [ # Contains global constraints regarding minimum and maximum
- # amount of resources in the cluster.
- { # Contains information about amount of some resource in the cluster.
- # For memory, value should be in GB.
- "minimum": "A String", # Minimum amount of the resource in the cluster.
- "maximum": "A String", # Maximum amount of the resource in the cluster.
- "resourceType": "A String", # Resource name "cpu", "memory" or gpu-specific string.
- },
- ],
- "enableNodeAutoprovisioning": True or False, # Enables automatic node pool creation and deletion.
- "autoprovisioningNodePoolDefaults": { # AutoprovisioningNodePoolDefaults contains defaults for a node pool created # AutoprovisioningNodePoolDefaults contains defaults for a node pool
- # created by NAP.
- # by NAP.
- "management": { # NodeManagement defines the set of node management services turned on for the # Specifies the node management options for NAP created node-pools.
- # node pool.
- "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
- # the Auto Upgrades will proceed.
- "autoUpgradeStartTime": "A String", # [Output only] This field is set when upgrades are about to commence
- # with the approximate start time for the upgrades, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
- "description": "A String", # [Output only] This field is set when upgrades are about to commence
- # with the description of the upgrade.
- },
- "autoRepair": True or False, # A flag that specifies whether the node auto-repair is enabled for the node
- # pool. If enabled, the nodes in this node pool will be monitored and, if
- # they fail health checks too many times, an automatic repair action will be
- # triggered.
- "autoUpgrade": True or False, # A flag that specifies whether node auto-upgrade is enabled for the node
- # pool. If enabled, node auto-upgrade helps keep the nodes in your node pool
- # up to date with the latest release version of Kubernetes.
- },
- "oauthScopes": [ # Scopes that are used by NAP when creating node pools. If oauth_scopes are
- # specified, service_account should be empty.
- "A String",
- ],
- "upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Specifies the upgrade settings for NAP created node pools
- # disruption caused by an upgrade.
- #
- # maxUnavailable controls the number of nodes that can be simultaneously
- # unavailable.
- #
- # maxSurge controls the number of additional nodes that can be added to the
- # node pool temporarily for the time of the upgrade to increase the number of
- # available nodes.
- #
- # (maxUnavailable + maxSurge) determines the level of parallelism (how many
- # nodes are being upgraded at the same time).
- #
- # Note: upgrades inevitably introduce some disruption since workloads need to
- # be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
- # this holds true. (Disruption stays within the limits of
- # PodDisruptionBudget, if it is configured.)
- #
- # Consider a hypothetical node pool with 5 nodes having maxSurge=2,
- # maxUnavailable=1. This means the upgrade process upgrades 3 nodes
- # simultaneously. It creates 2 additional (upgraded) nodes, then it brings
- # down 3 old (not yet upgraded) nodes at the same time. This ensures that
- # there are always at least 4 nodes available.
- "maxUnavailable": 42, # The maximum number of nodes that can be simultaneously unavailable during
- # the upgrade process. A node is considered available if its status is
- # Ready.
- "maxSurge": 42, # The maximum number of nodes that can be created beyond the current size
- # of the node pool during the upgrade process.
- },
- "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs. If
- # service_account is specified, scopes should be empty.
- },
+ "currentMasterVersion": "A String", # [Output only] The current software version of the master endpoint.
+ "currentNodeVersion": "A String", # [Output only] Deprecated, use
+ # [NodePools.version](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters.nodePools)
+ # 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.
+ "authenticatorGroupsConfig": { # Configuration for returning group information from authenticators. # Configuration controlling RBAC group membership information.
+ "securityGroup": "A String", # The name of the security group-of-groups to be used. Only relevant
+ # if enabled = true.
+ "enabled": True or False, # Whether this cluster should return group membership lookups
+ # during authentication using a group of security groups.
},
- "initialNodeCount": 42, # The number of nodes to create in this cluster. You must ensure that your
- # Compute Engine <a href="/compute/docs/resource-quotas">resource quota</a>
- # 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.
+ "enableKubernetesAlpha": True or False, # Kubernetes alpha features are enabled on this cluster. This includes alpha
+ # API groups (e.g. v1alpha1) 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.
+ "ipAllocationPolicy": { # Configuration for controlling how IPs are allocated in the cluster. # Configuration for cluster IP allocation.
+ "servicesSecondaryRangeName": "A String", # The name of the secondary range to be used as for the services
+ # CIDR block. The secondary range will be used for service
+ # ClusterIPs. This must be an existing secondary range associated
+ # with the cluster subnetwork.
+ #
+ # This field is only applicable with use_ip_aliases is true and
+ # create_subnetwork is false.
+ "subnetworkName": "A String", # A custom subnetwork name to be used if `create_subnetwork` is true. If
+ # this field is empty, then an automatic name will be chosen for the new
+ # subnetwork.
+ "nodeIpv4Cidr": "A String", # This field is deprecated, use node_ipv4_cidr_block.
+ "servicesIpv4CidrBlock": "A String", # The IP address range of the services IPs in this cluster. If blank, a range
+ # will be automatically chosen with the default size.
+ #
+ # This field is only applicable when `use_ip_aliases` is true.
+ #
+ # Set to blank to have a range chosen with the default size.
+ #
+ # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
+ # netmask.
+ #
+ # Set to a
+ # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
+ # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
+ # to use.
+ "servicesIpv4Cidr": "A String", # This field is deprecated, use services_ipv4_cidr_block.
+ "clusterSecondaryRangeName": "A String", # The name of the secondary range to be used for the cluster CIDR
+ # block. The secondary range will be used for pod IP
+ # addresses. This must be an existing secondary range associated
+ # with the cluster subnetwork.
+ #
+ # This field is only applicable with use_ip_aliases is true and
+ # create_subnetwork is false.
+ "tpuIpv4CidrBlock": "A String", # The IP address range of the Cloud TPUs in this cluster. If unspecified, a
+ # range will be automatically chosen with the default size.
+ #
+ # This field is only applicable when `use_ip_aliases` is true.
+ #
+ # If unspecified, the range will use the default size.
+ #
+ # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
+ # netmask.
+ #
+ # Set to a
+ # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
+ # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
+ # to use.
+ "nodeIpv4CidrBlock": "A String", # The IP address range of the instance IPs in this cluster.
+ #
+ # This is applicable only if `create_subnetwork` is true.
+ #
+ # Set to blank to have a range chosen with the default size.
+ #
+ # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
+ # netmask.
+ #
+ # Set to a
+ # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
+ # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
+ # to use.
+ "useIpAliases": True or False, # Whether alias IPs will be used for pod IPs in the cluster.
+ "createSubnetwork": True or False, # Whether a new subnetwork will be created automatically for the cluster.
+ #
+ # This field is only applicable when `use_ip_aliases` is true.
+ "clusterIpv4CidrBlock": "A String", # The IP address range for the cluster pod IPs. If this field is set, then
+ # `cluster.cluster_ipv4_cidr` must be left blank.
+ #
+ # This field is only applicable when `use_ip_aliases` is true.
+ #
+ # Set to blank to have a range chosen with the default size.
+ #
+ # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
+ # netmask.
+ #
+ # Set to a
+ # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
+ # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
+ # to use.
+ "clusterIpv4Cidr": "A String", # This field is deprecated, use cluster_ipv4_cidr_block.
+ },
+ "loggingService": "A String", # The logging service the cluster should use to write logs.
+ # Currently available options:
#
- # This field is deprecated, use node_pool.initial_node_count instead.
- "instanceGroupUrls": [ # Deprecated. Use node_pools.instance_group_urls.
- "A String",
- ],
- "privateClusterConfig": { # Configuration options for private clusters. # Configuration for private cluster.
- "masterIpv4CidrBlock": "A String", # The IP range in CIDR notation to use for the hosted master network. This
- # range will be used for assigning internal IP addresses to the master or
- # set of masters, as well as the ILB VIP. This range must not overlap with
- # any other ranges in use within the cluster's network.
- "enablePrivateNodes": True or False, # Whether nodes have internal IP addresses only. If enabled, all nodes are
- # given only RFC 1918 private addresses and communicate with the master via
- # private networking.
- "privateEndpoint": "A String", # Output only. The internal IP address of this cluster's master endpoint.
- "enablePrivateEndpoint": True or False, # Whether the master's internal IP address is used as the cluster endpoint.
- "peeringName": "A String", # Output only. The peering name in the customer VPC used by this cluster.
- "publicEndpoint": "A String", # Output only. The external IP address of this cluster's master endpoint.
+ # * `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.
+ "zone": "A String", # [Output only] The name of the Google Compute Engine
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ # cluster resides. This field is deprecated, use location instead.
+ "legacyAbac": { # Configuration for the legacy Attribute Based Access Control authorization # Configuration for the legacy ABAC authorization mode.
+ # mode.
+ "enabled": True or False, # 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.
},
- "shieldedNodes": { # Configuration of Shielded Nodes feature. # Shielded Nodes configuration.
- "enabled": True or False, # Whether Shielded Nodes features are enabled on all nodes in this cluster.
+ "resourceLabels": { # The resource labels for the cluster to use to annotate any related
+ # Google Compute Engine resources.
+ "a_key": "A String",
},
- "verticalPodAutoscaling": { # VerticalPodAutoscaling contains global, per-cluster information # Cluster-level Vertical Pod Autoscaling configuration.
- # required by Vertical Pod Autoscaler to automatically adjust
- # the resources of pods controlled by it.
- "enabled": True or False, # Enables vertical pod autoscaling.
- },
- "defaultMaxPodsConstraint": { # Constraints applied to pods. # The default constraint on the maximum number of pods that can be run
- # simultaneously on a node in the node pool of this cluster. Only honored
- # if cluster created with IP Alias support.
- "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
- },
- "network": "A String", # The name of the Google Compute Engine
- # [network](https://cloud.google.com/compute/docs/networks-and-firewalls#networks)
- # to which the cluster is connected. If left unspecified, the `default`
- # network will be used.
- "labelFingerprint": "A String", # The fingerprint of the set of labels for this cluster.
"nodeIpv4CidrSize": 42, # [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.
- "masterAuthorizedNetworksConfig": { # Configuration options for the master authorized networks feature. Enabled # The configuration options for master authorized networks feature.
- # 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.
- "cidrBlocks": [ # cidr_blocks define up to 50 external networks that could access
- # Kubernetes master through HTTPS.
- { # CidrBlock contains an optional name and one CIDR block.
- "displayName": "A String", # display_name is an optional field for users to identify CIDR blocks.
- "cidrBlock": "A String", # cidr_block must be specified in CIDR notation.
- },
- ],
- "enabled": True or False, # Whether or not master authorized networks is enabled.
- },
- "statusMessage": "A String", # [Output only] Additional information about the current status of this
- # cluster, if available.
- "masterAuth": { # The authentication information for accessing the master endpoint. # The authentication information for accessing the master endpoint.
- # If unspecified, the defaults are used:
- # For clusters before v1.12, if master_auth is unspecified, `username` will
- # be set to "admin", a random password will be generated, and a client
- # certificate will be issued.
- # Authentication can be done using HTTP basic auth or using client
- # certificates.
- "password": "A String", # The password to use for HTTP basic authentication to the master endpoint.
- # Because the master endpoint is open to the Internet, you should create a
- # strong password. If a password is provided for cluster creation, username
- # must be non-empty.
- "clientCertificateConfig": { # Configuration for client certificates on the cluster. # Configuration for client certificate authentication on the cluster. For
- # clusters before v1.12, if no configuration is specified, a client
- # certificate is issued.
- "issueClientCertificate": True or False, # Issue a client certificate.
- },
- "clientKey": "A String", # [Output only] Base64-encoded private key used by clients to authenticate
- # to the cluster endpoint.
- "clusterCaCertificate": "A String", # [Output only] Base64-encoded public certificate that is the root of
- # trust for the cluster.
- "clientCertificate": "A String", # [Output only] Base64-encoded public certificate used by clients to
- # authenticate to the cluster endpoint.
- "username": "A String", # The username to use for HTTP basic authentication to the master endpoint.
- # For clusters v1.6.0 and later, basic authentication can be disabled by
- # leaving username unspecified (or setting it to the empty string).
- },
- "authenticatorGroupsConfig": { # Configuration for returning group information from authenticators. # Configuration controlling RBAC group membership information.
- "enabled": True or False, # Whether this cluster should return group membership lookups
- # during authentication using a group of security groups.
- "securityGroup": "A String", # The name of the security group-of-groups to be used. Only relevant
- # if enabled = true.
- },
- "currentMasterVersion": "A String", # [Output only] The current software version of the master endpoint.
- "addonsConfig": { # Configuration for the addons that can be automatically spun up in the # Configurations for the various addons available to run in the cluster.
- # cluster, enabling additional functionality.
- "networkPolicyConfig": { # Configuration for NetworkPolicy. This only tracks whether the addon # Configuration for NetworkPolicy. This only tracks whether the addon
- # is enabled or not on the Master, it does not track whether network policy
- # is enabled for the nodes.
- # is enabled or not on the Master, it does not track whether network policy
- # is enabled for the nodes.
- "disabled": True or False, # Whether NetworkPolicy is enabled for this cluster.
- },
- "cloudRunConfig": { # Configuration options for the Cloud Run feature. # Configuration for the Cloud Run addon, which allows the user to use a
- # managed Knative service.
- "disabled": True or False, # Whether Cloud Run addon is enabled for this cluster.
- },
- "horizontalPodAutoscaling": { # Configuration options for the horizontal pod autoscaling feature, which # Configuration for the horizontal pod autoscaling feature, which
- # increases or decreases the number of replica pods a replication controller
- # has based on the resource usage of the existing pods.
- # increases or decreases the number of replica pods a replication controller
- # has based on the resource usage of the existing pods.
- "disabled": True or False, # Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.
- # When enabled, it ensures that metrics are collected into Stackdriver
- # Monitoring.
- },
- "httpLoadBalancing": { # Configuration options for the HTTP (L7) load balancing controller addon, # Configuration for the HTTP (L7) load balancing controller addon, which
- # makes it easy to set up HTTP load balancers for services in a cluster.
- # which makes it easy to set up HTTP load balancers for services in a cluster.
- "disabled": True or False, # Whether the HTTP Load Balancing controller is enabled in the cluster.
- # When enabled, it runs a small pod in the cluster that manages the load
- # balancers.
- },
- "kubernetesDashboard": { # Configuration for the Kubernetes Dashboard. # Configuration for the Kubernetes Dashboard.
- # This addon is deprecated, and will be disabled in 1.15. It is recommended
- # to use the Cloud Console to manage and monitor your Kubernetes clusters,
- # workloads and applications. For more information, see:
- # https://cloud.google.com/kubernetes-engine/docs/concepts/dashboards
- "disabled": True or False, # Whether the Kubernetes Dashboard is enabled for this cluster.
- },
- },
- "currentNodeVersion": "A String", # [Output only] Deprecated, use
- # [NodePools.version](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.zones.clusters.nodePools)
- # 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.
- "subnetwork": "A String", # The name of the Google Compute Engine
- # [subnetwork](https://cloud.google.com/compute/docs/subnetworks) to which
- # the cluster is connected.
- "resourceLabels": { # The resource labels for the cluster to use to annotate any related
- # Google Compute Engine resources.
- "a_key": "A String",
+ "releaseChannel": { # ReleaseChannel indicates which release channel a cluster is # Release channel configuration.
+ # 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.
+ "channel": "A String", # channel specifies which release channel the cluster is subscribed to.
},
"maintenancePolicy": { # MaintenancePolicy defines the maintenance policy to be used for the cluster. # Configure the maintenance policy for this cluster.
"window": { # MaintenanceWindow defines the maintenance window to be used for the cluster. # Specifies the maintenance window in which maintenance may be performed.
@@ -1642,6 +1585,15 @@
"startTime": "A String", # The time that the window first starts.
},
},
+ "dailyMaintenanceWindow": { # Time window specified for daily maintenance operations. # DailyMaintenanceWindow specifies a daily maintenance operation window.
+ "duration": "A String", # [Output only] Duration of the time window, automatically chosen to be
+ # smallest possible in the given scenario.
+ # Duration will be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
+ # format "PTnHnMnS".
+ "startTime": "A String", # Time within the maintenance window to start the maintenance operations.
+ # Time format should be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
+ # format "HH:MM", where HH : [00-23] and MM : [00-59] GMT.
+ },
"recurringWindow": { # Represents an arbitrary window of time that recurs. # RecurringWindow specifies some number of recurring time periods for
# maintenance to occur. The time windows may be overlapping. If no
# maintenance windows are set, maintenance can occur at any time.
@@ -1678,15 +1630,6 @@
# to specify duration of the window and when it first starts.
# The FREQ values of HOURLY, MINUTELY, and SECONDLY are not supported.
},
- "dailyMaintenanceWindow": { # Time window specified for daily maintenance operations. # DailyMaintenanceWindow specifies a daily maintenance operation window.
- "startTime": "A String", # Time within the maintenance window to start the maintenance operations.
- # Time format should be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
- # format "HH:MM", where HH : [00-23] and MM : [00-59] GMT.
- "duration": "A String", # [Output only] Duration of the time window, automatically chosen to be
- # smallest possible in the given scenario.
- # Duration will be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
- # format "PTnHnMnS".
- },
},
"resourceVersion": "A String", # A hash identifying the version of this policy, so that updates to fields of
# the policy won't accidentally undo intermediate changes (and so that users
@@ -1694,157 +1637,96 @@
# Make a <code>get()</code> request to the cluster to get the current
# resource version and include it with requests to set the policy.
},
- "initialClusterVersion": "A 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.
+ "monitoringService": "A String", # The monitoring service the cluster should use to write metrics.
+ # Currently available options:
#
- # Users may specify either explicit versions offered by
- # Kubernetes Engine or version aliases, which have the following behavior:
+ # * "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.
#
- # - "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
- "ipAllocationPolicy": { # Configuration for controlling how IPs are allocated in the cluster. # Configuration for cluster IP allocation.
- "nodeIpv4Cidr": "A String", # This field is deprecated, use node_ipv4_cidr_block.
- "clusterSecondaryRangeName": "A String", # The name of the secondary range to be used for the cluster CIDR
- # block. The secondary range will be used for pod IP
- # addresses. This must be an existing secondary range associated
- # with the cluster subnetwork.
- #
- # This field is only applicable with use_ip_aliases is true and
- # create_subnetwork is false.
- "clusterIpv4CidrBlock": "A String", # The IP address range for the cluster pod IPs. If this field is set, then
- # `cluster.cluster_ipv4_cidr` must be left blank.
- #
- # This field is only applicable when `use_ip_aliases` is true.
- #
- # Set to blank to have a range chosen with the default size.
- #
- # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
- # netmask.
- #
- # Set to a
- # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
- # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
- # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
- # to use.
- "nodeIpv4CidrBlock": "A String", # The IP address range of the instance IPs in this cluster.
- #
- # This is applicable only if `create_subnetwork` is true.
- #
- # Set to blank to have a range chosen with the default size.
- #
- # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
- # netmask.
- #
- # Set to a
- # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
- # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
- # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
- # to use.
- "tpuIpv4CidrBlock": "A String", # The IP address range of the Cloud TPUs in this cluster. If unspecified, a
- # range will be automatically chosen with the default size.
- #
- # This field is only applicable when `use_ip_aliases` is true.
- #
- # If unspecified, the range will use the default size.
- #
- # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
- # netmask.
- #
- # Set to a
- # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
- # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
- # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
- # to use.
- "useIpAliases": True or False, # Whether alias IPs will be used for pod IPs in the cluster.
- "servicesSecondaryRangeName": "A String", # The name of the secondary range to be used as for the services
- # CIDR block. The secondary range will be used for service
- # ClusterIPs. This must be an existing secondary range associated
- # with the cluster subnetwork.
- #
- # This field is only applicable with use_ip_aliases is true and
- # create_subnetwork is false.
- "createSubnetwork": True or False, # Whether a new subnetwork will be created automatically for the cluster.
- #
- # This field is only applicable when `use_ip_aliases` is true.
- "subnetworkName": "A String", # A custom subnetwork name to be used if `create_subnetwork` is true. If
- # this field is empty, then an automatic name will be chosen for the new
- # subnetwork.
- "clusterIpv4Cidr": "A String", # This field is deprecated, use cluster_ipv4_cidr_block.
- "servicesIpv4Cidr": "A String", # This field is deprecated, use services_ipv4_cidr_block.
- "servicesIpv4CidrBlock": "A String", # The IP address range of the services IPs in this cluster. If blank, a range
- # will be automatically chosen with the default size.
- #
- # This field is only applicable when `use_ip_aliases` is true.
- #
- # Set to blank to have a range chosen with the default size.
- #
- # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
- # netmask.
- #
- # Set to a
- # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
- # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
- # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
- # to use.
+ # If left as an empty string,`monitoring.googleapis.com/kubernetes` will be
+ # used for GKE 1.14+ or `monitoring.googleapis.com` for earlier versions.
+ "binaryAuthorization": { # Configuration for Binary Authorization. # Configuration for Binary Authorization.
+ "enabled": True or False, # Enable Binary Authorization for this cluster. If enabled, all container
+ # images will be validated by Binary Authorization.
},
- "legacyAbac": { # Configuration for the legacy Attribute Based Access Control authorization # Configuration for the legacy ABAC authorization mode.
- # mode.
- "enabled": True or False, # 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.
- },
- "resourceUsageExportConfig": { # Configuration for exporting cluster resource usages. # Configuration for exporting resource usages. Resource usage export is
- # disabled when this config is unspecified.
- "enableNetworkEgressMetering": True or False, # Whether to enable network egress metering for this cluster. If enabled, a
- # daemonset will be created in the cluster to meter network egress traffic.
- "consumptionMeteringConfig": { # Parameters for controlling consumption metering. # Configuration to enable resource consumption metering.
- "enabled": True or False, # Whether to enable consumption metering for this cluster. If enabled, a
- # second BigQuery table will be created to hold resource consumption
- # records.
- },
- "bigqueryDestination": { # Parameters for using BigQuery as the destination of resource usage export. # Configuration to use BigQuery as usage export destination.
- "datasetId": "A String", # The ID of a BigQuery Dataset.
- },
- },
- "enableTpu": True or False, # Enable the ability to use Cloud TPUs in this cluster.
- "locations": [ # The list of Google Compute Engine
- # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
- # cluster's nodes should be located.
+ "expireTime": "A String", # [Output only] The time the cluster will be automatically
+ # deleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "instanceGroupUrls": [ # Deprecated. Use node_pools.instance_group_urls.
"A String",
],
- "nodePools": [ # The node pools associated with this cluster.
- # This field should not be set if "node_config" or "initial_node_count" are
- # specified.
- { # NodePool contains the name and configuration for a cluster's node pool.
- # Node pools are a set of nodes (i.e. VM's), with a common configuration and
- # specification, under the control of the cluster master. They may have a set
- # of Kubernetes labels applied to them, which may be used to reference them
- # during pod scheduling. They may also be resized up or down, to accommodate
- # the workload.
- "statusMessage": "A String", # [Output only] Additional information about the current status of this
- # node pool instance, if available.
- "autoscaling": { # NodePoolAutoscaling contains information required by cluster autoscaler to # Autoscaler configuration for this NodePool. Autoscaler is enabled
- # only if a valid configuration is present.
- # adjust the size of the node pool to the current cluster usage.
- "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be >= min_node_count. There
- # has to enough quota to scale up the cluster.
- "autoprovisioned": True or False, # Can this node pool be deleted automatically.
- "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be >= 1 and <=
- # max_node_count.
- "enabled": True or False, # Is autoscaling enabled for this node pool.
+ "endpoint": "A 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.
+ "shieldedNodes": { # Configuration of Shielded Nodes feature. # Shielded Nodes configuration.
+ "enabled": True or False, # Whether Shielded Nodes features are enabled on all nodes in this cluster.
+ },
+ "masterAuthorizedNetworksConfig": { # Configuration options for the master authorized networks feature. Enabled # The configuration options for master authorized networks feature.
+ # 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.
+ "enabled": True or False, # Whether or not master authorized networks is enabled.
+ "cidrBlocks": [ # cidr_blocks define up to 50 external networks that could access
+ # Kubernetes master through HTTPS.
+ { # CidrBlock contains an optional name and one CIDR block.
+ "displayName": "A String", # display_name is an optional field for users to identify CIDR blocks.
+ "cidrBlock": "A String", # cidr_block must be specified in CIDR notation.
},
- "initialNodeCount": 42, # The initial node count for the pool. You must ensure that your
- # Compute Engine <a href="/compute/docs/resource-quotas">resource quota</a>
- # is sufficient for this number of instances. You must also have available
- # firewall and routes quota.
- "selfLink": "A String", # [Output only] Server-defined URL for the resource.
- "upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Upgrade settings control disruption and speed of the upgrade.
+ ],
+ },
+ "conditions": [ # Which conditions caused the current cluster state.
+ { # StatusCondition describes why a cluster or a node pool has a certain status
+ # (e.g., ERROR or DEGRADED).
+ "message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
+ },
+ ],
+ "network": "A String", # The name of the Google Compute Engine
+ # [network](https://cloud.google.com/compute/docs/networks-and-firewalls#networks)
+ # to which the cluster is connected. If left unspecified, the `default`
+ # network will be used.
+ "status": "A String", # [Output only] The current status of this cluster.
+ "autoscaling": { # ClusterAutoscaling contains global, per-cluster information # Cluster-level autoscaling configuration.
+ # required by Cluster Autoscaler to automatically adjust
+ # the size of the cluster and create/delete
+ # node pools based on the current needs.
+ "resourceLimits": [ # Contains global constraints regarding minimum and maximum
+ # amount of resources in the cluster.
+ { # Contains information about amount of some resource in the cluster.
+ # For memory, value should be in GB.
+ "minimum": "A String", # Minimum amount of the resource in the cluster.
+ "resourceType": "A String", # Resource name "cpu", "memory" or gpu-specific string.
+ "maximum": "A String", # Maximum amount of the resource in the cluster.
+ },
+ ],
+ "autoprovisioningNodePoolDefaults": { # AutoprovisioningNodePoolDefaults contains defaults for a node pool created # AutoprovisioningNodePoolDefaults contains defaults for a node pool
+ # created by NAP.
+ # by NAP.
+ "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs.
+ "management": { # NodeManagement defines the set of node management services turned on for the # Specifies the node management options for NAP created node-pools.
+ # node pool.
+ "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
+ # the Auto Upgrades will proceed.
+ "description": "A String", # [Output only] This field is set when upgrades are about to commence
+ # with the description of the upgrade.
+ "autoUpgradeStartTime": "A String", # [Output only] This field is set when upgrades are about to commence
+ # with the approximate start time for the upgrades, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ },
+ "autoRepair": True or False, # A flag that specifies whether the node auto-repair is enabled for the node
+ # pool. If enabled, the nodes in this node pool will be monitored and, if
+ # they fail health checks too many times, an automatic repair action will be
+ # triggered.
+ "autoUpgrade": True or False, # A flag that specifies whether node auto-upgrade is enabled for the node
+ # pool. If enabled, node auto-upgrade helps keep the nodes in your node pool
+ # up to date with the latest release version of Kubernetes.
+ },
+ "upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Specifies the upgrade settings for NAP created node pools
# disruption caused by an upgrade.
#
# maxUnavailable controls the number of nodes that can be simultaneously
@@ -1873,284 +1755,32 @@
"maxSurge": 42, # The maximum number of nodes that can be created beyond the current size
# of the node pool during the upgrade process.
},
- "locations": [ # The list of Google Compute Engine
- # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
- # NodePool's nodes should be located.
+ "oauthScopes": [ # Scopes that are used by NAP when creating node pools.
"A String",
],
- "instanceGroupUrls": [ # [Output only] The resource URLs of the [managed instance
- # groups](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances)
- # associated with this node pool.
- "A String",
- ],
- "version": "A String", # The version of the Kubernetes of this node.
- "podIpv4CidrSize": 42, # [Output only] The pod CIDR block size per node in this node pool.
- "conditions": [ # Which conditions caused the current node pool state.
- { # StatusCondition describes why a cluster or a node pool has a certain status
- # (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
- "message": "A String", # Human-friendly representation of the condition
- },
- ],
- "status": "A String", # [Output only] The status of the nodes in this pool instance.
- "config": { # Parameters that describe the nodes in a cluster. # The node configuration of the pool.
- "oauthScopes": [ # The set of Google API scopes to be made available on all of the
- # node VMs under the "default" service account.
- #
- # The following scopes are recommended, but not required, and by default are
- # not included:
- #
- # * `https://www.googleapis.com/auth/compute` is required for mounting
- # persistent storage on your nodes.
- # * `https://www.googleapis.com/auth/devstorage.read_only` is required for
- # communicating with **gcr.io**
- # (the [Google Container
- # Registry](https://cloud.google.com/container-registry/)).
- #
- # If unspecified, no scopes are added, unless Cloud Logging or Cloud
- # Monitoring are enabled, in which case their required scopes will be added.
- "A String",
- ],
- "taints": [ # List of kubernetes taints to be applied to each node.
- #
- # For more information, including usage and the valid values, see:
- # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
- { # Kubernetes taint is comprised of three fields: key, value, and effect. Effect
- # can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute.
- #
- # See
- # [here](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration)
- # for more information, including usage and the valid values.
- "effect": "A String", # Effect for taint.
- "value": "A String", # Value for taint.
- "key": "A String", # Key for taint.
- },
- ],
- "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
- # These will added in addition to any default label(s) that
- # Kubernetes may apply to the node.
- # In case of conflict in label keys, the applied set may differ depending on
- # the Kubernetes version -- it's best to assume the behavior is undefined
- # and conflicts should be avoided.
- # For more information, including usage and the valid values, see:
- # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
- "a_key": "A String",
- },
- "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
- # The smallest allowed disk size is 10GB.
- #
- # If unspecified, the default disk size is 100GB.
- "workloadMetadataConfig": { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
- # workloads on the node pool.
- "mode": "A String", # Mode is the configuration for how to expose metadata to workloads running
- # on the node pool.
- },
- "accelerators": [ # A list of hardware accelerators to be attached to each node.
- # See https://cloud.google.com/compute/docs/gpus for more information about
- # support for GPUs.
- { # AcceleratorConfig represents a Hardware Accelerator request.
- "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
- # [here](https://cloud.google.com/compute/docs/gpus)
- "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
- },
- ],
- "machineType": "A String", # The name of a Google Compute Engine [machine
- # type](https://cloud.google.com/compute/docs/machine-types) (e.g.
- # `n1-standard-1`).
- #
- # If unspecified, the default machine type is
- # `n1-standard-1`.
- "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
- #
- # If unspecified, the default disk type is 'pd-standard'
- "shieldedInstanceConfig": { # A set of Shielded Instance options. # Shielded Instance options.
- "enableIntegrityMonitoring": True or False, # Defines whether the instance has integrity monitoring enabled.
- #
- # Enables monitoring and attestation of the boot integrity of the instance.
- # The attestation is performed against the integrity policy baseline. This
- # baseline is initially derived from the implicitly trusted boot image when
- # the instance is created.
- "enableSecureBoot": True or False, # Defines whether the instance has Secure Boot enabled.
- #
- # Secure Boot helps ensure that the system only runs authentic software by
- # verifying the digital signature of all boot components, and halting the
- # boot process if signature verification fails.
- },
- "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
- # scheduled on the specified or newer CPU platform. Applicable values are the
- # friendly names of CPU platforms, such as
- # <code>minCpuPlatform: &quot;Intel Haswell&quot;</code> or
- # <code>minCpuPlatform: &quot;Intel Sandy Bridge&quot;</code>. For more
- # information, read [how to specify min CPU
- # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
- "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
- # https://cloud.google.com/compute/docs/instances/preemptible for more
- # information about preemptible VM instances.
- "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
- #
- # The limit for this value is dependent upon the maximum number of
- # disks available on a machine per zone. See:
- # https://cloud.google.com/compute/docs/disks/local-ssd
- # for more information.
- "sandboxConfig": { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
- "type": "A String", # Type of the sandbox to use for the node.
- },
- "metadata": { # The metadata key/value pairs assigned to instances in the cluster.
- #
- # Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
- # in length. These are reflected as part of a URL in the metadata server.
- # Additionally, to avoid ambiguity, keys must not conflict with any other
- # metadata keys for the project or be one of the reserved keys:
- # "cluster-location"
- # "cluster-name"
- # "cluster-uid"
- # "configure-sh"
- # "containerd-configure-sh"
- # "enable-os-login"
- # "gci-ensure-gke-docker"
- # "gci-metrics-enabled"
- # "gci-update-strategy"
- # "instance-template"
- # "kube-env"
- # "startup-script"
- # "user-data"
- # "disable-address-manager"
- # "windows-startup-script-ps1"
- # "common-psm1"
- # "k8s-node-setup-psm1"
- # "install-ssh-psm1"
- # "user-profile-psm1"
- # "serial-port-logging-enable"
- #
- # Values are free-form strings, and only have meaning as interpreted by
- # the image running in the instance. The only restriction placed on them is
- # that each value's size must be less than or equal to 32 KB.
- #
- # The total size of all keys and values must be less than 512 KB.
- "a_key": "A String",
- },
- "reservationAffinity": { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
- # the specified [Zonal Compute
- # Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
- # to this node pool.
- # is the configuration of desired reservation which instances could take
- # capacity from.
- "values": [ # Corresponds to the label value(s) of reservation resource(s).
- "A String",
- ],
- "consumeReservationType": "A String", # Corresponds to the type of reservation consumption.
- "key": "A String", # Corresponds to the label key of a reservation resource. To target a
- # SPECIFIC_RESERVATION by name, specify "googleapis.com/reservation-name" as
- # the key and specify the name of your reservation as its value.
- },
- "tags": [ # The list of instance tags applied to all nodes. Tags are used to identify
- # valid sources or targets for network firewalls and are specified by
- # the client during cluster or node pool creation. Each tag within the list
- # must comply with RFC1035.
- "A String",
- ],
- "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs.
- # Specify the email address of the Service Account; otherwise, if no Service
- # Account is specified, the "default" service account is used.
- "imageType": "A String", # The image type to use for this node. Note that for a given image type,
- # the latest version of it will be used.
- },
- "maxPodsConstraint": { # Constraints applied to pods. # The constraint on the maximum number of pods that can be run
- # simultaneously on a node in the node pool.
- "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
- },
- "name": "A String", # The name of the node pool.
- "management": { # NodeManagement defines the set of node management services turned on for the # NodeManagement configuration for this NodePool.
- # node pool.
- "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
- # the Auto Upgrades will proceed.
- "autoUpgradeStartTime": "A String", # [Output only] This field is set when upgrades are about to commence
- # with the approximate start time for the upgrades, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
- "description": "A String", # [Output only] This field is set when upgrades are about to commence
- # with the description of the upgrade.
- },
- "autoRepair": True or False, # A flag that specifies whether the node auto-repair is enabled for the node
- # pool. If enabled, the nodes in this node pool will be monitored and, if
- # they fail health checks too many times, an automatic repair action will be
- # triggered.
- "autoUpgrade": True or False, # A flag that specifies whether node auto-upgrade is enabled for the node
- # pool. If enabled, node auto-upgrade helps keep the nodes in your node pool
- # up to date with the latest release version of Kubernetes.
- },
},
- ],
- "selfLink": "A String", # [Output only] Server-defined URL for the resource.
+ "enableNodeAutoprovisioning": True or False, # Enables automatic node pool creation and deletion.
+ "autoprovisioningLocations": [ # The list of Google Compute Engine
+ # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
+ # NodePool's nodes can be created by NAP.
+ "A String",
+ ],
+ },
+ "labelFingerprint": "A String", # The fingerprint of the set of labels for this cluster.
"networkPolicy": { # Configuration options for the NetworkPolicy feature. # Configuration options for the NetworkPolicy feature.
# https://kubernetes.io/docs/concepts/services-networking/networkpolicies/
- "provider": "A String", # The selected network policy provider.
"enabled": True or False, # Whether network policy is enabled on the cluster.
+ "provider": "A String", # The selected network policy provider.
},
- "servicesIpv4Cidr": "A String", # [Output only] The IP address range of the Kubernetes services in
- # this cluster, in
+ "clusterIpv4Cidr": "A String", # The IP address range of the container pods in this cluster, in
# [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
- # notation (e.g. `1.2.3.4/29`). Service addresses are
- # typically put in the last `/16` from the container CIDR.
- "enableKubernetesAlpha": True or False, # Kubernetes alpha features are enabled on this cluster. This includes alpha
- # API groups (e.g. v1alpha1) 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.
- "description": "A String", # An optional description of this cluster.
- "conditions": [ # Which conditions caused the current cluster state.
- { # StatusCondition describes why a cluster or a node pool has a certain status
- # (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
- "message": "A String", # Human-friendly representation of the condition
- },
- ],
- "currentNodeCount": 42, # [Output only] The number of nodes currently in the cluster. Deprecated.
- # Call Kubernetes API directly to retrieve node information.
- "monitoringService": "A 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.
- "databaseEncryption": { # Configuration of etcd encryption. # Configuration of etcd encryption.
- "keyName": "A String", # Name of CloudKMS key to use for the encryption of secrets in etcd.
- # Ex. projects/my-project/locations/global/keyRings/my-ring/cryptoKeys/my-key
- "state": "A String", # Denotes the state of etcd encryption.
+ # 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`.
+ "defaultMaxPodsConstraint": { # Constraints applied to pods. # The default constraint on the maximum number of pods that can be run
+ # simultaneously on a node in the node pool of this cluster. Only honored
+ # if cluster created with IP Alias support.
+ "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
},
- "binaryAuthorization": { # Configuration for Binary Authorization. # Configuration for Binary Authorization.
- "enabled": True or False, # Enable Binary Authorization for this cluster. If enabled, all container
- # images will be validated by Binary Authorization.
- },
- "tpuIpv4CidrBlock": "A String", # [Output only] The IP address range of the Cloud TPUs in this cluster, in
- # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
- # notation (e.g. `1.2.3.4/29`).
- "workloadIdentityConfig": { # Configuration for the use of Kubernetes Service Accounts in GCP IAM # Configuration for the use of Kubernetes Service Accounts in GCP IAM
- # policies.
- # policies.
- "workloadPool": "A String", # The workload pool to attach all Kubernetes service accounts to.
- },
- "zone": "A String", # [Output only] The name of the Google Compute Engine
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
- # cluster resides. This field is deprecated, use location instead.
- "expireTime": "A String", # [Output only] The time the cluster will be automatically
- # deleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
- "loggingService": "A 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.
"nodeConfig": { # Parameters that describe the nodes in a cluster. # Parameters used in creating the cluster's nodes.
# For requests, this field should only be used in lieu of a
# "node_pool" object, since this configuration (along with the
@@ -2162,6 +1792,39 @@
#
# If unspecified, the defaults are used.
# This field is deprecated, use node_pool.config instead.
+ "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
+ #
+ # If unspecified, the default disk type is 'pd-standard'
+ "bootDiskKmsKey": "A String", #
+ # The Customer Managed Encryption Key used to encrypt the boot disk attached
+ # to each node in the node pool. This should be of the form
+ # projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME].
+ # For more information about protecting resources with Cloud KMS Keys please
+ # see:
+ # https://cloud.google.com/compute/docs/disks/customer-managed-encryption
+ "shieldedInstanceConfig": { # A set of Shielded Instance options. # Shielded Instance options.
+ "enableIntegrityMonitoring": True or False, # Defines whether the instance has integrity monitoring enabled.
+ #
+ # Enables monitoring and attestation of the boot integrity of the instance.
+ # The attestation is performed against the integrity policy baseline. This
+ # baseline is initially derived from the implicitly trusted boot image when
+ # the instance is created.
+ "enableSecureBoot": True or False, # Defines whether the instance has Secure Boot enabled.
+ #
+ # Secure Boot helps ensure that the system only runs authentic software by
+ # verifying the digital signature of all boot components, and halting the
+ # boot process if signature verification fails.
+ },
+ "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
+ # These will added in addition to any default label(s) that
+ # Kubernetes may apply to the node.
+ # In case of conflict in label keys, the applied set may differ depending on
+ # the Kubernetes version -- it's best to assume the behavior is undefined
+ # and conflicts should be avoided.
+ # For more information, including usage and the valid values, see:
+ # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
+ "a_key": "A String",
+ },
"oauthScopes": [ # The set of Google API scopes to be made available on all of the
# node VMs under the "default" service account.
#
@@ -2179,6 +1842,19 @@
# Monitoring are enabled, in which case their required scopes will be added.
"A String",
],
+ "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
+ # scheduled on the specified or newer CPU platform. Applicable values are the
+ # friendly names of CPU platforms, such as
+ # <code>minCpuPlatform: &quot;Intel Haswell&quot;</code> or
+ # <code>minCpuPlatform: &quot;Intel Sandy Bridge&quot;</code>. For more
+ # information, read [how to specify min CPU
+ # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
+ "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
+ #
+ # The limit for this value is dependent upon the maximum number of
+ # disks available on a machine per zone. See:
+ # https://cloud.google.com/compute/docs/disks/local-ssd
+ # for more information.
"taints": [ # List of kubernetes taints to be applied to each node.
#
# For more information, including usage and the valid values, see:
@@ -2189,80 +1865,37 @@
# See
# [here](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration)
# for more information, including usage and the valid values.
- "effect": "A String", # Effect for taint.
"value": "A String", # Value for taint.
"key": "A String", # Key for taint.
+ "effect": "A String", # Effect for taint.
},
],
- "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
- # These will added in addition to any default label(s) that
- # Kubernetes may apply to the node.
- # In case of conflict in label keys, the applied set may differ depending on
- # the Kubernetes version -- it's best to assume the behavior is undefined
- # and conflicts should be avoided.
- # For more information, including usage and the valid values, see:
- # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
- "a_key": "A String",
+ "imageType": "A String", # The image type to use for this node. Note that for a given image type,
+ # the latest version of it will be used.
+ "reservationAffinity": { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
+ # the specified [Zonal Compute
+ # Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
+ # to this node pool.
+ # is the configuration of desired reservation which instances could take
+ # capacity from.
+ "consumeReservationType": "A String", # Corresponds to the type of reservation consumption.
+ "key": "A String", # Corresponds to the label key of a reservation resource. To target a
+ # SPECIFIC_RESERVATION by name, specify "googleapis.com/reservation-name" as
+ # the key and specify the name of your reservation as its value.
+ "values": [ # Corresponds to the label value(s) of reservation resource(s).
+ "A String",
+ ],
},
- "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
- # The smallest allowed disk size is 10GB.
- #
- # If unspecified, the default disk size is 100GB.
- "workloadMetadataConfig": { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
- # workloads on the node pool.
- "mode": "A String", # Mode is the configuration for how to expose metadata to workloads running
- # on the node pool.
- },
- "accelerators": [ # A list of hardware accelerators to be attached to each node.
- # See https://cloud.google.com/compute/docs/gpus for more information about
- # support for GPUs.
- { # AcceleratorConfig represents a Hardware Accelerator request.
- "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
- # [here](https://cloud.google.com/compute/docs/gpus)
- "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
- },
- ],
"machineType": "A String", # The name of a Google Compute Engine [machine
# type](https://cloud.google.com/compute/docs/machine-types) (e.g.
# `n1-standard-1`).
#
# If unspecified, the default machine type is
# `n1-standard-1`.
- "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
- #
- # If unspecified, the default disk type is 'pd-standard'
- "shieldedInstanceConfig": { # A set of Shielded Instance options. # Shielded Instance options.
- "enableIntegrityMonitoring": True or False, # Defines whether the instance has integrity monitoring enabled.
- #
- # Enables monitoring and attestation of the boot integrity of the instance.
- # The attestation is performed against the integrity policy baseline. This
- # baseline is initially derived from the implicitly trusted boot image when
- # the instance is created.
- "enableSecureBoot": True or False, # Defines whether the instance has Secure Boot enabled.
- #
- # Secure Boot helps ensure that the system only runs authentic software by
- # verifying the digital signature of all boot components, and halting the
- # boot process if signature verification fails.
- },
- "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
- # scheduled on the specified or newer CPU platform. Applicable values are the
- # friendly names of CPU platforms, such as
- # <code>minCpuPlatform: &quot;Intel Haswell&quot;</code> or
- # <code>minCpuPlatform: &quot;Intel Sandy Bridge&quot;</code>. For more
- # information, read [how to specify min CPU
- # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
- "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
- # https://cloud.google.com/compute/docs/instances/preemptible for more
- # information about preemptible VM instances.
- "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
- #
- # The limit for this value is dependent upon the maximum number of
- # disks available on a machine per zone. See:
- # https://cloud.google.com/compute/docs/disks/local-ssd
- # for more information.
- "sandboxConfig": { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
- "type": "A String", # Type of the sandbox to use for the node.
- },
+ "nodeGroup": "A String", # Setting this field will assign instances of this
+ # pool to run on the specified node group. This is useful for running
+ # workloads on [sole tenant
+ # nodes](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes).
"metadata": { # The metadata key/value pairs assigned to instances in the cluster.
#
# Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
@@ -2297,45 +1930,63 @@
# The total size of all keys and values must be less than 512 KB.
"a_key": "A String",
},
- "reservationAffinity": { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
- # the specified [Zonal Compute
- # Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
- # to this node pool.
- # is the configuration of desired reservation which instances could take
- # capacity from.
- "values": [ # Corresponds to the label value(s) of reservation resource(s).
- "A String",
- ],
- "consumeReservationType": "A String", # Corresponds to the type of reservation consumption.
- "key": "A String", # Corresponds to the label key of a reservation resource. To target a
- # SPECIFIC_RESERVATION by name, specify "googleapis.com/reservation-name" as
- # the key and specify the name of your reservation as its value.
- },
"tags": [ # The list of instance tags applied to all nodes. Tags are used to identify
# valid sources or targets for network firewalls and are specified by
# the client during cluster or node pool creation. Each tag within the list
# must comply with RFC1035.
"A String",
],
+ "sandboxConfig": { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
+ "type": "A String", # Type of the sandbox to use for the node.
+ },
+ "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
+ # https://cloud.google.com/compute/docs/instances/preemptible for more
+ # information about preemptible VM instances.
+ "workloadMetadataConfig": { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
+ # workloads on the node pool.
+ "mode": "A String", # Mode is the configuration for how to expose metadata to workloads running
+ # on the node pool.
+ },
+ "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
+ # The smallest allowed disk size is 10GB.
+ #
+ # If unspecified, the default disk size is 100GB.
"serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs.
# Specify the email address of the Service Account; otherwise, if no Service
# Account is specified, the "default" service account is used.
- "imageType": "A String", # The image type to use for this node. Note that for a given image type,
- # the latest version of it will be used.
+ "accelerators": [ # A list of hardware accelerators to be attached to each node.
+ # See https://cloud.google.com/compute/docs/gpus for more information about
+ # support for GPUs.
+ { # AcceleratorConfig represents a Hardware Accelerator request.
+ "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
+ # [here](https://cloud.google.com/compute/docs/gpus)
+ "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
+ },
+ ],
},
- "status": "A String", # [Output only] The current status of this cluster.
- "networkConfig": { # NetworkConfig reports the relative names of network & subnetwork. # Configuration for cluster networking.
- "enableIntraNodeVisibility": True or False, # Whether Intra-node visibility is enabled for this cluster.
- # This makes same node pod to pod traffic visible for VPC network.
- "subnetwork": "A String", # Output only. The relative name of the Google Compute Engine
- # [subnetwork](https://cloud.google.com/compute/docs/vpc) to which the
- # cluster is connected. Example:
- # projects/my-project/regions/us-central1/subnetworks/my-subnet
- "network": "A String", # Output only. The relative name of the Google Compute Engine
- # network(https://cloud.google.com/compute/docs/networks-and-firewalls#networks)
- # to which the cluster is connected. Example:
- # projects/my-project/global/networks/my-network
+ "resourceUsageExportConfig": { # Configuration for exporting cluster resource usages. # Configuration for exporting resource usages. Resource usage export is
+ # disabled when this config is unspecified.
+ "enableNetworkEgressMetering": True or False, # Whether to enable network egress metering for this cluster. If enabled, a
+ # daemonset will be created in the cluster to meter network egress traffic.
+ "bigqueryDestination": { # Parameters for using BigQuery as the destination of resource usage export. # Configuration to use BigQuery as usage export destination.
+ "datasetId": "A String", # The ID of a BigQuery Dataset.
+ },
+ "consumptionMeteringConfig": { # Parameters for controlling consumption metering. # Configuration to enable resource consumption metering.
+ "enabled": True or False, # Whether to enable consumption metering for this cluster. If enabled, a
+ # second BigQuery table will be created to hold resource consumption
+ # records.
+ },
},
+ "initialNodeCount": 42, # The number of nodes to create in this cluster. You must ensure that your
+ # Compute Engine [resource quota](https://cloud.google.com/compute/quotas)
+ # 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.
"name": "A 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:
@@ -2343,17 +1994,428 @@
# * Lowercase letters, numbers, and hyphens only.
# * Must start with a letter.
# * Must end with a number or a letter.
- "endpoint": "A 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/`.
+ "workloadIdentityConfig": { # Configuration for the use of Kubernetes Service Accounts in GCP IAM # Configuration for the use of Kubernetes Service Accounts in GCP IAM
+ # policies.
+ # policies.
+ "workloadPool": "A String", # The workload pool to attach all Kubernetes service accounts to.
+ },
+ "networkConfig": { # NetworkConfig reports the relative names of network & subnetwork. # Configuration for cluster networking.
+ "network": "A String", # Output only. The relative name of the Google Compute Engine
+ # network(https://cloud.google.com/compute/docs/networks-and-firewalls#networks)
+ # to which the cluster is connected. Example:
+ # projects/my-project/global/networks/my-network
+ "enableIntraNodeVisibility": True or False, # Whether Intra-node visibility is enabled for this cluster.
+ # This makes same node pod to pod traffic visible for VPC network.
+ "subnetwork": "A String", # Output only. The relative name of the Google Compute Engine
+ # [subnetwork](https://cloud.google.com/compute/docs/vpc) to which the
+ # cluster is connected. Example:
+ # projects/my-project/regions/us-central1/subnetworks/my-subnet
+ },
+ "databaseEncryption": { # Configuration of etcd encryption. # Configuration of etcd encryption.
+ "state": "A String", # Denotes the state of etcd encryption.
+ "keyName": "A String", # Name of CloudKMS key to use for the encryption of secrets in etcd.
+ # Ex. projects/my-project/locations/global/keyRings/my-ring/cryptoKeys/my-key
+ },
+ "privateClusterConfig": { # Configuration options for private clusters. # Configuration for private cluster.
+ "privateEndpoint": "A String", # Output only. The internal IP address of this cluster's master endpoint.
+ "peeringName": "A String", # Output only. The peering name in the customer VPC used by this cluster.
+ "enablePrivateNodes": True or False, # Whether nodes have internal IP addresses only. If enabled, all nodes are
+ # given only RFC 1918 private addresses and communicate with the master via
+ # private networking.
+ "publicEndpoint": "A String", # Output only. The external IP address of this cluster's master endpoint.
+ "enablePrivateEndpoint": True or False, # Whether the master's internal IP address is used as the cluster endpoint.
+ "masterIpv4CidrBlock": "A String", # The IP range in CIDR notation to use for the hosted master network. This
+ # range will be used for assigning internal IP addresses to the master or
+ # set of masters, as well as the ILB VIP. This range must not overlap with
+ # any other ranges in use within the cluster's network.
+ },
+ "createTime": "A String", # [Output only] The time the cluster was created, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "nodePools": [ # The node pools associated with this cluster.
+ # This field should not be set if "node_config" or "initial_node_count" are
+ # specified.
+ { # NodePool contains the name and configuration for a cluster's node pool.
+ # Node pools are a set of nodes (i.e. VM's), with a common configuration and
+ # specification, under the control of the cluster master. They may have a set
+ # of Kubernetes labels applied to them, which may be used to reference them
+ # during pod scheduling. They may also be resized up or down, to accommodate
+ # the workload.
+ "selfLink": "A String", # [Output only] Server-defined URL for the resource.
+ "management": { # NodeManagement defines the set of node management services turned on for the # NodeManagement configuration for this NodePool.
+ # node pool.
+ "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
+ # the Auto Upgrades will proceed.
+ "description": "A String", # [Output only] This field is set when upgrades are about to commence
+ # with the description of the upgrade.
+ "autoUpgradeStartTime": "A String", # [Output only] This field is set when upgrades are about to commence
+ # with the approximate start time for the upgrades, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ },
+ "autoRepair": True or False, # A flag that specifies whether the node auto-repair is enabled for the node
+ # pool. If enabled, the nodes in this node pool will be monitored and, if
+ # they fail health checks too many times, an automatic repair action will be
+ # triggered.
+ "autoUpgrade": True or False, # A flag that specifies whether node auto-upgrade is enabled for the node
+ # pool. If enabled, node auto-upgrade helps keep the nodes in your node pool
+ # up to date with the latest release version of Kubernetes.
+ },
+ "upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Upgrade settings control disruption and speed of the upgrade.
+ # disruption caused by an upgrade.
+ #
+ # maxUnavailable controls the number of nodes that can be simultaneously
+ # unavailable.
+ #
+ # maxSurge controls the number of additional nodes that can be added to the
+ # node pool temporarily for the time of the upgrade to increase the number of
+ # available nodes.
+ #
+ # (maxUnavailable + maxSurge) determines the level of parallelism (how many
+ # nodes are being upgraded at the same time).
+ #
+ # Note: upgrades inevitably introduce some disruption since workloads need to
+ # be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
+ # this holds true. (Disruption stays within the limits of
+ # PodDisruptionBudget, if it is configured.)
+ #
+ # Consider a hypothetical node pool with 5 nodes having maxSurge=2,
+ # maxUnavailable=1. This means the upgrade process upgrades 3 nodes
+ # simultaneously. It creates 2 additional (upgraded) nodes, then it brings
+ # down 3 old (not yet upgraded) nodes at the same time. This ensures that
+ # there are always at least 4 nodes available.
+ "maxUnavailable": 42, # The maximum number of nodes that can be simultaneously unavailable during
+ # the upgrade process. A node is considered available if its status is
+ # Ready.
+ "maxSurge": 42, # The maximum number of nodes that can be created beyond the current size
+ # of the node pool during the upgrade process.
+ },
+ "initialNodeCount": 42, # The initial node count for the pool. You must ensure that your
+ # Compute Engine [resource quota](https://cloud.google.com/compute/quotas)
+ # is sufficient for this number of instances. You must also have available
+ # firewall and routes quota.
+ "statusMessage": "A String", # [Output only] Additional information about the current status of this
+ # node pool instance, if available.
+ "version": "A String", # The version of the Kubernetes of this node.
+ "conditions": [ # Which conditions caused the current node pool state.
+ { # StatusCondition describes why a cluster or a node pool has a certain status
+ # (e.g., ERROR or DEGRADED).
+ "message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
+ },
+ ],
+ "config": { # Parameters that describe the nodes in a cluster. # The node configuration of the pool.
+ "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
+ #
+ # If unspecified, the default disk type is 'pd-standard'
+ "bootDiskKmsKey": "A String", #
+ # The Customer Managed Encryption Key used to encrypt the boot disk attached
+ # to each node in the node pool. This should be of the form
+ # projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME].
+ # For more information about protecting resources with Cloud KMS Keys please
+ # see:
+ # https://cloud.google.com/compute/docs/disks/customer-managed-encryption
+ "shieldedInstanceConfig": { # A set of Shielded Instance options. # Shielded Instance options.
+ "enableIntegrityMonitoring": True or False, # Defines whether the instance has integrity monitoring enabled.
+ #
+ # Enables monitoring and attestation of the boot integrity of the instance.
+ # The attestation is performed against the integrity policy baseline. This
+ # baseline is initially derived from the implicitly trusted boot image when
+ # the instance is created.
+ "enableSecureBoot": True or False, # Defines whether the instance has Secure Boot enabled.
+ #
+ # Secure Boot helps ensure that the system only runs authentic software by
+ # verifying the digital signature of all boot components, and halting the
+ # boot process if signature verification fails.
+ },
+ "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
+ # These will added in addition to any default label(s) that
+ # Kubernetes may apply to the node.
+ # In case of conflict in label keys, the applied set may differ depending on
+ # the Kubernetes version -- it's best to assume the behavior is undefined
+ # and conflicts should be avoided.
+ # For more information, including usage and the valid values, see:
+ # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
+ "a_key": "A String",
+ },
+ "oauthScopes": [ # The set of Google API scopes to be made available on all of the
+ # node VMs under the "default" service account.
+ #
+ # The following scopes are recommended, but not required, and by default are
+ # not included:
+ #
+ # * `https://www.googleapis.com/auth/compute` is required for mounting
+ # persistent storage on your nodes.
+ # * `https://www.googleapis.com/auth/devstorage.read_only` is required for
+ # communicating with **gcr.io**
+ # (the [Google Container
+ # Registry](https://cloud.google.com/container-registry/)).
+ #
+ # If unspecified, no scopes are added, unless Cloud Logging or Cloud
+ # Monitoring are enabled, in which case their required scopes will be added.
+ "A String",
+ ],
+ "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
+ # scheduled on the specified or newer CPU platform. Applicable values are the
+ # friendly names of CPU platforms, such as
+ # <code>minCpuPlatform: &quot;Intel Haswell&quot;</code> or
+ # <code>minCpuPlatform: &quot;Intel Sandy Bridge&quot;</code>. For more
+ # information, read [how to specify min CPU
+ # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
+ "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
+ #
+ # The limit for this value is dependent upon the maximum number of
+ # disks available on a machine per zone. See:
+ # https://cloud.google.com/compute/docs/disks/local-ssd
+ # for more information.
+ "taints": [ # List of kubernetes taints to be applied to each node.
+ #
+ # For more information, including usage and the valid values, see:
+ # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
+ { # Kubernetes taint is comprised of three fields: key, value, and effect. Effect
+ # can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute.
+ #
+ # See
+ # [here](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration)
+ # for more information, including usage and the valid values.
+ "value": "A String", # Value for taint.
+ "key": "A String", # Key for taint.
+ "effect": "A String", # Effect for taint.
+ },
+ ],
+ "imageType": "A String", # The image type to use for this node. Note that for a given image type,
+ # the latest version of it will be used.
+ "reservationAffinity": { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
+ # the specified [Zonal Compute
+ # Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
+ # to this node pool.
+ # is the configuration of desired reservation which instances could take
+ # capacity from.
+ "consumeReservationType": "A String", # Corresponds to the type of reservation consumption.
+ "key": "A String", # Corresponds to the label key of a reservation resource. To target a
+ # SPECIFIC_RESERVATION by name, specify "googleapis.com/reservation-name" as
+ # the key and specify the name of your reservation as its value.
+ "values": [ # Corresponds to the label value(s) of reservation resource(s).
+ "A String",
+ ],
+ },
+ "machineType": "A String", # The name of a Google Compute Engine [machine
+ # type](https://cloud.google.com/compute/docs/machine-types) (e.g.
+ # `n1-standard-1`).
+ #
+ # If unspecified, the default machine type is
+ # `n1-standard-1`.
+ "nodeGroup": "A String", # Setting this field will assign instances of this
+ # pool to run on the specified node group. This is useful for running
+ # workloads on [sole tenant
+ # nodes](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes).
+ "metadata": { # The metadata key/value pairs assigned to instances in the cluster.
+ #
+ # Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
+ # in length. These are reflected as part of a URL in the metadata server.
+ # Additionally, to avoid ambiguity, keys must not conflict with any other
+ # metadata keys for the project or be one of the reserved keys:
+ # "cluster-location"
+ # "cluster-name"
+ # "cluster-uid"
+ # "configure-sh"
+ # "containerd-configure-sh"
+ # "enable-os-login"
+ # "gci-ensure-gke-docker"
+ # "gci-metrics-enabled"
+ # "gci-update-strategy"
+ # "instance-template"
+ # "kube-env"
+ # "startup-script"
+ # "user-data"
+ # "disable-address-manager"
+ # "windows-startup-script-ps1"
+ # "common-psm1"
+ # "k8s-node-setup-psm1"
+ # "install-ssh-psm1"
+ # "user-profile-psm1"
+ # "serial-port-logging-enable"
+ #
+ # Values are free-form strings, and only have meaning as interpreted by
+ # the image running in the instance. The only restriction placed on them is
+ # that each value's size must be less than or equal to 32 KB.
+ #
+ # The total size of all keys and values must be less than 512 KB.
+ "a_key": "A String",
+ },
+ "tags": [ # The list of instance tags applied to all nodes. Tags are used to identify
+ # valid sources or targets for network firewalls and are specified by
+ # the client during cluster or node pool creation. Each tag within the list
+ # must comply with RFC1035.
+ "A String",
+ ],
+ "sandboxConfig": { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
+ "type": "A String", # Type of the sandbox to use for the node.
+ },
+ "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
+ # https://cloud.google.com/compute/docs/instances/preemptible for more
+ # information about preemptible VM instances.
+ "workloadMetadataConfig": { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
+ # workloads on the node pool.
+ "mode": "A String", # Mode is the configuration for how to expose metadata to workloads running
+ # on the node pool.
+ },
+ "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
+ # The smallest allowed disk size is 10GB.
+ #
+ # If unspecified, the default disk size is 100GB.
+ "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs.
+ # Specify the email address of the Service Account; otherwise, if no Service
+ # Account is specified, the "default" service account is used.
+ "accelerators": [ # A list of hardware accelerators to be attached to each node.
+ # See https://cloud.google.com/compute/docs/gpus for more information about
+ # support for GPUs.
+ { # AcceleratorConfig represents a Hardware Accelerator request.
+ "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
+ # [here](https://cloud.google.com/compute/docs/gpus)
+ "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
+ },
+ ],
+ },
+ "name": "A String", # The name of the node pool.
+ "maxPodsConstraint": { # Constraints applied to pods. # The constraint on the maximum number of pods that can be run
+ # simultaneously on a node in the node pool.
+ "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
+ },
+ "autoscaling": { # NodePoolAutoscaling contains information required by cluster autoscaler to # Autoscaler configuration for this NodePool. Autoscaler is enabled
+ # only if a valid configuration is present.
+ # adjust the size of the node pool to the current cluster usage.
+ "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be >= 1 and <=
+ # max_node_count.
+ "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be >= min_node_count. There
+ # has to enough quota to scale up the cluster.
+ "enabled": True or False, # Is autoscaling enabled for this node pool.
+ "autoprovisioned": True or False, # Can this node pool be deleted automatically.
+ },
+ "podIpv4CidrSize": 42, # [Output only] The pod CIDR block size per node in this node pool.
+ "instanceGroupUrls": [ # [Output only] The resource URLs of the [managed instance
+ # groups](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances)
+ # associated with this node pool.
+ "A String",
+ ],
+ "status": "A String", # [Output only] The status of the nodes in this pool instance.
+ "locations": [ # The list of Google Compute Engine
+ # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
+ # NodePool's nodes should be located.
+ "A String",
+ ],
+ },
+ ],
+ "subnetwork": "A String", # The name of the Google Compute Engine
+ # [subnetwork](https://cloud.google.com/compute/docs/subnetworks) to which
+ # the cluster is connected.
+ "addonsConfig": { # Configuration for the addons that can be automatically spun up in the # Configurations for the various addons available to run in the cluster.
+ # cluster, enabling additional functionality.
+ "kubernetesDashboard": { # Configuration for the Kubernetes Dashboard. # Configuration for the Kubernetes Dashboard.
+ # This addon is deprecated, and will be disabled in 1.15. It is recommended
+ # to use the Cloud Console to manage and monitor your Kubernetes clusters,
+ # workloads and applications. For more information, see:
+ # https://cloud.google.com/kubernetes-engine/docs/concepts/dashboards
+ "disabled": True or False, # Whether the Kubernetes Dashboard is enabled for this cluster.
+ },
+ "cloudRunConfig": { # Configuration options for the Cloud Run feature. # Configuration for the Cloud Run addon, which allows the user to use a
+ # managed Knative service.
+ "disabled": True or False, # Whether Cloud Run addon is enabled for this cluster.
+ },
+ "httpLoadBalancing": { # Configuration options for the HTTP (L7) load balancing controller addon, # Configuration for the HTTP (L7) load balancing controller addon, which
+ # makes it easy to set up HTTP load balancers for services in a cluster.
+ # which makes it easy to set up HTTP load balancers for services in a cluster.
+ "disabled": True or False, # Whether the HTTP Load Balancing controller is enabled in the cluster.
+ # When enabled, it runs a small pod in the cluster that manages the load
+ # balancers.
+ },
+ "horizontalPodAutoscaling": { # Configuration options for the horizontal pod autoscaling feature, which # Configuration for the horizontal pod autoscaling feature, which
+ # increases or decreases the number of replica pods a replication controller
+ # has based on the resource usage of the existing pods.
+ # increases or decreases the number of replica pods a replication controller
+ # has based on the resource usage of the existing pods.
+ "disabled": True or False, # Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.
+ # When enabled, it ensures that metrics are collected into Stackdriver
+ # Monitoring.
+ },
+ "dnsCacheConfig": { # Configuration for NodeLocal DNSCache # Configuration for NodeLocalDNS, a dns cache running on cluster nodes
+ "enabled": True or False, # Whether NodeLocal DNSCache is enabled for this cluster.
+ },
+ "networkPolicyConfig": { # Configuration for NetworkPolicy. This only tracks whether the addon # Configuration for NetworkPolicy. This only tracks whether the addon
+ # is enabled or not on the Master, it does not track whether network policy
+ # is enabled for the nodes.
+ # is enabled or not on the Master, it does not track whether network policy
+ # is enabled for the nodes.
+ "disabled": True or False, # Whether NetworkPolicy is enabled for this cluster.
+ },
+ },
+ "masterAuth": { # The authentication information for accessing the master endpoint. # The authentication information for accessing the master endpoint.
+ # If unspecified, the defaults are used:
+ # For clusters before v1.12, if master_auth is unspecified, `username` will
+ # be set to "admin", a random password will be generated, and a client
+ # certificate will be issued.
+ # Authentication can be done using HTTP basic auth or using client
+ # certificates.
+ "clientKey": "A String", # [Output only] Base64-encoded private key used by clients to authenticate
+ # to the cluster endpoint.
+ "clientCertificate": "A String", # [Output only] Base64-encoded public certificate used by clients to
+ # authenticate to the cluster endpoint.
+ "username": "A String", # The username to use for HTTP basic authentication to the master endpoint.
+ # For clusters v1.6.0 and later, basic authentication can be disabled by
+ # leaving username unspecified (or setting it to the empty string).
+ "password": "A String", # The password to use for HTTP basic authentication to the master endpoint.
+ # Because the master endpoint is open to the Internet, you should create a
+ # strong password. If a password is provided for cluster creation, username
+ # must be non-empty.
+ "clientCertificateConfig": { # Configuration for client certificates on the cluster. # Configuration for client certificate authentication on the cluster. For
+ # clusters before v1.12, if no configuration is specified, a client
+ # certificate is issued.
+ "issueClientCertificate": True or False, # Issue a client certificate.
+ },
+ "clusterCaCertificate": "A String", # [Output only] Base64-encoded public certificate that is the root of
+ # trust for the cluster.
+ },
+ "verticalPodAutoscaling": { # VerticalPodAutoscaling contains global, per-cluster information # Cluster-level Vertical Pod Autoscaling configuration.
+ # required by Vertical Pod Autoscaler to automatically adjust
+ # the resources of pods controlled by it.
+ "enabled": True or False, # Enables vertical pod autoscaling.
+ },
+ "enableTpu": True or False, # Enable the ability to use Cloud TPUs in this cluster.
+ "initialClusterVersion": "A 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.
#
- # See the `masterAuth` property of this resource for username and
- # password information.
+ # 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
+ "currentNodeCount": 42, # [Output only] The number of nodes currently in the cluster. Deprecated.
+ # Call Kubernetes API directly to retrieve node information.
+ "tpuIpv4CidrBlock": "A String", # [Output only] The IP address range of the Cloud TPUs in this cluster, in
+ # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ # notation (e.g. `1.2.3.4/29`).
+ "locations": [ # The list of Google Compute Engine
+ # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
+ # cluster's nodes should be located.
+ "A String",
+ ],
+ "selfLink": "A String", # [Output only] Server-defined URL for the resource.
+ "description": "A String", # An optional description of this cluster.
+ "statusMessage": "A String", # [Output only] Additional information about the current status of this
+ # cluster, if available.
"location": "A String", # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
+ "servicesIpv4Cidr": "A String", # [Output only] The IP address range of the Kubernetes services in
+ # this cluster, in
+ # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ # notation (e.g. `1.2.3.4/29`). Service addresses are
+ # typically put in the last `/16` from the container CIDR.
}</pre>
</div>
@@ -2376,31 +2438,31 @@
An object of the form:
{ # GetJSONWebKeysResponse is a valid JSON Web Key Set as specififed in rfc 7517
- "cacheHeader": { # RFC-2616: cache control support # OnePlatform automatically extracts this field and uses it to set the HTTP
- # Cache-Control header.
- "directive": "A String", # 14.9 request and response directives
- "age": "A String", # 14.6 response cache age, in seconds since the response is generated
- "expires": "A String", # 14.21 response cache expires, in RFC 1123 date format
- },
"keys": [ # The public component of the keys used by the cluster to sign token
# requests.
{ # Jwk is a JSON Web Key as specified in RFC 7517
+ "alg": "A String", # Algorithm.
+ "y": "A String", # Used for ECDSA keys.
+ "use": "A String", # Permitted uses for the public keys.
+ "e": "A String", # Used for RSA keys.
+ "kid": "A String", # Key ID.
"x": "A String", # Used for ECDSA keys.
"crv": "A String", # Used for ECDSA keys.
- "kid": "A String", # Key ID.
- "kty": "A String", # Key Type.
- "e": "A String", # Used for RSA keys.
"n": "A String", # Used for RSA keys.
- "alg": "A String", # Algorithm.
- "use": "A String", # Permitted uses for the public keys.
- "y": "A String", # Used for ECDSA keys.
+ "kty": "A String", # Key Type.
},
],
+ "cacheHeader": { # RFC-2616: cache control support # OnePlatform automatically extracts this field and uses it to set the HTTP
+ # Cache-Control header.
+ "expires": "A String", # 14.21 response cache expires, in RFC 1123 date format
+ "directive": "A String", # 14.9 request and response directives
+ "age": "A String", # 14.6 response cache age, in seconds since the response is generated
+ },
}</pre>
</div>
<div class="method">
- <code class="details" id="list">list(parent, projectId=None, zone=None, x__xgafv=None)</code>
+ <code class="details" id="list">list(parent, zone=None, projectId=None, x__xgafv=None)</code>
<pre>Lists all clusters owned by a project in either the specified zone or all
zones.
@@ -2408,13 +2470,13 @@
parent: string, The parent (project and location) where the clusters will be listed.
Specified in the format `projects/*/locations/*`.
Location "-" matches all zones and all regions. (required)
- projectId: string, Deprecated. The Google Developers Console [project ID or project
-number](https://support.google.com/cloud/answer/6158840).
-This field has been deprecated and replaced by the parent field.
zone: string, Deprecated. The name of the Google Compute Engine
[zone](https://cloud.google.com/compute/docs/zones#available) in which the
cluster resides, or "-" for all zones. This field has been deprecated and
replaced by the parent field.
+ projectId: string, Deprecated. The Google Developers Console [project ID or project
+number](https://support.google.com/cloud/answer/6158840).
+This field has been deprecated and replaced by the parent field.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -2427,233 +2489,145 @@
"clusters": [ # A list of clusters in the project in the specified zone, or
# across all ones.
{ # A Google Kubernetes Engine cluster.
- "createTime": "A String", # [Output only] The time the cluster was created, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
- "clusterIpv4Cidr": "A String", # The IP address range of the container pods in this cluster, in
- # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
- # 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`.
- "autoscaling": { # ClusterAutoscaling contains global, per-cluster information # Cluster-level autoscaling configuration.
- # required by Cluster Autoscaler to automatically adjust
- # the size of the cluster and create/delete
- # node pools based on the current needs.
- "autoprovisioningLocations": [ # The list of Google Compute Engine
- # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
- # NodePool's nodes can be created by NAP.
- "A String",
- ],
- "resourceLimits": [ # Contains global constraints regarding minimum and maximum
- # amount of resources in the cluster.
- { # Contains information about amount of some resource in the cluster.
- # For memory, value should be in GB.
- "minimum": "A String", # Minimum amount of the resource in the cluster.
- "maximum": "A String", # Maximum amount of the resource in the cluster.
- "resourceType": "A String", # Resource name "cpu", "memory" or gpu-specific string.
- },
- ],
- "enableNodeAutoprovisioning": True or False, # Enables automatic node pool creation and deletion.
- "autoprovisioningNodePoolDefaults": { # AutoprovisioningNodePoolDefaults contains defaults for a node pool created # AutoprovisioningNodePoolDefaults contains defaults for a node pool
- # created by NAP.
- # by NAP.
- "management": { # NodeManagement defines the set of node management services turned on for the # Specifies the node management options for NAP created node-pools.
- # node pool.
- "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
- # the Auto Upgrades will proceed.
- "autoUpgradeStartTime": "A String", # [Output only] This field is set when upgrades are about to commence
- # with the approximate start time for the upgrades, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
- "description": "A String", # [Output only] This field is set when upgrades are about to commence
- # with the description of the upgrade.
- },
- "autoRepair": True or False, # A flag that specifies whether the node auto-repair is enabled for the node
- # pool. If enabled, the nodes in this node pool will be monitored and, if
- # they fail health checks too many times, an automatic repair action will be
- # triggered.
- "autoUpgrade": True or False, # A flag that specifies whether node auto-upgrade is enabled for the node
- # pool. If enabled, node auto-upgrade helps keep the nodes in your node pool
- # up to date with the latest release version of Kubernetes.
- },
- "oauthScopes": [ # Scopes that are used by NAP when creating node pools. If oauth_scopes are
- # specified, service_account should be empty.
- "A String",
- ],
- "upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Specifies the upgrade settings for NAP created node pools
- # disruption caused by an upgrade.
- #
- # maxUnavailable controls the number of nodes that can be simultaneously
- # unavailable.
- #
- # maxSurge controls the number of additional nodes that can be added to the
- # node pool temporarily for the time of the upgrade to increase the number of
- # available nodes.
- #
- # (maxUnavailable + maxSurge) determines the level of parallelism (how many
- # nodes are being upgraded at the same time).
- #
- # Note: upgrades inevitably introduce some disruption since workloads need to
- # be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
- # this holds true. (Disruption stays within the limits of
- # PodDisruptionBudget, if it is configured.)
- #
- # Consider a hypothetical node pool with 5 nodes having maxSurge=2,
- # maxUnavailable=1. This means the upgrade process upgrades 3 nodes
- # simultaneously. It creates 2 additional (upgraded) nodes, then it brings
- # down 3 old (not yet upgraded) nodes at the same time. This ensures that
- # there are always at least 4 nodes available.
- "maxUnavailable": 42, # The maximum number of nodes that can be simultaneously unavailable during
- # the upgrade process. A node is considered available if its status is
- # Ready.
- "maxSurge": 42, # The maximum number of nodes that can be created beyond the current size
- # of the node pool during the upgrade process.
- },
- "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs. If
- # service_account is specified, scopes should be empty.
- },
+ "currentMasterVersion": "A String", # [Output only] The current software version of the master endpoint.
+ "currentNodeVersion": "A String", # [Output only] Deprecated, use
+ # [NodePools.version](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters.nodePools)
+ # 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.
+ "authenticatorGroupsConfig": { # Configuration for returning group information from authenticators. # Configuration controlling RBAC group membership information.
+ "securityGroup": "A String", # The name of the security group-of-groups to be used. Only relevant
+ # if enabled = true.
+ "enabled": True or False, # Whether this cluster should return group membership lookups
+ # during authentication using a group of security groups.
},
- "initialNodeCount": 42, # The number of nodes to create in this cluster. You must ensure that your
- # Compute Engine <a href="/compute/docs/resource-quotas">resource quota</a>
- # 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.
+ "enableKubernetesAlpha": True or False, # Kubernetes alpha features are enabled on this cluster. This includes alpha
+ # API groups (e.g. v1alpha1) 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.
+ "ipAllocationPolicy": { # Configuration for controlling how IPs are allocated in the cluster. # Configuration for cluster IP allocation.
+ "servicesSecondaryRangeName": "A String", # The name of the secondary range to be used as for the services
+ # CIDR block. The secondary range will be used for service
+ # ClusterIPs. This must be an existing secondary range associated
+ # with the cluster subnetwork.
+ #
+ # This field is only applicable with use_ip_aliases is true and
+ # create_subnetwork is false.
+ "subnetworkName": "A String", # A custom subnetwork name to be used if `create_subnetwork` is true. If
+ # this field is empty, then an automatic name will be chosen for the new
+ # subnetwork.
+ "nodeIpv4Cidr": "A String", # This field is deprecated, use node_ipv4_cidr_block.
+ "servicesIpv4CidrBlock": "A String", # The IP address range of the services IPs in this cluster. If blank, a range
+ # will be automatically chosen with the default size.
+ #
+ # This field is only applicable when `use_ip_aliases` is true.
+ #
+ # Set to blank to have a range chosen with the default size.
+ #
+ # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
+ # netmask.
+ #
+ # Set to a
+ # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
+ # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
+ # to use.
+ "servicesIpv4Cidr": "A String", # This field is deprecated, use services_ipv4_cidr_block.
+ "clusterSecondaryRangeName": "A String", # The name of the secondary range to be used for the cluster CIDR
+ # block. The secondary range will be used for pod IP
+ # addresses. This must be an existing secondary range associated
+ # with the cluster subnetwork.
+ #
+ # This field is only applicable with use_ip_aliases is true and
+ # create_subnetwork is false.
+ "tpuIpv4CidrBlock": "A String", # The IP address range of the Cloud TPUs in this cluster. If unspecified, a
+ # range will be automatically chosen with the default size.
+ #
+ # This field is only applicable when `use_ip_aliases` is true.
+ #
+ # If unspecified, the range will use the default size.
+ #
+ # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
+ # netmask.
+ #
+ # Set to a
+ # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
+ # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
+ # to use.
+ "nodeIpv4CidrBlock": "A String", # The IP address range of the instance IPs in this cluster.
+ #
+ # This is applicable only if `create_subnetwork` is true.
+ #
+ # Set to blank to have a range chosen with the default size.
+ #
+ # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
+ # netmask.
+ #
+ # Set to a
+ # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
+ # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
+ # to use.
+ "useIpAliases": True or False, # Whether alias IPs will be used for pod IPs in the cluster.
+ "createSubnetwork": True or False, # Whether a new subnetwork will be created automatically for the cluster.
+ #
+ # This field is only applicable when `use_ip_aliases` is true.
+ "clusterIpv4CidrBlock": "A String", # The IP address range for the cluster pod IPs. If this field is set, then
+ # `cluster.cluster_ipv4_cidr` must be left blank.
+ #
+ # This field is only applicable when `use_ip_aliases` is true.
+ #
+ # Set to blank to have a range chosen with the default size.
+ #
+ # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
+ # netmask.
+ #
+ # Set to a
+ # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
+ # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
+ # to use.
+ "clusterIpv4Cidr": "A String", # This field is deprecated, use cluster_ipv4_cidr_block.
+ },
+ "loggingService": "A String", # The logging service the cluster should use to write logs.
+ # Currently available options:
#
- # This field is deprecated, use node_pool.initial_node_count instead.
- "instanceGroupUrls": [ # Deprecated. Use node_pools.instance_group_urls.
- "A String",
- ],
- "privateClusterConfig": { # Configuration options for private clusters. # Configuration for private cluster.
- "masterIpv4CidrBlock": "A String", # The IP range in CIDR notation to use for the hosted master network. This
- # range will be used for assigning internal IP addresses to the master or
- # set of masters, as well as the ILB VIP. This range must not overlap with
- # any other ranges in use within the cluster's network.
- "enablePrivateNodes": True or False, # Whether nodes have internal IP addresses only. If enabled, all nodes are
- # given only RFC 1918 private addresses and communicate with the master via
- # private networking.
- "privateEndpoint": "A String", # Output only. The internal IP address of this cluster's master endpoint.
- "enablePrivateEndpoint": True or False, # Whether the master's internal IP address is used as the cluster endpoint.
- "peeringName": "A String", # Output only. The peering name in the customer VPC used by this cluster.
- "publicEndpoint": "A String", # Output only. The external IP address of this cluster's master endpoint.
+ # * `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.
+ "zone": "A String", # [Output only] The name of the Google Compute Engine
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ # cluster resides. This field is deprecated, use location instead.
+ "legacyAbac": { # Configuration for the legacy Attribute Based Access Control authorization # Configuration for the legacy ABAC authorization mode.
+ # mode.
+ "enabled": True or False, # 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.
},
- "shieldedNodes": { # Configuration of Shielded Nodes feature. # Shielded Nodes configuration.
- "enabled": True or False, # Whether Shielded Nodes features are enabled on all nodes in this cluster.
+ "resourceLabels": { # The resource labels for the cluster to use to annotate any related
+ # Google Compute Engine resources.
+ "a_key": "A String",
},
- "verticalPodAutoscaling": { # VerticalPodAutoscaling contains global, per-cluster information # Cluster-level Vertical Pod Autoscaling configuration.
- # required by Vertical Pod Autoscaler to automatically adjust
- # the resources of pods controlled by it.
- "enabled": True or False, # Enables vertical pod autoscaling.
- },
- "defaultMaxPodsConstraint": { # Constraints applied to pods. # The default constraint on the maximum number of pods that can be run
- # simultaneously on a node in the node pool of this cluster. Only honored
- # if cluster created with IP Alias support.
- "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
- },
- "network": "A String", # The name of the Google Compute Engine
- # [network](https://cloud.google.com/compute/docs/networks-and-firewalls#networks)
- # to which the cluster is connected. If left unspecified, the `default`
- # network will be used.
- "labelFingerprint": "A String", # The fingerprint of the set of labels for this cluster.
"nodeIpv4CidrSize": 42, # [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.
- "masterAuthorizedNetworksConfig": { # Configuration options for the master authorized networks feature. Enabled # The configuration options for master authorized networks feature.
- # 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.
- "cidrBlocks": [ # cidr_blocks define up to 50 external networks that could access
- # Kubernetes master through HTTPS.
- { # CidrBlock contains an optional name and one CIDR block.
- "displayName": "A String", # display_name is an optional field for users to identify CIDR blocks.
- "cidrBlock": "A String", # cidr_block must be specified in CIDR notation.
- },
- ],
- "enabled": True or False, # Whether or not master authorized networks is enabled.
- },
- "statusMessage": "A String", # [Output only] Additional information about the current status of this
- # cluster, if available.
- "masterAuth": { # The authentication information for accessing the master endpoint. # The authentication information for accessing the master endpoint.
- # If unspecified, the defaults are used:
- # For clusters before v1.12, if master_auth is unspecified, `username` will
- # be set to "admin", a random password will be generated, and a client
- # certificate will be issued.
- # Authentication can be done using HTTP basic auth or using client
- # certificates.
- "password": "A String", # The password to use for HTTP basic authentication to the master endpoint.
- # Because the master endpoint is open to the Internet, you should create a
- # strong password. If a password is provided for cluster creation, username
- # must be non-empty.
- "clientCertificateConfig": { # Configuration for client certificates on the cluster. # Configuration for client certificate authentication on the cluster. For
- # clusters before v1.12, if no configuration is specified, a client
- # certificate is issued.
- "issueClientCertificate": True or False, # Issue a client certificate.
- },
- "clientKey": "A String", # [Output only] Base64-encoded private key used by clients to authenticate
- # to the cluster endpoint.
- "clusterCaCertificate": "A String", # [Output only] Base64-encoded public certificate that is the root of
- # trust for the cluster.
- "clientCertificate": "A String", # [Output only] Base64-encoded public certificate used by clients to
- # authenticate to the cluster endpoint.
- "username": "A String", # The username to use for HTTP basic authentication to the master endpoint.
- # For clusters v1.6.0 and later, basic authentication can be disabled by
- # leaving username unspecified (or setting it to the empty string).
- },
- "authenticatorGroupsConfig": { # Configuration for returning group information from authenticators. # Configuration controlling RBAC group membership information.
- "enabled": True or False, # Whether this cluster should return group membership lookups
- # during authentication using a group of security groups.
- "securityGroup": "A String", # The name of the security group-of-groups to be used. Only relevant
- # if enabled = true.
- },
- "currentMasterVersion": "A String", # [Output only] The current software version of the master endpoint.
- "addonsConfig": { # Configuration for the addons that can be automatically spun up in the # Configurations for the various addons available to run in the cluster.
- # cluster, enabling additional functionality.
- "networkPolicyConfig": { # Configuration for NetworkPolicy. This only tracks whether the addon # Configuration for NetworkPolicy. This only tracks whether the addon
- # is enabled or not on the Master, it does not track whether network policy
- # is enabled for the nodes.
- # is enabled or not on the Master, it does not track whether network policy
- # is enabled for the nodes.
- "disabled": True or False, # Whether NetworkPolicy is enabled for this cluster.
- },
- "cloudRunConfig": { # Configuration options for the Cloud Run feature. # Configuration for the Cloud Run addon, which allows the user to use a
- # managed Knative service.
- "disabled": True or False, # Whether Cloud Run addon is enabled for this cluster.
- },
- "horizontalPodAutoscaling": { # Configuration options for the horizontal pod autoscaling feature, which # Configuration for the horizontal pod autoscaling feature, which
- # increases or decreases the number of replica pods a replication controller
- # has based on the resource usage of the existing pods.
- # increases or decreases the number of replica pods a replication controller
- # has based on the resource usage of the existing pods.
- "disabled": True or False, # Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.
- # When enabled, it ensures that metrics are collected into Stackdriver
- # Monitoring.
- },
- "httpLoadBalancing": { # Configuration options for the HTTP (L7) load balancing controller addon, # Configuration for the HTTP (L7) load balancing controller addon, which
- # makes it easy to set up HTTP load balancers for services in a cluster.
- # which makes it easy to set up HTTP load balancers for services in a cluster.
- "disabled": True or False, # Whether the HTTP Load Balancing controller is enabled in the cluster.
- # When enabled, it runs a small pod in the cluster that manages the load
- # balancers.
- },
- "kubernetesDashboard": { # Configuration for the Kubernetes Dashboard. # Configuration for the Kubernetes Dashboard.
- # This addon is deprecated, and will be disabled in 1.15. It is recommended
- # to use the Cloud Console to manage and monitor your Kubernetes clusters,
- # workloads and applications. For more information, see:
- # https://cloud.google.com/kubernetes-engine/docs/concepts/dashboards
- "disabled": True or False, # Whether the Kubernetes Dashboard is enabled for this cluster.
- },
- },
- "currentNodeVersion": "A String", # [Output only] Deprecated, use
- # [NodePools.version](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.zones.clusters.nodePools)
- # 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.
- "subnetwork": "A String", # The name of the Google Compute Engine
- # [subnetwork](https://cloud.google.com/compute/docs/subnetworks) to which
- # the cluster is connected.
- "resourceLabels": { # The resource labels for the cluster to use to annotate any related
- # Google Compute Engine resources.
- "a_key": "A String",
+ "releaseChannel": { # ReleaseChannel indicates which release channel a cluster is # Release channel configuration.
+ # 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.
+ "channel": "A String", # channel specifies which release channel the cluster is subscribed to.
},
"maintenancePolicy": { # MaintenancePolicy defines the maintenance policy to be used for the cluster. # Configure the maintenance policy for this cluster.
"window": { # MaintenanceWindow defines the maintenance window to be used for the cluster. # Specifies the maintenance window in which maintenance may be performed.
@@ -2665,6 +2639,15 @@
"startTime": "A String", # The time that the window first starts.
},
},
+ "dailyMaintenanceWindow": { # Time window specified for daily maintenance operations. # DailyMaintenanceWindow specifies a daily maintenance operation window.
+ "duration": "A String", # [Output only] Duration of the time window, automatically chosen to be
+ # smallest possible in the given scenario.
+ # Duration will be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
+ # format "PTnHnMnS".
+ "startTime": "A String", # Time within the maintenance window to start the maintenance operations.
+ # Time format should be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
+ # format "HH:MM", where HH : [00-23] and MM : [00-59] GMT.
+ },
"recurringWindow": { # Represents an arbitrary window of time that recurs. # RecurringWindow specifies some number of recurring time periods for
# maintenance to occur. The time windows may be overlapping. If no
# maintenance windows are set, maintenance can occur at any time.
@@ -2701,15 +2684,6 @@
# to specify duration of the window and when it first starts.
# The FREQ values of HOURLY, MINUTELY, and SECONDLY are not supported.
},
- "dailyMaintenanceWindow": { # Time window specified for daily maintenance operations. # DailyMaintenanceWindow specifies a daily maintenance operation window.
- "startTime": "A String", # Time within the maintenance window to start the maintenance operations.
- # Time format should be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
- # format "HH:MM", where HH : [00-23] and MM : [00-59] GMT.
- "duration": "A String", # [Output only] Duration of the time window, automatically chosen to be
- # smallest possible in the given scenario.
- # Duration will be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
- # format "PTnHnMnS".
- },
},
"resourceVersion": "A String", # A hash identifying the version of this policy, so that updates to fields of
# the policy won't accidentally undo intermediate changes (and so that users
@@ -2717,157 +2691,96 @@
# Make a <code>get()</code> request to the cluster to get the current
# resource version and include it with requests to set the policy.
},
- "initialClusterVersion": "A 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.
+ "monitoringService": "A String", # The monitoring service the cluster should use to write metrics.
+ # Currently available options:
#
- # Users may specify either explicit versions offered by
- # Kubernetes Engine or version aliases, which have the following behavior:
+ # * "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.
#
- # - "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
- "ipAllocationPolicy": { # Configuration for controlling how IPs are allocated in the cluster. # Configuration for cluster IP allocation.
- "nodeIpv4Cidr": "A String", # This field is deprecated, use node_ipv4_cidr_block.
- "clusterSecondaryRangeName": "A String", # The name of the secondary range to be used for the cluster CIDR
- # block. The secondary range will be used for pod IP
- # addresses. This must be an existing secondary range associated
- # with the cluster subnetwork.
- #
- # This field is only applicable with use_ip_aliases is true and
- # create_subnetwork is false.
- "clusterIpv4CidrBlock": "A String", # The IP address range for the cluster pod IPs. If this field is set, then
- # `cluster.cluster_ipv4_cidr` must be left blank.
- #
- # This field is only applicable when `use_ip_aliases` is true.
- #
- # Set to blank to have a range chosen with the default size.
- #
- # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
- # netmask.
- #
- # Set to a
- # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
- # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
- # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
- # to use.
- "nodeIpv4CidrBlock": "A String", # The IP address range of the instance IPs in this cluster.
- #
- # This is applicable only if `create_subnetwork` is true.
- #
- # Set to blank to have a range chosen with the default size.
- #
- # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
- # netmask.
- #
- # Set to a
- # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
- # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
- # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
- # to use.
- "tpuIpv4CidrBlock": "A String", # The IP address range of the Cloud TPUs in this cluster. If unspecified, a
- # range will be automatically chosen with the default size.
- #
- # This field is only applicable when `use_ip_aliases` is true.
- #
- # If unspecified, the range will use the default size.
- #
- # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
- # netmask.
- #
- # Set to a
- # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
- # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
- # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
- # to use.
- "useIpAliases": True or False, # Whether alias IPs will be used for pod IPs in the cluster.
- "servicesSecondaryRangeName": "A String", # The name of the secondary range to be used as for the services
- # CIDR block. The secondary range will be used for service
- # ClusterIPs. This must be an existing secondary range associated
- # with the cluster subnetwork.
- #
- # This field is only applicable with use_ip_aliases is true and
- # create_subnetwork is false.
- "createSubnetwork": True or False, # Whether a new subnetwork will be created automatically for the cluster.
- #
- # This field is only applicable when `use_ip_aliases` is true.
- "subnetworkName": "A String", # A custom subnetwork name to be used if `create_subnetwork` is true. If
- # this field is empty, then an automatic name will be chosen for the new
- # subnetwork.
- "clusterIpv4Cidr": "A String", # This field is deprecated, use cluster_ipv4_cidr_block.
- "servicesIpv4Cidr": "A String", # This field is deprecated, use services_ipv4_cidr_block.
- "servicesIpv4CidrBlock": "A String", # The IP address range of the services IPs in this cluster. If blank, a range
- # will be automatically chosen with the default size.
- #
- # This field is only applicable when `use_ip_aliases` is true.
- #
- # Set to blank to have a range chosen with the default size.
- #
- # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
- # netmask.
- #
- # Set to a
- # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
- # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
- # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
- # to use.
+ # If left as an empty string,`monitoring.googleapis.com/kubernetes` will be
+ # used for GKE 1.14+ or `monitoring.googleapis.com` for earlier versions.
+ "binaryAuthorization": { # Configuration for Binary Authorization. # Configuration for Binary Authorization.
+ "enabled": True or False, # Enable Binary Authorization for this cluster. If enabled, all container
+ # images will be validated by Binary Authorization.
},
- "legacyAbac": { # Configuration for the legacy Attribute Based Access Control authorization # Configuration for the legacy ABAC authorization mode.
- # mode.
- "enabled": True or False, # 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.
- },
- "resourceUsageExportConfig": { # Configuration for exporting cluster resource usages. # Configuration for exporting resource usages. Resource usage export is
- # disabled when this config is unspecified.
- "enableNetworkEgressMetering": True or False, # Whether to enable network egress metering for this cluster. If enabled, a
- # daemonset will be created in the cluster to meter network egress traffic.
- "consumptionMeteringConfig": { # Parameters for controlling consumption metering. # Configuration to enable resource consumption metering.
- "enabled": True or False, # Whether to enable consumption metering for this cluster. If enabled, a
- # second BigQuery table will be created to hold resource consumption
- # records.
- },
- "bigqueryDestination": { # Parameters for using BigQuery as the destination of resource usage export. # Configuration to use BigQuery as usage export destination.
- "datasetId": "A String", # The ID of a BigQuery Dataset.
- },
- },
- "enableTpu": True or False, # Enable the ability to use Cloud TPUs in this cluster.
- "locations": [ # The list of Google Compute Engine
- # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
- # cluster's nodes should be located.
+ "expireTime": "A String", # [Output only] The time the cluster will be automatically
+ # deleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "instanceGroupUrls": [ # Deprecated. Use node_pools.instance_group_urls.
"A String",
],
- "nodePools": [ # The node pools associated with this cluster.
- # This field should not be set if "node_config" or "initial_node_count" are
- # specified.
- { # NodePool contains the name and configuration for a cluster's node pool.
- # Node pools are a set of nodes (i.e. VM's), with a common configuration and
- # specification, under the control of the cluster master. They may have a set
- # of Kubernetes labels applied to them, which may be used to reference them
- # during pod scheduling. They may also be resized up or down, to accommodate
- # the workload.
- "statusMessage": "A String", # [Output only] Additional information about the current status of this
- # node pool instance, if available.
- "autoscaling": { # NodePoolAutoscaling contains information required by cluster autoscaler to # Autoscaler configuration for this NodePool. Autoscaler is enabled
- # only if a valid configuration is present.
- # adjust the size of the node pool to the current cluster usage.
- "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be >= min_node_count. There
- # has to enough quota to scale up the cluster.
- "autoprovisioned": True or False, # Can this node pool be deleted automatically.
- "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be >= 1 and <=
- # max_node_count.
- "enabled": True or False, # Is autoscaling enabled for this node pool.
+ "endpoint": "A 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.
+ "shieldedNodes": { # Configuration of Shielded Nodes feature. # Shielded Nodes configuration.
+ "enabled": True or False, # Whether Shielded Nodes features are enabled on all nodes in this cluster.
+ },
+ "masterAuthorizedNetworksConfig": { # Configuration options for the master authorized networks feature. Enabled # The configuration options for master authorized networks feature.
+ # 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.
+ "enabled": True or False, # Whether or not master authorized networks is enabled.
+ "cidrBlocks": [ # cidr_blocks define up to 50 external networks that could access
+ # Kubernetes master through HTTPS.
+ { # CidrBlock contains an optional name and one CIDR block.
+ "displayName": "A String", # display_name is an optional field for users to identify CIDR blocks.
+ "cidrBlock": "A String", # cidr_block must be specified in CIDR notation.
},
- "initialNodeCount": 42, # The initial node count for the pool. You must ensure that your
- # Compute Engine <a href="/compute/docs/resource-quotas">resource quota</a>
- # is sufficient for this number of instances. You must also have available
- # firewall and routes quota.
- "selfLink": "A String", # [Output only] Server-defined URL for the resource.
- "upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Upgrade settings control disruption and speed of the upgrade.
+ ],
+ },
+ "conditions": [ # Which conditions caused the current cluster state.
+ { # StatusCondition describes why a cluster or a node pool has a certain status
+ # (e.g., ERROR or DEGRADED).
+ "message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
+ },
+ ],
+ "network": "A String", # The name of the Google Compute Engine
+ # [network](https://cloud.google.com/compute/docs/networks-and-firewalls#networks)
+ # to which the cluster is connected. If left unspecified, the `default`
+ # network will be used.
+ "status": "A String", # [Output only] The current status of this cluster.
+ "autoscaling": { # ClusterAutoscaling contains global, per-cluster information # Cluster-level autoscaling configuration.
+ # required by Cluster Autoscaler to automatically adjust
+ # the size of the cluster and create/delete
+ # node pools based on the current needs.
+ "resourceLimits": [ # Contains global constraints regarding minimum and maximum
+ # amount of resources in the cluster.
+ { # Contains information about amount of some resource in the cluster.
+ # For memory, value should be in GB.
+ "minimum": "A String", # Minimum amount of the resource in the cluster.
+ "resourceType": "A String", # Resource name "cpu", "memory" or gpu-specific string.
+ "maximum": "A String", # Maximum amount of the resource in the cluster.
+ },
+ ],
+ "autoprovisioningNodePoolDefaults": { # AutoprovisioningNodePoolDefaults contains defaults for a node pool created # AutoprovisioningNodePoolDefaults contains defaults for a node pool
+ # created by NAP.
+ # by NAP.
+ "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs.
+ "management": { # NodeManagement defines the set of node management services turned on for the # Specifies the node management options for NAP created node-pools.
+ # node pool.
+ "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
+ # the Auto Upgrades will proceed.
+ "description": "A String", # [Output only] This field is set when upgrades are about to commence
+ # with the description of the upgrade.
+ "autoUpgradeStartTime": "A String", # [Output only] This field is set when upgrades are about to commence
+ # with the approximate start time for the upgrades, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ },
+ "autoRepair": True or False, # A flag that specifies whether the node auto-repair is enabled for the node
+ # pool. If enabled, the nodes in this node pool will be monitored and, if
+ # they fail health checks too many times, an automatic repair action will be
+ # triggered.
+ "autoUpgrade": True or False, # A flag that specifies whether node auto-upgrade is enabled for the node
+ # pool. If enabled, node auto-upgrade helps keep the nodes in your node pool
+ # up to date with the latest release version of Kubernetes.
+ },
+ "upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Specifies the upgrade settings for NAP created node pools
# disruption caused by an upgrade.
#
# maxUnavailable controls the number of nodes that can be simultaneously
@@ -2896,284 +2809,32 @@
"maxSurge": 42, # The maximum number of nodes that can be created beyond the current size
# of the node pool during the upgrade process.
},
- "locations": [ # The list of Google Compute Engine
- # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
- # NodePool's nodes should be located.
+ "oauthScopes": [ # Scopes that are used by NAP when creating node pools.
"A String",
],
- "instanceGroupUrls": [ # [Output only] The resource URLs of the [managed instance
- # groups](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances)
- # associated with this node pool.
- "A String",
- ],
- "version": "A String", # The version of the Kubernetes of this node.
- "podIpv4CidrSize": 42, # [Output only] The pod CIDR block size per node in this node pool.
- "conditions": [ # Which conditions caused the current node pool state.
- { # StatusCondition describes why a cluster or a node pool has a certain status
- # (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
- "message": "A String", # Human-friendly representation of the condition
- },
- ],
- "status": "A String", # [Output only] The status of the nodes in this pool instance.
- "config": { # Parameters that describe the nodes in a cluster. # The node configuration of the pool.
- "oauthScopes": [ # The set of Google API scopes to be made available on all of the
- # node VMs under the "default" service account.
- #
- # The following scopes are recommended, but not required, and by default are
- # not included:
- #
- # * `https://www.googleapis.com/auth/compute` is required for mounting
- # persistent storage on your nodes.
- # * `https://www.googleapis.com/auth/devstorage.read_only` is required for
- # communicating with **gcr.io**
- # (the [Google Container
- # Registry](https://cloud.google.com/container-registry/)).
- #
- # If unspecified, no scopes are added, unless Cloud Logging or Cloud
- # Monitoring are enabled, in which case their required scopes will be added.
- "A String",
- ],
- "taints": [ # List of kubernetes taints to be applied to each node.
- #
- # For more information, including usage and the valid values, see:
- # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
- { # Kubernetes taint is comprised of three fields: key, value, and effect. Effect
- # can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute.
- #
- # See
- # [here](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration)
- # for more information, including usage and the valid values.
- "effect": "A String", # Effect for taint.
- "value": "A String", # Value for taint.
- "key": "A String", # Key for taint.
- },
- ],
- "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
- # These will added in addition to any default label(s) that
- # Kubernetes may apply to the node.
- # In case of conflict in label keys, the applied set may differ depending on
- # the Kubernetes version -- it's best to assume the behavior is undefined
- # and conflicts should be avoided.
- # For more information, including usage and the valid values, see:
- # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
- "a_key": "A String",
- },
- "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
- # The smallest allowed disk size is 10GB.
- #
- # If unspecified, the default disk size is 100GB.
- "workloadMetadataConfig": { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
- # workloads on the node pool.
- "mode": "A String", # Mode is the configuration for how to expose metadata to workloads running
- # on the node pool.
- },
- "accelerators": [ # A list of hardware accelerators to be attached to each node.
- # See https://cloud.google.com/compute/docs/gpus for more information about
- # support for GPUs.
- { # AcceleratorConfig represents a Hardware Accelerator request.
- "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
- # [here](https://cloud.google.com/compute/docs/gpus)
- "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
- },
- ],
- "machineType": "A String", # The name of a Google Compute Engine [machine
- # type](https://cloud.google.com/compute/docs/machine-types) (e.g.
- # `n1-standard-1`).
- #
- # If unspecified, the default machine type is
- # `n1-standard-1`.
- "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
- #
- # If unspecified, the default disk type is 'pd-standard'
- "shieldedInstanceConfig": { # A set of Shielded Instance options. # Shielded Instance options.
- "enableIntegrityMonitoring": True or False, # Defines whether the instance has integrity monitoring enabled.
- #
- # Enables monitoring and attestation of the boot integrity of the instance.
- # The attestation is performed against the integrity policy baseline. This
- # baseline is initially derived from the implicitly trusted boot image when
- # the instance is created.
- "enableSecureBoot": True or False, # Defines whether the instance has Secure Boot enabled.
- #
- # Secure Boot helps ensure that the system only runs authentic software by
- # verifying the digital signature of all boot components, and halting the
- # boot process if signature verification fails.
- },
- "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
- # scheduled on the specified or newer CPU platform. Applicable values are the
- # friendly names of CPU platforms, such as
- # <code>minCpuPlatform: &quot;Intel Haswell&quot;</code> or
- # <code>minCpuPlatform: &quot;Intel Sandy Bridge&quot;</code>. For more
- # information, read [how to specify min CPU
- # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
- "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
- # https://cloud.google.com/compute/docs/instances/preemptible for more
- # information about preemptible VM instances.
- "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
- #
- # The limit for this value is dependent upon the maximum number of
- # disks available on a machine per zone. See:
- # https://cloud.google.com/compute/docs/disks/local-ssd
- # for more information.
- "sandboxConfig": { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
- "type": "A String", # Type of the sandbox to use for the node.
- },
- "metadata": { # The metadata key/value pairs assigned to instances in the cluster.
- #
- # Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
- # in length. These are reflected as part of a URL in the metadata server.
- # Additionally, to avoid ambiguity, keys must not conflict with any other
- # metadata keys for the project or be one of the reserved keys:
- # "cluster-location"
- # "cluster-name"
- # "cluster-uid"
- # "configure-sh"
- # "containerd-configure-sh"
- # "enable-os-login"
- # "gci-ensure-gke-docker"
- # "gci-metrics-enabled"
- # "gci-update-strategy"
- # "instance-template"
- # "kube-env"
- # "startup-script"
- # "user-data"
- # "disable-address-manager"
- # "windows-startup-script-ps1"
- # "common-psm1"
- # "k8s-node-setup-psm1"
- # "install-ssh-psm1"
- # "user-profile-psm1"
- # "serial-port-logging-enable"
- #
- # Values are free-form strings, and only have meaning as interpreted by
- # the image running in the instance. The only restriction placed on them is
- # that each value's size must be less than or equal to 32 KB.
- #
- # The total size of all keys and values must be less than 512 KB.
- "a_key": "A String",
- },
- "reservationAffinity": { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
- # the specified [Zonal Compute
- # Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
- # to this node pool.
- # is the configuration of desired reservation which instances could take
- # capacity from.
- "values": [ # Corresponds to the label value(s) of reservation resource(s).
- "A String",
- ],
- "consumeReservationType": "A String", # Corresponds to the type of reservation consumption.
- "key": "A String", # Corresponds to the label key of a reservation resource. To target a
- # SPECIFIC_RESERVATION by name, specify "googleapis.com/reservation-name" as
- # the key and specify the name of your reservation as its value.
- },
- "tags": [ # The list of instance tags applied to all nodes. Tags are used to identify
- # valid sources or targets for network firewalls and are specified by
- # the client during cluster or node pool creation. Each tag within the list
- # must comply with RFC1035.
- "A String",
- ],
- "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs.
- # Specify the email address of the Service Account; otherwise, if no Service
- # Account is specified, the "default" service account is used.
- "imageType": "A String", # The image type to use for this node. Note that for a given image type,
- # the latest version of it will be used.
- },
- "maxPodsConstraint": { # Constraints applied to pods. # The constraint on the maximum number of pods that can be run
- # simultaneously on a node in the node pool.
- "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
- },
- "name": "A String", # The name of the node pool.
- "management": { # NodeManagement defines the set of node management services turned on for the # NodeManagement configuration for this NodePool.
- # node pool.
- "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
- # the Auto Upgrades will proceed.
- "autoUpgradeStartTime": "A String", # [Output only] This field is set when upgrades are about to commence
- # with the approximate start time for the upgrades, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
- "description": "A String", # [Output only] This field is set when upgrades are about to commence
- # with the description of the upgrade.
- },
- "autoRepair": True or False, # A flag that specifies whether the node auto-repair is enabled for the node
- # pool. If enabled, the nodes in this node pool will be monitored and, if
- # they fail health checks too many times, an automatic repair action will be
- # triggered.
- "autoUpgrade": True or False, # A flag that specifies whether node auto-upgrade is enabled for the node
- # pool. If enabled, node auto-upgrade helps keep the nodes in your node pool
- # up to date with the latest release version of Kubernetes.
- },
},
- ],
- "selfLink": "A String", # [Output only] Server-defined URL for the resource.
+ "enableNodeAutoprovisioning": True or False, # Enables automatic node pool creation and deletion.
+ "autoprovisioningLocations": [ # The list of Google Compute Engine
+ # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
+ # NodePool's nodes can be created by NAP.
+ "A String",
+ ],
+ },
+ "labelFingerprint": "A String", # The fingerprint of the set of labels for this cluster.
"networkPolicy": { # Configuration options for the NetworkPolicy feature. # Configuration options for the NetworkPolicy feature.
# https://kubernetes.io/docs/concepts/services-networking/networkpolicies/
- "provider": "A String", # The selected network policy provider.
"enabled": True or False, # Whether network policy is enabled on the cluster.
+ "provider": "A String", # The selected network policy provider.
},
- "servicesIpv4Cidr": "A String", # [Output only] The IP address range of the Kubernetes services in
- # this cluster, in
+ "clusterIpv4Cidr": "A String", # The IP address range of the container pods in this cluster, in
# [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
- # notation (e.g. `1.2.3.4/29`). Service addresses are
- # typically put in the last `/16` from the container CIDR.
- "enableKubernetesAlpha": True or False, # Kubernetes alpha features are enabled on this cluster. This includes alpha
- # API groups (e.g. v1alpha1) 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.
- "description": "A String", # An optional description of this cluster.
- "conditions": [ # Which conditions caused the current cluster state.
- { # StatusCondition describes why a cluster or a node pool has a certain status
- # (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
- "message": "A String", # Human-friendly representation of the condition
- },
- ],
- "currentNodeCount": 42, # [Output only] The number of nodes currently in the cluster. Deprecated.
- # Call Kubernetes API directly to retrieve node information.
- "monitoringService": "A 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.
- "databaseEncryption": { # Configuration of etcd encryption. # Configuration of etcd encryption.
- "keyName": "A String", # Name of CloudKMS key to use for the encryption of secrets in etcd.
- # Ex. projects/my-project/locations/global/keyRings/my-ring/cryptoKeys/my-key
- "state": "A String", # Denotes the state of etcd encryption.
+ # 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`.
+ "defaultMaxPodsConstraint": { # Constraints applied to pods. # The default constraint on the maximum number of pods that can be run
+ # simultaneously on a node in the node pool of this cluster. Only honored
+ # if cluster created with IP Alias support.
+ "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
},
- "binaryAuthorization": { # Configuration for Binary Authorization. # Configuration for Binary Authorization.
- "enabled": True or False, # Enable Binary Authorization for this cluster. If enabled, all container
- # images will be validated by Binary Authorization.
- },
- "tpuIpv4CidrBlock": "A String", # [Output only] The IP address range of the Cloud TPUs in this cluster, in
- # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
- # notation (e.g. `1.2.3.4/29`).
- "workloadIdentityConfig": { # Configuration for the use of Kubernetes Service Accounts in GCP IAM # Configuration for the use of Kubernetes Service Accounts in GCP IAM
- # policies.
- # policies.
- "workloadPool": "A String", # The workload pool to attach all Kubernetes service accounts to.
- },
- "zone": "A String", # [Output only] The name of the Google Compute Engine
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
- # cluster resides. This field is deprecated, use location instead.
- "expireTime": "A String", # [Output only] The time the cluster will be automatically
- # deleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
- "loggingService": "A 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.
"nodeConfig": { # Parameters that describe the nodes in a cluster. # Parameters used in creating the cluster's nodes.
# For requests, this field should only be used in lieu of a
# "node_pool" object, since this configuration (along with the
@@ -3185,6 +2846,39 @@
#
# If unspecified, the defaults are used.
# This field is deprecated, use node_pool.config instead.
+ "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
+ #
+ # If unspecified, the default disk type is 'pd-standard'
+ "bootDiskKmsKey": "A String", #
+ # The Customer Managed Encryption Key used to encrypt the boot disk attached
+ # to each node in the node pool. This should be of the form
+ # projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME].
+ # For more information about protecting resources with Cloud KMS Keys please
+ # see:
+ # https://cloud.google.com/compute/docs/disks/customer-managed-encryption
+ "shieldedInstanceConfig": { # A set of Shielded Instance options. # Shielded Instance options.
+ "enableIntegrityMonitoring": True or False, # Defines whether the instance has integrity monitoring enabled.
+ #
+ # Enables monitoring and attestation of the boot integrity of the instance.
+ # The attestation is performed against the integrity policy baseline. This
+ # baseline is initially derived from the implicitly trusted boot image when
+ # the instance is created.
+ "enableSecureBoot": True or False, # Defines whether the instance has Secure Boot enabled.
+ #
+ # Secure Boot helps ensure that the system only runs authentic software by
+ # verifying the digital signature of all boot components, and halting the
+ # boot process if signature verification fails.
+ },
+ "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
+ # These will added in addition to any default label(s) that
+ # Kubernetes may apply to the node.
+ # In case of conflict in label keys, the applied set may differ depending on
+ # the Kubernetes version -- it's best to assume the behavior is undefined
+ # and conflicts should be avoided.
+ # For more information, including usage and the valid values, see:
+ # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
+ "a_key": "A String",
+ },
"oauthScopes": [ # The set of Google API scopes to be made available on all of the
# node VMs under the "default" service account.
#
@@ -3202,6 +2896,19 @@
# Monitoring are enabled, in which case their required scopes will be added.
"A String",
],
+ "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
+ # scheduled on the specified or newer CPU platform. Applicable values are the
+ # friendly names of CPU platforms, such as
+ # <code>minCpuPlatform: &quot;Intel Haswell&quot;</code> or
+ # <code>minCpuPlatform: &quot;Intel Sandy Bridge&quot;</code>. For more
+ # information, read [how to specify min CPU
+ # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
+ "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
+ #
+ # The limit for this value is dependent upon the maximum number of
+ # disks available on a machine per zone. See:
+ # https://cloud.google.com/compute/docs/disks/local-ssd
+ # for more information.
"taints": [ # List of kubernetes taints to be applied to each node.
#
# For more information, including usage and the valid values, see:
@@ -3212,80 +2919,37 @@
# See
# [here](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration)
# for more information, including usage and the valid values.
- "effect": "A String", # Effect for taint.
"value": "A String", # Value for taint.
"key": "A String", # Key for taint.
+ "effect": "A String", # Effect for taint.
},
],
- "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
- # These will added in addition to any default label(s) that
- # Kubernetes may apply to the node.
- # In case of conflict in label keys, the applied set may differ depending on
- # the Kubernetes version -- it's best to assume the behavior is undefined
- # and conflicts should be avoided.
- # For more information, including usage and the valid values, see:
- # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
- "a_key": "A String",
+ "imageType": "A String", # The image type to use for this node. Note that for a given image type,
+ # the latest version of it will be used.
+ "reservationAffinity": { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
+ # the specified [Zonal Compute
+ # Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
+ # to this node pool.
+ # is the configuration of desired reservation which instances could take
+ # capacity from.
+ "consumeReservationType": "A String", # Corresponds to the type of reservation consumption.
+ "key": "A String", # Corresponds to the label key of a reservation resource. To target a
+ # SPECIFIC_RESERVATION by name, specify "googleapis.com/reservation-name" as
+ # the key and specify the name of your reservation as its value.
+ "values": [ # Corresponds to the label value(s) of reservation resource(s).
+ "A String",
+ ],
},
- "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
- # The smallest allowed disk size is 10GB.
- #
- # If unspecified, the default disk size is 100GB.
- "workloadMetadataConfig": { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
- # workloads on the node pool.
- "mode": "A String", # Mode is the configuration for how to expose metadata to workloads running
- # on the node pool.
- },
- "accelerators": [ # A list of hardware accelerators to be attached to each node.
- # See https://cloud.google.com/compute/docs/gpus for more information about
- # support for GPUs.
- { # AcceleratorConfig represents a Hardware Accelerator request.
- "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
- # [here](https://cloud.google.com/compute/docs/gpus)
- "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
- },
- ],
"machineType": "A String", # The name of a Google Compute Engine [machine
# type](https://cloud.google.com/compute/docs/machine-types) (e.g.
# `n1-standard-1`).
#
# If unspecified, the default machine type is
# `n1-standard-1`.
- "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
- #
- # If unspecified, the default disk type is 'pd-standard'
- "shieldedInstanceConfig": { # A set of Shielded Instance options. # Shielded Instance options.
- "enableIntegrityMonitoring": True or False, # Defines whether the instance has integrity monitoring enabled.
- #
- # Enables monitoring and attestation of the boot integrity of the instance.
- # The attestation is performed against the integrity policy baseline. This
- # baseline is initially derived from the implicitly trusted boot image when
- # the instance is created.
- "enableSecureBoot": True or False, # Defines whether the instance has Secure Boot enabled.
- #
- # Secure Boot helps ensure that the system only runs authentic software by
- # verifying the digital signature of all boot components, and halting the
- # boot process if signature verification fails.
- },
- "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
- # scheduled on the specified or newer CPU platform. Applicable values are the
- # friendly names of CPU platforms, such as
- # <code>minCpuPlatform: &quot;Intel Haswell&quot;</code> or
- # <code>minCpuPlatform: &quot;Intel Sandy Bridge&quot;</code>. For more
- # information, read [how to specify min CPU
- # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
- "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
- # https://cloud.google.com/compute/docs/instances/preemptible for more
- # information about preemptible VM instances.
- "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
- #
- # The limit for this value is dependent upon the maximum number of
- # disks available on a machine per zone. See:
- # https://cloud.google.com/compute/docs/disks/local-ssd
- # for more information.
- "sandboxConfig": { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
- "type": "A String", # Type of the sandbox to use for the node.
- },
+ "nodeGroup": "A String", # Setting this field will assign instances of this
+ # pool to run on the specified node group. This is useful for running
+ # workloads on [sole tenant
+ # nodes](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes).
"metadata": { # The metadata key/value pairs assigned to instances in the cluster.
#
# Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
@@ -3320,45 +2984,63 @@
# The total size of all keys and values must be less than 512 KB.
"a_key": "A String",
},
- "reservationAffinity": { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
- # the specified [Zonal Compute
- # Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
- # to this node pool.
- # is the configuration of desired reservation which instances could take
- # capacity from.
- "values": [ # Corresponds to the label value(s) of reservation resource(s).
- "A String",
- ],
- "consumeReservationType": "A String", # Corresponds to the type of reservation consumption.
- "key": "A String", # Corresponds to the label key of a reservation resource. To target a
- # SPECIFIC_RESERVATION by name, specify "googleapis.com/reservation-name" as
- # the key and specify the name of your reservation as its value.
- },
"tags": [ # The list of instance tags applied to all nodes. Tags are used to identify
# valid sources or targets for network firewalls and are specified by
# the client during cluster or node pool creation. Each tag within the list
# must comply with RFC1035.
"A String",
],
+ "sandboxConfig": { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
+ "type": "A String", # Type of the sandbox to use for the node.
+ },
+ "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
+ # https://cloud.google.com/compute/docs/instances/preemptible for more
+ # information about preemptible VM instances.
+ "workloadMetadataConfig": { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
+ # workloads on the node pool.
+ "mode": "A String", # Mode is the configuration for how to expose metadata to workloads running
+ # on the node pool.
+ },
+ "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
+ # The smallest allowed disk size is 10GB.
+ #
+ # If unspecified, the default disk size is 100GB.
"serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs.
# Specify the email address of the Service Account; otherwise, if no Service
# Account is specified, the "default" service account is used.
- "imageType": "A String", # The image type to use for this node. Note that for a given image type,
- # the latest version of it will be used.
+ "accelerators": [ # A list of hardware accelerators to be attached to each node.
+ # See https://cloud.google.com/compute/docs/gpus for more information about
+ # support for GPUs.
+ { # AcceleratorConfig represents a Hardware Accelerator request.
+ "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
+ # [here](https://cloud.google.com/compute/docs/gpus)
+ "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
+ },
+ ],
},
- "status": "A String", # [Output only] The current status of this cluster.
- "networkConfig": { # NetworkConfig reports the relative names of network & subnetwork. # Configuration for cluster networking.
- "enableIntraNodeVisibility": True or False, # Whether Intra-node visibility is enabled for this cluster.
- # This makes same node pod to pod traffic visible for VPC network.
- "subnetwork": "A String", # Output only. The relative name of the Google Compute Engine
- # [subnetwork](https://cloud.google.com/compute/docs/vpc) to which the
- # cluster is connected. Example:
- # projects/my-project/regions/us-central1/subnetworks/my-subnet
- "network": "A String", # Output only. The relative name of the Google Compute Engine
- # network(https://cloud.google.com/compute/docs/networks-and-firewalls#networks)
- # to which the cluster is connected. Example:
- # projects/my-project/global/networks/my-network
+ "resourceUsageExportConfig": { # Configuration for exporting cluster resource usages. # Configuration for exporting resource usages. Resource usage export is
+ # disabled when this config is unspecified.
+ "enableNetworkEgressMetering": True or False, # Whether to enable network egress metering for this cluster. If enabled, a
+ # daemonset will be created in the cluster to meter network egress traffic.
+ "bigqueryDestination": { # Parameters for using BigQuery as the destination of resource usage export. # Configuration to use BigQuery as usage export destination.
+ "datasetId": "A String", # The ID of a BigQuery Dataset.
+ },
+ "consumptionMeteringConfig": { # Parameters for controlling consumption metering. # Configuration to enable resource consumption metering.
+ "enabled": True or False, # Whether to enable consumption metering for this cluster. If enabled, a
+ # second BigQuery table will be created to hold resource consumption
+ # records.
+ },
},
+ "initialNodeCount": 42, # The number of nodes to create in this cluster. You must ensure that your
+ # Compute Engine [resource quota](https://cloud.google.com/compute/quotas)
+ # 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.
"name": "A 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:
@@ -3366,17 +3048,428 @@
# * Lowercase letters, numbers, and hyphens only.
# * Must start with a letter.
# * Must end with a number or a letter.
- "endpoint": "A 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/`.
+ "workloadIdentityConfig": { # Configuration for the use of Kubernetes Service Accounts in GCP IAM # Configuration for the use of Kubernetes Service Accounts in GCP IAM
+ # policies.
+ # policies.
+ "workloadPool": "A String", # The workload pool to attach all Kubernetes service accounts to.
+ },
+ "networkConfig": { # NetworkConfig reports the relative names of network & subnetwork. # Configuration for cluster networking.
+ "network": "A String", # Output only. The relative name of the Google Compute Engine
+ # network(https://cloud.google.com/compute/docs/networks-and-firewalls#networks)
+ # to which the cluster is connected. Example:
+ # projects/my-project/global/networks/my-network
+ "enableIntraNodeVisibility": True or False, # Whether Intra-node visibility is enabled for this cluster.
+ # This makes same node pod to pod traffic visible for VPC network.
+ "subnetwork": "A String", # Output only. The relative name of the Google Compute Engine
+ # [subnetwork](https://cloud.google.com/compute/docs/vpc) to which the
+ # cluster is connected. Example:
+ # projects/my-project/regions/us-central1/subnetworks/my-subnet
+ },
+ "databaseEncryption": { # Configuration of etcd encryption. # Configuration of etcd encryption.
+ "state": "A String", # Denotes the state of etcd encryption.
+ "keyName": "A String", # Name of CloudKMS key to use for the encryption of secrets in etcd.
+ # Ex. projects/my-project/locations/global/keyRings/my-ring/cryptoKeys/my-key
+ },
+ "privateClusterConfig": { # Configuration options for private clusters. # Configuration for private cluster.
+ "privateEndpoint": "A String", # Output only. The internal IP address of this cluster's master endpoint.
+ "peeringName": "A String", # Output only. The peering name in the customer VPC used by this cluster.
+ "enablePrivateNodes": True or False, # Whether nodes have internal IP addresses only. If enabled, all nodes are
+ # given only RFC 1918 private addresses and communicate with the master via
+ # private networking.
+ "publicEndpoint": "A String", # Output only. The external IP address of this cluster's master endpoint.
+ "enablePrivateEndpoint": True or False, # Whether the master's internal IP address is used as the cluster endpoint.
+ "masterIpv4CidrBlock": "A String", # The IP range in CIDR notation to use for the hosted master network. This
+ # range will be used for assigning internal IP addresses to the master or
+ # set of masters, as well as the ILB VIP. This range must not overlap with
+ # any other ranges in use within the cluster's network.
+ },
+ "createTime": "A String", # [Output only] The time the cluster was created, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "nodePools": [ # The node pools associated with this cluster.
+ # This field should not be set if "node_config" or "initial_node_count" are
+ # specified.
+ { # NodePool contains the name and configuration for a cluster's node pool.
+ # Node pools are a set of nodes (i.e. VM's), with a common configuration and
+ # specification, under the control of the cluster master. They may have a set
+ # of Kubernetes labels applied to them, which may be used to reference them
+ # during pod scheduling. They may also be resized up or down, to accommodate
+ # the workload.
+ "selfLink": "A String", # [Output only] Server-defined URL for the resource.
+ "management": { # NodeManagement defines the set of node management services turned on for the # NodeManagement configuration for this NodePool.
+ # node pool.
+ "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
+ # the Auto Upgrades will proceed.
+ "description": "A String", # [Output only] This field is set when upgrades are about to commence
+ # with the description of the upgrade.
+ "autoUpgradeStartTime": "A String", # [Output only] This field is set when upgrades are about to commence
+ # with the approximate start time for the upgrades, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ },
+ "autoRepair": True or False, # A flag that specifies whether the node auto-repair is enabled for the node
+ # pool. If enabled, the nodes in this node pool will be monitored and, if
+ # they fail health checks too many times, an automatic repair action will be
+ # triggered.
+ "autoUpgrade": True or False, # A flag that specifies whether node auto-upgrade is enabled for the node
+ # pool. If enabled, node auto-upgrade helps keep the nodes in your node pool
+ # up to date with the latest release version of Kubernetes.
+ },
+ "upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Upgrade settings control disruption and speed of the upgrade.
+ # disruption caused by an upgrade.
+ #
+ # maxUnavailable controls the number of nodes that can be simultaneously
+ # unavailable.
+ #
+ # maxSurge controls the number of additional nodes that can be added to the
+ # node pool temporarily for the time of the upgrade to increase the number of
+ # available nodes.
+ #
+ # (maxUnavailable + maxSurge) determines the level of parallelism (how many
+ # nodes are being upgraded at the same time).
+ #
+ # Note: upgrades inevitably introduce some disruption since workloads need to
+ # be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
+ # this holds true. (Disruption stays within the limits of
+ # PodDisruptionBudget, if it is configured.)
+ #
+ # Consider a hypothetical node pool with 5 nodes having maxSurge=2,
+ # maxUnavailable=1. This means the upgrade process upgrades 3 nodes
+ # simultaneously. It creates 2 additional (upgraded) nodes, then it brings
+ # down 3 old (not yet upgraded) nodes at the same time. This ensures that
+ # there are always at least 4 nodes available.
+ "maxUnavailable": 42, # The maximum number of nodes that can be simultaneously unavailable during
+ # the upgrade process. A node is considered available if its status is
+ # Ready.
+ "maxSurge": 42, # The maximum number of nodes that can be created beyond the current size
+ # of the node pool during the upgrade process.
+ },
+ "initialNodeCount": 42, # The initial node count for the pool. You must ensure that your
+ # Compute Engine [resource quota](https://cloud.google.com/compute/quotas)
+ # is sufficient for this number of instances. You must also have available
+ # firewall and routes quota.
+ "statusMessage": "A String", # [Output only] Additional information about the current status of this
+ # node pool instance, if available.
+ "version": "A String", # The version of the Kubernetes of this node.
+ "conditions": [ # Which conditions caused the current node pool state.
+ { # StatusCondition describes why a cluster or a node pool has a certain status
+ # (e.g., ERROR or DEGRADED).
+ "message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
+ },
+ ],
+ "config": { # Parameters that describe the nodes in a cluster. # The node configuration of the pool.
+ "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
+ #
+ # If unspecified, the default disk type is 'pd-standard'
+ "bootDiskKmsKey": "A String", #
+ # The Customer Managed Encryption Key used to encrypt the boot disk attached
+ # to each node in the node pool. This should be of the form
+ # projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME].
+ # For more information about protecting resources with Cloud KMS Keys please
+ # see:
+ # https://cloud.google.com/compute/docs/disks/customer-managed-encryption
+ "shieldedInstanceConfig": { # A set of Shielded Instance options. # Shielded Instance options.
+ "enableIntegrityMonitoring": True or False, # Defines whether the instance has integrity monitoring enabled.
+ #
+ # Enables monitoring and attestation of the boot integrity of the instance.
+ # The attestation is performed against the integrity policy baseline. This
+ # baseline is initially derived from the implicitly trusted boot image when
+ # the instance is created.
+ "enableSecureBoot": True or False, # Defines whether the instance has Secure Boot enabled.
+ #
+ # Secure Boot helps ensure that the system only runs authentic software by
+ # verifying the digital signature of all boot components, and halting the
+ # boot process if signature verification fails.
+ },
+ "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
+ # These will added in addition to any default label(s) that
+ # Kubernetes may apply to the node.
+ # In case of conflict in label keys, the applied set may differ depending on
+ # the Kubernetes version -- it's best to assume the behavior is undefined
+ # and conflicts should be avoided.
+ # For more information, including usage and the valid values, see:
+ # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
+ "a_key": "A String",
+ },
+ "oauthScopes": [ # The set of Google API scopes to be made available on all of the
+ # node VMs under the "default" service account.
+ #
+ # The following scopes are recommended, but not required, and by default are
+ # not included:
+ #
+ # * `https://www.googleapis.com/auth/compute` is required for mounting
+ # persistent storage on your nodes.
+ # * `https://www.googleapis.com/auth/devstorage.read_only` is required for
+ # communicating with **gcr.io**
+ # (the [Google Container
+ # Registry](https://cloud.google.com/container-registry/)).
+ #
+ # If unspecified, no scopes are added, unless Cloud Logging or Cloud
+ # Monitoring are enabled, in which case their required scopes will be added.
+ "A String",
+ ],
+ "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
+ # scheduled on the specified or newer CPU platform. Applicable values are the
+ # friendly names of CPU platforms, such as
+ # <code>minCpuPlatform: &quot;Intel Haswell&quot;</code> or
+ # <code>minCpuPlatform: &quot;Intel Sandy Bridge&quot;</code>. For more
+ # information, read [how to specify min CPU
+ # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
+ "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
+ #
+ # The limit for this value is dependent upon the maximum number of
+ # disks available on a machine per zone. See:
+ # https://cloud.google.com/compute/docs/disks/local-ssd
+ # for more information.
+ "taints": [ # List of kubernetes taints to be applied to each node.
+ #
+ # For more information, including usage and the valid values, see:
+ # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
+ { # Kubernetes taint is comprised of three fields: key, value, and effect. Effect
+ # can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute.
+ #
+ # See
+ # [here](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration)
+ # for more information, including usage and the valid values.
+ "value": "A String", # Value for taint.
+ "key": "A String", # Key for taint.
+ "effect": "A String", # Effect for taint.
+ },
+ ],
+ "imageType": "A String", # The image type to use for this node. Note that for a given image type,
+ # the latest version of it will be used.
+ "reservationAffinity": { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
+ # the specified [Zonal Compute
+ # Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
+ # to this node pool.
+ # is the configuration of desired reservation which instances could take
+ # capacity from.
+ "consumeReservationType": "A String", # Corresponds to the type of reservation consumption.
+ "key": "A String", # Corresponds to the label key of a reservation resource. To target a
+ # SPECIFIC_RESERVATION by name, specify "googleapis.com/reservation-name" as
+ # the key and specify the name of your reservation as its value.
+ "values": [ # Corresponds to the label value(s) of reservation resource(s).
+ "A String",
+ ],
+ },
+ "machineType": "A String", # The name of a Google Compute Engine [machine
+ # type](https://cloud.google.com/compute/docs/machine-types) (e.g.
+ # `n1-standard-1`).
+ #
+ # If unspecified, the default machine type is
+ # `n1-standard-1`.
+ "nodeGroup": "A String", # Setting this field will assign instances of this
+ # pool to run on the specified node group. This is useful for running
+ # workloads on [sole tenant
+ # nodes](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes).
+ "metadata": { # The metadata key/value pairs assigned to instances in the cluster.
+ #
+ # Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
+ # in length. These are reflected as part of a URL in the metadata server.
+ # Additionally, to avoid ambiguity, keys must not conflict with any other
+ # metadata keys for the project or be one of the reserved keys:
+ # "cluster-location"
+ # "cluster-name"
+ # "cluster-uid"
+ # "configure-sh"
+ # "containerd-configure-sh"
+ # "enable-os-login"
+ # "gci-ensure-gke-docker"
+ # "gci-metrics-enabled"
+ # "gci-update-strategy"
+ # "instance-template"
+ # "kube-env"
+ # "startup-script"
+ # "user-data"
+ # "disable-address-manager"
+ # "windows-startup-script-ps1"
+ # "common-psm1"
+ # "k8s-node-setup-psm1"
+ # "install-ssh-psm1"
+ # "user-profile-psm1"
+ # "serial-port-logging-enable"
+ #
+ # Values are free-form strings, and only have meaning as interpreted by
+ # the image running in the instance. The only restriction placed on them is
+ # that each value's size must be less than or equal to 32 KB.
+ #
+ # The total size of all keys and values must be less than 512 KB.
+ "a_key": "A String",
+ },
+ "tags": [ # The list of instance tags applied to all nodes. Tags are used to identify
+ # valid sources or targets for network firewalls and are specified by
+ # the client during cluster or node pool creation. Each tag within the list
+ # must comply with RFC1035.
+ "A String",
+ ],
+ "sandboxConfig": { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
+ "type": "A String", # Type of the sandbox to use for the node.
+ },
+ "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
+ # https://cloud.google.com/compute/docs/instances/preemptible for more
+ # information about preemptible VM instances.
+ "workloadMetadataConfig": { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
+ # workloads on the node pool.
+ "mode": "A String", # Mode is the configuration for how to expose metadata to workloads running
+ # on the node pool.
+ },
+ "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
+ # The smallest allowed disk size is 10GB.
+ #
+ # If unspecified, the default disk size is 100GB.
+ "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs.
+ # Specify the email address of the Service Account; otherwise, if no Service
+ # Account is specified, the "default" service account is used.
+ "accelerators": [ # A list of hardware accelerators to be attached to each node.
+ # See https://cloud.google.com/compute/docs/gpus for more information about
+ # support for GPUs.
+ { # AcceleratorConfig represents a Hardware Accelerator request.
+ "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
+ # [here](https://cloud.google.com/compute/docs/gpus)
+ "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
+ },
+ ],
+ },
+ "name": "A String", # The name of the node pool.
+ "maxPodsConstraint": { # Constraints applied to pods. # The constraint on the maximum number of pods that can be run
+ # simultaneously on a node in the node pool.
+ "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
+ },
+ "autoscaling": { # NodePoolAutoscaling contains information required by cluster autoscaler to # Autoscaler configuration for this NodePool. Autoscaler is enabled
+ # only if a valid configuration is present.
+ # adjust the size of the node pool to the current cluster usage.
+ "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be >= 1 and <=
+ # max_node_count.
+ "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be >= min_node_count. There
+ # has to enough quota to scale up the cluster.
+ "enabled": True or False, # Is autoscaling enabled for this node pool.
+ "autoprovisioned": True or False, # Can this node pool be deleted automatically.
+ },
+ "podIpv4CidrSize": 42, # [Output only] The pod CIDR block size per node in this node pool.
+ "instanceGroupUrls": [ # [Output only] The resource URLs of the [managed instance
+ # groups](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances)
+ # associated with this node pool.
+ "A String",
+ ],
+ "status": "A String", # [Output only] The status of the nodes in this pool instance.
+ "locations": [ # The list of Google Compute Engine
+ # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
+ # NodePool's nodes should be located.
+ "A String",
+ ],
+ },
+ ],
+ "subnetwork": "A String", # The name of the Google Compute Engine
+ # [subnetwork](https://cloud.google.com/compute/docs/subnetworks) to which
+ # the cluster is connected.
+ "addonsConfig": { # Configuration for the addons that can be automatically spun up in the # Configurations for the various addons available to run in the cluster.
+ # cluster, enabling additional functionality.
+ "kubernetesDashboard": { # Configuration for the Kubernetes Dashboard. # Configuration for the Kubernetes Dashboard.
+ # This addon is deprecated, and will be disabled in 1.15. It is recommended
+ # to use the Cloud Console to manage and monitor your Kubernetes clusters,
+ # workloads and applications. For more information, see:
+ # https://cloud.google.com/kubernetes-engine/docs/concepts/dashboards
+ "disabled": True or False, # Whether the Kubernetes Dashboard is enabled for this cluster.
+ },
+ "cloudRunConfig": { # Configuration options for the Cloud Run feature. # Configuration for the Cloud Run addon, which allows the user to use a
+ # managed Knative service.
+ "disabled": True or False, # Whether Cloud Run addon is enabled for this cluster.
+ },
+ "httpLoadBalancing": { # Configuration options for the HTTP (L7) load balancing controller addon, # Configuration for the HTTP (L7) load balancing controller addon, which
+ # makes it easy to set up HTTP load balancers for services in a cluster.
+ # which makes it easy to set up HTTP load balancers for services in a cluster.
+ "disabled": True or False, # Whether the HTTP Load Balancing controller is enabled in the cluster.
+ # When enabled, it runs a small pod in the cluster that manages the load
+ # balancers.
+ },
+ "horizontalPodAutoscaling": { # Configuration options for the horizontal pod autoscaling feature, which # Configuration for the horizontal pod autoscaling feature, which
+ # increases or decreases the number of replica pods a replication controller
+ # has based on the resource usage of the existing pods.
+ # increases or decreases the number of replica pods a replication controller
+ # has based on the resource usage of the existing pods.
+ "disabled": True or False, # Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.
+ # When enabled, it ensures that metrics are collected into Stackdriver
+ # Monitoring.
+ },
+ "dnsCacheConfig": { # Configuration for NodeLocal DNSCache # Configuration for NodeLocalDNS, a dns cache running on cluster nodes
+ "enabled": True or False, # Whether NodeLocal DNSCache is enabled for this cluster.
+ },
+ "networkPolicyConfig": { # Configuration for NetworkPolicy. This only tracks whether the addon # Configuration for NetworkPolicy. This only tracks whether the addon
+ # is enabled or not on the Master, it does not track whether network policy
+ # is enabled for the nodes.
+ # is enabled or not on the Master, it does not track whether network policy
+ # is enabled for the nodes.
+ "disabled": True or False, # Whether NetworkPolicy is enabled for this cluster.
+ },
+ },
+ "masterAuth": { # The authentication information for accessing the master endpoint. # The authentication information for accessing the master endpoint.
+ # If unspecified, the defaults are used:
+ # For clusters before v1.12, if master_auth is unspecified, `username` will
+ # be set to "admin", a random password will be generated, and a client
+ # certificate will be issued.
+ # Authentication can be done using HTTP basic auth or using client
+ # certificates.
+ "clientKey": "A String", # [Output only] Base64-encoded private key used by clients to authenticate
+ # to the cluster endpoint.
+ "clientCertificate": "A String", # [Output only] Base64-encoded public certificate used by clients to
+ # authenticate to the cluster endpoint.
+ "username": "A String", # The username to use for HTTP basic authentication to the master endpoint.
+ # For clusters v1.6.0 and later, basic authentication can be disabled by
+ # leaving username unspecified (or setting it to the empty string).
+ "password": "A String", # The password to use for HTTP basic authentication to the master endpoint.
+ # Because the master endpoint is open to the Internet, you should create a
+ # strong password. If a password is provided for cluster creation, username
+ # must be non-empty.
+ "clientCertificateConfig": { # Configuration for client certificates on the cluster. # Configuration for client certificate authentication on the cluster. For
+ # clusters before v1.12, if no configuration is specified, a client
+ # certificate is issued.
+ "issueClientCertificate": True or False, # Issue a client certificate.
+ },
+ "clusterCaCertificate": "A String", # [Output only] Base64-encoded public certificate that is the root of
+ # trust for the cluster.
+ },
+ "verticalPodAutoscaling": { # VerticalPodAutoscaling contains global, per-cluster information # Cluster-level Vertical Pod Autoscaling configuration.
+ # required by Vertical Pod Autoscaler to automatically adjust
+ # the resources of pods controlled by it.
+ "enabled": True or False, # Enables vertical pod autoscaling.
+ },
+ "enableTpu": True or False, # Enable the ability to use Cloud TPUs in this cluster.
+ "initialClusterVersion": "A 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.
#
- # See the `masterAuth` property of this resource for username and
- # password information.
+ # 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
+ "currentNodeCount": 42, # [Output only] The number of nodes currently in the cluster. Deprecated.
+ # Call Kubernetes API directly to retrieve node information.
+ "tpuIpv4CidrBlock": "A String", # [Output only] The IP address range of the Cloud TPUs in this cluster, in
+ # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ # notation (e.g. `1.2.3.4/29`).
+ "locations": [ # The list of Google Compute Engine
+ # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
+ # cluster's nodes should be located.
+ "A String",
+ ],
+ "selfLink": "A String", # [Output only] Server-defined URL for the resource.
+ "description": "A String", # An optional description of this cluster.
+ "statusMessage": "A String", # [Output only] Additional information about the current status of this
+ # cluster, if available.
"location": "A String", # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
+ "servicesIpv4Cidr": "A String", # [Output only] The IP address range of the Kubernetes services in
+ # this cluster, in
+ # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ # notation (e.g. `1.2.3.4/29`). Service addresses are
+ # typically put in the last `/16` from the container CIDR.
},
],
"missingZones": [ # If any zones are listed here, the list of clusters returned
@@ -3397,31 +3490,27 @@
The object takes the form of:
{ # SetAddonsConfigRequest sets the addons associated with the cluster.
- "name": "A String", # The name (project, location, cluster) of the cluster to set addons.
- # Specified in the format `projects/*/locations/*/clusters/*`.
- "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
- # number](https://support.google.com/cloud/answer/6158840).
- # This field has been deprecated and replaced by the name field.
- "zone": "A String", # Deprecated. The name of the Google Compute Engine
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
- # cluster resides. This field has been deprecated and replaced by the name
- # field.
- "clusterId": "A String", # Deprecated. The name of the cluster to upgrade.
- # This field has been deprecated and replaced by the name field.
"addonsConfig": { # Configuration for the addons that can be automatically spun up in the # Required. The desired configurations for the various addons available to run in the
# cluster.
# cluster, enabling additional functionality.
- "networkPolicyConfig": { # Configuration for NetworkPolicy. This only tracks whether the addon # Configuration for NetworkPolicy. This only tracks whether the addon
- # is enabled or not on the Master, it does not track whether network policy
- # is enabled for the nodes.
- # is enabled or not on the Master, it does not track whether network policy
- # is enabled for the nodes.
- "disabled": True or False, # Whether NetworkPolicy is enabled for this cluster.
+ "kubernetesDashboard": { # Configuration for the Kubernetes Dashboard. # Configuration for the Kubernetes Dashboard.
+ # This addon is deprecated, and will be disabled in 1.15. It is recommended
+ # to use the Cloud Console to manage and monitor your Kubernetes clusters,
+ # workloads and applications. For more information, see:
+ # https://cloud.google.com/kubernetes-engine/docs/concepts/dashboards
+ "disabled": True or False, # Whether the Kubernetes Dashboard is enabled for this cluster.
},
"cloudRunConfig": { # Configuration options for the Cloud Run feature. # Configuration for the Cloud Run addon, which allows the user to use a
# managed Knative service.
"disabled": True or False, # Whether Cloud Run addon is enabled for this cluster.
},
+ "httpLoadBalancing": { # Configuration options for the HTTP (L7) load balancing controller addon, # Configuration for the HTTP (L7) load balancing controller addon, which
+ # makes it easy to set up HTTP load balancers for services in a cluster.
+ # which makes it easy to set up HTTP load balancers for services in a cluster.
+ "disabled": True or False, # Whether the HTTP Load Balancing controller is enabled in the cluster.
+ # When enabled, it runs a small pod in the cluster that manages the load
+ # balancers.
+ },
"horizontalPodAutoscaling": { # Configuration options for the horizontal pod autoscaling feature, which # Configuration for the horizontal pod autoscaling feature, which
# increases or decreases the number of replica pods a replication controller
# has based on the resource usage of the existing pods.
@@ -3431,21 +3520,28 @@
# When enabled, it ensures that metrics are collected into Stackdriver
# Monitoring.
},
- "httpLoadBalancing": { # Configuration options for the HTTP (L7) load balancing controller addon, # Configuration for the HTTP (L7) load balancing controller addon, which
- # makes it easy to set up HTTP load balancers for services in a cluster.
- # which makes it easy to set up HTTP load balancers for services in a cluster.
- "disabled": True or False, # Whether the HTTP Load Balancing controller is enabled in the cluster.
- # When enabled, it runs a small pod in the cluster that manages the load
- # balancers.
+ "dnsCacheConfig": { # Configuration for NodeLocal DNSCache # Configuration for NodeLocalDNS, a dns cache running on cluster nodes
+ "enabled": True or False, # Whether NodeLocal DNSCache is enabled for this cluster.
},
- "kubernetesDashboard": { # Configuration for the Kubernetes Dashboard. # Configuration for the Kubernetes Dashboard.
- # This addon is deprecated, and will be disabled in 1.15. It is recommended
- # to use the Cloud Console to manage and monitor your Kubernetes clusters,
- # workloads and applications. For more information, see:
- # https://cloud.google.com/kubernetes-engine/docs/concepts/dashboards
- "disabled": True or False, # Whether the Kubernetes Dashboard is enabled for this cluster.
+ "networkPolicyConfig": { # Configuration for NetworkPolicy. This only tracks whether the addon # Configuration for NetworkPolicy. This only tracks whether the addon
+ # is enabled or not on the Master, it does not track whether network policy
+ # is enabled for the nodes.
+ # is enabled or not on the Master, it does not track whether network policy
+ # is enabled for the nodes.
+ "disabled": True or False, # Whether NetworkPolicy is enabled for this cluster.
},
},
+ "clusterId": "A String", # Deprecated. The name of the cluster to upgrade.
+ # This field has been deprecated and replaced by the name field.
+ "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
+ # number](https://support.google.com/cloud/answer/6158840).
+ # This field has been deprecated and replaced by the name field.
+ "name": "A String", # The name (project, location, cluster) of the cluster to set addons.
+ # Specified in the format `projects/*/locations/*/clusters/*`.
+ "zone": "A String", # Deprecated. The name of the Google Compute Engine
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ # cluster resides. This field has been deprecated and replaced by the name
+ # field.
}
x__xgafv: string, V1 error format.
@@ -3458,19 +3554,9 @@
{ # This operation resource represents operations that may have happened or are
# happening on the cluster. All fields are output only.
- "clusterConditions": [ # Which conditions caused the current cluster state.
- { # StatusCondition describes why a cluster or a node pool has a certain status
- # (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
- "message": "A String", # Human-friendly representation of the condition
- },
- ],
"progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
"name": "A String", # A non-parameterized string describing an operation stage.
# Unset for single-stage operations.
- "stages": [ # Substages of an operation or a stage.
- # Object with schema name: OperationProgress
- ],
"metrics": [ # Progress metric bundle, for example:
# metrics: [{name: "nodes done", int_value: 15},
# {name: "nodes total", int_value: 32}]
@@ -3478,41 +3564,51 @@
# metrics: [{name: "progress", double_value: 0.56},
# {name: "progress scale", double_value: 1.0}]
{ # Progress metric is (string, int|float|string) pair.
- "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
+ "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
"doubleValue": 3.14, # For metrics with floating point value.
"intValue": "A String", # For metrics with integer value.
- "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
+ "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
},
],
"status": "A String", # Status of an operation stage.
# Unset for single-stage operations.
+ "stages": [ # Substages of an operation or a stage.
+ # Object with schema name: OperationProgress
+ ],
},
+ "targetLink": "A String", # Server-defined URL for the target of the operation.
+ "status": "A String", # The current status of the operation.
+ "operationType": "A String", # The operation type.
+ "startTime": "A String", # [Output only] The time the operation started, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "clusterConditions": [ # Which conditions caused the current cluster state.
+ { # StatusCondition describes why a cluster or a node pool has a certain status
+ # (e.g., ERROR or DEGRADED).
+ "message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
+ },
+ ],
"zone": "A String", # The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# operation is taking place. This field is deprecated, use location instead.
- "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
"selfLink": "A String", # Server-defined URL for the resource.
- "detail": "A String", # Detailed operation progress, if available.
- "targetLink": "A String", # Server-defined URL for the target of the operation.
- "operationType": "A String", # The operation type.
- "status": "A String", # The current status of the operation.
"name": "A String", # The server-assigned ID for the operation.
+ "detail": "A String", # Detailed operation progress, if available.
+ "endTime": "A String", # [Output only] The time the operation completed, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"nodepoolConditions": [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
"message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
},
],
- "endTime": "A String", # [Output only] The time the operation completed, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"location": "A String", # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
- "startTime": "A String", # [Output only] The time the operation started, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
}</pre>
</div>
@@ -3528,18 +3624,18 @@
{ # SetLegacyAbacRequest enables or disables the ABAC authorization mechanism for
# a cluster.
- "clusterId": "A String", # Deprecated. The name of the cluster to update.
- # This field has been deprecated and replaced by the name field.
"name": "A String", # The name (project, location, cluster id) of the cluster to set legacy abac.
# Specified in the format `projects/*/locations/*/clusters/*`.
- "enabled": True or False, # Required. Whether ABAC authorization will be enabled in the cluster.
- "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
- # number](https://support.google.com/cloud/answer/6158840).
- # This field has been deprecated and replaced by the name field.
"zone": "A String", # Deprecated. The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# cluster resides. This field has been deprecated and replaced by the name
# field.
+ "clusterId": "A String", # Deprecated. The name of the cluster to update.
+ # This field has been deprecated and replaced by the name field.
+ "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
+ # number](https://support.google.com/cloud/answer/6158840).
+ # This field has been deprecated and replaced by the name field.
+ "enabled": True or False, # Required. Whether ABAC authorization will be enabled in the cluster.
}
x__xgafv: string, V1 error format.
@@ -3552,19 +3648,9 @@
{ # This operation resource represents operations that may have happened or are
# happening on the cluster. All fields are output only.
- "clusterConditions": [ # Which conditions caused the current cluster state.
- { # StatusCondition describes why a cluster or a node pool has a certain status
- # (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
- "message": "A String", # Human-friendly representation of the condition
- },
- ],
"progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
"name": "A String", # A non-parameterized string describing an operation stage.
# Unset for single-stage operations.
- "stages": [ # Substages of an operation or a stage.
- # Object with schema name: OperationProgress
- ],
"metrics": [ # Progress metric bundle, for example:
# metrics: [{name: "nodes done", int_value: 15},
# {name: "nodes total", int_value: 32}]
@@ -3572,41 +3658,51 @@
# metrics: [{name: "progress", double_value: 0.56},
# {name: "progress scale", double_value: 1.0}]
{ # Progress metric is (string, int|float|string) pair.
- "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
+ "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
"doubleValue": 3.14, # For metrics with floating point value.
"intValue": "A String", # For metrics with integer value.
- "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
+ "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
},
],
"status": "A String", # Status of an operation stage.
# Unset for single-stage operations.
+ "stages": [ # Substages of an operation or a stage.
+ # Object with schema name: OperationProgress
+ ],
},
+ "targetLink": "A String", # Server-defined URL for the target of the operation.
+ "status": "A String", # The current status of the operation.
+ "operationType": "A String", # The operation type.
+ "startTime": "A String", # [Output only] The time the operation started, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "clusterConditions": [ # Which conditions caused the current cluster state.
+ { # StatusCondition describes why a cluster or a node pool has a certain status
+ # (e.g., ERROR or DEGRADED).
+ "message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
+ },
+ ],
"zone": "A String", # The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# operation is taking place. This field is deprecated, use location instead.
- "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
"selfLink": "A String", # Server-defined URL for the resource.
- "detail": "A String", # Detailed operation progress, if available.
- "targetLink": "A String", # Server-defined URL for the target of the operation.
- "operationType": "A String", # The operation type.
- "status": "A String", # The current status of the operation.
"name": "A String", # The server-assigned ID for the operation.
+ "detail": "A String", # Detailed operation progress, if available.
+ "endTime": "A String", # [Output only] The time the operation completed, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"nodepoolConditions": [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
"message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
},
],
- "endTime": "A String", # [Output only] The time the operation completed, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"location": "A String", # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
- "startTime": "A String", # [Output only] The time the operation started, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
}</pre>
</div>
@@ -3624,10 +3720,14 @@
The object takes the form of:
{ # SetLocationsRequest sets the locations of the cluster.
- "clusterId": "A String", # Deprecated. The name of the cluster to upgrade.
- # This field has been deprecated and replaced by the name field.
"name": "A String", # The name (project, location, cluster) of the cluster to set locations.
# Specified in the format `projects/*/locations/*/clusters/*`.
+ "zone": "A String", # Deprecated. The name of the Google Compute Engine
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ # cluster resides. This field has been deprecated and replaced by the name
+ # field.
+ "clusterId": "A String", # Deprecated. The name of the cluster to upgrade.
+ # This field has been deprecated and replaced by the name field.
"projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
# number](https://support.google.com/cloud/answer/6158840).
# This field has been deprecated and replaced by the name field.
@@ -3640,10 +3740,6 @@
# This list must always include the cluster's primary zone.
"A String",
],
- "zone": "A String", # Deprecated. The name of the Google Compute Engine
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
- # cluster resides. This field has been deprecated and replaced by the name
- # field.
}
x__xgafv: string, V1 error format.
@@ -3656,19 +3752,9 @@
{ # This operation resource represents operations that may have happened or are
# happening on the cluster. All fields are output only.
- "clusterConditions": [ # Which conditions caused the current cluster state.
- { # StatusCondition describes why a cluster or a node pool has a certain status
- # (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
- "message": "A String", # Human-friendly representation of the condition
- },
- ],
"progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
"name": "A String", # A non-parameterized string describing an operation stage.
# Unset for single-stage operations.
- "stages": [ # Substages of an operation or a stage.
- # Object with schema name: OperationProgress
- ],
"metrics": [ # Progress metric bundle, for example:
# metrics: [{name: "nodes done", int_value: 15},
# {name: "nodes total", int_value: 32}]
@@ -3676,41 +3762,51 @@
# metrics: [{name: "progress", double_value: 0.56},
# {name: "progress scale", double_value: 1.0}]
{ # Progress metric is (string, int|float|string) pair.
- "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
+ "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
"doubleValue": 3.14, # For metrics with floating point value.
"intValue": "A String", # For metrics with integer value.
- "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
+ "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
},
],
"status": "A String", # Status of an operation stage.
# Unset for single-stage operations.
+ "stages": [ # Substages of an operation or a stage.
+ # Object with schema name: OperationProgress
+ ],
},
+ "targetLink": "A String", # Server-defined URL for the target of the operation.
+ "status": "A String", # The current status of the operation.
+ "operationType": "A String", # The operation type.
+ "startTime": "A String", # [Output only] The time the operation started, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "clusterConditions": [ # Which conditions caused the current cluster state.
+ { # StatusCondition describes why a cluster or a node pool has a certain status
+ # (e.g., ERROR or DEGRADED).
+ "message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
+ },
+ ],
"zone": "A String", # The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# operation is taking place. This field is deprecated, use location instead.
- "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
"selfLink": "A String", # Server-defined URL for the resource.
- "detail": "A String", # Detailed operation progress, if available.
- "targetLink": "A String", # Server-defined URL for the target of the operation.
- "operationType": "A String", # The operation type.
- "status": "A String", # The current status of the operation.
"name": "A String", # The server-assigned ID for the operation.
+ "detail": "A String", # Detailed operation progress, if available.
+ "endTime": "A String", # [Output only] The time the operation completed, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"nodepoolConditions": [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
"message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
},
],
- "endTime": "A String", # [Output only] The time the operation completed, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"location": "A String", # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
- "startTime": "A String", # [Output only] The time the operation started, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
}</pre>
</div>
@@ -3725,17 +3821,17 @@
The object takes the form of:
{ # SetLoggingServiceRequest sets the logging service of a cluster.
- "name": "A String", # The name (project, location, cluster) of the cluster to set logging.
- # Specified in the format `projects/*/locations/*/clusters/*`.
+ "clusterId": "A String", # Deprecated. The name of the cluster to upgrade.
+ # This field has been deprecated and replaced by the name field.
"projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
# number](https://support.google.com/cloud/answer/6158840).
# This field has been deprecated and replaced by the name field.
+ "name": "A String", # The name (project, location, cluster) of the cluster to set logging.
+ # Specified in the format `projects/*/locations/*/clusters/*`.
"zone": "A String", # Deprecated. The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# cluster resides. This field has been deprecated and replaced by the name
# field.
- "clusterId": "A String", # Deprecated. The name of the cluster to upgrade.
- # This field has been deprecated and replaced by the name field.
"loggingService": "A String", # Required. The logging service the cluster should use to write logs.
# Currently available options:
#
@@ -3759,19 +3855,9 @@
{ # This operation resource represents operations that may have happened or are
# happening on the cluster. All fields are output only.
- "clusterConditions": [ # Which conditions caused the current cluster state.
- { # StatusCondition describes why a cluster or a node pool has a certain status
- # (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
- "message": "A String", # Human-friendly representation of the condition
- },
- ],
"progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
"name": "A String", # A non-parameterized string describing an operation stage.
# Unset for single-stage operations.
- "stages": [ # Substages of an operation or a stage.
- # Object with schema name: OperationProgress
- ],
"metrics": [ # Progress metric bundle, for example:
# metrics: [{name: "nodes done", int_value: 15},
# {name: "nodes total", int_value: 32}]
@@ -3779,41 +3865,51 @@
# metrics: [{name: "progress", double_value: 0.56},
# {name: "progress scale", double_value: 1.0}]
{ # Progress metric is (string, int|float|string) pair.
- "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
+ "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
"doubleValue": 3.14, # For metrics with floating point value.
"intValue": "A String", # For metrics with integer value.
- "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
+ "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
},
],
"status": "A String", # Status of an operation stage.
# Unset for single-stage operations.
+ "stages": [ # Substages of an operation or a stage.
+ # Object with schema name: OperationProgress
+ ],
},
+ "targetLink": "A String", # Server-defined URL for the target of the operation.
+ "status": "A String", # The current status of the operation.
+ "operationType": "A String", # The operation type.
+ "startTime": "A String", # [Output only] The time the operation started, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "clusterConditions": [ # Which conditions caused the current cluster state.
+ { # StatusCondition describes why a cluster or a node pool has a certain status
+ # (e.g., ERROR or DEGRADED).
+ "message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
+ },
+ ],
"zone": "A String", # The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# operation is taking place. This field is deprecated, use location instead.
- "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
"selfLink": "A String", # Server-defined URL for the resource.
- "detail": "A String", # Detailed operation progress, if available.
- "targetLink": "A String", # Server-defined URL for the target of the operation.
- "operationType": "A String", # The operation type.
- "status": "A String", # The current status of the operation.
"name": "A String", # The server-assigned ID for the operation.
+ "detail": "A String", # Detailed operation progress, if available.
+ "endTime": "A String", # [Output only] The time the operation completed, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"nodepoolConditions": [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
"message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
},
],
- "endTime": "A String", # [Output only] The time the operation completed, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"location": "A String", # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
- "startTime": "A String", # [Output only] The time the operation started, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
}</pre>
</div>
@@ -3843,6 +3939,15 @@
"startTime": "A String", # The time that the window first starts.
},
},
+ "dailyMaintenanceWindow": { # Time window specified for daily maintenance operations. # DailyMaintenanceWindow specifies a daily maintenance operation window.
+ "duration": "A String", # [Output only] Duration of the time window, automatically chosen to be
+ # smallest possible in the given scenario.
+ # Duration will be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
+ # format "PTnHnMnS".
+ "startTime": "A String", # Time within the maintenance window to start the maintenance operations.
+ # Time format should be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
+ # format "HH:MM", where HH : [00-23] and MM : [00-59] GMT.
+ },
"recurringWindow": { # Represents an arbitrary window of time that recurs. # RecurringWindow specifies some number of recurring time periods for
# maintenance to occur. The time windows may be overlapping. If no
# maintenance windows are set, maintenance can occur at any time.
@@ -3879,15 +3984,6 @@
# to specify duration of the window and when it first starts.
# The FREQ values of HOURLY, MINUTELY, and SECONDLY are not supported.
},
- "dailyMaintenanceWindow": { # Time window specified for daily maintenance operations. # DailyMaintenanceWindow specifies a daily maintenance operation window.
- "startTime": "A String", # Time within the maintenance window to start the maintenance operations.
- # Time format should be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
- # format "HH:MM", where HH : [00-23] and MM : [00-59] GMT.
- "duration": "A String", # [Output only] Duration of the time window, automatically chosen to be
- # smallest possible in the given scenario.
- # Duration will be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
- # format "PTnHnMnS".
- },
},
"resourceVersion": "A String", # A hash identifying the version of this policy, so that updates to fields of
# the policy won't accidentally undo intermediate changes (and so that users
@@ -3897,10 +3993,10 @@
},
"projectId": "A String", # Required. The Google Developers Console [project ID or project
# number](https://support.google.com/cloud/answer/6158840).
+ "clusterId": "A String", # Required. The name of the cluster to update.
"zone": "A String", # Required. The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# cluster resides.
- "clusterId": "A String", # Required. The name of the cluster to update.
}
x__xgafv: string, V1 error format.
@@ -3913,19 +4009,9 @@
{ # This operation resource represents operations that may have happened or are
# happening on the cluster. All fields are output only.
- "clusterConditions": [ # Which conditions caused the current cluster state.
- { # StatusCondition describes why a cluster or a node pool has a certain status
- # (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
- "message": "A String", # Human-friendly representation of the condition
- },
- ],
"progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
"name": "A String", # A non-parameterized string describing an operation stage.
# Unset for single-stage operations.
- "stages": [ # Substages of an operation or a stage.
- # Object with schema name: OperationProgress
- ],
"metrics": [ # Progress metric bundle, for example:
# metrics: [{name: "nodes done", int_value: 15},
# {name: "nodes total", int_value: 32}]
@@ -3933,41 +4019,51 @@
# metrics: [{name: "progress", double_value: 0.56},
# {name: "progress scale", double_value: 1.0}]
{ # Progress metric is (string, int|float|string) pair.
- "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
+ "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
"doubleValue": 3.14, # For metrics with floating point value.
"intValue": "A String", # For metrics with integer value.
- "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
+ "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
},
],
"status": "A String", # Status of an operation stage.
# Unset for single-stage operations.
+ "stages": [ # Substages of an operation or a stage.
+ # Object with schema name: OperationProgress
+ ],
},
+ "targetLink": "A String", # Server-defined URL for the target of the operation.
+ "status": "A String", # The current status of the operation.
+ "operationType": "A String", # The operation type.
+ "startTime": "A String", # [Output only] The time the operation started, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "clusterConditions": [ # Which conditions caused the current cluster state.
+ { # StatusCondition describes why a cluster or a node pool has a certain status
+ # (e.g., ERROR or DEGRADED).
+ "message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
+ },
+ ],
"zone": "A String", # The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# operation is taking place. This field is deprecated, use location instead.
- "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
"selfLink": "A String", # Server-defined URL for the resource.
- "detail": "A String", # Detailed operation progress, if available.
- "targetLink": "A String", # Server-defined URL for the target of the operation.
- "operationType": "A String", # The operation type.
- "status": "A String", # The current status of the operation.
"name": "A String", # The server-assigned ID for the operation.
+ "detail": "A String", # Detailed operation progress, if available.
+ "endTime": "A String", # [Output only] The time the operation completed, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"nodepoolConditions": [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
"message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
},
],
- "endTime": "A String", # [Output only] The time the operation completed, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"location": "A String", # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
- "startTime": "A String", # [Output only] The time the operation started, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
}</pre>
</div>
@@ -3984,17 +4080,22 @@
The object takes the form of:
{ # SetMasterAuthRequest updates the admin password of a cluster.
- "name": "A String", # The name (project, location, cluster) of the cluster to set auth.
- # Specified in the format `projects/*/locations/*/clusters/*`.
- "action": "A String", # Required. The exact form of action to be taken on the master auth.
- "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
- # number](https://support.google.com/cloud/answer/6158840).
- # This field has been deprecated and replaced by the name field.
+ "zone": "A String", # Deprecated. The name of the Google Compute Engine
+ # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ # cluster resides. This field has been deprecated and replaced by the name
+ # field.
"clusterId": "A String", # Deprecated. The name of the cluster to upgrade.
# This field has been deprecated and replaced by the name field.
"update": { # The authentication information for accessing the master endpoint. # Required. A description of the update.
# Authentication can be done using HTTP basic auth or using client
# certificates.
+ "clientKey": "A String", # [Output only] Base64-encoded private key used by clients to authenticate
+ # to the cluster endpoint.
+ "clientCertificate": "A String", # [Output only] Base64-encoded public certificate used by clients to
+ # authenticate to the cluster endpoint.
+ "username": "A String", # The username to use for HTTP basic authentication to the master endpoint.
+ # For clusters v1.6.0 and later, basic authentication can be disabled by
+ # leaving username unspecified (or setting it to the empty string).
"password": "A String", # The password to use for HTTP basic authentication to the master endpoint.
# Because the master endpoint is open to the Internet, you should create a
# strong password. If a password is provided for cluster creation, username
@@ -4004,20 +4105,15 @@
# certificate is issued.
"issueClientCertificate": True or False, # Issue a client certificate.
},
- "clientKey": "A String", # [Output only] Base64-encoded private key used by clients to authenticate
- # to the cluster endpoint.
"clusterCaCertificate": "A String", # [Output only] Base64-encoded public certificate that is the root of
# trust for the cluster.
- "clientCertificate": "A String", # [Output only] Base64-encoded public certificate used by clients to
- # authenticate to the cluster endpoint.
- "username": "A String", # The username to use for HTTP basic authentication to the master endpoint.
- # For clusters v1.6.0 and later, basic authentication can be disabled by
- # leaving username unspecified (or setting it to the empty string).
},
- "zone": "A String", # Deprecated. The name of the Google Compute Engine
- # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
- # cluster resides. This field has been deprecated and replaced by the name
- # field.
+ "name": "A String", # The name (project, location, cluster) of the cluster to set auth.
+ # Specified in the format `projects/*/locations/*/clusters/*`.
+ "action": "A String", # Required. The exact form of action to be taken on the master auth.
+ "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
+ # number](https://support.google.com/cloud/answer/6158840).
+ # This field has been deprecated and replaced by the name field.
}
x__xgafv: string, V1 error format.
@@ -4030,19 +4126,9 @@
{ # This operation resource represents operations that may have happened or are
# happening on the cluster. All fields are output only.
- "clusterConditions": [ # Which conditions caused the current cluster state.
- { # StatusCondition describes why a cluster or a node pool has a certain status
- # (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
- "message": "A String", # Human-friendly representation of the condition
- },
- ],
"progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
"name": "A String", # A non-parameterized string describing an operation stage.
# Unset for single-stage operations.
- "stages": [ # Substages of an operation or a stage.
- # Object with schema name: OperationProgress
- ],
"metrics": [ # Progress metric bundle, for example:
# metrics: [{name: "nodes done", int_value: 15},
# {name: "nodes total", int_value: 32}]
@@ -4050,41 +4136,51 @@
# metrics: [{name: "progress", double_value: 0.56},
# {name: "progress scale", double_value: 1.0}]
{ # Progress metric is (string, int|float|string) pair.
- "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
+ "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
"doubleValue": 3.14, # For metrics with floating point value.
"intValue": "A String", # For metrics with integer value.
- "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
+ "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
},
],
"status": "A String", # Status of an operation stage.
# Unset for single-stage operations.
+ "stages": [ # Substages of an operation or a stage.
+ # Object with schema name: OperationProgress
+ ],
},
+ "targetLink": "A String", # Server-defined URL for the target of the operation.
+ "status": "A String", # The current status of the operation.
+ "operationType": "A String", # The operation type.
+ "startTime": "A String", # [Output only] The time the operation started, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "clusterConditions": [ # Which conditions caused the current cluster state.
+ { # StatusCondition describes why a cluster or a node pool has a certain status
+ # (e.g., ERROR or DEGRADED).
+ "message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
+ },
+ ],
"zone": "A String", # The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# operation is taking place. This field is deprecated, use location instead.
- "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
"selfLink": "A String", # Server-defined URL for the resource.
- "detail": "A String", # Detailed operation progress, if available.
- "targetLink": "A String", # Server-defined URL for the target of the operation.
- "operationType": "A String", # The operation type.
- "status": "A String", # The current status of the operation.
"name": "A String", # The server-assigned ID for the operation.
+ "detail": "A String", # Detailed operation progress, if available.
+ "endTime": "A String", # [Output only] The time the operation completed, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"nodepoolConditions": [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
"message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
},
],
- "endTime": "A String", # [Output only] The time the operation completed, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"location": "A String", # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
- "startTime": "A String", # [Output only] The time the operation started, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
}</pre>
</div>
@@ -4099,8 +4195,6 @@
The object takes the form of:
{ # SetMonitoringServiceRequest sets the monitoring service of a cluster.
- "clusterId": "A String", # Deprecated. The name of the cluster to upgrade.
- # This field has been deprecated and replaced by the name field.
"monitoringService": "A String", # Required. The monitoring service the cluster should use to write metrics.
# Currently available options:
#
@@ -4112,15 +4206,17 @@
#
# If left as an empty string,`monitoring.googleapis.com/kubernetes` will be
# used for GKE 1.14+ or `monitoring.googleapis.com` for earlier versions.
- "name": "A String", # The name (project, location, cluster) of the cluster to set monitoring.
- # Specified in the format `projects/*/locations/*/clusters/*`.
- "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
- # number](https://support.google.com/cloud/answer/6158840).
+ "clusterId": "A String", # Deprecated. The name of the cluster to upgrade.
# This field has been deprecated and replaced by the name field.
"zone": "A String", # Deprecated. The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# cluster resides. This field has been deprecated and replaced by the name
# field.
+ "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
+ # number](https://support.google.com/cloud/answer/6158840).
+ # This field has been deprecated and replaced by the name field.
+ "name": "A String", # The name (project, location, cluster) of the cluster to set monitoring.
+ # Specified in the format `projects/*/locations/*/clusters/*`.
}
x__xgafv: string, V1 error format.
@@ -4133,19 +4229,9 @@
{ # This operation resource represents operations that may have happened or are
# happening on the cluster. All fields are output only.
- "clusterConditions": [ # Which conditions caused the current cluster state.
- { # StatusCondition describes why a cluster or a node pool has a certain status
- # (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
- "message": "A String", # Human-friendly representation of the condition
- },
- ],
"progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
"name": "A String", # A non-parameterized string describing an operation stage.
# Unset for single-stage operations.
- "stages": [ # Substages of an operation or a stage.
- # Object with schema name: OperationProgress
- ],
"metrics": [ # Progress metric bundle, for example:
# metrics: [{name: "nodes done", int_value: 15},
# {name: "nodes total", int_value: 32}]
@@ -4153,41 +4239,51 @@
# metrics: [{name: "progress", double_value: 0.56},
# {name: "progress scale", double_value: 1.0}]
{ # Progress metric is (string, int|float|string) pair.
- "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
+ "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
"doubleValue": 3.14, # For metrics with floating point value.
"intValue": "A String", # For metrics with integer value.
- "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
+ "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
},
],
"status": "A String", # Status of an operation stage.
# Unset for single-stage operations.
+ "stages": [ # Substages of an operation or a stage.
+ # Object with schema name: OperationProgress
+ ],
},
+ "targetLink": "A String", # Server-defined URL for the target of the operation.
+ "status": "A String", # The current status of the operation.
+ "operationType": "A String", # The operation type.
+ "startTime": "A String", # [Output only] The time the operation started, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "clusterConditions": [ # Which conditions caused the current cluster state.
+ { # StatusCondition describes why a cluster or a node pool has a certain status
+ # (e.g., ERROR or DEGRADED).
+ "message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
+ },
+ ],
"zone": "A String", # The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# operation is taking place. This field is deprecated, use location instead.
- "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
"selfLink": "A String", # Server-defined URL for the resource.
- "detail": "A String", # Detailed operation progress, if available.
- "targetLink": "A String", # Server-defined URL for the target of the operation.
- "operationType": "A String", # The operation type.
- "status": "A String", # The current status of the operation.
"name": "A String", # The server-assigned ID for the operation.
+ "detail": "A String", # Detailed operation progress, if available.
+ "endTime": "A String", # [Output only] The time the operation completed, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"nodepoolConditions": [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
"message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
},
],
- "endTime": "A String", # [Output only] The time the operation completed, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"location": "A String", # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
- "startTime": "A String", # [Output only] The time the operation started, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
}</pre>
</div>
@@ -4202,22 +4298,22 @@
The object takes the form of:
{ # SetNetworkPolicyRequest enables/disables network policy for a cluster.
- "clusterId": "A String", # Deprecated. The name of the cluster.
- # This field has been deprecated and replaced by the name field.
- "networkPolicy": { # Configuration options for the NetworkPolicy feature. # Required. Configuration options for the NetworkPolicy feature.
- # https://kubernetes.io/docs/concepts/services-networking/networkpolicies/
- "provider": "A String", # The selected network policy provider.
- "enabled": True or False, # Whether network policy is enabled on the cluster.
- },
"name": "A String", # The name (project, location, cluster id) of the cluster to set networking
# policy. Specified in the format `projects/*/locations/*/clusters/*`.
- "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
- # number](https://developers.google.com/console/help/new/#projectnumber).
+ "clusterId": "A String", # Deprecated. The name of the cluster.
# This field has been deprecated and replaced by the name field.
"zone": "A String", # Deprecated. The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# cluster resides. This field has been deprecated and replaced by the name
# field.
+ "networkPolicy": { # Configuration options for the NetworkPolicy feature. # Required. Configuration options for the NetworkPolicy feature.
+ # https://kubernetes.io/docs/concepts/services-networking/networkpolicies/
+ "enabled": True or False, # Whether network policy is enabled on the cluster.
+ "provider": "A String", # The selected network policy provider.
+ },
+ "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
+ # number](https://developers.google.com/console/help/new/#projectnumber).
+ # This field has been deprecated and replaced by the name field.
}
x__xgafv: string, V1 error format.
@@ -4230,19 +4326,9 @@
{ # This operation resource represents operations that may have happened or are
# happening on the cluster. All fields are output only.
- "clusterConditions": [ # Which conditions caused the current cluster state.
- { # StatusCondition describes why a cluster or a node pool has a certain status
- # (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
- "message": "A String", # Human-friendly representation of the condition
- },
- ],
"progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
"name": "A String", # A non-parameterized string describing an operation stage.
# Unset for single-stage operations.
- "stages": [ # Substages of an operation or a stage.
- # Object with schema name: OperationProgress
- ],
"metrics": [ # Progress metric bundle, for example:
# metrics: [{name: "nodes done", int_value: 15},
# {name: "nodes total", int_value: 32}]
@@ -4250,41 +4336,51 @@
# metrics: [{name: "progress", double_value: 0.56},
# {name: "progress scale", double_value: 1.0}]
{ # Progress metric is (string, int|float|string) pair.
- "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
+ "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
"doubleValue": 3.14, # For metrics with floating point value.
"intValue": "A String", # For metrics with integer value.
- "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
+ "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
},
],
"status": "A String", # Status of an operation stage.
# Unset for single-stage operations.
+ "stages": [ # Substages of an operation or a stage.
+ # Object with schema name: OperationProgress
+ ],
},
+ "targetLink": "A String", # Server-defined URL for the target of the operation.
+ "status": "A String", # The current status of the operation.
+ "operationType": "A String", # The operation type.
+ "startTime": "A String", # [Output only] The time the operation started, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "clusterConditions": [ # Which conditions caused the current cluster state.
+ { # StatusCondition describes why a cluster or a node pool has a certain status
+ # (e.g., ERROR or DEGRADED).
+ "message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
+ },
+ ],
"zone": "A String", # The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# operation is taking place. This field is deprecated, use location instead.
- "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
"selfLink": "A String", # Server-defined URL for the resource.
- "detail": "A String", # Detailed operation progress, if available.
- "targetLink": "A String", # Server-defined URL for the target of the operation.
- "operationType": "A String", # The operation type.
- "status": "A String", # The current status of the operation.
"name": "A String", # The server-assigned ID for the operation.
+ "detail": "A String", # Detailed operation progress, if available.
+ "endTime": "A String", # [Output only] The time the operation completed, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"nodepoolConditions": [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
"message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
},
],
- "endTime": "A String", # [Output only] The time the operation completed, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"location": "A String", # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
- "startTime": "A String", # [Output only] The time the operation started, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
}</pre>
</div>
@@ -4301,6 +4397,11 @@
{ # SetLabelsRequest sets the Google Cloud Platform labels on a Google Container
# Engine cluster, which will in turn set them for Google Compute Engine
# resources used by that cluster
+ "name": "A String", # The name (project, location, cluster id) of the cluster to set labels.
+ # Specified in the format `projects/*/locations/*/clusters/*`.
+ "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
+ # number](https://developers.google.com/console/help/new/#projectnumber).
+ # This field has been deprecated and replaced by the name field.
"clusterId": "A String", # Deprecated. The name of the cluster.
# This field has been deprecated and replaced by the name field.
"labelFingerprint": "A String", # Required. The fingerprint of the previous set of labels for this resource,
@@ -4313,14 +4414,9 @@
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# cluster resides. This field has been deprecated and replaced by the name
# field.
- "name": "A String", # The name (project, location, cluster id) of the cluster to set labels.
- # Specified in the format `projects/*/locations/*/clusters/*`.
"resourceLabels": { # Required. The labels to set for that cluster.
"a_key": "A String",
},
- "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
- # number](https://developers.google.com/console/help/new/#projectnumber).
- # This field has been deprecated and replaced by the name field.
}
x__xgafv: string, V1 error format.
@@ -4333,19 +4429,9 @@
{ # This operation resource represents operations that may have happened or are
# happening on the cluster. All fields are output only.
- "clusterConditions": [ # Which conditions caused the current cluster state.
- { # StatusCondition describes why a cluster or a node pool has a certain status
- # (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
- "message": "A String", # Human-friendly representation of the condition
- },
- ],
"progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
"name": "A String", # A non-parameterized string describing an operation stage.
# Unset for single-stage operations.
- "stages": [ # Substages of an operation or a stage.
- # Object with schema name: OperationProgress
- ],
"metrics": [ # Progress metric bundle, for example:
# metrics: [{name: "nodes done", int_value: 15},
# {name: "nodes total", int_value: 32}]
@@ -4353,41 +4439,51 @@
# metrics: [{name: "progress", double_value: 0.56},
# {name: "progress scale", double_value: 1.0}]
{ # Progress metric is (string, int|float|string) pair.
- "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
+ "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
"doubleValue": 3.14, # For metrics with floating point value.
"intValue": "A String", # For metrics with integer value.
- "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
+ "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
},
],
"status": "A String", # Status of an operation stage.
# Unset for single-stage operations.
+ "stages": [ # Substages of an operation or a stage.
+ # Object with schema name: OperationProgress
+ ],
},
+ "targetLink": "A String", # Server-defined URL for the target of the operation.
+ "status": "A String", # The current status of the operation.
+ "operationType": "A String", # The operation type.
+ "startTime": "A String", # [Output only] The time the operation started, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "clusterConditions": [ # Which conditions caused the current cluster state.
+ { # StatusCondition describes why a cluster or a node pool has a certain status
+ # (e.g., ERROR or DEGRADED).
+ "message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
+ },
+ ],
"zone": "A String", # The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# operation is taking place. This field is deprecated, use location instead.
- "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
"selfLink": "A String", # Server-defined URL for the resource.
- "detail": "A String", # Detailed operation progress, if available.
- "targetLink": "A String", # Server-defined URL for the target of the operation.
- "operationType": "A String", # The operation type.
- "status": "A String", # The current status of the operation.
"name": "A String", # The server-assigned ID for the operation.
+ "detail": "A String", # Detailed operation progress, if available.
+ "endTime": "A String", # [Output only] The time the operation completed, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"nodepoolConditions": [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
"message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
},
],
- "endTime": "A String", # [Output only] The time the operation completed, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"location": "A String", # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
- "startTime": "A String", # [Output only] The time the operation started, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
}</pre>
</div>
@@ -4405,14 +4501,14 @@
# a node upgrade on each node pool to point to the new IP.
"name": "A String", # The name (project, location, cluster id) of the cluster to start IP
# rotation. Specified in the format `projects/*/locations/*/clusters/*`.
- "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
- # number](https://developers.google.com/console/help/new/#projectnumber).
- # This field has been deprecated and replaced by the name field.
"zone": "A String", # Deprecated. The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# cluster resides. This field has been deprecated and replaced by the name
# field.
"rotateCredentials": True or False, # Whether to rotate credentials during IP rotation.
+ "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
+ # number](https://developers.google.com/console/help/new/#projectnumber).
+ # This field has been deprecated and replaced by the name field.
"clusterId": "A String", # Deprecated. The name of the cluster.
# This field has been deprecated and replaced by the name field.
}
@@ -4427,19 +4523,9 @@
{ # This operation resource represents operations that may have happened or are
# happening on the cluster. All fields are output only.
- "clusterConditions": [ # Which conditions caused the current cluster state.
- { # StatusCondition describes why a cluster or a node pool has a certain status
- # (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
- "message": "A String", # Human-friendly representation of the condition
- },
- ],
"progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
"name": "A String", # A non-parameterized string describing an operation stage.
# Unset for single-stage operations.
- "stages": [ # Substages of an operation or a stage.
- # Object with schema name: OperationProgress
- ],
"metrics": [ # Progress metric bundle, for example:
# metrics: [{name: "nodes done", int_value: 15},
# {name: "nodes total", int_value: 32}]
@@ -4447,41 +4533,51 @@
# metrics: [{name: "progress", double_value: 0.56},
# {name: "progress scale", double_value: 1.0}]
{ # Progress metric is (string, int|float|string) pair.
- "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
+ "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
"doubleValue": 3.14, # For metrics with floating point value.
"intValue": "A String", # For metrics with integer value.
- "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
+ "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
},
],
"status": "A String", # Status of an operation stage.
# Unset for single-stage operations.
+ "stages": [ # Substages of an operation or a stage.
+ # Object with schema name: OperationProgress
+ ],
},
+ "targetLink": "A String", # Server-defined URL for the target of the operation.
+ "status": "A String", # The current status of the operation.
+ "operationType": "A String", # The operation type.
+ "startTime": "A String", # [Output only] The time the operation started, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "clusterConditions": [ # Which conditions caused the current cluster state.
+ { # StatusCondition describes why a cluster or a node pool has a certain status
+ # (e.g., ERROR or DEGRADED).
+ "message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
+ },
+ ],
"zone": "A String", # The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# operation is taking place. This field is deprecated, use location instead.
- "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
"selfLink": "A String", # Server-defined URL for the resource.
- "detail": "A String", # Detailed operation progress, if available.
- "targetLink": "A String", # Server-defined URL for the target of the operation.
- "operationType": "A String", # The operation type.
- "status": "A String", # The current status of the operation.
"name": "A String", # The server-assigned ID for the operation.
+ "detail": "A String", # Detailed operation progress, if available.
+ "endTime": "A String", # [Output only] The time the operation completed, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"nodepoolConditions": [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
"message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
},
],
- "endTime": "A String", # [Output only] The time the operation completed, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"location": "A String", # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
- "startTime": "A String", # [Output only] The time the operation started, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
}</pre>
</div>
@@ -4496,89 +4592,16 @@
The object takes the form of:
{ # UpdateClusterRequest updates the settings of a cluster.
+ "clusterId": "A String", # Deprecated. The name of the cluster to upgrade.
+ # This field has been deprecated and replaced by the name field.
+ "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
+ # number](https://support.google.com/cloud/answer/6158840).
+ # This field has been deprecated and replaced by the name field.
+ "name": "A String", # The name (project, location, cluster) of the cluster to update.
+ # Specified in the format `projects/*/locations/*/clusters/*`.
"update": { # ClusterUpdate describes an update to the cluster. Exactly one update can # Required. A description of the update.
# be applied to a cluster with each request, so at most one field can be
# provided.
- "desiredImageType": "A String", # The desired image type for the node pool.
- # NOTE: Set the "desired_node_pool" field as well.
- "desiredWorkloadIdentityConfig": { # Configuration for the use of Kubernetes Service Accounts in GCP IAM # Configuration for Workload Identity.
- # policies.
- "workloadPool": "A String", # The workload pool to attach all Kubernetes service accounts to.
- },
- "desiredNodePoolId": "A String", # 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.
- "desiredMasterVersion": "A String", # 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
- "desiredShieldedNodes": { # Configuration of Shielded Nodes feature. # Configuration for Shielded Nodes.
- "enabled": True or False, # Whether Shielded Nodes features are enabled on all nodes in this cluster.
- },
- "desiredLoggingService": "A 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.
- "desiredVerticalPodAutoscaling": { # VerticalPodAutoscaling contains global, per-cluster information # Cluster-level Vertical Pod Autoscaling configuration.
- # required by Vertical Pod Autoscaler to automatically adjust
- # the resources of pods controlled by it.
- "enabled": True or False, # Enables vertical pod autoscaling.
- },
- "desiredBinaryAuthorization": { # Configuration for Binary Authorization. # The desired configuration options for the Binary Authorization feature.
- "enabled": True or False, # Enable Binary Authorization for this cluster. If enabled, all container
- # images will be validated by Binary Authorization.
- },
- "desiredAddonsConfig": { # Configuration for the addons that can be automatically spun up in the # Configurations for the various addons available to run in the cluster.
- # cluster, enabling additional functionality.
- "networkPolicyConfig": { # Configuration for NetworkPolicy. This only tracks whether the addon # Configuration for NetworkPolicy. This only tracks whether the addon
- # is enabled or not on the Master, it does not track whether network policy
- # is enabled for the nodes.
- # is enabled or not on the Master, it does not track whether network policy
- # is enabled for the nodes.
- "disabled": True or False, # Whether NetworkPolicy is enabled for this cluster.
- },
- "cloudRunConfig": { # Configuration options for the Cloud Run feature. # Configuration for the Cloud Run addon, which allows the user to use a
- # managed Knative service.
- "disabled": True or False, # Whether Cloud Run addon is enabled for this cluster.
- },
- "horizontalPodAutoscaling": { # Configuration options for the horizontal pod autoscaling feature, which # Configuration for the horizontal pod autoscaling feature, which
- # increases or decreases the number of replica pods a replication controller
- # has based on the resource usage of the existing pods.
- # increases or decreases the number of replica pods a replication controller
- # has based on the resource usage of the existing pods.
- "disabled": True or False, # Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.
- # When enabled, it ensures that metrics are collected into Stackdriver
- # Monitoring.
- },
- "httpLoadBalancing": { # Configuration options for the HTTP (L7) load balancing controller addon, # Configuration for the HTTP (L7) load balancing controller addon, which
- # makes it easy to set up HTTP load balancers for services in a cluster.
- # which makes it easy to set up HTTP load balancers for services in a cluster.
- "disabled": True or False, # Whether the HTTP Load Balancing controller is enabled in the cluster.
- # When enabled, it runs a small pod in the cluster that manages the load
- # balancers.
- },
- "kubernetesDashboard": { # Configuration for the Kubernetes Dashboard. # Configuration for the Kubernetes Dashboard.
- # This addon is deprecated, and will be disabled in 1.15. It is recommended
- # to use the Cloud Console to manage and monitor your Kubernetes clusters,
- # workloads and applications. For more information, see:
- # https://cloud.google.com/kubernetes-engine/docs/concepts/dashboards
- "disabled": True or False, # Whether the Kubernetes Dashboard is enabled for this cluster.
- },
- },
"desiredNodeVersion": "A String", # The Kubernetes version to change the nodes to (typically an
# upgrade).
#
@@ -4590,41 +4613,159 @@
# - "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
- "desiredIntraNodeVisibilityConfig": { # IntraNodeVisibilityConfig contains the desired config of the intra-node # The desired config of Intra-node visibility.
- # visibility on this cluster.
- "enabled": True or False, # Enables intra node visibility for this cluster.
+ "desiredWorkloadIdentityConfig": { # Configuration for the use of Kubernetes Service Accounts in GCP IAM # Configuration for Workload Identity.
+ # policies.
+ "workloadPool": "A String", # The workload pool to attach all Kubernetes service accounts to.
+ },
+ "desiredVerticalPodAutoscaling": { # VerticalPodAutoscaling contains global, per-cluster information # Cluster-level Vertical Pod Autoscaling configuration.
+ # required by Vertical Pod Autoscaler to automatically adjust
+ # the resources of pods controlled by it.
+ "enabled": True or False, # Enables vertical pod autoscaling.
+ },
+ "desiredResourceUsageExportConfig": { # Configuration for exporting cluster resource usages. # The desired configuration for exporting resource usage.
+ "enableNetworkEgressMetering": True or False, # Whether to enable network egress metering for this cluster. If enabled, a
+ # daemonset will be created in the cluster to meter network egress traffic.
+ "bigqueryDestination": { # Parameters for using BigQuery as the destination of resource usage export. # Configuration to use BigQuery as usage export destination.
+ "datasetId": "A String", # The ID of a BigQuery Dataset.
+ },
+ "consumptionMeteringConfig": { # Parameters for controlling consumption metering. # Configuration to enable resource consumption metering.
+ "enabled": True or False, # Whether to enable consumption metering for this cluster. If enabled, a
+ # second BigQuery table will be created to hold resource consumption
+ # records.
+ },
+ },
+ "desiredMasterVersion": "A String", # 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
+ "desiredMonitoringService": "A 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.
+ "desiredLoggingService": "A 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.
+ "desiredAddonsConfig": { # Configuration for the addons that can be automatically spun up in the # Configurations for the various addons available to run in the cluster.
+ # cluster, enabling additional functionality.
+ "kubernetesDashboard": { # Configuration for the Kubernetes Dashboard. # Configuration for the Kubernetes Dashboard.
+ # This addon is deprecated, and will be disabled in 1.15. It is recommended
+ # to use the Cloud Console to manage and monitor your Kubernetes clusters,
+ # workloads and applications. For more information, see:
+ # https://cloud.google.com/kubernetes-engine/docs/concepts/dashboards
+ "disabled": True or False, # Whether the Kubernetes Dashboard is enabled for this cluster.
+ },
+ "cloudRunConfig": { # Configuration options for the Cloud Run feature. # Configuration for the Cloud Run addon, which allows the user to use a
+ # managed Knative service.
+ "disabled": True or False, # Whether Cloud Run addon is enabled for this cluster.
+ },
+ "httpLoadBalancing": { # Configuration options for the HTTP (L7) load balancing controller addon, # Configuration for the HTTP (L7) load balancing controller addon, which
+ # makes it easy to set up HTTP load balancers for services in a cluster.
+ # which makes it easy to set up HTTP load balancers for services in a cluster.
+ "disabled": True or False, # Whether the HTTP Load Balancing controller is enabled in the cluster.
+ # When enabled, it runs a small pod in the cluster that manages the load
+ # balancers.
+ },
+ "horizontalPodAutoscaling": { # Configuration options for the horizontal pod autoscaling feature, which # Configuration for the horizontal pod autoscaling feature, which
+ # increases or decreases the number of replica pods a replication controller
+ # has based on the resource usage of the existing pods.
+ # increases or decreases the number of replica pods a replication controller
+ # has based on the resource usage of the existing pods.
+ "disabled": True or False, # Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.
+ # When enabled, it ensures that metrics are collected into Stackdriver
+ # Monitoring.
+ },
+ "dnsCacheConfig": { # Configuration for NodeLocal DNSCache # Configuration for NodeLocalDNS, a dns cache running on cluster nodes
+ "enabled": True or False, # Whether NodeLocal DNSCache is enabled for this cluster.
+ },
+ "networkPolicyConfig": { # Configuration for NetworkPolicy. This only tracks whether the addon # Configuration for NetworkPolicy. This only tracks whether the addon
+ # is enabled or not on the Master, it does not track whether network policy
+ # is enabled for the nodes.
+ # is enabled or not on the Master, it does not track whether network policy
+ # is enabled for the nodes.
+ "disabled": True or False, # Whether NetworkPolicy is enabled for this cluster.
+ },
+ },
+ "desiredNodePoolAutoscaling": { # NodePoolAutoscaling contains information required by cluster autoscaler to # 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.
+ # adjust the size of the node pool to the current cluster usage.
+ "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be >= 1 and <=
+ # max_node_count.
+ "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be >= min_node_count. There
+ # has to enough quota to scale up the cluster.
+ "enabled": True or False, # Is autoscaling enabled for this node pool.
+ "autoprovisioned": True or False, # Can this node pool be deleted automatically.
+ },
+ "desiredLocations": [ # The desired list of Google Compute Engine
+ # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
+ # cluster's nodes should be located. Changing the locations a cluster is in
+ # will result in nodes being either created or removed from the cluster,
+ # depending on whether locations are being added or removed.
+ #
+ # This list must always include the cluster's primary zone.
+ "A String",
+ ],
+ "desiredMasterAuthorizedNetworksConfig": { # Configuration options for the master authorized networks feature. Enabled # The desired configuration options for master authorized networks feature.
+ # 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.
+ "enabled": True or False, # Whether or not master authorized networks is enabled.
+ "cidrBlocks": [ # cidr_blocks define up to 50 external networks that could access
+ # Kubernetes master through HTTPS.
+ { # CidrBlock contains an optional name and one CIDR block.
+ "displayName": "A String", # display_name is an optional field for users to identify CIDR blocks.
+ "cidrBlock": "A String", # cidr_block must be specified in CIDR notation.
+ },
+ ],
},
"desiredClusterAutoscaling": { # ClusterAutoscaling contains global, per-cluster information # Cluster-level autoscaling configuration.
# required by Cluster Autoscaler to automatically adjust
# the size of the cluster and create/delete
# node pools based on the current needs.
- "autoprovisioningLocations": [ # The list of Google Compute Engine
- # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
- # NodePool's nodes can be created by NAP.
- "A String",
- ],
"resourceLimits": [ # Contains global constraints regarding minimum and maximum
# amount of resources in the cluster.
{ # Contains information about amount of some resource in the cluster.
# For memory, value should be in GB.
"minimum": "A String", # Minimum amount of the resource in the cluster.
- "maximum": "A String", # Maximum amount of the resource in the cluster.
"resourceType": "A String", # Resource name "cpu", "memory" or gpu-specific string.
+ "maximum": "A String", # Maximum amount of the resource in the cluster.
},
],
- "enableNodeAutoprovisioning": True or False, # Enables automatic node pool creation and deletion.
"autoprovisioningNodePoolDefaults": { # AutoprovisioningNodePoolDefaults contains defaults for a node pool created # AutoprovisioningNodePoolDefaults contains defaults for a node pool
# created by NAP.
# by NAP.
+ "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs.
"management": { # NodeManagement defines the set of node management services turned on for the # Specifies the node management options for NAP created node-pools.
# node pool.
"upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
# the Auto Upgrades will proceed.
+ "description": "A String", # [Output only] This field is set when upgrades are about to commence
+ # with the description of the upgrade.
"autoUpgradeStartTime": "A String", # [Output only] This field is set when upgrades are about to commence
# with the approximate start time for the upgrades, in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
- "description": "A String", # [Output only] This field is set when upgrades are about to commence
- # with the description of the upgrade.
},
"autoRepair": True or False, # A flag that specifies whether the node auto-repair is enabled for the node
# pool. If enabled, the nodes in this node pool will be monitored and, if
@@ -4634,10 +4775,6 @@
# pool. If enabled, node auto-upgrade helps keep the nodes in your node pool
# up to date with the latest release version of Kubernetes.
},
- "oauthScopes": [ # Scopes that are used by NAP when creating node pools. If oauth_scopes are
- # specified, service_account should be empty.
- "A String",
- ],
"upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Specifies the upgrade settings for NAP created node pools
# disruption caused by an upgrade.
#
@@ -4667,84 +4804,52 @@
"maxSurge": 42, # The maximum number of nodes that can be created beyond the current size
# of the node pool during the upgrade process.
},
- "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs. If
- # service_account is specified, scopes should be empty.
+ "oauthScopes": [ # Scopes that are used by NAP when creating node pools.
+ "A String",
+ ],
},
+ "enableNodeAutoprovisioning": True or False, # Enables automatic node pool creation and deletion.
+ "autoprovisioningLocations": [ # The list of Google Compute Engine
+ # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
+ # NodePool's nodes can be created by NAP.
+ "A String",
+ ],
+ },
+ "desiredNodePoolId": "A String", # 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.
+ "desiredImageType": "A String", # The desired image type for the node pool.
+ # NOTE: Set the "desired_node_pool" field as well.
+ "desiredReleaseChannel": { # ReleaseChannel indicates which release channel a cluster is # The desired release channel configuration.
+ # 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.
+ "channel": "A String", # channel specifies which release channel the cluster is subscribed to.
+ },
+ "desiredIntraNodeVisibilityConfig": { # IntraNodeVisibilityConfig contains the desired config of the intra-node # The desired config of Intra-node visibility.
+ # visibility on this cluster.
+ "enabled": True or False, # Enables intra node visibility for this cluster.
},
"desiredDatabaseEncryption": { # Configuration of etcd encryption. # Configuration of etcd encryption.
+ "state": "A String", # Denotes the state of etcd encryption.
"keyName": "A String", # Name of CloudKMS key to use for the encryption of secrets in etcd.
# Ex. projects/my-project/locations/global/keyRings/my-ring/cryptoKeys/my-key
- "state": "A String", # Denotes the state of etcd encryption.
},
- "desiredMasterAuthorizedNetworksConfig": { # Configuration options for the master authorized networks feature. Enabled # The desired configuration options for master authorized networks feature.
- # 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.
- "cidrBlocks": [ # cidr_blocks define up to 50 external networks that could access
- # Kubernetes master through HTTPS.
- { # CidrBlock contains an optional name and one CIDR block.
- "displayName": "A String", # display_name is an optional field for users to identify CIDR blocks.
- "cidrBlock": "A String", # cidr_block must be specified in CIDR notation.
- },
- ],
- "enabled": True or False, # Whether or not master authorized networks is enabled.
+ "desiredShieldedNodes": { # Configuration of Shielded Nodes feature. # Configuration for Shielded Nodes.
+ "enabled": True or False, # Whether Shielded Nodes features are enabled on all nodes in this cluster.
},
- "desiredResourceUsageExportConfig": { # Configuration for exporting cluster resource usages. # The desired configuration for exporting resource usage.
- "enableNetworkEgressMetering": True or False, # Whether to enable network egress metering for this cluster. If enabled, a
- # daemonset will be created in the cluster to meter network egress traffic.
- "consumptionMeteringConfig": { # Parameters for controlling consumption metering. # Configuration to enable resource consumption metering.
- "enabled": True or False, # Whether to enable consumption metering for this cluster. If enabled, a
- # second BigQuery table will be created to hold resource consumption
- # records.
- },
- "bigqueryDestination": { # Parameters for using BigQuery as the destination of resource usage export. # Configuration to use BigQuery as usage export destination.
- "datasetId": "A String", # The ID of a BigQuery Dataset.
- },
+ "desiredBinaryAuthorization": { # Configuration for Binary Authorization. # The desired configuration options for the Binary Authorization feature.
+ "enabled": True or False, # Enable Binary Authorization for this cluster. If enabled, all container
+ # images will be validated by Binary Authorization.
},
- "desiredNodePoolAutoscaling": { # NodePoolAutoscaling contains information required by cluster autoscaler to # 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.
- # adjust the size of the node pool to the current cluster usage.
- "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be >= min_node_count. There
- # has to enough quota to scale up the cluster.
- "autoprovisioned": True or False, # Can this node pool be deleted automatically.
- "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be >= 1 and <=
- # max_node_count.
- "enabled": True or False, # Is autoscaling enabled for this node pool.
- },
- "desiredLocations": [ # The desired list of Google Compute Engine
- # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
- # cluster's nodes should be located. Changing the locations a cluster is in
- # will result in nodes being either created or removed from the cluster,
- # depending on whether locations are being added or removed.
- #
- # This list must always include the cluster's primary zone.
- "A String",
- ],
- "desiredMonitoringService": "A 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.
},
- "name": "A String", # The name (project, location, cluster) of the cluster to update.
- # Specified in the format `projects/*/locations/*/clusters/*`.
- "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
- # number](https://support.google.com/cloud/answer/6158840).
- # This field has been deprecated and replaced by the name field.
"zone": "A String", # Deprecated. The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# cluster resides. This field has been deprecated and replaced by the name
# field.
- "clusterId": "A String", # Deprecated. The name of the cluster to upgrade.
- # This field has been deprecated and replaced by the name field.
}
x__xgafv: string, V1 error format.
@@ -4757,19 +4862,9 @@
{ # This operation resource represents operations that may have happened or are
# happening on the cluster. All fields are output only.
- "clusterConditions": [ # Which conditions caused the current cluster state.
- { # StatusCondition describes why a cluster or a node pool has a certain status
- # (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
- "message": "A String", # Human-friendly representation of the condition
- },
- ],
"progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
"name": "A String", # A non-parameterized string describing an operation stage.
# Unset for single-stage operations.
- "stages": [ # Substages of an operation or a stage.
- # Object with schema name: OperationProgress
- ],
"metrics": [ # Progress metric bundle, for example:
# metrics: [{name: "nodes done", int_value: 15},
# {name: "nodes total", int_value: 32}]
@@ -4777,41 +4872,51 @@
# metrics: [{name: "progress", double_value: 0.56},
# {name: "progress scale", double_value: 1.0}]
{ # Progress metric is (string, int|float|string) pair.
- "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
+ "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
"doubleValue": 3.14, # For metrics with floating point value.
"intValue": "A String", # For metrics with integer value.
- "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
+ "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
},
],
"status": "A String", # Status of an operation stage.
# Unset for single-stage operations.
+ "stages": [ # Substages of an operation or a stage.
+ # Object with schema name: OperationProgress
+ ],
},
+ "targetLink": "A String", # Server-defined URL for the target of the operation.
+ "status": "A String", # The current status of the operation.
+ "operationType": "A String", # The operation type.
+ "startTime": "A String", # [Output only] The time the operation started, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "clusterConditions": [ # Which conditions caused the current cluster state.
+ { # StatusCondition describes why a cluster or a node pool has a certain status
+ # (e.g., ERROR or DEGRADED).
+ "message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
+ },
+ ],
"zone": "A String", # The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# operation is taking place. This field is deprecated, use location instead.
- "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
"selfLink": "A String", # Server-defined URL for the resource.
- "detail": "A String", # Detailed operation progress, if available.
- "targetLink": "A String", # Server-defined URL for the target of the operation.
- "operationType": "A String", # The operation type.
- "status": "A String", # The current status of the operation.
"name": "A String", # The server-assigned ID for the operation.
+ "detail": "A String", # Detailed operation progress, if available.
+ "endTime": "A String", # [Output only] The time the operation completed, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"nodepoolConditions": [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
"message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
},
],
- "endTime": "A String", # [Output only] The time the operation completed, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"location": "A String", # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
- "startTime": "A String", # [Output only] The time the operation started, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
}</pre>
</div>
@@ -4826,9 +4931,6 @@
The object takes the form of:
{ # UpdateMasterRequest updates the master of the cluster.
- "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
- # number](https://support.google.com/cloud/answer/6158840).
- # This field has been deprecated and replaced by the name field.
"masterVersion": "A String", # Required. The Kubernetes version to change the master to.
#
# Users may specify either explicit versions offered by Kubernetes Engine or
@@ -4839,6 +4941,9 @@
# - "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
+ "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
+ # number](https://support.google.com/cloud/answer/6158840).
+ # This field has been deprecated and replaced by the name field.
"zone": "A String", # Deprecated. The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# cluster resides. This field has been deprecated and replaced by the name
@@ -4859,19 +4964,9 @@
{ # This operation resource represents operations that may have happened or are
# happening on the cluster. All fields are output only.
- "clusterConditions": [ # Which conditions caused the current cluster state.
- { # StatusCondition describes why a cluster or a node pool has a certain status
- # (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
- "message": "A String", # Human-friendly representation of the condition
- },
- ],
"progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
"name": "A String", # A non-parameterized string describing an operation stage.
# Unset for single-stage operations.
- "stages": [ # Substages of an operation or a stage.
- # Object with schema name: OperationProgress
- ],
"metrics": [ # Progress metric bundle, for example:
# metrics: [{name: "nodes done", int_value: 15},
# {name: "nodes total", int_value: 32}]
@@ -4879,41 +4974,51 @@
# metrics: [{name: "progress", double_value: 0.56},
# {name: "progress scale", double_value: 1.0}]
{ # Progress metric is (string, int|float|string) pair.
- "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
+ "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
"doubleValue": 3.14, # For metrics with floating point value.
"intValue": "A String", # For metrics with integer value.
- "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
+ "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
},
],
"status": "A String", # Status of an operation stage.
# Unset for single-stage operations.
+ "stages": [ # Substages of an operation or a stage.
+ # Object with schema name: OperationProgress
+ ],
},
+ "targetLink": "A String", # Server-defined URL for the target of the operation.
+ "status": "A String", # The current status of the operation.
+ "operationType": "A String", # The operation type.
+ "startTime": "A String", # [Output only] The time the operation started, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "clusterConditions": [ # Which conditions caused the current cluster state.
+ { # StatusCondition describes why a cluster or a node pool has a certain status
+ # (e.g., ERROR or DEGRADED).
+ "message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
+ },
+ ],
"zone": "A String", # The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# operation is taking place. This field is deprecated, use location instead.
- "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
"selfLink": "A String", # Server-defined URL for the resource.
- "detail": "A String", # Detailed operation progress, if available.
- "targetLink": "A String", # Server-defined URL for the target of the operation.
- "operationType": "A String", # The operation type.
- "status": "A String", # The current status of the operation.
"name": "A String", # The server-assigned ID for the operation.
+ "detail": "A String", # Detailed operation progress, if available.
+ "endTime": "A String", # [Output only] The time the operation completed, in
+ # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"nodepoolConditions": [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
- "code": "A String", # Machine-friendly representation of the condition
"message": "A String", # Human-friendly representation of the condition
+ "code": "A String", # Machine-friendly representation of the condition
},
],
- "endTime": "A String", # [Output only] The time the operation completed, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"location": "A String", # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
- "startTime": "A String", # [Output only] The time the operation started, in
- # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
}</pre>
</div>