> On 12 Sep 2015, at 16:25, Vladislav V. Prodan <ad...@support.od.ua> wrote:
> 
> 
> 
> 12 сентября 2015 г., 14:43 пользователь Mykola Dzham <i...@levsha.me> написал:
> 
> > On 10 Sep 2015, at 21:38, Vladislav V. Prodan <ad...@support.od.ua> wrote:
> >
> >
> >
> > 10 сентября 2015 г., 22:23 пользователь Eugene Grosbein 
> > <eu...@grosbein.net> написал:
> > On Thu, Sep 10, 2015 at 07:15:58PM +0300, Vladislav V. Prodan wrote:
> >
> > > Внутри jail я не увижу ZFS разделов?
> >
> > По дефолту нет.
> >
> > Много патчить придется?
> > Направление, какие файлы смотреть не подскажете?
> 
> Я не знаю что именно Вы хотите “увидеть”, но внутри jail доступна вся 
> файловая система
> от корня jail, включая все  zfs разделы, которые туда примонтированы.
> 
> Это я понял. Что с индивидуальными настройками ZFS разделов? Они наследуются 
> внутри jail? Кто-то делал тесты?

Они работают, просто работают. Применять слово “наследование” к jail вообще не 
корректно.
Jail это не виртуализация, это просто дополнительное свойство процесса и пару 
проверок в ядре.
С точки зрения файловой системы это всё просто процессы, без разницы jail или 
не jail.

>  
> Изнутри jail невозможно администрировать zfs разделы, но оно Вам надо?
> 
> У меня скрипты бэкапа Msql разделов.
> Их придется переписывать. Например:
> 
> #!/bin/sh
> 
> /usr/local/bin/mysql -e 'FLUSH LOGS; FLUSH TABLES WITH READ LOCK; \
> SYSTEM zfs destroy -r zroot/mysql@yesterday; \
> SYSTEM zfs rename -r zroot/mysql@today @yesterday; \
> SYSTEM zfs snapshot -r zroot/mysql@today; \
> SYSTEM zfs destroy -r zroot/mysql/ibdata@yesterday; \
> SYSTEM zfs rename -r zroot/mysql/ibdata@today @yesterday; \
> SYSTEM zfs snapshot -r zroot/mysql/ibdata@today; \
> SYSTEM zfs destroy -r zroot/mysql/iblogs@yesterday; \
> SYSTEM zfs rename -r zroot/mysql/iblogs@today @yesterday; \
> SYSTEM zfs snapshot -r zroot/mysql/iblogs@today; \
> UNLOCK TABLES;'
> 

Да, такое работать не будет, нужно переписывать.

Но вообще в zfs есть субокоманда jail, которая позволяет передать dataset в 
администрирование
определенному jail. Я не пробовал - необходимости не было. Попробуйте, может 
это то,
что Вам нужно.

> > > Имеет ли смысл для нагруженных jail'ов использовать множество ZFS 
> > > разделов?
> >
> > Не вижу смысла, но можно попробовать дать доступ к другим разделам этому
> > jail через mount_nullfs
> >
> > С монтированием и расшариванием (ZFS) разделов для нескольких клеток особых 
> > проблем нет.
> > Я имею ввиду, есть ли негативный опыт выделение под каждую  клетку с 10-к 
> > ZFS разделов? для разных настроек разделов под MySQL, netflow, /var, /tmp 
> > etc. Клетка не усредняет настройки разделов ZFS?
> 
> Смысл так делать имеет: это банально удобно, это позволяет бекапить разделы 
> по отдельности,
> это позволяет выставлять разные атрибуты на разные файловые системы.
> Проблем с этим нету никаких. Я так всегда делаю. Вот, например:
> 
> # zfs list -r rpool/virt/pub.levsha.me
> NAME                                           USED  AVAIL  REFER  MOUNTPOINT
> rpool/virt/pub.levsha.me                      59.2G   539G  34.5M  
> /virt/pub.levsha.me
> rpool/virt/pub.levsha.me/home                 2.58G   539G   461M  
> /virt/pub.levsha.me/home
> rpool/virt/pub.levsha.me/home/freebsdsvn      1.80G   539G  1.80G  
> /virt/pub.levsha.me/home/freebsdsvn
> rpool/virt/pub.levsha.me/usr                  27.3G   539G   157M  
> /virt/pub.levsha.me/usr
> rpool/virt/pub.levsha.me/usr/local            2.75G   539G   605M  
> /virt/pub.levsha.me/usr/local
> rpool/virt/pub.levsha.me/usr/ports            24.1G   539G   593M  
> /virt/pub.levsha.me/usr/ports
> rpool/virt/pub.levsha.me/usr/ports/distfiles  19.3G   539G   580M  
> /virt/pub.levsha.me/usr/ports/distfiles
> rpool/virt/pub.levsha.me/usr/ports/packages   1.11G   539G  1.10G  
> /virt/pub.levsha.me/usr/ports/packages
> rpool/virt/pub.levsha.me/var                  29.2G   539G  18.1G  
> /virt/pub.levsha.me/var
> #
> 
> Если можно, поделитесь скриптами менеджмента - клонирование-создание клетки с 
> эталона.

Не использую ничего подобного. Просто создаю дерево файловой системы с 
какого-нибудь
уже существующего образца с помощью чего-нибудь элементарного типа
zfs list -Hro name rpoool/virt/examplejail | sed ’s/examplejail/newjail/‘|xargs 
…, потом выставляю пару атрибутов,
потом просто делаю make installkernel installwolrd distribution DESTDIR=$D
У меня jail-ов не так много - порядка десяти. И создаю их редко - в 
автоматизации смысла нету.
И обновляю я их тоже отдельно - я пробовал использовать всякие ezjail и т.п, но 
для моих задач
они оказались даже вредными: каждый jail индивидуален, попытка обновить все 
скопом практически
гарантированно что-то где-то ломало. Некоторые из них до сих пор живут с миром 
от шестерки, например…


Reply via email to