Create Kubernetes Cluster
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. One firewall is added for the cluster. After cluster creation, the Kubelet 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 the cluster is using.
External Documentation
To learn more, visit the GCP documentation.
Basic Parameters
Parameter | Description |
---|---|
Name | The name of this cluster. The name must be unique within this project and location (e.g. zone or region), and can be up to 40 characters with the following restrictions: * Lowercase letters, numbers, and hyphens only. * Must start with a letter. * Must end with a number or a letter. |
Node Pools | The node pools associated with this cluster, as a array of JSON objects.For information on how to format this field, view the GCP documentationThis field should not be set if "nodeconfig" or "initialnode_count" are specified. |
Project ID | The Google Developers Console project ID or project number. |
Zone | The name of the Google Compute Engine zone in which the cluster should reside. |
Advanced Parameters
Parameter | Description |
---|---|
Add-ons Configuration | Configuration for the addons that can be automatically spun up in the cluster, enabling additional functionality.For information on how to format this object, view https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters#Cluster.AddonsConfig |
Authenticator Security Group | The name of the security group-of-groups to be used. |
Autopilot | Enable Autopilot. |
Autoscaling Configuration | Cluster-level autoscaling configuration.View https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters#Cluster.ClusterAutoscaling for how to format this object. |
Binary Authorization | Enable Binary Authorization for this cluster. If enabled, all container images will be validated by Binary Authorization. |
CIDR Blocks | cidr_blocks define up to 50 external networks that could access Kubernetes master through HTTPS. |
Conditions | Which conditions caused the current cluster state. |
Confidential Nodes | Whether Confidential Nodes feature is enabled for all nodes in this cluster. |
Database Encryption Key Name | 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. |
Database Encryption State | Denotes the state of etcd encryption. |
Description | An optional description of this cluster. |
Enable TPU | Enable the ability to use Cloud TPUs in this cluster. |
IP Allocation Policy | Configuration for cluster IP allocation.View https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters#Cluster.IPAllocationPolicy for how to format this object. |
IPv4 CIDR | The IP address range of the container pods in this cluster, in CIDR notation (e.g. 10.96.0.0/14 ). Leave blank to have one automatically chosen or specify a /14 block in 10.0.0.0/8 . |
Initial Cluster Version | The initial Kubernetes version for this cluster. Valid versions are those found in validMasterVersions returned by getServerConfig. The version can be upgraded over time; such upgrades are reflected in currentMasterVersion and currentNodeVersion. Users may specify either explicit versions offered by Kubernetes Engine or version aliases, which have the following behavior: - "latest": picks the highest valid Kubernetes version - "1.X": picks the highest valid patch+gke.N patch in the 1.X version - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version - "1.X.Y-gke.N": picks an explicit Kubernetes version - "","-": picks the default Kubernetes version. |
Issue Client Certificate | Issue a client certificate. |
Label Fingerprint | The fingerprint of the set of labels for this cluster. |
Legacy ABAC | 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. |
Locations | The list of Google Compute Engine zones in which the cluster's nodes should be located. This field provides a default value if NodePool.Locations are not specified during node pool creation. Warning: changing cluster locations will update the NodePool.Locations of all node pools and will result in nodes being added and/or removed. |
Logging Components | Select components to collect logs. An empty set would disable all logging. |
Logging Service | 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. |
Maintenance Policy | Configure the maintenance policy for this cluster.View https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters#Cluster.MaintenancePolicy for how to format the object. |
Master Authorized Networks | Whether or not master authorized networks is enabled. |
Max Pods Per Node | Constraint enforced on the max num of pods per node. |
Monitoring Components | Select components to collect metrics. An empty set would disable all monitoring. |
Monitoring Service | 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. |
Network Configuration | NetworkConfig reports the relative names of network & subnetwork.Visit https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters#Cluster.NetworkConfig for how to format this object. |
Network Policy Provider | The selected network policy provider. |
Private Cluster Configuration | Configuration for private cluster.View https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters#Cluster.PrivateClusterConfig for how to format the object. |
Pub/Sub Topic | The desired Pub/Sub topic to which notifications will be sent by GKE. Format is projects/{project}/topics/{topic} . |
Release Channel | Specifies which release channel the cluster is subscribed to. |
Resource Labels | The resource labels for the cluster to use to annotate any related Google Compute Engine resources. |
Resource Usage Export Configuration | Configuration for exporting cluster resource usages.View https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters#Cluster.ResourceUsageExportConfig |
Shielded Nodes | Whether Shielded Nodes features are enabled on all nodes in this cluster. |
Subnetwork | The name of the Google Compute Engine subnetwork to which the cluster is connected. |
Vertical Pod Autoscaling | Enables vertical pod autoscaling. |
Workload Pool | The workload pool to attach all Kubernetes service accounts to. |
Example Output
{
"name": "operation-1674392048992-d0986f83",
"zone": "europe-central2-a",
"operationType": "CREATE_CLUSTER",
"status": "RUNNING",
"selfLink": "https://container.googleapis.com/v1/projects/123456789/zones/europe-central2-a/operations/operation-1674392048992-d0986f83",
"targetLink": "https://container.googleapis.com/v1/projects/123456789/zones/europe-central2-a/clusters/test",
"startTime": "2023-01-22T12:54:08.992901505Z"
}
Workflow Library Example
Create Kubernetes Cluster with Gcp and Send Results Via Email
Preview this Workflow on desktop