Aracılığıyla paylaş


Azure Kubernetes Service (AKS) ve Arc özellikli Kubernetes projeniz için Dapr uzantısını yapılandırma

Dapr uzantısını oluşturduktan sonra, aşağıdakiler gibi çeşitli yapılandırma seçeneklerini kullanarak Dapr uzantısını sizin ve projeniz için en iyi şekilde çalışacak şekilde yapılandırabilirsiniz:

  • Hangi düğümlerinizin Dapr uzantısını kullandığını sınırlama
  • Otomatik CRD güncelleştirmelerini ayarlama
  • Dapr yayın ad alanını yapılandırma

Uzantı, Azure CLI'daki parametresini --configuration-settings veya configurationSettings bicep şablonundaki özelliği kullanarak Dapr yapılandırma seçeneklerini ayarlamanıza olanak tanır.

Yüksek kullanılabilirlik (HA) etkin olarak Dapr sağlama

Parametresini olarak ayarlayarak global.ha.enabled Dapr'ı yüksek kullanılabilirlik (HA) etkin olarak truesağlayın.

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"

Not

Yapılandırma ayarları hassassa ve korunması gerekiyorsa (örneğin, sertifikayla ilgili bilgiler), parametresini --configuration-protected-settings geçirin; değer okunmaya karşı korunur.

Hiçbir yapılandırma ayarı geçirilmediyse, Dapr yapılandırması varsayılan olarak şunlardır:

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

Kullanılabilir seçeneklerin listesi için bkz . Dapr yapılandırması.

Uzantıyı belirli düğümler ile sınırlama

Bazı yapılandırmalarda, Yalnızca belirli düğümlerde Dapr çalıştırmak isteyebilirsiniz. Uzantı yapılandırmasında bir nodeSelector geçirerek uzantıyı sınırlayabilirsiniz. İstenen nodeSelector öğesini içeriyorsa ., bunları kabuktan ve uzantıdan kaçmalısınız. Örneğin, aşağıdaki yapılandırma Dapr'ı yalnızca ile topology.kubernetes.io/zone: "us-east-1c"düğümlere yükler:

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"

İşletim sistemi ve mimariyi yönetmek için ve global.daprControlPlaneArch yapılandırmasının global.daprControlPlaneOs desteklenen sürümlerini kullanın:

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”

DAPR'yi HA modundayken birden çok kullanılabilirlik alanına yükleme

Varsayılan olarak, yerleştirme hizmeti türünde standard_LRSbir depolama sınıfı kullanır. Dapr'ı birden çok kullanılabilirlik alanında HA modunda yüklerken alanlar arası yedekli depolama sınıfı oluşturmanız önerilir. Örneğin, tür zrs depolama sınıfı oluşturmak için parametresini storageaccounttype ekleyin:

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

Dapr'ı yüklerken YAML dosyasında kullandığınız depolama sınıfını kullanın:

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"

Dapr yayın ad alanını yapılandırma

Yayın ad alanını yapılandırabilirsiniz.

Dapr uzantısı varsayılan olarak ad alanına dapr-system yüklenir. Geçersiz kılmak için kullanın --release-namespace. Ad alanını yeniden tanımlamak için kümeyi --scope ekleyin.

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

Dapr zaten yüklüyse Dapr yayın ad alanını yapılandırmayı öğrenin.

Geçerli yapılandırma ayarlarını göster

az k8s-extension show Geçerli Dapr yapılandırma ayarlarını göstermek için komutunu kullanın:

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

Yapılandırma ayarlarını güncelleştirme

Önemli

Bazı yapılandırma seçenekleri oluşturma işleminden sonra değiştirilemez. Bu seçeneklerde yapılan ayarlamalar, aşağıdaki ayarlar için geçerli olan uzantının silinmesini ve yeniden kullanılmasını gerektirir:

  • global.ha.*
  • dapr_placement.*

HA varsayılan olarak etkindir. Devre dışı bırakmak, uzantının silinmesini ve yeniden kullanılmasını gerektirir.

Dapr yapılandırma ayarlarınızı güncelleştirmek için uzantıyı istenen durumla yeniden oluşturun. Örneğin, uzantıyı daha önce aşağıdaki yapılandırmayı kullanarak oluşturup yüklediğimiz varsayılır:

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" 

öğesini ikiden üçe güncelleştirmek dapr_operator.replicaCount için aşağıdaki komutu kullanın:

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"

Şirket içi Azure Arc için Dapr uzantısının giden ara sunucusunu ayarlama

AKS için Dapr uzantısıyla giden ara sunucu kullanmak istiyorsanız, bunu şu şekilde yapabilirsiniz:

  1. Ek açıklamaları kullanarak dapr.io/env ara sunucu ortam değişkenlerini ayarlama:
    • HTTP_PROXY
    • HTTPS_PROXY
    • NO_PROXY
  2. Ara sunucu sertifikasını sepete yükleme.

Dapr yükleme sürümünüzü güncelleştirme

Belirli bir Dapr sürümü kullanıyorsanız ve kullanılabilir durumda değilseniz --auto-upgrade-minor-version , Dapr'yi yükseltmek veya düşürmek için aşağıdaki komutu kullanabilirsiniz:

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

Yukarıdaki komut yalnızca Dapr denetim düzlemini güncelleştirir. Dapr sepetlerini güncelleştirmek için uygulama dağıtımlarınızı yeniden başlatın:

kubectl rollout restart deploy/<DEPLOYMENT-NAME>

Azure Linux tabanlı görüntüleri kullanma

Dapr sürüm 1.8.0'dan Azure Linux görüntülerini Dapr uzantısıyla kullanabilirsiniz. Bunları kullanmak için bayrağını global.tag ayarlayın:

az k8s-extension update --cluster-type managedClusters \
--cluster-name myAKSCluster \
--resource-group myResourceGroup \
--name dapr \
--set global.tag=1.10.0-mariner
  • Dapr ile Mariner tabanlı görüntüleri kullanma hakkında daha fazla bilgi edinin.
  • AKS'de Azure Linux dağıtma hakkında daha fazla bilgi edinin.

Otomatik CRD güncelleştirmelerini devre dışı bırakma

Dapr sürüm 1.9.2'den uzantı yükseltildiğinde CRD'ler otomatik olarak yükseltilir. Bu ayarı devre dışı bırakmak için olarak ayarlayabilirsiniz hooks.applyCrdsfalse.

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

Not

CRD'ler yalnızca yükseltme durumunda uygulanır ve sürüm düşürme işlemleri sırasında atlanır.

Ağ gereksinimlerini karşılama

Kubernetes için AKS ve Arc için Dapr uzantısının çalışması için aşağıdaki giden URL'lerin açık https://:443 olması gerekir:

  1. https://mcr.microsoft.com/daprio Dapr yapıtlarını çekmek için URL.
  2. https://linuxgeneva-microsoft.azurecr.io/ Bazı Dapr bağımlılıklarını çekmek için URL.
  3. Kubernetes için AKS veya Arc için gereken giden URL'ler.

Sonraki Adımlar

AKS kümenizde Dapr'ı başarıyla sağladıktan sonra örnek bir uygulama dağıtmayı deneyin.