Azure Kubernetes Service (AKS) ve Arc özellikli Kubernetes için Dapr uzantısını yükleme

Dapr, bulutta ve uçta çalışan, dillerin ve geliştirici çerçevelerinin çeşitliliğini benimseyen dayanıklı, durum bilgisi olmayan ve durum bilgisine sahip uygulamalar oluşturmayı basitleştirir. Dapr'ın sepet mimarisiyle kod platformunuzu belirsiz tutarken mikro hizmetler oluşturmayla ilgili zorluklarla da başa çıkabilirsiniz, örneğin:

  • Diğer hizmetleri güvenilir ve güvenli bir şekilde çağırma
  • Pub/sub ile olay odaklı uygulamalar oluşturma
  • Birden çok bulut hizmeti ve ana bilgisayar arasında taşınabilir uygulamalar oluşturma (örneğin, Kubernetes ve sanal makine)

Not

Dapr'ı bir Kubernetes üretim ortamına yüklemeyi planlıyorsanız Dapr üretim yönergelerine bakın.

Nasıl çalışır?

Dapr uzantısı, AKS veya Arc özellikli Kubernetes kümenizde Dapr denetim düzlemini sağlamak için Azure CLI veya Bicep şablonunu kullanarak aşağıdaki Dapr hizmetlerini oluşturur:

Dapr hizmeti Açıklama
dapr-operator Dapr için bileşen güncelleştirmelerini ve Kubernetes hizmet uç noktalarını yönetir (durum depoları, pub/subs vb.)
dapr-sidecar-injector Dapr'ı açıklamalı dağıtım podlarına ekler ve ortam değişkenlerini DAPR_HTTP_PORT ekler ve DAPR_GRPC_PORT kullanıcı tanımlı uygulamaların Dapr bağlantı noktası değerlerini sabit kodlamadan dapr ile kolayca iletişim kurmasını sağlar.
dapr-placement Yalnızca aktörler için kullanılır. Aktör örneklerini podlarla eşleyen eşleme tabloları oluşturur.
dapr-sentry Hizmetler arasında mTLS'i yönetir ve sertifika yetkilisi olarak görev yapar. Daha fazla bilgi için güvenliğe genel bakış'ı okuyun.

Kümenize Dapr yüklendikten sonra, dağıtımlarınıza birkaç ek açıklama ekleyerek Dapr yapı taşı API'lerini kullanarak geliştirmeye başlayabilirsiniz. Yapı taşı API'lerine ve bunların en iyi şekilde nasıl kullanılacağına daha ayrıntılı bir genel bakış için bkz . Dapr yapı taşları genel bakış.

Uyarı

Dapr'ı AKS veya Arc özellikli Kubernetes uzantısı aracılığıyla yüklerseniz, dapr CLI yerine Dapr'ın gelecekteki yönetimi için uzantıyı kullanmaya devam edebilirsiniz. İki aracı birleştirmek çakışmalara neden olabilir ve istenmeyen davranışlara neden olabilir.

Önkoşullar

Dapr uzantısını nasıl yüklemek, dağıtmak ve yapılandırmak istediğinizi seçin.

Başlamadan önce

Küme uzantıları için Azure CLI uzantısını ekleme

k8s-extension Aşağıdaki komutları çalıştırarak Azure CLI uzantısını yükleyin:

az extension add --name k8s-extension

k8s-extension Uzantı zaten yüklüyse, aşağıdaki komutu kullanarak uzantıyı en son sürüme güncelleştirebilirsiniz:

az extension update --name k8s-extension

Kaynak sağlayıcısını KubernetesConfiguration kaydetme

Küme uzantılarını henüz kullanmıyorsanız kaynak sağlayıcısını aboneliğinize kaydetmeniz gerekebilir. Aşağıdaki örnekte gösterildiği gibi az provider list komutunu kullanarak sağlayıcı kaydının durumunu de kontrol edebilirsiniz:

az provider list --query "[?contains(namespace,'Microsoft.KubernetesConfiguration')]" -o table

Microsoft.KubernetesConfiguration sağlayıcısı aşağıdaki örnek çıktıda gösterildiği gibi Kayıtlı olarak bildirilmelidir:

Namespace                          RegistrationState    RegistrationPolicy
---------------------------------  -------------------  --------------------
Microsoft.KubernetesConfiguration  Registered           RegistrationRequired

Sağlayıcı NotRegistered olarak görünüyorsa, aşağıdaki örnekte gösterildiği gibi az provider register komutunu kullanarak sağlayıcıyı kaydedin.

az provider register --namespace Microsoft.KubernetesConfiguration

ExtensionTypes Özelliği Azure aboneliğinize kaydetme

Özelliğin ExtensionTypes Azure aboneliğinize kaydedilmesi gerekir. Terminalde doğru abonelikte olduğunuzu doğrulayın:

az account set --subscription <your-azure-subscription-ID>

ExtensionTypes Özelliği kaydedin.

az feature registration create --namespace Microsoft.KubernetesConfiguration --name ExtensionTypes

Özellik kaydı biraz zaman alabilir. Birkaç dakika sonra aşağıdaki komutu kullanarak kayıt durumunu denetleyin:

az feature show --namespace Microsoft.KubernetesConfiguration --name ExtensionTypes

Uzantıyı oluşturma ve AKS veya Arc özellikli Kubernetes kümenize Dapr yükleme

Dapr uzantısını yüklerken kümenizin türüne karşılık gelen bayrak değerini kullanın:

  • AKS kümesi: --cluster-type managedClusters
  • Arc özellikli Kubernetes kümesi: --cluster-type connectedClusters

Not

AKS kümenizde Dapr OSS kullanıyorsanız ve AKS için Dapr uzantısını yüklemek istiyorsanız bkz. Dapr OSS'den Dapr uzantısına geçiş.

AKS veya Arc özellikli Kubernetes kümenize Dapr yükleyen Dapr uzantısını oluşturun.

Örneğin, AKS kümenize Dapr uzantısı aracılığıyla Dapr'ın en son sürümünü yükleyin:

az k8s-extension create --cluster-type managedClusters \
--cluster-name <your-AKS-cluster> \
--resource-group <your-resource-group> \
--name dapr \
--extension-type Microsoft.Dapr \
--auto-upgrade-minor-version false

Yönetilen AKS kümenizi en son sürüme güncelleştirin

Ortamınıza (geliştirme, test veya üretim) bağlı olarak en son kararlı Dapr sürümleriyle güncel bilgilere sahip olabilirsiniz.

Bir yayın treni seçin

Uzantıyı yapılandırırken, Belirli bir sürüm treninden Dapr'ı yüklemeyi seçebilirsiniz. İki yayın treni değerinden birini belirtin.

Değer Açıklama
stable Varsayılan.
dev Deneysel özellikler içerebilen erken sürümler. Üretim için uygun değildir.

Örneğin:

--release-train stable

Dapr denetim düzlemi için otomatik güncelleştirmeleri yapılandırma

Uyarı

Otomatik yükseltme, üretim ortamları için uygun değildir. Yalnızca geliştirme veya test ortamlarında Dapr kontrol düzleminde otomatik güncelleştirmeleri etkinleştirin. Üretim ortamları için en son Dapr sürümüne el ile yükseltmeyi öğrenin.

Dapr'ı bir sürüm belirtmeden yüklerseniz, --auto-upgrade-minor-versionotomatik olarak etkinleştirilir ve bu, Dapr denetim düzleminin yeni sürümlerde ikincil sürümünü otomatik olarak güncelleştirecek şekilde yapılandırılmasını sağlar.

parametresini belirtip --auto-upgrade-minor-version değerini falseolarak ayarlayarak otomatik güncelleştirmeyi devre dışı bırakabilirsiniz.

Dapr sürümleme, MAJOR.MINOR.PATCH formatındadır, bu da 1.11.01.12.0'den ikincil bir sürüm yükseltmesi anlamına gelir.

--auto-upgrade-minor-version true

Kullanılabilir en son kararlı Dapr sürümlerini görüntüleyin

Üretim ortamında en son Dapr sürümüne yükseltmek için el ile yükseltmeniz gerekir. Yönetilen AKS kümenizde kullanılabilen kararlı Dapr sürümlerinin listesini görüntüleyerek başlayın. Şu komutu çalıştırın:

az k8s-extension extension-types list-versions-by-cluster --resource-group <your-resource-group> --cluster-name <your-AKS-cluster> --cluster-type managedClusters --extension-type microsoft.dapr --release-train stable

Yönetilen AKS kümenizde kullanılabilen en son kararlı Dapr sürümünü görmek için aşağıdaki komutu çalıştırın:

az k8s-extension extension-types list-versions-by-cluster --resource-group <your-resource-group> --cluster-name <your-AKS-cluster> --cluster-type managedClusters --extension-type microsoft.dapr  --release-train stable --show-latest

Konuma göre kullanılabilen kararlı Dapr sürümlerinin listesini görüntülemek için:

  1. Özelliği Azure aboneliğinize kaydettiğinizden ExtensionTypesemin olun.
  2. Aşağıdaki komutu çalıştırın.
az k8s-extension extension-types list-versions-by-location --location westus --extension-type microsoft.dapr

Belirli bir Dapr sürümünü hedefleme

Ardından Dapr'ı en son kararlı sürüme el ile güncelleştirin.

Not

Dapr, yalnızca geçerli ve önceki sürümleri içeren döngüsel bir pencereyle desteklenir. Bu desteklenen sürümlerle güncel kalmak operasyonel sorumluluğunuzdadır. Dapr'ın daha eski bir sürümüne sahipseniz desteklenen bir sürüme ulaşmak için ara yükseltmeler yapmanız gerekebilir.

Dapr'ın tanımlı bir sürümünü yüklemek ya da önceki bir sürüme geri dönmek için aynı komut satırı bağımsız değişkeni kullanılır. --auto-upgrade-minor-version ve false'yi yüklemek istediğiniz Dapr sürümüne, --version'yi ise başka bir sürüme ayarlayın. version Parametresi atlanırsa, uzantı En son Dapr sürümünü yükler. Aşağıdaki örnek komut AKS kümenize Dapr sürümünü 1.14.4-msft.10 yükler:

az k8s-extension create --cluster-type managedClusters \
--cluster-name <your-AKS-cluster> \
--resource-group <your-resource-group> \
--name dapr \
--extension-type Microsoft.Dapr \
--auto-upgrade-minor-version false \
--version 1.14.4-msft.10

Sorun giderme

Uzantı yönetimi hatalarını giderme

Uzantı oluşturulamıyor veya güncelleştirilemiyorsa, Dapr uzantısı sorun giderme kılavuzunda önerileri ve çözümleri deneyin.

Dapr işlev hatalarını giderme

Yaygın Dapr sorunları ve çözüm kılavuzunu görüntüleyerek uzantıyla ilgili olmayan Dapr açık kaynak hatalarını giderin.

Destek

Not

Microsoft'un Dapr uzantısı için ortaya çıkarılmış sorunları nasıl işlediği hakkında daha fazla bilgi edinin.

Uzantıyı kullanırken Dapr çalışma zamanı güvenlik riskleri ve regresyonlarıyla karşılaşıyorsanız, Dapr açık kaynak projesiyle ilgili bir sorun açın.

Dapr projesi Discord'da da bir tartışma başlatabilirsiniz:

Kümenizden Dapr uzantısını silme

AKS'den Dapr uzantısını kaldırma işlemi, yükleme sırasında oluşturulan özel kaynak tanımlarını (CRD) silmez. Bu CRD'ler, uzantının yüklenmesi ve kaldırılması sırasında reconciler için gerekli olan kalıntı bileşenler olarak kümede kalır.

Bu CRD'lerin kümesini temizlemek için Dapr uzantısı AKS'den tamamen kaldırıldıktan sonra bunları el ile silebilirsiniz.

Uzantıyı kaldırma

Aşağıdaki komutu kullanarak uzantıyı AKS kümenizden silin:

az k8s-extension delete --resource-group <your-resource-group> --cluster-name <your-AKS-cluster> --cluster-type managedClusters --name dapr

Öte yandan Bicep şablonu kullanıyorsanız şablonu silebilirsiniz.

Kümenizdeki CRD'leri listeleme

Kaldırmak istediğiniz CRD'leri bulmak için aşağıdaki komutu çalıştırın:

kubectl get crds | findstr dapr.io

Sonraki adım