Долгосрочная поддержка версий Служба Azure Kubernetes (AKS)
Сообщество Kubernetes выпускает новую дополнительную версию примерно каждые четыре месяца с окном поддержки для каждой версии в течение одного года. В Служба Azure Kubernetes (AKS) это окно поддержки называется поддержкой сообщества.
AKS поддерживает версии Kubernetes, которые находятся в этом окне поддержки сообщества для отправки исправлений ошибок и обновлений системы безопасности из выпусков сообщества. Хотя частота выпуска поддержки сообщества обеспечивает преимущества, это требует, чтобы вы будьте в курсе выпусков Kubernetes, которые могут быть трудными в зависимости от зависимостей вашего приложения и темпа изменений в экосистеме Kubernetes.
Чтобы управлять обновлениями версий Kubernetes, AKS предоставляет вариант долгосрочной поддержки (LTS), который расширяет окно поддержки для версии Kubernetes, чтобы предоставить вам больше времени для планирования и тестирования обновлений до более новых версий Kubernetes.
Типы поддержки AKS
Через примерно один год данная дополнительная версия Kubernetes выходит из поддержки сообщества, что делает исправления ошибок и обновления системы безопасности недоступными для кластеров AKS.
AKS предоставляет один год поддержки сообщества и один год долгосрочной поддержки для исправления безопасности портов из вышестоящего сообщества в общедоступном репозитории AKS. Вышестоящей рабочей группе LTS вносятся усилия в сообщество, чтобы предоставить клиентам более длительное окно поддержки. LTS намерен предоставить вам длительный период времени для планирования и тестирования обновлений в течение двухлетнего периода от общедоступной версии Kubernetes.
Поддержка сообщества | Долгосрочная поддержка | |
---|---|---|
Когда использовать | Если вы можете поддерживать выпуски Kubernetes вышестоящего выпуска | Когда вам нужен контроль над переносом из одной версии в другую |
Поддержка версий | Три дополнительных версии общедоступной версии | Одна версия Kubernetes (в настоящее время 1.27) в течение двух лет |
Включение долгосрочной поддержки
Включение LTS требует перемещения кластера на уровень "Премиум" и явного выбора плана поддержки LTS. Хотя вы можете включить LTS, если кластер находится в поддержке сообщества*, вы будете взиматься после включения уровня "Премиум".
Включение LTS в новом кластере
Создайте новый кластер с поддержкой LTS с помощью
az aks create
команды.Следующая команда создает новый кластер AKS с поддержкой LTS с помощью Kubernetes версии 1.27 в качестве примера. Сведения о доступных выпусках Kubernetes см. в средстве отслеживания выпусков AKS.
az aks create \ --resource-group <resource-group-name> \ --name <cluster-name> \ --tier premium \ --k8s-support-plan AKSLongTermSupport \ --kubernetes-version 1.27 \ --generate-ssh-keys
Включение LTS в существующем кластере
Включите LTS в существующем кластере
az aks update
с помощью команды.az aks update --resource-group <resource-group-name> --name <cluster-name> --tier premium --k8s-support-plan AKSLongTermSupport
Переход на последнюю версию LTS
Вышестоящем сообществе Kubernetes поддерживается путь обновления с двумя дополнительными версиями. Процесс переносит объекты в кластере Kubernetes в рамках процесса обновления и предоставляет проверенный и сертифицированный путь миграции.
Если вы хотите выполнить миграцию на месте, служба AKS переместит плоскость управления с предыдущей версии LTS на последнюю, а затем переносит плоскость данных. Чтобы выполнить обновление на месте до последней версии LTS, необходимо указать версию Kubernetes с поддержкой LTS в качестве целевого объекта обновления.
Выполните миграцию в последнюю версию LTS с помощью
az aks upgrade
команды.Следующая команда использует Kubernetes версии 1.32.2 в качестве примера версии. Сведения о доступных выпусках Kubernetes см. в средстве отслеживания выпусков AKS.
az aks upgrade --resource-group <resource-group-name> --name <cluster-name> --kubernetes-version 1.32.2
Примечание.
1.30 — следующая версия LTS после версии 1.27. Вы можете выбрать LTS из кластера версии 1.30, выполнив описанные выше действия. LTS версии 1.27 будет продолжаться к июля 2025 года. Поддерживаемые исправления в LTS сегодня: [1.27.100] [https://github.com/aks-lts/kubernetes/blob/release-1.27-lts/CHANGELOG/CHANGELOG-1.27.md#v127100-akslts]
Отключение долгосрочной поддержки в существующем кластере
Отключение LTS в существующем кластере требует перемещения кластера на бесплатный или стандартный уровень и явного выбора плана поддержки KubernetesOfficial.
Существует примерно два года между одной версией LTS и следующей. Вместо поддержки вышестоящей миграции более двух дополнительных версий существует высокая вероятность того, что ваше приложение зависит от API Kubernetes, которые были устарели. Мы рекомендуем тщательно протестировать приложение в целевой версии LTS Kubernetes и выполнить сине-зеленое развертывание из одной версии в другую.
Отключите LTS в существующем кластере
az aks update
с помощью команды.az aks update --resource-group <resource-group-name> --name <cluster-name> --tier [free|standard] --k8s-support-plan KubernetesOfficial
Обновите кластер до более поздней поддерживаемой версии с помощью
az aks upgrade
команды.Следующая команда использует Kubernetes версии 1.28.3 в качестве примера версии. Сведения о доступных выпусках Kubernetes см. в средстве отслеживания выпусков AKS.
az aks upgrade --resource-group <resource-group-name> --name <cluster-name> --kubernetes-version 1.28.3
Неподдерживаемые надстройки и функции
Команда AKS в настоящее время отслеживает версии надстроек, где существует поддержка сообщества Kubernetes. После того как версия покидает службу поддержки сообщества, мы будем полагаться на проекты с открытым кодом для управляемых надстроек для продолжения этой поддержки. Из-за различных внешних факторов некоторые надстройки и функции могут не поддерживать версии Kubernetes за пределами этих вышестоящих окон поддержки сообщества.
В следующей таблице приведен список надстроек и функций, которые не поддерживаются и причины, по которым они не поддерживаются:
Надстройка / компонент | Причина, по которой она не поддерживается |
---|---|
Istio | Цикл поддержки Istio короткий (шесть месяцев), и выпуски обслуживания для Kubernetes 1.27 не будут. |
Кеда | Не удается гарантировать совместимость будущих версий с Kubernetes 1.27. |
Calico | Требуется соглашение Calico Enterprise, прошедшее поддержку сообщества. |
Служба управления ключами (KMS). | KMSv2 заменяет KMS во время этого цикла LTS. |
Dapr | Расширения AKS не поддерживаются. |
Контроллер входящего трафика Шлюза приложений | Миграция в шлюз приложений для контейнеров происходит в течение периода LTS. |
Открытая сетка служб | OSM устарел. |
Удостоверение pod AAD | Не рекомендуется использовать вместо удостоверения рабочей нагрузки. |
Примечание.
Вы не можете переместить кластер в долгосрочную поддержку, если включены какие-либо из этих надстроек или компонентов.
Хотя эти управляемые надстройки AKS не поддерживаются корпорацией Майкрософт, их версии с открытым исходным кодом можно установить в кластере, если вы хотите использовать их после поддержки сообщества.
Как решить следующую версию LTS
Версии LTS Kubernetes доступны в течение двух лет из общедоступной версии, и мы помечаем более высокую версию Kubernetes как LTS на основе следующих критериев:
- Достаточно времени для клиентов для миграции с предыдущей версии LTS на текущую версию LTS.
- В предыдущей версии было два года поддержки.
Ознакомьтесь с заметками о выпуске AKS, чтобы оставаться в курсе того, когда вы сможете планировать миграцию.
Часто задаваемые вопросы
Срок действия поддержки сообщества ДЛЯ AKS 1.27 истекает в июле 2024 года. Можно ли создать кластер AKS версии 1.27 после этой даты?
Да, если В кластере включенА поддержка LTS, можно создать новый кластер AKS с версией 1.27 после завершения окна поддержки сообщества.
Можно ли включить и отключить LTS в AKS 1.27 после окончания поддержки сообщества?
Вы можете включить план поддержки LTS в AKS 1.27 после окончания поддержки сообщества. Однако вы не можете отключить LTS в AKS 1.27 после окончания поддержки сообщества.
У меня есть кластер, работающий в версии 1.27. Означает ли это автоматически в LTS?
Нет, необходимо явно включить LTS в кластере для получения поддержки LTS. Включение LTS также требует наличия на уровне "Премиум".
Что такое модель ценообразования для LTS?
LTS доступен на уровне "Премиум", см. дополнительные сведения о ценах ценовой категории "Премиум".
После включения LTS функция autoUpgradeChannel кластера изменилась на канал исправлений
Это ожидаемо. Если для кластера AKS не было определенного параметра autoUpgradeChannel, он по умолчанию будет использоваться patch
для LTS.
Azure Kubernetes Service