Версии платформы и Kubernetes
В данном разделе описана модель версий Nova Container Platform: как связаны версия платформы и версия Kubernetes и по каким правилам они обновляются.
1. Версия платформы
До версии 10.0 Nova Container Platform выпускалась в нескольких параллельных линейках (5.x, 6.x, 7.x), и мажорная версия платформы была привязана к версии Kubernetes.
Начиная с версии 10.0 версия платформы одна, например 10.0.0. Она не привязана к версии Kubernetes: версия Kubernetes стала параметром кластера.
2. Версия Kubernetes
Каждая версия платформы поддерживает три версии Kubernetes. Версия Kubernetes задается в формате «мажорная.минорная» в параметре clusterConfiguration.k8sRelease манифеста установки, а патч-версию выбирает платформа.
Версии Kubernetes, поддерживаемые в Nova Container Platform 10.0.0:
Версия Kubernetes (k8sRelease) |
Патч-версия по умолчанию |
|---|---|
1.32 |
1.32.13 |
1.33 |
1.33.13 |
1.34 |
1.34.11 |
Версию Kubernetes выбирают при установке платформы: в диалоге nova-ctl init или в поле clusterConfiguration.k8sRelease манифеста. Значения по умолчанию у параметра нет. Подробнее см. в разделе Установка платформы. Инициализация.
3. Редакция платформы
Редакция определяет вариант поставки платформы. Она задается на уровне Nova Universe: все кластеры одного Nova Universe одной редакции. В манифесте установки редакция указывается в параметре edition со значением standard.
4. Правила обновления
Версия платформы и версия Kubernetes задаются одной командой nova-ctl cluster update с двумя обязательными параметрами:
-
--version— версия платформы после обновления; -
--k8s-release— версия Kubernetes после обновления.
При обновлении действуют следующие правила:
-
Версию Kubernetes можно выбрать только из версий, которые поддерживает целевая версия платформы.
-
Kubernetes поднимается не больше чем на одну минорную версию за раз, без смены мажорной версии. Например, переход 1.32 → 1.34 выполняется в два шага: 1.32 → 1.33 → 1.34.
Поддерживаются три сценария обновления:
-
Только Kubernetes: версия платформы остается прежней, в
--versionуказывается текущая версия платформы, в--k8s-release— следующая минорная версия Kubernetes. Подробнее — в разделе Обновление версии Kubernetes. -
Только платформа: в
--versionуказывается новая версия платформы, в--k8s-release— текущая версия Kubernetes. -
Платформа и Kubernetes: в
--versionуказывается новая версия платформы, в--k8s-release— следующая минорная версия Kubernetes из поддерживаемых новой версией платформы.