Cheap Self-Hosted Kubernetes on Hetzner Cloud
3 hours ago
- terraform-hcloud-kube-hetzner 是一个开源的 Terraform 项目,旨在简化在 Hetzner Cloud 上部署生产级 K3s 集群的过程。
- Hetzner 是一家德国基础设施提供商,以合理的价格提供高性能硬件,并拥有可靠的 API 以及私有网络、负载均衡器和虚拟机等功能。
- Kube-Hetzner 将可靠运行 K3s 于 Hetzner Cloud 的最佳实践规范化,涵盖资源调配、网络、负载均衡器、节点池以及自动滚动升级。
- 它使用 openSUSE MicroOS——一个不可变的、以容器为中心的操作系统,具备原子更新和只读根文件系统,以提高安全性和可靠性。
- K3s 是一个轻量级、符合标准的 Kubernetes 发行版,将组件打包成单个二进制文件,简化集群操作。
- 该博客计划构建一个跨三个 Hetzner 区域的高可用集群,包含 3 个控制平面节点和 3 个工作节点,启用本地路径存储,并可选择 Longhorn 实现复制存储。
- 月成本估算:约 €58(含增值税),比典型的托管 Kubernetes 服务(例如 GCP/AWS 上 $70-$75)更便宜。
- 成本优化选项包括使用单个负载均衡器、MetalLB,或通过堡垒主机/VPN 移除公网 IP。
- 部署步骤:克隆入门项目,安装 Terraform、hcloud CLI、kubectl;运行 terraform init、plan、apply;获取 kubeconfig 并测试连通性。
- 备份使用 K3s 的 etcd 快照至 S3,节点备份通过 Hetzner 的内置备份机制实现。
- 升级由 Rancher 的 System Upgrade Controller (SUC) 和 kured 处理,实现节点自动重启,并支持可配置的维护窗口。