【发布时间】:2020-11-09 20:15:18
【问题描述】:
在 Helm 图表中同时创建 Deployment 和 HorizontalPodAutoscaler 时,应将部署的 .spec.replicas 设置为 null,还是取消设置,或者将其设置为 hpa 的 @ 之间的某个值987654329@和maxReplicas?
当您创建 hpa 时,hpa 控制器会管理部署的 .spec.replicas,因此当您更新部署的其他字段时,您不应更改副本。
与kubectl apply 声明式配置相比,如果您在第一次创建部署时未设置.spec.replicas,则可以修改部署的其他字段而无需修改.spec.replicas,因此3-way diff 忽略该字段时该部署将在未来应用。或者要在创建时间之后省略字段,您必须使用kubectl apply edit-last-applied 以避免在删除字段时意外缩小到 1 (kubernetes/kubernetes#67135)。所以使用kubectl apply 可以在不接触.spec.replicas 的情况下应用部署。
helm upgrade 部署的其他字段而不更改其缩放的正确方法是什么?
【问题讨论】:
标签: kubernetes kubernetes-helm hpa