Escalator 是 Atlassian 开源的一款 Kubernetes 自动扩展工具,专为大批量或基于作业任务(job-based)的工作负载而设计。当集群需要按比例缩放时,无法强制释放和移动,Escalator 将确保在终止节点之前已在节点上完成了 pod 。它还针对集群扩展进行了速度优化,以确保 pod 不会处于挂起状态。
主要特性:
-
计算请求和容量,以确定是按比例扩容、缩容还是保持当前比例
-
在终止节点之前等待节点上的非守护进程 pod 已完成
-
可指定需要自动扩展的群组,以允许默认的 Kubernetes Autoscaler 继续扩展基于服务的工作负载
-
优先自动终止最老的节点
-
提供残留区,以确保在计划容器出现峰值时有额外空间
-
允许 cordoned nodes 持续进行调试
-
支持不同的云提供商 - 目前仅限 AWS
-
扩展率和利用率度量指标
Building
# Install dependencies make setup # Build Escalator make build