Установка Alauda Service Mesh
Установка Alauda Service Mesh состоит из четырёх основных частей:
- Установка оператора Alauda Service Mesh v2
- Развёртывание плагина Istio CNI
- Развёртывание управляющей плоскости Istio
Не устанавливайте Alauda Service Mesh и Alauda Service Mesh v2 в одном и том же Kubernetes кластере, так как это может привести к функциональным конфликтам.
Руководство по миграции будет доступно в будущих релизах.
Содержание
Развёртывание Istio с помощью оператора Alauda Service Mesh v2Установка оператора Alauda Service Mesh v2Установка через веб-консольУстановка через CLICustom Resource Definitions, устанавливаемые операторомРазвёртывание компонентов IstioСоздание namespace для IstioCNIСоздание ресурсаIstioCNIСоздание через веб-консольСоздание через CLIСоздание namespace для IstioСоздание ресурса IstioСоздание через веб-консольСоздание через CLIДополнительные ресурсыРазвёртывание Istio с помощью оператора Alauda Service Mesh v2
Для развёртывания Istio с использованием оператора Alauda Service Mesh v2 необходимо создать ресурс Istio.
Оператор затем создаёт ресурсы IstioRevision, представляющие отдельные ревизии управляющей плоскости Istio.
Управляющая плоскость Istio развёртывается на основе этих ресурсов IstioRevision.
Если стратегия обновления ресурса Istio установлена в RevisionBased, оператор может создавать дополнительные ресурсы IstioRevision для управления обновлениями управляющей плоскости.
Установка оператора Alauda Service Mesh v2
Установка через веб-консоль
Требования
- Alauda Service Mesh v2 должен быть загружен.
- Вы вошли в веб-консоль Alauda Container Platform с ролью cluster-admin.
- Плагин Alauda Container Platform Networking для Multus должен быть установлен, а kube-ovn — версии 4.1.5 или выше.
Процедура
- В веб-консоли Alauda Container Platform перейдите в раздел Administrator.
- Выберите Marketplace > OperatorHub.
- Найдите Alauda Service Mesh v2.
- Найдите Alauda Service Mesh v2 и кликните для выбора.
- Нажмите Install.
- В диалоговом окне Install Alauda Service Mesh v2 выполните следующие действия:
- Выберите Channel
- Выберите канал stable для установки последней стабильной версии оператора Alauda Service Mesh v2. Это канал по умолчанию для установки оператора.
- Чтобы установить конкретную версию оператора Alauda Service Mesh v2, выберите соответствующий канал
stable-<version>. Например, для установки версии 2.0.x используйте канал stable-2.0.
- Выберите Channel
- Нажмите Install и Confirm для установки оператора.
Проверка
Убедитесь, что статус установки оператора отображается как Succeeded в разделе Installation Info.
Установка через CLI
Требования
- Alauda Service Mesh v2 должен быть загружен.
- Активная сессия ACP CLI (
kubectl) с рольюcluster-admin. - Плагин Alauda Container Platform Networking для Multus должен быть установлен, а kube-ovn — версии 4.1.5 или выше.
Процедура
-
Проверка доступных версий
Пример вывода
Пояснения к полям:
- CHANNEL: имя канала оператора
- NAME: имя ресурса CSV
- VERSION: версия оператора
-
Подтверждение catalogSource
Пример вывода
Это означает, что
servicemesh-operator2поставляется из catalogSourceplatform. -
Создание namespace
-
Создание Subscription
Пояснения к полям
- annotation
cpaas.io/target-namespaces: рекомендуется оставить пустым; пустое значение означает установку на весь кластер. - .metadata.name: имя Subscription (должно соответствовать DNS, максимум 253 символа).
- .metadata.namespace: namespace для установки оператора.
- .spec.channel: канал оператора для подписки.
- .spec.installPlanApproval: стратегия одобрения (
ManualилиAutomatic). ЗдесьManualтребует ручного одобрения установки/обновления. - .spec.source: catalogSource оператора.
- .spec.sourceNamespace: должно быть
cpaas-system, так как все catalogSource, предоставляемые платформой, находятся в этом namespace. - .spec.startingCSV: версия для установки при ручном одобрении; если пусто, устанавливается последняя версия в канале. Не требуется для автоматического одобрения.
- annotation
-
Проверка статуса Subscription
Ключевые поля вывода
- .status.state:
UpgradePendingозначает, что оператор ожидает установки или обновления. - Condition InstallPlanPending = True: ожидает ручного одобрения.
- .status.currentCSV: текущий подписанный CSV.
- .status.installPlanRef: связанный InstallPlan; должен быть одобрен перед установкой.
Ожидайте, пока условие
InstallPlanPendingстанетTrue: - .status.state:
-
Одобрение InstallPlan
Пример вывода
Ручное одобрение
Проверка
Ожидайте создания CSV; фаза должна измениться на Succeeded:
Проверьте статус CSV:
Пример вывода
Пояснения к полям
- NAME: имя установленного CSV
- DISPLAY: отображаемое имя оператора
- VERSION: версия оператора
- REPLACES: CSV, заменённый при обновлении
- PHASE: статус установки (
Succeededозначает успешную установку)
Custom Resource Definitions, устанавливаемые оператором
Оператор устанавливает следующие категории Custom Resource Definitions (CRD):
-
CRD Sail Operator: Эти CRD принадлежат API группе
sailoperator.ioи определяют кастомные ресурсы для управления компонентами Istio, включаяIstio,IstioRevision,IstioCNIиZTunnel. Подробнее см. в Sail Operator API reference. -
CRD Istio: Эти CRD управляют конфигурацией mesh, обнаружением сервисов, маршрутизацией трафика и наблюдаемостью. Они принадлежат API группам
istio.io, таким какnetworking.istio.io,security.istio.ioиtelemetry.istio.io. Руководство по конфигурации доступно в документации Istio.
Развёртывание компонентов Istio
Для развёртывания управляющей плоскости и плагина Istio CNI необходимо создать кастомные ресурсы Istio и IstioCNI.
Рекомендуется создавать ресурсы Istio и IstioCNI в разных namespace.
Создание namespace для IstioCNI
Создание ресурса IstioCNI
Создание через веб-консоль
Создайте ресурс Istio Container Network Interface (CNI), который содержит конфигурационный файл для плагина Istio CNI. Оператор Alauda Service Mesh v2 использует конфигурацию этого ресурса для развёртывания CNI pod.
Требования
- Вы вошли в веб-консоль Alauda Container Platform с ролью cluster-admin.
- Оператор Alauda Service Mesh v2 должен быть установлен.
- Плагин Alauda Container Platform Networking для Multus должен быть установлен, а kube-ovn — версии 4.1.5 или выше.
Процедура
- В веб-консоли Alauda Container Platform перейдите в раздел Administrator.
- Выберите Marketplace > OperatorHub.
- Найдите Alauda Service Mesh v2.
- Найдите Alauda Service Mesh v2 и кликните для выбора.
- Перейдите на вкладку All Instances.
- Нажмите Create.
- Найдите и выберите IstioCNI, затем нажмите Create.
- Выберите
istio-cniв выпадающем списке Namespace. - Перейдите на вкладку YAML.
- Добавьте следующий YAML-фрагмент в редактор кода YAML:
- Нажмите Create.
Проверка
Ожидайте, пока поле .status.state ресурса IstioCNI не станет Healthy.
Создание через CLI
Требования
- Активная сессия ACP CLI (
kubectl) с рольюcluster-admin. - Оператор Alauda Service Mesh v2 должен быть установлен.
- Плагин Alauda Container Platform Networking для Multus должен быть установлен, а kube-ovn — версии 4.1.5 или выше.
Процедура
-
Создайте ресурс IstioCNI, выполнив следующую команду:
-
Ожидайте, пока ресурс IstioCNI не получит состояние
Ready, выполнив команду:
Создание namespace для Istio
Создание ресурса Istio
Создание через веб-консоль
Создайте ресурс Istio, который будет содержать YAML-конфигурацию для вашего развёртывания Istio.
Оператор Alauda Service Mesh v2 использует конфигурацию этого ресурса для развёртывания управляющей плоскости Istio.
Требования
- Оператор Alauda Service Mesh v2 должен быть установлен.
- Вы вошли в веб-консоль Alauda Container Platform с ролью cluster-admin.
- Плагин Alauda Container Platform Networking для Multus должен быть установлен, а kube-ovn — версии 4.1.5 или выше.
Процедура
- В веб-консоли Alauda Container Platform перейдите в раздел Administrator.
- Выберите Marketplace > OperatorHub.
- Найдите Alauda Service Mesh v2.
- Найдите Alauda Service Mesh v2 и кликните для выбора.
- Перейдите на вкладку All Instances.
- Нажмите Create.
- Найдите и выберите Istio, затем нажмите Create.
- Выберите
istio-systemв выпадающем списке Namespace. - Нажмите Create.
Проверка
Ожидайте, пока поле .status.state ресурса Istio не станет Healthy.
Создание через CLI
Требования
- Активная сессия ACP CLI (
kubectl) с рольюcluster-admin. - Оператор Alauda Service Mesh v2 должен быть установлен.
- Плагин Alauda Container Platform Networking для Multus должен быть установлен, а kube-ovn — версии 4.1.5 или выше.
Процедура
-
Создайте ресурс Istio, выполнив следующую команду:
-
Ожидайте, пока управляющая плоскость Istio не получит состояние
Ready, выполнив команду: