Обновление
Содержание
Установите последнюю версию плагина Global Alauda Service Mesh Essentials ClusterЗагрузите последние версии Operator в глобальный и целевой кластерыОбновление компонентов business-кластераПеред обновлениемПроцесс обновленияОперации обновленияОбновление компонентов service mesh в кластере, не относящихся к IstioРазвертывание новой версии istiodПроверка наличия EnvoyFilters в кластереОбновление всех data plane Istio в кластереВывод из эксплуатации старой версии istiod в кластереУстановите последнюю версию плагина Global Alauda Service Mesh Essentials Cluster
Пожалуйста, ознакомьтесь с Alauda Service Mesh Essentials для получения инструкций по установке.
Загрузите последние версии Operator в глобальный и целевой кластеры
Загрузите последние версии следующих Operator в кластер global и целевой кластер (пожалуйста, не устанавливайте их вручную):
- Operator
Alauda Service Mesh - Operator
Flagger - Operator
Alauda Build of Jaeger - Operator
Alauda Build of OpenTelemetry
Процедуру загрузки с использованием инструмента violet см. в разделе Установка Operator.
При загрузке Operator с помощью violet push не добавляйте параметр --target-catalog-source — используйте каталог источника по умолчанию, определенный в Operator.
Обновление компонентов business-кластера
Перед обновлением
Платформа предоставляет canary-обновление для Istio в service mesh, при котором сначала развертывается новая версия компонента istiod. После обновления всех data plane старая версия компонента istiod выводится из эксплуатации.
Учитывая сильную зависимость между версиями Istio и Kubernetes, перед обновлением Istio убедитесь, что текущая версия Kubernetes кластера соответствует требованиям к обновлению Istio, чтобы успешно завершить canary-обновление.
В таблице ниже показаны поддерживаемые пути обновления Istio для текущей версии платформы и требуемые версии Kubernetes для этих путей.
Примечание:
- В таблице указаны только основные версии Istio и Kubernetes; минорные версии не влияют на совместимость.
- Проверить текущие запущенные версии Istio и Kubernetes в кластере можно в списке Components.
- Если текущая версия Kubernetes кластера ниже требуемой для обновления Istio, необходимо обновить Kubernetes до совместимой версии через Обновление компонентов.
- Дополнительные сведения см. в Поддерживаемых версиях Kubernetes для Istio в сообществе.
Процесс обновления
Полный процесс обновления service mesh включает следующие шаги:
- Обновите компоненты service mesh, не относящиеся к Istio, в кластере, например asm operator, flagger operator и т. д.
- Разверните новую версию istiod в кластере.
- Проверьте, есть ли в кластере EnvoyFilters.
- Обновите все data plane Istio в кластере.
- Выведите из эксплуатации старую версию istiod в кластере.
Операции обновления
Обновление компонентов service mesh в кластере, не относящихся к Istio
- В левом меню Platform Management нажмите Service Mesh > Meshes.
- Нажмите на
Service Mesh Name, который необходимо обновить, чтобы перейти к сведениям о mesh. - В области Mesh Deployment на странице сведений о mesh отображается список кластеров, в которых развернут service mesh. Нажмите на
Cluster Name, чтобы открыть страницу сведений о кластере в новой вкладке. - Переключитесь на Components на странице сведений о кластере и нажмите upgrade, чтобы обновить компоненты service mesh, не относящиеся к Istio, в кластере до последней версии. Подробную документацию по обновлению компонентов см. в разделе Обновление компонентов.
Примечание: К компонентам service mesh, не относящимся к Istio, относятся asm, Flagger Operator, Asm Operator, Jaeger Operator.
Развертывание новой версии istiod
Примечание: Перед развертыванием новой версии istiod ознакомьтесь с разделом Перед обновлением, чтобы убедиться, что версия Kubernetes кластера соответствует требованиям пути обновления.
- Вернитесь на страницу сведений о mesh и в области Mesh Deployment нажмите кнопку Upgrade справа от
Istio Versionсоответствующего кластера. Во всплывающем окне будет показан путь обновления для Istio. - Нажмите кнопку Upgrade во всплывающем окне.
Проверка наличия EnvoyFilters в кластере
-
В левом меню Platform Management нажмите Service Mesh > EnvoyFilter.
Примечание: Если на платформе есть несколько service mesh, вы можете переключить service mesh на тот, в котором находится кластер, через верхнюю панель навигации.
-
Проверьте, есть ли данные в списке EnvoyFilter.
- Если данные отсутствуют, проверка завершена.
- Если данные присутствуют, свяжитесь с автором EnvoyFilter, чтобы адаптировать все EnvoyFilter к новой версии Istio, или обратитесь в техническую поддержку.
Обновление всех data plane Istio в кластере
Data plane Istio в кластере включают Sidecar, ingress gateway и egress gateway.
Способ 1: Обновление через интерактивную командную строку
Интерактивный инструмент командной строки позволяет пакетно обновить все Sidecar и gateway в кластере. Этот способ подходит пользователям, знакомым с работой в командной строке, особенно тем, кому нужно быстро обновить весь кластер целиком.
Примечание: Вы также можете использовать параметр быстрого обновления без подтверждения для выполнения обновления.
Примечание: Процесс rolling update для ingress и egress gateway включает сначала удаление старых Pods, а затем создание новых Pods до тех пор, пока все Pods не будут обновлены до новой версии образа data plane. Поэтому, если у gateway только один Pod, он будет недоступен во время обновления gateway.
Способ 2: Обновление через UI
Обновление через UI позволяет выполнять пакетное обновление по разным namespace или указывать для обновления один service/gateway. Этот способ подходит пользователям, которые предпочитают работать в визуальном интерфейсе, особенно тем, кому нужен гибкий выбор объектов обновления.
Обновление Ingress и Egress Gateway
- В левом меню нажмите Service Mesh > Gateways.
Примечание: В списке gateway кластера значок
справа от Istio Version означает, что proxy data plane gateway можно обновить. - Нажмите кнопку Upgrade справа от Istio Version и выберите Confirm.
Обновление Sidecar
- В левом меню Platform Management нажмите Service Mesh > Meshes.
- Нажмите на
Service Mesh Name, для которого требуется обновить Sidecar, чтобы перейти к сведениям о mesh. - В области Namespaces на странице сведений о mesh отображается список namespace, управляемых service mesh. Нажмите на
Namespace Name, чтобы открыть Service Mesh в новой вкладке и перейти в namespace, где расположен Sidecar. Примечание: Выполняйте обновление Sidecar последовательно для всех namespace. - В левом меню нажмите Service List.
Примечание: Когда рядом с
Service Nameотображается значок
, это означает, что Sidecar службы можно обновить. - Нажмите Batch Upgrade Sidecars.
Примечание: Чтобы обновить одну службу, нажмите кнопку Upgrade справа от значка
в записи службы. - Выберите все службы, одну службу или несколько служб, а затем нажмите Upgrade. Примечание: Платформа обновит Sidecar службы, выполнив rolling update Pods с разными текущими и целевыми версиями Sidecar. Если обновление завершится ошибкой, проверьте события группы контейнеров в Container Platform, чтобы понять причину сбоя, или попробуйте Re-upgrade.
Примечание: Sidecar обновляется через rolling update Deployment службы, чтобы завершить обновление образа data plane Pod. Поэтому, если у службы есть долгие соединения, во время rolling update Pod будет кратковременный перерыв в обслуживании.
Вывод из эксплуатации старой версии istiod в кластере
Старая версия istiod в кластере может быть выведена из эксплуатации только после того, как все data plane Istio в кластере будут обновлены.
Внимание:
- Если старая версия istiod в кластере не будет выведена из эксплуатации, вы не сможете использовать функции добавления кластера и настройки Sidecar в service mesh.
- Когда на платформе доступна новая версия для обновления, если хотя бы в одном кластере старая версия istiod не выведена из эксплуатации, платформа не сможет быть обновлена.
- В multi-cluster service mesh старую версию istiod в кластерах можно выводить из эксплуатации только последовательно, после того как все кластеры завершат обновление data plane Istio.
Шаги
- Вернитесь на страницу сведений о mesh и в области Mesh Deployment нажмите кнопку Decommission Old Version справа от
Istio Versionсоответствующего кластера. Отобразится всплывающее окно Decommission Old Version. - Нажмите кнопку Confirm во всплывающем окне.
Примечание: Если в кластере есть data plane, которые не были обновлены, после нажатия Decommission Old Version во всплывающем окне будут показаны ingress gateway, egress gateway и Sidecar в кластере, которые не были обновлены, что позволяет быстро отследить data plane, требующие обновления.