Обновление
Содержание
Установите последний плагин кластеров Global Alauda Servie Mesh EssentialsЗагрузите последние Operator в глобальный и целевой кластерыОбновите компоненты бизнес-кластераПеред обновлениемПроцесс обновленияОперации обновленияОбновите не-Istio компоненты service mesh в кластереРазверните новую версию istiodПроверьте, есть ли в кластере EnvoyFiltersОбновите все Istio data plane в кластереВыведите из эксплуатации старую версию istiod в кластереУстановите последний плагин кластеров Global Alauda Servie Mesh Essentials
Пожалуйста, перейдите к Alauda Service Mesh Essentials для получения инструкций по установке.
Загрузите последние Operator в глобальный и целевой кластеры
Загрузите последние версии следующих Operator в кластер global и целевой кластер (пожалуйста, не устанавливайте их вручную):
Alauda Service MeshOperatorFlaggerOperatorAlauda Build of JaegerOperatorAlauda Build of OpenTelemetryOperator
Для процедуры загрузки с использованием инструмента violet перейдите к Установка Operator.
При загрузке Operator с помощью violet push не добавляйте параметр --target-catalog-source — используйте источник каталога по умолчанию, определенный внутри Operator.
Обновите компоненты бизнес-кластера
Перед обновлением
Платформа предоставляет canary-обновление для Istio в service mesh, при котором сначала разворачивается новая версия компонента istiod. После того как все data plane будут обновлены, старая версия компонента istiod выводится из эксплуатации.
Учитывая тесную зависимость между версиями Istio и Kubernetes, перед обновлением Istio убедитесь, что текущая версия Kubernetes в кластере соответствует требованиям к обновлению Istio, чтобы успешно завершить canary-обновление.
В таблице ниже показаны поддерживаемые пути обновления Istio для текущей версии платформы и требуемые версии Kubernetes для этих путей.
Примечание:
- В таблице указаны только major-версии Istio и Kubernetes; minor-версии не влияют на совместимость.
- Вы можете проверить текущие запущенные версии Istio и Kubernetes в кластере, перейдя к списку Components.
- Если текущая версия Kubernetes в кластере ниже требуемой версии для обновления Istio, необходимо обновить Kubernetes до совместимой версии через Обновление компонентов.
- Дополнительные сведения см. в Community's Supported Kubernetes Versions for Istio.
Процесс обновления
Полный процесс обновления service mesh включает следующие шаги:
- Обновить не-Istio компоненты service mesh в кластере, такие как asm operator, flagger operator и т. д.
- Развернуть новую версию istiod в кластере.
- Проверить, есть ли в кластере EnvoyFilters.
- Обновить все Istio data plane в кластере.
- Вывести из эксплуатации старую версию istiod в кластере.
Операции обновления
Обновите не-Istio компоненты service mesh в кластере
- В левом меню Platform Management нажмите Service Mesh > Meshes.
- Нажмите
Service Mesh Name, который требуется обновить, чтобы перейти к сведениям о mesh. - В области Mesh Deployment на странице сведений о mesh отображается список кластеров, в которых развернута service mesh. Нажмите
Cluster Name, чтобы открыть страницу сведений о кластере в новой вкладке. - Переключитесь на Components на странице сведений о кластере и нажмите upgrade, чтобы обновить не-Istio компоненты service mesh в кластере до последней версии. Подробную документацию по обновлению компонентов см. в разделе Обновление компонентов.
Примечание: Не-Istio компоненты service mesh включают 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, чтобы адаптировать все EnvoyFilters к новой версии Istio, или обратитесь в техническую поддержку.
Обновите все Istio data plane в кластере
Istio data plane в кластере включают Sidecars, ingress gateways и egress gateways.
Способ 1: Обновление через интерактивный command line tool
Интерактивный command line tool позволяет пакетно обновить все Sidecars и gateways в кластере. Этот способ подходит пользователям, знакомым с операциями в command line, особенно тем, кому нужно быстро обновить весь кластер целиком.
Примечание: Вы также можете использовать параметр быстрого обновления без подтверждения для выполнения обновления.
Примечание: Процесс rolling update для ingress и egress gateways включает сначала удаление старых Pods, а затем создание новых Pods до тех пор, пока все Pods не будут обновлены до новой версии образа data plane. Поэтому, если у gateway только один Pod, он будет недоступен во время обновления gateway.
Способ 2: Обновление через UI
Обновление через UI позволяет выполнять пакетное обновление по разным namespace или указывать для обновления один service/gateway. Этот способ подходит пользователям, которые предпочитают работать в визуальном интерфейсе, особенно тем, кому нужен гибкий выбор целей обновления.
Обновление Ingress и Egress Gateways
- В левом меню нажмите Service Mesh > Gateways.
Примечание: В списке gateway кластера значок
справа от Istio Version означает, что data plane proxy gateway можно обновить. - Нажмите кнопку Upgrade справа от Istio Version и Confirm.
Обновление Sidecars
- В левом меню Platform Management нажмите Service Mesh > Meshes.
- Нажмите
Service Mesh Name, в котором требуется обновить Sidecars, чтобы перейти к сведениям о 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 в кластере можно вывести из эксплуатации только после того, как все Istio data plane в кластере будут обновлены.
Предостережение:
- Если старая версия istiod в кластере не будет выведена из эксплуатации, вы не сможете использовать функции добавления кластера и настройки Sidecar в service mesh.
- Когда на платформе появляется новая версия, доступная для обновления, если в каком-либо кластере старая версия istiod не выведена из эксплуатации, обновление платформы невозможно.
- В multi-cluster service mesh старую версию istiod в кластерах можно выводить из эксплуатации только последовательно, после того как все кластеры завершат обновление Istio data plane.
Шаги
- Вернитесь на страницу сведений о mesh и в области Mesh Deployment нажмите кнопку Decommission Old Version справа от
Istio Versionсоответствующего кластера. Будет отображено всплывающее окно Decommission Old Version. - Нажмите кнопку Confirm во всплывающем окне.
Примечание: Если в кластере есть data plane, которые не были обновлены, после нажатия Decommission Old Version во всплывающем окне будут отображены ingress gateways, egress gateways и Sidecars в кластере, которые не были обновлены, что позволяет быстро определить data plane, требующие обновления.