Установка расширения 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. Параллельное использование этих двух инструментов может вызвать конфликты и привести к нежелательному поведению.
Необходимые компоненты
- Подписка Azure. У меня нет? Создайте бесплатную учетную запись.
- Последняя версия Azure CLI.
- Существующий кластер AKS или подключенный кластер Kubernetes с поддержкой Arc.
- Роль администратора контроль доступа на основе ролей Служба Azure Kubernetes
Выберите способ установки, развертывания и настройки расширения 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, доступных по расположению:
- Убедитесь, что вы зарегистрировали функцию в подписке
ExtenstionTypes
Azure. - Выполните следующую команду.
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
Azure Kubernetes Service