Fouten bij het inrichten van VM-extensies in Virtual Machine Scale Sets

Dit artikel bevat richtlijnen voor het oplossen van VMExtensionProvisioningError-, VMExtensionHandlerNonTransientError- of VMExtensionProvisioningTimeout-fouten die worden weergegeven wanneer u probeert een virtuele-machineschaalset te implementeren, bij te werken, opnieuw te maken, opnieuw te maken, te starten of te schalen.

Opmerking

In de context van Virtual Machine Scale Sets verwijst de 'VM' in deze foutberichten naar een exemplaar binnen een specifieke virtuele-machineschaalset.

Symptomen

U ziet VMExtensionProvisioningError-, VMExtensionHandlerNonTransientError- of VMExtensionProvisioningTimeout-fouten , zoals in de volgende voorbeelden:

'statusMessage': '{\\'status\\':\\'Failed\\',\\'error\\':{\\'code\\':\\'ResourceOperationFailure\\',\\'message\\':\\'The resource operation completed with terminal provisioning state 'Failed'.\\',\\'details\\':[{\\'code\\':\\'VMExtensionProvisioningError\\',\\'message\\':\\'Multiple VM extensions failed to be provisioned on the VM. Please see the VM extension instance view for other failures.

{'status': 'Failed','error': {'code':'VMExtensionHandlerNonTransientError','message': 'The handler for VM extension type 'Microsoft.EnterpriseCloud.Monitoring.OmsAgentForLinux' has reported terminal failure for VM extension 'OmsAgentForLinux' with error message: '[ExtensionOperationError] Non-zero exit code: 10

'statusMessage': '{\\'status\\':\\'Failed\\',\\'error\\':{\\'code\\':\\'ResourceOperationFailure\\',\\'message\\':\\'The resource operation completed with terminal provisioning state 'Failed'.\\',\\'details\\':[{\\'code\\':\\'VMExtensionProvisioningTimeout\\',\\'message\\':\\'Provisioning of VM extension configure-settings has timed out. Extension provisioning has taken too long to complete.

Oorzaak

Een VM-extensie loopt vast of is mislukt tijdens de inrichtingsstatus.

Meer informatie over uitbreidingsfouten

Als u deze fout wilt oplossen, moet u eerst bepalen welke extensie(s) en instantie(s) worden beïnvloed. Voer hiervoor de volgende Azure-opdrachtregelinterface (Azure CLI) uit:

az vmss list-instances --resource-group MyResourceGroup --name MyVmss --query "[].{instanceId:instanceId, extension:resources[].id, extProvisioningState:resources[].provisioningState}"

In de uitvoer van deze opdracht worden de inrichtingsstatussen van de extensies voor elk exemplaar weergegeven. In de volgende voorbeelduitvoer ziet u hoe deze extensiegegevens worden gegroepeerd op exemplaar-id.

Schermopname van uitvoer met instantie-id's gemarkeerd.

In elke sectie die is toegewezen aan een bepaald exemplaar, worden in de lijst extProvisioningState bovenaan de inrichtingsstatussen weergegeven van de extensies die op dat exemplaar zijn geïnstalleerd. Deze lijst wordt gevolgd door de extensielijst, waarin de namen van de extensies in dezelfde overeenkomstige volgorde worden weergegeven.

In de volgende voorbeelduitvoer komt de eerste inrichtingsstatus in dit exemplaar, Mislukt, bijvoorbeeld overeen met de eerste extensie customScript. Door de inrichtingsstatussen te vergelijken met de vermelde extensies, kunt u ook bepalen dat in dit voorbeeld de tweede en derde extensies zijn ingericht op hetzelfde exemplaar.

Schermopname van uitvoer met de inrichtingsstatus en overeenkomende extensienamen.

Probeer de virtuele-machineschaalset uit te schalen

Als de extensie niet voor elk exemplaar is mislukt, voegt u nieuwe exemplaren toe aan de virtuele-machineschaalset en kijkt u of de inrichting van de extensie slaagt. Als dit lukt, verwijdert u de exemplaren waarvoor het inrichten van de extensie is mislukt.

Logboeken voor betrokken exemplaren lezen

Meld u aan bij de betrokken instanties om meer inzicht te krijgen in de oorzaak van de fout. Afhankelijk van het besturingssysteem van de virtuele-machineschaalset en de beïnvloede extensie, navigeert u naar de juiste logboeken en bekijkt u het betrokken tijdsbestek:

  • Windows Virtual Machine Scale Sets: C:\WindowsAzure\logs\plugins\ExtensionName\Extension.log
  • Linux Virtual Machine Scale Sets: /var/log/plugins/ExtensionName/Extension.log

Controleer of de mislukte extensie de aanbevolen procedures volgt

Als de extensie kan worden aangepast, zoals Aangepaste scriptextensie (CSE) of Desired State Configuration (DSC), controleert u of u alle vereiste vereisten en aanbevolen aanbevolen procedures volgt.

De extensie opnieuw installeren

  1. Selecteer op de blade Extensies van de virtuele-machineschaalset de extensie met de inrichtingsfouten.

  2. Klik op Verwijderen.

    Schermopname van de blade Extensies met de knop Verwijderen gemarkeerd

  3. Klik op de blade Extensies op Toevoegen.

  4. Selecteer en installeer dezelfde extensie opnieuw.

Contacteer ons voor hulp

Als u vragen hebt of hulp nodig hebt, maak een ondersteuningsaanvraag of vraag de Azure-communityondersteuning. U kunt ook productfeedback verzenden naar de Feedback-community van Azure.