gke_cluster

airasia/gke_cluster/google

Terraform Module HCL GOOGLE

Terraform module for a GKE Kubernetes Cluster in GCP

Install
module "gke_cluster" {
source = "airasia/gke_cluster/google"
version = "2.35.6"
}
plain text: /constructs/tfmod-airasia-gke-cluster-google/install.txt
⭐ Source on GitHub 📦 Registry page
README

Terraform module for a GKE Kubernetes Cluster in GCP Using Helm Charts to install Ingress Nginx If you want to utilize this feature make sure to declare a helm provider in your terraform configuration as follows. ``terraform provider "helm" { version = "2.1.2" # see https://github.com/terraform-providers/terraform-provider-helm/releases kubernetes { host = module.gke_cluster.cluster_endpoint token = data.google_client_config.google_client.access_token cluster_ca_certificate = module.gke_cluster.cluster_ca_certificate } } ` Pay attention to the gke_cluster module output variables used here. kubelet_config Configuration This module supports kubelet configuration through the kubelet_config parameter in node_pools. Supported Parameters The parameters are compatible with Google provider version

Inputs (44)
NameTypeDescriptionDefault
vpc_networkstringA reference (self link) to the VPC network to host the cluster in. required
name_suffixstringAn arbitrary suffix that will be added to the resource name(s) for distinguishin required
vpc_subnetworkstringA reference (self link) to the subnetwork to host the cluster in. required
pods_ip_range_namestringName of subnet's secondary IP range for hosting k8s pods. required
services_ip_range_namestringName of subnet's secondary IP range for hosting k8s services. required
locationslist(string)Accepts a list of one or more zone-letters from among "a", "b", "c" or "d". Defa[ "a" ]
enable_vertical_pod_autoscalingboolWhether to enable Vertical Pod Autoscaling which autoscales based on usage of pofalse
maintenance_windowobject({ start_time_utc = The time windows when GKE can be allowed to perform maintenance ops like version{ "days_of_week": "MO,TU,WE,TH,FR",
firewall_ingress_portslist(string)Additional ports (on cluster nodes) that should be allowed via firewall rules to[]
enable_public_endpointboolAllows access through the public endpoint of cluster master. Keep it 'true' if ytrue
namespaceslist(object({ name A list of namespaces to be created in kubernetes. A map of secrets can be includ[]
enable_addon_horizontal_pod_autoscalingboolWhether to enable Horizontal Pod Autoscaling addon which autoscales based on usatrue
max_surgenumberMax number of node(s) that can be over-provisioned while the GKE cluster is unde1
maintenance_exclusionslist(object({ exclusion_naA maintenance exclusion is a non-repeating window of time during which automatic[]
node_pool_timeoutstringhow long a node pool operation is allowed to take before being considered a fail"30m"
ingress_ip_nameslist(string)Arbitrary names for list of static Ingress IPs to be created for the GKE cluster[]
max_unavailablenumberMax number of node(s) that can be allowed to be unavailable while the GKE cluste0
namespace_timeoutstringhow long a k8s namespace operation is allowed to take before being considered a "5m"
master_authorized_networkslist(object({ cidr_block External networks that can access the cluster master(s) through HTTPS.[]
enable_addon_http_load_balancingboolWhether to enable HTTP (L7) load balancing controller addon.true
cluster_namestringAn arbitrary name to identify the k8s cluster."k8s"
min_master_versionstringThe "minimum" version number that should be used by the GKE cluster master (a.k."1.18.17-gke.1900"
cluster_monitoring_servicestringThe monitoring service to be used by the GKE cluster."monitoring.googleapis.com/kubernetes"
master_private_ip_cidrstringThe IP range in CIDR notation to use for the hosted master network. This range w"172.16.0.0/28"
location_policystringLocation policy specifies the algorithm used when scaling-up the node pool. Loca"BALANCED"
… and 4 more inputs
Outputs (4)
current_master_version — Current version number of the GKE cluster master (a.k.a. the control-plane).
usage_IAM_roles — Basic IAM role(s) that are generally necessary for using the resources in this module. See https://c
cluster_endpoint — The IP address of the GKE cluster master (a.k.a. the control-plane).
cluster_ca_certificate — Base64 encoded public certificate that is the root of trust for this cluster. Used for connecting to
Resources (10)
google_compute_addressgoogle_compute_firewallgoogle_compute_global_addressgoogle_container_clustergoogle_container_node_poolgoogle_project_servicehelm_releasekubernetes_namespacekubernetes_secretrandom_string
Details
FrameworkTerraform Module
LanguageHCL
Version2.35.6
Cloud GOOGLE
★ Stars7
Forks25
Total downloads84.8k
Inputs44
Outputs4
Resources10
LicenseGPL-3.0
Namespaceairasia
Updated