36 lines
2.2 KiB
Markdown
36 lines
2.2 KiB
Markdown
---
|
||
title: "EKS Auto Mode"
|
||
type: concept
|
||
tags: []
|
||
last_updated: 2025-03-04
|
||
---
|
||
|
||
## Summary
|
||
EKS Auto Mode 是 Amazon EKS 的半托管计算模式,将 Kubernetes 数据平面(计算节点)的生命周期管理责任从用户扩展至 AWS。用户只需关注 VPC 配置、集群配置和 workload 配置,AWS 自动处理节点采购、OS 补丁、安全更新和滚动升级。
|
||
|
||
## Definition
|
||
AWS EKS 的半托管计算选项,通过 Carpenter Controller 自动管理节点池的生命周期,包括实例采购、操作系统(Bottlerocket)维护、安全补丁和版本升级。兼容所有 Kubernetes-compliant 工作负载,无需修改应用代码。
|
||
|
||
## Key Components
|
||
- **Carpenter Controller**:计算控制器,运行于集群内,负责节点池生命周期管理、AMI 版本管理和滚动升级编排
|
||
- **Bottlerocket OS**:Amazon 开发的容器专用最小化 Linux 操作系统,专为 Auto Mode 设计,自动应用安全补丁
|
||
- **Default Node Pools**:两个内置节点池(General Purpose 锁定 AMD64 + System 带 taint),权重为零支持自定义池优先级
|
||
- **Core Capabilities**:计算(Carpenter)、网络(AWS LB Controller)、存储(EBS CSI)、安全(Pod Identity Associations)
|
||
- **Prefix Delegation**:VPCCNI 特性,为 Pod 分配 /28 前缀 IP 块,默认启用
|
||
|
||
## Mechanism
|
||
1. 用户启用 Auto Mode 后,AWS 在集群内部署 Carpenter Controller(作为 core capability)
|
||
2. Carpenter 监听控制面版本变更,自动识别新版本对应的 AMI
|
||
3. 控制面升级完成后,Carpenter 自动触发节点 AMI 滚动升级
|
||
4. 12% 实例费用溢价覆盖自动化管理成本
|
||
|
||
## Trade-offs
|
||
- **优点**:大幅降低 K8s 运维负担;自动化 OS 安全补丁;版本升级自动化
|
||
- **缺点**:每个 Auto Mode 实例附加 12% 管理溢价;节点配置灵活性受限;不支持裸金属实例
|
||
|
||
## Related Concepts
|
||
- [[Carpenter Controller]]:EKS Auto Mode 的计算控制器实现
|
||
- [[Bottlerocket OS]]:Auto Mode 的默认操作系统
|
||
- [[Pod Identity Associations]]:Auto Mode 的 Pod 级 IAM 权限控制机制
|
||
- [[Kubernetes]]:EKS Auto Mode 基于的标准容器编排平台
|