Sdílet prostřednictvím


Konfigurace rozšíření Dapr pro váš projekt Kubernetes Service (AKS) a Kubernetes s podporou Arc

Po dokončení požadavků pro instalaci rozšíření Dapr můžete nakonfigurovat rozšíření Dapr tak, aby fungovalo nejlépe pro vás a váš projekt pomocí různých možností konfigurace, například:

  • Obměně certifikátů s vypršenou platností
  • Zřizování dapr s povolenou vysokou dostupností
  • Omezení počtu uzlů pomocí rozšíření Dapr
  • Nastavení automatických aktualizací definice vlastních prostředků (CRD)
  • Konfigurace oboru názvů vydaných verzí Dapr

Rozšíření umožňuje nastavit možnosti konfigurace Dapr pomocí --configuration-settings parametru v Azure CLI nebo configurationSettings vlastnosti v šabloně Bicep.

Správa certifikátů mTLS

Rozšíření Dapr podporuje přenášené šifrování komunikace mezi instancemi Dapr pomocí řídicí roviny služby Dapr Sentry, což je centrální certifikační autorita (CA). Pomocí služby Sentry můžete šifrovat komunikaci pomocí certifikátů podepsaných svým držitelem nebo uživatelským certifikátem x.509. Další informace o nastavení certifikátů mTLS najdete v opensourcové dokumentaci k Dapr.

Můžete použít vlastní certifikáty nebo nechat Dapr automaticky vytvářet a uchovávat kořenové certifikáty podepsané svým držitelem a vystavitele.

Důležité

Pokud certifikáty explicitně nenakonfigurujete, dapr ve výchozím nastavení generuje certifikáty podepsané svým držitelem, které jsou obecně platné po dobu 1 roku. V současné době se nedoporučuje používat certifikáty podepsané svým držitelem vygenerované nástrojem Dapr. Osvědčeným postupem je generovat vlastní certifikáty a aktualizovat je ručně.

Správa certifikátů podepsaných svým držitelem (self-signed certificate) vygenerovaných pomocí dapr

Pokud jste nezadali žádné vlastní certifikáty, Nástroj Dapr automaticky vytvoří a zachová certifikáty podepsané svým držitelem ( platné po dobu 1 roku). Rozšíření Dapr nainstaluje dapr-trust-bundle tajný kód, který obsahuje informace o certifikátu ve výchozím dapr-system oboru názvů.

Kontrola vypršení platnosti aktuálníchcertifikátůch

Pomocí rozhraní příkazového řádku Dapr můžete zkontrolovat, kdy vyprší platnost kořenového certifikátu Dapr vašeho clusteru Kubernetes.

dapr mtls expiry

Očekávaný výstup:

Root certificate expires in 8759 hours. Expiry date: 2025-12-06 18:14:20 +0000 UTC

Datum vypršení platnosti aktuálního certifikátu najdete také v tajných datech Kubernetes dapr-trust-bundle .

kubectl get secret dapr-trust-bundle -n dapr-system -o jsonpath='{.data.issuer\.crt}' | base64 -d | openssl x509 -noout -dates

Očekávaný výstup:

notBefore=Dec  6 17:59:20 2024 GMT
notAfter=Dec  6 18:14:20 2025 GMT

Vygenerování nového certifikátu podepsaného svým držitelem

Správa vlastních uživatelských certifikátů x.509

Můžete také použít vlastní certifikáty.

Zřízení Dapr s povolenou vysokou dostupností

Zřízení Dapr s vysokou dostupností povolenou nastavením parametru global.ha.enabled na 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"

Poznámka:

Pokud jsou nastavení konfigurace citlivá a je třeba je chránit (například informace související s certifikáty), předejte --configuration-protected-settings parametr a hodnota bude chráněna před čtením.

Pokud se nepředá žádné nastavení konfigurace, nastaví se výchozí nastavení dapr na:

  ha:
    enabled: true
    replicaCount: 3
    disruption:
      minimumAvailable: ""
      maximumUnavailable: "25%"
  prometheus:
    enabled: true
    port: 9090
  mtls:
    enabled: true
    workloadCertTTL: 24h
    allowedClockSkew: 15m

Seznam dostupných možností najdete v tématu Konfigurace Dapr.

Omezení rozšíření na určité uzly

V některých konfiguracích můžete chtít spustit dapr jenom na určitých uzlech. Rozšíření můžete omezit předáním nodeSelector konfigurace rozšíření. Pokud požadovaná nodeSelector hodnota obsahuje ., musíte je utéct z prostředí a rozšíření. Například následující konfigurace nainstaluje Dapr pouze na uzly s 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"

Ke správě operačního global.daprControlPlaneOs systému a architektury použijte podporované verze a global.daprControlPlaneArch konfigurace:

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”

Instalace Dapr v několika zónách dostupnosti v režimu vysoké dostupnosti

Ve výchozím nastavení služba umístění používá třídu úložiště typu standard_LRS. Při instalaci Dapr v režimu vysoké dostupnosti napříč několika zónami dostupnosti se doporučuje vytvořit zónově redundantní třídu úložiště. Pokud chcete například vytvořit zrs třídu úložiště typu, přidejte parametr 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

Při instalaci Dapr použijte třídu úložiště, kterou jste použili v souboru 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"

Konfigurace oboru názvů verze Dapr

Obor názvů vydaných verzí můžete nakonfigurovat.

Rozšíření Dapr se ve výchozím nastavení nainstaluje do dapr-system oboru názvů. Chcete-li jej přepsat, použijte --release-namespace. Chcete-li předefinovat obor názvů, zahrňte cluster --scope.

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

Zjistěte, jak nakonfigurovat obor názvů verze Dapr při migraci z open source Dapr na rozšíření Dapr.

Zobrazit aktuální nastavení konfigurace

az k8s-extension show Pomocí příkazu zobrazíte aktuální nastavení konfigurace Dapr:

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

Aktualizace nastavení konfigurace

Důležité

Některé možnosti konfigurace nelze po vytvoření změnit. Úpravy těchto možností vyžadují odstranění a odpočinek rozšíření, které platí pro následující nastavení:

  • global.ha.*
  • dapr_placement.*

Vysoká dostupnost je ve výchozím nastavení povolená. Zakázání vyžaduje odstranění a opětovné odstranění rozšíření.

Pokud chcete aktualizovat nastavení konfigurace Dapr, znovu vytvořte rozšíření s požadovaným stavem. Řekněme například, že jste dříve vytvořili a nainstalovali rozšíření pomocí následující konfigurace:

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" 

Pokud chcete aktualizovat dapr_operator.replicaCount hodnoty ze dvou na tři, použijte následující příkaz:

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"

Nastavení odchozího proxy serveru pro rozšíření Dapr pro místní službu Azure Arc

Pokud chcete pro AKS použít odchozí proxy server s rozšířením Dapr, můžete to udělat takto:

  1. Nastavení proměnných prostředí proxy pomocí dapr.io/env poznámek:
    • HTTP_PROXY
    • HTTPS_PROXY
    • NO_PROXY
  2. Instalace proxy certifikátu do sajdkáře.

Aktualizace verze instalace Dapr

Pokud používáte konkrétní verzi Dapr a nemáte --auto-upgrade-minor-version k dispozici, můžete k upgradu nebo downgradu Dapr použít následující příkaz:

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

Předchozí příkaz aktualizuje pouze řídicí rovinu Dapr. Pokud chcete aktualizovat sajdkáře Dapr, restartujte nasazení aplikací:

kubectl rollout restart deploy/<DEPLOYMENT-NAME>

Použití imagí založených na Linuxu v Azure

Z Dapr verze 1.8.0 můžete použít image Azure Linuxu s rozšířením Dapr. Pokud je chcete použít, nastavte global.tag příznak:

az k8s-extension update --cluster-type managedClusters \
--cluster-name myAKSCluster \
--resource-group myResourceGroup \
--name dapr \
--set global.tag=1.10.0-mariner

Zakázání automatických aktualizací CRD

Z Dapr verze 1.9.2 se při upgradu rozšíření automaticky upgradují CRD. Chcete-li toto nastavení zakázat, můžete nastavit hooks.applyCrds na falsehodnotu .

az k8s-extension update --cluster-type managedClusters \
--cluster-name myAKSCluster \
--resource-group myResourceGroup \
--name dapr \
--configuration-settings "hooks.applyCrds=false"

Poznámka:

Disky CRD se použijí jenom v případě upgradů a během downgradů se přeskočí.

Splnění požadavků na síť

Rozšíření Dapr vyžaduje, aby fungovaly v AKS a Arc pro Kubernetes následující odchozí adresy URL https://:443 :

  1. https://mcr.microsoft.com/daprio Adresa URL pro vyžádání artefaktů Dapr
  2. Odchozí adresy URL vyžadované pro AKS nebo Arc pro Kubernetes

Další kroky