Вам лучше использовать Azure SQL (PaaS) вместо виртуальной машины, есть много разных опций, которые вы можете сделать для своих нужд. Запускать SO + SQL на одной и той же виртуальной машине не рекомендуется, и вместо Azure SQL (PaaS) вы можете уменьшить аппаратное обеспечение для SO VM и настроить SQL для поддержки 50 пользователей. Также вы можете использовать балансировщик нагрузки, как вы сказали, либо Traffi c Manager (https://docs.microsoft.com/pt-br/azure/traffic-manager/traffic-manager-overview), либо шлюз приложений (https://docs.microsoft.com/pt-br/azure/application-gateway/overview) для маршрутизации трафика c к вашему SO ВМ, где работает приложение. В зависимости от вашего приложения вы можете перейти на Azure Веб-приложение (https://docs.microsoft.com/en-us/azure/app-service/).
Azure SQL (Паас), у вас наверняка может быть меньше 30 минут, Я бы сказал, что время простоя практически равно нулю, хотя вам это не нужно.
Автоматическое c резервное копирование и восстановление на момент времени https://docs.microsoft.com/pt-br/azure/sql-database/sql-database-automated-backups
Активный гео -репликация https://docs.microsoft.com/pt-br/azure/sql-database/sql-database-active-geo-replication
Зонально-избыточные базы данных https://docs.microsoft.com/pt-br/azure/sql-database/sql-database-high-availability
Наконец, я не думаю, что всегда включен ( https://docs.microsoft.com/en-us/sql/database-engine/availability-groups/windows/overview-of-always-on-availability-groups-sql-server?view=sql-server-ver15) решение хорошее, если оно дорогое, а пользователей всего 50. Вот почему я считаю, что вам лучше подумать о решении Saas + PaaS для вашего приложения и базы данных. Ваш 4-й вариант звучит хорошо, но вам нужно создать новую виртуальную машину, настроить IP, установить SQL, настроить SQL и т. Д., Чтобы вывести SQL.
Что собираются делать пользователи если это происходит, когда вы не можете исправить это немедленно? Ваши 30 минут не будут выполнены :) 1034 *