Я управляю небольшим офисом, состоящим из команды разработчиков из 8 человек и пары менеджеров. Мы думаем о переходе к настройке оборудования, при которой у нас будет один мощный сервер, на котором запущено несколько виртуальных машин VirtualBox - одна для совместного использования файлов Samba, действующая как DC, другая LAMP для разработки, другая для тестирования IE .... Всего 4 или 5 виртуальных машин. Двумя важнейшими из них являются модуль Samba, на котором работает наша сеть, и модуль dev LAMP, на котором выполняется большая часть нашей разработки.
Причина, по которой мне нравится такая установка, заключается в том, что мне нравится идея иметь возможность резервного копирования всех виртуальных машин за ночь, если это необходимо, и восстановление должен будь быстрым и безболезненным, если у нас есть базовый хост VirtualBox.
Я понимаю, что для резервного копирования виртуальных машин необходимо выключить питание, но я не думаю, что это станет препятствием. Возможно, мы решим запустить Samba на основной ОС хоста, поэтому нет необходимости выключать ее (мы просто разберемся с rsync данных).
Я просто ищу мнения по поводу подхода «виртуальная машина для всего». Это нормально для бизнеса? Есть ли какие-то явные проблемы с этим или с вещами, которые просто невозможны по сравнению с физическими коробками? Кто-нибудь пробовал это и столкнулся с какими-либо серьезными проблемами, или это хорошо сработало?
Любые мнения очень ценятся.
С уважением,
Джеймс.
Моя первая мысль заключается в том, что вам не следует использовать Virtualbox в качестве серверной платформы; его здорово для настольных рабочих станций, но в качестве сервера вы можете посмотреть на VMWare ESXi или гипервизор от XenSource, оба бесплатные. Я использую его на Dell 2950 (решение ESXi), и вы можете копировать что-то из интерфейса управления на машине Windows или запускать Veeam, чтобы скопировать его. Кроме того, если вы решите увеличить часть управления с помощью бюджета, вы можете обновить его (по общему признанию, по высокой цене), чтобы обеспечить такие вещи, как живая миграция между двумя серверами и лучшие варианты резервного копирования.
Сейчас мы виртуализируем 7 серверов. Некоторые поставщики не поддерживают виртуализацию ... Exchange не поддерживается, например Oracle, но это можно сделать.
У нас была одна система, работающая с базой данных SQL (точка продажи), которая давала ужасную производительность при работе под VMWare Server (хост Linux, гость Windows), и мы не могли держать ее виртуализированной достаточно долго, чтобы устранить ее, из-за трудностей, которые она размещала. на пользователей, поэтому он снова был помещен в физическую систему. ESXi - это гипервизор первого типа, который может дать достаточный прирост производительности, чтобы справиться с ним (нет планов опробовать его).
Возможно, вам придется попробовать его, чтобы узнать, насколько хорошо он работает в ваших обстоятельствах. Мы это любим. Это снижает требования к электропитанию в нашей серверной комнате, мы можем выполнять резервное копирование состояния системы на выходных, и это помогло контролировать производительность, а также помогло с планами восстановления, если что-то случится с нашим сервером.
Вы можете собрать относительно недорогие системы ESXi, следуя рекомендациям таких сайтов, как Вот и Вот. Очень требователен к аппаратной поддержке; вы захотите взглянуть на HCL, чтобы убедиться, что у вас есть что-то, что работает из коробки, или на сайты белых ящиков для вещей, которые были протестированы.
Краткий ответ на первоначальный вопрос - ДА. Виртуализация де-факто становится «лучшей практикой» (насколько я ненавижу этот термин) для предприятий, которым необходимо иметь несколько сетевых приложений или функций.
1- Как правило, не рекомендуется использовать только один сервер. Чаще всего компания разделяет функциональность между двумя серверами, каждый из которых имеет некоторый запас, так что проблема с оборудованием не ставит компанию полностью на колени.
2. Виртуализация часто реализуется вместе с общим хранилищем, особенно для критически важных приложений или приложений с большим объемом данных. Это позволяет легко выполнять резервирование. Это также может решить любые проблемы с резервным копированием, если резервное копирование выполняется в общем хранилище (с помощью каких-либо снимков), а не на отдельном сервере.
3- Постепенный подход обычно лучше ... возьмите один сервер и поместите на него одну функцию в виртуальной машине. Затем возьмите второй сервер и получите резерв (и потренируйтесь в восстановлении). Затем при необходимости или желании перенесите функции в новые виртуальные машины.
4- Представьте, что это еще одна версия программного обеспечения .. ТЕСТ, ТЕСТ, ТЕСТ. Протестируйте приложения, проверьте резервную копию, проверьте восстановление, проверьте диск, проверьте инструменты виртуализации и т. Д.
5- Не следует сбрасывать со счетов или недооценивать дополнительную сложность виртуализации. Семь функций, виртуализированных на одном сервере, не уменьшат затраты на администрирование; на самом деле это, вероятно, увеличит его. Убедитесь, что вы разбираетесь в административных вопросах: за чем следить, как управлять диском и т. Д.
Удачи!
VirtualBox - отличное решение для виртуализации настольных компьютеров, это не отличное серверное решение. Вам, вероятно, следует выбрать Hyper-V, ESX или XenServer.
Не для того, чтобы подавать звуковой сигнал Windows, но у меня больше всего опыта с этим. Hyper-V - отличный гипервизор с простым и эффективным встроенным резервным копированием с использованием теневого копирования. Поддерживает моментальные снимки и миграцию виртуальных машин (не в реальном времени, но вы можете переместить виртуальную машину с одного хоста на другой за 15-20 минут в зависимости от сети и размера виртуального жесткого диска).
Мы можем получить огромную плотность с помощью Hyper-V, на Dell 2950 с двухъядерным процессором, 32 ГБ памяти и большими жесткими дисками мы видим более 25 виртуальных машин Windows (1 ГБ памяти и 1 процессор).
@tomjedrz отлично подходит - возьмите два аппаратных ящика с запасом по высоте, чтобы вы не остановились, если один выйдет из строя.
На высоком уровне ваш подход - вполне приемлемое решение, вам просто нужно провести некоторое тестирование, чтобы убедиться, что он будет работать в вашей среде.