Как удалить ярлык node командой и api?

Добавить метку к узлам:

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

Если я хочу удалить label(key1=val1) в node (10.xx.xx.xx), как я могу удалить команду kubectl и API?

Ответ 1

создать метки для узлов:

kubectl label node <nodename> <labelname>=allow

удалить выше метки из своих рекурсивных узлов:

kubectl label node <nodename> <labelname>-

Ответ 2

Из метки kubectl -h:

Обновите pod 'foo', удалив метку с именем "bar", если она существует.
   Не требуется флаг -overwrite.
   $ kubectl label pods foo bar -

То же самое работает для узлов.

Ответ 3

Чтобы удалить ярлык, вы можете использовать

узлы метки kubectl 10.xx.xx.xx key1 -

Ответ 4

Вы можете удалить ярлык таким образом

kubectl label nodes <node_name> key1- key2-

eg: kubectl label nodes ip-172-20-22-247 key1- key2-

Ответ 5

Вы можете удалить метку из одного узла, используя следующую команду kubectl

kubectl label node 10.xx.xx.xx Key1-

Если вы хотите удалить метку для всех узлов, используйте следующую команду

kubectl label nodes --all Key1-

Ответ 6

Ниже сработала команда для удаления метки:

kubectl label node <nodename> <label>-

Примечание. Синтаксис - знак минуса сразу после ключа. Например, если имя узла - worker1, а метка - system = workernode, вы можете удалить метку с помощью следующей команды.

kubectl label node worker1 system-

Ответ 7

Как уже упоминалось, исправьте пример kubectl для удаления метки, но нет упоминания об удалении меток с помощью клиентов API. если вы хотите удалить метку с помощью API, вам нужно предоставить новое тело с labelname: None и затем labelname: None это тело к узлу или модулю. Я использую клиентский API kubernetes python для примера

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)

Ответ 8

  1. Если вы хотите увидеть существующие метки для узлов kubectl, получите узлы --show-label
  2. Затем перечислите имя ключа и имя узла, которое вы хотите изменить
  3. Затем имя узла kubectl имя_узла key_name-