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
- Uma subscrição do Azure. Não tem um? Crie uma conta gratuita.
- Instale a versão mais recente da CLI do Azure.
- Se você ainda não tiver um, precisará criar um cluster AKS ou conectar um cluster Kubernetes habilitado para Arc.
- Verifique se você tem uma função de administrador RBAC do Serviço Kubernetes do Azure
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-version
será 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
.
--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
- Saiba mais sobre configurações e preferências extras que você pode definir na extensão Dapr.
- Depois de provisionar com êxito o Dapr em seu cluster AKS, tente implantar um aplicativo de exemplo.
- Experimente o Dapr Workflow na sua extensão Dapr para AKS