kubernetes-如何通过命令和api删除节点标签?

将标签添加到节点:

$ kubectl label nodes 10.xx.xx.xx key1=val1 

如果要删除节点(10.xx.xx.xx)上的label(key1=val1),如何通过kubectl命令和API删除?

ttyyll asked 2020-08-09T13:44:23Z
9个解决方案
78 votes

为节点创建标签:

kubectl label node <nodename> <labelname>-

从其各自的节点中删除以上标签:

kubectl label node <nodename> <labelname>-

Gaurav Gharat answered 2020-08-09T13:44:33Z
15 votes

从kubectl标签-h中:

通过删除名为“ bar”的标签(如果存在)来更新容器“ foo”。
不需要--overwrite标志。
$ kubectl标签pods foo bar-

节点也一样。

Prashanth B answered 2020-08-09T13:45:11Z
9 votes

下面的命令为我工作,以删除标签:

kubectl label node <nodename> <label>-

注意:语法在键之后是减号。 例如,如果节点名称为worker1且标签为system = workernode,则可以使用以下命令删除标签。

kubectl label node worker1 system-
sudheerchamarthi answered 2020-08-09T13:45:36Z
6 votes

要删除标签,您可以使用

kubectl标签节点10.xx.xx.xx key1-

Danushka answered 2020-08-09T13:46:00Z
2 votes

您可以这样删除标签

kubectl label nodes <node_name> key1- key2-

eg: kubectl label nodes ip-172-20-22-247 key1- key2-
Phanindra answered 2020-08-09T13:46:20Z
1 votes

您可以使用以下kubectl命令从单个节点删除标签

kubectl label nodes --all Key1-

如果要删除所有节点的标签,请使用以下命令

kubectl label nodes --all Key1-

Raviteja answered 2020-08-09T13:46:44Z
0 votes

如前所述,正确的kubectl示例删除了标签,但是没有提到使用API客户端删除标签。 如果要使用API删除标签,则需要使用labelname: None提供一个新主体,然后将该主体修补到节点或pod上。 我出于示例目的使用kubernetes python客户端API

from pprint import pprint
from kubernetes import client, config

config.load_kube_config()
client.configuration.debug = True

api_instance = client.CoreV1Api()

body = {
    "metadata": {
        "labels": {
            "label-name": None}
        }
}

api_response = api_instance.patch_node("minikube", body)

print(api_response)
Prafull Ladha answered 2020-08-09T13:47:05Z
0 votes
  1. 如果要查看节点的现有标签kubectl获取节点--show-labels
  2. 然后,列出要修改的key_name和node_name
  3. 然后,kubectl标签节点node_name key_name-
rajdeepbs29 answered 2020-08-09T13:47:34Z
0 votes

要将标签添加到kubernetes节点:

kubectl label node "your-node-name" node-role.kubernetes.io/worker=worker

要从kubernetes节点中删除标签:

kubectl label node "your node-name" node-role.kubernetes.io/worker-

注意:要删除标签,请在标签名称的末尾添加“-”符号

Soumyarout80 answered 2020-08-09T13:48:02Z
translate from https://stackoverflow.com:/questions/34067979/how-to-delete-a-node-label-by-command-and-api