Если у кого-то есть какое-то оборудование серверного уровня, целесообразно ли запускать ZFS поверх аппаратного RAID1 или чего-то подобного? Следует отключить аппаратный RAID и запустить ZFS на mirror
или raidz
zpool
вместо?
С отключенной функцией аппаратного RAID, будут ли контроллеры SATA2 и SAS на основе аппаратного RAID с большей или меньшей вероятностью скрывать ошибки чтения и записи, чем контроллеры без аппаратного RAID?
Что касается ненастраиваемых серверов, если у кого-то есть ситуация, когда аппаратный RAID-контроллер эффективно экономически нейтрален (или даже снижает стоимость готового предложения сервера, поскольку его присутствие повышает вероятность того, что хостинговая компания предоставит дополнительный IPMI доступ), следует ли вообще этого избегать? Но стоит ли его искать?
Идея ZFS состоит в том, чтобы как можно больше узнать о поведении дисков. Затем от худшего к лучшему:
Поскольку ZFS довольно параноидально относится к оборудованию, чем меньше он скрывается, тем лучше он может справиться с любыми аппаратными проблемами. И как указал Саммитч, Конфигурации RAID-контроллера и ZFS может быть очень сложно восстановить или перенастроить в случае сбоя (например, сбоя оборудования).
Что касается стандартизированного оборудования с каким-либо контроллером аппаратного RAID, просто будьте осторожны, чтобы аппаратный контроллер имел реальный сквозной режим или режим JBOD.
В. Если в вашем распоряжении имеется оборудование серверного уровня, целесообразно ли запускать ZFS поверх аппаратного RAID1 или чего-то подобного?
A. Настоятельно рекомендуется запускать ZFS прямо на диск и не использовать какие-либо промежуточные RAID. Независимо от того, препятствует ли система, которая эффективно требует от вас использовать карту RAID, использование ZFS, больше связано с ДРУГИМИ преимуществами ZFS, чем с отказоустойчивостью данных. Совершенно очевидно, что если имеется базовая карта RAID, отвечающая за предоставление одного LUN для ZFS, ZFS не улучшит отказоустойчивость данных. Если ваша единственная причина для перехода на ZFS в первую очередь - повышение отказоустойчивости данных, вы просто потеряли все основания для ее использования. Однако ZFS также предоставляет ARC / L2ARC, сжатие, моментальные снимки, клоны и различные другие улучшения, которые могут вам понадобиться, и в этом случае, возможно, это все еще ваша файловая система.
В. Следует ли отключить аппаратный RAID и вместо этого запустить ZFS на зеркале или на raidz zpool?
А. Да, если это вообще возможно. Некоторые карты RAID допускают сквозной режим. Если он есть, это предпочтительнее.
В. При отключенной функции аппаратного RAID, будут ли контроллеры SATA2 и SAS на основе аппаратного RAID с большей или меньшей вероятностью скрывать ошибки чтения и записи, чем контроллеры без аппаратного RAID?
A. Это полностью зависит от рассматриваемой карты RAID. Вам нужно будет изучить руководство или обратиться к производителю / поставщику карты RAID, чтобы узнать. Некоторым очень нравится, да, особенно если «отключение» функции RAID на самом деле не отключает ее полностью.
В. Что касается ненастраиваемых серверов, если у кого-то есть ситуация, когда аппаратный RAID-контроллер фактически экономически нейтрален (или даже снижает стоимость готового предложения сервера, поскольку его присутствие повышает вероятность предоставления хостинговой компанией дополнительный доступ IPMI), следует ли вообще его избегать? Но стоит ли его искать?
A. Это почти такой же вопрос, как и ваш первый. Опять же - если ваше единственное желание использовать ZFS - это улучшение отказоустойчивости данных, а для выбранной вами аппаратной платформы требуется, чтобы карта RAID предоставляла один LUN для ZFS (или несколько LUN, но у вас есть полоса ZFS через них), тогда вы делаете ничего для повышения отказоустойчивости данных, и поэтому ваш выбор ZFS может оказаться неподходящим. Однако, если вы найдете какие-либо другие функции ZFS полезными, они все равно могут быть полезны.
Я хочу добавить дополнительную проблему - приведенные выше ответы основаны на идее о том, что использование аппаратной карты RAID под ZFS ничего не делает, чтобы повредить ZFS, кроме устранения ее способности повышать отказоустойчивость данных. По правде говоря, это скорее серая зона. В ZFS есть различные настраиваемые параметры и допущения, которые не обязательно работают, когда передаются многодисковые LUN вместо необработанных дисков. Большая часть этого может быть устранена с помощью надлежащей настройки, но из коробки вы не будете так эффективны на ZFS поверх больших RAID LUN, как если бы вы были на отдельных шпинделях.
Кроме того, есть некоторые свидетельства того, что совершенно другой способ, которым ZFS взаимодействует с LUN, в отличие от более традиционных файловых систем, часто вызывает пути кода в контроллере RAID и рабочие нагрузки, к которым они не привыкли, что может привести к странностям. В частности, вы, вероятно, окажете себе услугу, полностью отключив функциональность ZIL в любом пуле, который вы размещаете поверх одного LUN, если вы также не предоставляете отдельное устройство журнала, хотя, конечно, я настоятельно рекомендую вам ОБЯЗАТЕЛЬНО предоставьте пулу отдельное устройство необработанного журнала (это не LUN с карты RAID, если это вообще возможно).
Я довольно часто запускаю ZFS поверх конфигураций HP ProLiant Smart Array RAID.
Зачем?
Пример:
Конфигурация RAID-контроллера.
[root@Hapco ~]# hpacucli ctrl all show config
Smart Array P410i in Slot 0 (Embedded) (sn: 50014380233859A0)
array B (Solid State SATA, Unused Space: 250016 MB)
logicaldrive 3 (325.0 GB, RAID 1+0, OK)
physicaldrive 1I:1:3 (port 1I:box 1:bay 3, Solid State SATA, 240.0 GB, OK)
physicaldrive 1I:1:4 (port 1I:box 1:bay 4, Solid State SATA, 240.0 GB, OK)
physicaldrive 2I:1:7 (port 2I:box 1:bay 7, Solid State SATA, 240.0 GB, OK)
physicaldrive 2I:1:8 (port 2I:box 1:bay 8, Solid State SATA, 240.0 GB, OK)
список блочных устройств
[root@Hapco ~]# fdisk -l /dev/sdc
Disk /dev/sdc: 349.0 GB, 348967140864 bytes
256 heads, 63 sectors/track, 42260 cylinders
Units = cylinders of 16128 * 512 = 8257536 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
/dev/sdc1 1 42261 340788223 ee GPT
конфигурация zpool
[root@Hapco ~]# zpool list
NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT
vol1 324G 84.8G 239G 26% 1.00x ONLINE -
zpool деталь
pool: vol1
state: ONLINE
scan: scrub repaired 0 in 0h4m with 0 errors on Sun May 19 08:47:46 2013
config:
NAME STATE READ WRITE CKSUM
vol1 ONLINE 0 0 0
wwn-0x600508b1001cc25fb5d48e3e7c918950 ONLINE 0 0 0
список файловой системы zfs
[root@Hapco ~]# zfs list
NAME USED AVAIL REFER MOUNTPOINT
vol1 84.8G 234G 30K /vol1
vol1/pprovol 84.5G 234G 84.5G -
Обычно вы никогда не должны запускать ZFS поверх дисков, настроенных в массиве RAID. Обратите внимание, что ZFS не обязательно запускать в режиме RAID. Вы можете просто использовать отдельные диски. Однако практически 99% людей используют ZFS в качестве RAID. Вы можете просто запустить свои диски в чередующемся режиме, но это плохое использование ZFS. Как было сказано на других плакатах, ZFS хочет много знать об оборудовании. ZFS следует подключать только к карте RAID, для которой можно установить режим JBOD, или, желательно, к HBA. Перейти на канал IRC Freenode #openindiana; любой из экспертов ZFS на канале скажет вам то же самое. Попросите вашего хостинг-провайдера предоставить режим JBOD, если он не предоставит HBA.
Вкратце: использование RAID ниже ZFS просто убивает идею использования ZFS. Зачем? - Потому что он предназначен для работы с чистыми дисками, а не с RAID.
Для всех вас ... ZFS по сравнению с любым Raid - это полная БОЛЬНОСТЬ и выполняется только MAD-людьми! ... как использование ZFS с памятью без ECC.
С образцами вы лучше поймете:
ZFS хорош в обнаружении битов, которые изменились, когда диск отключен от питания (RAID-контроллеры не могут этого сделать), а также когда что-то изменяется без запроса и т. Д.
Это та же проблема, что и когда бит в модуле RAM самопроизвольно изменяется без запроса ... если память ECC, память исправляет себя; в противном случае эти данные были изменены, поэтому данные будут отправлены на измененные диски; извольте, что изменения не в части UDEV, если сбой в части VDEV ... весь ZPOOL теряет все свои данные навсегда.
Это слабость ZFS ... Неудача VDEV означает, что все данные потеряны навсегда.
Hardware Raid и Software Raid не могут обнаруживать спонтанные изменения бит, у них нет контрольных сумм, хуже всего на уровнях Raid1 (зеркала), они читают не все части и сравнивают их, они предполагают, что все части всегда будут иметь одинаковые данные, ВСЕГДА (я говорю это громко) Raid предполагает, что данные не были изменены другими вещами / способами ... но диски (как память) склонны к самопроизвольным битовым изменениям.
Никогда не используйте ZFS в ОЗУ без ECC и никогда не используйте ZFS на дисках с рейдом, позвольте ZFS видеть все диски, не добавляйте слой, который может испортить ваш VDEV и POOL.
Как смоделировать такой сбой ... выключите компьютер, вытащите один диск из этого Raid1 и измените только один бит ... воссоздайте и посмотрите, как Raid-контроллер не может знать, что изменилось ... ZFS может, потому что все чтения проверены против контрольной суммы, и если не совпадает, прочитайте с другой части ... Raid никогда не читает снова из-за сбоя (кроме аппаратного невозможного чтения, сбоя) ... если Raid может читать, он думает, что данные в порядке (но это не в таких случаях ) ... Raid пытается читать с другого диска, только если там, где он читает, написано "эй, я не могу читать оттуда, аппаратный сбой" ... ZFS читает с другого диска, если контрольная сумма не совпадает, а также как если бы он читал говорит: «Эй, я не могу читать оттуда, аппаратный сбой».
Надеюсь, я прояснил это ... ZFS на любом уровне Raid - это серьезная боль и полный риск для ваших данных! а также ZFS в памяти без ECC.
Но никто не говорит (кроме меня):
Итак, какие диски использовать?
Но, эй, большинство людей не знают всего этого, и у них никогда не было проблем ... Я говорю им: вау, как вы удачливы, купите лотерейные билеты, пока удача не ушла.
Риски есть ... такие совпадения сбоев могут произойти ... так что лучший ответ:
Что я лично делаю?
Надеюсь, я смогу пролить свет на ZFS против Raid, это действительно больно, когда что-то идет не так!