Pod水平自动伸缩(Horizontal Pod Autoscaler,HPA)
1 | 例如Deployment这种支持多副本的工作负载,可以通过调整spec.relicas来增加或减少副本数,从而改变整体的业务水位满足我们的需求。 |
- 部署
1 | wget https://github.com/kubernetes-sigs/metrics-server/releases/download/v0.3.7/components.yaml |
- 创建测试dp
1 | apiVersion: apps/v1 |
- 创建HPA对象
1 | [root@master hpa]# kubectl autoscale deploy myapp-test -n demo --cpu-percent=50 --min=1 --max=5 |
- 压测
1 | # 本机测试,安装ab工具 |
- 结论
1 | 可以看到随着访问压力增加,pod的平均利用率也直线上升,超过阈值50%,这时deployment副本数就增加调整,直到CPU降低到50%。 |
CLuster Autoscaler
1 | # 自动扩容集群节点资源 |