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


Поддерживаемые версии Kubernetes в службе "Оператор Azure Nexus Kubernetes"

В этом документе представлен обзор схемы управления версиями, используемой для службы Operator Nexus Kubernetes, включая поддерживаемые версии Kubernetes. В ней описываются различия между основными, незначительными и исправлениями, а также приводятся рекомендации по обновлению версий Kubernetes и как выглядит процесс обновления. В документе также рассматривается жизненный цикл поддержки версий и окончание срока действия (EOL) для каждой дополнительной версии Kubernetes.

Сообщество Kubernetes выпускает дополнительные версии примерно каждые три месяца. Начиная с версии 1.19 сообщество Kubernetes увеличило окно поддержки для каждой версии с девяти месяцев до одного года.

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

Версии Kubernetes

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

[major].[minor].[patch]

Examples:
  1.24.7
  1.25.4

Каждый элемент номера версии указывает на общую совместимость с предыдущей версией:

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

Настоятельно рекомендуется оставаться в курсе последних доступных исправлений. Например, если рабочий кластер включен 1.25.4и 1.25.6 является последней доступной версией исправления для серии 1.25 . Как можно скорее выполните обновление до версии 1.25.6, чтобы все ошибки были исправлены и кластер полностью поддерживался. Дополнительные сведения об обновлении кластера см. в документации по обновлению версий Kubernetes.

Календарь выпуска Nexus Kubernetes

Просмотрите предстоящие выпуски версии в календаре выпуска Nexus Kubernetes.

Примечание.

Дополнительные сведения о нашей политике поддержки для управления версиями Kubernetes.

Сведения о прошлом журнале выпусков см . в журнале Kubernetes.

Версия K8s Nexus GA Дата прекращения поддержки Расширенная доступность
1.25 Июнь 2023 г. Декабрь 2023 г. До конца октября 2024 г.
1,26 Сентябрь 2023 г. Мар 2024 г. До конца марта 2025 г.
1.27* Сентябрь 2023 г. Июль 2024, LTS до 2025 г. Неприменимо
1.28 Ноябрь 2023 г. Октябрь 2024 г. До конца октября 2025 г.
1,29 Август 2024 г. Февраль 2025 г. До конца февраля 2026 г.
1.30* Октябрь 2024 г. 2025, LTS до 2026 г. Неприменимо

* Указывает, что версия назначена для долгосрочной поддержки

Компоненты версии службы Nexus Kubernetes

Версия службы "Оператор Nexus Kubernetes" состоит из двух дискретных компонентов, объединенных в одно представление:

  • Версия Kubernetes. Например, 1.25.4 — это версия Kubernetes, развернутая в Операторе Nexus. Эти пакеты предоставляются Azure AKS, включая все версии исправлений, поддерживаемые Оператором Nexus. Дополнительные сведения о версиях Azure AKS см. в статье "Поддерживаемые версии Kubernetes AKS"
  • Пакет версий, который инкапсулирует функции (надстройки) и образ операционной системы, используемый узлами в кластере Operator Nexus Kubernetes, как одно число. Например: 2. Сочетание этих значений представлено в API в виде одного kubernetesVersion. Например, 1.25.4-2 или альтернативно поддерживаемая нотация "v": v1.25.4-2.

Пакеты версий

Расширив версию Kubernetes, чтобы включить дополнительное значение для версии исправления, пакет версий, служба Operator Nexus Kubernetes может учитывать случаи, когда развертывание изменяется, чтобы включить дополнительные обновления, связанные с операционной системой. Такие обновления могут включать в себя, но не ограничиваются: обновленные образы операционной системы, выпуски исправлений для функций (надстроек) и т. д. Пакеты версий всегда совместимы с предыдущими пакетами исправлений в той же версии исправлений, например 1.25.4-2, обратно совместимы с 1.25.4-1.

Изменения конфигурации развернутого кластера Nexus Kubernetes оператора Должны применяться только при обновлении дополнительных версий Kubernetes, а не во время обновления версии исправлений. Примеры изменений конфигурации, которые могут применяться во время дополнительного обновления версии, включают:

  • Изменение конфигурации kube-proxy с помощью iptables на ipvs
  • Изменение CNI с одного продукта на другой

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

Мы можем легко обновить любое небольшое обновление в одной версии Kubernetes до любого небольшого обновления в следующей версии, что обеспечивает гибкость. Например, будет разрешено обновление с версии 1.24.1-x до версии 1.25.4-x независимо от наличия промежуточной версии 1.24.2-x.

Версия компонентов и критические изменения

Обратите внимание на следующие важные изменения, которые необходимо внести перед обновлением до любой из доступных дополнительных версий:

Версия Kubernetes Пакет версий Компоненты Компоненты ОС Критические изменения Примечания.
1.29.6 1 Calico версии 3.27.4
metrics-server версии 0.7.1
Multus версии 4.0.2
azure-arc-servers версии 1.1.0
CoreDNS версии 1.9.4
etcd v3.5.15
sriov-dp версии 3.12.0-86
Csi-nfs версии 4.7.0
csi-volume v0.1.0
Azure Linux 2.0 Критических изменений нет.
1.29.4 1 Calico версии 3.27.4
metrics-server версии 0.7.1
Multus версии 4.0.2
azure-arc-servers версии 1.1.0
CoreDNS версии 1.9.4
etcd v3.5.15
sriov-dp версии 3.12.0-86
Csi-nfs версии 4.7.0
csi-volume v0.1.0
Azure Linux 2.0 Критических изменений нет.
1.28.11 1 Calico версии 3.27.4
metrics-server версии 0.7.1
Multus версии 4.0.2
azure-arc-servers версии 1.1.0
CoreDNS версии 1.9.4
etcd v3.5.15
sriov-dp версии 3.12.0-86
Csi-nfs версии 4.7.0
csi-volume v0.1.0
Azure Linux 2.0 Критических изменений нет.
1.28.9 2 Calico версии 3.27.4
metrics-server версии 0.7.1
Multus версии 4.0.2
azure-arc-servers версии 1.1.0
CoreDNS версии 1.9.4
etcd v3.5.15
sriov-dp версии 3.12.0-86
Csi-nfs версии 4.7.0
csi-volume v0.1.0
Azure Linux 2.0 Критических изменений нет.
1.28.9 1 Calico версии 3.27.3
metrics-server версии 0.7.1
Multus версии 4.0.0
azure-arc-servers версии 1.1.0
CoreDNS версии 1.9.4
etcd v3.5.13
sriov-dp v3.11.0-68
Csi-nfs версии 4.7.0
csi-volume v0.1.0
Azure Linux 2.0 Критических изменений нет. Расширенные доступные исправления: 1.28.0-5
1.27.9 2 Calico версии 3.27.4
metrics-server версии 0.7.1
Multus версии 4.0.2
azure-arc-servers версии 1.1.0
CoreDNS версии 1.9.4
etcd v3.5.15
sriov-dp версии 3.12.0-86
Csi-nfs версии 4.7.0
csi-volume v0.1.0
Azure Linux 2.0 Критических изменений нет.
1.27.9 1 Calico версии 3.27.3
metrics-server версии 0.7.1
Multus версии 4.0.0
azure-arc-servers версии 1.1.0
CoreDNS версии 1.9.4
etcd v3.5.13
sriov-dp v3.11.0-68
Csi-nfs версии 4.7.0
csi-volume v0.1.0
Azure Linux 2.0 Критических изменений нет.
1.27.3 6 Calico версии 3.27.4
metrics-server версии 0.7.1
Multus версии 4.0.2
azure-arc-servers версии 1.1.0
CoreDNS версии 1.9.4
etcd v3.5.15
sriov-dp версии 3.12.0-86
Csi-nfs версии 4.7.0
csi-volume v0.1.0
Azure Linux 2.0 Критических изменений нет.
1.27.3 5 Calico версии 3.27.3
metrics-server версии 0.7.1
Multus версии 4.0.0
azure-arc-servers версии 1.1.0
CoreDNS версии 1.9.4
etcd v3.5.13
sriov-dp v3.11.0-68
Csi-nfs версии 4.7.0
csi-volume v0.1.0
Azure Linux 2.0 Критических изменений нет. Расширенные доступные исправления: 1.27.1-8
1.26.12 2 Calico версии 3.27.4
metrics-server версии 0.7.1
Multus версии 4.0.2
azure-arc-servers версии 1.1.0
CoreDNS версии 1.9.4
etcd v3.5.15
sriov-dp версии 3.12.0-86
Csi-nfs версии 4.7.0
csi-volume v0.1.0
Azure Linux 2.0 Критических изменений нет.
1.26.12 1 Calico версии 3.27.3
metrics-server версии 0.7.1
Multus версии 4.0.0
azure-arc-servers версии 1.1.0
CoreDNS версии 1.9.4
etcd v3.5.13
sriov-dp v3.11.0-68
Csi-nfs версии 4.7.0
csi-volume v0.1.0
Azure Linux 2.0 Критических изменений нет.
1.26.6 6 Calico версии 3.27.4
metrics-server версии 0.7.1
Multus версии 4.0.2
azure-arc-servers версии 1.1.0
CoreDNS версии 1.9.4
etcd v3.5.15
sriov-dp версии 3.12.0-86
Csi-nfs версии 4.7.0
csi-volume v0.1.0
Azure Linux 2.0 Критических изменений нет.
1.26.6 5 Calico версии 3.27.3
metrics-server версии 0.7.1
Multus версии 4.0.0
azure-arc-servers версии 1.1.0
CoreDNS версии 1.9.4
etcd v3.5.13
sriov-dp v3.11.0-68
Csi-nfs версии 4.7.0
csi-volume v0.1.0
Azure Linux 2.0 Критических изменений нет. Расширенные доступные исправления: 1.26.3-8
1.25.11 6 Calico версии 3.27.4
metrics-server версии 0.7.1
Multus версии 4.0.2
azure-arc-servers версии 1.1.0
CoreDNS версии 1.9.4
etcd v3.5.15
sriov-dp версии 3.12.0-86
Csi-nfs версии 4.7.0
csi-volume v0.1.0
Azure Linux 2.0 Критических изменений нет.
1.25.11 5 Calico версии 3.27.3
metrics-server версии 0.7.1
Multus версии 4.0.0
azure-arc-servers версии 1.1.0
CoreDNS версии 1.9.4
etcd v3.5.13
sriov-dp v3.11.0-68
Csi-nfs версии 4.7.0
csi-volume v0.1.0
Azure Linux 2.0 Критических изменений нет.
1.25.11 4 Calico версии 3.27.2
metrics-server версии 0.6.3
Multus версии 3.8.0
azure-arc-servers версии 1.0.0
CoreDNS версии 1.9.3
etcd v3.5.6-5
sriov-dp версии 3.10.0-60
Csi-nfs версии 4.6.0
Azure Linux 2.0 Критических изменений нет.
1.25.6 8 Calico версии 3.27.4
metrics-server версии 0.7.1
Multus версии 4.0.2
azure-arc-servers версии 1.1.0
Исправление CoreDNS версии 1.9.4
etcd v3.5.14
sriov-dp v3.11.0-68
Csi-nfs версии 4.7.0
csi-volume v0.1.0
Azure Linux 2.0 Критических изменений нет.
1.25.6 7 Calico версии 3.27.3
metrics-server версии 0.7.1
Multus версии 4.0.0
azure-arc-servers версии 1.1.0
CoreDNS версии 1.9.4
etcd v3.5.13
sriov-dp v3.11.0-68
Csi-nfs версии 4.7.0
csi-volume v0.1.0
Azure Linux 2.0 Критических изменений нет. Расширенные доступные исправления: 1.25.4-6

Функции пакета версий

Функция Пакет версий Примечания.
Подключение к оркестрации томов зашифровано tls Начиная с 1.28.9-1, 1.28.0-5, 1.27.9-1, 1.27.3-5, 1.26.12-1, 1.26.6-5, 1.25.11-5 и 1.25.6-7
Узлы кластера включены в Azure Arc Начиная с 1.25.6-4, 1.25.11-2, 1.26.3-4, 1.26.6-2, 1.27.1-4, 1.27.3-2 и 1.28.0-2

Обновление версий Kubernetes

Дополнительные сведения об обновлении кластера см. в статье Об обновлении кластера службы "Оператор Azure Nexus Kubernetes".

Политика поддержки версий Kubernetes

Оператор Nexus поддерживает три дополнительных версии Kubernetes:

  • Последняя дополнительная версия общедоступной версии, выпущенная в Операторе Nexus (которая называется N).
  • Две предыдущие дополнительные версии.
    • Каждая поддерживаемая дополнительная версия также поддерживает не более двух последних стабильных исправлений, в то время как предыдущие исправления находятся в расширенной политике доступности в течение времени существования дополнительной версии.

Служба Nexus Kubernetes предоставляет стандартизованную длительность поддержки каждой дополнительной версии Kubernetes, выпущенной. Версии соответствуют двум разным временным шкалам, отражая:

  • Длительность поддержки — как долго поддерживается версия. В конце поддерживаемого периода версия — "Конец жизни".
  • Расширенная доступность— как долго можно выбрать версию для развертывания после окончания срока жизни.

Поддерживаемое окно версий Kubernetes в Операторе Nexus называется "N-2": (N (Последний выпуск) - 2 (дополнительные версии)) и ".letter" является представителем версий исправлений.

Например, если Оператор Nexus вводит 1.17.a сегодня, поддержка предоставляется для следующих версий:

Новая дополнительная версия Список поддерживаемых версий
1.17.a 1.17.a, 1.17.b, 1.16.c, 1.16.d, 1.15.e, 1.15.f

Когда появилась новая дополнительная версия, старейшая поддерживаемая дополнительная версия и выпуски исправлений не поддерживаются. Например, текущий список поддерживаемых версий выглядит следующим образом:

1.17.a
1.17.b
1.16.c
1.16.d
1.15.e
1.15.f

Когда Оператор Nexus выпускает версии 1.18.*, все версии 1.15.* выходят из поддержки.

Сроки поддержки

Служба Nexus Kubernetes обеспечивает поддержку в течение 12 месяцев с первоначального выпуска общедоступной версии AKS для дополнительной версии обычно. Эта временная шкала следует времени azure AKS, которая включает объявленную долгосрочную поддержку версии 1.27.

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

  • Можно развернуть как новые кластеры Оператора Nexus Kubernetes.
  • Может быть целевым объектом обновлений из предыдущих версий. Ограничен обычными путями обновления.
  • Может содержать дополнительные исправления или пакеты версий в дополнительной версии.

Примечание.

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

Окончание жизненного цикла (EOL)

Конец жизни (EOL) означает, что не создаются пакеты исправлений или версий. Возможно, что настроенный кластер больше не может быть обновлен, так как последние поддерживаемые версии больше недоступны. В этом случае единственным способом обновления является полностью воссоздать кластер Nexus Kubernetes с помощью более новой версии, поддерживаемой. Неподдерживаемые обновления Extended availability могут использоваться для возврата в поддерживаемую версию.

Политика расширенной доступности

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

Категория поддержки N-2 до N Расширенная доступность
Обновление от N-3 до поддерживаемой версии Поддерживается Поддерживается
Масштабирование пула узлов Поддерживается Поддерживается
Создание кластера или пула узлов Поддерживается Поддерживается
Компоненты Kubernetes (включая надстройки) Поддерживается Не поддерживается
Обновления компонентов Поддерживается Не поддерживается
Исправления компонентов Поддерживается Не поддерживается
Применение исправлений ошибок Kubernetes Поддерживается Не поддерживается
Применение исправлений безопасности Kubernetes Поддерживается Не поддерживается
Исправления безопасности образа узла Поддерживается Не поддерживается

Примечание.

Оператор Nexus зависит от выпусков и исправлений из Kubernetes, который является проектом Open Source, который поддерживает только скользящее окно из трех дополнительных версий. Оператор Nexus может гарантировать полную поддержку , пока эти версии обслуживаются вышестоящими. Так как нет больше исправлений, создаваемых выше, Оператор Nexus может либо оставить эти версии неотвеченными или вилками. Из-за этого ограничения расширенная доступность не поддерживает ничего от использования вышестоящего потока Kubernetes.

Заброшенные кластеры Nexus Kubernetes

После окончания расширенного периода доступности версия K8s полностью удаляется из Nexus. На этом этапе все существующие кластеры Nexus Kubernetes, основанные на этой версии K8s, будут прекращены. Единственной поддерживаемой операцией в заброшенных кластерах является удаление. Важно, что после отказа от кластера обновление до более поздней версии K8s не будет работать.

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

Можно использовать одну дополнительную версию старее или новее kubectl относительно имеющейся версии kube-apiserver, которая соответствует требованиям политики поддержки Kubernetes для kubectl.

Например, если используется kube-apiserver версии 1.17, то с таким kube-apiserver можно использовать kubectl версий 1.161.18.

Чтобы установить или обновить kubectl до последней версии, запустите:

az aks install-cli

Долгосрочная поддержка (LTS)

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

AKS поддерживает версии Kubernetes, которые находятся в этом окне поддержки сообщества, для отправки исправлений ошибок и обновлений системы безопасности из выпусков сообщества.

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

Типы поддержки

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

AKS предоставляет поддержку сообщества в течение одного года и один год долгосрочной поддержки (LTS) для возврата исправлений безопасности портов из вышестоящего сообщества в нашем общедоступный репозиторий. Наша вышестояющая рабочая группа LTS вносит усилия в сообщество, чтобы предоставить нашим клиентам более длительное окно поддержки.

LTS намерен предоставить вам длительный период времени для планирования и тестирования обновлений в течение двухлетнего периода от общедоступной версии Kubernetes.

Поддержка сообщества Долгосрочная поддержка
Когда использовать Если вы можете поддерживать выпуски Kubernetes вышестоящего выпуска Сценарии, в которых приложения несовместимы с изменениями, введенными в более новых версиях Kubernetes, и вы не можете перейти к непрерывному циклу выпуска из-за технических ограничений или других факторов.
Поддержка версий Три дополнительных версии общедоступной версии Одна версия Kubernetes (в настоящее время 1.27) в течение двух лет

Внимание

Kubernetes версии 1.27 является первой поддерживаемой версией LTS Kubernetes в службе Operator Nexus Kubernetes. Следующая версия LTS после версии 1.27 — 1.30, которая начнет поддержку LTS в октябре 2024 года.

Миграция из LTS в следующий выпуск LTS

Кластеры Nexus Kubernetes не поддерживают прямые обновления между версиями LTS. Чтобы перейти с одной версии LTS на следующую, у вас есть два варианта: создайте новый кластер с требуемой версией LTS и переместите рабочие нагрузки в этот новый кластер или выполните ряд промежуточных обновлений через поддерживаемые версии, прежде чем достичь следующей версии LTS.

Вопросы и ответы

Как корпорация Майкрософт уведомляет о новых версиях Kubernetes?

Этот документ периодически обновляется с запланированными датами новых версий Kubernetes.

Как часто следует ждать обновления версий Kubernetes, чтобы поддерживать продукт в актуальном состоянии?

Начиная с Kubernetes 1.19, открытый код сообщество расширило поддержку до одного года. Оператор Nexus фиксирует включение исправлений и поддержки соответствия вышестоящим обязательствам. Для кластеров Operator Nexus в версии 1.19 и более поздних версий можно обновить как минимум один раз в год, чтобы оставаться в поддерживаемой версии.

Что происходит при обновлении кластера Kubernetes с дополнительной версией, которая не поддерживается?

Если вы находитесь в N-3 версии или более ранней версии, вы находитесь вне окна поддержки. При обновлении с версии N-3 до N-2 вы вернеесь в наше окно поддержки. Например:

  • Если самая старая поддерживаемая версия AKS — 1.25.x, и вы используете версию 1.24.x или более раннюю версию, вы находитесь вне поддержки.
  • Успешное обновление с версии 1.24.x до версии 1.25.x или более поздней версии возвращается в наше окно поддержки.
  • "Обновления на уровне пропуска" не поддерживаются. Для обновления с версии 1.23.x до версии 1.25.x сначала необходимо обновить до версии 1.24.x, а затем до 1.25.x.

Понижение не поддерживается.

Что произойдет, если я не обновляю кластер?

Если вы не обновляете кластер, вы продолжаете получать поддержку версии Kubernetes, которую вы выполняете до конца периода поддержки. После этого вы больше не получите поддержку кластера. Для продолжения получения поддержки необходимо обновить кластер до поддерживаемой версии.

Что произойдет, если я не обновляю кластер до окончания периода расширенной доступности?

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

Что означает "Вне поддержки"?

Формулировка "поддержка не обеспечивается" означает следующее:

  • Используемая версия не входит в список поддерживаемых.
  • Вам будет предложено обновить кластер до поддерживаемой версии при запросе поддержки.

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

Что происходит, когда пользователь масштабирует кластер Kubernetes с неподдерживаемой дополнительной версией?

Для дополнительных версий, не поддерживаемых оператором Nexus, масштабирование должно продолжаться. Так как нет гарантий качества обслуживания, рекомендуется обновить кластер, чтобы вернуть кластер в поддержку.

Можно ли пропустить несколько версий Kubernetes во время обновления кластера?

При обновлении поддерживаемого кластера Operator Nexus Kubernetes не удается пропустить дополнительные версии Kubernetes. Политика отклонений версий плоскостей управления Kubernetes не поддерживает пропуск дополнительных версий. Правила обновления действуют следующим образом:

  • с версии 1.12.x до версии >1.13.x: допускается;
  • с версии 1.13.x до версии >1.14.x: допускается;
  • с версии 1.12.x до версии >1.14.x: не допускается.

Для обновления с версии 1.12.x до версии >1.14.x:

  1. выполните обновление с версии 1.12.x до >1.13.x;
  2. выполните обновление с версии 1.13.x до >1.14.x.

Можно ли создать новый кластер во время расширенного окна доступности?

Да, вы можете создать новый кластер 1.xx.x во время его расширенного окна доступности. Однако рекомендуется создать новый кластер с последней поддерживаемой версией.

Можно ли обновить кластер до более новой версии во время расширенного окна доступности?

Да, вы можете обновить кластер N-3 до N-2 во время расширенного периода доступности. Если кластер находится в настоящее время на N-4, вы можете использовать расширенную доступность для первого обновления с N-4 до N-3, а затем продолжить обновление до поддерживаемой версии (N-2).

Я в окне расширенной доступности, можно ли добавить новые пулы узлов? Или потребуется выполнить обновление?

Да, вы можете добавить пулы узлов в кластер.