Як я можу додати один диск до наявного raidz zpool?


21

У мене є сервер OpenSolaris з zpool, що backupzскладається з чотирьох дисків SCSI:

-bash-3.2# zpool status backupz
  pool: backupz
 state: ONLINE
 scrub: none requested
config:

        NAME        STATE     READ WRITE CKSUM
        backupz     ONLINE       0     0     0
          raidz1    ONLINE       0     0     0
            c7t0d0  ONLINE       0     0     0
            c7t1d0  ONLINE       0     0     0
            c7t2d0  ONLINE       0     0     0
            c7t3d0  ONLINE       0     0     0

errors: No known data errors

Я хочу додати п'ятий диск ..., але zpool add backupz raidz c7t4d0не працює ...

-bash-3.2# zpool add backupz raidz c7t4d0
invalid vdev specification: raidz requires at least 2 devices

Чи не можу я мати конфігурацію raidz з 5 пристроями? Чи потрібно додати два пристрої одночасно? чи я взагалі роблю щось неправильне?

Відповіді:


14

Ви не можете розширити наявний raidz vdev, вам доведеться підірвати його та створити його знову за допомогою нового накопичувача. Щоб отримати детальнішу інформацію, див. Іншу відповідь.

Побічна примітка: Хтось насправді розробив, що технічно можливо додати диски в рейд, але функціональність не була реалізована. Те саме стосується видалення диска.


5
Ой-ой. Якщо це так, я десь прийняв жахливе рішення! = o
Джош

2
-1 Звичайно, zpool можна розширити. Як ви думаєте, що zpool addробить команда? Обмеження, з яким стикається Джош, полягає в тому, що ви не можете змінити склад raidz vdev ("raidz1" у його прикладі). Ви можете додати нові пристрої до самого пулу просто чудово. Це одна з причин, чому віддають перевагу дзеркальні vdevs: serverfault.com/questions/63809/zfs-mirror-vs-raid-z
Вім

8
@Wim, я добре знаю, що ви можете додати додаткові vdevs до пулу. Це була незначна помилка, і немає причин так стрибати через мене.
Кріс S

Класно, я не знав, що хтось знайшов спосіб обійти архітектуру, щоб додати диски! Чи є у вас посилання, де я можу прочитати на ньому більше?
lindhe

31

Перегляньте цю тему з одного зі списків FreeBSD: http://lists.freebsd.org/pipermail/freebsd-fs/2009-June/006327.html

Цитувати Дана Наумова,

Щоб повторити, ви не можете просто додати один диск в пул raidz1 або raidz2. Це відоме обмеження (ви можете перевірити документи SUN ZFS). Якщо у вас вже є рейд, і ви ОБОВ'ЯЗКОВО збільшити можливості зберігання цього конкретного пулу, у вас є три варіанти:

1) Додайте до пулу raidz тієї ж конфігурації (подумайте, наприклад, 3 диска raidz + 3 диска raidz або 5 + 5, наприклад)

2) Замініть кожен (і кожен) диск у вашому raidz пулі по одному, даючи йому повторне перебування після вставлення кожного оновленого диска

3) Створіть резервні копії даних, знищіть пул і створіть новий пул raidz з більшою кількістю дисків.


3
+1: Дякую @brent! Ваша відповідь була більш детальною, ніж Кріс, проте він надав мені детальну інформацію в чаті, тому я прийняв його відповідь. Ціную інформацію!
Джош

1
Чому потрібно додати RAIDZ тієї ж конфігурації, а не можна, наприклад, додати RAIDZ з 8 дисків до одного з 3? Чи не є смугасті дані для всіх VDEV, які називаються RAIDZ?
Thorsten Schöning

@Thorsten Schöning Відповідь - ефективність, ZFS найкраще працює з VDEV однакового розміру: serverfault.com/a/564436/333397
Thorsten
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.