Kubernetes upgrade

Материал из ALT Linux Wiki

Описание скриптов обновления 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.tgzrpm-пакетов kubelet, kubeadm, cri-o и зависимых пакетов всех промежуточных версий.

Добавление в локальный регистратор registry.local промежуточных kubernetes docker образов

Добавление в http-сервер sigstore.local промежуточных kubernetes rpm-пакетов

Модификация настроек apt для обновления rpm-пакетов