ฉันจะเพิ่มหนึ่งดิสก์ลงใน 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 ที่มีอยู่คุณต้องเป่ามันและสร้างมันใหม่ด้วยไดรฟ์ใหม่ ดูคำตอบอื่น ๆ สำหรับรายละเอียดที่ดีกว่า

หมายเหตุด้านข้าง: มีคนทำงานจริง ๆ ว่าเป็นไปได้ในทางเทคนิคที่จะเพิ่มไดรฟ์ลงใน Raidz แต่ยังไม่ได้ใช้งานฟังก์ชัน เช่นเดียวกับการลบดิสก์


5
เอ่อโอ้. หากเป็นกรณีที่ฉันได้ตัดสินใจที่น่ากลัวที่ไหนสักแห่ง! = o
Josh

2
-1 แน่นอนว่าสามารถขยายสวนสัตว์ได้ คุณคิดว่าzpool addคำสั่งทำอะไร ข้อ จำกัด ที่ Josh กำลังเรียกใช้คือคุณไม่สามารถเปลี่ยนองค์ประกอบของ Raidz vdev ("raidz1" ในตัวอย่างของเขา) คุณสามารถเพิ่มอุปกรณ์ใหม่ลงในพูลได้เอง นี่เป็นหนึ่งในเหตุผลที่ทำให้มิเรอร์ vdevs เป็นที่ต้องการ: serverfault.com/questions/63809/zfs-mirror-vs-raid-z
Wim Coenen

8
@ ว่าฉันรู้ดีว่าคุณสามารถเพิ่ม vdevs เพิ่มเติมในสระว่ายน้ำ มันเป็นตัวพิมพ์เล็กและไม่มีเหตุผลที่จะกระโดดข้ามตัวฉันแบบนั้น
Chris S

เยี่ยมฉันไม่ทราบว่ามีคนค้นพบวิธีการแก้ไขสถาปัตยกรรมเพื่ออนุญาตให้เพิ่มไดรฟ์! คุณมีลิงค์ที่ฉันสามารถอ่านเพิ่มเติมได้ไหม?
lindhe

31

ดูกระทู้นี้จากหนึ่งในรายการ FreeBSD: http://lists.freebsd.org/pipermail/freebsd-fs/2009-June/006327.html

เพื่ออ้างอิง Dan Naumov

หากต้องการย้ำอีกครั้งคุณไม่สามารถเพิ่มดิสก์ไดรฟ์เดี่ยวลงใน raidz1 หรือ raidz2 พูลได้ นี่เป็นข้อ จำกัด ที่ทราบ (คุณสามารถตรวจสอบกับเอกสาร SUN ZFS) หากคุณมี Raidz อยู่แล้วและคุณต้องเพิ่มความสามารถในการเก็บข้อมูลของพูลนั้นโดยเฉพาะคุณมี 3 ตัวเลือก:

1) เพิ่ม Raidz ของการกำหนดค่าเดียวกันลงในพูล (คิดว่า 3 disk raidz + 3 disk raidz หรือ 5 + 5 เป็นต้น)

2) แทนที่แต่ละดิสก์ (และทุก ๆ ) ใน Raidz pool ของคุณทีละหนึ่งปล่อยให้มัน resilver หลังจากแทรกแต่ละดิสก์อัพเกรด

3) สำรองข้อมูลของคุณทำลายพูลของคุณและสร้างพูล Raidz ใหม่ที่มีดิสก์จำนวนมากขึ้น


3
+1: ขอบคุณ @brent! คำตอบของคุณมีรายละเอียดมากกว่า Chris 'แต่เขาให้ข้อมูลรายละเอียดในการแชทกับฉันดังนั้นฉันจึงยอมรับคำตอบของเขา ฉันขอขอบคุณข้อมูล!
Josh

1
เหตุใดจึงต้องเพิ่ม RAIDZ ของการกำหนดค่าเดียวกันและไม่สามารถเพิ่ม RAIDZ ที่มี 8 ดิสก์ให้เป็นหนึ่งเดียวกับ 3 ได้ ข้อมูลถูกตัดข้ามใน VDEV หรือที่เรียกว่า RAIDZ ทั้งหมดหรือไม่
Thorsten Schöning

@Thorsten Schöningคำตอบคือประสิทธิภาพ ZFS ทำงานได้ดีที่สุดกับ VDEVs ที่มีขนาดเท่ากัน: serverfault.com/a/564436/333397
Thorsten Schöning
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.