Skip to content
返回云服务

AWS EKS 托管 Kubernetes

托管 K8s 控制平面,worker 节点、IRSA 和 K8s 生态插件。

AWS高级

为什么

EKS 提供完整 K8s API — Helm、operator、CRD、整个生态。AWS 管控制平面($73/月),你管节点。IRSA 将 K8s SA 映射到 IAM 角色安全访问 AWS。

何时使用

需 K8s 生态(Helm chart、operator、多集群)或跨云可移植时用。简单 Docker 负载用 ECS。

如何做

1. 创建集群 — eksctl create cluster(最简),或 Terraform 2. 节点组 — 托管(AWS 补丁)、自管或 Fargate profile 3. IRSA — IAM 角色关联 K8s ServiceAccount,OIDC 提供者 4. 插件 — VPC CNI、CoreDNS、kube-proxy(托管)+ 外部(cert-manager) 5. Ingress — ALB Controller(AWS)或 NGINX Ingress Controller 6. 存储 — EBS CSI driver 做 PV、EFS 共享、S3 经 CSI 7. 日志 — Fluent Bit/Fluentd → CloudWatch 或 OpenSearch 8. 自动伸缩 — Cluster Autoscaler 或 Karpenter(更快更简)

示例

# eksctl 集群配置 cat > cluster.yaml <<EOF apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: prod region: us-east-1 managedNodeGroups: - name: standard instanceType: m5.large desiredCapacity: 3 iam: withAddonPolicies: autoScaler: true cloudWatch: true fargateProfiles: - name: serverless selectors: - namespace: fargate EOF eksctl create cluster -f cluster.yaml # IRSA — 授予 K8s 服务账户 S3 访问 eksctl create iamserviceaccount \ --cluster prod --namespace default --name my-sa \ --attach-policy-arn arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess \ --approve

常见问题

  • ⚠控制平面即使空闲 $73/月 — 开发贵,本地用 k3s/Kind
  • ⚠VPC CNI IP 耗尽 — 每 pod 用辅助 IP,用前缀委派或自定义网络
  • ⚠节点不加入 — 检查节点 IAM 角色、SSM 和子网标签 kubernetes.io/cluster/<name>

最佳实践

  • ✓用 Karpenter 非 Cluster Autoscaler — 更快供给、更简配置、无 ASG
  • ✓IRSA 优于节点 IAM — 每 pod 权限、无宽节点角色、最小权限
  • ✓用托管节点组 — AWS 补丁节点、集成 EKS 插件

常见问题解答

什么是AWS EKS 托管 Kubernetes?它解决什么问题?

托管 K8s 控制平面,worker 节点、IRSA 和 K8s 生态插件。 它可帮助开发者在不自建基础设施的前提下完成部署、存储与扩展,是云服务选型的核心参考。

如何在 5 分钟内上手AWS EKS 托管 Kubernetes?

两步即可跑通:① 创建集群 — eksctl create cluster(最简),或 Terraform;② 节点组 — 托管(AWS 补丁)、自管或 Fargate profile。建议先用免费套餐验证流程,再接入生产环境。

AWS EKS 托管 Kubernetes 最容易踩的坑是什么?

最高频的问题是:控制平面即使空闲 $73/月 — 开发贵,本地用 k3s/Kind。建议在上线前用 checklist 逐项核对,并在 CI 中加入策略与配置扫描。

AWS EKS 托管 Kubernetes 的最佳实践有哪些?

AWS EKS 托管 Kubernetes 的最佳实践包括:用 Karpenter 非 Cluster Autoscaler — 更快供给、更简配置、无 ASG;IRSA 优于节点 IAM — 每 pod 权限、无宽节点角色、最小权限;用托管节点组 — AWS 补丁节点、集成 EKS 插件。其中首条「用 Karpenter 非 Cluster Autoscaler — 更快供给、更简配置、无 ASG」应作为团队默认规范写入 IaC 模板。

AWS EKS 托管 Kubernetes 如何控制成本与避免账单意外?

三招防超支:① 为所有资源打 env/team 标签并启用账单告警;② 用预算阈值触发 Slack/邮件通知;③ 定期用 Cost Explorer 审查闲置资源并清理。AWS EKS 托管 Kubernetes 多数提供免费套餐,先在免费额度内验证再放量。