Zfs

Материал из wiki.nntc.nnov.ru
Перейти к навигации Перейти к поиску

Полезные команды

Затюнить основные моменты на PVE

Отключить сжатие

zfs set compression=off rpool/data

Отключить sync

zfs set sync=disabled rpool/data

Просмотр параметров volume (внимание! - отсутствие слэша в начале - это важно)

zfs get all rpool/data/vm-100-disk-1

Аналогично - просмотр параметров пула (внимание! - слэш в начале - это важно)

zfs get all /rpool/data/

Создать volume с нужным размером блока (например, с размером блока равным размеру блока в ext4 гостевой машины по умолчанию)

zfs create -o volblocksize=4K -V 100g rpool/data/vm-100-disk-1

Проверить за собой

zfs get all rpool/data/vm-100-disk-1 | grep volblocksize

Создание дисков средствами вебинтерфейса проксмокс происходит с volblocksize=8K. Это не всегда удобно. Поэтому после создания виртмашины можно пересоздать так:

Удаляем диск

zfs destroy rpool/data/vm-100-disk-1

И создаём заново (как уже выше приводилась команда) - выключенная виртмашина ничего не заметит :-)

zfs create -o volblocksize=4K -V 100g rpool/data/vm-100-disk-1


Копирование данных через снапшоты

Просмотр списка

zfs list

Копирование

ssh root@192.168.10.123 "zfs send rpool/data/vm-106-disk-0@backup-01" | pv --size 469457889480 | zfs receive -o compress=zle storage-zfs/backup/vm-106-disk-0--DO-NOT-DELETE


создать снапшот

zfs snapshot storage-zfs/vm-206-disk-0@backup

список снапшотов

zfs list -t snapshot

посмотреть размер снапшота

zfs send -nvP storage-zfs/vm-206-disk-0@backup

должно быть на выходе что-то тпа того:

full	storage-zfs/vm-206-disk-0@backup	654563209344
size	654563209344

установить размер для диска (обычно после копирования из снапшота)

set volsize=999G rpool/data/vm-206-disk-0

Работа с томами

Изменить размер (помни о файловой системе внутри!)

zfs set volsize=1000G rpool/data/vm-201-disk-1

Дополнительные команды при вводе в кластер pve ноды

Запустить gparted и подвинуть раздел с lvm до конца физического диска -- вручную

Далее из под рута дать команды:

lvcreate pve-vg --name vmstorage -L 400g
zpool create zfspool /dev/mapper/pve--vg-vmstorage -f
zfs set compression=off zfspool
zfs set sync=disabled zfspool
/opt/node_template_config/apply_rename.sh ИМЯ_УЗЛА

Пример

/opt/node_template_config/apply_rename.sh pve-analise-01

Или

/opt/node_template_config/apply_rename.sh pve-ml-01

Далее нужно ввести ноду в кластер. Для этого выполнить команду (тоже из под рута)

pvecm add 172.16.87.100 --force

Или если не помогает команда выше:

pvecm add 172.16.87.100 -link0 IP_АДРЕС_ВВОДИМОЙ_НОДЫ --force

Disable NetworkManager

systemctl stop NetworkManager
systemctl disable NetworkManager