▲ | Show HN: Edka – Kubernetes clusters on your own Hetzner account(edka.io) | |||||||||||||||||||||||||||||||||||||||||||||||||
437 points by camil 5 days ago | 124 comments | ||||||||||||||||||||||||||||||||||||||||||||||||||
Hi HN, I’ve been working with Kubernetes for over a decade, since the alpha days, and was involved in kube-aws project before AWS launched EKS. For the past four years, I’ve been helping friends and small businesses cut costs by running Kubernetes on Hetzner Cloud, which I’ve found to be rock solid and by far the best priced provider. Provisioning a cluster on Hetzner is now straightforward, thanks to tools like k3s and hetzner-k3s, but configuring it for your specific needs still takes time and expertise. I built Edka to make that part easy: spin up a production ready cluster in ~2 minutes, then choose how low level or automated you want to go. How it works: Layer 1 – Cluster provisioning - Creates a k3s-based Kubernetes cluster on Hetzner (lightweight, easy to manage, scales well). Layer 2 – Add-ons - One-click deploy for metrics-server, cert-manager, and various operators; preconfigured for Hetzner, no extra setup needed. Layer 3 – Applications - Minimal config UIs for apps built on top of add-ons. - Example: Need PostgreSQL? Fill a few fields → platform installs CloudNativePG → provisions HA PostgreSQL with PITR → gives ready to use endpoints. Backups can be restored to any point in time with a click. Quick demo: https://edka.io/apps/ Layer 4 – Deployments - Connect your CI to push container images to a public/private registry. - Edka updates deployments automatically (with semantic versioning rules), supports instant rollbacks, autoscaling, persistent volumes, secrets/env imports, and quick public exposure. Quick demo: https://edka.io/deployments/ Tech stack: TypeScript, React + Tailwind CSS, PostgreSQL, Redis, BullMQ, Vault + AWS KMS to encrypted sensitive data. The platform is still in beta and I’m building it in my spare time, so there are some rough edges, but I’d love feedback from anyone running Kubernetes on Hetzner, exploring alternatives to EKS/GKE/AKS or looking to automate their infrastructure with Kubernetes. More details: https://edka.io/ Thank you! | ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | camil 5 days ago | parent | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
What a great fortune to reach top of HN and get product feedback, then get rate limited by GitHub ( that was an easy fix though...) Then Hetzner gets a partial outage, failing to create new instances, causing most of the new cluster to get stuck in "creating" mode. Thanks everyone for the interest, I was not expecting this from a side project and I'll do my best to improve the platform in the future and address all feedback received. | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | MaKey 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
What's the difference to a well established tool like kops (https://github.com/kubernetes/kops), which also supports Hetzner? | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | adamcharnock 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
This certainly looks like a pleasingly straight-forward way to spin up k8s. I do notice that this deploys onto their cloud offering, which we've (https://lithus.eu) found to be a little shaky in a few places. We deploy clients onto their bare metal line-up which we find to be pretty rock solid. The worst that typically happens is the scheduled restart of an upstream router, which we mitigate via multi-AZ deployments. That being said, there is a base cluster size under which a custom bare-metal deployment isn't really viable in terms of economics/effort. So I'll definitely keep an eye on this. | ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | bflesch 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
I cant seem to figure out where this company is located and if it is a scam or not. Website has no imprint, no contact address. There is one email address in the privacy statement but it is "redacted by cloudflare". Also in privacy statement it says "Edka Digital S.L." but no idea which country it is registered it. For me it does not pass the smell test. No physical address, no idea who is running it, no idea if company is indeed registered or not. The pricing FAQ at least talks about VAT and I assume it is EU VAT but could be anything. | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | andix 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
There is this project to deploy k3s to Hetzner via Terraform: https://github.com/kube-hetzner/terraform-hcloud-kube-hetzne... It's not the smoothest thing I've ever used, but it's all self hosted and everything can be fixed with some Terraform or SSH. Great to see some managed Kubernetes on Hetzner! | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | figassis 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
I have yet to see a guide to automate k8s on Hetzner's beefy bare metal instances. True, you want cattle, but being able to include some bare metal instance with amazing CPUs and memory would be great, and I do just that. My clusters include both cloud and bare metal instances. In the past I had used Hetzner virtual switch to create a shared L2 network between cloud and bare metal nodes. Now I just use tailscale. But the TF and other tools are using the API to add and kill nodes, if you could pass a class of nodes to those tools that they know can't create but are able to wipe and rebuild, this would be ideal. | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | 2start 2 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
sounds and looks great! There are many good projects out there to deploy Kubernetes https://github.com/kube-hetzner/terraform-hcloud-kube-hetzne..., https://github.com/vitobotta/hetzner-k3s. However, I like that yours is manageable via Dashboard and you install basic applications. Feels way smoother than Terraform templates or CLI tools. Setting up kubernetes yourself with k3s and deploying a HA database with cnpg is so simple nowadays. It works great until some day you face an issue that you can't fix without diving deep into the details e.g. debugging your CNI or the implementations of specific operators to understand reconciliation errors. I faced countless of these issues such as: - your Postgres CNPG failed during failover and can't recover on it's own - Postgres WAL archiving suddenly doesn't work anymore after an update. - Cluster networking on some nodes doesn't work anymore due to an incompatibility of kube-proxy and Cilium after an update Unless it's your core business I'd limit myself to deploying applications on Kubernetes instead of managing Kubernetes itself. At least for use cases where reliability matters. There are some reasonably priced managed Kubernetes offerings out there. For example syself (https://syself.com) built a managed Kubernetes on Hetzner. The prices are super reasonable. For 300 Euros per month you can enjoy Hetzner prices with an experience that beats AWS. | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | tzahifadida 4 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
For anyone interested I am in the last stages of building a course operating around Kube-Hetzner (https://github.com/kube-hetzner/terraform-hcloud-kube-hetzne... 3k github stars). Basically a lot of scripts that shows how this works and how to perform backups, restores etc... and a lot of exercises for common use cases and failure troubleshooting. Intentionally NOT abstracting away anything so you can see how this works. Without understanding you are going to get stuck. Join the waiting list here: https://shipacademy.dev | ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | flowerthoughts 4 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
My biggest issue with k8s on Hetzner is that there is no way of going from tiny (1 machine) to medium (10-100 machines) purely on bare metal. I was able to get Gateway API to provide ingress nodes after a bit of Envoy tinkering, but storage is an issue. You can't run Ceph Rook on a single machine (too heavy,) and I couldn't find a think local volume wrapper that lets me easily migrate from local volume management to distributed. Feels like there should be a PV daemon that can do local, and transparent migrations and is lightweight enough to run on a single machine. Once my PV has been migrated to Ceph, the proxy could configure itself away from that job. | ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | Too 3 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
Why isn’t Hetzner providing a managed control plane themselves? Seems like a small investment to make for the return of converting massive amounts of customers stuck on GKE/EKS/AKS. That, plus a good IAM story, and they will be seen as a full cloud solution, not just a basement of servers. They have the infrastructure, it just need to be packaged. | ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | physix 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
This is a great idea. I really like it! We considered reaching out in May, but held back because we want to run on bare metal. Any chance to get this provisioned on bare metal at Hetzner? We have K8S running on bare metal there. It's a slog to get it all working, but for our use case, having a dedicated 10G LAN between nodes (and a bare metal Cassandra cluster in the same rack) makes a big difference in performance. Also, from a cost perspective. We run AX41-NVMe dedicated servers that cost us about EUR 64 per server with a 10G LAN, all in the same rack. Getting the same horsepower using Cloud instances I guess would be a CCX43, which costs almost double. | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | Lucasoato 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
An Hetzner employee once told me that they’ve been trying for years to develop their own Kubernetes-as-a-service solution, I wonder if they’re still working on that or not. | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | softwaredam 2 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
To me this seems more than a side project. Really well done. Nowadays, Hetzner has many Kubernetes providers. One that I really like is Syself.com. They provide production-ready Kubernetes including self-healing, bare-metal support, OIDC integration and many more. As a cloud and migration expert, I have evaluated them and they turned out to perform very well. | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | Seattle3503 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
Hetzner is working on their own managed offering too, but it doesn't seem like anyone has an idea when it will land. https://www.reddit.com/r/hetzner/comments/18yhy89/seems_like... | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | librasteve 4 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
It’s a little off topic, but to mention Raku now has support for the Hetzner API https://raku.land/zef:wayland/WWW::CloudHosting::Hetzner That way we can use Raku as a scripting language for deployment. | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | SCHiM 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
Could you explain: 1) What are the limitations of the scaling you do? Can I do this programmatically? I.e. send some requests to get additional pods of a specific type online? 2) What have you done in terms of security hardening? you mention hardened pods/cluster, but specifically, did you do pentest? Just follow best practice? Periodic scans? Stress tests? | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | barbazoo 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
Love how focussed this is. I would have never guessed that there's an overlap between the circle of people wanting to run a prod workload on a K8s cluster and folks that need a GUI to set up and manage a K8s cluster would be that big but looks like I might be wrong. | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | lucasrattz 2 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
How does it compare to established solutions like https://syself.com? Does it support bare metal servers too? | ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | everfrustrated 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
Has anybody found a good way to use encrypted disks with Hetzner yet? | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | fduran 4 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
Hola, I may try this out (once the HN hug of death slows down). At SadServers we ran a GKE cluster with 0.2 vCPUs workload for a PoC at it was costing us CAD $50/day until we figured out thing like GCP using a pod not doing anything just keeping a node up using 1 CPU, hidden Prometheus metrics etc. | ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | betaby 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
Site doesn't answer how storage is 'solved'. Is this solution uses local folder provisioning when using PostgreSQL for example. | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | mfrye0 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
This is incredibly timely. I've been an AWS customer for 10+ years and have been having a tough time with them lately. Looking at potentially moving off and considering options. My theory is that with terraform and a container based infra, that it should be pretty easier with Claude Code to migrate wherever. | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | deknos 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
Am i the only one who is confused about "Hetzner" in the title and "AWS KMS" in the body? | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | slig 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
Congrats on shipping! I see that you have WordPress as a pro app. As someone who pays for WP hosting, what I'd like to see there is the ability to "fork" a WP instance, media, DB, everything, with a new hostname, that I can try things, updates, etc. | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | czhu12 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
Is this deploying K3s or full kubernetes with a control vs worker plane on different instances? | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | marcosscriven 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
What are the connectivity options between heztner dedicated servers? I see they allow you to pay to have in a single rack, with a dedicated switch. But does that introduce a risk of single point of failure in the rack power or switch? | ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | zft 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
Congratulations on the launch! Is there are plans to support Gitlab and gitlab registry (or any registry) ? | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | julienmarie 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
What is the difference with Syself.com ? I was looking into them recently ? | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | rumblefrog 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
I tried to deploy a small cluster in the US VA region, but the cluster status kept flipping between Failed and Creating with no clear way of troubleshooting it: 7ad975fb-3c8e-47a9-b03d-9e6bec81f0db | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | kopadudl 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
Typo: One Cluser always free | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | Banou 4 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
Any plans to expand further than Hetzner? They're pretty restrictive on certain usages(e.g VPNs), I'd be really interested in support for Datapacket for example. | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | rumblefrog 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
I wonder how long before Hetzner adds something like managed Kubernetes to their native product line. They already have S3 compatible object storages, load balancers and more. | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | marcosscriven 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
When I was looking into this, I instead setup Proxmox on Hetzner (which you can do natively from ISO). From there it was much easier just using it for whatever I wanted, including K3S | ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | rumblefrog 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
This looks great! Haven't tried it yet, but should I presume this also does k8s and OS updates for me? Or how managed is it? | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | reverseblade2 4 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
I just use microk8s in Ubuntu on hetzner takes around 1 minute to set it up | ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | oriettaxx 4 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
how do you create instances i hetzner? with cloud init? I created for me some scripts to add node (Hetzner instance with Ubuntu) in a Docker Swarm, and I would really love to find something as you did but for Docker Swarm | ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | JanMa 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
A bit off topic, but you might want to rethink the name. It is very close to EDEKA, the largest German supermarket chain. They have a very large IT division (https://it.edeka) and judging from the name of your project I was expecting it to be one of their projects. | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | sneak 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
off topic: k8s aside, what are people using to receive webhooks from github/gitea/gitlab and do builds/deploys? is the generally accepted way to put deploy credentials into CI secrets and do it that way? | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | dexcs 4 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
Does it support root servers and / or is it planned? | ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | upa11 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
Great job. Love the project | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | CuriouslyC 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
Why would I use Edka vs using Linode's free Kubernetes offering? | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | latchkey 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
Great work. Just tried to email support@ and it bounced. | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | EDM115 4 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
post it on the Hetzner subreddit, they regularly watch it :) | ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | boredhacker3 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
exactly what i was looking for. I will give it a shot ! | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | zgk7iqea 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
typo on the website: one cluser always free | ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | sciencesama 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
is there a selfhosted version of this ? | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | 21sys 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
I can't find this Spanish (?) company in the company register and there are none of the legally required information on the website. Not very trustworthy for a SaaS that stores your data and access keys. I'm confident that this is only a startup "day one" issue, but in times of increased scam and extortion can I be sure? Nope. | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | throwmeaway222 5 days ago | parent | prev [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
Great job! |