Обзор автоматического предоставления узлов (NAP) в службе Azure Kubernetes (AKS)

В этой статье представлен обзор автоматической подготовки узла (NAP) в Azure Kubernetes Service (AKS), включая его работу, поведение обновления, предварительные требования, ограничения и ресурсы для начала работы.

Для большинства рабочих нагрузок AKS по умолчанию рекомендуется использовать AKS Automatic. AKS Automatic включает NAP как предварительно настроенную функцию и обеспечивает готовую к промышленной эксплуатации операционную базу с гарантированной SLA готовностью pod'ов.

Что такое автоматическое назначение узлов в AKS?

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

Автоматическая подготовка узла (NAP) упрощает этот процесс путем автоматической подготовки и управления оптимальной конфигурацией виртуальной машины для рабочих нагрузок. NAP использует ожидающие требования к ресурсам pod, чтобы решить оптимальную конфигурацию виртуальной машины для выполнения рабочих нагрузок наиболее эффективным и экономичным способом.

NAP автоматически развертывает, настраивает и управляет Karpenter в кластерах AKS и основывается на проектах с открытым исходным кодом Karpenter и AKS Karpenter.

В AKS Automatic nap предварительно настроен по умолчанию. В AKS Standard вы включаете и настраиваете NAP явным образом.

Выберите AKS Automatic или AKS Standard для NAP

Используйте следующее руководство, чтобы выбрать начальную точку:

Сценарий Рекомендуемый путь Почему
Большинство производственных рабочих нагрузок AKS Automatic NAP предварительно настроен, готовность подов обеспечивается в рамках SLA, а операции по управлению узлами после развертывания сведены к минимуму.
Расширенные требования к пользовательской платформе AKS Standard с NAP Больше возможностей для ручного управления конфигурацией кластера и развертывания.
Более быстрый путь к рабочей среде с меньшим планированием виртуальных машин AKS Automatic Сокращение операционных затрат на операции с размерами узлов и жизненным циклом.
Тонкая настройка платформы с первого дня AKS Standard с NAP Большая гибкость для настраиваемых элементов управления и рабочих сценариев.

Общие сведения об AKS Automatic см. в статье Введение в Azure Kubernetes Service (AKS) Automatic.

Как работает автоматическая подготовка узла?

Автоматическое выделение узлов, их масштабирование и управление виртуальными машинами (узлами) в кластере происходит в ответ на нагрузку от ожидающих задач (pod).

Ключевые компоненты автоматической подготовки узла

NAP использует следующие ключевые компоненты для управления узлами кластера:

Компонент Description
NodePool и AKSNodeClass. Определения пользовательских ресурсов (CRD), которые вы создаёте и управляете для определения политик подготовки узлов, спецификаций виртуальных машин и ограничений для рабочих нагрузок.
NodeClaims Управляется NAP для представления текущего состояния подготовленных узлов, которые можно отслеживать.
Требования к ресурсу рабочей нагрузки ЦПУ, память и другие спецификации из Pod, Деплойментов, заданий и других ресурсов Kubernetes, которые влияют на решения о выделении ресурсов.

Подсказка

В кластерах AKS Automatic NAP предварительно настраивается и поддерживается соглашением об уровне обслуживания готовности подов, которое гарантирует, что 99,9% операций по обеспечению готовности подов завершаются в течение 5 минут. Это означает, что рабочие нагрузки начинают работать на узлах правильного размера, без ручного выбора виртуальной машины или планирования емкости.

Для большинства команд, работающих в production, AKS Automatic становится отправной точкой по умолчанию благодаря предсказуемому поведению при запуске и меньшим операционным издержкам на этапе эксплуатации.

Поведение обновления Kubernetes для узлов с автоматическим выделением ресурсов

Обновления Kubernetes для узлов автоматической подготовки узлов соответствуют версии Kubernetes уровня управления. При обновлении кластера узлы автоматически обновляются, чтобы следовать той же версии, что и контрольная плоскость.

Мы рекомендуем задать канал автоматического обновления Kubernetes, который автоматически обрабатывает обновления Kubernetes для кластера. Мы также рекомендуем задать запланированное время обслуживания для кластера. Окно aksManagedAutoUpgradeSchedule обслуживания позволяет вам управлять тем, когда выполнять обновления кластера, запланированные вашим автоматическим каналом обновления. Дополнительные сведения см. в разделе Использование планового обслуживания для планирования и контроля обновлений кластера Azure Kubernetes Service (AKS).

Предпосылки

Для использования автоматического управления подготовкой узлов в AKS вам потребуется следующее:

  • Подписка Azure. Если у вас нет учетной записи, вы можете создать бесплатную учетную запись.
  • Azure CLI версии 2.76.0 или более поздней версии. Чтобы узнать версию, выполните команду az --version. Дополнительные сведения об установке или обновлении Azure CLI см. в разделе Install Azure CLI.

Ограничения и неподдерживаемые функции

Следующие ограничения и неподдерживаемые функции применяются к автоматическому предоставлению узлов в AKS:

Начало работы с автоматическим выделением узлов в AKS

Если вы запускаете новую рабочую нагрузку, начните с AKS Automatic:

Для сценариев настройки AKS Standard или advanced NAP используйте следующие ресурсы: