OpenKruise v0.5.0 版本发布,支持无损的流式分批发布策略
作者 | 酒祝 阿里云技术专家 导读 : OpenKruise 是阿里云开源的大规模应用自动化管理引擎,在功能上对标了 Kubernetes 原生的 Deployment/StatefulSet 等控制器,但 OpenKruise 提供了更多的增强功能如 优雅原地升级、发布优先级/打散策略、多可用区 workload 抽象管理、统一 sidecar 容器注入管理等,都是经历了阿里巴巴超大规模应用场景打磨出的核心能力。这些 feature 帮助我们应对更加多样化的部署环境和需求、为集群维护者和应用开发者带来更加灵活的部署发布组合策略。 目前在阿里巴巴内部云原生环境中,绝大部分应用都统一使用 OpenKruise 的能力做 Pod 部署、发布管理,而不少业界公司和阿里云上客户由于 K8s 原生 Deployment 等负载不能完全满足需求,也转而采用 OpenKruise 作为应用部署载体。 背景问题 在介绍 OpenKruise 新增能力之前,我们先来看一下原生 K8s workload 所提供的发布能力: Deployment 目前支持 maxUnavailable 和 maxSurge: StatefulSet 目前支持 partition: 其余 workload 如 DaemonSet,也只支持了 maxUnavailable。 以上这些策略在测试环境或是小场景下尚且可行