Inrichtingsfouten voor VM-extensies in virtuele-machineschaalsets
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, bij te werken, opnieuw te starten of te schalen.
Notitie
In de context van virtuele-machineschaalsets verwijst de VM in deze foutberichten naar een exemplaar binnen een specifieke virtuele-machineschaalset.
Symptomen
U ziet de fouten VMExtensionProvisioningError, VMExtensionHandlerNonTransientError of VMExtensionProvisioningTimeout , 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 is vastgelopen of is mislukt tijdens de inrichtingsstatus.
Meer informatie over extensiefouten
Als u deze fout wilt oplossen, moet u eerst bepalen welke extensies en exemplaren worden beïnvloed. Voer hiervoor de volgende Azure CLI-opdracht (Opdrachtregelinterface) 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 extensie-informatie wordt gegroepeerd op exemplaar-id.
In elke sectie die is toegewezen aan een bepaald exemplaar, geeft de lijst extProvisioningState bovenaan de inrichtingsstatussen weer van de extensies die op dat exemplaar zijn geïnstalleerd. Deze lijst wordt gevolgd door de lijst met extensies, waarin de namen van de extensies in dezelfde volgorde worden weergegeven.
In de volgende voorbeelduitvoer komt de eerste inrichtingsstatus in dit exemplaar bijvoorbeeld 'Mislukt' overeen met de eerste extensie 'customScript'. Door de inrichtingsstatussen te koppelen aan de vermelde extensies, kunt u ook bepalen dat in dit voorbeeld de tweede en derde extensies zijn ingericht op hetzelfde exemplaar.
Poging om de virtuele-machineschaalset uit te schalen
Als de extensie niet is mislukt voor elk exemplaar, voegt u nieuwe exemplaren toe aan de virtuele-machineschaalset en controleert u of de inrichting van de extensie slaagt. Als dit lukt, verwijdert u de exemplaren waarop de inrichting van de extensie is mislukt.
Logboeken lezen over betrokken exemplaren
Als u meer inzicht wilt krijgen in de oorzaak van de fout, meldt u zich aan bij de betrokken exemplaren. Afhankelijk van het besturingssysteem van de virtuele-machineschaalset en de beïnvloede extensie, gaat u naar de juiste logboeken en controleert u het betrokken tijdsbestek:
- Windows Virtual Machine Scale Sets: C:\WindowsAzure\logs\plugins\ExtensionName\Extension.log
- Virtuele-machineschaalsets voor Linux: /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 DSC (Desired State Configuration), controleert u of u alle vereiste vereisten en aanbevolen aanbevolen procedures volgt.
- Aanbevolen procedures voor aangepaste scriptextensie
- Vereisten voor configuratie van gewenste status
Installeer de extensie opnieuw
Selecteer op de blade Extensies van de virtuele-machineschaalset de extensie met de inrichtingsfouten.
Klik op Verwijderen.
Klik op de blade Extensies op Toevoegen.
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 Azure-feedbackcommunity.