hetzner-k3s v2.2.4
_ _ _ _____
| |__ ___| |_ _____ __ ___ _ __ | | _|___ / ___
| '_ \ / _ \ __|_ / '_ \ / _ \ '__|____| |/ / |_ \/ __|
| | | | __/ |_ / /| | | | __/ | |_____| < ___) \__ \
|_| |_|\___|\__/___|_| |_|\___|_| |_|\_\____/|___/
The simplest and quickest way to set up production-ready Kubernetes clusters on Hetzner Cloud.
What is this?
This is a CLI tool designed to make it incredibly fast and easy to create and manage Kubernetes clusters on Hetzner Cloud using k3s, a lightweight Kubernetes distribution from Rancher. In a test run, I created a 500-node highly available cluster (3 masters, 497 worker nodes) in just under 11 minutes - though this was with only the public network, as private networks are limited to 100 instances per network. I think this might be a world record!
Hetzner Cloud is an awesome cloud provider that offers excellent service with the best performance-to-cost ratio available. They have data centers in Europe, USA and Singapore, making it a versatile choice.
k3s is my go-to Kubernetes distribution because it's lightweight, using far less memory and CPU, which leaves more resources for your workloads. It is also incredibly fast to deploy and upgrade because, thanks to being a single binary.
With hetzner-k3s
, setting up a highly available k3s cluster with 3 master nodes and 3 worker nodes takes only 2-3 minutes. This includes:
- Creating all the necessary infrastructure resources (instances, placement groups, load balancer, private network, and firewall).
- Deploying k3s to the nodes.
- Installing the Hetzner Cloud Controller Manager to provision load balancers immediately.
- installing the Hetzner CSI Driver to handle persistent volumes using Hetzner's block storage.
- Installing the Rancher System Upgrade Controller to simplify and speed up k3s version upgrades.
- Installing the Cluster Autoscaler to enable autoscaling of node pools.
For a step-by-step guide on setting up a cluster with the most common configuration, check out this documentation page.
Who am I?
Hey there! I’m the Lead Platform Architect at Brella, an event management platform based in Finland. You could say I’m the person who ensures everything works smoothly. That includes handling coding, infrastructure, and supporting the rest of the development team.
Outside of my main job, I spend time looking for security bugs as a bug bounty hunter. My goal is to find vulnerabilities in web applications and report them responsibly so they can be fixed.
If you’d like to connect or just have a chat, feel free to check out my public profile here. You’ll find all the necessary links there.
Docs
- Installation
- Creating a cluster
- Masters in different locations
- Upgrading a 1.x cluster to 2.x
- Setting up a cluster
- Recommendations
- Maintenance
- Deleting a cluster
- Load balancers
- Storage
- Troubleshooting
- Contributing and support
Sponsors
I want to give a big thank you to Alamos GmbH for sponsoring this project! Their support has been incredibly helpful, giving me the chance to focus more time and effort on the work. Because of their contribution, I’ve been able to dedicate myself to creating a simpler migration strategy for moving clusters from v1.x to v2.x. I’m confident this collaboration will lead to even more improvements down the road. Thank you so much!
Also thanks to @magicpages, @jonasbadstuebner, @ricristian , @worldsayshi, @QuentinFAIDIDE and the other sponsors. Your contributions are very much appreciated!
If you like this project and would like to help its development, consider becoming a sponsor too.
Code of conduct
Everyone interacting in the hetzner-k3s project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct.
License
This tool is available as open source under the terms of the MIT License.
Stargazers over time
hetzner-k3s
- 2114
- 153
- 17
- 0
- 6
- 1 day ago
- August 7, 2021
MIT License
Tue, 04 Feb 2025 12:06:24 GMT