Политики поддержки для Служба Azure Kubernetes

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

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

  • Сведения о выпуске см. в заметках о выпуске AKS.
  • Сведения о предварительных версиях функций см. в дорожной карте AKS.

Управляемые функции в AKS

AKS — это сочетание инфраструктуры как услуги (IaaS) и платформы как услуги (PaaS). Базовые облачные компоненты IaaS, такие как вычислительные компоненты или сетевые компоненты, позволяют получать доступ к низким уровням управления и параметрам настройки. В отличие от этого, AKS предоставляет готовое развертывание Kubernetes, которое предоставляет общий набор конфигураций и возможностей, необходимых для кластера. В качестве пользователя AKS у вас есть ограниченные параметры настройки и развертывания. В обмен вам не нужно беспокоиться о кластерах Kubernetes напрямую или управлять ими.

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

Майкрософт управляет и отслеживает следующие компоненты с помощью плоскости управления:

  • Серверы API Kubelet или Kubernetes.
  • etcd или совместимое хранилище key-value, предоставляющее качество обслуживания (QoS), масштабируемость и среду выполнения.
  • Службы DNS, такие как kube-dns или CoreDNS.
  • Проксирование и сетевые функции Kubernetes, за исключением случаев, когда используется BYOCNI.
  • Любые другие дополнения или системные компоненты, работающие в пространстве имен kube-system.

Некоторые компоненты, такие как узлы агента, несут общую ответственность, где необходимо поддерживать кластер AKS. Для применения исправления безопасности операционной системы агентного узла (ОС) требуется ввод данных пользователем.

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

Общая ответственность

При создании кластера вы определяете узлы агента Kubernetes, создаваемые AKS. На этих узлах выполняются клиентские рабочие нагрузки.

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

Любые изменения, внесенные непосредственно на узлы агента с помощью любого из API для IaaS, делают кластер неподдерживаемым. Любые изменения, примененные к узлам агента, должны выполняться с помощью встроенных механизмов Kubernetes, таких как DaemonSet.

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

Покрытие поддержки AKS

В следующих разделах описаны поддерживаемые и неподдерживаемые сценарии технической поддержки AKS.

Поддерживаемые сценарии

Майкрософт предоставляет техническую поддержку для следующих примеров:

  • Подключение ко всем компонентам Kubernetes, которые предоставляет и поддерживает служба Kubernetes, например сервер API.
  • Управление, время безотказной работы, QoS и операции служб управляющей плоскости Kubernetes, таких как управляющая плоскость Kubernetes, API сервера etcd и coreDNS.
  • etcd хранилище данных. Поддержка включает автоматизированные, прозрачные резервные копии всех etcd данных каждые 30 минут для планирования аварий и восстановления состояния кластера. Эти резервные копии недоступны напрямую для вас или других пользователей. Они обеспечивают надежность и согласованность данных. Откат по запросу или восстановление не поддерживается как функция.
  • Все точки интеграции в драйвере поставщика облачных служб Azure для Kubernetes. К ним относятся интеграции с другими службами Azure, такими как подсистемы балансировки нагрузки, постоянные тома или сети (Kubernetes и Azure CNI, за исключением случаев, когда используется BYOCNI).
  • Вопросы или проблемы с настройкой компонентов уровня управления, таких как сервер API Kubernetes, etcdи coreDNS.
  • Проблемы с сетью, такие как Azure CNI, kubenet или другие проблемы с доступом к сети и функциональными возможностями, за исключением случаев, когда используется BYOCNI. Проблемы могут включать разрешение DNS, потерю пакетов, маршрутизацию и т. д. Майкрософт поддерживает различные сетевые сценарии:
    • Kubenet и Azure CNI с помощью управляемых виртуальных сетей или с пользовательскими (собственными) подсетями.
    • Подключение к другим службам и приложениям Azure.
    • управляемые Майкрософт контроллеры входящего трафика или конфигурации балансировщиков нагрузки.
    • Производительность сети и задержка.
    • управляемые Майкрософт компоненты и функциональные возможности сетевых политик.

Все действия с кластерами, выполняемые Майкрософт/AKS, производятся с вашим согласием в рамках встроенной роли Kubernetes aks-service и встроенного связывания роли aks-service-rolebinding, которое связывает роль с идентификатором службы aks-support служба поддержки Майкрософт. Эта роль позволяет AKS устранять неполадки в работе кластера и диагностировать их, но она не может изменять разрешения и создавать роли или привязки ролей, а также осуществлять другие действия с высоким уровнем привилегий. Доступ к роли доступен только в рамках активных заявок в службу поддержки при условиях доступа по требованию (JIT).

Неподдерживаемые сценарии

Майкрософт не предоставляет техническую поддержку для следующих сценариев:

  • Вопросы об использовании Kubernetes. Например, служба поддержки Майкрософт не предоставляет рекомендации по созданию пользовательских контроллеров входящего трафика, использованию рабочих нагрузок приложений или применению сторонних или программных пакетов или средств с открытым исходным кодом.

    Поддержка Microsoft может предоставлять рекомендации по функциям кластера AKS, его настройке и оптимизации (например, по вопросам и процедурам операций с Kubernetes).

  • Сторонние проекты с открытым кодом, которые не являются частью контрольной плоскости Kubernetes или не развертываются вместе с кластерами AKS. Эти проекты могут включать Istio, Helm, Envoy или другие.

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

  • Стороннее программное обеспечение с закрытым кодом. Это программное обеспечение может включать средства проверки безопасности и сетевые устройства или программное обеспечение.

  • Настройка или устранение неполадок, связанных с кодом приложения или поведением сторонних приложений или инструментов, работающих в кластере AKS. Это включает проблемы с развертыванием приложений, не связанные с самой платформой AKS.

  • Выдача, продление или управление сертификатами для приложений, работающих в AKS.

  • Настройки сети, отличные от перечисленных в документации AKS. Например, служба поддержки Microsoft не может настраивать устройства или виртуальные устройства, предназначенные для обеспечения исходящего трафика для кластера AKS, такие как VPN или брандмауэры.

    На основе лучших возможных усилий служба поддержки Майкрософт может рекомендовать конфигурацию для Брандмауэр Azure, но не для других сторонних устройств.

  • Пользовательские или сторонние CNI плагины, используемые в режиме BYOCNI.

  • Настройка или устранение неполадок в сетевых политиках, которыми не управляет Майкрософт. Хотя использование политик сети поддерживается, служба поддержки Майкрософт не может исследовать проблемы, связанные с кастомизированной конфигурацией сетевых политик.

  • Настройка или устранение неполадок с контроллерами входа, не управляемыми Майкрософт, такими как nginx, kong, traefik и т. д. Это включает в себя устранение проблем с функциональностью, которые возникают после операций, специфичных для AKS, например, когда контроллер перестает работать после обновления версии Kubernetes. Такие проблемы могут возникать из-за несовместимости между версией контроллера входящего трафика и новой версией Kubernetes. Для полностью поддерживаемого варианта рассмотрите возможность использования контроллера входящего трафика, управляемого Майкрософт.

  • Настройка или устранение неполадок DaemonSet (включая скрипты), используемые для настройки конфигураций узлов. Хотя рекомендуется использовать DaemonSet для настройки, модификации или установки стороннего программного обеспечения на узлах агента кластера, если параметры файла configuration оказываются недостаточными, служба поддержки Microsoft не может устранять проблемы, возникающие из-за использования пользовательских скриптов в DaemonSet, из-за их специфического характера.

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

  • Уязвимости и CVE с новым исправлением поставщика, которому менее 30 дней. Пока вы используете обновленный виртуальный жесткий диск, у вас не будет уязвимостей образа контейнера или CVEs, если исправление от поставщика было выпущено более 30 дней назад. Клиент несет ответственность за обновление VHD и предоставление отфильтрованных списков в поддержку Майкрософт. После обновления виртуального жесткого диска клиент несет ответственность за фильтрацию отчетов об уязвимостях и CVEs и предоставление списка только с уязвимостями или CVEs с исправлением поставщика, которое превышает 30 дней. Если это так, поддержка Майкрософт будет обязательно работать внутренне и решать вопросы с компонентами, имеющими исправлением поставщика, выпущенным более 30 дней назад. Кроме того, Майкрософт предоставляет поддержку уязвимостей или CVE только для компонентов, управляемых Майкрософт. Например, образы узлов AKS, управляемые образы контейнеров для приложений, которые используются при создании кластера или при установке управляемой надстройки. Дополнительные сведения об управлении уязвимостями для AKS см. в разделе Управление уязвимостями для Azure Kubernetes Service (AKS).

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

Поддержка AKS для узлов агента

В следующих разделах описаны обязанности Майкрософт и клиента для узлов агента AKS.

Обязанности Майкрософт за узлы агентов AKS

Майкрософт и вы несете ответственность за узлы агента Kubernetes, где:

  • Базовый образ ОС имеет необходимые дополнения, такие как мониторинг и сетевые агенты.
  • Исправления ОС устанавливаются на узлы агента автоматически.
  • Проблемы с компонентами уровня управления Kubernetes, которые выполняются на узлах агента, автоматически устраняются. Эти компоненты включают следующие элементы:
    • Kube-proxy
    • Сетевые туннели, предоставляющие пути связи к главным компонентам Kubernetes
    • Kubelet
    • containerd

Если узел агента не работает, AKS может перезапустить отдельные компоненты или весь узел агента. Эти операции перезапуска автоматизированы и предоставляют автоматическое восстановление для распространенных проблем. Дополнительные сведения о механизмах автоматического восстановления см. в разделе "Автоматическое восстановление узла".

Обязанности клиента для узлов агента AKS

Майкрософт предоставляет исправления и новые образы для узлов изображений каждую неделю. Чтобы обеспечить актуальность компонентов ОС узла агента и среды выполнения, следует регулярно применять эти исправления и обновления вручную или автоматически. Майкрософт не поддерживает образы узлов старше 90 дней. Дополнительные сведения можно найти здесь

Аналогичным образом AKS регулярно выпускает новые исправления Kubernetes и дополнительные версии. Это относится к обновлениям, которые содержат улучшения системы безопасности или функциональности Kubernetes. Вы несете ответственность за обновление версии Kubernetes кластера и в соответствии с политикой версий поддержки AKS Kubernetes.

Пользовательская настройка узлов агента

Note

Узлы агента AKS отображаются на портале Azure как стандартные Azure ресурсы IaaS. Однако эти виртуальные машины развертываются в пользовательскую группу ресурсов Azure (с префиксом MC_\*). Вы не можете изменить базовый образ ОС или внести прямые настройки на эти узлы с помощью API или ресурсов IaaS. Любые пользовательские изменения, которые не выполняются через API AKS, не сохраняются при обновлении, масштабировании или перезагрузке. Кроме того, любое изменение расширений узлов, таких как CustomScriptExtension может привести к неожиданному поведению и должно быть запрещено. Избегайте внесения изменений на узлы агента, если служба поддержки Майкрософт не направляет вас на внесение изменений.

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

Для конфигураций или пакетов, относящихся к рабочей нагрузке, AKS рекомендует использовать Kubernetes DaemonSet.

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

Хотя этот путь рекомендуется, если применяются указанные выше требования, инженерная служба и поддержка AKS не могут помочь в устранении неполадок или диагностике изменений, которые делают узел недоступным из-за развернутого вами DaemonSet.

Проблемы с безопасностью и установка исправлений

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

Для узлов агента, затронутых недостатком безопасности, Майкрософт уведомляет вас о воздействии и шагах по устранению или смягчению проблемы безопасности.

Обслуживание узлов и доступ к ним

Хотя вы можете войти в узлы агента и изменить их, это не рекомендуется, так как изменения могут сделать кластер неподдерживаемым.

Сетевые порты, доступ и группы сетевой безопасности

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

Остановленные, выделенные и неготовые узлы

Если не требуется, чтобы ваши рабочие нагрузки в AKS выполнялись непрерывно, можно остановить кластер AKS, что приведёт к остановке всех пулов узлов и плоскости управления. При необходимости его можно запустить снова. При остановке кластера с помощью az aks stop команды состояние кластера сохраняется до 12 месяцев. Через 12 месяцев состояние кластера и все его ресурсы удаляются.

Удаление всех узлов кластера вручную из API IaaS, Azure CLI или портала Azure не поддерживается для остановки кластера ИЛИ пула узлов AKS. Кластер будет считаться неподдерживаемым и остановлен службой AKS через 30 дней. Затем кластеры подвергаются той же 12-месячной политике сохранения, что и правильно остановленный кластер.

Кластеры с нулевыми узлами Готовые (или всеми Не готовы) и нулевыми Запущенными виртуальными машинами будут отключены через 30 дней.

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

Все кластеры в приостановленной подписке будут остановлены немедленно и удалены через 90 дней. Все кластеры в удаленной подписке будут удалены немедленно.

Неподдерживаемые функции альфа-и бета-версии Kubernetes

AKS поддерживает только стабильные и бета-версии функции в вышестоящем проекте Kubernetes. Если иное не описано, AKS не поддерживает какие-либо альфа-функции, доступные в вышестоящем проекте Kubernetes.

Предварительные версии функций или флаги функций

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

Функции предварительной версии или функции с флагами не предназначены для производственной среды. Регулярные изменения интерфейсов API и поведения компонентов, исправления ошибок и другие изменения могут привести к нестабильной работе и простоям кластеров.

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

Ошибки и проблемы на ранних этапах разработки

Учитывая скорость разработки в вышестоящем проекте Kubernetes, ошибки неизбежны. Некоторые из этих ошибок не могут быть исправлены или обойдены в системе AKS. Вместо этого исправления ошибок требуют более крупных поправок для исходных проектов (таких как Kubernetes, операционные системы узлов или агентов, а также ядро). Для компонентов, принадлежащих Майкрософт (например, таких как облачный провайдер Azure), сотрудники AKS и Azure стремятся устранять проблемы в сообществе на более высоком уровне.

Если первопричина проблемы технической поддержки возникает из-за одной или нескольких вышестоящих ошибок, служба поддержки AKS и инженерные команды будут:

  • Выявят и сопоставят вышестоящие ошибки с любыми дополнительными сведениями, которые помогут объяснить, почему эта проблема влияет на кластер или рабочую нагрузку. Клиенты получают ссылки на необходимые репозитории, чтобы они могли просматривать проблемы и видеть, когда новый выпуск предоставляет исправления.
  • Предоставьте возможные обходные пути или меры по снижению. Если проблему можно смягчить, в репозитории AKS вносится запись о известной проблеме. Объяснение по подаче известных проблем гласит:
    • суть проблемы, включая ссылки на вышестоящее ошибки;
    • Обходное решение и сведения об обновлении или другой сохраняемости решения.
    • приблизительные сроки включения проблемы в соответствии с графиком выпуска вышестоящего проекта.