您的位置:首页 > 其它

kubernetes之hpa(HorizontalPodAutoscaling)扩展实现memory支持

2017-11-16 01:02 525 查看

kubernetes之hpa(HorizontalPodAutoscaling)扩展实现memory支持

我们的项目中目前的横向伸缩用的是hpa来实现,目前实现来定时横向伸缩和负载横向伸缩。在实际的项目中有很多客户有这样的需求,就是在对k8s的pod的横向扩展的时候,要求不光能按照cpu的使用百分比来进行伸缩pod的数量(对用户来说实际意义不到,据用户反馈,应用经常都是memory负载很高,而对应的cpu使用率很低),所以提出要求能按照容器的memory的使用负载来进行横向伸缩扩展。

分析

用过hpa(Horizontal Pod Autoscaling)的人都知道目前hpa仅支持cpu负载的自动伸缩,所以想要实现按照容器的memory来实现pod的横向伸缩是不可能实现的,所以就有啦在k8s原油的hpa的基础上增加memeory的横向伸缩。

实现思路

在hpa对应的struct中添加对应的memory字段,期望的memory的使用百分比。

在hpa的各个核心方法中加上对memory的阀值的一些判断

猜测应该需要在对应的hpa的controller中去增加memory的阀值的一些操作判断。

目前还没开始做,明天开始用实际的代码去实现。等实现完之后就自己完全按照hpa的方式来自定义一个thirty_part resource(目前叫custom resource) 去实现。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  kubernetes hpa memory