อาร์เรย์การโจมตีที่เหมาะสมที่สุดบน Centos 6


2

ฉันมีดิสก์ 4x2TB และฉันต้องการสร้างอาร์เรย์ RAID5 ที่มีประสิทธิภาพดี (เซิร์ฟเวอร์คือไมโครซอฟท์ HP N40L ที่มี 8GB RAM, การบูตจาก 64GB SSHD) ระบบปฏิบัติการคือ Centos 6.3, x86_64

ฉันสร้างอาร์เรย์การโจมตีด้วยคำสั่งนี้:

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

เมื่อฉันทำ:

mdadm --examine /dev/sda1

... ฉันบอกว่า "ขนาดก้อน" ของฉันคือ 512K (เห็นได้ชัดว่านี่เป็นค่าเริ่มต้นใหม่ของ mdadm)

ตอนนี้ฉันต้องการจัดรูปแบบอาร์เรย์ด้วย XFS ฉันได้รับการบอกกล่าว (ที่http://www.mythtv.org/wiki/Optimizing_Performance#Optimizing_XFS_on_RAID_Arrays ) ที่ว่า "sunit" เท่ากับขนาดก้อนของฉันซึ่งแสดงเป็นบล็อกขนาด 512 ไบต์ - ในกรณีของฉัน 512KB = 1024 512 บล็อกไบต์ ในทำนองเดียวกัน "swidth" คือจำนวนของดิสก์ที่มีประสิทธิภาพในอาเรย์ของฉันครั้ง sunit ในกรณีของฉันฉันมี 4 ดิสก์ในการโจมตี 5 ดังนั้น 3 ดิสก์ที่มีประสิทธิภาพและ 3x1024 = 3072 ดังนั้นฉันจัดรูปแบบอาร์เรย์ใหม่ของฉันด้วยคำสั่ง:

mkfs.xfs -b size=4096 -d sunit=1024,swidth=3072 /dev/md0

ตอนนี้ฉันมีคำถามสองข้อ คำสั่งดังกล่าวทำให้ฉันข้อผิดพลาดนี้:

mkfs.xfs -b size=4096 -d sunit=1024,swidth=3072 /dev/md0
log stripe unit (524288 bytes) is too large (maximum is 256KiB)
log stripe unit adjusted to 32KiB [...]

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

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

ฉันขอขอบคุณคำแนะนำใด ๆ เกี่ยวกับเรื่องนี้

คำตอบ:


1

XFS ไม่รองรับหน่วยสไทรพ์ที่มีขนาดใหญ่กว่า 256k ดังนั้นเพียงแค่สร้างอาเรย์ RAID ของคุณใหม่ด้วยสตริป 256k นี้เป็นพารามิเตอร์ของ--chunkmdadm

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

คุณสามารถจัดสรรเป็นบล็อกได้เท่านั้นดังนั้นเลือกขนาดบล็อกของคุณตามขนาดของไฟล์ที่คุณคาดว่าจะจัดการ ด้วยขนาดบล็อก 4k ไฟล์ขนาด 1kb ใช้พื้นที่ 4kb (1 บล็อก) และไฟล์ขนาด 65kb ใช้พื้นที่ 68kb (บล็อก 17 บล็อก) ด้วยขนาดบล็อก 64kb ไฟล์ขนาด 1kb ใช้เวลา 64kb (หนึ่งบล็อก) และไฟล์ขนาด 65kb ใช้ขนาด 128kb (2 บล็อก)

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

อีกสิ่งหนึ่งที่ต้องทำความเข้าใจคือกลุ่มการจัดสรร AG แต่ละอันได้รับเธรด IO แยกกัน ตัวจัดสรร XFS พยายามที่จะทำให้แต่ละไดเรกทอรีใน AG ที่แตกต่างกัน ทฤษฎีพื้นฐานคือหนึ่ง AG ต่ออุปกรณ์ทางกายภาพ

อ่านเอกสาร XFS และทำความเข้าใจว่าระบบไฟล์ถูกสร้างขึ้นมาได้อย่างไร:

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

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

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