Я пытаюсь отменить удаление экземпляра Azure Linux, используя расширение собственного сценария.
Мой сценарий хранится в BLOB-объекте анонимного доступа:
sudo waagent -deprovision+user -verbose -force
exit
Моя команда для применения расширение:
az vm extension set --resource-group rg01--vm-name vm01--name CustomScript --publisher Microsoft.Azure.Extensions --version 2.0 --settings "{'fileUris': [ 'https://mystorageaccount.blob.core.windows.net/scripts/Deprovision.sh' ], 'commandToExecute': 'sh Deprovision.sh'}"
Когда я запускаю команду az, все подкаталоги и журналы / var / log / azure исчезают !. Я могу сказать из окна бастиона, что-то пыталось удалить мою учетную запись пользователя, поэтому я уверен, что расширение подготовлено и запущено.
К сожалению, расширение показывает всю информацию о статусе как недоступную, и моя команда az просто сидит там. Элемент «Создать или обновить расширение виртуальной машины» в журнале активности виртуальной машины также не показывает активности после запуска удаления. В журнале активности Azure предполагается, что произошел перезапуск, и моя учетная запись больше не действительна.
Надеюсь, у пользователей Linux / Azure есть рецепт для этого ...
-
Я видел подобное поведение в Windows и в итоге использовал этот сценарий для Sysprep (-Wait был критически важным, поскольку заставлял процесс Powershell ждать завершения, не давая агенту вернуть успех / сбой до завершения процесса.) , это предотвращает перезапуск. Затем я могу написать сценарий освобождения, когда расширение завершится. Я подозреваю, что здесь происходит нечто подобное.
Start-Process -FilePath C:\Windows\System32\Sysprep\Sysprep.exe -ArgumentList '/generalize /oobe /quiet /quit' -Wait