URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 87109
[ Назад ]

Исходное сообщение
"Раздел полезных советов: Отключаем RAID1 на MB и ставим Free..."

Отправлено auto_tips , 06-Ноя-12 00:05 
Собственно скрипт:


#!/bin/sh

mount_cd9660 /dev/cd0 /media

DIST="/media/usr/freebsd-dist"
DISKDEV1="da1"
DISKDEV2="da2"
SWAPSIZE="1G"
LOGFILE="tmp06_first.log"
exec 1>$LOGFILE 2>&1
ZPOOL="zroot"
HOSTNAME="BSD"
MNT="/mnt2"

mkdir -p $MNT
sysctl kern.geom.debugflags=0x10

/bin/echo "Starting newfs ZFS "
/sbin/gpart create -s gpt $DISKDEV1
/sbin/gpart create -s gpt $DISKDEV2
/bin/sync

/sbin/gpart add -a 4k -b 34 -s 64k -t freebsd-boot $DISKDEV1
/sbin/gpart add -a 4k -t freebsd-zfs -l disk0 $DISKDEV1
/bin/sync

/sbin/gpart add -a 4k -b 34 -s 64k -t freebsd-boot $DISKDEV2
/sbin/gpart add -a 4k -t freebsd-zfs -l disk1 $DISKDEV2
/bin/sync

/sbin/gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 1 $DISKDEV1
/sbin/gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 1 $DISKDEV2
/bin/sync

/sbin/gnop create -S 4096 /dev/gpt/disk0
/sbin/gnop create -S 4096 /dev/gpt/disk1
/bin/sync

/sbin/zpool create -m $MNT -f -o cachefile=/var/tmp/$ZPOOL.cache $ZPOOL mirror /dev/gpt/disk0.nop /dev/gpt/disk1.nop
/sbin/zpool export $ZPOOL
/sbin/gnop destroy /dev/gpt/disk0.nop
/sbin/gnop destroy /dev/gpt/disk1.nop
/sbin/zpool import -o cachefile=/var/tmp/$ZPOOL.cache $ZPOOL
/sbin/zpool set bootfs=$ZPOOL $ZPOOL
/sbin/zpool list
/sbin/zpool status
/sbin/zfs get recordsize
/usr/sbin/zdb -U /var/tmp/$ZPOOL.cache |grep ashift
/sbin/mount
/bin/df -H
/bin/sync

/sbin/zfs set checksum=fletcher4 $ZPOOL

/sbin/zfs create -V $SWAPSIZE $ZPOOL/swap
/sbin/zfs set org.freebsd:swap=on $ZPOOL/swap
/sbin/zfs set checksum=off $ZPOOL/swap
/bin/sync

/sbin/zfs create -o mountpoint=$MNT/usr $ZPOOL/usr
/sbin/zfs create -o mountpoint=$MNT/usr/ports $ZPOOL/usr/ports
/sbin/zfs create -o mountpoint=$MNT/usr/src $ZPOOL/usr/src
/sbin/zfs create -o mountpoint=$MNT/usr/home $ZPOOL/usr/home
/sbin/zfs create -o mountpoint=$MNT/var $ZPOOL/var
/sbin/zfs create -o mountpoint=$MNT/var/db $ZPOOL/var/db
/sbin/zfs create -o mountpoint=$MNT/var/tmp $ZPOOL/var/tmp
/sbin/zfs create -o mountpoint=$MNT/tmp $ZPOOL/tmp
/bin/sync

chmod 1777 $MNT/tmp $MNT/var/tmp

cd $DIST
export DESTDIR=$MNT
for file in base.txz doc.txz kernel.txz ports.txz src.txz; do (cat $file | tar --unlink -xpJf - -C ${DESTDIR:-/}) ; done

cat << EOF >> $MNT/etc/rc.conf
#!/bin/sh
ipv6_enable="NO"
rc_info="YES" # Enables display of informational messages at boot.

keymap=ru.koi8-r
keychange="61 ^[[K"
scrnmap=koi8-r2cp866
font8x16=cp866b-8x16
font8x14=cp866-8x14
font8x8=cp866-8x8
saver="blank"
keyrate="fast"

mousechar_start="3"
moused_enable="YES"
moused_port="/dev/psm0"
moused_type="auto"

network_interfaces="auto" # List of network interfaces (or "auto").
ifconfig_lo0="inet 127.0.0.1 netmask 255.255.255.0"
defaultrouter="192.168.0.1"
ifconfig_em0="inet 192.168.0.88 netmask 255.255.255.0"

hostname=$HOSTNAME

zfs_enable="YES"
kern_securelevel_enable="NO"
linux_enable="YES"
sshd_enable="YES"
sshd_flags="-u0"
usbd_enable="NO"

#fsck_y_enable="YES"
background_fsck="NO"

sendmail_enable="NONE" # Run the sendmail inbound daemon (YES/NO).
sendmail_flags="-L sm-mta -bd -q30m" # Flags to sendmail (as a server)
sendmail_submit_enable="NO" # Start a localhost-only MTA for mail submission
sendmail_submit_flags="-L sm-mta -bd -q30m -ODaemonPortOptions=Addr=localhost"
# Flags for localhost-only MTA
sendmail_outbound_enable="NO" # Dequeue stuck mail (YES/NO).
sendmail_outbound_flags="-L sm-queue -q30m" # Flags to sendmail (outbound only)
sendmail_msp_queue_enable="NO" # Dequeue stuck clientmqueue mail (YES/NO).
sendmail_msp_queue_flags="-L sm-msp-queue -Ac -q30m"
# Flags for sendmail_msp_queue daemon.
# to their chrooted counterparts.

nfs_reserved_port_only="NO"
ntpdate_flags="ntp.ucsd.edu"
ntpdate_enable="NO"
xntpd_enable="NO"
net_snmpd_enable="NO"
inetd_enable="NO"
inetd_program="/usr/sbin/inetd" # path to inetd, if you want a different one.
inetd_flags="-wW -C 60" # Optional flags to inetd

portmap_enable="NO"
nfs_server_enable="NO"
nfs_client_enable="NO"
tcp_drop_synfin="YES"
icmp_drop_redirect="YES"
icmp_log_redirect="NO"
syslogd_enable="YES"
syslogd_flags="-ss"
accounting_enable="NO"
check_quotas="NO"
clear_tmp_enable="YES" # Clear /tmp at startup.
cron_enable="YES" # Run the periodic job daemon.
named_enable="YES" # Run named, the DNS server (or NO).

#devd_enable="YES".
#devfs_system_ruleset="devfsrules_common".
ldconfig_paths="/usr/lib/compat /usr/local/lib /usr/local/kde4/lib /usr/local/lib/compat/pkg"

# Denyhosts Startup.
denyhosts_enable="YES"

EOF

cat << EOF >> $MNT/etc/fstab
# Device Mountpoint FStype Options Dump Pass#
#linproc /compat/linux/proc linprocfs rw 0 0

EOF

cat << EOF >> $MNT/etc/resolv.conf
search $HOSTNAME
domain $HOSTNAME
nameserver 127.0.0.1
#nameserver 8.8.8.8

EOF

cat << EOF >> $MNT/boot/loader.conf
zfs_load="YES"
vfs.root.mountfrom="zfs:$ZPOOL"

autoboot_delay="1"
beastie_disable="YES"

linux_load="YES" # Linux emulation
#lindev_load="NO" # Linux-specific pseudo devices (see lindev(4))
linprocfs_load="YES" # Linux compatibility process filesystem
linsysfs_load="YES" # Linux compatibility system filesystem

#ipfw_load="YES" # Firewall
#ipfw_nat_load="YES"

#if_tap_load="YES" # Ethernet tunnel software network interface

# Kernel Options
kern.ipc.shmseg=1024
kern.ipc.shmmni=1024
kern.maxproc=10000

vm.pmap.pg_ps_enabled="0"
#hw.mca.enabled=1
kern.timecounter.hardware=i8254
hw.pci.enable_msix=0
hw.pci.enable_msi=0
net.inet.tcp.tso=0

EOF

cp /var/tmp/$ZPOOL.cache $MNT/boot/zfs/zpool.cache
zpool set cachefile=$MNT/boot/zfs/zpool.cache $ZPOOL
/bin/sync

/sbin/zfs unmount -a
/bin/sync

/sbin/zfs set mountpoint=legacy $ZPOOL
/sbin/zfs set mountpoint=/tmp $ZPOOL/tmp
/sbin/zfs set mountpoint=/usr $ZPOOL/usr
/sbin/zfs set mountpoint=/usr/ports $ZPOOL/usr/ports
/sbin/zfs set mountpoint=/usr/src $ZPOOL/usr/src
/sbin/zfs set mountpoint=/usr/home $ZPOOL/usr/home
/sbin/zfs set mountpoint=/var $ZPOOL/var
/sbin/zfs set mountpoint=/var/db $ZPOOL/var/db
/sbin/zfs set mountpoint=/var/tmp $ZPOOL/var/tmp
/bin/sync
rm $MNT

exit 0


Работу проверял под vmware. Своп сделан на zfs дабы не воротить еще и gmirror. Не забудьте размер свопа увеличить.


URL: http://actika.livejournal.com/3058.html
Обсуждается: https://www.opennet.ru/tips/info/2719.shtml


Содержание

Сообщения в этом обсуждении
"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диски c кластером 4k"
Отправлено deadless , 06-Ноя-12 00:05 
а напуркуа для свопа воротить gmirror? своп на зеркале это чо новомодный фетиш?

"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено Аноним , 16-Ноя-12 22:11 
Затем, что битые секторы на свопе - все равно что битая память, улавливаешь? Про такие вещи, как потеря данных, не слышал?

"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено iZEN , 16-Ноя-12 22:16 
> Затем, что битые секторы на свопе - все равно что битая память,
> улавливаешь? Про такие вещи, как потеря данных, не слышал?

geom mirror разве на лету проверяет считываемые данные с зеркальных копий?


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диски c кластером 4k"
Отправлено nagual , 06-Ноя-12 00:11 
А если один диск из зеркала отвалится а своп не на зеркале ? Единственный недостаток свопа на ZFS это невозможность работы с коркой.

"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено iZEN , 16-Ноя-12 22:19 
> А если один диск из зеркала отвалится а своп не на зеркале
> ? Единственный недостаток свопа на ZFS это невозможность работы с коркой.

У меня, если какая-то программа валится, то оставляет файл с расширением .core в домашнем каталоге пользователя или в / — всё на ZFS.



"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 16-Ноя-12 22:22 
>> А если один диск из зеркала отвалится а своп не на зеркале
>> ? Единственный недостаток свопа на ZFS это невозможность работы с коркой.
> У меня, если какая-то программа валится, то оставляет файл с расширением .core
> в домашнем каталоге пользователя или в / — всё на ZFS.

Сорри. Я неправильно выразился. Имелся ввиду дамп ядра после паники. Своп на ZFS не позволяет это делать.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено iZEN , 16-Ноя-12 22:26 
> Имелся ввиду дамп ядра после паники. Своп на ZFS не позволяет это делать.

Точно не позволяет? А какие причины? Может версия ZFS или системы устарела?


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 16-Ноя-12 22:32 
>> Имелся ввиду дамп ядра после паники. Своп на ZFS не позволяет это делать.
> Точно не позволяет? А какие причины? Может версия ZFS или системы устарела?

Я помню что читал это, но почему не разбирался.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диски c кластером 4k"
Отправлено pavlinux , 06-Ноя-12 01:14 
Скажите люди добрые нахера на ZFS делать стотыщь мильонов разделов?  

"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 06-Ноя-12 01:20 
> Скажите люди добрые нахера на ZFS делать стотыщь мильонов разделов?

Нужно если только свойства им разные делать, компрессию или квоты. Или чтоб снапшеты отдельные.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nuclight , 23-Ноя-12 14:23 
Почему нет, это ж дешево.

"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диски c кластером 4k"
Отправлено PavelR , 06-Ноя-12 06:01 
>Отключаем RAID1 на MB

не вижу, где в заметке/скрипте освещен данный вопрос.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено Сергей , 06-Ноя-12 10:36 
Дурацкое название, не отключаем, а создаем зеркало средствами zfs, строка в скрипте

/sbin/zpool create -m $MNT -f -o cachefile=/var/tmp/$ZPOOL.cache $ZPOOL mirror
/dev/gpt/disk0.nop /dev/gpt/disk1.nop

Правда нафига указывать сеецифичные для автора параметры в rc.conf, loader.conf, на мой взгляд надо только специфику zfs


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диски c кластером 4k"
Отправлено PavelR , 06-Ноя-12 06:04 
Уточните, а что, правда /etc/fstab будет по-сути пустым ?

"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено Аноним , 06-Ноя-12 11:02 
Да, как и всегда с ZFS.

"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено iZEN , 07-Ноя-12 01:40 
В системе, где только одна ZFS, файл /etc/fstab не нужен. Для SWAP можно использовать файл, который настраивается в rc.conf, или распределённое место в ZVOL.

"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диски c кластером 4k"
Отправлено Den , 07-Ноя-12 15:57 
Покажите вывод команды  zpool status

"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 07-Ноя-12 16:04 
> Покажите вывод команды  zpool status

Кусок лога:

NAME    SIZE  ALLOC   FREE    CAP  DEDUP  HEALTH  ALTROOT
zroot  19,9G   660K  19,9G     0%  1.00x  ONLINE  -
  pool: zroot
state: ONLINE
  scan: none requested
config:

        NAME           STATE     READ WRITE CKSUM
        zroot          ONLINE       0     0     0
          mirror-0     ONLINE       0     0     0
            gpt/disk0  ONLINE       0     0     0
            gpt/disk1  ONLINE       0     0     0

errors: No known data errors
NAME   PROPERTY    VALUE    SOURCE
zroot  recordsize  128K     default
            ashift: 12


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диски c кластером 4k"
Отправлено shadowcaster , 07-Ноя-12 17:35 
swap на zfs вредит здоровью. zfs занимает память при общании к томам, если система начинает свопить -> обращениек zfs -> еще сильнее своп -> crash.

http://forums.freebsd.org/showthread.php?t=30298


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 07-Ноя-12 17:44 
> swap на zfs вредит здоровью. zfs занимает память при общании к томам,
> если система начинает свопить -> обращениек zfs -> еще сильнее своп
> -> crash.
> http://forums.freebsd.org/showthread.php?t=30298

это в 8.3 или в 9.0 ?


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено shadowcaster , 07-Ноя-12 17:53 
И там, и там. Если уточнять, то и opensolaris тоже имеет проблемы со свапом на zfs.  У коммерческой солярки свап на zfs обрабатыватеся специальным образом, и это не портировано.

Если есть zfs и нужен swap - я делаю отдельные gpt разделы типа freebsd-swap и в gmirror их.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 07-Ноя-12 18:01 
> И там, и там. Если уточнять, то и opensolaris тоже имеет проблемы
> со свапом на zfs.  У коммерческой солярки свап на zfs
> обрабатыватеся специальным образом, и это не портировано.
> Если есть zfs и нужен swap - я делаю отдельные gpt разделы
> типа freebsd-swap и в gmirror их.

Может быть в 9.1 исправят, будем надеяться.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено shadowcaster , 07-Ноя-12 18:20 
> Может быть в 9.1 исправят, будем надеяться.

Нет, не исправят. Это не баг, а фича. :)

С другой стороны, все равно zfs строится не на физических дисках, а на gpt разделах. Как минимум на каждый диск надо устанавливать bootloader и загрузочный раздел, так что мешает еще добавить в разбивку swap и добавить его в gmirror?


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 07-Ноя-12 18:23 
>> Может быть в 9.1 исправят, будем надеяться.
> Нет, не исправят. Это не баг, а фича. :)
> С другой стороны, все равно zfs строится не на физических дисках, а
> на gpt разделах. Как минимум на каждый диск надо устанавливать bootloader
> и загрузочный раздел, так что мешает еще добавить в разбивку swap
> и добавить его в gmirror?

Неохота gmirror добавлять, его удалить можно только из singl mode.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено Shadowcaster , 07-Ноя-12 20:42 
gmirror простой, как табуретка, собрать можно на живой системе, разобрать - так же. удаленно.

"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 07-Ноя-12 20:48 
> gmirror простой, как табуретка, собрать можно на живой системе, разобрать - так
> же. удаленно.

Собрать да, а разобрать нет. Ну если только в наглую dd затереть ...


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено iZEN , 07-Ноя-12 18:46 
>> Может быть в 9.1 исправят, будем надеяться.
> Нет, не исправят. Это не баг, а фича. :)

...которой я не наблюдал при 100% заполненности SWAP на ZVOL размером 256 МБ.

> С другой стороны, все равно zfs строится не на физических дисках, а
> на gpt разделах. Как минимум на каждый диск надо устанавливать bootloader
> и загрузочный раздел, так что мешает еще добавить в разбивку swap
> и добавить его в gmirror?

Мешает то, что в zpool рекомендуется отдавать неразмеченное RAW-пространство дисков целиком, а не разделы: "Делайте по одному LUN'у на физический носитель".



"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено Shadowcaster , 07-Ноя-12 20:55 

> ...которой я не наблюдал при 100% заполненности SWAP на ZVOL размером 256
> МБ.

Может 256 Гигабайт? Потому как 256 МБ - это не та размеры, при которых логично использовать zfs.

> Мешает то, что в zpool рекомендуется отдавать неразмеченное RAW-пространство дисков целиком,
> а не разделы: "Делайте по одному LUN'у на физический носитель".

Речь шла про gpt разметку, а не про LUN-ы. Если ОС (/) загружается с других носителей, а zfs монтируется потом, то проще всего отдать все устройство под pool. Если надо монтировать root с zfs - то надо сначала загрузить то, что умеет собрать zfs pool и смонтировать его. Подробно разные методы для freebsd описаны тут:
http://wiki.freebsd.org/RootOnZFS



"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено iZEN , 07-Ноя-12 21:12 
> Речь шла про gpt разметку, а не про LUN-ы. Если ОС (/)
> загружается с других носителей, а zfs монтируется потом, то проще всего
> отдать все устройство под pool. Если надо монтировать root с zfs
> - то надо сначала загрузить то, что умеет собрать zfs pool
> и смонтировать его. Подробно разные методы для freebsd описаны тут:
> http://wiki.freebsd.org/RootOnZFS

FreeBSD умела (как я выяснял на собственном опыте) грузиться с RAW-ZFS без всякой разметки физических носителей.
Метод, используемый мной, был почерпнут из этого источника: http://bu7cher.blogspot.ru/2011/03/freebsd-zfs.html
Как сейчас обстоят дела с такой возможностью — не выяснял.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 07-Ноя-12 18:49 
> И там, и там. Если уточнять, то и opensolaris тоже имеет проблемы
> со свапом на zfs.  У коммерческой солярки свап на zfs
> обрабатыватеся специальным образом, и это не портировано.

А есть ссылки на багрепорт ?


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 07-Ноя-12 20:30 
> И там, и там. Если уточнять, то и opensolaris тоже имеет проблемы
> со свапом на zfs.  У коммерческой солярки свап на zfs
> обрабатыватеся специальным образом, и это не портировано.
> Если есть zfs и нужен swap - я делаю отдельные gpt разделы
> типа freebsd-swap и в gmirror их.

Я тоже ловил креши на исчерпании памяти и при этом без zfs. Там проблема может быть в другом. Я ловил под vmware так что ...


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 07-Ноя-12 20:56 
Вот подумал может стоит добавить zfs set recordsize=4K для свопа ?
Это как то связанно с vm.pmap.pg_ps_enabled которая появилась в 9.0-RELEASE.

"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено AlexAT , 09-Ноя-12 23:20 
Да уж, ARC такой ARC. Хуже реализацию кеша придумать было сложно.

"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 10-Ноя-12 00:01 
> Да уж, ARC такой ARC. Хуже реализацию кеша придумать было сложно.

# zfs set primarycache=metadata database/mysql
# zfs set secondarycache=none database/mysql

А в линуксе можно отключить кеширование для отдельного раздела ? Что бы не вытеснять нужные данные из кеша ?


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено AlexAT , 10-Ноя-12 11:44 
> А в линуксе можно отключить кеширование для отдельного раздела ? Что бы
> не вытеснять нужные данные из кеша ?

Вообще говоря, есть O_DIRECT - вполне стандартный механизм для доступа к файлам, который не вредит кэшу. Считанные или записанные под O_DIRECT данные сразу помещаются в хвост LRU, и имеют почти нулевой таймаут (и высший приоритет) сброса на диск/очистки.

Ну а поскольку в монстроидном ZFS имеется ARC, который не реализует никакие типовые механизмы работы с системой и системным кешем - естественно, был придуман очередной костыль... правда есть определенное ощущение, что отключение оного приведет к интересным фокусам с производительностью.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 10-Ноя-12 13:24 
> Вообще говоря, есть O_DIRECT - вполне стандартный механизм для доступа к файлам,
> который не вредит кэшу. Считанные или записанные под O_DIRECT данные сразу
> помещаются в хвост LRU, и имеют почти нулевой таймаут (и высший
> приоритет) сброса на диск/очистки.

Сейчас месье нам раскажет о том как он прикрутит O_DIRECT к тем приложениеям которые скомпилированы без O_DIRECT ;-)



"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено AlexAT , 11-Ноя-12 10:06 
> Сейчас месье нам раскажет о том как он прикрутит O_DIRECT к тем
> приложениеям которые скомпилированы без O_DIRECT ;-)

1) исходники запретили?
2) если приложение не использует O_DIRECT - это, как правило, сознательно, и отключать кэш в этом случае будет только полный идиот


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 11-Ноя-12 11:15 
>> Сейчас месье нам раскажет о том как он прикрутит O_DIRECT к тем
>> приложениеям которые скомпилированы без O_DIRECT ;-)
> 1) исходники запретили?
> 2) если приложение не использует O_DIRECT - это, как правило, сознательно, и
> отключать кэш в этом случае будет только полный идиот

1) Месье предлагает переписать половину пакетов ? Надеюсь месье это не в серьёз ?

2) Что касается второго вопроса MySQL+RAW+ZFS как раз тот случай когда O_DIRECT не имеет значения так как RAW. Месье ниасилил документацию ?

Итак ARC в ZFS имеет преимущество над реализацией кеша в BTRFS уже тем что позволяет отключать кеширование для отдельных разделов.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено AlexAT , 11-Ноя-12 12:30 
> 1) Месье предлагает переписать половину пакетов ? Надеюсь месье это не в
> серьёз ?

Не предлагаю - мне это не надо. Кому абсолютно надо - ССЗБ, и пусть переписывает. У меня как-то всё и без этого прекрасно работает, я же не юзаю странные поделия типа ZFS.

> Итак ARC в ZFS имеет преимущество над реализацией кеша в BTRFS уже
> тем что позволяет отключать кеширование для отдельных разделов.

Итак, ARC в ZFS имеет болезнь на всю голову в силу того, что ему нужно такое отключение.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 11-Ноя-12 12:38 
> Не предлагаю - мне это не надо. Кому абсолютно надо - ССЗБ,
> и пусть переписывает. У меня как-то всё и без этого прекрасно
> работает, я же не юзаю странные поделия типа ZFS.

Месье теоретик? Судя по отсутсвию тестов BTRFS+MySQL vs ZFS+MySQL в  первом случае все прелести двойного кеширования ...

> Итак, ARC в ZFS имеет болезнь на всю голову в силу того,
> что ему нужно такое отключение.

Судя по отсутсвию разгромных тестов BTRFS+MySQL vs ZFS+MySQL в  первом случае все прелести двойного кеширования которое никак не выключить ...



"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено AlexAT , 11-Ноя-12 14:48 
> Месье теоретик? Судя по отсутсвию тестов BTRFS+MySQL vs ZFS+MySQL в  первом
> случае все прелести двойного кеширования ...

hint: CoW. зачем приделывать автобусу квадратные колёса? под MySQL достаточно даже ext2
а двойное кеширование имеет место быть только в ZFS. BTRFS поддерживает O_DIRECT


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено AlexAT , 11-Ноя-12 21:13 
> Месье на ext2-3-4 уже лет 10 ? Или на одном месте работы
> с ext2-3-4 уже лет 10 ? :))

Если быть конкретнее - сменил 3 места работы, рост, однако. 3 года назад на текущем месте работы было ext3, сейчас - ext3/ext4. Нареканий нет.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 11-Ноя-12 21:17 
> Если быть конкретнее - сменил 3 места работы, рост, однако. 3 года
> назад на текущем месте работы было ext3, сейчас - ext3/ext4. Нареканий
> нет.

Судя по статьям на лоре не всем так везет.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено AlexAT , 12-Ноя-12 07:34 
> Судя по статьям на лоре не всем так везет.

Ну, судя по твоим "тестам" у тебя в жжшечке - тебе бы точно "не повезло"... с твоей квалификацией к боевым серверам нельзя подпускать ближе, чем на сотню метров.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 12-Ноя-12 13:19 
>> Судя по статьям на лоре не всем так везет.
> Ну, судя по твоим "тестам" у тебя в жжшечке - тебе бы
> точно "не повезло"... с твоей квалификацией к боевым серверам нельзя подпускать
> ближе, чем на сотню метров.

Вы о моем презрительном отношении к комерческим продуктам? Вы забыли в какой стране живете ? Цена не есть гарантия качества. Иногда выглядывайте в окно, увидите честную кокуренцию, в полный рост.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено AlexAT , 17-Ноя-12 23:19 
>>> 2) Что касается второго вопроса MySQL+RAW+ZFS как раз тот случай когда O_DIRECT не имеет значения так как RAW. Месье ниасилил документацию ?

Secret! Secret! MySQL поддерживает O_DIRECT в любом исполнении.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 18-Ноя-12 01:00 
>>>> 2) Что касается второго вопроса MySQL+RAW+ZFS как раз тот случай когда O_DIRECT не имеет значения так как RAW. Месье ниасилил документацию ?
> Secret! Secret! MySQL поддерживает O_DIRECT в любом исполнении.

Потрудитесь объяснить как вы понимаете связь между MySQL, RAW, ZFS и O_DIRECT ?


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено AlexAT , 18-Ноя-12 11:52 
> Потрудитесь объяснить как вы понимаете связь между MySQL, RAW, ZFS и O_DIRECT
> ?

1. В терминологии MySQL RAW - это сырой раздел, без файловой системы
2. MySQL поддерживает O_DIRECT
3. MySQL открывает RAW-раздел как fd, и O_DIRECT к нему вполне применим (накладывает достаточно серьезные ограничения на схему доступа, MySQL их учитывает)
4. ZFS из этой схемы выпадает, как неприменимое звено, поскольку O_DIRECT не поддерживает в принципе
как-то так


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 18-Ноя-12 13:04 
> 4. ZFS из этой схемы выпадает, как неприменимое звено, поскольку O_DIRECT не
> поддерживает в принципе

ZFS и так не кеширует raw.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено AlexAT , 18-Ноя-12 18:22 
>> 4. ZFS из этой схемы выпадает, как неприменимое звено, поскольку O_DIRECT не
>> поддерживает в принципе
> ZFS и так не кеширует raw.

Псевдотома ("raw") поверх ZFS также кешируются ARC.

Ну и да - не совсем понятно, а напуркуа собственно тут псевдотом, если у нас БД. Либо действительно RAW, либо файл, а псевдо-raw, который совсем не raw, зачем он?


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 19-Ноя-12 03:02 
>> 4. ZFS из этой схемы выпадает, как неприменимое звено, поскольку O_DIRECT не
>> поддерживает в принципе

Если innodb не raw:
/sbin/zfs set primarycache=metadata
/sbin/zfs set secondarycache=none

Если innodb raw:
/sbin/zfs set primarycache=none
/sbin/zfs set secondarycache=none


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено AlexAT , 19-Ноя-12 07:17 
> Если innodb не raw:
> /sbin/zfs set primarycache=metadata
> /sbin/zfs set secondarycache=none
> Если innodb raw:
> /sbin/zfs set primarycache=none
> /sbin/zfs set secondarycache=none

Костыль.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 19-Ноя-12 11:56 
>> Если innodb не raw:
>> /sbin/zfs set primarycache=metadata
>> /sbin/zfs set secondarycache=none
>> Если innodb raw:
>> /sbin/zfs set primarycache=none
>> /sbin/zfs set secondarycache=none
> Костыль.

Вам шашечки или ехать ?


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено AlexAT , 19-Ноя-12 12:13 
>> Костыль.
> Вам шашечки или ехать ?

Это в тему о нужности в данной схеме ZFS, скорее.

Лично мне? Грамотное решение, пригодное к поддержке.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 19-Ноя-12 13:13 
> Это в тему о нужности в данной схеме ZFS, скорее.
> Лично мне? Грамотное решение, пригодное к поддержке.

На локалхосте ? Под линуксом ? И не из коробки ?

Планурую сделать такой же скрипт для инсталяции убунты ...


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено Michael Shigorin , 19-Ноя-12 15:36 
>> Костыль.
> Вам шашечки или ехать ?

Вспоминается анекдот про мужика на островке под пальмой и не даёт покоя вопрос: зачем так сложно добиваться того, что делается гораздо проще?


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 19-Ноя-12 15:38 
>>> Костыль.
>> Вам шашечки или ехать ?
> Вспоминается анекдот про мужика на островке под пальмой и не даёт покоя
> вопрос: зачем так сложно добиваться того, что делается гораздо проще?

Ой :)) а можно подробнее, без вранья и рекламы. И без финального вывода - быть бедным  недопустимо.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено Michael Shigorin , 19-Ноя-12 16:12 
>>> Вам шашечки или ехать ?
>> Вспоминается анекдот про мужика на островке под пальмой и не даёт покоя
>> вопрос: зачем так сложно добиваться того, что делается гораздо проще?
> Ой :)) а можно подробнее, без вранья и рекламы.

Ну реклама ещё бывает, виноват, а с враньём полегче.

Анекдот известен во множестве вариаций, вот по памяти одна из них:

Лежит мужик на островке под пальмой.  Тут высаживаются туристы, начинают его фотографировать и донимать: мол, поехали с нами в Америку, это страна равных возможностей, ты там сможешь найти яблоко, помыть [....] стать богатым, купить себе остров, отдыхать и ничего не делать.  Мужик: "а я что, по-вашему, делаю?".

> И без финального вывода - быть бедным недопустимо.

Тут как...

Быть бедным вполне допустимо и бывает намного удобней, чем быть богатым -- смотря какие цели.  Да и бедность бывает по разным критериям.

Порой бывает удобней освоить один сложный универсальный инструмент и применять для различных задач, в т.ч. слишком простых.

Но это частный случай, рекомендовать такой обычно не стоит (например, я могу сделать домашнюю страничку на TYPO3, но советовать такого не буду).

Потому Вы можете выводы не делать, но я всё-таки предпочту делать и порой ими делиться.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 19-Ноя-12 16:16 
>[оверквотинг удален]
>> И без финального вывода - быть бедным недопустимо.
> Тут как...
> Быть бедным вполне допустимо и бывает намного удобней, чем быть богатым --
> смотря какие цели.  Да и бедность бывает по разным критериям.
> Порой бывает удобней освоить один сложный универсальный инструмент и применять для различных
> задач, в т.ч. слишком простых.
> Но это частный случай, рекомендовать такой обычно не стоит (например, я могу
> сделать домашнюю страничку на TYPO3, но советовать такого не буду).
> Потому Вы можете выводы не делать, но я всё-таки предпочту делать и
> порой ими делиться.

Я думал вы ответите FreeNAS а так ... много букв ниочем, можно вообще не читать ...


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диски c кластером 4k"
Отправлено nagual , 08-Ноя-12 18:33 
Так же следует добавить ahci_load="YES".

"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диски c кластером 4k"
Отправлено Fomalhaut , 13-Ноя-12 22:49 
Вот только для свопа на ZFS стОит сделать его волум блоком в 4кБ (размер страницы на i386/amd64).
$ zfs create -V 4gb -o org.freebsd:swap=on -o volblocksize=4K -o checksum=off systor/swap
Но в таком случае можно было вообще обойтись без таблицы разделов и "раскатать" ZFS по всему диску.

P.S. И правильно сделано: для свопа на ZFS не надо ничего писать в /etc/rc.conf - при портировании ZFS на Фряху решили сделать это лучше и не засирать fstab. И, дабы не нарушать совместимость zpool-ов с солярой, заюзали для этого user propert-ю.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 13-Ноя-12 23:07 
> Вот только для свопа на ZFS стОит сделать его волум блоком в
> 4кБ (размер страницы на i386/amd64).
> $ zfs create -V 4gb -o org.freebsd:swap=on -o volblocksize=4K -o checksum=off systor/swap
> Но в таком случае можно было вообще обойтись без таблицы разделов и
> "раскатать" ZFS по всему диску.
> P.S. И правильно сделано: для свопа на ZFS не надо ничего писать
> в /etc/rc.conf - при портировании ZFS на Фряху решили сделать это
> лучше и не засирать fstab. И, дабы не нарушать совместимость zpool-ов
> с солярой, заюзали для этого user propert-ю.

Что еще стоит добавить ?
/sbin/zfs set checksum=off $ZPOOL/swap
/sbin/zfs set primarycache=none $ZPOOL/swap
/sbin/zfs set secondarycache=none $ZPOOL/swap
/sbin/zfs set sync=disabled $ZPOOL/swap # отключить ZIL
/sbin/zfs set recordsize=4K $ZPOOL/swap


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено AlexAT , 13-Ноя-12 23:07 
Ну да. Что может быть лучше в *опу из-за CoW фрагментированного свопа?


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 13-Ноя-12 23:11 
> Ну да. Что может быть лучше в *опу из-за CoW фрагментированного свопа?

Своп создается с ключем -V тоесть raw ...


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено AlexAT , 13-Ноя-12 23:20 
> Своп создается с ключем -V тоесть raw ...

А нафига тогда, простите, ZFS?


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 13-Ноя-12 23:24 
>> Своп создается с ключем -V тоесть raw ...
> А нафига тогда, простите, ZFS?

Своп в файл поверх фс ? Я так даже в линуксе не делаю ...


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено AlexAT , 13-Ноя-12 23:24 
> Своп в файл поверх фс ? Я так даже в линуксе не делаю ...

А RAW-разделы, что, отменили?



"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 13-Ноя-12 23:42 
>> Своп в файл поверх фс ? Я так даже в линуксе не делаю ...
> А RAW-разделы, что, отменили?

Четырьмя поставми выше написано raw. У вас провалы в памяти или иллюминаторы в криокамере запотели ?


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено AlexAT , 13-Ноя-12 23:43 
> Четырьмя поставми выше написано raw. У вас провалы в памяти или иллюминаторы
> в криокамере запотели ?

Зачем RAW-разделу ЭТО?

>> /sbin/zfs set primarycache=none $ZPOOL/swap
>> /sbin/zfs set secondarycache=none $ZPOOL/swap
>> /sbin/zfs set sync=disabled $ZPOOL/swap # отключить ZIL
>> /sbin/zfs set recordsize=4K $ZPOOL/swap

?????

Или так и хочется из буханки сделать троллейбус?


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 13-Ноя-12 23:51 
>> Четырьмя поставми выше написано raw. У вас провалы в памяти или иллюминаторы
>> в криокамере запотели ?
> Зачем RAW-разделу ЭТО?
>>> /sbin/zfs set primarycache=none $ZPOOL/swap
>>> /sbin/zfs set secondarycache=none $ZPOOL/swap
>>> /sbin/zfs set sync=disabled $ZPOOL/swap # отключить ZIL
>>> /sbin/zfs set recordsize=4K $ZPOOL/swap
> ?????

Ой, перепутал с  $ZPOOL/innodb :)

> Или так и хочется из буханки сделать троллейбус?

ext4 обсуждать не будем :)) Невзлетит ... развалится ...



"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено AlexAT , 13-Ноя-12 23:54 
> Ой, перепутал

Ну... как обычно.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено Michael Shigorin , 16-Ноя-12 18:35 
>> Ой, перепутал
> Ну... как обычно.

А в заголовке статьи перепутаны термины "кластер" и "сектор", что тоже характеристично.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 16-Ноя-12 19:39 
>>> Ой, перепутал
>> Ну... как обычно.
> А в заголовке статьи перепутаны термины "кластер" и "сектор", что тоже характеристично.

Исправлено.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено Michael Shigorin , 16-Ноя-12 20:26 
>> А в заголовке статьи перепутаны термины "кластер" и "сектор", что тоже характеристично.
> Исправлено.

На https://www.opennet.ru/tips/2719_raid_freebsd_zfs.shtml покамест "кластер" -- может, закэшировалось.

Разницу-то понимаете, надеюсь? :)


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 16-Ноя-12 20:27 
>>> А в заголовке статьи перепутаны термины "кластер" и "сектор", что тоже характеристично.
>> Исправлено.
> На https://www.opennet.ru/tips/2719_raid_freebsd_zfs.shtml покамест "кластер" -- может,
> закэшировалось.

Без одобрения модератора изменения не публикуются.


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено AlexAT , 13-Ноя-12 23:55 
> с $ZPOOL/innodb :)

А зачем InnoDB блок в 4к, можно поинтересоваться?


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 14-Ноя-12 00:03 
>> с $ZPOOL/innodb :)
> А зачем InnoDB блок в 4к, можно поинтересоваться?

16к InnoDB
8K MyISAM


"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено Fomalhaut , 14-Ноя-12 00:00 
Про checksum=off как бы было. ;)

"Отключаем RAID1 на MB и ставим FreeBSD на zfs mirror на диск..."
Отправлено nagual , 14-Ноя-12 00:07 
> Про checksum=off как бы было. ;)

На вскидку так

/sbin/zfs set checksum=fletcher4 $ZPOOL
/sbin/zfs create -V $SWAPSIZE -o volblocksize=4K $ZPOOL/swap
/sbin/zfs set org.freebsd:swap=on $ZPOOL/swap
/sbin/zfs set checksum=off $ZPOOL/swap
/bin/sync

# Если база на raw разделе (InnoDB)
if [ ! $DBSIZE == "0" ]; then
    /sbin/zfs create -V $DBSIZE -o volblocksize=16K $ZPOOL/innodb # Если raw.
#    /sbin/zfs set recordsize=16K $ZPOOL/innodb # Если не raw.
#    /sbin/zfs set primarycache=metadata $ZPOOL/innodb # Если не raw.
#    /sbin/zfs set secondarycache=none $ZPOOL/innodb # Если не raw.
    /sbin/zfs set logbias=throughput $ZPOOL/innodb
#    /sbin/zfs set sync=disabled $ZPOOL/innodb # отключить ZIL # Если не raw.
fi

/sbin/zfs create -o mountpoint=$MNT/usr><------><------>-o compression=off -o exec=on -o setuid=on<---->$ZPOOL/usr
/sbin/zfs create -o mountpoint=$MNT/usr/home<--><------>-o compression=off -o exec=on -o setuid=off -o nodev $ZPOOL/usr/home
/sbin/zfs create -o mountpoint=$MNT/usr/local<-><------>-o compression=off -o exec=on -o setuid=on<---->$ZPOOL/usr/local
/sbin/zfs create -o mountpoint=$MNT/usr/obj<---><------>-o compression=lzjb -o exec=on -o setuid=on<--->$ZPOOL/usr/obj
/sbin/zfs create -o mountpoint=$MNT/usr/ports<-><------>-o compression=gzip -o exec=on -o setuid=off<-->$ZPOOL/usr/ports
/sbin/zfs create -o mountpoint=$MNT/usr/ports/distfiles>-o compression=off -o exec=off -o setuid=off<-->$ZPOOL/usr/ports/distfiles
/sbin/zfs create -o mountpoint=$MNT/usr/ports/packages<>-o compression=off -o exec=off -o setuid=off<-->$ZPOOL/usr/ports/packages
/sbin/zfs create -o mountpoint=$MNT/usr/src<---><------>-o compression=gzip -o exec=off -o setuid=off<->$ZPOOL/usr/src
/sbin/zfs create -o mountpoint=$MNT/var><------><------>-o compression=off -o exec=off -o setuid=off<-->$ZPOOL/var
/sbin/zfs create -o mountpoint=$MNT/var/audit<-><------>-o compression=lzjb -o exec=off -o setuid=off<->$ZPOOL/var/audit
/sbin/zfs create -o mountpoint=$MNT/var/crash<-><------>-o compression=gzip -o exec=off -o setuid=off<->$ZPOOL/var/crash
/sbin/zfs create -o mountpoint=$MNT/var/db<----><------>-o compression=off  -o exec=off -o setuid=off<->$ZPOOL/var/db
/sbin/zfs create -o mountpoint=$MNT/var/db/pkg<><------>-o compression=lzjb -o exec=off -o setuid=off<->$ZPOOL/var/db/pkg
/sbin/zfs create -o mountpoint=$MNT/var/db/portsnap<--->-o compression=off -o exec=off -o setuid=off<-->$ZPOOL/var/db/portsnap
/sbin/zfs create -o mountpoint=$MNT/var/empty<-><------>-o compression=off -o exec=off -o setuid=off<-->$ZPOOL/var/empty
/sbin/zfs create -o mountpoint=$MNT/var/log<---><------>-o compression=gzip -o exec=off -o setuid=off<->$ZPOOL/var/log
/sbin/zfs create -o mountpoint=$MNT/var/mail<--><------>-o compression=gzip -o exec=off -o setuid=off<->$ZPOOL/var/mail
/sbin/zfs create -o mountpoint=$MNT/var/run<---><------>-o compression=off -o exec=off -o setuid=off<-->$ZPOOL/var/run
/sbin/zfs create -o mountpoint=$MNT/var/tmp<---><------>-o compression=lzjb -o exec=off -o setuid=off<->$ZPOOL/var/tmp
/sbin/zfs create -o mountpoint=$MNT/tmp><------><------>-o compression=lzjb -o exec=off -o setuid=off<->$ZPOOL/tmp

# Если база как обычно
/sbin/zfs create -o mountpoint=$MNT/var/db/mysql<------>-o compression=off -o exec=off -o setuid=off<-->$ZPOOL/var/db/mysql
/sbin/zfs set recordsize=8K $ZPOOL/var/db/mysql
/sbin/zfs set primarycache=metadata $ZPOOL/var/db/mysql
/sbin/zfs set secondarycache=none $ZPOOL/var/db/mysql
/sbin/zfs set logbias=throughput $ZPOOL/var/db/mysql
/sbin/zfs set atime=off $ZPOOL/var/db/mysql

Сейчас думаю о полезности отключения
/sbin/zfs set primarycache
/sbin/zfs set secondarycache
/sbin/zfs set sync=disabled