Сначала я хотел бы спросить, почему с виртуальными машинами все становится сложнее с использованием виртуальных машин. Scale Set поможет поддержать это, однако у вас все равно будут проблемы, когда вы захотите развернуть новый код. Вы сказали IIS, поэтому я предполагаю Windows. Конфигурация желаемого состояния - отличный выбор. Вы можете создать сценарий PowerShell, который будет «настраивать» вашу виртуальную машину за вас и потенциально получать любые обновления кода. Здесь также могут вступить в игру такие вещи, как chef / puppet / salt, чтобы убедиться, что сервер настроен.
Вы можете создать собственный образ, который каждый раз, когда вы развертываете новый код, запекается в образ. Затем вы в основном выполняете скользящее обновление, в котором вы запускаете новый сервер, а затем уничтожаете один, пока все они не будут обновлены. Технически это можно было бы сделать в любом случае, просто если они будут встроены в изображение, у вас будет более быстрое время запуска.
https://docs.microsoft.com/en-us/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-deploy-app https://adamtheautomator.com/azure-vm-scale-sets-powershell/
Автоматически c - виртуальные машины могут быть перезагружены в случайном порядке, даже если все виртуальные машины временно отключены одновременно. Прокрутка - масштабируемый набор развертывает обновления экземпляров пакетами с необязательным временем паузы между пакетами. Вручную - при запуске обновления с существующими виртуальными машинами ничего не происходит.
Какие файлы вы пытаетесь синхронизировать c, если они не являются файлами кода, Azure Файлы подойдут, поскольку они поддерживают SMB или вы можете просто использовать облачное хранилище.