Re: Снова о ZFS
>> Т.е., приложение всё-равно запишет, не поняв что была ошибка и данных на
>> диске нет?
>> В чём тогда разница?
>
> Я не понимаю про какую разницу вы спрашиваете.
>
> * zfs set sync=disabled -- означает что "не делать настоящую
> гарантированную запись на диск во время вызова fsync", а поместить всё
> в буфер и уж когда запишется, тогда и запишется. Программа после fsync
> думает что на диске всё есть, но при какой-то поломке/проблеме, то,
> что не записалось из буфера, будет потеряно
> * вынесенный ZIL но без зеркалирования -- fsync гарантирует что до ZIL
> запись дошла, на него записалась, но при поломке, то, что из ZIL не
> успело перенестись на диск, будет потеряно. Аналогично sync=disabled,
> с той лишь разницей что данные оказались на ZIL накопителе, а не в
> памяти
>
Т.е., в случае sync=disabled, ZIL запишется сразу (на SSD), но на диск
данные не будут сброшены?
> Так как ZIL это SSD наверняка всегда, то SSD имеет очень не нулевой шанс
> внезапно отказать (а не плавно деградировать как это делают HDD) и,
> соответственно, шанс потерять какие-то данные после fsync. Поэтому ZIL
> так сильно рекомендуется зеркалировать.
>
Ok, понял, докуплю вторую SSD.
>> Ещё вопрос: есть SSD размером 250 ГБ на который будет установлена
>> система (или два SSD), и на которые будет вынесен ZIL.
>> Хочу сделать два одинаковых GPT раздела на каждой из SSD.
>> На раздел под систему отвести 100 ГБ, под ZIL 150 ГБ.
>> Оба раздела будут шифроваться стандартным ZFS шифрованием.
>> С первого раздела (миррора) должна грузиться ОС.
>>
>> Эта конфигурация жизнеспособна?
>
> Да, проблем или каких-то особенностей тут не вижу.
>
Вопрос по загрузке возникает. В Linux эта проблема решается через
вынесение ядра и initrd с cryptsetup на отдельный раздел. Здесь тоже самое?
Reply to: