Beheben von Fehlern bei der Installation der Dapr-Erweiterung
In diesem Artikel werden einige häufige Fehlermeldungen erläutert, die beim Installieren oder Aktualisieren der Dapr-Erweiterung (Distributed Application Runtime) für Microsoft Azure Kubernetes Service (AKS) oder Arc für Kubernetes auftreten können.
Szenario 1: Fehler bei der Installation, zeigt aber keine Fehlermeldung an
Wenn die Erweiterung beim Erstellen oder Aktualisieren eine Fehlermeldung generiert, können Sie überprüfen, wo die Erstellung fehlgeschlagen ist, indem Sie den Befehl az k8s-extension list ausführen:
az k8s-extension list --resource-group <my-resource-group-name> \
--cluster-name <my-cluster-name> \
--cluster-type managedClusters
Wenn in den Konfigurationseinstellungen ein falscher Schlüssel verwendet wird, zglobal.ha=false
. B. anstelle von global.ha.enabled=false
, wird der folgende JSON-status zurückgegeben. Die Fehlermeldung wird in der message
-Eigenschaft erfasst.
"statuses": [
{
"code": "InstallationFailed",
"displayStatus": null,
"level": null,
"message": "Error: {failed to install chart from path [] for release [dapr-1]: err [template: dapr/charts/dapr_sidecar_injector/templates/dapr_sidecar_injector_poddisruptionbudget.yaml:1:17: executing \"dapr/charts/dapr_sidecar_injector/templates/dapr_sidecar_injector_poddisruptionbudget.yaml\" at <.Values.global.ha.enabled>: can't evaluate field enabled in type interface {}]} occurred while doing the operation : {Installing the extension} on the config",
"time": null
}
],
Hier sehen Sie ein weiteres Beispiel für eine JSON-Fehlermeldung:
"statuses": [
{
"code": "InstallationFailed",
"displayStatus": null,
"level": null,
"message": "The extension operation failed with the following error: unable to add the configuration with configId {extension:microsoft-dapr} due to error: {error while adding the CRD configuration: error {failed to get the immutable configMap from the elevated namespace with err: configmaps 'extension-immutable-values' not found }}. (Code: ExtensionOperationFailed)",
"time": null
}
]
Lösung 1: Neustarten des Clusters, Registrieren des Dienstanbieters oder Löschen und Erneutes Installieren von Dapr
Um dieses Problem zu beheben, probieren Sie die folgenden Methoden aus:
Registrieren Sie den KubernetesConfiguration-Dienstanbieter.
Erzwingen Sie das Löschen, und installieren Sie die Dapr-Erweiterung erneut.
Szenario 2: Die zielorientierte Dapr-Version ist nicht vorhanden
Wenn Sie versuchen, die Dapr-Erweiterung für eine bestimmte Version zu installieren, erhalten Sie eine Fehlermeldung, die besagt, dass die Dapr-Version nicht vorhanden ist:
(ExtensionOperationFailed) Fehler beim Erweiterungsvorgang: Fehler beim Auflösen der Erweiterungsversion aus den angegebenen Werten.
Code: ExtensionOperationFailed
Meldung: Fehler beim Erweiterungsvorgang: Fehler beim Auflösen der Erweiterungsversion aus den angegebenen Werten.
Lösung 2: Erneutes Installieren für eine unterstützte Dapr-Version
Versuchen Sie es erneut, die Erweiterung zu installieren. Stellen Sie sicher, dass Sie eine unterstützte Version von Dapr verwenden.
Szenario 3: Die Dapr-Zielversion ist vorhanden, aber nicht in der angegebenen Region.
Da einige Versionen von Dapr nicht in allen Regionen verfügbar sind, erhalten Sie möglicherweise die folgende Fehlermeldung:
(ExtensionTypeRegistrationGetFailed) Der Erweiterungstyp microsoft.dapr ist nicht in region <regionname> registriert.
Code: ExtensionTypeRegistrationGetFailed
Meldung: Der Erweiterungstyp microsoft.dapr ist nicht im Regionsnamen <registriert.>
Lösung 3: Installieren in einer anderen Region
Installieren Sie in einer Region, in der Ihre Dapr-Version unterstützt wird.
Szenario 4: Dapr ist bereits installiert
Sie versuchen, die Dapr-Erweiterung für AKS oder Arc für Kubernetes zu installieren, erhalten jedoch eine Fehlermeldung, die angibt, dass der dapr-system
Namespace bereits vorhanden ist. Diese Fehlermeldung ähnelt dem folgenden Text:
(ExtensionOperationFailed) Fehler beim Erweiterungsvorgang: Fehler: {Fehler beim Installieren des Diagramms vom Pfad [] für Release [dapr-ext]: err [gerenderte Manifeste enthalten eine Ressource, die bereits vorhanden ist. Die Installation kann nicht fortgesetzt werden: ServiceAccount "dapr-operator" im Namespace "dapr-system" ist vorhanden und kann nicht in die aktuelle Version importiert werden: ungültige Besitzmetadaten; Fehler bei der Anmerkungsüberprüfung: Schlüssel "meta.helm.sh/release-name" muss gleich "dapr-ext": aktueller Wert ist "dapr"]} beim Ausführen des Vorgangs aufgetreten: {Installing the extension} on the config
Lösung 4: Deinstallieren Von Dapr OSS zuerst
Deinstallieren Sie das Dapr OSS, bevor Sie die Dapr-Erweiterung installieren. Weitere Informationen finden Sie unter Migrieren von Dapr OSS zur Dapr-Erweiterung für AKS.
Szenario 5: Der Platzierungsserverpod befindet sich in einem fehlerhaften Zustand.
Der folgende Fehler tritt auf:
0/4 Knoten sind verfügbar: 1 Knoten waren nicht planbar, 3 Knoten weisen einen Volumeknotenaffinitätskonflikt auf. vorzeitige Entfernung: 0/4 Knoten sind verfügbar: 4 Vorzeitige Entfernung ist für die Planung nicht hilfreich.
Dieses Problem kann auftreten, wenn der Platzierungsserverpod versucht, das persistente Volume zu verwenden, das in einer anderen Zone als der Platzierungsserverpod selbst erstellt wird.
Lösung 5: Installieren von Dapr in mehreren Verfügbarkeitszonen oder Beschränken des Platzierungsdiensts auf eine bestimmte Verfügbarkeitszone
Wenden Sie eine der folgenden Methoden an, um dieses Problem zu beheben:
Befolgen Sie den empfohlenen Ansatz unter Installieren von Dapr in mehreren Verfügbarkeitszonen im Hochverfügbarkeitsmodus.
Beschränken Sie den Platzierungsdienst auf eine bestimmte Verfügbarkeitszone, indem Sie eine benutzerdefinierte Speicherklasse erstellen und für den Platzierungsdienst verwenden, und führen Sie dann den folgenden Befehl aus:
az k8s-extension create --cluster-type managedClusters --cluster-name <clustername> --resource-group <resourcegroup> --name <name> --extension-type Microsoft.Dapr --auto-upgrade-minor-version <minorversion> --version <version> --configuration-settings "dapr_placement.volumeclaims.storageClassName=zone-restricted"
Hier sehen Sie ein Beispiel für das Erstellen einer benutzerdefinierten Speicherklasse:
kind: StorageClass apiVersion: storage.k8s.io/v1 metadata: name: zone-restricted provisioner: disk.csi.azure.com reclaimPolicy: Delete allowVolumeExpansion: true volumeBindingMode: WaitForFirstConsumer allowedTopologies: - matchLabelExpressions: - key: topology.kubernetes.io/zone values: - centralus-1 parameters: storageaccounttype: StandardSSD_LRS
Nächste Schritte
Wenn weiterhin Probleme mit der Installation auftreten, lesen Sie den AKS-Leitfaden zur Problembehandlung und den Dapr OSS-Leitfaden zur Problembehandlung.
Informationen zum Haftungsausschluss von Drittanbietern
Die in diesem Artikel genannten Drittanbieterprodukte stammen von Herstellern, die von Microsoft unabhängig sind. Microsoft gewährt keine implizite oder sonstige Garantie in Bezug auf die Leistung oder Zuverlässigkeit dieser Produkte.
Kontaktieren Sie uns für Hilfe
Wenn Sie Fragen haben oder Hilfe mit Ihren Azure-Gutschriften benötigen, dann erstellen Sie beim Azure-Support eine Support-Anforderung oder fragen Sie den Azure Community-Support. Sie können auch Produktfeedback an die Azure Feedback Community senden.