การใช้ Linux fstrim บน SSD พร้อมซอฟต์แวร์ md-raid


14

ขณะนี้ฉันกำลังสร้างเซิร์ฟเวอร์ Ubuntu 13.04 ใหม่ที่มี SSD ขนาด 256GB 2 ตัวในมิร์เรอร์ RAID เพื่อเรียกใช้อินสแตนซ์ MariaDB โดยทั่วไปเราวางLVM ไว้ด้านบนของการเข้ารหัส dm-crypt ด้านบนของอาร์เรย์ md raid 1แต่ไม่ได้ใช้ SSD ในการตั้งค่านี้มาก่อน

คำถามของฉันคือเนื่องจากเราจะใช้เคอร์เนลที่ใหม่กว่า (3.8) จึงควรอนุญาตให้ fstrim ใช้กับโวลุ่มการโจมตีได้โดยตรงเนื่องจากฉันเข้าใจ ตอนนี้ฉันสามารถพึ่งพาสิ่งนี้เพื่อทำงานอย่างถูกต้องด้วยfstrim -v /งาน cron เช่นเดียวกับที่ฉันต้องการหากการจู่โจมไม่ได้เกิดขึ้น สิ่งนี้เป็นจริงแม้กับ LVM ที่ด้านบนของโวลุ่มการโจมตีหรือไม่ เราวางแผนที่จะใช้การเข้ารหัสฮาร์ดแวร์ที่มีอยู่บนไดรฟ์ดังนั้นเราจึงไม่ต้องการ dm-crypt ที่นี่

หมายเหตุ:ฉันทราบว่ามีคำถามที่คล้ายกันหลายประการเกี่ยวกับการ backporting เคอร์เนลรุ่นที่ปรับปรุงแล้วและนำไปใช้กับโวลุ่ม md - ฉันกำลังถามเฉพาะว่าfstrimทำงานกับ md-raid หรือไม่โดยไม่ต้องดัดแปลงในเมล็ดที่ใหม่กว่า

UPDATE:แค่ต้องการติดตามและโพสต์ว่าสิ่งนี้ใช้ได้ดี ขณะนี้มีงานใน cron.daily ที่วิ่ง fstrim ใน/และ/bootและก็ใช้งานได้ดี นอกจากนี้ยังเปิดใช้งานการเข้ารหัสฮาร์ดแวร์บน SSD (Samsung 840 Pros) ดูเหมือนว่าต้องการการสนับสนุน TPM ซึ่งเราไม่มีดังนั้นเราจึงกำหนดค่าด้วยการเข้ารหัสซอฟต์แวร์ตามที่แสดงในลิงก์ ด้วยการเพิ่มdiscardตัวเลือกใน/etc/crypttab( ไม่ไป/etc/fstab) และissue_discards = 1ในส่วนของอุปกรณ์/etc/lvm/lvm.conffstrim ทำงานได้ดีแม้ผ่าน LVM การเข้ารหัสและเลเยอร์ RAID ข้อมูลเพิ่มเติมเกี่ยวกับการกำหนดค่าสำหรับตัด / ทิ้งบน SSD ที่มี LVM และการเข้ารหัสมีอยู่ที่นี่

คำตอบ:


11

แพทช์สำหรับ mdraid RAID 1 และ 10 รองรับ TRIM เพิ่มขึ้นประมาณหนึ่งปีที่แล้ว

คุณสามารถทดสอบการสนับสนุนของเคอร์เนลได้โดยติดตั้งระบบไฟล์ด้วยdiscardตัวเลือก (ซึ่งเปิดใช้งาน TRIM อัตโนมัติ) หากได้รับการสนับสนุนคุณจะเห็นข้อความใน syslog หรือdmesgชอบสิ่งต่อไปนี้:

EXT4-fs (md1): re-mounted. Opts: discard,data=ordered

มิฉะนั้นคุณจะได้รับสิ่งนี้:

EXT4-fs warning (device md1): ext4_issue_discard:2619: discard not supported, disabling

คุณไม่จำเป็นต้องรีบูตเพื่อดูว่าใช้งานได้หรือไม่:

mount /dir -o remount

1
ดังนั้นถ้าฉันเข้าใจคุณอย่างถูกต้องหากติดตั้งด้วยการทิ้งการทำงานแล้ว fstrim ควรเช่นกัน?
nedm

1
แก้ไข. ถ้ามันถูกนำไปใช้อย่างเต็มที่ตลอดเวลามันก็จะทำงานได้ทั้งสองทาง
Michael Hampton

3
อย่าลืมเปลี่ยนตัวเลือกการเมาต์ในภายหลังหากคุณไม่ต้องการที่จะทำการตัดอัตโนมัติ :)
Michael Hampton

2
สำหรับบันทึกการสนับสนุน TRIM สำหรับ RAID1 ถูกเพิ่มในวันที่ 11 ตุลาคม 2012 ดูที่นี่lkml.indiana.edu/hypermail/linux/kernel/1203.1/01772.htmlดังนั้นเคอร์เนล 3.4 ไม่สนับสนุน แต่ 3.8 ไม่ทราบ ประมาณ 3.5 / 3.6 / 3.7)
Joril

3
@MichaelHampton ที่น่าเสียดายที่ไม่เป็นความจริง ตัวอย่างเช่นการมีเคอร์เนล 3.2 โดยมี ext4 บน LVM บน MD (อ่อน) RAID1, (ใหม่) การติดตั้ง ext4 โดยไม่ละทิ้งจะไม่รายงานข้อผิดพลาด แต่จะไม่ทำงาน (เช่น MD RAID1 ในเคอร์เนล 3.2.x ไม่สนับสนุน การส่งผ่านคำสั่ง TRIM) ดังนั้นวิธีเดียวที่จะทราบได้อย่างแน่นอนคือการทดสอบ
Matija Nalis
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.