ค้นหาเว็บไซต์

การตั้งค่า RAID 10 หรือ 1+0 (ซ้อนกัน) ใน Linux - ตอนที่ 6


RAID 10 เป็นการผสมผสานระหว่าง RAID 0 และ RAID 1 เพื่อสร้าง RAID 10 ในการตั้งค่า Raid 10 เราต้องมีดิสก์อย่างน้อย 4 ตัว ในบทความก่อนหน้านี้ เราได้เห็นวิธีตั้งค่า RAID 0 และ RAID 1 ด้วยจำนวนดิสก์ขั้นต่ำ 2 ตัว

ที่นี่เราจะใช้ทั้ง RAID 0 และ RAID 1 เพื่อทำการตั้งค่า Raid 10 โดยมีไดรฟ์อย่างน้อย 4 ตัว สมมติว่าเรามีข้อมูลบางส่วนที่บันทึกไว้ในโลจิคัลวอลุ่ม ซึ่งสร้างด้วย RAID 10 ตัวอย่างเช่น หากเรากำลังบันทึกข้อมูล “apple” ข้อมูลนี้จะถูกบันทึกไว้ในดิสก์ทั้ง 4 ตัวโดย วิธีการต่อไปนี้

การใช้ RAID 0 จะบันทึกเป็น “A” ในดิสก์แรกและ “p” ในดิสก์ที่สอง จากนั้นอีกครั้ง “p ” ในดิสก์แผ่นแรกและ “l” ในดิสก์ที่สอง จากนั้น “e” ในดิสก์แผ่นแรก เช่นนี้จะเป็นการดำเนินการตามกระบวนการ Round robin ต่อไปเพื่อบันทึกข้อมูล จากนี้เราจะรู้ว่า RAID 0 จะเขียนข้อมูลครึ่งหนึ่งลงดิสก์แผ่นแรก และอีกครึ่งหนึ่งของข้อมูลลงดิสก์ที่สอง

ในวิธี RAID 1 ข้อมูลเดียวกันจะถูกเขียนไปยังดิสก์อีก 2 แผ่นดังนี้ “A” จะเขียนลงดิสก์ทั้งแผ่นแรกและแผ่นที่สอง “P” จะเขียนลงดิสก์ทั้งสอง ส่วน “P” อื่นๆ จะเขียนถึง ทั้งสองดิสก์ ดังนั้นการใช้ RAID 1 มันจะเขียนลงดิสก์ทั้งสอง สิ่งนี้จะดำเนินต่อไปในกระบวนการแบบ Round Robin

ตอนนี้คุณทุกคนคงทราบแล้วว่า RAID 10 ทำงานอย่างไรโดยการรวมทั้ง RAID 0 และ RAID 1 เข้าด้วยกัน หากเรามีดิสก์ขนาด 20 GB จำนวน 4 ตัว ก็จะรวมเป็น 80 GB แต่เราจะได้ความจุในการจัดเก็บเพียง 40 GB เท่านั้น ครึ่งหนึ่งของความจุทั้งหมดจะหายไปสำหรับการสร้าง RAID 10

ข้อดีและข้อเสียของ RAID 5

  1. ให้ประสิทธิภาพที่ดีขึ้น
  2. เราจะสูญเสียความจุของดิสก์สองตัวใน RAID 10
  3. การอ่านและการเขียนจะดีมากเพราะจะเขียนและอ่านทั้ง 4 ดิสก์พร้อมกัน
  4. สามารถใช้กับโซลูชันฐานข้อมูลซึ่งต้องการการเขียนดิสก์ I/O สูง

ความต้องการ

ใน RAID 10 เราจำเป็นต้องมีดิสก์อย่างน้อย 4 ตัว โดยดิสก์ 2 ตัวแรกสำหรับ RAID 0 และดิสก์อีก 2 ตัวสำหรับ RAID 1 อย่างที่ฉันบอกไปก่อนหน้านี้ RAID 10 เป็นเพียงการรวมกันของ RAID 0 และ 1 หากเราต้องการขยาย RAID กลุ่มเราต้องเพิ่มดิสก์อย่างน้อย 4 ดิสก์

การตั้งค่าเซิร์ฟเวอร์ของฉัน
Operating System :	CentOS 6.5 Final
IP Address	 	:	192.168.0.229
Hostname	 	:	rd10.tecmintlocal.com
Disk 1 [20GB]	 	:	/dev/sdd
Disk 2 [20GB]	 	:	/dev/sdc
Disk 3 [20GB]	 	:	/dev/sdd
Disk 4 [20GB]	 	:	/dev/sde

มีสองวิธีในการตั้งค่า RAID 10 แต่ที่นี่ฉันจะแสดงให้คุณเห็นทั้งสองวิธี แต่ฉันต้องการให้คุณทำตามวิธีแรก ซึ่งทำให้การตั้งค่า RAID 10 ง่ายขึ้นมาก

วิธีที่ 1: การตั้งค่า Raid 10

1. ขั้นแรก ตรวจสอบว่าตรวจพบดิสก์ที่เพิ่มทั้ง 4 ดิสก์หรือไม่ได้ใช้คำสั่งต่อไปนี้

ls -l /dev | grep sd

2. เมื่อตรวจพบดิสก์ทั้งสี่ดิสก์แล้ว ก็ถึงเวลาตรวจสอบไดรฟ์ว่ามี Raid อยู่แล้วหรือไม่ก่อนที่จะสร้างดิสก์ใหม่

mdadm -E /dev/sd[b-e]
mdadm --examine /dev/sdb /dev/sdc /dev/sdd /dev/sde

หมายเหตุ: ในเอาต์พุตด้านบน คุณจะเห็นว่ายังไม่ตรวจพบซุปเปอร์บล็อก นั่นหมายความว่าไม่มีการกำหนด RAID ในไดรฟ์ทั้ง 4 ตัว

ขั้นตอนที่ 1: การแบ่งพาร์ติชันไดรฟ์สำหรับ RAID

3. ตอนนี้ให้สร้างพาร์ติชันใหม่บนดิสก์ทั้ง 4 ตัว (/dev/sdb, /dev/sdc, /dev/sdd และ /dev/sde) โดยใช้เครื่องมือ 'fdisk'

fdisk /dev/sdb
fdisk /dev/sdc
fdisk /dev/sdd
fdisk /dev/sde
สร้างพาร์ติชัน /dev/sdb

ฉันจะแสดงวิธีแบ่งพาร์ติชันดิสก์ตัวใดตัวหนึ่ง (/dev/sdb) โดยใช้ fdisk ขั้นตอนนี้จะเหมือนกันสำหรับดิสก์อื่นๆ ทั้งหมดด้วย

fdisk /dev/sdb

โปรดใช้ขั้นตอนด้านล่างเพื่อสร้างพาร์ติชันใหม่บนไดรฟ์ /dev/sdb

  1. กด 'n' เพื่อสร้างพาร์ติชันใหม่
  2. จากนั้นเลือก 'P' สำหรับพาร์ติชันหลัก
  3. จากนั้นเลือก '1' เพื่อเป็นพาร์ติชันแรก
  4. จากนั้นกด 'p' เพื่อพิมพ์พาร์ติชันที่สร้างขึ้น
  5. เปลี่ยนประเภท หากเราต้องการทราบทุกประเภทที่มีอยู่ กด 'L'
  6. ที่นี่ เรากำลังเลือก 'fd' เนื่องจากประเภทของฉันคือ RAID
  7. จากนั้นกด 'p' เพื่อพิมพ์พาร์ติชันที่กำหนด
  8. จากนั้นใช้ 'p' อีกครั้งเพื่อพิมพ์การเปลี่ยนแปลงที่เราได้ทำไว้
  9. ใช้ 'w' เพื่อเขียนการเปลี่ยนแปลง

หมายเหตุ: โปรดใช้คำแนะนำเดียวกันข้างต้นสำหรับการสร้างพาร์ติชันบนดิสก์อื่น (sdc, sdd sdd sde)

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

mdadm -E /dev/sd[b-e]
mdadm -E /dev/sd[b-e]1

OR

mdadm --examine /dev/sdb /dev/sdc /dev/sdd /dev/sde
mdadm --examine /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1

หมายเหตุ: ผลลัพธ์ข้างต้นแสดงว่าตรวจไม่พบซุปเปอร์บล็อกในพาร์ติชั่นที่สร้างขึ้นใหม่ทั้งสี่พาร์ติชั่น นั่นหมายความว่าเราสามารถก้าวไปข้างหน้าเพื่อสร้าง RAID 10 บนพาร์ติชั่นเหล่านี้ได้ ไดรฟ์

ขั้นตอนที่ 2: การสร้างอุปกรณ์ RAID 'md'

5. ตอนนี้ถึงเวลาสร้างอุปกรณ์ 'md' (เช่น /dev/md0) โดยใช้เครื่องมือการจัดการการโจมตี 'mdadm' ก่อนสร้างอุปกรณ์ ระบบของคุณต้องติดตั้งเครื่องมือ 'mdadm' หากไม่ได้ติดตั้งก่อน

yum install mdadm		[on RedHat systems]
apt-get install mdadm 	[on Debain systems]

เมื่อติดตั้งเครื่องมือ 'mdadm' แล้ว คุณสามารถสร้างอุปกรณ์จู่โจม 'md' โดยใช้คำสั่งต่อไปนี้

mdadm --create /dev/md0 --level=10 --raid-devices=4 /dev/sd[b-e]1

6. ถัดไป ตรวจสอบอุปกรณ์จู่โจมที่สร้างขึ้นใหม่โดยใช้คำสั่ง 'cat'

cat /proc/mdstat

7. จากนั้น ตรวจสอบไดรฟ์ทั้ง 4 ตัวโดยใช้คำสั่งด้านล่าง ผลลัพธ์ของคำสั่งด้านล่างจะยาวตามที่แสดงข้อมูลของดิสก์ทั้ง 4 แผ่น

mdadm --examine /dev/sd[b-e]1

8. จากนั้นตรวจสอบรายละเอียดของ Raid Array โดยใช้คำสั่งต่อไปนี้

mdadm --detail /dev/md0

หมายเหตุ: คุณเห็นในผลลัพธ์ข้างต้นว่าสถานะของ Raid ทำงานอยู่และกำลังซิงค์ใหม่

ขั้นตอนที่ 3: การสร้างระบบไฟล์

9. สร้างระบบไฟล์โดยใช้ ext4 สำหรับ 'md0' และติดตั้งภายใต้ '/mnt/raid10' ที่นี่ฉันใช้ ext4 แต่คุณสามารถใช้ระบบไฟล์ประเภทใดก็ได้หากต้องการ

mkfs.ext4 /dev/md0

10. หลังจากสร้างระบบไฟล์แล้ว ให้เมาต์ระบบไฟล์ที่สร้างขึ้นภายใต้ '/mnt/raid10' และแสดงรายการเนื้อหาของจุดเมานท์โดยใช้คำสั่ง 'ls -l'

mkdir /mnt/raid10
mount /dev/md0 /mnt/raid10/
ls -l /mnt/raid10/

ถัดไป เพิ่มไฟล์บางไฟล์ภายใต้จุดเมานท์และต่อท้ายข้อความในไฟล์ใดไฟล์หนึ่งและตรวจสอบเนื้อหา

touch /mnt/raid10/raid10_files.txt
ls -l /mnt/raid10/
echo "raid 10 setup with 4 disks" > /mnt/raid10/raid10_files.txt
cat /mnt/raid10/raid10_files.txt

11. สำหรับการติดตั้งอัตโนมัติ ให้เปิดไฟล์ '/etc/fstab' และต่อท้ายรายการด้านล่างใน fstab อาจเป็นจุดเมานต์จะแตกต่างกันไปตามสภาพแวดล้อมของคุณ บันทึกและเลิกใช้ wq!.

vim /etc/fstab

/dev/md0                /mnt/raid10              ext4    defaults        0 0

12. ถัดไป ตรวจสอบไฟล์ '/etc/fstab' เพื่อหาข้อผิดพลาดก่อนที่จะรีสตาร์ทระบบโดยใช้คำสั่ง 'mount -a'

mount -av

ขั้นตอนที่ 4: บันทึกการกำหนดค่า RAID

13. ตามค่าเริ่มต้นแล้ว RAID จะไม่มีไฟล์กำหนดค่า ดังนั้นเราจึงจำเป็นต้องบันทึกไฟล์ด้วยตนเองหลังจากทำตามขั้นตอนข้างต้นทั้งหมด เพื่อรักษาการตั้งค่าเหล่านี้ไว้ในระหว่างการบูตระบบ

mdadm --detail --scan --verbose >> /etc/mdadm.conf

เพียงเท่านี้เราได้สร้าง RAID 10 โดยใช้วิธีที่ 1 วิธีนี้เป็นวิธีที่ง่ายกว่า ตอนนี้เรามาดูการตั้งค่า RAID 10 โดยใช้วิธีที่ 2 กันดีกว่า

วิธีที่ 2: การสร้าง RAID 10

1. ในวิธีที่ 2 เราต้องกำหนด RAID 1 จำนวน 2 ชุด จากนั้นเราจำเป็นต้องกำหนด RAID 0 โดยใช้ชุด RAID 1 ที่สร้างขึ้นเหล่านั้น ที่นี่ สิ่งที่เราจะทำคือสร้างมิเรอร์ 2 ตัว (RAID1) ก่อน จากนั้นจึงทำการสตริปบน RAID0

ขั้นแรก แสดงรายการดิสก์ที่พร้อมใช้งานสำหรับการสร้าง RAID 10

ls -l /dev | grep sd

2. แบ่งพาร์ติชันดิสก์ทั้ง 4 แผ่นโดยใช้คำสั่ง 'fdisk' สำหรับการแบ่งพาร์ติชัน คุณสามารถทำตาม #ขั้นตอนที่ 3 ด้านบน

fdisk /dev/sdb
fdisk /dev/sdc
fdisk /dev/sdd
fdisk /dev/sde

3. หลังจากแบ่งพาร์ติชันดิสก์ทั้ง 4 แผ่นแล้ว ให้ตรวจสอบดิสก์เพื่อหาบล็อกการโจมตีที่มีอยู่

mdadm --examine /dev/sd[b-e]
mdadm --examine /dev/sd[b-e]1

ขั้นตอนที่ 1: การสร้าง RAID 1

4. ก่อนอื่นให้ฉันสร้าง RAID 1 จำนวน 2 ชุดโดยใช้ดิสก์ 'sdb1' และ 'sdc1' จำนวน 4 ชุด และชุดอื่นๆ โดยใช้ 'sdd1' และ 'sde1'

mdadm --create /dev/md1 --metadata=1.2 --level=1 --raid-devices=2 /dev/sd[b-c]1
mdadm --create /dev/md2 --metadata=1.2 --level=1 --raid-devices=2 /dev/sd[d-e]1
cat /proc/mdstat

ขั้นตอนที่ 2: การสร้าง RAID 0

5. จากนั้น สร้าง RAID 0 โดยใช้อุปกรณ์ md1 และ md2

mdadm --create /dev/md0 --level=0 --raid-devices=2 /dev/md1 /dev/md2
cat /proc/mdstat

ขั้นตอนที่ 3: บันทึกการกำหนดค่า RAID

6. เราจำเป็นต้องบันทึกการกำหนดค่าภายใต้ '/etc/mdadm.conf' เพื่อโหลดอุปกรณ์ Raid ทั้งหมดทุกครั้งที่รีบูต

mdadm --detail --scan --verbose >> /etc/mdadm.conf

หลังจากนี้เราต้องปฏิบัติตาม #ขั้นตอนที่ 3 การสร้างระบบไฟล์ของวิธีที่ 1

แค่นั้นแหละ! เราได้สร้าง RAID 1+0 โดยใช้วิธีที่ 2 เราจะสูญเสียพื้นที่ดิสก์สองอันที่นี่ แต่ประสิทธิภาพจะดีเยี่ยมเมื่อเทียบกับการตั้งค่าการโจมตีอื่นๆ

บทสรุป

ที่นี่เราได้สร้าง RAID 10 โดยใช้สองวิธี RAID 10 มีประสิทธิภาพที่ดีและมีความซ้ำซ้อนด้วย หวังว่านี่จะช่วยให้คุณเข้าใจเกี่ยวกับระดับ RAID 10 Nested Raid เรามาดูวิธีขยาย Raid Array ที่มีอยู่และอื่นๆ อีกมากมายในบทความต่อๆ ไปของฉัน