Команда Update-AzureRmVmss не работает

Я создал масштабный набор azure vm с настраиваемым расширением сценария. Через некоторое время я обновил настраиваемое расширение сценария и захотел применить изменения на каждой виртуальной машине в масштабируемом наборе. Однако ничего не меняется. Чтобы обновить масштабируемый набор виртуальных машин, я использовал команду Update-AzureRmVmss в PowerShell. Сообщение об ошибке отсутствует, команда выполняется успешно


person Shuhrat Akramov    schedule 09.07.2018    source источник
comment
Будет полезно указать вашу команду и сообщение об ошибке.   -  person Joy Wang    schedule 09.07.2018
comment
@JoyWang отредактировал вопрос   -  person Shuhrat Akramov    schedule 09.07.2018
comment
Ваша проблема может быть связана с github.com/MicrosoftDocs/azure-docs/issues/15359 Вам необходимо сначала удалить старое расширение, а затем обновить расширение, как описано в решении для указанной выше проблемы с GitHub.   -  person Karishma Tiwari - MSFT    schedule 25.09.2018


Ответы (2)


Я бы сказал, что у вас VMSS настроен на ручной режим обновления, поэтому вам нужно принудительно обновить узел.

https://docs.microsoft.com/en-us/powershell/module/azurerm.compute/update-azurermvmssinstance?view=azurermps-6.4.0

еще одна вещь, которую вам не хватает: forceUpdateTag. проверьте это: Как принудительно создать виртуальную машину с шаблоном ARM + CustomScriptExtension, чтобы повторно загрузить скрипт и запустить его?

person 4c74356b41    schedule 09.07.2018
comment
бей меня тоже! :) - person Lachie White; 09.07.2018
comment
Как добавить свойство forceUpdateTag? - person Shuhrat Akramov; 09.07.2018
comment
Я понятия не имею, как это сделать - person Shuhrat Akramov; 10.07.2018

Похоже, вам нужно обновить свойство forceUpdateTag в профиле расширения масштабируемого набора. Вы можете сделать это в своем шаблоне ARM, добавив это свойство на том же уровне, что и «издатель», и присвоив ему любое желаемое значение (при условии, что оно отличается от предыдущего значения). Вы также можете сделать то же самое в Powershell и Az CLI, используя следующий код:

Powershell:

$vmss = Get-AzureRmVmss -ResourceGroupName YOUR_RG_NAME -Name YOUR_VMSS_NAME
    $vmss.VirtualMachineProfile.ExtensionProfile.Extensions[0].ForceUpdateTag="1"
    Update-AzureRmVmss -ResourceGroupName YOUR_RG_NAME -VMScaleSetName YOUR_VMSS_NAME -VirtualMachineScaleSet $vmss

CLI:

    # run the first time
    az vm extension set -g ...

    # run again
    az vm extension set --force-update -g ...

В некоторых случаях это немного сложно, поэтому я написал короткое сообщение в блоге с описанием этого: https://negatblog.wordpress.com/2018/07/11/rerun-extensions-in-azure/

Надеюсь это поможет! :) -Нил

person Neil Sant Gat    schedule 11.07.2018