У меня есть сервер с 8 дисковыми отсеками, заполненными дисками по 3 ТБ. Использование 4 зеркальных виртуальных машин vdev по 2 диска в каждом дает мне 12 ТБ избыточных хранилище.
Вот в чем проблема - я где-то читал, что мне нужно " все 16 потоков в моей системе переходят на 100%, и все 24 ГБ оперативной памяти внезапно заполняются (я вижу это через htop
), после чего моя система блокируется.
Можно ли как-нибудь раскопаться этой дыры, не разрушая весь мой пул и не начиная заново?
На самом деле я понял это самостоятельно, просто порывшись вокруг. Моя система автоматически монтировала тома ZFS во время загрузки. Если бы я загрузил свою систему в обычном режиме, она зависла бы во время загрузки с текстом «Выполняется задание запуска для монтирования наборов данных ZFS ...» или что-то в этом роде. Если бы я загрузился в режиме восстановления, он загрузился бы нормально и получил бы подсказку, но ZFS будет молча пытаться смонтировать мои наборы данных в фоновом режиме, что в конечном итоге заблокирует мою машину через 10-15 минут. Кроме того, это не позволяло мне вносить какие-либо изменения в мой пул.
Я обошел это, отключив задачу systemd zfs-mount.service
и перезагрузившись в режим восстановления. Теперь я мог выборочно монтировать наборы данных и вносить изменения в свой пул, не блокируя машину.
Я все еще не решил свою проблему. Несмотря на то, что я отключил дедупликацию, скопировал все данные из моего дедуплицированного набора данных в новый и удалил старый набор данных, у меня все еще есть огромный DDT:
dedup: DDT entries 29022001, size 975 on disk, 315 in core bucket allocated referenced ______ ______________________________ ______________________________ refcnt blocks LSIZE PSIZE DSIZE blocks LSIZE PSIZE DSIZE ------ ------ ----- ----- ----- ------ ----- ----- ----- 1 27.7M 2.78T 2.78T 2.78T 27.7M 2.78T 2.78T 2.78T 2 1.65K 191M 191M 191M 3.30K 382M 382M 383M 4 71 4.27M 4.27M 4.39M 310 19.4M 19.4M 19.8M 8 132 16.3M 16.3M 16.3M 1.18K 149M 149M 149M 16 3 32.5K 32.5K 36K 51 537K 537K 600K 4K 1 16K 16K 16K 6.61K 106M 106M 106M 128K 1 128K 128K 128K 146K 18.3G 18.3G 18.3G Total 27.7M 2.78T 2.78T 2.78T 27.8M 2.80T 2.80T 2.80T
Однако, поскольку я выяснил, что часть "заканчивается RAM" Я буду считать эту проблему решенной и, если потребуется, опубликую новый вопрос позже.
Быстрое редактирование: Мой ДДТ, похоже, сжимается, причем довольно быстро. Возможно, в свое время он сморщится и исчезнет. Посмотрим.
Еще одно быстрое изменение: Замечательно! ДДТ сокращался все быстрее и быстрее, пока, наконец, команда zpool status -D tank
не вернула дедупликация: нет записей DDT
.