2gusia (2gusia) wrote,
2gusia
2gusia

Category:

Одержание: Два ZFS пула с одним именем

Во время миграции со старого zfs пула на новый естественно желание сохранить все пути-имена. А то потом слишком долго всё настраивать. Для этого я поднял новый пул на временном NAS и создал там пул с тем же именем (Pool) и датасетами, что и старый. Дальше собирался перелить по zfs send receive по сети отключить старый пул и перенести новый на его место. Но не зажило и пришлось преодолевать проблему.

К сожалению, из-за железячных проблем второй NAS не заработал и новый пул мне пришлось перенести на боевую машину. Так как два пула с одним именем жить не будут, я заранее, на старой машине, его переименовал

zpool export -f Pool
zpool import Pool BigPool


Но этого оказалось мало. Опишу проблемы и их решение, тк аналогичный моему сценарий вполне возможен.

Итак, перенеся диски с новым пулом в боевой NAS я убедился, что все диски видны, посмотрел по

zpool status

что пулы живут вместе - и привычно через вебгуй Disks|ZFS|Configuration|Synchronize синхронизировал конфигурацию nas4free и реальность. Датасетов у меня много, поэтому хоть и заметил, что что-то не все отображены - но не стал париться.

Иду на NAS по ftp заливать информацию - сюрприз, пула BigPool не видать. Что за?
Идём Disks|ZFS|Datasets|Information, смотрим точки монтирования (у меня больше, сократил для ясности)

AME                  USED  AVAIL  REFER  MOUNTPOINT
BigPool              1.03T  19.3T   375K  /mnt/Pool
BigPool/Backup        802K  19.3T   802K  /mnt/Pool/Backup
Pool                 7.56T  1.01T  25.4G  /mnt/Pool
Pool/Backup           397G  1.01T   396G  /mnt/Pool/Backup
Pool/Jail            25.1G  1.01T  17.5G  /mnt/Pool/Jail



То есть новый и старый пулы смонтировались в одну точку.
Не вопрос, сейчас сменим пулу точку монтирования

zfs set mountpoint=/mnt/BigPool BigPool
- вигвам - device busy
аналогичнос пулом Pool

Хорошо, экспортируем пулы
 zpool export BigPool
 zpool export -f BigPool
 zpool export Pool
 zpool export -f Pool
- вигвам, никакие из этих команд нужного эффекта не дают. Дело в том, что у меня на Pool есть датасет Jail, а их так просто не прикончить.

...Время подумать...

Выключаю NAS, отрываю питание от дисков пула Pool, загружаюсь снова.
Теперь
zfs set mountpoint=/mnt/BigPool BigPool
прекрасно отрабатывается.
Снова выключаем, подрубаем диски пула Pool, грузимся - оба пула видны и смонтированы

Но это ещё не конец - nas4free не хочет синхронизировать датасеты пула BigPool, совпадающие по именам. Думаю, просто баг, переименовал

zfs rename BigPool/Backup BigPool/Backup1
zfs rename BigPool/Media BigPool/Media1

...

После этого Disks|ZFS|Configuration|Synchronize всё синхронизировалось. После удаления старого пула придётся обратно переименовывать, ну и ладно.
Tags: nas, nas4free, zfs, руками
Subscribe

  • Жизнь, она смешнее анекдота

    Мне сейчас друг напомнил коммент месячной давности. Как раз тогда в Суэцком канале контейнеровоз застрял. Улыбнитесь и вы :)

  • Именной анекдот

    В гости можно сейчас позвать только одну семью, а на похороны 30 человек. Я приглашаю гостей на похороны моего гуся, который помрёт 24 декабря.…

  • Пора позитивно готовиться к земле

    В Киеве прошла прошла онлайн-презентация книги мэра Киева Виталия Кличко "Кто не слышал, тот увидит" с избранными цитатами.…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

  • 6 comments