| <html><body> |
| <style> |
| |
| body, h1, h2, h3, div, span, p, pre, a { |
| margin: 0; |
| padding: 0; |
| border: 0; |
| font-weight: inherit; |
| font-style: inherit; |
| font-size: 100%; |
| font-family: inherit; |
| vertical-align: baseline; |
| } |
| |
| body { |
| font-size: 13px; |
| padding: 1em; |
| } |
| |
| h1 { |
| font-size: 26px; |
| margin-bottom: 1em; |
| } |
| |
| h2 { |
| font-size: 24px; |
| margin-bottom: 1em; |
| } |
| |
| h3 { |
| font-size: 20px; |
| margin-bottom: 1em; |
| margin-top: 1em; |
| } |
| |
| pre, code { |
| line-height: 1.5; |
| font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace; |
| } |
| |
| pre { |
| margin-top: 0.5em; |
| } |
| |
| h1, h2, h3, p { |
| font-family: Arial, sans serif; |
| } |
| |
| h1, h2, h3 { |
| border-bottom: solid #CCC 1px; |
| } |
| |
| .toc_element { |
| margin-top: 0.5em; |
| } |
| |
| .firstline { |
| margin-left: 2 em; |
| } |
| |
| .method { |
| margin-top: 1em; |
| border: solid 1px #CCC; |
| padding: 1em; |
| background: #EEE; |
| } |
| |
| .details { |
| font-weight: bold; |
| font-size: 14px; |
| } |
| |
| </style> |
| |
| <h1><a href="container_v1.html">Google Container Engine API</a> . <a href="container_v1.projects.html">projects</a> . <a href="container_v1.projects.zones.html">zones</a> . <a href="container_v1.projects.zones.clusters.html">clusters</a></h1> |
| <h2>Instance Methods</h2> |
| <p class="toc_element"> |
| <code><a href="container_v1.projects.zones.clusters.nodePools.html">nodePools()</a></code> |
| </p> |
| <p class="firstline">Returns the nodePools Resource.</p> |
| |
| <p class="toc_element"> |
| <code><a href="#completeIpRotation">completeIpRotation(projectId, zone, clusterId, body, x__xgafv=None)</a></code></p> |
| <p class="firstline">Completes master IP rotation.</p> |
| <p class="toc_element"> |
| <code><a href="#create">create(projectId, zone, body, 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(projectId, zone, clusterId, 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(projectId, zone, clusterId, x__xgafv=None)</a></code></p> |
| <p class="firstline">Gets the details of a specific cluster.</p> |
| <p class="toc_element"> |
| <code><a href="#legacyAbac">legacyAbac(projectId, zone, clusterId, body, x__xgafv=None)</a></code></p> |
| <p class="firstline">Enables or disables the ABAC authorization mechanism on a cluster.</p> |
| <p class="toc_element"> |
| <code><a href="#list">list(projectId, zone, 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="#resourceLabels">resourceLabels(projectId, zone, clusterId, body, x__xgafv=None)</a></code></p> |
| <p class="firstline">Sets labels on a cluster.</p> |
| <p class="toc_element"> |
| <code><a href="#setMasterAuth">setMasterAuth(projectId, zone, clusterId, body, x__xgafv=None)</a></code></p> |
| <p class="firstline">Used to set master auth materials. Currently supports :-</p> |
| <p class="toc_element"> |
| <code><a href="#startIpRotation">startIpRotation(projectId, zone, clusterId, body, x__xgafv=None)</a></code></p> |
| <p class="firstline">Start master IP rotation.</p> |
| <p class="toc_element"> |
| <code><a href="#update">update(projectId, zone, clusterId, body, x__xgafv=None)</a></code></p> |
| <p class="firstline">Updates the settings of a specific cluster.</p> |
| <h3>Method Details</h3> |
| <div class="method"> |
| <code class="details" id="completeIpRotation">completeIpRotation(projectId, zone, clusterId, body, x__xgafv=None)</code> |
| <pre>Completes master IP rotation. |
| |
| Args: |
| projectId: string, The Google Developers Console [project ID or project |
| number](https://developers.google.com/console/help/new/#projectnumber). (required) |
| zone: string, The name of the Google Compute Engine |
| [zone](/compute/docs/zones#available) in which the cluster |
| resides. (required) |
| clusterId: string, The name of the cluster. (required) |
| body: object, The request body. (required) |
| The object takes the form of: |
| |
| { # CompleteIPRotationRequest moves the cluster master back into single-IP mode. |
| } |
| |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # This operation resource represents operations that may have happened or are |
| # happening on the cluster. All fields are output only. |
| "status": "A String", # The current status of the operation. |
| "statusMessage": "A String", # If an error has occurred, a textual description of the error. |
| "name": "A String", # The server-assigned ID for the operation. |
| "zone": "A String", # The name of the Google Compute Engine |
| # [zone](/compute/docs/zones#available) in which the operation |
| # is taking place. |
| "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. |
| "selfLink": "A String", # Server-defined URL for the resource. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="create">create(projectId, zone, body, x__xgafv=None)</code> |
| <pre>Creates a cluster, consisting of the specified number and type of Google |
| Compute Engine instances. |
| |
| By default, the cluster is created in the project's |
| [default network](/compute/docs/networks-and-firewalls#networks). |
| |
| One firewall is added for the cluster. After cluster creation, |
| the cluster creates routes for each node to allow the containers |
| on that node to communicate with all other instances in the |
| cluster. |
| |
| Finally, an entry is added to the project's global metadata indicating |
| which CIDR range is being used by the cluster. |
| |
| Args: |
| projectId: string, The Google Developers Console [project ID or project |
| number](https://support.google.com/cloud/answer/6158840). (required) |
| zone: string, The name of the Google Compute Engine |
| [zone](/compute/docs/zones#available) in which the cluster |
| resides. (required) |
| body: object, The request body. (required) |
| The object takes the form of: |
| |
| { # CreateClusterRequest creates a cluster. |
| "cluster": { # A Google Container Engine cluster. # A [cluster |
| # resource](/container-engine/reference/rest/v1/projects.zones.clusters) |
| "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. |
| "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. |
| "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 a Heapster pod is running in the cluster, |
| # which is also used by the Cloud Monitoring service. |
| }, |
| }, |
| "locations": [ # The list of Google Compute Engine |
| # [locations](/compute/docs/zones#available) in which the cluster's nodes |
| # should be located. |
| "A String", |
| ], |
| "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. |
| "network": "A String", # The name of the Google Compute Engine |
| # [network](/compute/docs/networks-and-firewalls#networks) to which the |
| # cluster is connected. If left unspecified, the `default` network |
| # will be used. |
| "loggingService": "A String", # The logging service the cluster should use to write logs. |
| # Currently available options: |
| # |
| # * `logging.googleapis.com` - the Google Cloud Logging service. |
| # * `none` - no logs will be exported from the cluster. |
| # * if left as an empty string,`logging.googleapis.com` will be used. |
| "instanceGroupUrls": [ # [Output only] The resource URLs of [instance |
| # groups](/compute/docs/instance-groups/) associated with this |
| # cluster. |
| "A String", |
| ], |
| "statusMessage": "A String", # [Output only] Additional information about the current status of this |
| # cluster, if available. |
| "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. |
| "status": "A String", # [Output only] The current status of this cluster. |
| "description": "A String", # An optional description of this cluster. |
| "currentNodeVersion": "A String", # [Output only] 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. |
| "labelFingerprint": "A String", # The fingerprint of the set of labels for this cluster. |
| "currentMasterVersion": "A String", # [Output only] The current software version of the master endpoint. |
| "masterAuth": { # The authentication information for accessing the master endpoint. # The authentication information for accessing the master endpoint. |
| # Authentication can be done using HTTP basic auth or using client |
| # certificates. |
| "username": "A String", # The username to use for HTTP basic authentication to the master endpoint. |
| # For clusters v1.6.0 and later, you can disable basic authentication by |
| # providing an empty username. |
| "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. |
| "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. |
| "clusterCaCertificate": "A String", # [Output only] Base64-encoded public certificate that is the root of |
| # trust for the cluster. |
| }, |
| "expireTime": "A String", # [Output only] The time the cluster will be automatically |
| # deleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. |
| "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. |
| "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. |
| "status": "A String", # [Output only] The status of the nodes in this pool instance. |
| "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. |
| "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. |
| "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. |
| }, |
| "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. |
| }, |
| "name": "A String", # The name of the node pool. |
| "instanceGroupUrls": [ # [Output only] The resource URLs of [instance |
| # groups](/compute/docs/instance-groups/) associated with this |
| # node pool. |
| "A String", |
| ], |
| "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. |
| "enabled": True or False, # Is autoscaling enabled for this node pool. |
| "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be >= min_node_count. There |
| # has to enough quota to scale up the cluster. |
| }, |
| "version": "A String", # [Output only] The version of the Kubernetes of this node. |
| "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. |
| "config": { # Parameters that describe the nodes in a cluster. # The node configuration of the pool. |
| "machineType": "A String", # The name of a Google Compute Engine [machine |
| # type](/compute/docs/machine-types) (e.g. |
| # `n1-standard-1`). |
| # |
| # If unspecified, the default machine type is |
| # `n1-standard-1`. |
| "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", |
| ], |
| "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See: |
| # https://cloud.google.com/compute/docs/instances/preemptible for more |
| # inforamtion about preemptible VM instances. |
| "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: |
| # http://kubernetes.io/v1.1/docs/user-guide/labels.html |
| "a_key": "A String", |
| }, |
| "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs. If |
| # no Service Account is specified, the "default" service account is used. |
| "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](/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", |
| ], |
| "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. |
| "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 four reserved keys: |
| # "instance-template", "kube-env", "startup-script", and "user-data" |
| # |
| # 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", |
| }, |
| "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. |
| "localSsdCount": 42, # The number of local SSD disks to be attached to the node. |
| # |
| # The limit for this value is dependant upon the maximum number of |
| # disks available on a machine per zone. See: |
| # https://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits |
| # for more information. |
| }, |
| "statusMessage": "A String", # [Output only] Additional information about the current status of this |
| # node pool instance, if available. |
| }, |
| ], |
| "monitoringService": "A String", # The monitoring service the cluster should use to write metrics. |
| # Currently available options: |
| # |
| # * `monitoring.googleapis.com` - the Google Cloud Monitoring service. |
| # * `none` - no metrics will be exported from the cluster. |
| # * if left as an empty string, `monitoring.googleapis.com` will be used. |
| "createTime": "A String", # [Output only] The time the cluster was created, in |
| # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. |
| "name": "A String", # The name of this cluster. The name must be unique within this project |
| # and zone, and can be up to 40 characters with the following restrictions: |
| # |
| # * Lowercase letters, numbers, and hyphens only. |
| # * Must start with a letter. |
| # * Must end with a number or a letter. |
| "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. |
| "currentNodeCount": 42, # [Output only] The number of nodes currently in the cluster. |
| "zone": "A String", # [Output only] The name of the Google Compute Engine |
| # [zone](/compute/docs/zones#available) in which the cluster |
| # resides. |
| "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. |
| }, |
| "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. |
| "nodeConfig": { # Parameters that describe the nodes in a cluster. # Parameters used in creating the cluster's nodes. |
| # See `nodeConfig` for the description of its properties. |
| # For requests, this field should only be used in lieu of a |
| # "node_pool" object, since this configuration (along with the |
| # "initial_node_count") 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. |
| # For responses, this field will be populated with the node configuration of |
| # the first node pool. |
| # |
| # If unspecified, the defaults are used. |
| "machineType": "A String", # The name of a Google Compute Engine [machine |
| # type](/compute/docs/machine-types) (e.g. |
| # `n1-standard-1`). |
| # |
| # If unspecified, the default machine type is |
| # `n1-standard-1`. |
| "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", |
| ], |
| "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See: |
| # https://cloud.google.com/compute/docs/instances/preemptible for more |
| # inforamtion about preemptible VM instances. |
| "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: |
| # http://kubernetes.io/v1.1/docs/user-guide/labels.html |
| "a_key": "A String", |
| }, |
| "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs. If |
| # no Service Account is specified, the "default" service account is used. |
| "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](/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", |
| ], |
| "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. |
| "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 four reserved keys: |
| # "instance-template", "kube-env", "startup-script", and "user-data" |
| # |
| # 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", |
| }, |
| "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. |
| "localSsdCount": 42, # The number of local SSD disks to be attached to the node. |
| # |
| # The limit for this value is dependant upon the maximum number of |
| # disks available on a machine per zone. See: |
| # https://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits |
| # for more information. |
| }, |
| "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`. |
| "subnetwork": "A String", # The name of the Google Compute Engine |
| # [subnetwork](/compute/docs/subnetworks) to which the |
| # cluster is connected. |
| "resourceLabels": { # The resource labels for the cluster to use to annotate any related GCE |
| # resources. |
| "a_key": "A String", |
| }, |
| "selfLink": "A String", # [Output only] Server-defined URL for the resource. |
| }, |
| } |
| |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # This operation resource represents operations that may have happened or are |
| # happening on the cluster. All fields are output only. |
| "status": "A String", # The current status of the operation. |
| "statusMessage": "A String", # If an error has occurred, a textual description of the error. |
| "name": "A String", # The server-assigned ID for the operation. |
| "zone": "A String", # The name of the Google Compute Engine |
| # [zone](/compute/docs/zones#available) in which the operation |
| # is taking place. |
| "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. |
| "selfLink": "A String", # Server-defined URL for the resource. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="delete">delete(projectId, zone, clusterId, x__xgafv=None)</code> |
| <pre>Deletes the cluster, including the Kubernetes endpoint and all worker |
| nodes. |
| |
| Firewalls and routes that were configured during cluster creation |
| are also deleted. |
| |
| Other Google Compute Engine resources that might be in use by the cluster |
| (e.g. load balancer resources) will not be deleted if they weren't present |
| at the initial create time. |
| |
| Args: |
| projectId: string, The Google Developers Console [project ID or project |
| number](https://support.google.com/cloud/answer/6158840). (required) |
| zone: string, The name of the Google Compute Engine |
| [zone](/compute/docs/zones#available) in which the cluster |
| resides. (required) |
| clusterId: string, The name of the cluster to delete. (required) |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # This operation resource represents operations that may have happened or are |
| # happening on the cluster. All fields are output only. |
| "status": "A String", # The current status of the operation. |
| "statusMessage": "A String", # If an error has occurred, a textual description of the error. |
| "name": "A String", # The server-assigned ID for the operation. |
| "zone": "A String", # The name of the Google Compute Engine |
| # [zone](/compute/docs/zones#available) in which the operation |
| # is taking place. |
| "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. |
| "selfLink": "A String", # Server-defined URL for the resource. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="get">get(projectId, zone, clusterId, x__xgafv=None)</code> |
| <pre>Gets the details of a specific cluster. |
| |
| Args: |
| projectId: string, The Google Developers Console [project ID or project |
| number](https://support.google.com/cloud/answer/6158840). (required) |
| zone: string, The name of the Google Compute Engine |
| [zone](/compute/docs/zones#available) in which the cluster |
| resides. (required) |
| clusterId: string, The name of the cluster to retrieve. (required) |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # A Google Container Engine 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. |
| "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. |
| "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 a Heapster pod is running in the cluster, |
| # which is also used by the Cloud Monitoring service. |
| }, |
| }, |
| "locations": [ # The list of Google Compute Engine |
| # [locations](/compute/docs/zones#available) in which the cluster's nodes |
| # should be located. |
| "A String", |
| ], |
| "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. |
| "network": "A String", # The name of the Google Compute Engine |
| # [network](/compute/docs/networks-and-firewalls#networks) to which the |
| # cluster is connected. If left unspecified, the `default` network |
| # will be used. |
| "loggingService": "A String", # The logging service the cluster should use to write logs. |
| # Currently available options: |
| # |
| # * `logging.googleapis.com` - the Google Cloud Logging service. |
| # * `none` - no logs will be exported from the cluster. |
| # * if left as an empty string,`logging.googleapis.com` will be used. |
| "instanceGroupUrls": [ # [Output only] The resource URLs of [instance |
| # groups](/compute/docs/instance-groups/) associated with this |
| # cluster. |
| "A String", |
| ], |
| "statusMessage": "A String", # [Output only] Additional information about the current status of this |
| # cluster, if available. |
| "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. |
| "status": "A String", # [Output only] The current status of this cluster. |
| "description": "A String", # An optional description of this cluster. |
| "currentNodeVersion": "A String", # [Output only] 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. |
| "labelFingerprint": "A String", # The fingerprint of the set of labels for this cluster. |
| "currentMasterVersion": "A String", # [Output only] The current software version of the master endpoint. |
| "masterAuth": { # The authentication information for accessing the master endpoint. # The authentication information for accessing the master endpoint. |
| # Authentication can be done using HTTP basic auth or using client |
| # certificates. |
| "username": "A String", # The username to use for HTTP basic authentication to the master endpoint. |
| # For clusters v1.6.0 and later, you can disable basic authentication by |
| # providing an empty username. |
| "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. |
| "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. |
| "clusterCaCertificate": "A String", # [Output only] Base64-encoded public certificate that is the root of |
| # trust for the cluster. |
| }, |
| "expireTime": "A String", # [Output only] The time the cluster will be automatically |
| # deleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. |
| "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. |
| "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. |
| "status": "A String", # [Output only] The status of the nodes in this pool instance. |
| "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. |
| "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. |
| "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. |
| }, |
| "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. |
| }, |
| "name": "A String", # The name of the node pool. |
| "instanceGroupUrls": [ # [Output only] The resource URLs of [instance |
| # groups](/compute/docs/instance-groups/) associated with this |
| # node pool. |
| "A String", |
| ], |
| "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. |
| "enabled": True or False, # Is autoscaling enabled for this node pool. |
| "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be >= min_node_count. There |
| # has to enough quota to scale up the cluster. |
| }, |
| "version": "A String", # [Output only] The version of the Kubernetes of this node. |
| "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. |
| "config": { # Parameters that describe the nodes in a cluster. # The node configuration of the pool. |
| "machineType": "A String", # The name of a Google Compute Engine [machine |
| # type](/compute/docs/machine-types) (e.g. |
| # `n1-standard-1`). |
| # |
| # If unspecified, the default machine type is |
| # `n1-standard-1`. |
| "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", |
| ], |
| "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See: |
| # https://cloud.google.com/compute/docs/instances/preemptible for more |
| # inforamtion about preemptible VM instances. |
| "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: |
| # http://kubernetes.io/v1.1/docs/user-guide/labels.html |
| "a_key": "A String", |
| }, |
| "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs. If |
| # no Service Account is specified, the "default" service account is used. |
| "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](/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", |
| ], |
| "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. |
| "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 four reserved keys: |
| # "instance-template", "kube-env", "startup-script", and "user-data" |
| # |
| # 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", |
| }, |
| "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. |
| "localSsdCount": 42, # The number of local SSD disks to be attached to the node. |
| # |
| # The limit for this value is dependant upon the maximum number of |
| # disks available on a machine per zone. See: |
| # https://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits |
| # for more information. |
| }, |
| "statusMessage": "A String", # [Output only] Additional information about the current status of this |
| # node pool instance, if available. |
| }, |
| ], |
| "monitoringService": "A String", # The monitoring service the cluster should use to write metrics. |
| # Currently available options: |
| # |
| # * `monitoring.googleapis.com` - the Google Cloud Monitoring service. |
| # * `none` - no metrics will be exported from the cluster. |
| # * if left as an empty string, `monitoring.googleapis.com` will be used. |
| "createTime": "A String", # [Output only] The time the cluster was created, in |
| # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. |
| "name": "A String", # The name of this cluster. The name must be unique within this project |
| # and zone, and can be up to 40 characters with the following restrictions: |
| # |
| # * Lowercase letters, numbers, and hyphens only. |
| # * Must start with a letter. |
| # * Must end with a number or a letter. |
| "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. |
| "currentNodeCount": 42, # [Output only] The number of nodes currently in the cluster. |
| "zone": "A String", # [Output only] The name of the Google Compute Engine |
| # [zone](/compute/docs/zones#available) in which the cluster |
| # resides. |
| "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. |
| }, |
| "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. |
| "nodeConfig": { # Parameters that describe the nodes in a cluster. # Parameters used in creating the cluster's nodes. |
| # See `nodeConfig` for the description of its properties. |
| # For requests, this field should only be used in lieu of a |
| # "node_pool" object, since this configuration (along with the |
| # "initial_node_count") 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. |
| # For responses, this field will be populated with the node configuration of |
| # the first node pool. |
| # |
| # If unspecified, the defaults are used. |
| "machineType": "A String", # The name of a Google Compute Engine [machine |
| # type](/compute/docs/machine-types) (e.g. |
| # `n1-standard-1`). |
| # |
| # If unspecified, the default machine type is |
| # `n1-standard-1`. |
| "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", |
| ], |
| "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See: |
| # https://cloud.google.com/compute/docs/instances/preemptible for more |
| # inforamtion about preemptible VM instances. |
| "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: |
| # http://kubernetes.io/v1.1/docs/user-guide/labels.html |
| "a_key": "A String", |
| }, |
| "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs. If |
| # no Service Account is specified, the "default" service account is used. |
| "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](/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", |
| ], |
| "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. |
| "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 four reserved keys: |
| # "instance-template", "kube-env", "startup-script", and "user-data" |
| # |
| # 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", |
| }, |
| "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. |
| "localSsdCount": 42, # The number of local SSD disks to be attached to the node. |
| # |
| # The limit for this value is dependant upon the maximum number of |
| # disks available on a machine per zone. See: |
| # https://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits |
| # for more information. |
| }, |
| "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`. |
| "subnetwork": "A String", # The name of the Google Compute Engine |
| # [subnetwork](/compute/docs/subnetworks) to which the |
| # cluster is connected. |
| "resourceLabels": { # The resource labels for the cluster to use to annotate any related GCE |
| # resources. |
| "a_key": "A String", |
| }, |
| "selfLink": "A String", # [Output only] Server-defined URL for the resource. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="legacyAbac">legacyAbac(projectId, zone, clusterId, body, x__xgafv=None)</code> |
| <pre>Enables or disables the ABAC authorization mechanism on a cluster. |
| |
| Args: |
| projectId: string, The Google Developers Console [project ID or project |
| number](https://support.google.com/cloud/answer/6158840). (required) |
| zone: string, The name of the Google Compute Engine |
| [zone](/compute/docs/zones#available) in which the cluster |
| resides. (required) |
| clusterId: string, The name of the cluster to update. (required) |
| body: object, The request body. (required) |
| The object takes the form of: |
| |
| { # SetLegacyAbacRequest enables or disables the ABAC authorization mechanism for |
| # a cluster. |
| "enabled": True or False, # Whether ABAC authorization will be enabled in the cluster. |
| } |
| |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # This operation resource represents operations that may have happened or are |
| # happening on the cluster. All fields are output only. |
| "status": "A String", # The current status of the operation. |
| "statusMessage": "A String", # If an error has occurred, a textual description of the error. |
| "name": "A String", # The server-assigned ID for the operation. |
| "zone": "A String", # The name of the Google Compute Engine |
| # [zone](/compute/docs/zones#available) in which the operation |
| # is taking place. |
| "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. |
| "selfLink": "A String", # Server-defined URL for the resource. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="list">list(projectId, zone, x__xgafv=None)</code> |
| <pre>Lists all clusters owned by a project in either the specified zone or all |
| zones. |
| |
| Args: |
| projectId: string, The Google Developers Console [project ID or project |
| number](https://support.google.com/cloud/answer/6158840). (required) |
| zone: string, The name of the Google Compute Engine |
| [zone](/compute/docs/zones#available) in which the cluster |
| resides, or "-" for all zones. (required) |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # ListClustersResponse is the result of ListClustersRequest. |
| "missingZones": [ # If any zones are listed here, the list of clusters returned |
| # may be missing those zones. |
| "A String", |
| ], |
| "clusters": [ # A list of clusters in the project in the specified zone, or |
| # across all ones. |
| { # A Google Container Engine 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. |
| "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. |
| "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 a Heapster pod is running in the cluster, |
| # which is also used by the Cloud Monitoring service. |
| }, |
| }, |
| "locations": [ # The list of Google Compute Engine |
| # [locations](/compute/docs/zones#available) in which the cluster's nodes |
| # should be located. |
| "A String", |
| ], |
| "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. |
| "network": "A String", # The name of the Google Compute Engine |
| # [network](/compute/docs/networks-and-firewalls#networks) to which the |
| # cluster is connected. If left unspecified, the `default` network |
| # will be used. |
| "loggingService": "A String", # The logging service the cluster should use to write logs. |
| # Currently available options: |
| # |
| # * `logging.googleapis.com` - the Google Cloud Logging service. |
| # * `none` - no logs will be exported from the cluster. |
| # * if left as an empty string,`logging.googleapis.com` will be used. |
| "instanceGroupUrls": [ # [Output only] The resource URLs of [instance |
| # groups](/compute/docs/instance-groups/) associated with this |
| # cluster. |
| "A String", |
| ], |
| "statusMessage": "A String", # [Output only] Additional information about the current status of this |
| # cluster, if available. |
| "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. |
| "status": "A String", # [Output only] The current status of this cluster. |
| "description": "A String", # An optional description of this cluster. |
| "currentNodeVersion": "A String", # [Output only] 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. |
| "labelFingerprint": "A String", # The fingerprint of the set of labels for this cluster. |
| "currentMasterVersion": "A String", # [Output only] The current software version of the master endpoint. |
| "masterAuth": { # The authentication information for accessing the master endpoint. # The authentication information for accessing the master endpoint. |
| # Authentication can be done using HTTP basic auth or using client |
| # certificates. |
| "username": "A String", # The username to use for HTTP basic authentication to the master endpoint. |
| # For clusters v1.6.0 and later, you can disable basic authentication by |
| # providing an empty username. |
| "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. |
| "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. |
| "clusterCaCertificate": "A String", # [Output only] Base64-encoded public certificate that is the root of |
| # trust for the cluster. |
| }, |
| "expireTime": "A String", # [Output only] The time the cluster will be automatically |
| # deleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. |
| "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. |
| "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. |
| "status": "A String", # [Output only] The status of the nodes in this pool instance. |
| "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. |
| "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. |
| "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. |
| }, |
| "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. |
| }, |
| "name": "A String", # The name of the node pool. |
| "instanceGroupUrls": [ # [Output only] The resource URLs of [instance |
| # groups](/compute/docs/instance-groups/) associated with this |
| # node pool. |
| "A String", |
| ], |
| "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. |
| "enabled": True or False, # Is autoscaling enabled for this node pool. |
| "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be >= min_node_count. There |
| # has to enough quota to scale up the cluster. |
| }, |
| "version": "A String", # [Output only] The version of the Kubernetes of this node. |
| "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. |
| "config": { # Parameters that describe the nodes in a cluster. # The node configuration of the pool. |
| "machineType": "A String", # The name of a Google Compute Engine [machine |
| # type](/compute/docs/machine-types) (e.g. |
| # `n1-standard-1`). |
| # |
| # If unspecified, the default machine type is |
| # `n1-standard-1`. |
| "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", |
| ], |
| "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See: |
| # https://cloud.google.com/compute/docs/instances/preemptible for more |
| # inforamtion about preemptible VM instances. |
| "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: |
| # http://kubernetes.io/v1.1/docs/user-guide/labels.html |
| "a_key": "A String", |
| }, |
| "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs. If |
| # no Service Account is specified, the "default" service account is used. |
| "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](/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", |
| ], |
| "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. |
| "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 four reserved keys: |
| # "instance-template", "kube-env", "startup-script", and "user-data" |
| # |
| # 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", |
| }, |
| "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. |
| "localSsdCount": 42, # The number of local SSD disks to be attached to the node. |
| # |
| # The limit for this value is dependant upon the maximum number of |
| # disks available on a machine per zone. See: |
| # https://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits |
| # for more information. |
| }, |
| "statusMessage": "A String", # [Output only] Additional information about the current status of this |
| # node pool instance, if available. |
| }, |
| ], |
| "monitoringService": "A String", # The monitoring service the cluster should use to write metrics. |
| # Currently available options: |
| # |
| # * `monitoring.googleapis.com` - the Google Cloud Monitoring service. |
| # * `none` - no metrics will be exported from the cluster. |
| # * if left as an empty string, `monitoring.googleapis.com` will be used. |
| "createTime": "A String", # [Output only] The time the cluster was created, in |
| # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. |
| "name": "A String", # The name of this cluster. The name must be unique within this project |
| # and zone, and can be up to 40 characters with the following restrictions: |
| # |
| # * Lowercase letters, numbers, and hyphens only. |
| # * Must start with a letter. |
| # * Must end with a number or a letter. |
| "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. |
| "currentNodeCount": 42, # [Output only] The number of nodes currently in the cluster. |
| "zone": "A String", # [Output only] The name of the Google Compute Engine |
| # [zone](/compute/docs/zones#available) in which the cluster |
| # resides. |
| "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. |
| }, |
| "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. |
| "nodeConfig": { # Parameters that describe the nodes in a cluster. # Parameters used in creating the cluster's nodes. |
| # See `nodeConfig` for the description of its properties. |
| # For requests, this field should only be used in lieu of a |
| # "node_pool" object, since this configuration (along with the |
| # "initial_node_count") 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. |
| # For responses, this field will be populated with the node configuration of |
| # the first node pool. |
| # |
| # If unspecified, the defaults are used. |
| "machineType": "A String", # The name of a Google Compute Engine [machine |
| # type](/compute/docs/machine-types) (e.g. |
| # `n1-standard-1`). |
| # |
| # If unspecified, the default machine type is |
| # `n1-standard-1`. |
| "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", |
| ], |
| "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See: |
| # https://cloud.google.com/compute/docs/instances/preemptible for more |
| # inforamtion about preemptible VM instances. |
| "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: |
| # http://kubernetes.io/v1.1/docs/user-guide/labels.html |
| "a_key": "A String", |
| }, |
| "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs. If |
| # no Service Account is specified, the "default" service account is used. |
| "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](/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", |
| ], |
| "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. |
| "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 four reserved keys: |
| # "instance-template", "kube-env", "startup-script", and "user-data" |
| # |
| # 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", |
| }, |
| "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. |
| "localSsdCount": 42, # The number of local SSD disks to be attached to the node. |
| # |
| # The limit for this value is dependant upon the maximum number of |
| # disks available on a machine per zone. See: |
| # https://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits |
| # for more information. |
| }, |
| "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`. |
| "subnetwork": "A String", # The name of the Google Compute Engine |
| # [subnetwork](/compute/docs/subnetworks) to which the |
| # cluster is connected. |
| "resourceLabels": { # The resource labels for the cluster to use to annotate any related GCE |
| # resources. |
| "a_key": "A String", |
| }, |
| "selfLink": "A String", # [Output only] Server-defined URL for the resource. |
| }, |
| ], |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="resourceLabels">resourceLabels(projectId, zone, clusterId, body, x__xgafv=None)</code> |
| <pre>Sets labels on a cluster. |
| |
| Args: |
| projectId: string, The Google Developers Console [project ID or project |
| number](https://developers.google.com/console/help/new/#projectnumber). (required) |
| zone: string, The name of the Google Compute Engine |
| [zone](/compute/docs/zones#available) in which the cluster |
| resides. (required) |
| clusterId: string, The name of the cluster. (required) |
| body: object, The request body. (required) |
| The object takes the form of: |
| |
| { # 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 |
| "labelFingerprint": "A String", # The fingerprint of the previous set of labels for this resource, |
| # used to detect conflicts. The fingerprint is initially generated by |
| # Container Engine and changes after every request to modify or update |
| # labels. You must always provide an up-to-date fingerprint hash when |
| # updating or changing labels. Make a <code>get()</code> request to the |
| # resource to get the latest fingerprint. |
| "resourceLabels": { # The labels to set for that cluster. |
| "a_key": "A String", |
| }, |
| } |
| |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # This operation resource represents operations that may have happened or are |
| # happening on the cluster. All fields are output only. |
| "status": "A String", # The current status of the operation. |
| "statusMessage": "A String", # If an error has occurred, a textual description of the error. |
| "name": "A String", # The server-assigned ID for the operation. |
| "zone": "A String", # The name of the Google Compute Engine |
| # [zone](/compute/docs/zones#available) in which the operation |
| # is taking place. |
| "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. |
| "selfLink": "A String", # Server-defined URL for the resource. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="setMasterAuth">setMasterAuth(projectId, zone, clusterId, body, x__xgafv=None)</code> |
| <pre>Used to set master auth materials. Currently supports :- |
| Changing the admin password of a specific cluster. |
| This can be either via password generation or explicitly set the password. |
| |
| Args: |
| projectId: string, The Google Developers Console [project ID or project |
| number](https://support.google.com/cloud/answer/6158840). (required) |
| zone: string, The name of the Google Compute Engine |
| [zone](/compute/docs/zones#available) in which the cluster |
| resides. (required) |
| clusterId: string, The name of the cluster to upgrade. (required) |
| body: object, The request body. (required) |
| The object takes the form of: |
| |
| { # SetMasterAuthRequest updates the admin password of a cluster. |
| "action": "A String", # The exact form of action to be taken on the master auth |
| "update": { # The authentication information for accessing the master endpoint. # A description of the update. |
| # Authentication can be done using HTTP basic auth or using client |
| # certificates. |
| "username": "A String", # The username to use for HTTP basic authentication to the master endpoint. |
| # For clusters v1.6.0 and later, you can disable basic authentication by |
| # providing an empty username. |
| "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. |
| "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. |
| "clusterCaCertificate": "A String", # [Output only] Base64-encoded public certificate that is the root of |
| # trust for the cluster. |
| }, |
| } |
| |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # This operation resource represents operations that may have happened or are |
| # happening on the cluster. All fields are output only. |
| "status": "A String", # The current status of the operation. |
| "statusMessage": "A String", # If an error has occurred, a textual description of the error. |
| "name": "A String", # The server-assigned ID for the operation. |
| "zone": "A String", # The name of the Google Compute Engine |
| # [zone](/compute/docs/zones#available) in which the operation |
| # is taking place. |
| "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. |
| "selfLink": "A String", # Server-defined URL for the resource. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="startIpRotation">startIpRotation(projectId, zone, clusterId, body, x__xgafv=None)</code> |
| <pre>Start master IP rotation. |
| |
| Args: |
| projectId: string, The Google Developers Console [project ID or project |
| number](https://developers.google.com/console/help/new/#projectnumber). (required) |
| zone: string, The name of the Google Compute Engine |
| [zone](/compute/docs/zones#available) in which the cluster |
| resides. (required) |
| clusterId: string, The name of the cluster. (required) |
| body: object, The request body. (required) |
| The object takes the form of: |
| |
| { # StartIPRotationRequest creates a new IP for the cluster and then performs |
| # a node upgrade on each node pool to point to the new IP. |
| } |
| |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # This operation resource represents operations that may have happened or are |
| # happening on the cluster. All fields are output only. |
| "status": "A String", # The current status of the operation. |
| "statusMessage": "A String", # If an error has occurred, a textual description of the error. |
| "name": "A String", # The server-assigned ID for the operation. |
| "zone": "A String", # The name of the Google Compute Engine |
| # [zone](/compute/docs/zones#available) in which the operation |
| # is taking place. |
| "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. |
| "selfLink": "A String", # Server-defined URL for the resource. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="update">update(projectId, zone, clusterId, body, x__xgafv=None)</code> |
| <pre>Updates the settings of a specific cluster. |
| |
| Args: |
| projectId: string, The Google Developers Console [project ID or project |
| number](https://support.google.com/cloud/answer/6158840). (required) |
| zone: string, The name of the Google Compute Engine |
| [zone](/compute/docs/zones#available) in which the cluster |
| resides. (required) |
| clusterId: string, The name of the cluster to upgrade. (required) |
| body: object, The request body. (required) |
| The object takes the form of: |
| |
| { # UpdateClusterRequest updates the settings of a cluster. |
| "update": { # ClusterUpdate describes an update to the cluster. Exactly one update can # A description of the update. |
| # be applied to a cluster with each request, so at most one field can be |
| # provided. |
| "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. |
| "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. |
| "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 a Heapster pod is running in the cluster, |
| # which is also used by the Cloud Monitoring service. |
| }, |
| }, |
| "desiredMasterVersion": "A String", # The Kubernetes version to change the master to. The only valid value is the |
| # latest supported version. Use "-" to have the server automatically select |
| # the latest version. |
| "desiredLocations": [ # The desired list of Google Compute Engine |
| # [locations](/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", |
| ], |
| "desiredNodeVersion": "A String", # The Kubernetes version to change the nodes to (typically an |
| # upgrade). Use `-` to upgrade to the latest version supported by |
| # the server. |
| "desiredMonitoringService": "A String", # The monitoring service the cluster should use to write metrics. |
| # Currently available options: |
| # |
| # * "monitoring.googleapis.com" - the Google Cloud Monitoring service |
| # * "none" - no metrics will be exported from the 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. |
| "enabled": True or False, # Is autoscaling enabled for this node pool. |
| "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be >= min_node_count. There |
| # has to enough quota to scale up the cluster. |
| }, |
| "desiredImageType": "A String", # The desired image type for the node pool. |
| # NOTE: Set the "desired_node_pool" field as well. |
| }, |
| } |
| |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # This operation resource represents operations that may have happened or are |
| # happening on the cluster. All fields are output only. |
| "status": "A String", # The current status of the operation. |
| "statusMessage": "A String", # If an error has occurred, a textual description of the error. |
| "name": "A String", # The server-assigned ID for the operation. |
| "zone": "A String", # The name of the Google Compute Engine |
| # [zone](/compute/docs/zones#available) in which the operation |
| # is taking place. |
| "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. |
| "selfLink": "A String", # Server-defined URL for the resource. |
| }</pre> |
| </div> |
| |
| </body></html> |