2.5 KiB
2.5 KiB
title, type, tags, sources, last_updated
| title | type | tags | sources | last_updated | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Amazon EKS | concept |
|
|
2026-04-24 |
Amazon EKS
Overview
Amazon Elastic Kubernetes Service (EKS) 是 AWS 提供的托管 Kubernetes 服务,提供完全托管的控制平面,支持零停机滚动部署和 Worker Node 自动扩缩容。
Key Features
- 完全托管控制平面:AWS 自动管理 Kubernetes Control Plane 的可用性和扩展性
- 零停机滚动部署:Worker Node 更新时实现零停机
- IAM RBAC Mapping:通过最小权限原则控制 EKS 集群访问
- 多可用区高可用:自动跨多个 AZ 部署 Control Plane
- 与 AWS 服务集成:VPC、CNI、IAM、CloudWatch、ALB 等原生集成
Deployment Methods
Terraform
通过 tera-grant.scl 文件定义集群参数:
- 环境变量配置
- EKS 集群版本
- Worker Node 类型(CPU/GPU/Default)
- AWS Secret Manager 集成(工程联系人通知)
AWS Service Catalog
通过产品组合模块化部署:
- 版本选择
- Worker Node 类型配置
- 更精细的安全和权限控制
Networking
EMI (ENI Multi-IP)
自定义网络解决方案,解决 VPC CIDR 限制:
- 为 Pod 分配额外 IP 地址
- 通过虚拟弹性网络接口(ENI)实现
- 支持更高的 Pod 密度
ALB Ingress Controller
AWS Load Balancer Controller 集成:
- 管理 Application Load Balancer 资源
- 实现 Kubernetes Service 的七层负载均衡
- 自动配置路由规则
Autoscaling
Cluster Autoscaler
Kubernetes Cluster Autoscaler:
- 根据资源需求自动扩缩 Worker Node
- 与 AWS Auto Scaling Groups 集成
- 未来计划引入 Carpenter 实现更高效的实例类型创建
Monitoring
- CloudWatch Agent + FluentBit:以 DaemonSet 方式部署,收集日志和指标
- Container Insights:发布容器级别指标到 CloudWatch
- AWS OpenTelemetry:统一的可观测性数据采集方案
- Grafana:通过模板化仪表盘可视化指标
Related Concepts
- Kubernetes:EKS 的底层技术
- Infrastructure as Code:EKS 部署的推荐方式
- AWS Service Catalog:EKS 部署的 Service Catalog 方式
- Cluster Autoscaler:Worker Node 自动扩缩容
- EMI:EKS 自定义网络方案
- CloudWatch Container Insights:EKS 监控方案
- AWS OpenTelemetry:可观测性数据采集