Sergey
тогда почему такое на каждом мирроре
В адресную строчку посмотри
central
тогда почему такое на каждом мирроре
и каким боком это относиться к zfs?
Sergey
westpain ⛤ / коплю 157/30000₽
об этом я не подумал, извините за потраченное время
Алексей
опять общие вопросы?
nikolay
доброго дня! срочный вопрос) случайно указали при расширении тома неправильный размер (g вместо t), пошел процесс уменьшения тома. как я понимаю сейчас высвобождаются свободные блоки, потом дойдет до занятого объема
nikolay
как обработает zfs такой косяк и можно ли как то остановить процедуру сжатия тома?
nikolay
или с данными можно попрощаться?
Vladislav
Эрм, он же по идее не даст ничего сделать если указанный новый объём меньше, чем текущий?
nikolay
был объем 80 Тб, сейчас уже 72 и продолжает уменьшаться
nikolay
[root@zobj01 ~]# zfs list | grep disk1 zones/a48e3fe3-036b-cf9a-9716-afcd5f17b75e-disk1 72.7T 40.0T 72.7T - zones/cbdfb587-a4fb-44fb-dc23-d4359c7254c1-disk1 78.9T 40.0T 78.9T -
nikolay
[root@zobj01 ~]# zfs list | grep disk1 zones/a48e3fe3-036b-cf9a-9716-afcd5f17b75e-disk1 71.4T 41.4T 71.4T - zones/cbdfb587-a4fb-44fb-dc23-d4359c7254c1-disk1 78.9T 41.4T 78.9T -
nikolay
кривой размер задали для тома в первой строке
nikolay
на томе внутри ос было свободно примерно 16 Тб
Vladislav
Итак. Тогда коснёмся вопроса терминологии. Есть тома - zvol Есть пулы - pool Есть зоны - zones Какую команды конкретно Вы выполняли?
nikolay
set volsize=96g
Vladislav
Целиком пожалуйста
nikolay
zfs set volsize=96g zones/a48e3fe3-036b-cf9a-9716-afcd5f17b75e-disk1
nikolay
get volsize показывает 96g
Vladislav
https://forums.freebsd.org/threads/zfs-set-volsize-data-loss.55854/
Vladislav
Поэтому либо попробуйте zfs set volsize=96T zones/a48e3fe3-036b-cf9a-9716-afcd5f17b75e-disk1
Vladislav
Либо ищите бэкапы
nikolay
Поэтому либо попробуйте zfs set volsize=96T zones/a48e3fe3-036b-cf9a-9716-afcd5f17b75e-disk1
уже, но как я понимаю первая инструкция set еще не закончилась, и пока она не закончится вторая не отработает.
Vladislav
Тогда всегда есть форс розетки
nikolay
судя по тому что размер тома активно уменьшается
Vladislav
Прервать операцию уменьшения объёма
Vladislav
До того как она тронет файловую систему
nikolay
не дает, я даже попробовал остановить vm куда выдавался этот диск - аналогично. fs там была на 80 Тб, ее уже затронуло
nikolay
root 702670 702566 0 11:51:50 pts/4 0:00 zfs set volsize=96T zones/a48e3fe3-036b-cf9a-9716-afcd5f17b75e-disk1 root 700772 1 0 11:26:19 ? 0:11 zfs set volsize=96G zones/a48e3fe3-036b-cf9a-9716-afcd5f17b75e-disk1
Vladislav
А, тогда ждите окончания, затем расширяете обратно и какой-нибудь OnTrackEasy Recovery или testdisk
Vladislav
Это прозвучит плохо, но Вы ведь сделали снапшот перед выполнением команды?
nikolay
гм. никогда не думал что у zfs нет защиты от дурака( вроде даже обсуждали это выше в чате, что zol не даст уменьшить размер. видимо в smartos не включили
Vladislav
снапшот сделать не лучше ?
А смысл сейчас его делать? ФС уже в шоке от такой жизни
Ivan
А смысл сейчас его делать? ФС уже в шоке от такой жизни
сейчас больше шансов что-то вытащить, чем потом
nikolay
ладно. последний вопрос - ребут чем-то поможет?
Vladislav
* zfs snapshot zones/a48e3fe3-036b-cf9a-9716-afcd5f17b75e-disk1@snapshot
nikolay
сделал уже, но имхо это мертвому припарка.. ребут может помочь остановить этот процесс? или после загрузки снова начнет шринкать?
central
Бекапы то есть?
nikolay
Бекапы то есть?
нет, но это объектник, можно отреплицироваться с рабочих нод. долго правда(
Vladislav
Вопрос, а у кого-нибудь есть материалы по теме zfs и NTB (Non-Transparent Bridge)?
Vladislav
Что за приблуда?
Используется для создания всех текущих отечественных двух контроллерных схд. Позволяет шарить диски между двумя серверами по pcie шине
nikolay
Железка что ли?
Vladislav
...
Vladislav
Vladislav
https://www.missinglinkelectronics.com/devzone/images/MLE-TB20190424/Fig5.png
Vladislav
Все подобные схд реализованы через него. Поэтому мне стало интересно, может кто возился с ним и ZFS
Vladislav
nikolay
ну если считать например аэродиск подобной, то у нее zfs внутри
nikolay
baum опять же
nikolay
погуглил, это pcie switch с портом в режиме ntb, действительно умеет в HA для pci шин, для zfs как я понимаю к нему надо модуль дописывать который будет синхронизировать данные между пулами.
DOK ꧁꧂
Чето в убунте какието снапшоты торчат сотнями. Хз откуда. Как это убить?
Δαρθ
убить пакеты со словами в них snap
George
гм. никогда не думал что у zfs нет защиты от дурака( вроде даже обсуждали это выше в чате, что zol не даст уменьшить размер. видимо в smartos не включили
Zfs cli как раз таки полностью доверяет человеку, и выполняет обычно что попросили, если это легитимное действие
George
В данном случае - увы
Fedor
В данном случае - увы
А оно в транзакции не пишется?
Fedor
Или там уж сложно будет)
George
А оно в транзакции не пишется?
Емнип должно, async delete по идее
nikolay
Не, была надежда что он только свободные блоки шринкает, но нет
nikolay
А тут смартось
riv
Поэтому либо попробуйте zfs set volsize=96T zones/a48e3fe3-036b-cf9a-9716-afcd5f17b75e-disk1
Ни в коем случае. Если в пуле не достаточно свободного места, она выделит из освобожденеых! Это, по моему, гарантированно похоронит данные. Ну тут же админы, эксперты, куда все смотрят?!
riv
Самое хорошее, что вы можете сделать - это немедленно выключить машину и попробовать импортировать пул с предыдущей транзакции
Импортировать лучше, конечно с копии пула. Но пул большой. Нужно много места под копию. Насколько ценны там данные?
Vladislav
При уменьшение размера zfs не затирает всё нулями же?
Vladislav
Всего доступно 96Т, сперва уменьшается до 96Г и в чём проблема отдать команду на 96Т?
riv
При уменьшение размера zfs не затирает всё нулями же?
Высвобождает место в пул. Затирает "логически", т.е. просто при перевыделении, она знает были ли там старые данные и при попытки чтения данных с адреса по которому не было записи, вернет нули. Но все усложняется если у вас ssd. На ssd можно включить trim. Если вручную запустить trim или включить автоматический trim, то освобожденное место после этой операции будет затерто контроллером ssd. Думаю, на логическом уровне тоже обеспечивается невозможность отката к транзакциям, даанные ко орых затронуты trim