Приобрёл себе данный сервер: Supermicro CSE-829U X10DRU-i+ .
К нему планирую приобрести рейд контроллер и кабели, так как насколько я понял, без них не будет работать передняя панель. Контроллер Adaptec ASR-71605 16-Port 6G SAS/SATA PCIe x8.
В описании есть:
RAID Level:0, 1, 1E, 5, 6, 10, 50, 60, HBA mode passthrough für ZFS, Ceph, MS StorageSpaces, vSAN.
Так вот суть вопроса про zfs.
Сейчас имею простой сервер на proxmox с дисками и zfs на raid 1 (Программный):
2х1ТБ для системы и прочего
2x3ТБ под файлы
По сути это облако и под прочие контейнеры и виртуалки.
Вопросы:
Что означает ZFS на самом контроллере?
Хотелось бы организовать raid 6, лучше это сделать средствами проксмокса или контроллером?
На контроллере есть кэш с батареей, будет ли он работать, при программной организации рейда?
В будущем будет в планах расширять вместимость, а значит 6 raid более оптимален для меня, что посоветуете в данном моменте из всего выше перечисленного?
Что означает ZFS на самом контроллере?
HBA mode passthrough für ZFS, Ceph, MS StorageSpaces, vSAN.
Это означает что для storagespaces, vsan и т.п. необходим режим работы контроллера - HBA. В некоторых случаях это ограничение обходят создавая raid0 из каждого диска и предоставляя ОС такие диски, но это крайне не рекомендуемый вариант и он очень опасен. ОС в этом случае не узнает о проблемах на диске никак и не сможет спасти рейд.
Если вы планируете использовать программный рейд (storagespaces/vsan/...) то можно купить просто HBA sas, он значительно дешевле.
С ZFS не работал, но, насколько я помню, там часть фишек тоже связана с возможностью управления самими дисками. И используя аппаратный raid вы лишаетесь части гибкости и устойчивости ZFS. Думается у ZFS тоже должен быть tiering, ssd caching, гибкое управление емкостью и т.п.
Хотя в плане "настроил и забыл" аппаратные решения значительно легче и лучше.
Хотелось бы организовать raid 6, лучше это сделать средствами проксмокса или контроллером?
Всегда лучше выбирать аппаратные реализации raid, из-за их скорости и функциональности.
На контроллере есть кэш с батареей, будет ли он работать, при программной организации рейда?
Нет, кеш не будет работать при программной реализации raid, будь тот md или zfs.
В будущем будет в планах расширять вместимость, а значит 6 raid более оптимален для меня, что посоветуете в данном моменте из всего выше перечисленного?
Во всех случаях увеличивать размер рейда - приключение с неясным концом, так как я знаю мало случаев когда необходимо расширить одно блочное устройство, так что проще будет собрать отдельное блочное устройство из новых дисков.
А адаптеки разве недостаточно умные, чтобы добавить еще один привод в массив, например? Или например, вынули диск, вставили вместо него диск в два раза больше.
Аппаратный рейд всегда лучше программного, потому что програмный считается на проце, а аппаратный считается отдельным контроллером. Правда, живость батарейки имеет критическое значение - если питание йок, то батарейка обеспечит питание для записи кэша операций, а иначе cache inconsistent и авто-ремонт файлухи.
VladlenO, Тут у меня был целый вопрос на эту тему, его удалили по совершенно нелепой причине "Вопрос оскорбителен". Как интересно может кого-то оскробить вопрос про сбой ext4 во время ребилда массива?.
Ну, если коротко - в raid6 на адаптеке 5805 помирает диск. raid подхватил хотспар, инженер сменил диск, вроде все. Но нифига - программа для работы с данными на массиве говорит "Э, чувак, у тебя сбойная файлуха". Смотрю - и правда, сбойная (а ребилд в это время идет). Запускаю fsck. Он крячит часов пять. Потом запускаю программу - опять нифига, опять fsck (ребилд уже закончился), все нормально.
Полтора месяца восстанавливал данные. В среду опять сдох другой диск - опять ребилд, опять fsck, опять половина данных винегрет. Данные еще только предстоит восстанавливать. Задаю вопрос. Мне отвечают - чувак, во время ребилда рядом с массивом лучше не дышать, а ты fsck по нему гоняешь...
Я немного окуеваю и говорю - а простите, зачем мы покупаем дорогущие RAID-контроллеры, зачем трахаемся с получением данных о дисках через них? Я всегда считал, что для того, чтобы изолировать факт ребилда от юзера. То есть, неважно в каком стейте массив - он должен работать хотя бы на чтение. Может, говорю, нах адаптек и собрать через md?
И тут мне отвечают - да пожалуй и лучше будет. Что лучше - прошивка контроллера десятилетней давности (двенадцатилетней) или дрова на md, отлаженные 100500 программистами? И тут я понимаю, что народ-то пожалуй прав.
Главное преимущество RAID-контроллера - он забирает на себя io. Но фигли мне бояться нагрузки на процессор, когда у меня на сервере два двенадцатипоточных ксеона и 48G рамы? Я думаю, он с обсчетом операций io справляться будет не хуже, чем наверняка более жиденький проц адаптека. Ведь synology/qnap - в свои полки контроллеров не ставят, а работают через md!
В общем однозначного вывода пока не сделано. Надо еще изучить вопрос software raid vs hardware и ext4 vs xfs. Но то, что адаптек буду убирать - однозначно. Потому что получается что - сдох диск и сутки (массив ребилдится примерно сутки) ходи, соси лапу?