Рекомендации по виртуализации серверов в сети SAN?

17

Хорошо, поэтому я хочу начать использовать мою сеть SAN чуть больше, чем когда-либо, и в то же время использовать ESXi.

В настоящее время у меня есть набор блейдов Dell PowerEdge 1955, подключенных к массиву хранения EMC AX4-5 FC с одним корпусом. По сути, я использую SAN в качестве DAS. У меня есть SUN в SAN, которые указывают на конкретные физические машины, и эти машины используют LUN для чего угодно (в основном это базы данных и общие папки Samba / NFS, в зависимости от целевого сервера).

У меня есть несколько физических файловых серверов, и у каждого есть настройка конфигурации samba для обслуживания соответствующих общих ресурсов. Поскольку я никогда не работал RHCS, только один из файловых серверов имеет подключенные LUN ​​одновременно. В случае, если файловый сервер умирает, я ограничиваю его вручную (либо отключая и представляя диск, используя утилиту navisphere, либо отключая питание через DRAC), затем использую утилиту navisphere, чтобы вывести представленные LUN ​​на следующего претендента ( после чего запускаем apache и другие демоны). Все вручную, прямо сейчас.

Я чувствую себя оторванным, как Феррис Бьюллер, играющий на кларнете. Никогда не было урока!

Во всяком случае, я пытаюсь улучшить. Я хочу установить ESXi на физические хосты, а затем создать LUN для хранения двух образов файлового сервера (в случае, если один поврежден / fubar), один из которых будет активным, а другой - резервным. По крайней мере, таким образом, я не улучшаю автоматизацию (хотя я скоро найду сценарий для переключения «активного» сервера), но я чувствую, что добавляю гибкость, плюс я могу использовать хосты ESXi содержат другие виртуальные машины, и оборудование не будет потрачено впустую, как сейчас.

Мои вопросы:

1) Насколько глупый мой план?

2) Когда дело доходит до фактической реализации, я должен создать нормальный образ vmdk на LUN, или я должен дать ему «сырой» раздел (если это даже возможно с ESXi?)

3) Есть ли «хороший» способ использовать некластеризованные файловые серверы?

Мэтт Симмонс
источник

Ответы:

7

Ваш план не чокнутый. Как обычно, есть более чем несколько способов атаковать это в зависимости от того, чего вы пытаетесь достичь и как защитить свои данные.

Прежде всего, вы можете представить необработанный LUN для виртуальной машины, используя «Raw Device Mapping». Сделать это:

  • Представьте LUN ​​хосту ESXi (или группе хостов, если вы собираетесь использовать кластеризацию / HA)
  • Добавьте диск к вашей виртуальной машине, выберите Raw Device Mapping, укажите на LUN
  • Пересканируйте шину SCSI внутри виртуальной машины
  • fdisk, смонтируйте и добавьте в fstab, как обычный диск.

Upside: быстрая настройка, быстрая в использовании, простая, может представлять диск на физическом хосте, если вам понадобится V2P в будущем

Недостаток: вы можете потерять некоторые опции моментального снимка / отката на основе VMware, в зависимости от того, используете ли вы физический или виртуальный режим совместимости

Альтернативным вариантом является создание VMFS на LUN для создания хранилища данных, а затем добавление диска VMDK в виртуальную машину, расположенную в этом хранилище данных.

  • Перевернутый: это Storage vMotion, если вы когда-нибудь купите лицензию на его использование. Это позволяет осуществлять горячую миграцию дисков VMDK между LUN и даже SAN.

В обоих случаях вы находитесь в одинаковой степени риска, если VMware или ваша виртуальная машина съест файловую систему во время сбоя; один не намного лучше, чем другой, хотя варианты восстановления будут совсем другими.

Я не развертываю RDM, если мне не нужно; Я обнаружил, что они не покупают мне большую гибкость в качестве VMDK (и меня укусили ошибки, которые делали их непрактичными при выполнении других операций хранения (так как исправлено - см. Раздел RDM в этой ссылке))


Что касается вашей виртуальной машины, лучшим выбором для ее гибкости является сохранение загрузочного диска вашего файлового сервера в виде VMDK в сети SAN, чтобы другие хосты могли загружать ее в случае сбоя хоста. Используя функциональность HA VMware, загрузка вашей виртуальной машины на другом хосте происходит автоматически (виртуальная машина будет загружаться на втором хосте, как если бы питание было отключено; ожидайте выполнения обычного fsck и магии, чтобы вызвать его, как в случае обычного сервера). ). Обратите внимание, HA является лицензионной функцией.

Чтобы предотвратить сбой виртуальной машины, вы можете создать легкий клон вашего файлового сервера, содержащий минимальный минимум, необходимый для загрузки и запуска SAMBA в настроенном состоянии, и сохраните его на локальном диске каждого хоста, ожидая добавления диска данных с Не удалось ВМ и включите его.

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

Грег Ворк
источник
1

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

Если ваши машины не сгруппированы, то, насколько я понимаю, лучший способ управлять ими - это попытаться распределить нагрузку как можно более равномерно. У меня есть 3 не кластеризованных 2950-х, где нагрузка от самых критических vms максимально 1/3 на каждый. Теория заключается в том, что я вряд ли потеряю более одной коробки одновременно, поэтому по крайней мере 2/3 смогут продолжать работать без изменений.

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

Я бы не назвал себя экспертом в этом, это то, что я делаю.

chewy_fruit_loop
источник
1

Привет Мэтт. Существует много способов нарезать решение, когда вы используете решение для виртуализации. Во-первых, было много тестов, показывающих производительность Raw LUN (RDM) и производительность VMDK, и разница, как правило, незначительна. Некоторые вещи, о которых следует знать с RDM: Только определенные ситуации кластеризации требуют использования RDM (кластеризация MS). RDM имеют ограничение в 2 ТБ, но для обхода этого ограничения можно использовать LVM. Отслеживать RDM сложнее, чем предоставлять LUN для ESXi для использования в VMFS и помещать в него vmdk. VMDK (как уже упоминалось) имеют некоторые приятные преимущества: svMotion, снимки (не может сделать снимок pRDM).

Если вы используете Free ESXi, вот как я могу решить вашу ситуацию. Прежде всего, все данные находятся в файлах vmdk на VMFS LUNS. Настройте 2 виртуальные машины и используйте Heartbeat для восстановления после отказа IP-адреса и служб. Heartbeat смещает IP-адрес службы и может обрабатывать сценарии для размонтирования / монтирования LUN данных, где это необходимо. Вы могли бы даже написать сценарий для некоторого VMware Remote CLI, чтобы гарантировать, что «отключенная» виртуальная машина отключена для ограждения. Поскольку сердцебиение напрямую координируется между системами, риск как доступа к данным, так и работы одних и тех же служб должен быть крайне низким. Ключевым моментом здесь является то, что Heartbeat обрабатывает монтирование / размонтирование LUN ​​данных и запуск / выключение служб, а не обычные механизмы инициализации.

Альтернативное аварийное переключение может быть выполнено через систему мониторинга. Когда он обнаруживает неработающий хост, он может использовать VMware Remote CLI для отключения питания (для обеспечения безопасности), а затем включения резервного VM. В этой ситуации откат назад довольно ручной.

В моей «крошечной» среде я не видел, чтобы VMDK был поврежден. Я также понял, что если у вас более двух хостов ESX (i) или дюжина виртуальных машин, вам понадобится vCenter, чтобы отслеживать все. Некоторые из пакетов Essential / Plus не слишком дороги, учитывая преимущества.

Джефф Хенгесбах
источник
1

Мэтт, вы знаете, я не использую VMware, но я всегда использовал «RAW» с Xen. Слегка загруженные виртуальные машины, я сомневаюсь, что вы увидите большую разницу в производительности. Но когда вы начнете получать все больше и больше гостей, если все эти гости будут в одной файловой системе, у вас возникнут проблемы с глубиной очереди. Это особенно верно для NFS-хранилища. Дело не в том, что у NFS-сервера есть проблемы, но большинство реализаций NFS-клиентов отстой.

Я не знаю хорошего способа синхронизации vmdks, если вы ищете избыточность (ошибка san). Но если вы используете блочные устройства, у вас все еще есть возможность использовать DRBD для репликации только тех vms, которые вы хотите / должны реплицировать.

Ник Андерсон
источник
0

Я думаю, вы должны спросить себя: «Планирую ли я когда-нибудь вернуться на физические серверы»

Если ответ, может быть, тогда, возможно, вам следует придерживаться RDM. ESXi с RDM потребует (я думаю), чтобы вы приобрели что-то, чтобы ваше волокно работало (опять же, на esxi не уверен на 100%).

У нас было несколько машин, которые я быстро перешел с физических серверов на ESX (4.0) с использованием RDM. У меня было сочетание машин Linux и Windows (супер просто для обеих платформ). У нас все еще есть несколько работающих легендарных FreeBSD (6.0 и старше) на физических серверах, для которых мы не можем использовать RDM, потому что старое ядро ​​FBSD не поддерживает это. Это было быстро и потребовало от меня ничего не делать, кроме как указать мой LUN, а затем установить инструменты VMWare. Мозг мёртвый легкий .. нет конвертера нет суеты ...

Другая вещь, которую вы должны спросить себя: «Какие функции VMWare я хочу использовать?»

В зависимости от вашего ответа на этот вопрос у вас может не быть другого выбора, кроме VMDK. Если вы используете свою SAN для моментальных снимков и не заботитесь об использовании, например, vmware ...

Некоторые заметки, которыми я поделюсь с вами о том, с чем мы столкнулись до сих пор. Vmotion одинаково хорошо работает с RDM и VMDK, с другой стороны, Storage Vmotion корректно работает только с не RDM и пытается использовать хранилище Vmotion для перехода от RDM к VMDK - отстой просто используйте конвертер. Большинство дистрибутивов Linux имеют пакет инструментов vmware с открытым исходным кодом, который делает установку инструментов несложной. Приложение резервного копирования работает очень хорошо и свободно от vmware, но не делает столько вещей, сколько хотелось бы. Я настоятельно рекомендую взять урок от VMware. Тот, который я взял, был неделю и стоил каждой копейки. Поддержка VMWare - это здорово. Если вы получаете контракт на поддержку и вам приходится звонить, они на высшем уровне. Я расстраиваюсь, когда сталкиваюсь с кем-то, кто может мне помочь (во многих меню ... ), но как только я получу их, они ВСЕГДА приходят с быстрой надежной поддержкой.

errr_
источник
Благодарю. Я думаю, что обучение - это хорошее предложение, но мы не можем позволить себе лицензии на использование таких вещей, как vmotion, поэтому я не уверен, что все, что я мог бы взять домой с тренинга.
Мэтт Симмонс