ASP.NET хостинг на виртуальных серверах, работающих на VMWare - PullRequest
0 голосов
/ 03 февраля 2009

Моя компания имеет несколько международных сайтов по продаже страховых продуктов. Наша текущая настройка - веб-ферма с несколькими загруженными веб-серверами, на которых размещены наши ASP.NET приложения. Бэкэнд представляет собой единый, но мощный SQL Server. (все в одном дата-центре)

Наши сетевые администраторы хотят перейти на виртуальные серверы, работающие на VMWare .

Сценарии могут быть

  1. Webfarm : несколько стандартных веб-серверов, с балансировкой нагрузки (текущая настройка), состояние сеанса на SQL Server
  2. Virtual Webfarm : несколько виртуальных серверов с балансировкой нагрузки на одном физическом хосте VMWare, состояние сеанса на SQL Server 2.a, как указано выше, но с несколькими физическими хостами
  3. Один виртуальный веб-сервер : Один большой мощный виртуальный веб-сервер, балансировка нагрузки не требуется, состояние сеанса можно поддерживать в процессе

Виртуализация вызывает много шума, и я вижу преимущества, но не имею опыта в этом. Я не могу сказать, с какими проблемами мы столкнемся и на что нам следует обратить особое внимание.

  • У кого-нибудь есть опыт работы с такой виртуальной установкой?
  • Каковы общие рекомендации?

Я стремлюсь к 2а. Я боюсь иметь все веб-серверы на одной физической машине.

Большое спасибо заранее, чтобы поделиться своими мыслями.

Ответы [ 5 ]

1 голос
/ 05 февраля 2009

Я согласен со всеми приведенными выше ответами, и я на самом деле работаю на веб-хостинге. :-) Если вы сейчас используете несколько веб-серверов с балансировкой нагрузки, тогда я могу только предположить, что причиной является либо

  • Аппаратное резервирование: если происходит сбой одного сервера приложений, эти сеансы теряются, но приложение продолжает работать на других серверах, и пользователи могут немедленно повторно подключиться.

или

  • Распределение нагрузки на приложения (уже поздно, поэтому я не могу придумать лучшего названия): ваш трафик требует наличия нескольких серверов приложений, поскольку все ваши пользователи могут аварийно завершить работу одного сервера приложений.

Если причина № 1, то переход к VMWare отменяет эту цель, поскольку у вас есть только один сервер, поддерживающий все, а в случае сбоя жесткого диска и т. Д. Вы не работаете, пока он восстанавливается. Если № 2 является причиной, тогда решение на основе VMWare МОЖЕТ работать, однако имейте в виду, что оборудование, которое вы будете использовать, почти обязательно будет более высокого уровня, чем то, что вы используете в настоящее время. Таким образом, вы, возможно, получаете больше отдачи от затраченных средств, но вы СТЕЛЛ теряете избыточность, которую дали вам несколько физических машин.

Теперь вы всегда можете объединить их, имея несколько физических машин, на которых работает VMWare, но это добавляет уровень сложности вещам, которые вам не обязательно нужны.

1 голос
/ 04 февраля 2009

Роберт в значительной степени покрыл все это, я в основном просто добавляю примечание, чтобы сказать, что по крайней мере один из наших клиентов в настоящее время работает с опцией 2a.

Таким образом, у нас есть несколько веб-серверов с балансировкой нагрузки, работающих на нескольких хостах виртуальных машин, которые взаимодействуют с не виртуализированным кластером SQL - для них это очень хорошо работает.

Еще одно преимущество виртуализации состоит в том, что она позволяет вам более полно использовать ваше оборудование - однако вы должны знать, что, если вы используете виртуальный хост на 90% емкости с несколькими виртуальными машинами, вы не получите много свободного места для любых всплесков трафика - если вы не ожидаете ничего, тогда это здорово, но если вам это нужно, вам нужно что-то на месте, чтобы справиться.

1 голос
/ 04 февраля 2009

Существует три причины использовать более одного веб-сервера для приложения:

  1. Масштабирование - требуется больше ворчания, чем может обеспечить одна машина
  2. Надежность - Веб-сайт должен продолжать работать в случае сбоя (а. Аппаратное обеспечение б. Программное обеспечение)
  3. Расстановка приоритетов - один из веб-серверов выполняет тяжелую работу (возможно, запланированные задачи), оставляя другому возможность быстро отвечать на запросы клиентов.

Женитьба по вашим сценариям:

Сценарий 1 обеспечивает 1, 2, 3 Сценарий 2 обеспечивает 2b (возможно, 2a, если он полностью аппаратно избыточен (сомневайтесь)) Сценарий 2а обеспечивает 1, 2 Сценарий 3 не предоставляет ничего из вышеперечисленного

Преимущества виртуального хостинга:

  • Более низкая совокупная стоимость владения (TCO) для большого кластера, предназначенного для нескольких целей, является экономически эффективной
  • Новые серверы могут быть созданы быстро при необходимости
  • Избыточное оборудование легче обосновать, если стоимость распределена между многими приложениями

Недостатки:

  • Другие виртуальные машины могут высосать из памяти ваш процессор / дисковый ввод

ИМХО мало смысла балансировать нагрузку на несколько виртуальных машин на одном виртуальном сервере.

0 голосов
/ 11 февраля 2012

Вы должны иметь возможность использовать хосты виртуальных машин с несколькими виртуальными машинами на хост и балансировкой нагрузки для всех из них.

Microsoft делает это с msdn и technet http://virtualization.info/en/news/2008/05/microsoft-migrates-msdn-and-technet-on.html.

0 голосов
/ 04 февраля 2009

Не похоже, что использование нескольких виртуальных серверов на одном физическом хосте принесет какую-либо ощутимую пользу, вы просто добавляете накладные расходы. Если я не упущу что-то из-за того, как вы описали настройку, переход на VMware не принесет никакой пользы, если только вы не захотите воспользоваться такими функциями, как VMotion

VMware наиболее полезна для консолидации недостаточно используемого оборудования. Если ваше оборудование работает почти на полную мощность в пиковые периоды, вы не хотите запускать несколько виртуальных машин на одной машине.

Виртуализация имеет свои преимущества, но ваши сетевые администраторы должны доказать, что выгода для вашей компании есть, прежде чем вы даже подумываете о переходе. Я бы сказал, что если у вас есть несколько приложений, работающих на выделенных серверах с низким трафиком (то есть у каждого приложения есть свой физический сервер), то, конечно, виртуализируйте. Если у вас есть одно приложение на нескольких серверах, то не надо.

...