Felsöka installationsfel för Dapr-tillägg
I den här artikeln beskrivs några vanliga felmeddelanden som du kan få när du installerar eller uppdaterar Dapr-tillägget (Distributed Application Runtime) för Microsoft Azure Kubernetes Service (AKS) eller Arc for Kubernetes.
Scenario 1: Installationen misslyckas men visar inget felmeddelande
Om tillägget genererar ett felmeddelande när du skapar eller uppdaterar det kan du kontrollera var skapandet misslyckades genom att köra kommandot az k8s-extension list :
az k8s-extension list --resource-group <my-resource-group-name> \
--cluster-name <my-cluster-name> \
--cluster-type managedClusters
Om en fel nyckel används i konfigurationsinställningarna, till exempel global.ha=false
i stället för global.ha.enabled=false
, returneras följande JSON-status. Felmeddelandet samlas in i egenskapen message
.
"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
}
],
Här är ett annat exempel på ett JSON-felmeddelande:
"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ösning 1: Starta om klustret, registrera tjänstleverantören eller ta bort och installera om Dapr
Prova följande metoder för att åtgärda problemet:
Framtvinga borttagning och installera om Dapr-tillägget.
Scenario 2: Riktad Dapr-version finns inte
När du försöker installera Dapr-tillägget för att rikta in dig på en viss version får du ett felmeddelande om att Dapr-versionen inte finns:
(ExtensionOperationFailed) Tilläggsåtgärden misslyckades med följande fel: Det gick inte att matcha tilläggsversionen från de angivna värdena.
Kod: ExtensionOperationFailed
Meddelande: Tilläggsåtgärden misslyckades med följande fel: Det gick inte att matcha tilläggsversionen från de angivna värdena.
Lösning 2: Installera igen för en Dapr-version som stöds
Försök igen för att installera tillägget. Kontrollera att du använder en version av Dapr som stöds.
Scenario 3: Den riktade Dapr-versionen finns men inte i den angivna regionen
Eftersom vissa versioner av Dapr inte är tillgängliga i alla regioner kan du få följande felmeddelande:
(ExtensionTypeRegistrationGetFailed) Tilläggstypen microsoft.dapr är inte registrerad i regionregionnamn<>.
Kod: ExtensionTypeRegistrationGetFailed
Meddelande: Tilläggstypen microsoft.dapr är inte registrerad i regionregionnamn <>
Lösning 3: Installera i en annan region
Installera i en region där dapr-versionen stöds.
Scenario 4: Dapr är redan installerat
Du försöker installera Dapr-tillägget för AKS eller Arc för Kubernetes, men du får ett felmeddelande som anger att dapr-system
namnområdet redan finns. Det här felmeddelandet liknar följande text:
(ExtensionOperationFailed) Tilläggsåtgärden misslyckades med följande fel: Fel: {det gick inte att installera diagrammet från sökvägen [] för versionen [dapr-ext]: err [renderade manifest innehåller en resurs som redan finns. Det går inte att fortsätta med installationen: ServiceAccount "dapr-operator" i namnområdet "dapr-system" finns och kan inte importeras till den aktuella versionen: ogiltiga ägarskapsmetadata; valideringsfel för anteckning: nyckeln "meta.helm.sh/release-name" måste vara lika med "dapr-ext": det aktuella värdet är "dapr"]} inträffade när åtgärden : {Installing the extension} on the config
Lösning 4: Avinstallera Dapr OSS först
Avinstallera Dapr OSS innan du installerar Dapr-tillägget. Mer information finns i Migrera från Dapr OSS till Dapr-tillägget för AKS.
Scenario 5: Placeringsserverpodden är i ett felaktigt tillstånd
Du får följande fel:
0/4 noder är tillgängliga: 1 noder var oplanerade, 3 noder hade volymnodtillhörighetskonflikt. preemption: 0/4 noder är tillgängliga: 4 Preemption är inte användbart för schemaläggning.
Det här problemet kan inträffa när placeringsserverpodden försöker använda den beständiga volymen som skapas i en annan zon än själva placeringsserverpodden.
Lösning 5: Installera Dapr i flera tillgänglighetszoner eller begränsa placeringstjänsten till en viss tillgänglighetszon
Använd någon av följande metoder för att lösa problemet:
Följ den rekommenderade metoden i Installera Dapr i flera tillgänglighetszoner när du är i HA-läge.
Begränsa placeringstjänsten till en viss tillgänglighetszon genom att skapa en anpassad lagringsklass och använda den för placeringstjänsten och kör sedan följande kommando:
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"
Här är ett exempel på hur du skapar en anpassad lagringsklass:
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ästa steg
Om du fortfarande har problem med installationen kan du utforska felsökningsguiden för AKS och felsökningsguiden för Dapr OSS.
Ansvarsfriskrivning för information från tredje part
De produkter från andra tillverkare som diskuteras i denna artikel tillverkas oberoende av Microsoft. Produkternas funktion eller tillförlitlighet kan därför inte garanteras.
Kontakta oss för att få hjälp
Om du har frågor eller behöver hjälp skapar du en supportförfrågan eller frågar Azure community support. Du kan också skicka produktfeedback till Azure-feedbackcommunityn.