вторник, 14 мая 2013 г.

ESXi Home Server AIO: Часть 1. Муки выбора.

   Вздумалось заиметь дома лабу ESXi для обучения и развлечения. Вздумалось уже очень давно, постепенно к этому шел, набралось достаточно много оборудования, которое временно работало под управлением Windows Server 2008 R2. Работало стабильно, но час пробил. Месяц назад был проведен переезд всего хозяйства под ESXi 5.1. Сейчас начинаю понимать, что многие преодоленные проблемы забываются, потому постараюсь все вспомнить и задокументировать на случай восстановления.

   Основная задача домашнего сервера для меня - это отказоустойчивое хранение данных и доступ к ним со всех остальных домашних устройств 24/7. Без RAID-массива - никуда. При переезде под ESXi эту функцию сервера требовалось сохранить. Но если в случае системы на винде винты были собраны в программный RAID средствами чипсета, то в случае ESXi без выделенного контроллера массив уже не собрать - поддержки фейковых рейдов нет. Достойный железный контроллер с аппаратной поддержкой RAID5 (жертвовать половиной доступного места в RAID1 не хотелось) стоил очень приличных денег. Выделенный железный NAS тоже не подходил - цена опять же кусачая, да и собиралась система именно All-In-One (AIO).
   Решил делать программный массив средствами виртуальной машины, куда будут проброшены физические диски.
Вариантов проброса дисков было 3:
  • каждый физический диск подключаем как локальное хранилище esxi, отформатированные vmfs диски отдаем как виртуальные диски машине, где из них собираем массив;
  • физические диски пробрасываем как RDM (prdm или vrdm) в машину, где из них собираем массив;
  • пробрасываем физический контроллер SATA с висящими на нем дисками в машину средствами vt-d.
   Первый вариант добавлял лишний уровень виртуализации, терялась возможность чтения smart физических дисков. Вариант с vrdm похож на первый: smart по-прежнему недоступен, но уровня vmfs уже нет. Вариант с prdm был заманчив, но смутили упоминания в сети о полном отваливании и регистрации ошибок записи/чтения для массивов на таких дисках.
   Выбрал последний вариант: проброс контроллера средствами vt-d.
Поддержка vt-d реализуется средствами чипсета и процессора. Связка Q67 и i7-2600 в моем случае эту поддержку обеспечивает.
   Почему бы не пробросить набортный sata-контроллер материнской платы? Тут возникает проблема: а откуда запускать машину, которая будет затем предоставлять услугу схд? К прокинутым устройствам ESXi доступа не имеет, а значит отсутствует локальное хранилище для виртуальных машин. Вроде бы можно воткнуть флешку и заставить (с бубнами) ESXi считать ее локальным диском. Но получим низкую скорость и малый ресурс перезаписи. Многие используют простенький pci-sata контроллер из списка поддерживаемых и держат локальное хранилище на нем. В моем случае решение с пробросом набортных sata показалось мне неэффективно - материнка на борту имеет всего 4 sata, я же предполагал использовать в схд больше дисков.
   Решил докупать pci-sata контроллер с большим количеством портов и пробрасывать его в машину. Набортные порты материнской платы использовать для дисков локального хранилища ESXi.
   В процессе поиска наткнулся на контроллер Dell Perc H200 integrated, основанный на LSI SAS2008. Контроллер имеет 8 портов sata3/sas2 через 2 внутренних разъема SFF-8087, поддерживает диски более 2 ТБ, подключается по шине PCIe 2.0 x8. Аппаратного кеша и батарейки нет.
   Контроллер без кабелей (их купил с рук на авито) и планки на заднюю панель (подошла от дохлой сетевой карты) предлагался на тот момент за 40$, мимо чего пройти было нельзя.
   Первая проблема контроллера: на оригинальной прошивке нет возможности отключить функции RAID, то есть получить из контроллера HBA. Решается довольно просто: прошивкой от Dell 6Gbps SAS HBA. Весь процесс в картинках расписан здесь.
   Следующая проблема возникла уже на этапе первого запуска в сервере (перешивался в другой машине). С установленным в слот PCI-E x16 контроллером система отказывалась стартовать. Лечил изолентой: после заклеивания 5 и 6 контактов проблема ушла. Это решение нашел тут.
   В итоге контроллер завелся, подоспели винты и UPS. Настало время начинать переезд.

Комментариев нет:

Отправить комментарий