云托管 K8s 实战(五):横向对比与选型

写在前面

本系列收尾篇。前面四篇(总览 + AKS/EKS/GKE 实战)各做了一遍,本篇把三家差异摆全,给一张"什么场景选哪个"的决策表。

1
2
3
4
本篇结构:
  ① 创建体验   ② 网络模型   ③ 身份机制   ④ 监控
  ⑤ 成本       ⑥ Serverless ⑦ 生态绑定
  ⑧ 选型决策表 ⑨ 一句话画像

一、创建体验

维度AKSEKSGKE
一条命令建集群az aks createeksctl create clustergcloud ... create/create-auto
耗时~5 min~15-20 min~5-8 min
自动建 VPC/VNet需预建或同命令建eksctl 自动建自动建
自动配身份--attach-acr 一步节点角色自带 + IRSA 手动配节点默认 SA + WI 手动配
开箱可拉私有镜像✓(attach-acr)✓(节点角色)✓(节点默认 SA)
1
2
3
体感排名(开箱即用):
  GKE ≈ AKS > EKS
  EKS 慢且步骤多(VPC/NAT/IAM 角色一长串)

二、网络模型

模型Pod IP优势劣势
Azure CNI(AKS)VNet IPPod 原生可达,互通好IP 消耗大
Azure CNI Overlay(AKS)私有 CIDRIP 节约 + 节点 VNet复杂度略增
Amazon VPC CNI(EKS)ENI 次级 IP原生 VPC 互通IP 密度受 ENI 限制
GKE VPC-native(Alias)节点 Alias 段简洁、默认、GCE 集成好跨 VPC 要对等
1
2
需要 Pod 与 VPC/VNet 内资源直连(数据库、对等网络)→ 都能做,配置差异不大
大规模、IP 紧张 → AKS Overlay / EKS Prefix Delegation / GKE alias 段调大

三、身份机制

三家本质同构(OIDC 联邦 + SA 注解 + 短 token),只是术语和命令不同:

Pod 级身份节点级身份配置复杂度
AKSWorkload Identity(SA 绑 Azure AD 应用)kubelet Managed Identity低(attach-acr 一键)
EKSIRSA(SA 注解绑 IAM Role)节点 EC2 instance profile中(OIDC + IRSA 两步)
GKEWorkload Identity(K8s SA ↔ GCP SA 映射)Compute Engine 默认 SA中(三步绑定)
1
2
3
4
核心认知:
  三家都是"ServiceAccount + 云身份 + OIDC 联邦"
  会一个,另两个照搬思路(只是命令不同)
  旧的节点级密钥 / AAD Pod Identity 都已过时,别再用

四、监控

维度AKSEKSGKE
默认监控Container Insights(要 enable-addons)CloudWatch Observability(要 addon)Cloud Operations(默认开)
日志查询KQLCloudWatch Logs InsightsCloud Logging 查询
PromQLmanaged Prometheusmanaged Prometheus / 自建managed Prometheus
开箱即用中(一键 enable)中(addon)高(默认全开)
1
2
3
体感排名(开箱即用):
  GKE > AKS ≈ EKS
  GKE 建完集群控制台就有数据;AKS/EKS 要主动开 addon

五、成本(选型的硬约束)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
控制平面(每集群/月):
  AKS                 $0
  GKE Standard        $0
  GKE Autopilot       $0(按 Pod)
  EKS                 $73

节点(2 台通用型/月,粗算):
  AKS   2×D2s_v5       ~$150
  EKS   2×t3.medium    ~$60
  GKE   2×e2-medium    ~$50
  (机型不等价,仅量级参考)

LB + 公网 IP:
  三家都收(小时费 + 流量),EKS 的 NLB/ALB 稍贵

出口流量:
  三家都 ~$0.085-0.09/GB

关键洞察

  • 单集群生产:EKS 的 $73/月在节点成本前可忽略。
  • 多集群 / 测试环境:EKS 累积明显(10 集群 = $730/月纯控制平面)。
  • 小规模突发:Autopilot / Fargate / Virtual Nodes 按 Pod,无空载。
  • 大规模稳定:Standard + Reserved/Spot 省。

六、Serverless / 全托管

产品模式
AKSVirtual NodesPod 调度到 ACI(Azure Container Instances)
EKSFargatePod 调度到 Fargate(按 Pod 计费)
GKEAutopilot整个集群无节点,全按 Pod
1
2
3
4
省心度:
  GKE Autopilot > EKS Fargate ≈ AKS Virtual Nodes
  Autopilot 是"集群级全托管",最彻底
  Fargate / Virtual Nodes 是"部分 Pod 走 Serverless",混合

Autopilot 限制:不能特权、不能 hostNetwork、DaemonSet 受限。要这些回 Standard。


七、生态绑定(锁定成本)

锁定面
AKSACR / Azure Monitor / App Gateway / Entra ID / Key Vault
EKSECR / CloudWatch / ALB&NLB / IAM / KMS
GKEAR / Cloud Operations / Cloud LB / IAM / Secret Manager
1
2
3
4
迁移成本:
  应用层(Deployment/Service/Helm)→ 跨云通用,迁移低
  云集成层(镜像库/监控/身份/LB/密钥)→ 各家不同,迁移高
  → 真要多云/防锁定:镜像库用 Harbor,监控用 Prometheus+Grafana,身份抽象一层

八、选型决策表

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
你的情况                              推荐
──────────────────────────────────────────────────────
已在某家云、团队熟                    → 就用那家的(沉没成本 + 生态)
全新、追求开箱即用、不管节点           → GKE Autopilot
全新、要深度定制节点 + 免费 CP        → AKS 或 GKE Standard
重度 AWS 生态 + IAM 合规              → EKS(接受 $73/月)
多集群 / 大量测试环境                 → AKS 或 GKE(控制平面免费)
强 AD / 企业合规 / 混合云             → AKS(Azure 混合优势)
小规模突发、按 Pod 计费               → GKE Autopilot / EKS Fargate
国内访问(中国用户)                  → AKS(有世纪互联)或国内 ACK/TKE

没有"最好",只有"最合适"。三家都是 upstream K8s,应用层通用,选型主要看已有云绑定 + 团队熟悉度 + 成本结构


九、一句话画像 + 系列收官

1
2
3
AKS   免费控制平面 + Azure 生态 + 企业 AD/混合云强项
EKS   生态最广 + IAM 成熟 + 控制平面收费 + 配置最繁
GKE   K8s 娘家 + 体验最顺 + Autopilot 省心 + 国内访问差

系列总结(5 篇走完):

  1. 总览:三家横览,建立全景
  2. AKS:免费 CP + Managed Identity 零配置拉镜像
  3. EKS:$73/月 + IRSA + LB Controller 必装
  4. GKE:Autopilot 全托管 + 监控默认开
  5. 本篇:横向对比 + 选型决策
1
2
3
4
5
核心收获:
  ✓ 托管 K8s 把"通用难搞"的部分(控制平面/CNI/CSI/升级)交给云
  ✓ 三家身份机制同构(OIDC + SA),会一个通三个
  ✓ 应用层(kubectl/YAML/Helm)完全通用,差异在"云集成层"
  ✓ 选型看:已有云绑定 > 成本结构 > 团队熟悉度

想补 K8s 原理地基(自建、etcd、CNI/CSI 细节),看本站「K8s 学习笔记」八篇;想深入某家云的特化特性,各云官方文档是终点。云托管到此,下一站看你团队的方向。