Instalar a extensão Dapr para o AKS (Serviço de Kubernetes do Azure) e o Kubernetes habilitado para Arc
O Dapr é um runtime portátil e orientado por eventos que simplifica a compilação de aplicativos resilientes, sem estado e com estado executados na nuvem e na borda, e que incluem a diversidade de linguagens e estruturas de desenvolvedor. Com a arquitetura de sidecar do Dapr, você pode manter sua plataforma de código independente enquanto lida com desafios na criação de microsserviços, como:
- Chamando outros serviços de forma confiável e segura
- Criar aplicativos controlados por eventos com pub-sub
- Criando aplicativos que são portáteis em vários serviços de nuvem e hosts (por exemplo, Kubernetes versus uma máquina virtual)
Observação
Se você planeja instalar o Dapr em um ambiente de produção do Kubernetes, consulte a página de documentação Diretrizes do Dapr para uso em 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 | Descrição |
---|---|
dapr-operator |
Gerencia atualizações de componentes e pontos de extremidade de serviços do Kubernetes para Dapr (armazenamentos de estado, pub/subs, etc.) |
dapr-sidecar-injector |
Injeta o Dapr em pods de implantação anotada e adiciona as variáveis de ambiente DAPR_HTTP_PORT e DAPR_GRPC_PORT para permitir que aplicativos definidos pelo usuário se comuniquem facilmente com o Dapr sem valores hard-coding de porta do Dapr. |
dapr-placement |
Usado apenas para atores. Cria tabelas de mapeamento que mapeiam instâncias de ator para pods. |
dapr-sentry |
Gerencia a mTLS entre serviços e atua como uma autoridade de certificação. Para obter mais informações, leia visão geral de segurança. |
Depois que o Dapr estiver instalado no cluster, você poderá começar a desenvolver usando as APIs do bloco de construção 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 por meio da extensão do AKS ou Kubernetes habilitado para Arc, é recomendável continuar usando a extensão para o gerenciamento futuro do Dapr em vez da CLI do Dapr. A combinação das duas ferramentas pode causar conflitos e resultar em um comportamento indesejado.
Pré-requisitos
- Uma assinatura do Azure. Não tem uma? Crie uma conta gratuita.
- A versão mais recente da CLI do Azure.
- Um cluster AKS existente ou um cluster Kubernetes habilitado para Arc conectado.
- Uma função de administrador de controle de acesso baseado em função do Serviço de Kubernetes do Azure
Selecione como você deseja instalar, implantar e configurar a extensão Dapr.
Antes de começar
Adicione a extensão CLI do Azure para extensões de cluster
Instale a extensão da CLI do Azure k8s-extension
executando os seguintes comandos:
az extension add --name k8s-extension
Se a extensão k8s-extension
já estiver instalada, você poderá atualizá-la para a versão mais recente usando o comando seguinte:
az extension update --name k8s-extension
Registrar o provedor de recursos KubernetesConfiguration
Se você ainda não estiver usando extensões de cluster, talvez seja necessário registrar o provedor de recursos com sua assinatura. Você pode verificar o status do registro de provedor usando o comando az provider list, conforme mostrado no exemplo a seguir:
az provider list --query "[?contains(namespace,'Microsoft.KubernetesConfiguration')]" -o table
O provedor Microsoft.KubernetesConfiguration deve ser relatado como Registrado, conforme mostrado na seguinte saída de exemplo:
Namespace RegistrationState RegistrationPolicy
--------------------------------- ------------------- --------------------
Microsoft.KubernetesConfiguration Registered RegistrationRequired
Se o provedor é exibido como NotRegistered, registre o provedor usando az provider register conforme mostrado no exemplo a seguir:
az provider register --namespace Microsoft.KubernetesConfiguration
Registre o recurso ExtenstionTypes
em sua assinatura do Azure
O recurso ExtensionTypes
precisa ser registrado em sua assinatura do Azure. No terminal, verifique se você está na assinatura correta:
az account set --subscription <YOUR-AZURE-SUBSCRIPTION-ID>
Registre o recurso ExtenstionTypes
.
az feature registration create --namespace Microsoft.KubernetesConfiguration --name ExtensionTypes
O registro do recurso pode levar algum tempo. Após alguns minutos, verifique o status do registro usando o seguinte comando:
az feature show --namespace Microsoft.KubernetesConfiguration --name ExtensionTypes
Criar a extensão e instalar o Dapr em seu cluster do AKS ou do Kubernetes habilitado para Arc
Ao instalar a extensão Dapr, use o valor do sinalizador que corresponde ao tipo de cluster:
- Cluster do AKS:
--cluster-type managedClusters
. - Cluster do Kubernetes habilitado para Arc:
--cluster-type connectedClusters
.
Observação
Se você estiver usando o Dapr OSS em seu cluster do 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 no cluster do AKS ou do Kubernetes habilitado para Arc.
Por exemplo, instale a versão mais recente do Dapr por meio da extensão Dapr no cluster do 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
Manter o cluster do AKS gerenciado atualizado para a versão mais recente
Com base em seu ambiente (desenvolvimento, teste ou produção), você pode manter-se atualizado com as versões de Dapr estáveis mais recentes.
Como escolher um trem de lançamento
Ao configurar a extensão, você pode optar por instalar o Dapr em um treinamento de versão específico. Especifique um dos dois valores do conjunto de versões:
Valor | Descrição |
---|---|
stable |
Padrão. |
dev |
Versões iniciais que podem conter recursos experimentais. Não adequado para produção. |
Por exemplo:
--release-train stable
Como configurar atualizações automáticas para o painel de controle do Dapr
Aviso
A atualização automática não é adequada para ambientes de produção. Habilite atualizações automáticas para o painel de controle do Dapr somente em ambientes de desenvolvimento ou teste. Saiba como atualizar manualmente para a versão mais recente do Dapr para ambientes de produção.
Se você instalar o Dapr sem especificar uma versão, --auto-upgrade-minor-version
será habilitado automaticamente, configurando o painel 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 parâmetro --auto-upgrade-minor-version
e definindo o valor como false
.
O controle de versão do Dapr está no MAJOR.MINOR.PATCH
formato, o que significa que 1.11.0
a 1.12.0
é uma atualização de versão secundária .
--auto-upgrade-minor-version true
Exibindo as versões de Dapr estáveis mais recentes disponíveis
Para atualizar para a versão mais recente do Dapr em um ambiente de produção, você precisa atualizar manualmente. Comece exibindo uma lista das versões de Dapr estáveis disponíveis para o cluster do AKS gerenciado. Execute o comando a seguir:
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
Para ver a versão do Dapr estável mais recente disponível para o cluster do AKS gerenciado, execute o seguinte comando:
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
Para exibir uma lista das versões de Dapr estáveis disponíveis por local:
- Verifique se você registrou o recurso
ExtenstionTypes
em sua assinatura do Azure. - Execute o comando a seguir.
az k8s-extension extension-types list-versions-by-location --location westus --extension-type microsoft.dapr
Em seguida, atualize manualmente o Dapr para a versão estável mais recente.
Direcionando uma versão específica do Dapr
Observação
O Dapr tem suporte com uma janela rolante, incluindo apenas as versões atuais e anteriores. Sua responsabilidade operacional é manter-se atualizado com essas versões com suporte. Se você tiver uma versão mais antiga do Dapr, talvez seja necessário fazer atualizações intermediárias para obter uma versão com suporte.
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
como false
e --version
para a versão do Dapr que você deseja instalar. Se o parâmetro version
for omitido, a extensão instalará a versão mais recente do Dapr. Por exemplo, para usar o 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
Solução de problemas de erros da extensão
Se a extensão não for criada ou atualizada, 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 de soluções e problemas comuns do Dapr.
Excluir a extensão
Se precisar excluir a extensão e remover o Dapr do cluster do AKS, você poderá usar o seguinte comando:
az k8s-extension delete --resource-group <myResourceGroup> --cluster-name <myAKSCluster> --cluster-type managedClusters --name dapr
Ou você pode remover o modelo Bicep.
Próximas etapas
Azure Kubernetes Service