Назад | Перейти на главную страницу

Настройка сервера на голом железе: услуги на виртуальной машине против сервисов на голой железной ОС (хост)

У меня есть мощный Linux-сервер (32 ГБ ОЗУ) с хорошими жесткими дисками. с одним из моих хозяев. Я запускаю множество веб-приложений, которые используют varnish, nginx, сервер приложений unicorn, сервер тонких приложений, redis, mongodb и postgresql. Теперь я не ожидаю большого трафика в веб-приложения. Итак, мой вопрос: с достаточно хорошим сервером, следует ли мне просто запускать все службы на голой ОС? или я должен установить VMS и запустить несколько сервисов на VMS? Настройка виртуальных машин не кажется хорошей идеей с точки зрения производительности.

РЕДАКТИРОВАТЬ: Было бы здорово, если бы у кого-то были цифры по этому поводу. Я бы никогда не подумал о размещении баз данных на виртуальных машинах, так как они более интенсивны по вводу-выводу. У меня нет цифр, подтверждающих это, но я хотел узнать, развернул ли кто-нибудь базы данных на виртуальных машинах.

Мое правило простое - я виртуализирую все, кроме тех случаев, когда мне мешает гипервизор.

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

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


Обновить:

Есть очевидный другой случай, когда вы не можете виртуализировать - это когда ваше оборудование слишком мощное. В настоящее время при использовании Hyper-V, например, машина, для которой требуется более 4 ядер, не может быть виртуализирована, поскольку виртуальная машина поддерживает только 4 ядра. Простое решение. Hyper-V следующего поколения будет поддерживать 32 виртуальных процессора, но затем, когда AMD выпустит 20-ядерные процессоры, а у вас их два ... снова сверх лимита. Согласен, это в основном актуально для более мощных серверов.

Услуги на хосте

  • Отсутствие накладных расходов на виртуализацию (более чистая производительность и прямой доступ к оборудованию);
  • Ранний запуск во время загрузки (например: DHCP или брандмауэр для ВМ);
  • Ручная миграция на другой хост;

Сервисы на ВМ

  • Накладные расходы на виртуализацию (но это нормально для «легких» сервисов);
  • Запускается при запуске всех виртуальных машин;
  • Легкая миграция на другой хост;