• 文库
  • 字符
  • 转换
  • 加密
  • 网络
  • 更多
    图表
    数学
    坐标
    图片
    文件
  • 文库
    字符
    转换
    加密
    网络
    更多
    图表
    数学
    坐标
    图片
    文件
logo 在线工具大全

Kubernetes 跨集群 Pod 可用性保护

出处: mp.weixin.qq.com 作者: 字节跳动技术团队

多集群部署微服务带来了可扩展性和容灾性等优势,但也引入了全局层面的脆弱性——中心控制平面的任何问题都会级联影响所有被管理集群,造成灾难性后果。其中最严重的场景之一是由于Pod删除导致的服务容量丢失。这在Kubernetes复杂的事件链中可能由多种原因引发,例如: 意外删除所有Deployment的owner资源类型的CRD 集群拓扑配置错误,导致用其他集群的spec覆盖当前集群 多集群滚动更新实现缺陷,同时在所有集群触发更新 联邦主集群的etcd磁盘损坏,导致Deployment对象从索引中移除 多个集群同时独立进行Pod驱逐操作,并发度不受控 虽然这些问题均可单独解决,但成因多样且在持续变化的基础设施中难以穷举。更便捷的方式是采用端到端处理:只要全局要求未满足就阻止Pod删除。因此我们开发了Podseidon项目——当跨集群的最小可用性要求不满足时,拒绝删除请求的准入webhook。

查看原文 9 技术 lddgo 分享于 2025-02-28