Kubernetes upgrade: различия между версиями
Kaf (обсуждение | вклад) |
Kaf (обсуждение | вклад) |
||
Строка 3: | Строка 3: | ||
== Скрипты обновления rootless kubernetes == | == Скрипты обновления rootless kubernetes == | ||
== Подготовка узлов кластера без доступа в Интернет для обновления rootless kubernetes == | Механизм обновления kubernetes-кластера не позволяет проводить обновление узлов кластера с пропуском промежуточных версий. Например, чтобы обновить узлы кластера с минорной версии <code>1.26</code> до минорной версии <code>1.31</code> необходимо последовательно и синхронизировано обновить узлы через промежуточные версии | ||
<code>1.26 -> 1.27 -> 1.28 -> 1.29 -> 1.30 -> 1.31</code>. | |||
Причем при обновлении не допускается, чтобы минорные версии всех обновляемых узлов были соседними. Не допусается, например, обновление программного обеспечения узла с версии <code>1.27</code> до версии <code>1.28</code>, если в кластере есть узлы с версией <code>1.26</code>. | |||
Таким образом для обновления узлов кластера с версии <code>1.26</code> до версии <code>1.28</code> узла кластера должны в рамках локальной сети иметь доступ как к промежуточным версиям <code>RPM-пакетам kubernetes</code>, так и к промежуточным версиям <code>docker-образов kuberbetes</code>. | |||
Промежуточные версии <code>RPM-пакетов kubernetes</code> размещаются на узле с внутренним доменным именем <code>sigstore.local</code>. | |||
Промежуточные версии <code>docker-образов kuberbetes</code> размещаются на узле с внутренним доменным именем <code>registry.local</code>. | |||
Обычно при стандартном разворачивании это один и тот же узел, с которого начиналось разворачивание кластера. | |||
=== Подготовка узлов кластера без доступа в Интернет для обновления rootless kubernetes === | |||
Для обновления kubernetes в сети без доступа в Интернет необходимо наличие следующих архивов: | Для обновления kubernetes в сети без доступа в Интернет необходимо наличие следующих архивов: | ||
Строка 9: | Строка 19: | ||
* <code>kuberRPMS_1.27-1.31.tgz</code>rpm-пакетов kubelet, kubeadm, cri-o и зависимых пакетов всех промежуточных версий. | * <code>kuberRPMS_1.27-1.31.tgz</code>rpm-пакетов kubelet, kubeadm, cri-o и зависимых пакетов всех промежуточных версий. | ||
=== Добавление в локальный регистратор registry.local промежуточных kubernetes docker образов === | ==== Добавление в локальный регистратор registry.local промежуточных kubernetes docker образов ==== | ||
=== Добавление в http-сервер sigstore.local промежуточных kubernetes rpm-пакетов === | ==== Добавление в http-сервер sigstore.local промежуточных kubernetes rpm-пакетов ==== | ||
=== Модификация настроек apt для обновления rpm-пакетов === | ==== Модификация настроек apt для обновления rpm-пакетов ==== |
Версия от 12:46, 9 января 2025
Описание скриптов обновления kubernetes с версии 1.26
Скрипты обновления rootless kubernetes
Механизм обновления kubernetes-кластера не позволяет проводить обновление узлов кластера с пропуском промежуточных версий. Например, чтобы обновить узлы кластера с минорной версии 1.26
до минорной версии 1.31
необходимо последовательно и синхронизировано обновить узлы через промежуточные версии
1.26 -> 1.27 -> 1.28 -> 1.29 -> 1.30 -> 1.31
.
Причем при обновлении не допускается, чтобы минорные версии всех обновляемых узлов были соседними. Не допусается, например, обновление программного обеспечения узла с версии 1.27
до версии 1.28
, если в кластере есть узлы с версией 1.26
.
Таким образом для обновления узлов кластера с версии 1.26
до версии 1.28
узла кластера должны в рамках локальной сети иметь доступ как к промежуточным версиям RPM-пакетам kubernetes
, так и к промежуточным версиям docker-образов kuberbetes
.
Промежуточные версии RPM-пакетов kubernetes
размещаются на узле с внутренним доменным именем sigstore.local
.
Промежуточные версии docker-образов kuberbetes
размещаются на узле с внутренним доменным именем registry.local
.
Обычно при стандартном разворачивании это один и тот же узел, с которого начиналось разворачивание кластера.
Подготовка узлов кластера без доступа в Интернет для обновления rootless kubernetes
Для обновления kubernetes в сети без доступа в Интернет необходимо наличие следующих архивов:
amd64_27-31_tar.xz
- архив docker-образов всех промежуточных версий;kuberRPMS_1.27-1.31.tgz
rpm-пакетов kubelet, kubeadm, cri-o и зависимых пакетов всех промежуточных версий.