在Kubernetes中,设置HPA需通过定义HorizontalPodAutosscaler
资源对象,指定目标Deployment/StatefulSet及CPU/内存等指标阈值,控制器将根据指标自动扩缩Pod副本数。优化可结合自定义指标、调整扩缩冷却时间(通过behavior
字段)或使用KEDA扩展HPA能力。
延伸知识点:自定义指标(Custom Metrics)配置 HPA默认支持CPU/内存,但实际场景常需基于QPS、队列长度等自定义指标扩缩。配置步骤:
- 安装Metrics Server及Prometheus Adapter(或其他指标聚合器);
- 暴露应用自定义指标(如通过Prometheus);
- 在HPA中定义
metrics
字段,例如:metrics: - type: Pods pods: metric: name: http_requests_per_second target: type: AverageValue averageValue: 100
需确保指标名称与聚合器提供的一致,并通过
kubectl get --raw /apis/custom.metrics.k8s.io/v1beta1
验证指标可用性。