ความแตกต่างระหว่างการสร้างอาร์เรย์ mdadm โดยใช้พาร์ทิชันหรือดิสก์ทั้งหมดโดยตรงคืออะไร


26

มีใครช่วยอธิบายให้ฉันหน่อยได้ไหมความแตกต่างระหว่างการสร้างmdadmอาร์เรย์โดยใช้พาร์ทิชันหรือดิสก์ทั้งหมดโดยตรงคืออะไร สมมติว่าฉันตั้งใจจะใช้ไดรฟ์ทั้งหมด โปรดทราบว่าพวกเขาอยู่กับ GPT

ลองนึกภาพ RAID6 ที่สร้างขึ้นในสองวิธี:

mdadm --create /dev/md0 --level=6 --raid-devices=4 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1

หรือ:

mdadm --create /dev/md0 --level=6 --raid-devices=4 /dev/sda /dev/sdb /dev/sdc /dev/sdd

มีความแตกต่างหรือไม่?

แก้ไข 1:ฉันหมายถึงในตัวอย่างความน่าเชื่อถือหรือความสามารถในการจัดการหรือการกู้คืนในอาร์เรย์ดังกล่าว ฯลฯ

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

EDIT3:เรียงลำดับของข้อจำกัดความรับผิดชอบ: จนถึงตอนนี้ฉันมักจะแบ่งพาร์ติชันไดรฟ์


2
ฉันอยากรู้เรื่องนี้มาตลอด แต่ก็ไม่เคยถามใครเลย ข้อแตกต่างอย่างหนึ่งที่ฉันเห็นคือการใช้ดิสก์ที่แบ่งพาร์ติชัน (sda1 และอื่น ๆ ) คุณจะได้พื้นที่ดิสก์ที่น้อยกว่าเล็กน้อย (บาง KB) เนื่องจาก GPT จะสำรองพื้นที่สำหรับข้อมูลพาร์ติชัน
GMaster

คำตอบ:


25

ความแตกต่างที่สำคัญที่สุดคือช่วยให้คุณเพิ่มความยืดหยุ่นในการเปลี่ยนดิสก์ มันมีรายละเอียดที่ดีกว่าด้านล่างพร้อมกับคำแนะนำอื่น ๆ

หนึ่งควรพิจารณาใช้พาร์ติชันแทนดิสก์ทั้งหมด สิ่งนี้ควรอยู่ภายใต้คำแนะนำทั่วไปสำหรับการตั้งค่าอาร์เรย์และอาจทำให้คุณปวดหัวในอนาคตเมื่อมีความจำเป็นต้องเปลี่ยนดิสก์เพิ่มเติม

ข้อโต้แย้งที่สำคัญที่สุดคือ:

ดิสก์จากผู้ผลิตที่แตกต่างกัน (หรือแม้แต่รุ่นที่แตกต่างกันของความจุ "เดียวกัน" จากผู้ผลิตรายเดียวกัน) ไม่จำเป็นต้องมีขนาดดิสก์ที่แน่นอนและแม้แต่ความแตกต่างของขนาดที่เล็กที่สุดก็จะป้องกันไม่ให้คุณเปลี่ยนดิสก์ที่ล้มเหลวด้วย ถ้าวินาทีนั้นเล็กกว่าอันแรก การแบ่งพาร์ติชันทำให้คุณสามารถแก้ไขปัญหานี้ได้

หมายเหตุด้านข้างเกี่ยวกับสาเหตุที่ต้องใช้ดิสก์ของผู้ผลิตรายอื่น: ดิสก์จะล้มเหลวนี่ไม่ใช่เรื่องของ "ถ้า" แต่เป็น "เมื่อ" ดิสก์ของผู้ผลิตรายเดียวกันและรุ่นเดียวกันมีคุณสมบัติที่คล้ายคลึงกันดังนั้นโอกาสสูงที่จะเกิดความล้มเหลวร่วมกันภายใต้เงื่อนไขและเวลาในการใช้งานเดียวกัน ข้อเสนอแนะคือการใช้ดิสก์จากผู้ผลิตที่แตกต่างกันรุ่นต่าง ๆ และพิเศษที่ไม่ได้อยู่ในชุดเดียวกัน (พิจารณาซื้อจากร้านค้าที่แตกต่างกันถ้าคุณกำลังซื้อดิสก์ของผู้ผลิตและรุ่นเดียวกัน) นี่ไม่ใช่เรื่องแปลกที่ดิสก์ที่สองล้มเหลวเกิดขึ้นในระหว่างการรีโหลดหลังจากการเปลี่ยนดิสก์เมื่อใช้ดิสก์ของแบตช์เดียวกัน แน่นอนคุณไม่ต้องการให้เกิดขึ้นกับคุณ

ดังนั้นคำแนะนำ:

1) แบ่งพาร์ติชันดิสก์ที่จะใช้กับความจุขนาดเล็กกว่าพื้นที่ดิสก์โดยรวมเล็กน้อย (เช่นฉันมีอาร์เรย์ RAID5 ของดิสก์ 2TB และฉันตั้งใจแบ่งพาร์ติชันเหล่านั้นโดยสูญเปล่าประมาณ 100MB ในแต่ละ) จากนั้นใช้ / dev / sd? 1 ของแต่ละอันเพื่อเขียนอาเรย์ - นี่จะเพิ่มระยะขอบความปลอดภัยในกรณีที่ดิสก์ที่เปลี่ยนใหม่มีพื้นที่น้อยกว่าอันเดิมที่ใช้ประกอบอาร์เรย์เมื่อมันถูกสร้างขึ้น

2) ใช้ดิสก์จากผู้ผลิตหลายราย

3) ใช้ดิสก์รุ่นที่แตกต่างกันหากผู้ผลิตที่แตกต่างกันไม่ใช่ตัวเลือกสำหรับคุณ;

4) ใช้ดิสก์จากแบตช์ที่ต่างกัน

5) แทนที่ดิสก์ล่วงหน้าก่อนที่จะล้มเหลวและไม่ใช่ทั้งหมดในเวลาเดียวกัน นี่อาจเป็นความหวาดระแวงเล็กน้อยและขึ้นอยู่กับการวิพากษ์วิจารณ์ของข้อมูลที่คุณมี ฉันเคยมีดิสก์ที่อายุ 6 เดือนแตกต่างกัน

6) ทำการสำรองข้อมูลปกติ (เสมอไม่ว่าคุณจะใช้อาร์เรย์หรือไม่ก็ตาม) การจู่โจมไม่ได้มีจุดประสงค์เดียวกันในการสำรองข้อมูล อาร์เรย์ช่วยให้คุณมั่นใจในความพร้อมใช้งานสูงการสำรองข้อมูลช่วยให้คุณกู้คืนไฟล์ที่สูญหาย (รวมถึงไฟล์ที่ถูกลบโดยไม่ตั้งใจหรือเสียหายจากไวรัสตัวอย่างของสิ่งที่ใช้อาร์เรย์จะไม่ป้องกันคุณ)

OBS: ยกเว้นเหตุผลที่ไม่สามารถเพิกเฉยได้ทั้งหมดข้างต้นมีความแตกต่างทางด้านเทคนิคระหว่างการใช้ / dev / sd มากน้อยเพียงใด? vs / dev / sd? #

โชคดี


ส่วนใหญ่ไม่เกี่ยวข้อง ...
user1133275

แต่ฉันเดาว่าคำเตือน @Kalavan หมายถึงการใช้หลายพาร์ติชั่นในดิสก์เดียวกันกับส่วนประกอบของอาเรย์ แน่นอนว่ามันจะไม่สมเหตุสมผลนักเพราะมันขจัดความซ้ำซ้อน อย่างไรก็ตามเรารู้ว่านี่ไม่ใช่เจตนาของคำถามของคุณคำเตือนของเขาก็สมเหตุสมผลแล้ว
Marcelo

หากการจัดการพาร์ติชันด้วยตนเองดูเหมือนจะยุ่งยากคุณควรใช้sfdisk -d src | sfdisk tgtหรือsgdisk --backup && sgdisk --load-backup
andyn

7

อีกข้อโต้แย้งสำคัญคือเมนบอร์ดบางตัวอาจลบ RAID superblocks ของคุณหากคุณใช้อุปกรณ์ดิสก์ทั้งหมดและไม่ระมัดระวังในการเช็ดเมื่อเพิ่มดิสก์ลงในอาร์เรย์ RAID ซึ่งครั้งหนึ่งเคยเป็นอุปกรณ์ GPT

ฉันได้เรียนรู้วิธีนี้อย่างหนักเมื่อ UEFI ของเมนบอร์ด ASRock ของฉันแสดง RAID ของฉันไม่ได้:

เพื่อป้องกันตัวเองจากสิ่งนี้ให้เรียกใช้sgdisk --zapบนดิสก์ที่จัดรูปแบบ GPT ซึ่งคุณต้องการใช้สำหรับ RAID ทั้งอุปกรณ์

wipefs -a อาจทำงานเพื่อล้างข้อมูลการแบ่งพาร์ติชันที่เหลือทุกชนิด (ไม่เพียง แต่ GPT) ก่อนที่จะเพิ่มอุปกรณ์ลงในดิสก์


ที่กล่าวว่าเพียงแค่ใช้พาร์ทิชันดูเหมือนว่าวิธีที่ดีที่สุดที่จะทำให้มีโอกาสน้อยที่จะเกิดขึ้น

ฉันไม่เคยรู้เลยว่าข้อโต้แย้งที่แท้จริงคืออะไรสำหรับวิธีปฏิบัติที่ดีที่สุดนี้ (เกินคำตอบของ @ Marcelo อธิบายว่าสามารถจัดการกับดิสก์ที่มีขนาดต่างกันเล็กน้อย) ตอนนี้ฉันรู้.

อย่างไรก็ตามถ้าสิ่งนี้เกิดขึ้นกับคุณข้อมูลของคุณจะไม่สูญหาย คุณสามารถทำได้เพียงแค่sgdisk --zapอุปกรณ์จากนั้นสร้าง RAID ขึ้นใหม่ด้วยเช่นmdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdc /dev/sdd(mdadm จะบอกคุณว่ามันตรวจพบข้อมูลที่ผ่านมาแล้วและถามคุณว่าคุณต้องการใช้ข้อมูลนั้นต่อไปหรือไม่) ฉันลอง mutliple ครั้งนี้และใช้งานได้ แต่ฉันก็ยังแนะนำให้ทำการสำรองข้อมูลก่อนที่คุณจะทำ


2

มีคู่ของโพสต์ที่อ้างถึงปัญหาเกี่ยวกับการใช้อุปกรณ์ทั้งในฐานะสมาชิกคน RAID แทนของพาร์ทิชันเป็นหนึ่งที่นี่ ฉันสามารถยืนยันได้ว่าเป็นกรณี

ดังนั้นถ้าคุณสร้าง RAID ใช้อุปกรณ์ทั้งหมด (พูด/dev/sda, /dev/sdb... แทนบน/dev/sda1, /dev/sdb1, ... ) อุปกรณ์ RAID mdadm.confไม่ได้รวมกันอีกครั้งหลังจากรีบูตแม้ว่าคุณจะมีการกำหนดค่าบันทึกไว้ภายใต้ นอกจากนี้ยังมีความเป็นไปได้ในการเขียนทับเฟิร์มแวร์ของเมนบอร์ดหรือลบซุปเปอร์บล็อก RAID ในการตั้งค่าของฉันการเรียกใช้mdadm --assemble --scan --verboseไม่ได้รับการคืนค่าการตั้งค่า RAID ของฉันและดูเหมือนว่าในกรณีของการปิดกั้น RAID superblock ไม่พร้อมใช้งาน


ฉันทดสอบการตั้งค่า RAID1 โดยใช้ไดรฟ์ 2x10GB ภายใน VirtualBox RAID ถูกสร้างขึ้นบนอุปกรณ์ทั้งหมดและประกอบกันได้ดีหลังจากรีบูต ปัญหานี้สามารถใช้ได้กับอุปกรณ์ทางกายภาพเท่านั้น
Lungten

0

สำหรับการช่วยตัวเองจากอาการปวดหัวในอนาคตให้ใช้พาร์ติชั่น ไดรฟ์ทั้งหมดล้มเหลวไม่ใช่คำถาม "ถ้า" แต่ "เมื่อ" หากคุณกำลังใช้ไดรฟ์ทั้งหมดจากนั้นหลังจากความล้มเหลวของไดรฟ์คุณจะต้องแทนที่ด้วยรุ่นที่มีขนาดเท่ากันทั้งหมด แม้แต่ใหญ่กว่าไม่กี่ MB เนื่องจากผู้ผลิตที่แตกต่างกันหรือการเปลี่ยนแปลงกระบวนการอะไรก็ตามจะทำให้การเปลี่ยนไดรฟ์ล้มเหลว

การใช้พาร์ติชันเมื่อหนึ่งในไดรฟ์ 2TB ปัจจุบันของคุณล้มเหลวคุณจะได้รับการเปลี่ยน 4TB (หรืออะไรก็ตามที่จำเป็นต้องมีขนาดใหญ่กว่า) จากนั้นสร้างขนาดพาร์ติชัน 2TB เดียวกัน ใช่คุณอาจเสียพื้นที่ในไดรฟ์ขนาดใหญ่ใหม่นั้น การใช้ส่วนที่เหลือของไดรฟ์นั้นเป็นพาร์ติชั่นแบบ non-raid อาจเป็นไปได้ หลังจากความล้มเหลวและการเปลี่ยนไดรฟ์หลายครั้งในที่สุดคุณจะแทนที่ไดรฟ์ 2TB ดั้งเดิมทั้งหมดของคุณและตอนนี้คุณสามารถขยายอาร์เรย์ RAID ของคุณเพื่อใช้ขนาดพาร์ติชันที่ใหญ่ขึ้น

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.