terraform-kubernetes-kind-module

Terraform Module to deploy a KinD Cluster Locally.

Requirements

Name Version
docker N/A
kind 0.5.1

Providers

Name Version
kind 0.5.1

Modules

No modules.

Resources

Name Type
kind_cluster.this resource

Inputs

Name Description Type Default Required
cluster_name The kubernetes cluster name. string "test" no
cluster_version The kubernetes version. string "v1.27.1" no
host_port The host port to be bound to port 80. number 18080 no
kubeconfig_file The file location for kubeconfig content. string "/tmp/kube.config" no

Outputs

Name Description
client_certificate n/a
client_key n/a
cluster_ca_certificate n/a
endpoint n/a
kubeconfig n/a

Example

In example/main.tf:

module "kubernetes" {
  source  = "git::https://github.com/ruanbekker/terraform-kubernetes-kind-module.git?ref=main"

  cluster_name    = "test-cluster"
  cluster_version = "v1.27.1"
  kubeconfig_file = "/tmp/kube.config"
}

Run:

terraform init
terraform apply -auto-approve

Configure kubeconfig:

export KUBECONFIG=/tmp/kube.config

Access the cluster:

kubectl get nodes