k8s HPA示例
參考視頻:https://ke.qq.com/course/1709963
一、簡介
HPA(Horizontal Pod Autoscaler)是kubernetes的一種資源對象,能夠根據某些指標對在statefulSet、
replicaController、replicaSet等集合中的pod數量進行動態伸縮,使運行在上面的服務對指標的變化有一定的自適應能力。
二、HPA示例
2.1.yaml文件frontend-hpa.yaml
apiVersion: autoscaling/v1 kind: HorizontalPodAutoscaler metadata:name: frontendnamespace: default spec:maxReplicas: 5minReplicas: 1scaleTargetRef:kind: Deploymentname: frontendtargetCPUUtilizationPercentage: 852.2.解釋
該HPA控制一個名為frontend的Deployment里的Pod副本,當這些Pod副本的targetCPUUtilizationPercentage值
超過85%時會觸發自動動態擴容行為,在擴容和縮容時必須滿足的約束條件是Pod的副本數為1~5
一般來說,期望值設為 60% 到 70% 可能是比較合適的,最小副本數建議設為 2 - 5.
2.2.用命令創建HPA資源對象
kubectl autoscale deployment frontend --cpu-percent=90 --min=1 --max=10三、HPA數據通信流
hpa -> apiserver -> metrics-server -> kubelet -> pod
總結
- 上一篇: [小程序模板] 化妆品商城小程序模板 商
- 下一篇: 旋转编码器的原理和使用方法