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.