用几台便宜 VPS 组 k3s / Docker Swarm 容器集群:省钱高可用实战(2026)

用 CloudCone、RackNerd、Contabo、Vultr 等低价 VPS 组容器集群的完整教程:WireGuard 加密组网、k3s 与 Docker Swarm 两种方案对比、成本算账与避坑。

延伸阅读

更多相关攻略推荐:AI 算力荒如何推高你的 VPS 账单:内存、电力与连锁涨价大厂价格战(AWS/GCP/阿里云)打响,小 VPS 厂商会被卷死吗2026 独立站 PCI-DSS 自查清单:SAQ A 还是 A-E2026 决策指南:本地模型 vs 云 API 成本对比——你的 V2026 只选月付 VPS:不锁年付、随时退的试错策略

一、为什么要用几台便宜 VPS 组私有集群

很多朋友手里有几台年付二三十刀的低配 VPS,平时只跑个网络通道脚本或者挂个探针,实在浪费。其实把两三台甚至更多这样的「便宜鸡」攒到一起,组一个容器集群,就能干不少正经事:跑测试环境、做边缘服务、练手 Kubernetes,或者用「多节点」换来真正的高可用。

单台机器最怕的就是「一挂全瘫」。哪怕每台只有 512MB 内存,只要分散在三台机器上,挂掉一台你的服务还能在另外两台继续跑。这就是集群最朴素的收益:用一堆小机器拼出「不会瞬间全灭」的冗余。

而且比起直接上一台大服务器,多台廉价节点往往更省钱,或者至少把钱花在了「分布」而不是「单点算力」上。下面我们就拿四家大陆用户常见的便宜商家——CloudConeRackNerdContaboVultr——来实操一遍。

二、k3s 是什么,Docker Swarm 又是什么

先把两个主角说清楚。k3s 是 CNCF 认证的轻量版 Kubernetes,单个二进制文件大约 70MB,官方说最低 512MB 内存就能跑起来,30 秒装完,还内置了 SQLite 和 Traefik,ARM 架构也能用。你可以把它理解成「砍掉了肥肉的 Kubernetes」,但本质还是 K8s,所以 Helm、Prometheus、ArgoCD 这一套生态都能直接用。

Docker Swarm 则是 Docker 自带的编排模式,零额外安装,只要你装了 Docker 就带着。它直接吃 Docker Compose 文件,概念也比 K8s 简单得多,适合「懂 Docker 但不想啃 K8s 那套复杂概念」的人。

两者定位差异很明显:k3s 胜在生态和标准,社区资源碾压;Swarm 胜在轻量和简单,控制面空闲只占约 50MB 内存,学习曲线几乎为零。下面这张资源开销对比表能帮你快速判断该选谁。

维度Docker Swarmk3s标准 Kubernetes
控制面空闲内存约 50MB512MB–1GB2–4GB
每 worker 额外开销约 20MB约 200MB数百 MB
最小可行集群1 节点 512MB1 节点 2GB多节点数 GB
适合人群Docker 用户 / 极简主义想学 K8s 的省钱党生产级 / 重生态

注意一个现实:Docker Swarm 自 2019 年后基本进入维护模式,不再有大的新特性,社区活跃度在下降;而 k3s 把 K8s 的复杂度压到了「单二进制 + SQLite」的程度,但毕竟还是 K8s,学习曲线还在。选型时按「要简单还是要有前途」来取舍即可。

三、多台 VPS 组集群的三种典型架构

根据你手里的节点分布,集群大致有三种摆法,提前想清楚能少踩很多坑。

架构一:同机房多节点

把几台机器都开在同一个数据中心(比如都在 CloudCone 洛杉矶),节点之间延迟低、抖动小,是最稳的组法。代价是「同机房」意味着同区域故障会一起挂,但对你只是个测试/边缘集群来说完全够用。

架构二:跨地域边缘集群

Vultr 这种在全球 30+ 机房按小时计费的特点,开一台东京、一台新加坡、一台洛杉矶,组一个跨大洲的边缘 mesh。适合「把服务推到离用户更近的地方」这类场景,但节点间公网延迟会到 150ms 以上,调度和网络都会变慢,只适合容灾/边缘,不适合低延迟业务。

架构三:混合云

一部分节点在便宜商家(RackNerd/CloudCone)做 worker,一部分在有优化线路的商家做接入层。这种摆法灵活,但网络拓扑最复杂,务必用下面讲的加密隧道把节点连起来。

四、内网互联:为什么必须加密隧道,以及 WireGuard mesh 方案

组集群最大的坑不是装软件,而是「节点之间怎么安全地说话」。这里要敲黑板:Contabo 没有内网(No private networking),它家多台机器之间只能走公网 IP 互相通信;而其它几家(RackNerdCloudConeVultr)也没有跨账号的私有网络。结果是:你的 etcd 流量、容器网络流量如果不加密,就明文在公网上裸奔。

解法是用 WireGuard 建一个加密 mesh(全互联),给每台节点分配一个 VPN 内网地址(比如 10.10.10.0/24),让集群流量全部跑在这条加密隧道里。WireGuard 本身极轻量,配置也简单,是这类场景的事实标准。

另外提醒一句:k3s 官方文档明确说,嵌入式 etcd 不支持跨网络多节点部署——用 etcd 做 HA 时,所有 server 节点必须能通过私网 IP 互相可达,agent 倒是可以跨网。所以 server 节点要么放同一地点,要么都塞进同一个 WireGuard 私网。

五、横向对比:四家便宜商家谁能组网、谁不适合

下面把四家的关键信息摊开对比。价格来自 2026 年 8 月公开页面与测评,库存和具体规格以下单时商家页面为准。

维度CloudCone(洛杉矶)RackNerd(美多机房)Contabo(德/全球)Vultr(全球 30+)
典型年/月价约 $10.24/年起约 $21.99/年起约 €4.5/月起按小时,$2.5/月起
最低配内存1GB512MB8GB(VPS S)0.5GB
内网无(重大短板)无跨账号私网
计费方式年付,续费同价年付,退款窗口短月付,随时停按小时,删即停费
支付PayPal / 支付宝信用卡 / PayPal / 支付宝信用卡 / PayPal(以官网为准)信用卡 / PayPal / 支付宝
组网适合度廉价 worker 佳廉价 worker 佳大内存但需额外加密跨地域最灵活

一句话总结:要最便宜的 3 节点,CloudCone 三台年付不到 31 刀;要最大内存比,Contabo 四核八 G 才约五刀一月;要跨地域灵活,Vultr 按小时开三台测完就删最省心;而 Contabo 虽便宜但无内网,组集群反而要多一层 WireGuard 开销。

六、成本算账:N 台廉价节点 vs 一台大服务器

到底「堆小机器」划不划算?我们用 2026 年的公开价估算一版(以下数字以商家页面为准,仅供思路参考)。

方案单台配置单台年价3 台年价合计内存/CPU
CloudCone 洛杉矶 ×32核1G 20G 3TB$10.24$30.726核3G
RackNerd ×31核1G 20G 3TB$21.99$65.973核3G
Contabo ×34核8G 50G 32TB约 $59.88约 $179.6412核24G
Vultr 东京 ×3(估)1核1G 25G 1TB约 $60约 $1803核3G

再对比「一台大服务器」:

方案配置年价
Contabo Cloud VPS L8核30G 200G 32TB约 $179.88/年
Vultr 4核8G4核8G 160G 5TB约 $480/年
RackNerd 8GB7核8G 150G 20TB$119.99/年

结论有三层:第一,要的是「高可用 / 真分布」,选多台廉价节点,挂一台不宕机;第二,要的是「单台算力大、不在乎单点」,一台 RackNerd 8GB(年付 119.99 刀)比三台小节点还便宜、内存更集中;第三,Contabo 单台内存便宜到离谱,但无内网,组集群要额外 WireGuard 开销,别只看单价。

七、实操(一):WireGuard 全互联 mesh 配置

先建加密隧道。每台节点都要有一份 /etc/wireguard/wg0.conf,下面以三节点为例。节点 A 是 10.10.10.1,节点 B、C 同理改成对应地址并互相列出 Peer。

[Interface]
Address = 10.10.10.1/24
ListenPort = 51820
PrivateKey = <节点A私钥>

[Peer]
PublicKey = <节点B公钥>
AllowedIPs = 10.10.10.2/32
Endpoint = <节点B公网IP>:51820
PersistentKeepalive = 25

[Peer]
PublicKey = <节点C公钥>
AllowedIPs = 10.10.10.3/32
Endpoint = <节点C公网IP>:51820
PersistentKeepalive = 25

启用隧道并设为开机自启,同时放行 WireGuard 的 UDP 端口:

wg-quick up wg0
systemctl enable wg-quick@wg0
ufw allow 51820/udp

三台都起来后,互 ping 10.10.10.x 应该能通。通了再往下走,否则先排查防火墙和私钥/公钥是否配对。

八、实操(二):k3s 集群初始化

k3s 有两种常见摆法。第一种是用内置 WireGuard 多云方案,节点各有公网 IP、无需手写 WG 配置:

# server 节点
curl -sfL get.k3s.io | sh -s - server   --node-external-ip=   --flannel-backend=wireguard-native   --flannel-external-ip

# agent 节点
curl -sfL get.k3s.io | sh -s - agent   --server https://:6443   --token    --node-external-ip=

第二种更稳、也更适合前面 WireGuard 私网:先建好 10.10.10.0/24 私网,再标准装 k3s。

# 首 master
curl -sfL get.k3s.io | sh -s - server   --cluster-init   --node-ip 10.10.10.1   --advertise-address 10.10.10.1   --tls-san 10.10.10.1

# 取 token
cat /var/lib/rancher/k3s/server/node-token

# 其余 master / agent
curl -sfL get.k3s.io | sh -s - server   --server https://10.10.10.1:6443   --token    --node-ip 10.10.10.X   --advertise-address 10.10.10.X   --tls-san 10.10.10.1

装完验证集群状态:

kubectl get nodes
kubectl get pods -A

如果节点都是 Ready,Pod 都 Running,说明集群起来了。记得 server 节点之间要走私网可达(同一 WireGuard 子网或同机房),否则 etcd 会不健康。

九、实操(三):Docker Swarm 备选方案

如果你不想碰 K8s,Swarm 几乎零门槛。装好 Docker 后三条命令就起来:

# 初始化管理节点
docker swarm init --advertise-addr <节点IP>

# worker 加入(用上一条命令输出的 token)
docker swarm join --token  <管理节点IP>:2377

# 用 compose 文件部署一个 stack
docker stack deploy -c docker-compose.yml myapp

Swarm 直接复用你的 docker-compose.yml,把 services 换成 deploy 段就能跑多副本。对只要「几个容器别一起挂」的需求,这套足够,还省去学 kubectl 的成本。缺点上面也说了:社区基本停更,复杂调度和生态比不过 k3s。

十、面向大陆用户:线路、延迟、支付、退款避坑

站在大陆用户视角,有四件事下单前要想清楚。

线路:这四家都是普通国际 BGP,不是 CN2 优化线。集群节点之间走的是公网,你平时 SSH 管理时晚高峰可能会卡。如果集群还要被国内用户直接访问,前端节点最好另选有优化线路的商家——本篇四家不主打优化线,这点要心里有数。

延迟:东京/新加坡Vultr)对国内相对近;洛杉矶(RackNerd/CloudCone)中等;德国(Contabo)最远。组集群优先选同机房或同大洲,跨大洲只适合边缘/容灾。

支付:RackNerdCloudCone 支持支付宝(以结账页为准);Vultr 支持支付宝/信用卡;Contabo 主要信用卡和 PayPal,中文站称支持支付宝微信,以官网为准。

退款:年付便宜机普遍退款严格。建议先用 Vultr 按小时开三台测机房和线路,满意了再转长期年付方案,别一上来就年付锁死。

十一、风险提示:这些坑会让你半夜爬起来

把最容易翻车的地方列出来,写进你的运维笔记。

  • etcd 跨网不支持:用嵌入式 etcd 做 HA,所有 server 必须同地点/同私网可达;agent 可跨网。否则用 k3s 内置 wireguard 多云方案(server 仍建议同地)。
  • 延迟伤健康:节点间公网延迟超过 150ms 会拖慢调度、影响 Pod 网络;跨大洲组集群只适合边缘/容灾,不是低延迟业务。
  • Contabo 无内网:多台 Contabo 必须 WireGuard 加密,否则集群流量明文走公网。
  • 商家退款/跑路:RackNerdCloudCone 年付便宜但退款窗口短;Vultr 退款摩擦大;下单前看清条款。
  • 端口与防火墙:WireGuard 用 UDP 51820、k3s API 6443/TCP、etcd 2379-2380/TCP、kubelet 10250/TCP,务必放行且只放 VPN 子网。
  • CIDR 冲突:不同集群的 pod/service 网段不要重叠,否则路由冲突(多个边缘集群互联时尤其注意)。

十二、结语与按场景选购建议

用便宜 VPS 组集群,核心就一句话:用小机器的「分布」换「不全会挂」的冗余,用 WireGuard 补上「没有内网」的安全短板。k3s 适合想正经学 K8s、要生态的人;Docker Swarm 适合只要简单多副本的人。

给几个直接建议:

  • 练手 / 测试环境、预算极紧:CloudCone 洛杉矶三台,年付不到 31 刀,WireGuard 一打通就能玩。
  • 要大内存跑一堆容器:Contabo 三台,但记得 WireGuard 加密,别裸奔。
  • 想跨地域边缘 / 先测后定:Vultr 按小时开三台,测完删掉不心疼。
  • 只想三台小节点高可用、不折腾:RackNerd 三台年付约 66 刀,稳定够用。

最后再啰嗦一句:所有价格、库存、规格以商家页面为准,本文未逐项实测。动手前先开一台按小时或按月测线路,确认能忍再年付,才是省钱又省心的正路。