共计 931 个字符,预计需要花费 3 分钟才能阅读完成。
丸趣 TV 小编给大家分享一下 kubernetes 中如何实现 Pod 自动扩容与缩容,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
一:简介
Kubernetes 通过 HPA 控制器,用于实现基本 CPU 使用率进行自动 Pod 扩容和缩容的功能。HAP 控制器基于 Master 的 Kube-controller-manager 服务启动参数 –horizontal-pod-autoscaler-sync-period 定义的时长(默认值为 30s), 周期性地检测目标 Pod 的 CPU 使用率,并在满足条件时对 ReplicationController 或 Deployment 中的 Pod 副本数量进行调整,以符合用户定义的平均 Pod CPU 使用率。Pod CPU 使用率来源于 Heapster 组件,所有需要预先安装好 Heapster.
二:HPA 的创建
创建 HPA 时可以使用 kubectl autoscale 命令进行快速创建或者使用 Yaml 配置文件进行创建,在创建 HPA 之前,需要已经存在一个 Deployment/RC 对象,并且该 Deployment/RC 中的 Pod 必须定义 resources.requests.cpu 的资源请求值,如果不设置该值,则 Heapster 将无法采集到 Pod 的 CPU 使用情况,会导致 HPA 无法正常工作。
举例:
1.kubectl autoscale deployment php-apache –min=1 –max=10 –cpu-percent=50
2. 通过 yaml 文件创建
apiVersion: autoscaling/v1
kind: HorizontalPodAutoscaler
metadata:
name: php-apache
spec:
scaleTargetRef:
apiVersion: apps/v1beta1
kind: Deployment
name: php-apache
minReplicas: 1
maxReplicas: 10
targetCPUUtilizationPercentage: 50
看完了这篇文章,相信你对“kubernetes 中如何实现 Pod 自动扩容与缩容”有了一定的了解,如果想了解更多相关知识,欢迎关注丸趣 TV 行业资讯频道,感谢各位的阅读!