Extensão Dapr para o Serviço Kubernetes do Azure (AKS) e Kubernetes habilitado para Arc

O Dapr simplifica a criação de aplicativos resilientes, sem estado e com monitoração de estado que são executados na nuvem e na borda e abraçam a diversidade de linguagens e estruturas de desenvolvedores. Com a arquitetura sidecar do Dapr, você pode manter sua plataforma de código agnóstica enquanto enfrenta desafios relacionados à criação de microsserviços, como:

  • Ligar para outros serviços de forma fiável e segura
  • Criação de aplicativos orientados a eventos com pub/sub
  • Criação de aplicativos que são portáteis em vários serviços de nuvem e hosts (por exemplo, Kubernetes versus uma VM)

Nota

Se você planeja instalar o Dapr em um ambiente de produção do Kubernetes, consulte a página de documentação de diretrizes do Dapr para uso de produção.

Como funciona

A extensão Dapr usa a CLI do Azure ou um modelo Bicep para provisionar o plano de controle Dapr em seu cluster Kubernetes habilitado para AKS ou Arc, criando os seguintes serviços Dapr:

Serviço Dapr Description
dapr-operator Gerencia atualizações de componentes e pontos de extremidade de serviços Kubernetes para Dapr (lojas de estado, pub/subs, etc.)
dapr-sidecar-injector Injeta Dapr em pods de implantação anotados e adiciona as variáveis DAPR_HTTP_PORT de ambiente e DAPR_GRPC_PORT permite que aplicativos definidos pelo usuário se comuniquem facilmente com o Dapr sem codificar valores de porta Dapr.
dapr-placement Usado apenas para atores. Cria tabelas de mapeamento que mapeiam instâncias de ator para pods.
dapr-sentry Gerencia mTLS entre serviços e atua como uma autoridade de certificação. Para obter mais informações, leia a visão geral de segurança.

Depois que o Dapr estiver instalado em seu cluster, você poderá começar a desenvolver usando as APIs de bloco de construção do Dapr adicionando algumas anotações às suas implantações. Para obter uma visão geral mais detalhada das APIs de bloco de construção e como usá-las melhor, consulte a visão geral dos blocos de construção do Dapr.

Aviso

Se você instalar o Dapr através da extensão AKS ou do Kubernetes habilitado para Arc, nossa recomendação é continuar usando a extensão para gerenciamento futuro do Dapr em vez da CLI do Dapr. A combinação das duas ferramentas pode causar conflitos e resultar em comportamentos indesejados.

Pré-requisitos

Selecione como você gostaria de instalar, implantar e configurar a extensão Dapr.

Configurar a extensão da CLI do Azure para extensões de cluster

Instale a k8s-extension extensão da CLI do Azure executando os seguintes comandos:

az extension add --name k8s-extension

Se a k8s-extension extensão já estiver instalada, você pode atualizá-la para a versão mais recente usando o seguinte comando:

az extension update --name k8s-extension

Registrar o provedor de KubernetesConfiguration recursos

Se você não tiver usado extensões de cluster anteriormente, talvez seja necessário registrar o provedor de recursos com sua assinatura. Você pode verificar o status do registro do provedor usando o comando [az provider list][az-provider-list], conforme mostrado no exemplo a seguir:

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

O provedor Microsoft.KubernetesConfiguration deve relatar como Registered, conforme mostrado na saída de exemplo a seguir:

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

Se o provedor mostrar como NotRegistered, registre o provedor usando o registro do provedor az, conforme mostrado no exemplo a seguir:

az provider register --namespace Microsoft.KubernetesConfiguration

Crie a extensão e instale o Dapr em seu cluster Kubernetes habilitado para AKS ou Arc

Ao instalar a extensão Dapr, use o valor do sinalizador que corresponde ao seu tipo de cluster:

  • Aglomerado AKS: --cluster-type managedClusters.
  • Cluster Kubernetes habilitado para Arc: --cluster-type connectedClusters.

Nota

Se você estiver usando o Dapr OSS em seu cluster AKS e quiser instalar a extensão Dapr para AKS, leia mais sobre como migrar com êxito para a extensão Dapr.

Crie a extensão Dapr, que instala o Dapr em seu cluster Kubernetes habilitado para AKS ou Arc.

Por exemplo, instale a versão mais recente do Dapr através da extensão Dapr no seu cluster 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

Configurando atualizações automáticas para o plano de controle Dapr

Aviso

Você pode habilitar atualizações automáticas para o plano de controle Dapr somente em ambientes de desenvolvimento ou teste. A atualização automática não é adequada para ambientes de produção.

Se você instalar o Dapr sem especificar uma versão, --auto-upgrade-minor-versionserá automaticamente habilitado, configurando o plano de controle do Dapr para atualizar automaticamente sua versão secundária em novas versões.

Você pode desabilitar a atualização automática especificando o --auto-upgrade-minor-version parâmetro e definindo o valor como false.

O versionamento do Dapr está no MAJOR.MINOR.PATCH formato, o 1.12.0 que significa 1.11.0 que é uma atualização de versão secundária.

--auto-upgrade-minor-version true

Direcionando uma versão específica do Dapr

Nota

O Dapr é suportado com uma janela contínua, incluindo apenas as versões atual e anterior. É da sua responsabilidade operacional manter-se atualizado com estas versões suportadas. Se você tiver uma versão mais antiga do Dapr, talvez seja necessário fazer atualizações intermediárias para chegar a uma versão suportada.

O mesmo argumento de linha de comando é usado para instalar uma versão específica do Dapr ou reverter para uma versão anterior. Defina --auto-upgrade-minor-version para false e --version para a versão do Dapr que você deseja instalar. Se o version parâmetro for omitido, a extensão instalará a versão mais recente do Dapr. Por exemplo, para usar o Dapr 1.11.2:

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.11.2

Escolher um comboio de libertação

Ao configurar a extensão, você pode optar por instalar o Dapr a partir de um trem de liberação específico. Especifique um dos dois valores do trem de liberação:

valor Description
stable Predefinição.
dev Lançamentos antecipados, podem conter recursos experimentais. Não é adequado para produção.

Por exemplo:

--release-train stable

Solução de problemas de erros de extensão

Se a extensão não conseguir criar ou atualizar, tente sugestões e soluções no guia de solução de problemas da extensão Dapr.

Solução de problemas do Dapr

Solucione erros do Dapr por meio do guia comum de problemas e soluções do Dapr.

Excluir a extensão

Se você precisar excluir a extensão e remover o Dapr do seu cluster AKS, você pode usar o seguinte comando:

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

Ou simplesmente remova o modelo Bicep.

Passos Seguintes