GCP-2:谷歌云GKE的Autoscaling操作

本文详细介绍了谷歌云GKE的四种主要自动扩展机制,包括ClusterAutoscaling(CA)、NodeAuto-provisioning(NAP)、HorizontalPodAutoscaling(HPA)和VerticalPodAutoscaling(VPA),以及它们在创建集群、部署工作负载时的应用和配合策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

谷歌云GKE Autoscaling大致分4种:infrastructure有Cluster Autoscaling (CA)和Node Auto-provisioning (NAP),workload有Horizontal Pod Autoscaling (HPA)和Vertical Pod Autoscaling (VPA)

-谷歌云GKE Cluster的创建有2中:autopilot(只需要考虑HPA,其他autoscaling为default)和standard(需要考虑所有autoscaling)

Infrastructure Autoscaling:

1. Cluster Autoscaling (CA):可以自动创建相同规格的node(基本上都会用)

#: gcloud container clusters update <cluster> --enable-autoscaling --min-nodes=1 --max-nodes=3

2. Node Auto-provisioning (NAP):可以自动创建不同规格的node(新的machine type等,即创建新的node pool,适用于价格优化的batch job

#: gcloud container clusters update <cluster> --enable-autoprovisioning --min-cpu=0.5 --max-cpu=2

-场景:需要deploy的job有resource request和toleration,NAP会自动创建新的node pool和新的machine type来配对job的resource request和node taint来配对job的toleration;当job完成后,NAP会自动关闭新创建的node pool

Workload Autoscaling:

3. Horizontal Pod Autoscaling (HPA):可以自动创建相同规格的Pod(基本上都会用)

-必须在deployment中设置CPU的resource request用做HPA autoscaling的基准

#: kubectl autoscale deploy nginx --max=3 --cpu-percent=70

#: kubectl get hpa nginx -o yaml(可以查看hpa的spec,也可以进行修改)

4. Vertical Pod Autoscaling (VPA):可以自动“调节”container的resource requests和limits(相对比较麻烦,需要的运维比较多)

-在运行中的Pod上调节resource requests和limits会触发“关闭和重新创建Pod”,为了尽量不影响服务,需要配合使用GKE的Pod disruption budget

-在GKE上和HPA不同的地方是:VPA运行在control plane;而GKE的control plane是看不到的,所以不能用kubectl get vpa <vpa> -o yaml来查看spec或修改

-如果和HPA一起使用,HPA需要workload的CPU request作为autoscaling的基准,而同时VPA会自动“调节”resource requests,所以需要使用GKE的Multidimensional Pod Autoscaling (MPA)

*VPA Bonus:

-VPA的另一种常用用法:是通过kubectl describe vpa里Container Recommendations给出的目标(推荐的)resource request value来手动调节resource requests,来做workload cost optimization

-因为GKE的VPA看不到,通过console/workloads:Actions-Scale-Edit resource requests可以查看Suggested Request(即推荐的resource request value)(这里不需要开通VPA):

最后,可以通过查看Autoscaler Logs中的events(noScaleUp/noScaleDown的reason)来troubleshoot autoscaling的问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值