Страница 1 из 1

zfs приготовление.

Добавлено: 2013-08-31 12:22:22
InventoR
Возник интересный вопрос по правильному приготовлению zfs.
Имеется сервер в котором BSD установлена на zfs pool.

Код: Выделить всё

# zpool status
  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
# 

Все бы было хорошо, но disk0, disk1 это диски по 320ГБ.

Теперь появилось еще два диска по 250ГБ, то есть меньшего обьема. Их надо подключить в определенный каталог для разгрузки действующего пула.
Попробовал создать второй пул, и просто создать zfs create с точкой монтирования в первом пуле и получил:

Код: Выделить всё

 parent does not exist
Тут у меня закрались сомнения по поводу правильности моих действий.

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

Re: zfs приготовление.

Добавлено: 2013-09-02 8:07:53
Alvares
Сделайте из них зеркало и добавьте в пул.

Код: Выделить всё

zpool add zroot mirror /dev/gpt/disk2 /dev/gpt/disk3
пишу по памяти, проверьте команду man`ом.

Re: zfs приготовление.

Добавлено: 2013-09-02 11:35:47
InventoR
Это разноразмерные диски, какие пул....

Re: zfs приготовление.

Добавлено: 2013-09-02 12:40:21
skeletor
Создайте из них новый пул. Может вы создаёте zfs, parent'a которое не существует?

Re: zfs приготовление.

Добавлено: 2013-09-03 7:53:37
Alvares
InventoR писал(а):Это разноразмерные диски, какие пул....
А что вас смущает? Вы объединяете в зеркало 2 ОДИНАКОВЫХ диска по 250Г, а потом весь массив добавляете в пул.
Будет что-то вроде такого

Код: Выделить всё

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
     mirror-1     ONLINE       0     0     0
       gpt/disk2  ONLINE       0     0     0
       gpt/disk3  ONLINE       0     0     0

Re: zfs приготовление.

Добавлено: 2013-09-03 11:50:36
skeletor
С разными дисками такое не прокатит. Проверял: ошибок не выдало, в history изменения не записано и пул не изменился.

Re: zfs приготовление.

Добавлено: 2013-09-03 14:36:01
Alvares
http://forum.lissyara.su/viewtopic.php? ... 46#p339546
Вот конфа с разными дисками. 2 по 250, 2 по 80. Какие проблемы?

Re: zfs приготовление.

Добавлено: 2013-09-03 16:34:12
skeletor
Из того, что я увидел, там нету информации о пуле с 4 дисками по 2 в зеркале и особенно с указанием размера дисков.
Я не поленился и проделал эту операцию, как на FreeBSD (9.1), так и на Solaris (11.1) - результат одинаковый.

Код: Выделить всё

[root@backup]/usr/home/skeletor# zpool create testpool mirror /home/skeletor/file3 /home/skeletor/file4
[root@backup]/usr/home/skeletor# zpool status testpool
  pool: testpool
 state: ONLINE
  scan: none requested
config:

        NAME                      STATE     READ WRITE CKSUM
        testpool                  ONLINE       0     0     0
          mirror-0                ONLINE       0     0     0
            /home/skeletor/file3  ONLINE       0     0     0
            /home/skeletor/file4  ONLINE       0     0     0

errors: No known data errors
[root@backup]/usr/home/skeletor# zpool add -n testpool mirror /home/skeletor/file1 /home/skeletor/file2
would update 'testpool' to the following configuration:
        testpool
          mirror
            /home/skeletor/file3
            /home/skeletor/file4
          mirror
            /home/skeletor/file1
            /home/skeletor/file2
[root@backup]/usr/home/skeletor# zpool status testpool
  pool: testpool
 state: ONLINE
  scan: none requested
config:

        NAME                      STATE     READ WRITE CKSUM
        testpool                  ONLINE       0     0     0
          mirror-0                ONLINE       0     0     0
            /home/skeletor/file3  ONLINE       0     0     0
            /home/skeletor/file4  ONLINE       0     0     0

errors: No known data errors
[root@backup]/usr/home/skeletor# ls -lah file*
-rw-r--r--  1 root  skeletor   100M Sep  3 16:30 file1
-rw-r--r--  1 root  skeletor   100M Sep  3 16:30 file2
-rw-r--r--  1 root  skeletor    80M Sep  3 16:30 file3
-rw-r--r--  1 root  skeletor    80M Sep  3 16:30 file4

Re: zfs приготовление.

Добавлено: 2013-09-04 9:01:00
Alvares
ключ -n не смущает?

Код: Выделить всё

bsd9# uname -a
FreeBSD bsd9.simple.org 9.1-STABLE FreeBSD 9.1-STABLE #1: Fri Feb  8 16:58:25 MSK 2013     root@:/usr/obj/usr/src/sys/GENERIC  i386

bsd9# ls -la /test
total 393352
drwxr-xr-x   2 root  wheel        512 Sep  4 09:53 .
drwxr-xr-x  22 root  wheel       1024 Sep  4 09:54 ..
-rw-r--r--   1 root  wheel  134217728 Sep  4 09:54 file1
-rw-r--r--   1 root  wheel  134217728 Sep  4 09:54 file2
-rw-r--r--   1 root  wheel   67108864 Sep  4 09:54 file3
-rw-r--r--   1 root  wheel   67108864 Sep  4 09:54 file4
bsd9# zpool status
  pool: testpool
 state: ONLINE
  scan: none requested
config:

        NAME             STATE     READ WRITE CKSUM
        testpool         ONLINE       0     0     0
          mirror-0       ONLINE       0     0     0
            /test/file1  ONLINE       0     0     0
            /test/file2  ONLINE       0     0     0
          mirror-1       ONLINE       0     0     0
            /test/file3  ONLINE       0     0     0
            /test/file4  ONLINE       0     0     0

errors: No known data errors
bsd9# zpool history
History for 'testpool':
2013-09-04.09:54:21 zpool create testpool mirror /test/file1 /test/file2
2013-09-04.09:54:51 zpool add testpool mirror /test/file3 /test/file4

bsd9# zpool list
NAME       SIZE  ALLOC   FREE    CAP  DEDUP  HEALTH  ALTROOT
testpool   182M   121K   182M     0%  1.00x  ONLINE  -
не вижу проблем совершенно.

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

Re: zfs приготовление.

Добавлено: 2013-09-04 21:41:12
_skeletor
Действительно, вы правы.

Re: zfs приготовление.

Добавлено: 2013-09-05 22:53:14
InventoR

Код: Выделить всё

#

  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
# 

Код: Выделить всё

# zpool add zroot mirror /dev/gpt/disk4 /dev/gpt/disk5
cannot add to 'zroot': root pool can not have multiple vdevs or separate logs
# 

zfs в качестве корня, не дает.

Re: zfs приготовление.

Добавлено: 2013-09-06 7:53:20
Alvares
загрузитесь с live-CD и сделайте вот так

Код: Выделить всё

#zpool set bootfs="" zroot
#zpool add zroot mirror /dev/gpt/disk4 /dev/gpt/disk5
#zpool set bootfs="zroot" zroot

Re: zfs приготовление.

Добавлено: 2013-09-21 13:33:39
InventoR
Подскажите, а что у zfs с roundrobin при read с дисков в зеркале?
Что-то не могу найти адекватной инфы по этому поводу.