Kubernetes Autoscaler增加对百度云容器引擎CCE的支持( 五 )

在现有功能基础上 , CCE还会继续对自动扩缩容能力进行扩展 , 未来将支持更加丰富的扩缩容策略 , 用户可以灵活地自定义扩容时使用的节点配置 , 并在缩容时对可能有持久化存储的资源进行保护 。

实现原理与技术细节

在开启CCE的自动扩缩容功能后 , 当pod由于资源不足而调度失败 , 即有pod一直处于Pending状态时 , CA会采取扩容操作;当node的资源利用率较低时 , 且此node上存在的pod都能被重新调度到其他node上运行时 , CA会采取缩容操作 。 如果你的集群同时也启用了HPA(Horizontal Pod Autoscaling , 是k8s中pod的水平自动扩展) , 那么CA也能与HPA协同工作 , 例如:当CPU负载增加 , HPA扩容pod , 如果此pod因为资源不足无法被调度 , 则此时CA会扩容节点 。 当CPU负载减小 , HPA减少pod , CA发现有节点资源利用率低甚至已经是空时 , CA就会删除此节点 。

Kubernetes的CA组件由以下几个模块组成: