Добавить метку к узлам:
$ kubectl label nodes 10.xx.xx.xx key1=val1
Если я хочу удалить label(key1=val1)
в node (10.xx.xx.xx), как я могу удалить команду kubectl и API?
Добавить метку к узлам:
$ kubectl label nodes 10.xx.xx.xx key1=val1
Если я хочу удалить label(key1=val1)
в node (10.xx.xx.xx), как я могу удалить команду kubectl и API?
создать метки для узлов:
kubectl label node <nodename> <labelname>=allow
удалить выше метки из своих рекурсивных узлов:
kubectl label node <nodename> <labelname>-
Из метки kubectl -h:
Обновите pod 'foo', удалив метку с именем "bar", если она существует.
Не требуется флаг -overwrite.
$ kubectl label pods foo bar -
То же самое работает для узлов.
Чтобы удалить ярлык, вы можете использовать
узлы метки kubectl 10.xx.xx.xx key1 -
Вы можете удалить ярлык таким образом
kubectl label nodes <node_name> key1- key2-
eg: kubectl label nodes ip-172-20-22-247 key1- key2-
Вы можете удалить метку из одного узла, используя следующую команду kubectl
kubectl label node 10.xx.xx.xx Key1-
Если вы хотите удалить метку для всех узлов, используйте следующую команду
kubectl label nodes --all Key1-
Ниже сработала команда для удаления метки:
kubectl label node <nodename> <label>-
Примечание. Синтаксис - знак минуса сразу после ключа. Например, если имя узла - worker1, а метка - system = workernode, вы можете удалить метку с помощью следующей команды.
kubectl label node worker1 system-
Как уже упоминалось, исправьте пример 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)