LINUX.ORG.RU
ФорумAdmin

zfs занято все место

 


0

3

создал пул на нескольких дисках, посмотрел его размер, посчитал в байтах 80% от объёма пула, получилось 7939615621120 байт.

создал zvol (блочное устройство, см -V) :

zfs create -o compression=off -o dedup=off -V 7939615621120  tank/video

это блочное устройство получилось.

создал там xfs и подмантировал в /data

где то на старте все выглядело так

 zfs list
NAME          USED  AVAIL  REFER  MOUNTPOINT
tank         11.6T  2.45T   153K  none
tank/ooo    4.13T  6.57T  3.21G  -
tank/video  7.45T  9.48T   431G  -

сейчас смотрю 1

/dev/zd16            7.3T  6.2T  1.1T  86% /data

XFS ругается что не может записать

XFS (zd16): Failing async write on buffer block 0x3011425d0. Retrying async write.

сейчас смотрю 2

zfs list 
NAME          USED  AVAIL  REFER  MOUNTPOINT
tank         14.0T      0   153K  none
tank/ooo    4.13T  4.12T  3.23G  -
tank/video  9.90T      0  9.90T  -

проблема явно в ZFS.

Я создал блочное устройство фиксированного размера, обратите внимание на значения USED и AVAIL где то на старте, это вообще как? устройство блочное, он не может знать сколько на нем занятно или свободно. когда «сейчас смотрю 2» значения USED и AVAIL еще более странные, 9.90T занятно, 0 свободно, это вообще как, что почему?

P.S. Удалил с /data половину данных - проблему не решило.

Прошу помочь, в чем дело, почему так?



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

устройство блочное, он не может знать сколько на нем занятно или свободно.

С чего ты взял?

проблема явно в ZFS.

С чего ты взял?

Прошу помочь, в чем дело, почему так?

Скорее всего XFS засирает весь "диск" чем-то. Таких проблем с Ext4, UFS2, FAT32, NTFS и даже ZFS (но так делать не стоит — производительность с большой вероятностью пробьёт дно) я не встречал.

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

Проблема в ZFS. Место занято в ней. XFS тут ни при чем.

Ну раз все такие умные, то и проблемы свои решайте сами. (%

mord0d ★★★★★
()

Покажи

zfs list -o space -t snapshot
Pinkbyte ★★★★★
()

это вообще как?

к слову, если ты хочешь гарантировать что созданное блочное устройство сможет скушать именно столько места, сколько под него выделено, используй reservation. Иначе у тебя получается thin provisioned volume

Pinkbyte ★★★★★
()
Ответ на: комментарий от Pinkbyte
# zfs list -o space -t snapshot
no datasets available

о чем это говорит?

# zfs list -o space 
NAME         AVAIL   USED  USEDSNAP  USEDDS  USEDREFRESERV  USEDCHILD
tank             0  14.0T         0    153K              0      14.0T
tank/ooo    4.12T  4.13T         0   3.23G          4.12T          0
tank/video      0  9.90T         0   9.90T              0          0

как использовать reservation ? какая то опция для zfs create ?

thin provisioned volume - а что это ?

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

о чем это говорит?

снапшотов у тебя нет, я думал может они заняли место

как использовать reservation ? какая то опция для zfs create ?

Может и на этапе create ее можно задать, я задаю уже потом через zfs set, например так

zfs set reservation=5G pool/dataset

thin provisioned volume - а что это ?

https://en.wikipedia.org/wiki/Thin_provisioning
https://cuddletech.com/?p=16

Но, вроде как, сказано что если не создавать тома с опцией -s, оно по умолчанию thick provisioned. Тем не менее, я бы через zfs get посмотрел бы на то, чему там равны reservation и volsize у тома перед тем как что-то делать.

Ну и было бы неплохо озвучить версию ZFS и твоего дистрибутива.

Pinkbyte ★★★★★
()
Последнее исправление: Pinkbyte (всего исправлений: 4)

создал zvol
создал там xfs и подмантировал в /data

это какой-то изощренный садомазо?
сделать простой датасет низя было?

Minona ★★☆
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.