EKS Upgrade Procedure¶
workshop¶
流程¶
1: 检查应用配置文件兼容性
2: 升级核心addon (如果集群目标版本和 addon 有兼容问题则先升级 addon,否则在升级完管理节点后再升级 addon)
- coredns:
- 托管dns addon (managed-coredns)
- 自管dns addon (self-managed-coredns)
- aws-node: upgrade-vpc-cni
- kube-proxy: eks-addons-kube-proxy
3: 升级 eks 控制平面
4: 升级 eks 管理节点
5: 升级其他 addons
others¶
deck¶
EKS版本升级灵魂三问¶
Q: 为啥要升级?¶
A: 与上游 Kubernetes 一样,对每个 EKS版本,AWS会对其提供至少 14个月的支持。但每个版本End of Life(EOL)后,社区将停止发布安全补丁,并停止接受CVE安全漏洞提交。运行不安全的Kubernetes集群会为您的数据带来风险,所以我们建议您始终使用受到支持的EKS版本。
Q: 不升会怎样?¶
A: 在End of Support 后,用户将无法创建对应版本的EKS集群。EKS 会在支持结束日期后,通过逐步部署流程,自动更新控制平面到受支持的版本,数据平面则保持不变。为防止自动更新对您工作负载造成影响,建议您在自动升级前安排手动升级。
Q: 升级难不难?¶
A: 集群升级的本质是将各个相关组件替换为期望的新版本。一般有原地升级和蓝绿部署两种做法。不论哪种升级,都需要考虑当前安装的组件和资源定义对新版本的兼容性,并做好升级计划和演练。由于升级会导致应用重启或不停机切换,一个高度可靠性的架构是降低升级难度的关键。
docs history¶
- for release 1.22
- for release 1.21 and before
refer¶
- Amazon EKS 集群升级指南
- amazon-eks-版本管理策略与升级流程
- Automate Amazon EKS upgrades with infrastructure as code
- GCR Resilience Series - EKS Resilience
- https://kubernetes.io/releases/version-skew-policy/
参考文档¶
- Kubernetes官方文档: Kubernetes Release Cycle
- Kubernetes官方文档: Kubernetes Deprecation Policy
- Kubernetes博客: Increasing the Kubernetes Support Window to One Year
- AWS博客: Planning Kubernetes Upgrades with Amazon EKS
- AWS博客: Making Cluster Updates Easy with Amazon EKS
- AWS官方文档: Amazon EKS Kubernetes versions
- AWS官方文档: Updating a cluster
- EKS最佳实践手册: Handling Cluster Upgrades
