Skip to content

Low-level bootstrap a Kubernetes control plane with Terraform (part of Typhoon)

License

Notifications You must be signed in to change notification settings

poseidon/terraform-render-bootstrap

Folders and files

NameName
Last commit message
Last commit date
Oct 31, 2023
Feb 7, 2025
Sep 1, 2017
Aug 2, 2017
Jan 19, 2023
Jan 14, 2022
Dec 29, 2024
Feb 7, 2025
Feb 7, 2025
Dec 5, 2019
Apr 21, 2022
Apr 21, 2022
Apr 21, 2022
Feb 7, 2025
May 4, 2024

Repository files navigation

terraform-render-bootstrap

Workflow Sponsors Mastodon

terraform-render-bootstrap is a Terraform module that renders TLS certificates, static pods, and manifests for bootstrapping a Kubernetes cluster.

Audience

terraform-render-bootstrap is a low-level component of the Typhoon Kubernetes distribution. Use Typhoon modules to create and manage Kubernetes clusters across supported platforms. Use the bootstrap module if you'd like to customize a Kubernetes control plane or build your own distribution.

Usage

Use the module to declare bootstrap assets. Check variables.tf for options and terraform.tfvars.example for examples.

module "bootstrap" {
  source = "git::https://github.com/poseidon/terraform-render-bootstrap.git?ref=SHA"

  cluster_name = "example"
  api_servers = ["node1.example.com"]
  etcd_servers = ["node1.example.com"]
}

Generate assets in Terraform state.

terraform init
terraform plan
terraform apply

To inspect and write assets locally (e.g. debugging) use the assets_dist Terraform output.

resource local_file "assets" {
  for_each = module.bootstrap.assets_dist
  filename = "some-assets/${each.key}"
  content = each.value
}