LINUX.ORG.RU
ФорумAdmin

RAID 0 и пропадание питания

 ,


0

1

Всем привет.

Народ, не могу нигде найти каких-то четких ответов по сабжу. Я понимаю, их впринципе нет и быть не может. но все же.

Какова вероятность того что raid0 разлетится при пропадании питания? отвечаю сразу: контроллер без батарейки (мать asus b450m pro), диски crucial mx500.

работают по отдельности. пропаданий питания видели уже немало (за 6183 часа 34 power loss) - работают и дальше без проблем.

вопрос собственно в чем, при обчном использовании я теряю данные которые у 1 ssd в кеше (худо-бедно, но и фиг с ними). а когда они работают в raid0, то потеряется какой-то блок данных (равный кешу одного или всех дисков???).

но потеряться опять же он может только на одном из дисков, тк остальные свое уже пописали, а один не успел… выходит что при включении я получу «поломанный» кусок. насколько он важен - ну это рулетка, не знает никто, но из практики: потеря хз какого куска в кеше одного диска за все время вреда не принесла. если этот кусок будет потерян на raid’e - сам raid не сдохнет? (по типу я хз что со мной…)

так что хочу услышать больше из практики. прошу не засыпать постами типа «это фигня, так нельзя и тд» (это и сам знаю)

Перемещено hobbit из general



Последнее исправление: alexni (всего исправлений: 1)

Ответ на: комментарий от Dimez

а хз, не пишет asus. но батарейки к материнке отдельной нет, поэтому уверен, что он не забэкаплен батарейкой

alexni
() автор топика
Последнее исправление: alexni (всего исправлений: 1)
Ответ на: комментарий от Dimez

Понял. Тут спасибо за совет.

А если p420i от hp? Или чет из той серии, дешево и сердито?

Оговорюсь, на hp dl380p g8, с p420i + 512Mb fbwc - пробовать стремно, там важные данные и бекап за «вчера» - это катастрофа..

Вроде бы как бы, я нарыл в инете, что как раз если есть батарейка, то пофиг, она для того и служит (ечли конечно hba режим не включен или ssd smart path), короче, когда все шурует чз кеш контроллера то из серии «та выдергивай питание наздоровье». Насколько правда, не знаю

alexni
() автор топика
Последнее исправление: alexni (всего исправлений: 1)
Ответ на: комментарий от alexni

А если p420i от hp? Или чет из той серии, дешево и сердито?

Лучше сделать softraid средствами mdadm

Вообще важные данные и raid0 - это ортогональные понятия. Совсем.

Для чего именно нужен raid0?

Dimez ★★★★★
()
Ответ на: комментарий от Dimez

Есть задача на crucial’ax крутить mssql в виртуалке. По отдельности они показывают 25/27 rr/rw, в raid0 46/50, а если 3 шт в raid0 то и того быстрее.

Но вот и стоит вопрос о целостности. За счет того что в виртуалке, потеря кусочка не так страшна.

С software raid дела по правде не имел, хз как с него вытягивать что-то вслучае отказа диска или ошибок на нем. читал, что software raid 5 на «обычных» мамках показывает себя в разы быстрее чем hw raid 0 на серверах, насколько правда - нету 3х свободных дисков, а мешать в кучу разные, боюсь чревато последствиями.

В реальности, бекапы делаю все равно, тк винда из без пропаданий питания бывает глючит. Или ни с того ни с сего зависла и bluescreen… (там где мсскл)

alexni
() автор топика
Последнее исправление: alexni (всего исправлений: 1)
Ответ на: комментарий от alexni

Есть задача на crucial’ax крутить mssql в виртуалке.

Mssql есть нативный под linux.

По отдельности они показывают 25/27 rr/rw, в raid0 46/50

Это что за единицы измерений?

Если надо iopsы в проде, то лучше не raid0 городить, а ssd пожирнее купить.

Dimez ★★★★★
()
Ответ на: комментарий от alexni

Оговорюсь, на hp dl380p g8, с p420i + 512Mb fbwc - пробовать стремно, там важные данные и бекап за «вчера» - это катастрофа..

Не далее чем вчера диск на одной из машинок в проде гакнулся (причём даже в mirror она раком встала, но это отдельная тема). Не хотите Вы RAID-0…

bugfixer ★★★★
()
Ответ на: комментарий от bugfixer

Ну хз. Если raid 0 такой кривой, что боится power loss, то чего его в производстве держат?.. Как правило, все тому подобные вещи или убраны давным давно или с приписками большими красными буквами…

Если raid для independent disks, то остается полагать, что надежность самого array прямо зависит от контроллера (при условии нормальных baсkend дисков). Толковый контроллер с батарейкой и можно рисковать. Так?

alexni
() автор топика
Ответ на: комментарий от alexni

Ну хз. Если raid 0 такой кривой, что боится power loss,

Причём тут power loss? В проде не бывает power loss-ов, речь не о них. Raid 0 просто ненадёжный, его надёжость хуже чем самый плохой из дисков, входящих в его состав.

то чего его в производстве держат

Не держат.

что надежность самого array прямо зависит от контроллера

Никакой контроллер не спасёт от битого диска, если в массиве нет избыточности.

firkax ★★★★★
()
Ответ на: комментарий от firkax

Причём тут power loss? В проде не бывает power loss-ов, речь не о них.

Никакой контроллер не спасёт от битого диска, если в массиве нет избыточности.

собственно сам вопрос как раз в power loss и есть. Речь идет не о битых дисках. С этим все понятно. я сказал, юзаю crucial, они не шибко боятся потерь питания. (скажем так на порядок лучше их переживают чем остальные ssd)

RAID0 в общем то не боится потери питания если он честно обрабатывает flush cache.

А от тут можно или де почитать или… как это увидеть\проверить\потрогать?) это наверное собственно и есть ответ на мой вопрос… что будет если контроллер не сделал flush cache?

Ну и как я могу понять, то software raid от этого пострадает намного больше, я имею ввиду разлом всего массива

alexni
() автор топика
Последнее исправление: alexni (всего исправлений: 2)
Ответ на: комментарий от alexni

Если контроллер не сделал flush cache, то последние записанные данные будут незаписанными и на их месте будет что-то старое. Всё так же как и с любым другим writeback кешом. raid0 это тупо включение нескольких дисков параллельно, никакой скрытой магии в нём нет, raid-а по факту там тоже нет (потому и ноль).

Ну и как я могу понять, то software raid от этого пострадает намного больше, я имею ввиду разлом всего массива

Нечему там страдать.

Вот смотри, у тебя есть диски A и B, на них блоки A0 A1 A2 ... B0 B1 B2 ...

Когда ты делаешь из них raid0, у тебя получается логический диск удвоенного объёма, с блоками в таком порядке: A0 B0 A1 B1 A2 B2 ... Т.е. каждый чётный блок мапится на первый диск, каждый нечётный - на второй, никакой специальной обработки там нет, что в них запишешь то там и будет. Ну и наверно в первый или последний сектора дисков записаны какие-то метаданные о том, что эти два диска принадлежат в одному массиву и один из них первый, другой второй, но это вообще не важно в контексте проблем.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)
Ответ на: комментарий от vvn_black

По отношению к SSD что за единицы измерения?

Мб/сек при 4к блоках.

Вот смотри, у тебя есть диски A и B, на них блоки A0 A1 A2 … B0 B1 B2 …

Походу я не могу сформулировать вопрос правильно. При одном диске, у меня есть только A0 A1 A2.. An При пропадании питания я теряю к примеру A1A2A3, те 6Кб.

Тут же я потеряю a1 b1 a2 b2 a3 (B3 запишется). При конфиге stripes в 1М/1М я потеряю 5Мб, что уже чревато последствиями.

Короче дошло. Сам raid развалится только при ошибке в метаданных (которые, возможно, записаны в конце ну или где-то на диске), т.е при нормальных дисках шансы невелики. на сами данные - тут как пронесет, метод проб и ошибок.

Но. При таком раскладе RAID10 поведет себя так же. Те кусок данных канет в небытие, просто если, вдруг, почему-то от пропадания питания гавкнет один диск, то не беда. А вот критичен ли этот кусок или нет - как повезет. Ечли вообще на raid’e размещены виртуалки, то по факту можно получить намного больший ущерб при юзании raid чем дисков по отдельности…

alexni
() автор топика
Ответ на: комментарий от alexni

Короче расклад из личного опыта. Мож кому пригодится. Пока тут писал, нарвался сам на грабли. стоит у меня hp dl380p g8, с p420i, 1Gb fbwc (без батарейки…). Там 4xSAS 400Gb в RAID 10. Крутится 1С сервер+mssql на win server 2016. Свет потух, винда в bluscreen. С горем пополам стартонул ком строку, chkdsk /f /r и зпработало.

Поэтому проверено. Наверное любой raid при пропадании питания теряет кусок данных больше чем просто обычный винт. Вывод - если не уверен в винтах, то никакой raid не катит. Разве что для больших обьемов, где винта не хватает а бэкап негде хранить. перестройка raid дольше чем восстановление бєкапа.

alexni
() автор топика
Ответ на: комментарий от alexni

Поэтому проверено. Наверное любой raid при пропадании питания теряет кусок данных больше чем просто обычный винт

Бред. Как говорят: Вы не кошек не любите - Вы их готовить не умеете.

bugfixer ★★★★
()
Ответ на: комментарий от alexni

При пропадании питания я теряю к примеру A1A2A3, те 6Кб.

Вы отдаёте себе отчёт что проблема совсем в другом? Никто нигде не гарантирует сохранение порядка записи на физический носитель. И это именно то место где consistency теряется. Батарейка на контроллере всего лишь позволяет сэкономить на flush (можно потом проиграть TX log at the event of crash, и все счастливы). А ещё мне не понятно почему с более менее достойным серверным железном потеря питания вообще является вопросом - защищаются обычно совсем от другого.

bugfixer ★★★★
()
Ответ на: комментарий от bugfixer

А ещё мне не понятно почему с более менее достойным серверным железном потеря питания вообще является вопросом - защищаются обычно совсем от другого.

К сожалению сейчас я был вынужден перевезти железо в другое место,а там питание крайне нестабильное. У меня стоит UPS c 2x100Ah акумами. его хватает на 5-6 часов. в 99% этого хватает, но иногда… и как на зло в эти моменты там некому завести генератор. городить в том месте автоматизацию резервирования питания сейчас нет ни возможности ни желания - размещение временное.

поэтому как раз и возник вопрос насколько есть смысл юзать raid впринципе… в hp, p420i с винтами по отдельности в hba режиме тупит безбожно. raid5 - немного лучше но все же… raid10 меня не спас.

потому я изначально сказал, меня интересовал вопрос не в отказе подложки (и потере 100%), а как раз в том, какой обьем данных я потеряю при этом.

p.s. я неоднократно натыкался на подобные вопросы на разных форумах. но везде все сводят к тому, что надо бэкапить или рейд тк «а если разлетится винт»…… если разлетится винт, то другая история. а вот выпал кусочек данных и доставил неприятности - это другое. или вовсе «служебный» кусочек выпал и всему массиву ж..а

alexni
() автор топика
Последнее исправление: alexni (всего исправлений: 2)
Ответ на: комментарий от alexni

его хватает на 5-6 часов. в 99% этого хватает, но иногда…

Почему UPSа не тушит сервак когда заряд на исходе?

потому я изначально сказал, меня интересовал вопрос не в отказе подложки (и потере 100%), а как раз в том, какой обьем данных я потеряю при этом.

Мало отличается от ситуации с одним винтом. В предположении что без батарейки controller cache отключен.

а вот выпал кусочек данных и доставил неприятности - это другое. или вовсе «служебный» кусочек выпал и всему массиву ж..а

С RAID-0 в control block тупо нечему меняться, даже теоретически. За это я бы не переживал.

bugfixer ★★★★
()
Ответ на: комментарий от alexni

ПыСы:

поэтому как раз и возник вопрос насколько есть смысл юзать raid впринципе…

Безусловно. Я бы даже близко не подошёл к тем IOPS которые мне жизненно необходимы без размазывания по 16 SSDs в RAID-10. Нагрузка очень специфичная правда - жёсткий короткий scatter-gather с постоянными sync’ами, несколько терабайт в день на машинку.

bugfixer ★★★★
()
Ответ на: комментарий от Rost

пример хорошего ссд :)

супер. 1Тб ~ 2800$ ))) можно crucial’ов по 80$\1Tb натыкать столько в raid0, raid10 и беперебойники, что легко будет 800Мб\с на 4к блоках и работать железяка будет месяц без сети )))

Почему UPSа не тушит сервак когда заряд на исходе? ups не из космических, а по его usb он почему-то не передает статус батареек… ну или по крайней мере как я nut не выворачивал - не хочет…

Мало отличается от ситуации с одним винтом. В предположении что без батарейки controller cache отключен.

по сути да. за батарейку я так нигде и не вычитал, как с ней сделается flush cache если винты потухли…

пецифичная правда - жёсткий короткий scatter-gather с постоянными sync’ами и чем тут raid10 спасет? по скорости он даже немного тупее голого raid0. ну да, винт вылетит и… но опять же, хот свап и перестройка создаст такие тормоза, что очень большой вопрос, что проще… с бэкапа или на ходу…

p.s. у меня одни берут vps, под векторы - довольны. p.p.s цена вопроса? - если на это пофиг, то 2 raid5, 5EE, сверху софтовый raid0 и вдогонку zfs с выделенными 64-100Gb оперативки под кеш) - изврат, но пару лет назад игрались по пьяне)) - мы с 6шт toshiba p300 выжали 187к iops на 4к блоках.))

alexni
() автор топика
Ответ на: комментарий от alexni

за батарейку я так нигде и не вычитал, как с ней сделается flush cache если винты потухли

Flush не делается. Батарейка позволяет кешу не обнулиться пока питание обратно не появится.

bugfixer ★★★★
()