Поделиться через


Установка расширения Dapr для Служба Azure Kubernetes (AKS) и Kubernetes с поддержкой Arc

Dapr упрощает создание устойчивых, без отслеживания состояния и приложений с отслеживанием состояния, работающих в облаке и пограничном интерфейсе, и охватывает разнообразие языков и платформ разработчиков. Благодаря архитектуре боковой платформы Dapr вы можете обеспечить гибкость платформы кода при решении проблем, связанных с созданием микрослужб, например:

  • надежный и безопасный вызов других служб;
  • Создание приложений на основе событий с помощью pub/sub
  • Создание приложений, переносимых между несколькими облачными службами и узлами (например, Kubernetes и виртуальной машиной).

Примечание.

Если вы хотите установить Dapr в рабочей среде Kubernetes, см. страницу документации с рекомендациями по использованию Dapr в рабочей среде.

Принцип работы

Расширение Dapr использует Azure CLI или шаблон Bicep для подготовки плоскости управления Dapr в кластере Kubernetes с поддержкой Arc или AKS, создав следующие службы Dapr:

Служба Dapr Description
dapr-operator Управляет обновлениями компонентов и конечными точками служб Kubernetes для Dapr (хранилища состояний, pub/subs и т. д.)
dapr-sidecar-injector Внедряет Dapr в аннотированные модули pod развертывания и добавляет переменные DAPR_HTTP_PORT среды и DAPR_GRPC_PORT позволяет пользовательским приложениям легко взаимодействовать с Dapr без жесткого написания значений порта Dapr.
dapr-placement Используется только для субъектов. Создает таблицы сопоставления, которые сопоставляют экземпляры субъектов с pod.
dapr-sentry Управляет mTLS между службами и выступает в качестве центра сертификации. Дополнительные сведения см. в обзоре безопасности.

После установки Dapr в кластере можно начать разработку с использованием API стандартных блоков Dapr, добавив несколько аннотаций к развертываниям. Подробные сведения об API стандартных блоков и их оптимальном использовании см. в обзоре стандартных блоков Dapr.

Предупреждение

Если вы устанавливаете Dapr с помощью расширения AKS или Kubernetes с поддержкой Arc, мы рекомендуем продолжить использовать расширение (вместо интерфейса командной строки Dapr) для будущего управления Dapr. Параллельное использование этих двух инструментов может вызвать конфликты и привести к нежелательному поведению.

Необходимые компоненты

Выберите способ установки, развертывания и настройки расширения Dapr.

Подготовка к работе

Добавление расширения Azure CLI для расширений кластера

k8s-extension Установите расширение Azure CLI, выполнив следующие команды:

az extension add --name k8s-extension

Если расширение k8s-extension уже установлено, его можно обновить до последней версии, выполнив следующую команду:

az extension update --name k8s-extension

KubernetesConfiguration Регистрация поставщика ресурсов

Если вы еще не используете расширения кластера, может потребоваться зарегистрировать поставщика ресурсов в подписке. Вы можете проверить состояние регистрации поставщика с помощью команды az provider list , как показано в следующем примере:

az provider list --query "[?contains(namespace,'Microsoft.KubernetesConfiguration')]" -o table

Поставщик Microsoft.KubernetesConfiguration должен иметь состояние Registered, как показано в следующем примере выходных данных:

Namespace                          RegistrationState    RegistrationPolicy
---------------------------------  -------------------  --------------------
Microsoft.KubernetesConfiguration  Registered           RegistrationRequired

Если поставщик имеет состояние NotRegistered, зарегистрируйте этот поставщик с помощью команды az provider register, как показано в следующем примере.

az provider register --namespace Microsoft.KubernetesConfiguration

Регистрация функции в подписке ExtenstionTypes Azure

Эта ExtensionTypes функция должна быть зарегистрирована в подписке Azure. В терминале убедитесь, что вы находитесь в правильной подписке:

az account set --subscription <YOUR-AZURE-SUBSCRIPTION-ID>

Зарегистрируйте функцию ExtenstionTypes .

az feature registration create --namespace Microsoft.KubernetesConfiguration --name ExtensionTypes

Регистрация компонентов может занять некоторое время. Через несколько минут проверьте состояние регистрации с помощью следующей команды:

az feature show --namespace Microsoft.KubernetesConfiguration --name ExtensionTypes

Создание расширения и установка Dapr в кластере AKS или Kubernetes с поддержкой Arc

При установке расширения Dapr используйте значение флага, соответствующее типу кластера.

  • Кластер AKS: --cluster-type managedClusters.
  • Кластер Kubernetes с поддержкой Arc: --cluster-type connectedClusters.

Примечание.

Если вы используете DAPR OSS в кластере AKS и хотите установить расширение Dapr для AKS, ознакомьтесь с дополнительными сведениями о том, как успешно выполнить миграцию в расширение Dapr.

Создайте расширение Dapr, которое устанавливает Dapr в кластере AKS или Kubernetes с поддержкой Arc.

Например, установите последнюю версию Dapr через расширение Dapr в кластере AKS:

az k8s-extension create --cluster-type managedClusters \
--cluster-name <myAKSCluster> \
--resource-group <myResourceGroup> \
--name dapr \
--extension-type Microsoft.Dapr \
--auto-upgrade-minor-version false

Обновление управляемого кластера AKS до последней версии

В зависимости от среды (разработки, тестирования или рабочей среды) вы можете поддерживать актуальность последних стабильных версий Dapr.

Выбор поезда выпуска

При настройке расширения можно установить Dapr из определенного обучения выпуска. Укажите одно из двух значений обучения выпуска:

значение Описание
stable По умолчанию.
dev Ранние выпуски, которые могут содержать экспериментальные функции. Не подходит для рабочей среды.

Например:

--release-train stable

Настройка автоматических обновлений в плоскости управления Dapr

Предупреждение

Автоматическое обновление не подходит для рабочих сред. Включить автоматическое обновление уровня управления Dapr в средах разработки или тестирования. Узнайте, как вручную обновить до последней версии Dapr для рабочих сред.

При установке Dapr без указания версии --auto-upgrade-minor-version автоматически включается настройка плоскости управления Dapr для автоматического обновления дополнительной версии в новых выпусках.

Вы можете отключить автоматическое обновление, указав --auto-upgrade-minor-version параметр и задав значение false.

Управление версиями Dapr имеет MAJOR.MINOR.PATCH формат, то есть 1.11.0 является 1.12.0 дополнительным обновлением версии.

--auto-upgrade-minor-version true

Просмотр последних стабильных версий Dapr

Чтобы обновить последнюю версию Dapr в рабочей среде, необходимо вручную обновить. Начните с просмотра списка стабильных версий Dapr, доступных для управляемого кластера AKS. Выполните следующую команду:

az k8s-extension extension-types list-versions-by-cluster --resource-group <myResourceGroup> --cluster-name <myCluster> --cluster-type managedClusters --extension-type microsoft.dapr --release-train stable

Чтобы просмотреть последнюю стабильную версию Dapr, доступную для управляемого кластера AKS, выполните следующую команду:

az k8s-extension extension-types list-versions-by-cluster --resource-group <myResourceGroup> --cluster-name <myCluster> --cluster-type managedClusters --extension-type microsoft.dapr  --release-train stable --show-latest

Чтобы просмотреть список стабильных версий Dapr, доступных по расположению:

  1. Убедитесь, что вы зарегистрировали функцию в подписке ExtenstionTypes Azure.
  2. Выполните следующую команду.
az k8s-extension extension-types list-versions-by-location --location westus --extension-type microsoft.dapr

Затем вручную обновите Dapr до последней стабильной версии.

Ориентация на определенную версию Dapr

Примечание.

Поддержка Dapr осуществляется со скользящим окном только для текущей и предыдущих версий. Обязанность за поддержание актуальности версий для их поддержки лежит на вас. Если у вас более старая версия Dapr, возможно, вам придется установить промежуточные обновления, чтобы получить поддерживаемую версию.

Для установки определенной версии Dapr или отката к предыдущей версии используется один аргумент командной строки. Задайте для --auto-upgrade-minor-version значение false, а для --version — значение с нужной версией Dapr. version Если параметр опущен, расширение устанавливает последнюю версию Dapr. Например, чтобы использовать Dapr 1.13.5:

az k8s-extension create --cluster-type managedClusters \
--cluster-name <myAKSCluster> \
--resource-group <myResourceGroup> \
--name dapr \
--extension-type Microsoft.Dapr \
--auto-upgrade-minor-version false \
--version 1.13.5

Устранение ошибок расширения

Если расширение не удается создать или обновить, попробуйте использовать предложения и решения в руководстве по устранению неполадок расширения Dapr.

Устранение неполадок Dapr

Для устранения неполадок Dapr используйте руководство по распространенным проблемам и решениям Dapr.

Удаление расширения

Если вам необходимо удалить расширение и удалить Dapr из кластера AKS, можно использовать следующую команду:

az k8s-extension delete --resource-group <myResourceGroup> --cluster-name <myAKSCluster> --cluster-type managedClusters --name dapr

Или удалить шаблон Bicep.

Next Steps