Freigeben über


Fehler bei der Bereitstellung von VM-Erweiterungen in Skalierungssätzen für virtuelle Computer

Dieser Artikel enthält Anleitungen zum Auflösen von VMExtensionProvisioningError-, VMExtensionHandlerNonTransientError- oder VMExtensionProvisioningTimeout-Fehlern, die angezeigt werden, wenn Sie versuchen, einen Vm Scale Set bereitzustellen, zu aktualisieren, zu aktualisieren, zu starten oder zu skalieren.

Notiz

Im Kontext von Skalierungssätzen für virtuelle Computer bezieht sich die "VM" in diesen Fehlermeldungen auf eine Instanz innerhalb eines bestimmten Skalierungssatzes für virtuelle Computer.

Symptome

Es werden VMExtensionProvisioningError-, VMExtensionHandlerNonTransientError- oder VMExtensionProvisioningTimeout-Fehler wie in den folgenden Beispielen angezeigt:

'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.

Ursache

Eine VM-Erweiterung hängt oder ist während des Bereitstellungszustands fehlgeschlagen.

Weitere Informationen zu Erweiterungsfehlern

Um mit der Behebung dieses Fehlers zu beginnen, sollten Sie zuerst ermitteln, welche Erweiterungen und Instanzen betroffen sind. Führen Sie dazu den folgenden Azure-Befehlszeilenschnittstellenbefehl (Azure CLI) aus:

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

Die Ausgabe dieses Befehls zeigt die Bereitstellungszustände der Erweiterungen für jede Instanz an. Die folgende Beispielausgabe zeigt, wie diese Erweiterungsinformationen nach Instanz-ID gruppiert werden.

Screenshot der Ausgabe mit hervorgehobenen Instanz-IDs.

In jedem Abschnitt, der einer bestimmten Instanz zugeordnet ist, zeigt die Liste "extProvisioningState" oben die Bereitstellungszustände der in dieser Instanz installierten Erweiterungen an. Auf diese Liste folgt die Liste "Erweiterung", in der die Namen der Erweiterungen in derselben entsprechenden Reihenfolge angezeigt werden.

In der folgenden Beispielausgabe entspricht beispielsweise der erste Bereitstellungsstatus in dieser Instanz "Failed", der ersten Erweiterung "customScript". Indem Sie die Bereitstellungszustände mit den aufgelisteten Erweiterungen abgleichen, können Sie auch feststellen, dass in diesem Beispiel die aufgeführten zweiten und dritten Erweiterungen erfolgreich in derselben Instanz bereitgestellt wurden.

Screenshot der Ausgabe mit dem Bereitstellungsstatus und übereinstimmende Erweiterungsnamen.

Versuch, den Skalierungssatz für virtuelle Computer zu skalieren

Wenn die Erweiterung für jede Instanz nicht fehlgeschlagen ist, fügen Sie dem Skalierungssatz für virtuelle Computer neue Instanzen hinzu, und überprüfen Sie, ob die Erweiterungsbereitstellung erfolgreich ist. Wenn dies erfolgreich ist, löschen Sie die Instanzen, in denen die Erweiterungsbereitstellung fehlgeschlagen ist.

Lesen von Protokollen für betroffene Instanzen

Um weitere Einblicke in die Ursache des Fehlers zu erhalten, melden Sie sich bei den betroffenen Instanzen an. Navigieren Sie je nach Betriebssystem des Skalierungssatzes für virtuelle Computer und der betroffenen Erweiterung zu den entsprechenden Protokollen, und überprüfen Sie den betroffenen Zeitrahmen:

  • Skalierungssätze für virtuelle Windows-Computer: C:\WindowsAzure\logs\plugins\ExtensionName\Extension.log
  • Skalierungssätze für virtuelle Linux-Computer: /var/log/plugins/ExtensionName/Extension.log

Überprüfen, ob die fehlgeschlagene Erweiterung bewährte Methoden enthält

Wenn die Erweiterung anpassbar ist, z. B. custom Script Extension (CSE) oder Desired State Configuration (DSC), überprüfen Sie, ob Sie alle erforderlichen Voraussetzungen und empfohlenen bewährten Methoden ausführen.

Erneutes Installieren der Erweiterung

  1. Wählen Sie auf dem Blatt "Erweiterungen " des Skalierungssatzes für virtuelle Computer die Erweiterung mit den Bereitstellungsfehlern aus.

  2. Klicken Sie auf Deinstallieren.

    Screenshot des Blatts

  3. Klicken Sie auf dem Blatt "Erweiterungen " auf "Hinzufügen".

  4. Wählen Sie die gleiche Erweiterung aus, und installieren Sie sie erneut.

Kontaktieren Sie uns für Hilfe

Wenn Sie Fragen haben oder Hilfe mit Ihren Azure-Gutschriften benötigen, dann erstellen Sie beim Azure-Support eine Support-Anforderung oder fragen Sie den Azure Community-Support. Sie können auch Produktfeedback an die Azure Feedback Community senden.