Обновите глобальный кластер
состоит из глобального кластера и одного или нескольких рабочих кластеров. Глобальный кластер обязательно должен быть обновлён до любых рабочих кластеров.
В этом документе описана процедура обновления глобального кластера.
Если глобальный кластер настроен с решением global DR (Disaster Recovery), строго следуйте процедуре global DR. В противном случае следуйте Стандартной процедуре .
Стандартная процедура
Если вы выполняете обновление с 3.16.x или 3.18.x и у вас установлены Application Services, см. руководство по обновлению Application Services для выполнения дополнительных шагов, которые необходимо выполнить перед обновлением глобального кластера.
Загрузите образы
Скопируйте core package на любой узел control plane глобального кластера. Распакуйте пакет и выполните cd в распакованный каталог.
-
Если глобальный кластер использует встроенный registry, выполните:
-
Если глобальный кластер использует внешний registry, также необходимо указать адрес registry:
Если вы планируете обновлять Operator и Cluster Plugin вместе при обновлении глобального кластера, вы можете заранее загрузить их образы в registry глобального кластера. Инструкции по массовой загрузке см. в разделе Загрузка только образов из всех пакетов в каталоге.
Загрузка образов обычно занимает около 2 часов, в зависимости от производительности сети и диска.
Если ваша платформа настроена на глобальное аварийное восстановление (DR), помните, что резервному глобальному кластеру также требуется загрузка образов. Обязательно планируйте окно обслуживания соответствующим образом.
При использовании violet для загрузки пакетов в резервный кластер параметр --dest-repo <VIP addr of standby cluster> должен быть указан.
В противном случае пакеты будут загружены в image repository основного кластера, что не позволит резервному кластеру устанавливать или обновлять расширения.
Также учтите, что необходимо предоставить либо данные аутентификации image registry резервного кластера, либо параметр --no-auth.
Подробности о подкоманде violet push см. в разделе Загрузка пакетов.
Запустите обновление
После завершения загрузки образов выполните следующую команду, чтобы начать процесс обновления:
Дождитесь завершения скрипта, прежде чем продолжать.
Если вы уже заранее загрузили образы Operator и Cluster Plugin в registry глобального кластера, затем вы можете выполнить Создание только CR из всех пакетов в каталоге. После выполнения этой команды подождите около 10–15 минут, пока для функциональных компонентов не появятся уведомления об обновлении. После этого вы сможете обновить Operator и Cluster Plugin вместе в рамках последующих шагов обновления.
При обновлении глобального кластера не используйте параметр --clusters для создания CR в рабочих кластерах на шаге Создание только CR из всех пакетов в каталоге.
Это может привести к ошибкам обновления при последующих обновлениях рабочих кластеров.
Обновите глобальный кластер
Если вы выполняете обновление с 3.16 или 3.18 и на платформе установлены Data Services, при обновлении кластеров вам также необходимо обновить связанные расширения.
Дополнительные сведения см. в разделе Обновление Data Services.
- Войдите в Web Console глобального кластера и переключитесь в представление Administrator.
- Перейдите в Clusters > Clusters.
- Щёлкните кластер
global, чтобы открыть его страницу сведений. - Перейдите на вкладку Functional Components.
- Нажмите кнопку Upgrade.
Просмотрите доступные обновления компонентов в диалоговом окне и подтвердите продолжение.
- Обновление версии Kubernetes необязательно. Однако, поскольку перебои в работе сервиса могут возникнуть в любом случае, мы рекомендуем включить обновление Kubernetes, чтобы избежать нескольких окон обслуживания.
- Если в глобальном кластере установлен плагин Alauda Container Platform GitOps и после обновления его pod'ы работают некорректно, см. Обновление Alauda Container Platform GitOps.
Установите плагин Product Docs
Плагин Alauda Container Platform Product Docs предоставляет доступ к документации продукта внутри платформы. Все ссылки справки в платформе будут направлять пользователей на эту документацию. Если этот плагин не установлен, при нажатии ссылок справки в платформе будет возникать ошибка доступа 404.
Начиная с 4.0 встроенная документация продукта была выделена в плагин Alauda Container Platform Product Docs. Если вы выполняете обновление с 3.x, вам необходимо установить этот плагин, выполнив следующие шаги:
-
Перейдите в Administrator.
-
В левой боковой панели нажмите Marketplace > Cluster Plugins и выберите кластер
global. -
Найдите плагин Alauda Container Platform Product Docs и нажмите Install.
(При необходимости) Установите Service Mesh Essentials
Если установлен Service Mesh v1, перед обновлением рабочих кластеров ознакомьтесь с документацией Alauda Service Mesh Essentials Cluster Plugin.
После обновления
Процедура global DR
Проверьте согласованность данных
Следуйте обычным процедурам проверки global DR, чтобы убедиться, что данные в резервном глобальном кластере согласованы с основным глобальным кластером.
Если обнаружены несоответствия, не удаляйте плагин синхронизации etcd на следующем шаге и обратитесь в техническую поддержку перед продолжением. Удаление плагина, когда в резервном глобальном кластере отсутствуют данные, которые есть в основном, может привести к некорректному разрешению owner references, а объекты Machine узлов рабочих кластеров — включая кластеры immutable-OS, где это приводит к уничтожению базовой виртуальной машины — могут быть удалены.
На обоих кластерах выполните следующую команду, чтобы убедиться, что ни один узел Machine не находится в состоянии, отличном от running:
Если такие узлы существуют, обратитесь в техническую поддержку для их устранения, прежде чем продолжать.
Удалите плагин синхронизации etcd
Войдите на любой узел control plane основного глобального кластера, затем выполните:
Загрузите образы
Выполните шаг Загрузите образы как на резервном кластере, так и на основном кластере.
Подробности см. в разделе Загрузка образов в стандартной процедуре.
Обновите резервный кластер
Для выполнения обновления требуется доступ к Web Console резервного кластера.
Перед продолжением убедитесь, что ресурс ProductBase резервного кластера корректно настроен с VIP кластера в spec.alternativeURLs.
Если это не так, обновите конфигурацию следующим образом:
На резервном кластере выполните шаги из Стандартной процедуры, чтобы завершить обновление.
Обновите основной кластер
После обновления резервного кластера выполните Стандартную процедуру на основном кластере.
Переустановите плагин синхронизации etcd
Перед переустановкой убедитесь, что порт 2379 корректно перенаправляется с обоих VIP глобального кластера на их узлы control plane.
Чтобы переустановить плагин:
- Откройте Web Console резервного глобального кластера по его IP или VIP.
- Переключитесь в представление Administrator.
- Перейдите в Marketplace > Cluster Plugins.
- Выберите кластер
global. - Найдите Alauda Container Platform etcd Synchronizer, нажмите Install и укажите необходимые параметры.
Чтобы проверить установку:
Проверьте статус синхронизации
Выполните следующую команду, чтобы проверить статус синхронизации:
Пояснение к выводу:
"LOCAL ETCD missed keys:"– ключи существуют в основном кластере, но отсутствуют в резервном. Это часто устраняется после перезапуска pod."LOCAL ETCD surplus keys:"– ключи существуют в резервном кластере, но отсутствуют в основном. Перед удалением обсудите их с вашей командой эксплуатации.