Я нахожусь в процессе создания кластера Hyper-V 2012 R2. У меня есть 3 физических хоста (128 ГБ ОЗУ, два шестиядерных ядра и 12 сетевых карт каждый) и SAN для игры. SAN - это система виртуального хранения (Datacore), обслуживающая свои виртуальные диски через iSCSI, и у меня есть возможность создать столько виртуальных дисков (то есть LUNS), сколько мне потребуется (и для которых у меня есть емкость!). Мы успешно использовали Datacore SAN в течение нескольких лет с кластером ESX, но мы переходим на Hyper-V из-за затрат на лицензирование и того факта, что теперь он предлагает функции, сопоставимые с тем, что мы в настоящее время используем с ESX (мы также использовали пару автономных серверов Hyper-V на несколько лет в качестве резервной копии, поэтому они тоже так хорошо знакомы с этой технологией).
Итак, этот вопрос касается смешивания ролей кластеризации в 2012 R2
Я уже создал кластер Hyper-V, который использует CSV (для хранения файлов виртуальных машин) на нескольких iSCSI LUN из SAN, которые могут видеть все хосты, но мой следующий шаг - настроить некоторые высокодоступные файловые серверы для общего использования пользователями. Я должен указать, что я знаю разницу между использованием CSV, которые являются активными-активными и в основном предназначены для использования в приложениях (например, Hyper-V), в отличие от общего хранилища, которое используется кластером файлового сервера, который является активно-пассивным, и я Я не собираюсь делать что-либо иное, но есть несколько разных способов реализации файловых серверов.
Первый способ сделать это - создать «гостевой кластер», то есть 2 виртуальные машины в качестве узлов файлового сервера кластера (на разных хостах). Их тома ОС, очевидно, будут отдельными, однако есть 2 способа заставить их делиться своими томами файлового хранилища (то есть, где находятся общие ресурсы)
а. У них обоих общий VHDX, который, очевидно, находится в CSV Hyper-V.
б. Или они используют свои инициаторы iSCSI и получают прямой доступ к выделенному LUN в SAN.
Второй способ - вообще не использовать Hyper-V для узлов файлового сервера, а создать роль файлового сервера (общего назначения) (наряду с ролью Hyper-V) на тех же узлах в кластере: тогда они получат доступ к общему хранение на выделенных (не CSV) LUN, представленных SAN.
Какие подводные камни у каждого? Мне кажется, что второй вариант на самом деле имеет меньше накладных расходов (не требуется виртуальный уровень и виртуальная машина), но это означает, что хосты в кластере одновременно предоставляют кластерный Hyper-V и кластерный файловый сервер - это что будет проблемой? Я также думаю, что мог бы даже использовать некоторую грубую балансировку нагрузки, разделив мои общие файловые ресурсы на 3 роли файлового сервера в кластере, каждая из которых настроена для работы в основном на одном узле (когда все работает!), И каждая использует отдельные LUNS.
Я ценю, что ответ будет зависеть от того, сколько виртуальных машин и подобных им я планирую запустить, но просто предполагаю, что я буду следить за ресурсами (например, следить за тем, чтобы виртуальные машины не занимали всю оперативную память хоста), и я управляю Правильное распределение NIC, поэтому нет проблем с пропускной способностью.
Есть ли вообще какая-то техническая причина, по которой я не могу выполнить вариант 2? Большое спасибо !
Нет проблем с запуском роли файлового сервера на хостах Hyper-V. В общем, совмещение других ролей с Hyper-V - нехорошо. Однако роль файлового сервера была специально разработана и протестирована для работы вместе с Hyper-V. Одна вещь, которую я предлагаю сделать, - это использовать функции QoS в Windows 2012 R2 для выделения емкости сети для вашей роли Hyper-V по сравнению с ролью файлового сервера.
Я бы не стал создавать несколько виртуальных машин просто для создания кластерного файлового сервера. Если вам нужен такой уровень сложности по бизнес-причинам, то бизнес должен заплатить за выделенное оборудование для создания кластерного файлового сервера. Время восстановления после отказа в роли файлового сервера будет быстрее, чем при запуске кластера в гостевой системе.
Лично я бы тоже не стал. Лучшая практика Microsoft - установить только роль Hyper-V на хост-серверах, и я не совсем понимаю, чего вы пытаетесь добиться, имея две VMS, указывающие на одну и ту же общую папку в SAN.
Лучше всего разместить файловый сервер в качестве виртуальной машины в кластере. Наличие его в кластере обеспечит высокую доступность, но если вам нужна избыточная виртуальная машина, я бы тогда настроил второй файловый ресурс в кластере (или, в идеале, в другом кластере) и включил DFS.