Open Source & Free
The easiest and fastest way to create production-ready Kubernetes clusters. No Terraform to learn, no management cluster required, no third-party access to your credentials.
2-3 min HA Cluster Setup
500 nodes In Under 11 Minutes
80% Cost Savings
$ hetzner-k3s create –config cluster.yaml
✓ Creating network...
✓ Creating firewall...
✓ Creating masters (3 nodes)...
✓ Creating workers (3 nodes)...
✓ Installing k3s...
✓ Installing Hetzner CCM & CSI...
✓ Cluster ready in 2m 34s
$ kubectl get nodes
NAME STATUS ROLES AGE master-1 Ready control-plane,master 2m master-2 Ready control-plane,master 2m master-3 Ready control-plane,master 2m worker-1 Ready <none> 1m worker-2 Ready <none> 1m worker-3 Ready <none> 1m
Why Choose hetzner-k…
Open Source & Free
The easiest and fastest way to create production-ready Kubernetes clusters. No Terraform to learn, no management cluster required, no third-party access to your credentials.
2-3 min HA Cluster Setup
500 nodes In Under 11 Minutes
80% Cost Savings
$ hetzner-k3s create –config cluster.yaml
✓ Creating network...
✓ Creating firewall...
✓ Creating masters (3 nodes)...
✓ Creating workers (3 nodes)...
✓ Installing k3s...
✓ Installing Hetzner CCM & CSI...
✓ Cluster ready in 2m 34s
$ kubectl get nodes
NAME STATUS ROLES AGE master-1 Ready control-plane,master 2m master-2 Ready control-plane,master 2m master-3 Ready control-plane,master 2m worker-1 Ready <none> 1m worker-2 Ready <none> 1m worker-3 Ready <none> 1m
Why Choose hetzner-k3s?
Purpose-built for Hetzner Cloud. No compromises.
Speed That Sets Records
Create a 3-node HA cluster in just 2-3 minutes. We’ve tested 500-node clusters in under 11 minutes — possibly a world record for Kubernetes provisioning.
- Parallel node provisioning
- Optimised for Hetzner’s API
- No waiting for Terraform plans
Simplicity Without Compromise
One CLI tool, one YAML config file. No Terraform, Packer, Ansible, or existing Kubernetes cluster required. Batteries included.
- Human-readable configuration
- Version-controllable setup
- All essentials pre-installed
Complete Control, Zero Lock-in
Your credentials stay on your machine. No third-party accounts, no platform fees, no one else can see your clusters or workloads.
- API token never leaves your machine
- No recurring platform fees
- Full access to your infrastructure
Save Up to 80% on Infrastructure
Hetzner Cloud offers the best performance-to-cost ratio in the industry
$ 158 /month
3 masters + 10 workers (Medium Production)
- No platform fees
- No per-user fees
- Traffic included
- DDoS protection included
- Full infrastructure control
$ 1595+ /month
3 masters + 10 workers
- $73/month control plane fee
- ~$1440/month for 10 EC2 instances
- ~$81/month for Network Load Balancer
- + data transfer, EBS
- Complex pricing model
$ 368 /month
Infrastructure + management fees
- Per-vCPU management fees
- Control plane fee (Pro tier)
- Third-party account required
- API token shared with platform
Real Infrastructure Costs (December 2025)
| Cluster Type | Configuration | Monthly Cost |
|---|---|---|
| Development | 1 master (CX23), 2 workers (CX23) | ~$19/month |
| Small Production | 3 masters (CPX22), 3 workers (CPX32) | ~$68/month |
| Medium Production | 3 masters (CPX22), 10 workers (CPX32) | ~$158/month |
| Large Production | 3 masters (CPX42), 50 workers (CPX32) | ~$615/month |
* Includes load balancer (~€5.50/month). No management fees, no per-user fees — just infrastructure.
Everything You Need for Production
Batteries included. No assembly required.
High Availability
Deploy masters and worker pools across multiple Hetzner locations for regional resilience.
Autoscaling
Define min/max instances per node pool. The Cluster Autoscaler handles scaling based on demand.
Multiple Node Pools
Mix x86 and ARM instances at various performance levels. Cost-effective ARM (CAX) instances available.
Private Networking
All cluster communication happens over Hetzner’s private network by default. Secure and fast.
CNI Options
Choose Flannel for simplicity or Cilium for advanced networking features like network policies.
Large Cluster Support
Tested with 500 nodes and designed to scale beyond. Production-proven architecture.
Zero-Downtime Upgrades
System Upgrade Controller enables seamless k3s upgrades without service interruption.
Production Components
Hetzner CCM, CSI driver, and Cluster Autoscaler installed automatically. Ready to deploy.
What Gets Installed
A complete, production-ready stack out of the box
k3s
Lightweight, certified Kubernetes distribution by Rancher. Lower resource footprint, single binary, production-ready.
Hetzner Cloud Controller Manager
Automatic load balancer provisioning and node lifecycle management integrated with Hetzner Cloud.
Hetzner CSI Driver
Persistent volumes via Hetzner block storage. Dynamic provisioning for your stateful workloads.
System Upgrade Controller
Automated, zero-downtime k3s upgrades. Keep your cluster up-to-date with minimal effort.
Cluster Autoscaler
Automatic node scaling based on demand. Scale up when pods are pending, scale down when resources are idle.
Private Network & Firewall
All integrated with Hetzner’s private networking and firewall. Secure by default.
Who Uses hetzner-k3s?
Trusted by teams who value simplicity and efficiency
Startups
Running cost-efficient production workloads without breaking the bank on cloud infrastructure.
Development Teams
Spinning up ephemeral test clusters in minutes, tearing them down when done. Fast iteration cycles.
Agencies & Consultants
Deploying client infrastructure quickly with a reproducible, version-controlled setup.
Regulated Industries
Companies requiring data sovereignty with EU-based data centres and full infrastructure control.
Platform Engineers
Who want simplicity without sacrificing control. No magic, just straightforward infrastructure.
Cost-Conscious Teams
Saving up to 80% compared to major cloud providers while maintaining production quality.
Get Started in Minutes
From zero to production cluster with just a few commands
1. Install hetzner-k3s
brew install vitobotta/tap/hetzner_k3s
wget https://github.com/vitobotta/hetzner-k3s/releases/latest/download/hetzner-k3s-linux-amd64
chmod +x hetzner-k3s-linux-amd64
sudo mv hetzner-k3s-linux-amd64 /usr/local/bin/hetzner-k3s
2. Create your configuration
hetzner_token: <your-token>
cluster_name: my-cluster
kubeconfig_path: "./kubeconfig"
k3s_version: v1.32.0+k3s1
networking:
ssh:
port: 22
use_agent: false
public_key_path: "~/.ssh/id_ed25519.pub"
private_key_path: "~/.ssh/id_ed25519"
allowed_networks:
ssh:
- 0.0.0.0/0
api:
- 0.0.0.0/0
masters_pool:
instance_type: cpx22
instance_count: 3
location: fsn1
worker_node_pools:
- name: workers
instance_type: cpx32
instance_count: 3
location: fsn1
3. Create your cluster
hetzner-k3s create --config cluster.yaml
Your cluster will be ready in 2-3 minutes. The kubeconfig is saved automatically.
4. Start using your cluster
export KUBECONFIG=./kubeconfig
kubectl get nodes
No Terraform. No Packer. No Ansible. No management cluster. No third-party account.
100% Free & Open Source
hetzner-k3s is released under the MIT License. Use it freely for personal projects, startups, or enterprise deployments. No hidden fees, no premium tiers, no limitations.
Inspect the code, modify it, contribute back — it’s truly open.
Professional Support Available
Need help with your Kubernetes setup? Want custom features or enterprise support? Professional consultancy services are available for teams who need expert guidance.
- Cluster architecture review
- Production deployment assistance
- Custom feature development
- Training and workshops