k8s
hajowieland/k8s/azurerm
Terraform module for creating a Kubernetes cluster on Microsoft Azure with latest available version, kubeconfig file creation and addititonal node pool.
Install
README
Terraform Kubernetes on Microsoft Azure This repository contains the Terraform module for creating a simple but ready-to-use Kubernetes Cluster on Microsoft Azure Kubernetes Service (AKS). It uses the latest Kubernetes version available in the Azure location and creates a kubeconfig file at completion. Link to my comprehensive blog post (beginner friendly): https://napo.io/posts/terraform-kubernetes-multi-cloud-ack-aks-dok-eks-gke-oke/#microsoft-azure - Terraform Kubernetes on Microsoft Azure - Requirements - Features - Notes - Defaults - Runtime - Terraform Inputs - Outputs Requirements You need a Microsoft Azure account with a subscription (for example a Pay-As-You-Go subscription). Features Always uses latest Kubernetes version available at Azure location kubeconfig file generation Crea
Inputs (13)
| Name | Type | Description | Default |
|---|---|---|---|
| az_client_id | string | Azure Service Principal appId | required |
| az_client_secret | string | Azure Service Principal password | required |
| az_tenant_id | string | Azure Service Principal tenant | required |
| enable_microsoft | bool | Enable / Disable Microsoft Azure k8s (e.g. `true`) | true |
| random_cluster_suffix | string | Random 6 byte hex suffix for cluster name | "" |
| aks_region | string | AKS region (e.g. `West Europe`) -> `az account list-locations --output table` | "West Europe" |
| aks_pool_name | string | AKS agent node pool name (e.g. `k8s-aks-nodepool`) | "k8snodepool" |
| aks_node_disk_size | number | AKS node instance disk size in GB (e.g. `30` => minimum: 30GB, maximum: 1024) | 30 |
| enable_logs | bool | Enable azure log analtics for container logs | false |
| ssh_public_key | string | Path to your SSH public key (e.g. `~/.ssh/id_rsa.pub`) | "~/.ssh/id_rsa.pub" |
| aks_name | string | AKS cluster name (e.g. `k8s-aks`) | "k8s" |
| aks_nodes | number | AKS Kubernetes worker nodes (e.g. `2`) | 2 |
| aks_node_type | string | AKS node pool instance type (e.g. `Standard_D1_v2` => 1vCPU, 3.75 GB RAM) | "Standard_D1_v2" |
Outputs (4)
kubeconfig_path_akslatest_k8s_versionpublic_ip_addresspublic_ip_fqdnResources (7)
Topics & Tags
Details
Similar packages
Azure landing zones Terraform module
Terraform supermodule for the Terraform platform engineering for Azure
Terraform module to deploy landing zone subscriptions (and much more) in Azure
Terraform Module to define a consistent naming convention by (namespace, stage,