为什么我需要使用kubctlapply保存配置?
kubectl apply <file.yaml> --save-config 创建或更新部署并将部署保存为元数据。
在文档中它说
--save-config[=false]:如果为true,则当前对象的配置将保存在其注解中。当您以后想在此对象上执行 kubectl apply 时,这很有用。
为什么我需要save-config?kubectl apply如果我不这样做,我仍然可以使用更新我的部署--save-config。
回答
kubectl 申请
kubectl apply使用注释中的数据kubectl.kubernetes.io/last-applied-configuration查看例如自上次应用以来是否删除了任何字段。这是必需的,因为某些字段或注释可能已通过例如控制器或变异 webhook 实时添加到集群中。
参见例如了解 Kubectl Apply 命令
如果我没有 --save-config,我仍然可以使用 kubectl apply 更新我的部署
是,--save-config仅在从命令式工作流迁移时使用。请参阅下面的更多详细信息。以下kubectl apply命令不需要--save-config标志,因为注释已经存在。
kubectl 的工作流程
在使用 Kubernetes 的配置时,这可以通过多种方式完成,它们都是命令式或声明式的:
- 使用命令式命令管理 Kubernetes 对象
- 使用配置文件对 Kubernetes 对象进行命令式管理
- 使用配置文件对 Kubernetes 对象进行声明式管理
kubectl apply用于声明式配置管理。
从命令式配置管理迁移到声明式配置管理
采用kubectl与--save-config标志是写配置于注释的方式kubectl.kubernetes.io/last-applied-configuration是kubectl apply使用。这在从命令式工作流迁移 到声明式工作流时非常有用。
- 从命令式命令管理迁移到声明式对象配置
- 从命令式对象配置迁移到声明式对象配置