Dela via


Problem med AKS-kostnadsanalys

I den här artikeln beskrivs hur du felsöker problem som kan uppstå när du aktiverar kostnadsanalystillägget för Microsoft Azure Kubernetes Service (AKS) när klustret skapas eller en klusteruppdatering.

Förutsättningar

Symptom

När du har skapat eller uppdaterat ett AKS-kluster får du ett felmeddelande i följande format:

Felkod Orsak
InvalidDiskCSISettingForCostAnalysis Orsak 1: Azure Disk CSI-drivrutinen är inaktiverad
InvalidManagedIdentitySettingForCostAnalysis Orsak 2: Hanterad identitet är inaktiverad
CostAnalysisNotEnabledInRegion Orsak 3: Tillägget är inte tillgängligt i din region
InvalidManagedClusterSKUForFeature Orsak 4: Tillägget är inte tillgängligt på den kostnadsfria prisnivån
Balja OOMKilled Orsak 5: Kostnadsanalysagentpodden hämtar OOMKilled-felet
Balja Pending Orsak 6:Kostnadsanalysagentpodden har fastnat i väntande tillstånd

Orsak 1: Azure Disk CSI-drivrutinen är inaktiverad

Du kan inte aktivera kostnadsanalystillägget på ett kluster där CSI-drivrutinen (Azure Disk Container Storage Interface) är inaktiverad.

Lösning: Uppdatera klustret för att aktivera Azure Disk CSI-drivrutinen

Kör kommandot az aks update och ange parametern--enable-disk-driver. Den här parametern aktiverar Azure Disk CSI-drivrutinen i AKS.

az aks update --resource-group <my-resource-group> --name <my-aks-cluster> --enable-disk-driver

Mer information finns i CSI-drivrutiner på AKS.

Orsak 2: Hanterad identitet är inaktiverad

Du kan endast aktivera kostnadsanalystillägget i ett kluster som har en systemtilldelad eller användartilldelad hanterad identitet.

Lösning: Uppdatera klustret för att aktivera hanterad identitet

Kör kommandot az aks update och ange parametern--enable-managed-identity:

az aks update --resource-group <my-resource-group> --name <my-aks-cluster> --enable-managed-identity

Mer information finns i Använda en hanterad identitet i AKS.

Orsak 3: Tillägget är inte tillgängligt i din region

Kostnadsanalystillägget är för närvarande inte aktiverat i din region.

Kommentar

AKS-kostnadsanalystillägget är för närvarande inte tillgängligt i följande regioner:

  • usnateast
  • usnatwest
  • usseceast
  • ussecwest

Orsak 4: Tillägget är inte tillgängligt på den kostnadsfria prisnivån

Du kan inte aktivera kostnadsanalystillägget på AKS-kluster som finns på den kostnadsfria prisnivån.

Lösning: Uppdatera klustret så att det använder prisnivån Standard eller Premium

Uppgradera AKS-klustret till prisnivån Standard eller Premium. Det gör du genom att köra något av följande az aks-uppdateringskommandon som anger parametern --tier :

az aks update --resource-group <my-resource-group> --name <my-aks-cluster> --tier standard
az aks update --resource-group <my-resource-group> --name <my-aks-cluster> --tier premium

Mer information finns i Prisnivåer för kostnadsfria och standard för AKS-klusterhantering.

Orsak 5: Kostnadsanalysagentpodden hämtar OOMKilled-felet

Den aktuella minnesgränsen för kostnadsanalysagentpodden är inställd på 4 GB.

Poddens användning beror på antalet distribuerade containrar, vilket kan vara ungefär 200 MB + 0,5 MB per container. Den aktuella minnesgränsen stöder cirka 7 000 containrar per kluster.

När poddens användning överskrider den allokerade gränsen på 4 GB kan det uppstå ett fel i OOMKill stora kluster.

Lösning: Inaktivera tillägget

För närvarande stöds inte anpassning eller manuellt ökande minnesgränser för tillägget. Lös problemet genom att inaktivera tillägget.

Orsak 6: Kostnadsanalysagentpodden har fastnat i väntande tillstånd

Om podden har fastnat i tillståndet Väntar med felet FailedScheduling har noderna i klustret förbrukat minneskapaciteten.

Lösning: Se till att det finns tillräckligt med allokerbart minne

Den aktuella minnesbegäran för kostnadsanalysagentpodden är inställd på 500 MB. Se till att det finns tillräckligt med allokerbart minne för att podden ska schemaläggas.

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.