gpt4 book ai didi

kubernetes - 如何仅使用 "kubectl apply -f file.yaml"从 kubernetes 对象中删除标签?

转载 作者:行者123 更新时间:2023-12-05 06:19:06 28 4
gpt4 key购买 nike

我正在 Redhat Openshift 中使用 GitOps 和 ArgoCD。我的目标是将工作节点切换到基础设施节点。

我想使用描述性 YAML 文件来执行此操作,而不是使用命令行手动执行此操作(使用 kubectl 标签节点很容易...)

为了使节点成为 infra 节点,我想添加一个标签“infra”并从中获取标签“worker”。之前,对象看起来像这样(省略了不相关的标签):

apiVersion: v1
kind: Node
metadata:
labels:
node-role.kubernetes.io/infra: ""
name: node6.example.com
spec: {}

应用 YAML 文件后,它应该看起来像这样:

apiVersion: v1
kind: Node
metadata:
labels:
node-role.kubernetes.io/worker: ""
name: node6.example.com
spec: {}

如果我将后一个配置放在一个文件中,并执行“kubectl apply -f”,该节点将同时具有 infra 和 worker 标签。所以添加标签或更改标签的值很容易,但是有没有办法通过应用 YAML 文件来删除对象元数据中的标签?

最佳答案

你可以删除标签

kubectl label node node6.example.com node-role.kubernetes.io/infra-

然后您可以使用新标签再次运行 kubectl apply。您将启动并运行。

关于kubernetes - 如何仅使用 "kubectl apply -f file.yaml"从 kubernetes 对象中删除标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60974108/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com