Sanal Makine Ölçek Kümeleri'de VM uzantısı sağlama hataları

Bu makalede, bir Sanal Makine Ölçek Kümesini dağıtmaya, güncelleştirmeye, yeniden kullanmaya, başlatmaya veya ölçeklendirmeye çalıştığınızda görüntülenen VMExtensionProvisioningError, VMExtensionHandlerNonTransientError veya VMExtensionProvisioningTimeout hatalarını çözme konusunda rehberlik sağlanır.

Not

Sanal Makine Ölçek Kümeleri bağlamında, bu hata iletilerindeki "VM" belirli bir Sanal Makine Ölçek Kümesi içindeki örneğe başvurur.

Belirtiler

Aşağıdaki örneklerde olduğu gibi VMExtensionProvisioningError, VMExtensionHandlerNonTransientError veya VMExtensionProvisioningTimeout hataları görürsünüz:

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

Neden

Bir VM uzantısı kilitleniyor veya sağlama durumu sırasında başarısız oldu.

Uzantı hatası hakkında daha fazla bilgi edinin

Bu hatayı çözmeye başlamak için önce hangi uzantıların ve örneklerin etkilendiğini belirlemeniz gerekir. Bunu yapmak için aşağıdaki Azure komut satırı arabirimi (Azure CLI) komutunu çalıştırın:

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

Bu komutun çıkışı, her örnekte uzantıların sağlama durumlarını görüntüler. Aşağıdaki örnek çıktıda bu uzantı bilgilerinin örnek kimliğine göre nasıl gruplandırdığı gösterilmektedir.

Örnek kimliklerinin vurgulandığı çıktının ekran görüntüsü.

Belirli bir örneğe ayrılmış her bölümün üst kısmındaki "extProvisioningState" listesi, söz konusu örnekte yüklü uzantıların sağlama durumlarını görüntüler. Bu listenin ardından, uzantıların adlarını aynı sırayla görüntüleyen "uzantı" listesi gelir.

Örneğin, aşağıdaki örnek çıktıda, bu örnekteki ilk sağlama durumu olan "Başarısız", "customScript" adlı ilk uzantıya karşılık gelir. Sağlama durumlarını listelenen uzantılarla eşleştirerek, bu örnekte listelenen ikinci ve üçüncü uzantıların aynı örnekte başarıyla sağlandığını da belirleyebilirsiniz.

Sağlama durumunu ve eşleşen uzantı adlarını gösteren çıkışın ekran görüntüsü.

Sanal Makine Ölçek Kümesinin ölçeğini genişletme girişimi

Uzantı her örnekte başarısız olmazsa, Sanal Makine Ölçek Kümesi'ne yeni örnekler ekleyin ve uzantı sağlamanın başarılı olup olmadığını görün. Başarılı olursa uzantı sağlamanın başarısız olduğu örnekleri silin.

Etkilenen örneklerle ilgili günlükleri okuma

Hatanın nedeni hakkında daha fazla içgörü elde etmek için etkilenen örneklerde oturum açın. Sanal Makine Ölçek Kümesinin işletim sistemine ve etkilenen uzantıya bağlı olarak, uygun günlüklere gidin ve etkilenen zaman dilimini gözden geçirin:

  • Windows Sanal Makine Ölçek Kümeleri: C:\WindowsAzure\logs\plugins\ExtensionName\Extension.log
  • Linux Sanal Makine Ölçek Kümeleri: /var/log/plugins/ExtensionName/Extension.log

Başarısız uzantının en iyi yöntemleri izlediğini doğrulayın

Özel Betik Uzantısı (CSE) veya Desired State Configuration (DSC) gibi uzantı özelleştirilebilirse, tüm gerekli önkoşulları ve önerilen en iyi yöntemleri izlediğinizi doğrulayın.

Uzantıyı yeniden yükleme

  1. Sanal Makine Ölçek Kümesi'nin Uzantılar dikey penceresinde sağlama hatalarını içeren uzantıyı seçin.

  2. Kaldır'a tıklayın.

    Kaldırma düğmesinin vurgulandığı uzantılar dikey penceresinin ekran görüntüsü

  3. Uzantılar dikey penceresinde Ekle'ye tıklayın.

  4. Aynı uzantıyı seçip yeniden yükleyin.

Yardım için bize ulaşın

Sorularınız veya yardıma ihtiyacınız varsa bir destek isteği oluşturun veya Azure topluluk desteği isteyin. Ürün geri bildirimini Azure geri bildirim topluluğuna da gönderebilirsiniz.