alessiodionisi / packer-hcloud-kubernetes

Kubernetes image for Hetzner Cloud, can be used with Kubernetes Cluster API

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Kubernetes image for Hetzner Cloud

This Packer project creates an image to spin up Kubernetes clusters with kubeadm or Kubernetes Cluster API on Hetzner Cloud.

Features

  • All requirements to setup a Kubernetes cluster with kubeadm
  • containerd as container runtime
  • AMD64 and ARM64 support
  • IPv4/IPv6 dual-stack networking support
  • Integrity of downloaded files verified with sha256sum
  • Images used by kubeadm pulled as building step

Getting started

Set HCLOUD_TOKEN environment variable or token variable and run packer build, for example:

export HCLOUD_TOKEN=xxxx
packer build .

To build an ARM64 image, set server_type variable to cax11:

export HCLOUD_TOKEN=xxxx
packer build -var server_type=cax11 .

Variables

Name Description Default
cni_plugins_version cni plugins version 1.4.0
containerd_sandbox_image containerd sandbox image, should match k8s one registry.k8s.io/pause:3.9
containerd_version containerd version 1.7.13
crictl_version crictl version 1.29.0
image Hetzner Cloud base image debian-12
kubernetes_release_tooling_version kubernetes release tooling version 0.16.5
kubernetes_version kubernetes version 1.29.2
location Hetzner Cloud location nbg1
runc_version runc version 1.1.12
server_type Hetzner Cloud server type cpx11
token Hetzner Cloud token to access APIs HCLOUD_TOKEN environment variable

About

Kubernetes image for Hetzner Cloud, can be used with Kubernetes Cluster API


Languages

Language:Shell 65.6%Language:HCL 34.4%