Configurar a extensão do Dapr para seu projeto do AKS (Serviço de Kubernetes do Azure) e do Kubernetes habilitado para Arc
Depois de criar a extensão do Dapr, você poderá configurar a extensão do Dapr da melhor forma para você e seu projeto usando várias opções de configuração, como:
- Limite dos nós que usam a extensão do Dapr
- Definição das atualizações automáticas de CRD
- Configuração do namespace da versão do Dapr
A extensão permite definir opções de configuração de Dapr usando o parâmetro --configuration-settings
na CLI do Azure ou a propriedade configurationSettings
em um modelo Bicep.
Provisionar o Dapr com alta disponibilidade (HA) habilitada
Provisionar o Dapr com alta disponibilidade (HA) habilitada definindo o parâmetro global.ha.enabled
como true
.
az k8s-extension create --cluster-type managedClusters \
--cluster-name myAKSCluster \
--resource-group myResourceGroup \
--name dapr \
--extension-type Microsoft.Dapr \
--auto-upgrade-minor-version true \
--configuration-settings "global.ha.enabled=true" \
--configuration-settings "dapr_operator.replicaCount=2"
Observação
Se as definições de configuração forem confidenciais e precisarem ser protegidas (por exemplo, informações relacionadas ao certificado), passe o parâmetro --configuration-protected-settings
e o valor será protegido contra leitura.
Se nenhuma configuração for passada, a configuração do Dapr usa como padrão:
ha:
enabled: true
replicaCount: 3
disruption:
minimumAvailable: ""
maximumUnavailable: "25%"
prometheus:
enabled: true
port: 9090
mtls:
enabled: true
workloadCertTTL: 24h
allowedClockSkew: 15m
Para obter uma lista das opções disponíveis, consulte configuração do Dapr.
Limite a extensão a determinados nós
Em algumas configurações, você só pode executar Dapr em determinados nós. Você pode limitar a extensão passando uma nodeSelector
na configuração de extensão. Se o nodeSelector
desejado contiver .
, você deverá usar barra invertida (\) no shell e na extensão. Por exemplo, a configuração a seguir instalará o Dapr somente nos nós com topology.kubernetes.io/zone: "us-east-1c"
:
az k8s-extension create --cluster-type managedClusters \
--cluster-name myAKSCluster \
--resource-group myResourceGroup \
--name dapr \
--extension-type Microsoft.Dapr \
--auto-upgrade-minor-version true \
--configuration-settings "global.ha.enabled=true" \
--configuration-settings "dapr_operator.replicaCount=2" \
--configuration-settings "global.nodeSelector.kubernetes\.io/zone=us-east-1c"
Para gerenciar o sistema operacional e a arquitetura, use as versões com suporte das configurações global.daprControlPlaneOs
e global.daprControlPlaneArch
:
az k8s-extension create --cluster-type managedClusters \
--cluster-name myAKSCluster \
--resource-group myResourceGroup \
--name dapr \
--extension-type Microsoft.Dapr \
--auto-upgrade-minor-version true \
--configuration-settings "global.ha.enabled=true" \
--configuration-settings "dapr_operator.replicaCount=2" \
--configuration-settings "global.daprControlPlaneOs=linux” \
--configuration-settings "global.daprControlPlaneArch=amd64”
Instale o Dapr em várias zonas de disponibilidade enquanto estiver no modo de alta disponibilidade
Por padrão, o serviço de posicionamento usa uma classe de armazenamento do tipo standard_LRS
. É recomendável criar uma classe de armazenamento com redundância de zona ao instalar o Dapr no modo HA em várias zonas de disponibilidade. Por exemplo, para criar uma classe de armazenamento de tipo zrs
, adicione o parâmetro storageaccounttype
:
kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
name: custom-zone-redundant-storage
provisioner: disk.csi.azure.com
reclaimPolicy: Delete
allowVolumeExpansion: true
volumeBindingMode: WaitForFirstConsumer
parameters:
storageaccounttype: Premium_ZRS
Ao instalar o Dapr, use a classe de armazenamento usada no arquivo YAML:
az k8s-extension create --cluster-type managedClusters
--cluster-name XXX
--resource-group XXX
--name XXX
--extension-type Microsoft.Dapr
--auto-upgrade-minor-version XXX
--version XXX
--configuration-settings "dapr_placement.volumeclaims.storageClassName=custom-zone-redundant-storage"
Configurar o namespace da versão do Dapr
Você pode configurar o namespace da versão.
A extensão do Dapr é instalada no namespace dapr-system
por padrão. Para substituí-la, use --release-namespace
. Inclua o cluster --scope
para redefinir o namespace.
az k8s-extension create \
--cluster-type managedClusters \
--cluster-name dapr-aks \
--resource-group dapr-rg \
--name my-dapr-ext \
--extension-type microsoft.dapr \
--release-train stable \
--auto-upgrade false \
--version 1.9.2 \
--scope cluster \
--release-namespace dapr-custom
Saiba como configurar o namespace de versão do Dapr se você já tiver o Dapr instalado.
Mostrar definições de configuração atuais
Use o comando az k8s-extension show
para mostrar as definições de configuração atuais do Dapr:
az k8s-extension show --cluster-type managedClusters \
--cluster-name myAKSCluster \
--resource-group myResourceGroup \
--name dapr
Atualizar definições de configuração
Importante
Algumas opções de configuração não podem ser modificadas após a criação. Os ajustes nessas opções exigem a exclusão e a recriação da extensão, aplicável às seguintes configurações:
global.ha.*
dapr_placement.*
A alta disponibilidade está habilitada por padrão. A desabilitação exige a exclusão e a recriação da extensão.
Para atualizar as definições de configuração do Dapr, basta recriar a extensão com o estado desejado. Por exemplo, suponha que já criamos e instalamos a extensão usando a seguinte configuração:
az k8s-extension create --cluster-type managedClusters \
--cluster-name myAKSCluster \
--resource-group myResourceGroup \
--name dapr \
--extension-type Microsoft.Dapr \
--auto-upgrade-minor-version true \
--configuration-settings "global.ha.enabled=true" \
--configuration-settings "dapr_operator.replicaCount=2"
Para atualizar de dapr_operator.replicaCount
dois para três, use o seguinte comando:
az k8s-extension create --cluster-type managedClusters \
--cluster-name myAKSCluster \
--resource-group myResourceGroup \
--name dapr \
--extension-type Microsoft.Dapr \
--auto-upgrade-minor-version true \
--configuration-settings "global.ha.enabled=true" \
--configuration-settings "dapr_operator.replicaCount=3"
Definir o proxy de saída para a extensão Dapr para o Azure Arc local
Se você quiser usar um proxy de saída com a extensão Dapr para AKS, poderá fazê-lo ao:
- Definir as variáveis de ambiente de proxy usando as anotações
dapr.io/env
:HTTP_PROXY
HTTPS_PROXY
NO_PROXY
- Instalar o certificado de proxy no sidecar.
Atualizando sua versão de instalação do Dapr
Se você estiver em uma versão específica do Dapr e não tiver --auto-upgrade-minor-version
disponível, poderá usar o seguinte comando para atualizar ou fazer downgrade do Dapr:
az k8s-extension update --cluster-type managedClusters \
--cluster-name myAKSCluster \
--resource-group myResourceGroup \
--name dapr \
--version 1.12.0 # Version to upgrade or downgrade to
O comando anterior atualiza apenas o plano de controle do Dapr. Para atualizar os sidecars do Dapr, reinicie suas implantações de aplicativo:
kubectl rollout restart deploy/<DEPLOYMENT-NAME>
Usando imagens baseadas em Linux do Azure
No Dapr versão 1.8.0, você pode usar imagens do Azure Linux com a extensão Dapr. Para usá-los, defina o sinalizador global.tag
:
az k8s-extension update --cluster-type managedClusters \
--cluster-name myAKSCluster \
--resource-group myResourceGroup \
--name dapr \
--set global.tag=1.10.0-mariner
- Saiba mais sobre como usar imagens baseadas no Mariner com o Dapr.
- Saiba mais sobre como implantar o Azure Linux no AKS.
Desabilitar atualizações automáticas de CRD
A partir do Dapr versão 1.9.2, os CRDs são atualizados automaticamente quando a extensão é atualizada. Para desabilitar essa configuração, você pode definir hooks.applyCrds
como false
.
az k8s-extension update --cluster-type managedClusters \
--cluster-name myAKSCluster \
--resource-group myResourceGroup \
--name dapr \
--configuration-settings "hooks.applyCrds=false"
Observação
Os CRDs são aplicados somente em caso de atualizações e são ignorados durante a realização de downgrades.
Atender aos requisitos de rede
A extensão Dapr para AKS e Arc para Kubernetes requer as URLs de saída a seguir em https://:443
para funcionar:
https://mcr.microsoft.com/daprio
URL para efetuar pull de artefatos Dapr.https://linuxgeneva-microsoft.azurecr.io/
URL para efetuar pull de algumas dependências do Dapr.- As URLs de saída necessárias para AKS ou Arc para Kubernetes.
Próximas etapas
Depois de ter provisionado com êxito o Dapr no cluster do AKS, tente implantar um aplicativo de exemplo.
Azure Kubernetes Service
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de