Поделиться через


Базовое устранение неполадок при сбоях в работе узла

В этой статье описаны действия по устранению неполадок для восстановления узлов кластера Microsoft Служба Azure Kubernetes (AKS) после сбоя. В этой статье рассматриваются наиболее распространенные сообщения об ошибках, которые создаются при сбое "Узел не готов", а также объясняется, как можно выполнить функцию восстановления узла для узлов Windows и Linux.

Перед началом работы

Ознакомьтесь с официальным руководством по устранению неполадок с кластерами Kubernetes. Кроме того, ознакомьтесь с руководством инженера Майкрософт по устранению неполадок Kubernetes. В этом руководстве содержатся команды для устранения неполадок модулей pod, узлов, кластеров и других функций.

Предварительные требования

  • Azure CLI версии 2.31 или более поздней. Если Azure CLI уже установлен, номер версии можно найти, запустив az --version.

Основные способы устранения неполадок

AKS постоянно отслеживает состояние работоспособности рабочих узлов и автоматически восстанавливает узлы, если они становятся неработоспособными. Платформа виртуальных машин Azure поддерживает виртуальные машины , которые испытывают проблемы. Виртуальные машины AKS и Azure работают вместе, чтобы сократить количество перебоев в работе служб кластеров.

Для узлов существует две формы пульса:

  • Обновления в status-файл Node объекта.

  • Аренда объектов в пространстве имен kube-node-lease . Каждый из них Node имеет связанный Lease объект.

По сравнению с обновлениями в файле Nodestatus объекта , Lease является упрощенным ресурсом. Использование Lease объектов для пульса снижает влияние этих обновлений на производительность для крупных кластеров.

Kubelet отвечает за создание и обновление status-файла для Node объектов. Он также отвечает за обновление Lease объектов, связанных с объектами Node .

Kubelet обновляет Nodestatus-файл , если выполняется одно из следующих условий:

  • Происходит изменение состояния.

  • Обновление не выполняется после заданного интервала времени.

Интервал обновления состояния Node по умолчанию составляет пять минут. Этот интервал гораздо больше, чем 40-секундный тайм-аут по умолчанию для недоступных узлов. Kubelet создает и обновляет свой Lease объект один раз каждые десять секунд (интервал обновления по умолчанию). Обновления происходить Lease независимо от обновлений Node состояния. Lease Если обновление завершается сбоем, kubelet повторяет попытку, используя экспоненциальную задержку, которая начинается с 200 миллисекунд и ограничена не более семи секунд.

Вы не можете запланировать для Pod объекта Node с состоянием NotReady или Unknown. Можно запланировать только Pod на узлах, которые находятся в Ready состоянии .

Если узел находится в MemoryPressureсостоянии , DiskPressureили PIDPressure , необходимо управлять ресурсами, чтобы запланировать дополнительные модули pod на узле. Если узел находится в NetworkUnavailable режиме, необходимо правильно настроить сеть на узле. Убедитесь, что выполнены следующие условия:

Заявление об отказе от ответственности за контактные данные сторонней организации

Корпорация Майкрософт предоставляет сторонние контактные данные, чтобы помочь вам найти дополнительные сведения по этой теме. Эти данные могут быть изменены без предварительного уведомления. Корпорация Майкрософт не гарантирует точность контактной информации сторонних поставщиков.