解决方案

适用于Kubernetes和K3s集群的VPS

Cutter 8 · $34/moCutter 16 · $62/mo
简短回答

K3s控制平面节点需要2核4GB;完整的kubeadm控制平面最低需要4GB,8GB更舒适。Worker节点的大小由你的工作负载决定。三个Cutter 8实例分布在不同司法管辖区,加上跨区域的WireGuard私有网络,每月不到110美元即可构建一个真正容错的集群。

你需要什么

kubernetes节点 的规格下限
资源你实际需要的东西
控制平面K3s:2vCPU/4GB;kubeadm:4vCPU/8GB
Worker节点根据工作负载确定大小;4vCPU/8GB是合理的单元
磁盘etcd使用NVMe——它对fsync延迟敏感
网络跨区域WireGuard网状网络;原生IPv6支持双栈集群

推荐套餐

Cutter

Cutter 8

$ 32.3 /month

总计 US$96.90 · 节省 5%

vCPU
4 × 专用
RAM
8 GB
存储
160 GB NVMe SSD
流量
10 TB
IPv4 / IPv6
1 / /64 routed
配置
Cutter

Cutter 16

$ 58.9 /month

总计 US$176.70 · 节省 5%

vCPU
6 × 专用
RAM
16 GB
存储
320 GB NVMe SSD
流量
15 TB
IPv4 / IPv6
1 / /64 routed
配置
Clipper

Clipper 16

$ 87.4 /month

总计 US$262.20 · 节省 5%

vCPU
8 × 专用
RAM
16 GB
存储
400 GB NVMe Gen4 SSD
流量
30 TB
IPv4 / IPv6
1 / /64 routed
配置

推荐位置

对于此工作负载,位置通常是影响最大的决定——要么因为延迟至关重要,要么因为司法管辖区至关重要。

为什么选择OnionVPS

  • 专用内核可让etcd的fsync延迟保持稳定,而这正是维持集群健康的因素。
  • 每个节点使用路由IPv6 /64,让双栈集群变得简单直接,而不是一项研究项目。
  • 在40多个国家/地区部署实例,让你能构建一个真正多司法管辖区的控制平面。
  • REST API和Terraform提供程序使节点池可以像其他任何云一样进行脚本化操作。

如何设置

  1. 在不同区域部署三个实例

    三个是etcd法定人数的最低要求。

  2. 构建WireGuard网格

    为每个节点分配一个私有地址,并通过它路由集群CIDR。

  3. 使用内嵌etcd安装K3s

    curl -sfL https://get.k3s.io | sh -s - server --cluster-init on the first node.

  4. 加入其余服务器和任何agent节点

    使用/var/lib/rancher/k3s/server/node-token中的节点令牌。

  5. 安装Ingress和cert-manager

    K3s附带Traefik;添加cert-manager可实现自动证书。

常见问题

Kubernetes节点的最低规格是什么?

K3s 在 2 vCPU 和 4 GB 内存下就能运行控制平面。完整的 kubeadm 至少需要 4 GB,但 8 GB 会更稳定。工作节点的大小完全取决于你调度的任务量。

我可以运行多区域 Kubernetes 集群吗?

可以,通过 WireGuard 网格实现。etcd 成员之间的延迟应保持在约 100 ms 以内,否则 Raft 心跳会变得不稳定。

etcd 磁盘性能重要吗?

非常重要。etcd 每次写入都会 fsync;在 HDD 或高负载存储上,集群在负载下会变得不稳定。务必将其放在 NVMe 上。