Dela via


Felsöka felet VMExtensionProvisioningTimeout

I den här artikeln beskrivs hur du identifierar och löser det VMExtensionProvisioningTimeout fel som uppstår när du försöker skapa och distribuera ett AkS-kluster (Microsoft Azure Kubernetes Service).

Förutsättningar

  • Azure CLI, version 2.28.0 eller senare. Om Azure CLI redan är installerat kan du hitta versionsnumret genom att köra az --version.

Symptom

När du försöker skapa ett AKS-kluster med hjälp av Azure CLI får du felet "VMExtensionProvisioningTimeout" med text som i följande exempel:

Failed to reconcile agent pool agentpool0: err: VMSSAgentPoolReconciler retry failed:
Category: InternalError;
SubCode: VMExtensionProvisioningTimeout;
Dependency: Microsoft.Compute/VirtualMachineScaleSet;
OrginalError:
Code="VMExtensionProvisioningTimeout"
Message="Provisioning of VM extension vmssCSE has timed out. Extension provisioning has taken too long to complete. The extension last reported \"Plugin enabled\".\r\n\r\nMore information on troubleshooting is available at <https://aka.ms/VMExtensionCSELinuxTroubleshoot>";
AKSTeam: NodeProvisioning,
Retriable: true

Du kan också visa felinformationen i Azure Portal.

Orsak

Flera olika problem kan orsaka felklassen "VMExtensionProvisioningError". Felsökningsstegen är dock desamma för alla problem. Möjliga orsaker är följande:

  • Det anpassade skripttillägget som etablerar de virtuella datorerna kan inte upprätta en anslutning till slutpunkten som används för att ladda ned Kubernetes-binärfilerna.

  • Det anpassade skripttillägget som etablerar de virtuella datorerna kan inte upprätta en anslutning till slutpunkten som används för att ladda ned CNI-binärfilerna.

  • Det anpassade skripttillägget som etablerar de virtuella datorerna kan inte upprätta den nödvändiga utgående anslutningen för att hämta paket.

  • Klustret kan inte lösa den nödvändiga adressen för Domain Name System (DNS) för att korrekt initiera noden.

  • Det anpassade skripttillägget som etablerar de virtuella datorerna nådde en tidsgräns när en pakethanteringsuppdatering kördes (till exempel apt-get om nodpoolen använder Linux).

Lösning

Följ de här stegen:

  1. Om utgående filtrering har konfigurerats i klustret (till exempel anpassade användardefinierade vägar) kan du läsa Begränsa nätverkstrafik med Azure Firewall i Azure Kubernetes Service (AKS) och Utgående nätverk och FQDN-regler för AKS-kluster för att visa nödvändiga förutsättningar och se till att konfigurationen uppfyller kraven.

  2. På dns-servrarna och brandväggen kontrollerar du att ingenting blockerar lösningen på klustrets fullständigt kvalificerade domännamn (FQDN).

  3. Eftersom din anpassade DNS-server kan ha konfigurerats felaktigt kan du läsa följande artiklar om FQDN-matchning fortsätter att blockeras:

Mer information

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.