如果要修改运行 pods配置,部署还是pods哪个好?

if we want to make modification to running pods configuration, which is advisable whether to deployment or to pods?

如果我们有一些要求修改 运行 的 属性 pods,推荐的方式是什么,原因是什么。

我想一旦 pod 部署为部署的一部分,我们就可以通过 kubectl edit pod 或 kubectl edit deploy 修改 pods 属性。

想了解这两个动作之间是否有任何区别。 ?

修改 Deployment 而不是 Pod。

为什么?

Deployment 描述了您的 pods 所需的状态。 Deployment 控制器在控制循环中持续监视 Deployment 对象。它从 Deployment 规范中读取所需的 pod 状态,并尝试确保集群中的状态。因此,如果您编辑 pod 并更改某些内容,Deployment 控制器将在下一次重新同步时覆盖更改,因为您的修改不存在于 Deployment 规范中。

在大多数情况下,您不能编辑pods。在 API definition of a PodSpec 中,containersinitContainers 字段都被描述为“无法更新”。 Pod 规范中几乎所有有趣的东西都在 Container 子对象中。

由此得出的结论是,在大多数情况下,您不能“修改 运行 pods 的属性”;您只能删除它们并将其替换为具有您想要的属性的新 pods。如果您在部署规范中编辑 pod 模板,Kubernetes 将完全做到这一点。