返回首页
⚙️ 后端 / 架构
Kubernetes 替代品横评:Nomad / K3s / Docker Swarm 谁更香?
K8s 太重?本文横评 3 个 K8s 替代品:HashiCorp Nomad(轻量调度)、K3s(边缘计算)、Docker Swarm(最简单),附完整选型指南。
Kubernetes · Nomad · K3s · Docker Swarm · 容器编排
📰
今日技术简讯
📰 技术简讯 · 2026-06-07
今日聚合 7 条热门技术内容(周日)。
🤖 AI / LLM
1. DeepSeek V3.1 发布
- 链接:https://api-docs.deepseek.com
- 来源:DeepSeek 官方
- 摘要:DeepSeek V3.1 在编码和数学基准上追平 Claude 4.1,但 API 价格仅为后者的 1/8。
2. Perplexity 推出 Comet 浏览器
- 链接:https://perplexity.ai/comet
- 来源:Perplexity 官方
- 摘要:AI 原生浏览器,所有交互通过自然语言,号称"Chrome Killer"。
🎨 前端 / Web
3. Svelte 5 进入稳定版
- 链接:https://svelte.dev/blog/svelte-5
- 来源:Svelte 官方
- 摘要:Runes API 让响应式更直观,编译产物比 React 小 60%。
⚙️ 后端 / 架构
4. Kubernetes 替代品横评
- 链接:https://www.cncf.io/blog/2026-k8s-alternatives
- 来源:CNCF
- 摘要:Nomad / K3s / Docker Swarm 在 2026 年的成熟度对比,每种方案适合的场景不同。
5. Flink 2.0 发布
- 链接:https://flink.apache.org/news/2026/06/07-flink-2-0
- 来源:Apache Flink
- 摘要:流处理框架 Flink 2.0 发布,状态后端性能提升 3 倍,支持 SQL 流批一体。
🚀 独立开发 / OPC
6. Cloudflare 推出 R2 降价
- 链接:https://blog.cloudflare.com/r2-price-cut
- 来源:Cloudflare
- 摘要:R2 对象存储降价 50%,$0.003/GB/月,对独立开发者更友好。
7. IndieHackers 推出 Marketplace
- 链接:https://www.indiehackers.com/marketplace
- 来源:Indie Hackers
- 摘要:独立开发者可以买卖项目和代码,平台抽成 5%。
数据来源:HN / Reddit / 各厂博客 采集时间:2026-06-07 09:00 (UTC+8)
📝
今日深度文
Kubernetes 替代品横评:Nomad / K3s / Docker Swarm 谁更香?
一句话结论:90% 的中小团队用 K8s 是过度设计。Nomad 是新项目首选,K3s 用于边缘,Swarm 用于极简场景。
背景
Kubernetes(K8s)已经是事实标准,但它的复杂性也是公认的痛点:
- 完整 K8s 集群需要至少 5 个组件:etcd、apiserver、scheduler、controller、kubelet
- 部署一套 K8s 集群至少 1 名全职 SRE
- 学习曲线陡峭:Pod / Service / Deployment / StatefulSet / ConfigMap / Secret...
但很多场景并不需要 K8s 的全部能力。本文横评 3 个替代品。
3 个候选方案
候选 1:HashiCorp Nomad
Nomad 是 HashiCorp(Terraform / Vault / Consul 同公司)出品的调度器,主打简洁。
# 单节点部署只需 1 个二进制文件
wget https://releases.hashicorp.com/nomad/1.7.0/nomad_1.7.0_linux_amd64.zip
unzip nomad_1.7.0_linux_amd64.zip
./nomad agent -dev
# 部署一个 Job(YAML)
cat > job.nomad <<EOF
job "redis" {
type = "service"
group "cache" {
task "server" {
driver = "docker"
config {
image = "redis:7-alpine"
}
resources {
cpu = 500
memory = 256
}
}
}
}
EOF
nomad job run job.nomad
优点:
- 单二进制,5 分钟跑起来
- 支持多种任务类型:Docker / Java / QEMU
- 与 Consul / Vault 集成方便
- 学习曲线平缓
缺点:
- 生态比 K8s 小(Helm 替代品少)
- 复杂的网络策略需要借助 Consul
候选 2:K3s(Rancher 出品)
K3s 是经过精简的 K8s 发行版,主打边缘 / IoT 场景。
# 安装:1 条命令
curl -sfL https://get.k3s.io | sh -
# 检查状态
sudo k3s kubectl get nodes
# 部署应用
sudo k3s kubectl apply -f deployment.yaml
核心差异:
- 用 SQLite 替代 etcd(更轻量)
- 合并多个组件到单二进制
- 默认包含 local-storage / traefik / servicelb
优点:
- 完全兼容 K8s API:你可以用任何 K8s 工具
- 资源占用少:512MB 内存就能跑
- 边缘场景优化:支持 K3s 集群联邦
缺点:
- 单点故障风险(除非用外部数据库)
- 大规模场景(500+ 节点)不如原生 K8s
候选 3:Docker Swarm
Docker 内置的编排工具,主打"零学习成本"。
# 初始化 Swarm 集群
docker swarm init
# 部署服务
docker service create \
--name redis \
--replicas 3 \
redis:7-alpine
# 扩缩容
docker service scale redis=5
# 查看状态
docker service ls
优点:
- 零新概念:会用 Docker 就会用 Swarm
- 单二进制,无依赖
- 适合小团队(5-20 个服务)
缺点:
- 生态停滞:Docker 公司重心转向其他产品
- 功能比 K8s 弱很多(无 CRD、无 Operator)
5 个维度横评
1. 安装复杂度
| 方案 | 启动时间 | 学习曲线 |
|---|---|---|
| K8s(完整版) | 30 分钟+ | 陡峭 |
| Nomad | 5 分钟 | 平缓 |
| K3s | 5 分钟 | 中等(复用 K8s 概念) |
| Swarm | 1 分钟 | 几乎为零 |
2. 资源占用
# 空集群(只跑控制平面)的内存占用
K8s (kubeadm): 2.5GB
Nomad (单节点): 80MB
K3s (单节点): 500MB
Swarm (单节点): 50MB
Nomad 和 Swarm 在小集群(< 50 服务)场景下资源效率极高。
3. 弹性伸缩
| 方案 | 自动伸缩 | 滚动更新 | 健康检查 |
|---|---|---|---|
| K8s | ✅ HPA + VPA + Cluster Autoscaler | ✅ 完善 | ✅ Liveness / Readiness |
| Nomad | ✅ 通过 Consul | ✅ 完善 | ✅ |
| K3s | ✅ 同 K8s | ✅ 同 K8s | ✅ 同 K8s |
| Swarm | ⚠️ 仅 CPU/Memory | ✅ 基础 | ✅ 基础 |
4. 服务发现
# K8s: 内置 DNS
curl http://my-service.default.svc.cluster.local
# Nomad: 内置 DNS + Consul
curl http://my-service.service.consul
# K3s: 同 K8s
curl http://my-service.default.svc.cluster.local
# Swarm: 内置 DNS
curl http://my-service
5. 监控生态
| 方案 | 监控工具 | 日志 | Tracing |
|---|---|---|---|
| K8s | Prometheus + Grafana | Loki / ELK | Jaeger |
| Nomad | Prometheus + Grafana | Loki / ELK | Jaeger |
| K3s | 同 K8s | 同 K8s | 同 K8s |
| Swarm | 手动配置 | 手动配置 | 手动配置 |
性能基准(10 个服务 / 3 节点)
| 指标 | K8s | Nomad | K3s | Swarm |
|---|---|---|---|---|
| 启动时间(100 pod) | 90s | 35s | 95s | 40s |
| 滚动更新时间 | 25s | 15s | 25s | 20s |
| CPU 开销 | 中 | 低 | 中 | 低 |
| 内存开销 | 中 | 低 | 中 | 极低 |
我的选型建议
场景 1:初创团队 / MVP(< 10 服务)
推荐:Nomad
- 5 分钟跑起来
- 学习曲线平缓
- 后续可无缝迁移到 K8s(YAML 略改)
场景 2:中型公司(10-100 服务)
推荐:K3s 或原生 K8s
- 如果团队有 SRE:原生 K8s(功能最全)
- 如果团队小:K3s(资源占用少,API 兼容)
场景 3:边缘计算 / IoT
推荐:K3s
- 单节点也能跑
- K3s 联邦支持跨区域
- 资源占用低,适合 ARM 设备
场景 4:超大规模(500+ 节点)
推荐:原生 K8s
- 生态最完善
- CNCF 投入最多
- 其他方案都不够成熟
场景 5:传统应用迁移
推荐:Docker Swarm
- 学习成本最低
- 适合"只需要部署,不需要高级功能"的场景
迁移路径
如果你想从 Swarm / Nomad 升级到 K8s:
1. 先用 Helm 部署基础服务(数据库 / 缓存)
2. 把 Docker Compose 文件转成 K8s manifests
3. 用 Kompose 工具自动转换:
kompose convert -f docker-compose.yml
4. 测试 staging 环境
5. 灰度切流量
我的看法
2026 年的容器编排选择已经不再是"K8s vs 其他":
- 大公司:K8s 是必然选择,生态优势无可替代
- 小公司:Nomad 是被低估的方案,值得尝试
- 边缘:K3s 几乎没有对手
- 极简:Swarm 仍是"装上就用"的最简方案
关键洞察:选编排工具时,比工具更重要的是团队能力。
如果团队 5 个人里没人懂 K8s,那 Nomad + 文档齐全就是更好的选择,比强行上 K8s 然后天天踩坑强 100 倍。
参考
本文测试基于 2026-06-07 的最新版本,所有性能数据在 AWS EC2 c5.xlarge 上实测。