Удаление пула узлов Служба Azure Kubernetes (AKS)
В этой статье описывается удаление пула узлов в Служба Azure Kubernetes (AKS), включая то, что происходит при удалении пула узлов и как удалить пул узлов.
Что происходит при удалении пула узлов?
При удалении пула узлов удаляются следующие ресурсы:
- Масштабируемый набор виртуальных машин (VMSS) и виртуальные машины для каждого узла в пуле узлов
- Все экземпляры узлов в пуле узлов вместе с любыми модулями pod, работающими на этих узлах
Удаление пула узлов
Внимание
При удалении пула узлов следует учитывать следующие сведения:
- После удаления пула узлов невозможно восстановить. Необходимо создать пул узлов и повторно развернуть приложения.
Удалите пул узлов с помощью az aks nodepool delete
команды.
az aks nodepool delete \
--resource-group <resource-group-name> \
--cluster-name <cluster-name> \
--name <node-pool-name>
Чтобы убедиться, что пул узлов был успешно удален, используйте kubectl get nodes
команду, чтобы убедиться, что узлы в пуле узлов больше не существуют.
Игнорировать PodDisruptionBudgets (PDB) при удалении существующего пула узлов
Если в кластере есть PodDisruptionBudgets, которые препятствуют удалению пула узлов, можно игнорировать требования PodDisruptionBudget, установив для него значение --ignore-pod-disruption-budget
true
. Дополнительные сведения о PodDisruptionBudgets см. в следующем разделе:
- Планирование доступности с помощью бюджетов неработоспособности pod
- Определение бюджета неработоспособности для приложения
- Неработоспособность
Удалите существующий пул узлов без выполнения каких-либо наборов PodDisruptionBudgets в кластере
az aks nodepool delete
с помощью команды с флагом, заданным--ignore-pod-disruption-budget
дляtrue
следующих элементов:az aks nodepool delete \ --resource-group myResourceGroup \ --cluster-name myAKSCluster \ --name nodepool1 --ignore-pod-disruption-budget true
Чтобы убедиться, что пул узлов был успешно удален, используйте
kubectl get nodes
команду, чтобы убедиться, что узлы в пуле узлов больше не существуют.
Удаление определенных виртуальных машин в существующем пуле узлов
Примечание.
При удалении виртуальной машины с помощью этой команды AKS не выполняет кордон и очистку. Чтобы свести к минимуму прерывание планирования модулей pod, работающих в настоящее время на виртуальной машине, которые вы планируете удалить, выполните кордон и очистку на виртуальной машине перед удалением. Дополнительные сведения о кордоне и очистке см. в примере сценария, предоставленного в руководстве по изменение размера пулов узлов.
Перечислить существующие узлы с помощью
kubectl get nodes
команды.kubectl get nodes
Выходные данные должны выглядеть примерно так:
NAME STATUS ROLES AGE VERSION aks-mynodepool-20823458-vmss000000 Ready agent 63m v1.21.9 aks-mynodepool-20823458-vmss000001 Ready agent 63m v1.21.9 aks-mynodepool-20823458-vmss000002 Ready agent 63m v1.21.9
Удалите указанные виртуальные машины с помощью
az aks nodepool delete-machines
команды. Обязательно замените заполнители собственными значениями.az aks nodepool delete-machines \ --resource-group <resource-group-name> \ --cluster-name <cluster-name> \ --name <node-pool-name> --machine-names <vm-name-1> <vm-name-2>
Убедитесь, что виртуальные машины успешно удалены с помощью
kubectl get nodes
команды.kubectl get nodes
Выходные данные больше не должны включать виртуальные машины, указанные в команде
az aks nodepool delete-machines
.
Следующие шаги
Дополнительные сведения о настройке размеров пула узлов в AKS см. в разделе "Изменение размера пулов узлов".
Azure Kubernetes Service