Dapr-Erweiterung für Azure Kubernetes Service (AKS) und Kubernetes mit Azure Arc-Unterstützung

Dapr vereinfacht das Erstellen robuster, zustandsloser und zustandsbehafteter Anwendungen, die in der Cloud und am Rand ausgeführt werden und die Vielfalt von Sprachen und Entwickler-Frameworks umfassen. Mit der Sidecar-Architektur von Dapr können Sie Ihre Codeplattform agnostisch halten und gleichzeitig Herausforderungen beim Aufbau von Microservices bewältigen, z. B.:

  • Andere Dienste zuverlässig und sicher anrufen
  • Erstellen ereignisgesteuerter Apps mit Pub-Sub
  • Erstellen von Anwendungen, die über mehrere Cloud-Dienste und Hosts hinweg portierbar sind (z. B. Kubernetes im Vergleich zu einer VM)

Hinweis

Wenn Sie Dapr in einer Kubernetes-Produktionsumgebung installieren möchten, lesen Sie die Dokumentationsseite Dapr-Richtlinien für die Produktionsnutzung.

Funktionsweise

Die Dapr-Erweiterung verwendet die Azure-Befehlszeilenschnittstelle, um die Dapr-Steuerungsebene in Ihrem AKS-Cluster oder Kubernetes-Cluster mit Arc-Unterstützung bereitzustellen, wobei die folgenden Dapr-Dienste erstellt werden:

Dapr-Dienst BESCHREIBUNG
dapr-operator Verwaltet Komponentenupdates und Kubernetes-Dienstendpunkte für Dapr (Zustandsspeicher, Pub/Subs usw.).
dapr-sidecar-injector Fügt Dapr in bereitstellungspods mit Anmerkungen ein und fügt die Umgebungsvariablen DAPR_HTTP_PORT und DAPR_GRPC_PORT hinzu, um benutzerdefinierten Anwendungen die problemlose Kommunikation mit Dapr zu erlauben, ohne Dapr-Portwerte hart codieren zu müssen.
dapr-placement Wird nur für Akteure verwendet. Erstellt Zuordnungstabellen, die Actor-Instanzen zu Pods zuordnen.
dapr-sentry Verwaltet mTLS zwischen Diensten und fungiert als Zertifizierungsstelle. Weitere Informationen finden Sie in der Sicherheitsübersicht.

Nachdem Dapr auf Ihrem Cluster installiert wurde, können Sie mit der Entwicklung mithilfe der Dapr-Baustein-APIs beginnen, indem Sie Ihren Bereitstellungen einige Anmerkungen hinzufügen. Eine ausführlichere Übersicht über die Baustein-APIs und deren optimale Verwendung finden Sie in der Übersicht über die Bausteine von Dapr.

Warnung

Wenn Sie Dapr über die Erweiterung für AKS oder Kubernetes mit Arc-Unterstützung installieren, wird empfohlen, die Erweiterung weiterhin anstelle der Dapr-CLI für die zukünftige Verwaltung von Dapr zu verwenden. Das Kombinieren der beiden Tools kann Konflikte verursachen und zu unerwünschtem Verhalten führen.

Voraussetzungen

Wählen Sie aus, wie Sie die Dapr-Erweiterung installieren, bereitstellen und konfigurieren möchten.

Einrichten der Azure CLI-Erweiterung für Clustererweiterungen

Installieren Sie die Azure CLI-Erweiterung k8s-extension, indem Sie die folgenden Befehle ausführen:

az extension add --name k8s-extension

Wenn die Erweiterung k8s-extension bereits installiert ist, können Sie sie mit dem folgenden Befehl auf die neueste Version aktualisieren:

az extension update --name k8s-extension

Registrieren des Ressourcenanbieters KubernetesConfiguration

Wenn Sie bisher noch keine Clustererweiterungen verwendet haben, müssen Sie den Dienstanbieter möglicherweise in Ihrem Abonnement registrieren. Sie können den Status der Anbieterregistrierung mit dem Befehl [az provider list][az-provider-list] überprüfen, wie im folgenden Beispiel gezeigt:

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

Der Microsoft.KubernetesConfiguration-Anbieter sollte als Registriert gemeldet werden, wie in der folgenden Beispielausgabe gezeigt:

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

Wenn der Anbieter als Nicht registriert angezeigt wird, registrieren Sie den Anbieter mit dem az provider register, wie im folgenden Beispiel gezeigt:

az provider register --namespace Microsoft.KubernetesConfiguration

Erstellen der Erweiterung und Installieren von Dapr auf Ihrem AKS-Cluster oder Arc-fähigen Kubernetes-Cluster

Verwenden Sie bei der Installation der Dapr-Erweiterung den Flagwert, der Ihrem Clustertyp entspricht:

  • AKS-Cluster: --cluster-type managedClusters.
  • Arc-fähiges Kubernetes-Cluster: --cluster-type connectedClusters.

Hinweis

Wenn Sie Dapr OSS auf Ihrem AKS-Cluster verwenden und die Dapr-Erweiterung für AKS installieren möchten, lesen Sie mehr über wie Sie erfolgreich zur Dapr-Erweiterung migrieren.

Erstellen Sie die Dapr-Erweiterung, die Dapr auf Ihrem AKS-Cluster oder Arc-fähigen Kubernetes-Cluster installiert.

Installieren Sie beispielsweise die neueste Version von Dapr über die Dapr-Erweiterung auf Ihrem AKS-Cluster:

az k8s-extension create --cluster-type managedClusters \
--cluster-name myAKSCluster \
--resource-group myResourceGroup \
--name dapr \
--extension-type Microsoft.Dapr \
--auto-upgrade-minor-version false

Konfigurieren automatischer Updates für Dapr-Steuerungsebene

Warnung

Sie können automatische Updates für die Dapr-Steuerungsebene nur in Entwicklungs- oder Testumgebungen aktivieren. Das automatische Upgrade eignet sich nicht für Produktionsumgebungen.

Wenn Sie Dapr ohne Angabe einer Version installieren, --auto-upgrade-minor-versionwird die Dapr-Steuerungsebene automatisch aktiviert, um die Nebenversion in neuen Versionen automatisch zu aktualisieren.

Sie können die automatische Aktualisierung deaktivieren, indem Sie den --auto-upgrade-minor-version-Parameter angeben und den Wert auf false festlegen.

Dapr-Versionsverwaltung ist im MAJOR.MINOR.PATCH-Format, was bedeutet, dass es sich bei 1.11.0 auf 1.12.0 um ein kleineres Versionsupgrade handelt.

--auto-upgrade-minor-version true

Als Ziel für eine bestimmte Dapr-Version

Hinweis

Dapr wird mit einem rollierendem Fenster unterstützt, das nur die aktuelle und frühere Version enthält. Es liegt in Ihrer operativen Verantwortung, mit diesen unterstützten Versionen auf dem neuesten Stand zu bleiben. Wenn Sie über eine ältere Version von Dapr verfügen, müssen Sie möglicherweise Zwischenupgrades für eine unterstützte Version durchzuführen.

Dasselbe Befehlszeilenargument wird zum Installieren einer bestimmten Dapr-Version oder zum Roll back auf eine frühere Version verwendet. Legen --auto-upgrade-minor-version Sie auf false und --version auf die Version von Dapr fest, die Sie installieren möchten. Wenn der Parameter version weggelassen wird, installiert die Erweiterung die neueste Version von Dapr. So verwenden Sie z. B. Dapr 1.11.2

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.11.2

Auswählen eines Release Train

Beim Konfigurieren der Erweiterung können Sie sich zur Installation von Dapr aus einem bestimmten Release Train entschließen. Geben Sie einen der beiden Release-Train-Werte an:

Wert Beschreibung
stable Standard.
dev Frühe Releases können experimentelle Features enthalten. Nicht geeignet für die Produktion.

Zum Beispiel:

--release-train stable

Problembehandlung bei Erweiterungsfehlern

Wenn die Erweiterung nicht erstellt oder aktualisiert werden kann, versuchen Sie Vorschläge und Lösungen im Dapr-Erweiterungshandbuch zur Problembehandlung.

Behandlung von Problemen mit Dapr

Sie können Dapr-Fehler anhand des Lösungsleitfadens für gängige Dapr-Probleme behandeln.

Entfernen der Erweiterung

Wenn Sie die Erweiterung löschen und Dapr aus Ihrem AKS-Cluster entfernen müssen, können Sie den folgenden Befehl verwenden:

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

Sie können auch einfach die Bicep-Vorlage entfernen.

Nächste Schritte