Я собираюсь расширить оборудование, стоящее за нашим веб-приложением .NET, с одного модуля, на котором запущены веб-сервер и SQL Server, до двух отдельных модулей с веб-сервером на одном и SQL Server на другом.
Во время своего исследования я читал разные вещи о виртуализации, но мне интересно, как она работает при масштабировании веб-приложения? Для меня это не похоже на стратегию высокой доступности, поскольку все это находится на одном и том же оборудовании, поэтому, если оно выйдет из строя, все это рухнет, как стопка карт! Хотя уверен, что здесь чего-то не хватает.
Итак, какова экономическая выгода для виртуализации? По сути, я ищу хорошую стратегию горизонтального масштабирования на долгосрочную перспективу с высокой доступностью (я знаю, что высокая доступность - это сложная задача с двумя серверами, но именно здесь я хочу быть в конечном итоге, возможно, не сейчас). Как будет использоваться виртуализация, чтобы выйти за рамки конфигурации с одним или двумя серверами? Я бы подумал, что более эффективной стратегией обеспечения высокой доступности и горизонтального масштабирования будет использование большего количества серверов с веб-уровнем балансировки нагрузки и федеративной базой данных?
За счет виртуализации только на одном виртуальном хосте вы получаете HA на более высоком уровне - возможность создавать кластеры из более чем одного сервера на каждом уровне вашего серверного приложения (например, два SQL-сервера с доставкой журналов или что-то еще, два веб-сервера с Load Балансировка настроена), и затем вы можете выполнять плановое обслуживание компонентов на каждом уровне по одному, не прерывая доступность вашей службы.
Очевидно, что с одним устройством вы не получите HA на аппаратном уровне, но это ваш выбор. Вы можете добавить его по мере необходимости.
Что касается того, как вы используете виртуализацию для достижения большого количества серверов высокой доступности, лучшие продукты виртуализации допускают некоторую степень аварийного переключения в случае недоступности виртуального хост-сервера - VMWare vmotion является примером этой технологии. Если вы начинаете с виртуального хоста, который поддерживает такого рода вещи, становится тривиальным добавить, удалить, обновить и т. Д. Виртуальные хосты, доступные в группе аварийного переключения, без прерывания вашей общедоступной службы.
Это не волшебная пуля. Но это чертовски круто.
Продолжайте исследовать. Hyper-V с отказоустойчивой кластеризацией и VMware HA решают проблему аппаратной HA. Чтобы сделать ваше приложение высокодоступным, вы должны начать с обеспечения высокой доступности вашего оборудования, для чего предназначены Hyper-V с отказоустойчивой кластеризацией и VMware HA.