แนวปฏิบัติที่ดีที่สุดสำหรับการเพิ่มดิสก์ใน LVM คืออะไร


21

ตาม manpages Linux คุณสามารถเพิ่ม raw disk หรือพาร์ติชั่นให้กับกลุ่มวอลุ่ม

ในเอกสารอื่น ๆ (RedHat, CentOS หรือ openSUSE) ตัวอย่างทั้งหมดอ้างถึงการเพิ่มพาร์ติชันใน VG แทนดิสก์ดิบ การปฏิบัติที่ดีที่สุดคืออะไร?


คำตอบ:


19

คู่มือการดูแลระบบ RHEL6 LVM

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

ตัดตอนมาจากคำแนะนำ "คู่มือผู้ดูแลระบบ LVM Logical Volume Manager LVM"

2.1.2 หลายพาร์ติชันบนดิสก์

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

ความสะดวกในการบริหาร

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

LVM Howto

มาตรา11.1 การเตรียมข้อมูลเบื้องต้นดิสก์หรือพาร์ติชันดิสก์ของ LVM Howtoระบุดังนี้:

ตัดตอนมาจาก LVM Howto

สำหรับดิสก์ทั้งหมด:

เรียกใช้ pvcreate บนดิสก์:

# pvcreate /dev/hdb

สิ่งนี้จะสร้างตัวอธิบายกลุ่มวอลุ่มที่จุดเริ่มต้นของดิสก์

ไม่แนะนำ

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

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

อันตราย

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

# dd if=/dev/zero of=/dev/diskname bs=1k count=1
# blockdev --rereadpt /dev/diskname

สรุปผลการวิจัย

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

สำหรับฉันฉันเปรียบเหมือนกับการขับรถในรถของฉันโดยคาดเข็มขัดนิรภัยไว้ หากคุณไม่เคยประสบอุบัติเหตุเข็มขัดนิรภัยก็ไม่ได้ช่วยอะไร แต่ถ้าฉันประสบอุบัติเหตุฉันก็ดีใจที่ได้สวมมัน

การติดตาม # 1 (ความเห็นของ @ @ Joel)

ฉันคิดว่าคำแนะนำข้างต้น 2 ข้อเป็น 2 เหตุผลที่ค่อนข้างดี พวกเขาทั้งคู่เป็นผู้นำอย่างเป็นทางการคนหนึ่งจาก RH และอีกคนเป็น Howto ที่รวบรวมโดยทีม LVM

นี่คือเหตุผลอื่น เมื่อไม่แบ่งพาร์ติชัน HDD จะไม่มีการตั้งค่า ID อย่างชัดเจนบน HDD เพื่อระบุวิธีการใช้งานอย่างชัดเจน

 fdisk -l
 ...
/dev/sda6       318253056   956291071   319019008   8e  Linux LVM

ในฐานะผู้ดูแลระบบมันชัดเจนมากขึ้นกับตัวฉันและคนอื่น ๆ ถึงความตั้งใจในการใช้งานไดรฟ์นี้เทียบกับที่ไม่มี 8e

ฉันซาบซึ้งในสิ่งที่คุณพูด @Joel ฉันทำงานกับ บริษัท ที่ติดอันดับ Fortune 500 ซึ่งเรามีการปรับใช้ Linux 100 รายการทั้งในการติดตั้งจริง / เสมือน / บนเดสก์ท็อป / เซิร์ฟเวอร์รวมทั้งในการปรับใช้พื้นที่เก็บข้อมูลขนาดใหญ่ คำพูด


เพียงเพราะ Red Hat บอกว่ามันไม่ได้ทำให้เป็นจริง ฉันยังไม่ได้ยินเหตุผลที่แท้จริงว่าทำไมคุณจึงต้องแบ่งพาร์ติชันดิสก์และฉันสามารถคิดได้เฉพาะเหตุผลที่ไม่ควรทำ นอกจากนี้ "การติดตามฮาร์ดแวร์ในระบบได้ง่ายขึ้นหากแต่ละดิสก์จริงปรากฏเพียงครั้งเดียว" นี่เป็นปัญหาจริงๆหรือ มันจะปรากฏขึ้นในfdisk -lครั้งเดียวใน/sys/blockครั้งเดียวและในประวัติของคุณอีกครั้ง มันควรจะซ้ำกันที่ไหน? (ต่อ)
Bratchley

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

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

ขอบคุณพวก :) การอภิปรายนี้เป็นประโยชน์กับฉันจริงๆ
MacGyver

2
@Joel - เช่นเดียวกับฉันฉันขอขอบคุณการอภิปราย เป็นเรื่องดีที่เราทุกคนสามารถนำประสบการณ์การปฏิบัติที่หลากหลายของเราและลองและให้คำแนะนำที่ดีกว่าในหัวข้อเฉพาะนี้กว่าสิ่งที่มีอยู่บนเว็บในปัจจุบัน อย่างน้อยที่สุดเราก็กำลังดึงเอกสารที่กระจัดกระจายจำนวนมากไว้ในที่เดียว 8-)
slm

10

เป็นที่นิยมมากกว่าที่จะมี descriptor ที่รู้จักกันทั่วไป (meta-data) และ MBR ค่อนข้างโดดเด่นเหมือน descriptor แม้แต่ GPT ก็ใช้ตารางพาร์ติชั่นที่ใช้ MBR แบบเก่าเพื่อระบุว่ามีอยู่

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


1
คุณอาจไม่สูญเสียพื้นที่ดิสก์ใด ๆ ตรวจสอบpvdisplay(ขนาด PV: ไม่ใช่ X MiB ที่ใช้งานได้) ถ้า X มีขนาดใหญ่กว่า 1MiB คุณก็สามารถแบ่งพาร์ติชันได้โดยไม่สูญเสียอะไรอีก
frostschutz

@frostschutz ตั้งใจดี แต่เล่น smart-ass: พื้นที่ "ว่างเปล่า" ไม่ใช่ "ขนาด dev devul ขนาด PE" แต่ "(ขนาด dev ลบพื้นที่ metadata (384K)) ขนาด modulo PE" ไม่ว่าผลลัพธ์นั้นจะมากหรือน้อยนั้นก็ขึ้นอยู่กับหลักสูตร
Hauke ​​Laging

นอกจากนี้ LVM ยังมี descriptor ทำไมก่อนสร้างตาราง FAT และกว่า LVM Descriptor LVM จัดเก็บข้อมูลเมตาในส่วนที่สอง สิ่งหนึ่งที่ฉันนึกถึงตอนแรกคือการสร้างไขมันสำหรับการกู้คืนจากความเสียหายหรือสำหรับผู้ดูแลระบบลินุกซ์มือใหม่ (การบริหารดิสก์)
MacGyver

HP-UX ใช้ LVM ด้วย .. บนแพลตฟอร์มนี้เป็นวิธีปฏิบัติทั่วไปในการเพิ่มดิสก์ดิบและให้ LVM ทำสิ่งต่าง ๆ บนดิสก์ LVM2.x
MacGyver

1
@ user39597 คุณทำสิ่งต่างๆยุ่ง FAT ย่อมาจาก File Allocation Table นั่นคือ MS-DOS ตารางพาร์ติชัน MBR เป็นมาตรฐานจริงเครื่องมือต่าง ๆ มากมายไม่ทราบว่า LVM จะรู้ว่าดิสก์ถูกแบ่งพาร์ติชันและครอบครอง - เป็นมาตรการป้องกันไว้ล่วงหน้า
poige

4

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

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

  1. แสดง LUN ขนาดใหญ่ขึ้นใหม่เพิ่มไปที่กลุ่มวอลุ่ม pvmove ปิด LUN ที่คุณแบ่งพาร์ติชันอย่างลึกลับลบออกจากกลุ่มวอลุ่มและบอกให้คน SAN แสดงตัวตน ซึ่งอาจใช้งานได้และสามารถทำออนไลน์ได้ (ด้วยประสิทธิภาพการทำงานและสมมติว่ามีพื้นที่ SAN เพียงพอในพูลหน่วยเก็บข้อมูลของคุณทางฝั่ง SAN เพื่อเก็บ LUN สองตัวนี้พร้อมกัน) แต่ทำได้
  2. อีกวิธีหนึ่งคือกลับไปจัดการกับพาร์ติชันซึ่งเป็นส่วนหนึ่งของเหตุผลที่คนชอบแผนการจัดการปริมาณที่ออกแบบมาอย่างดี (เช่นกับ btrfs, lvm, zfs, ฯลฯ ) คุณสามารถแก้ไขตารางพาร์ติชันของฟิสิคัลวอลุ่มและหวังว่าpartprobeคุณจะอ่านขนาดใหม่ แต่มันใช้งานได้เพียง 1 ครั้งจาก 2 จากประสบการณ์ส่วนตัวของฉันและมันต้องการให้คุณยกเลิกการต่อเชื่อมระบบไฟล์ (เช่นบังคับให้คุณออฟไลน์ด้วยเหตุผลอื่น ๆ เช่นผู้จัดการวอลลุ่ม)

หากคุณทำทั้งดิสก์ที่ผู้ดูแลระบบ SAN สามารถขยาย LUN ให้คุณได้คุณจะสแกนบัส SCSI อีกครั้งซึ่งจะเพิ่มขนาด LUN ขึ้นมาใหม่จากนั้นคุณทำ a pvresizeเพื่อขยายฟิสิคัลวอลุ่มออก ทั้งหมดนี้ไม่มีระบบไฟล์ใด ๆ ออฟไลน์

การปิดบิต MBR โดยทั่วไปคุณไม่ได้ใช้ PV จากระบบหนึ่งและแสดงให้ระบบอื่นในสภาพแวดล้อมขององค์กร แม้ว่าคุณจะทำเช่นนั้นหากเป็น LVM คุณจะต้องการให้ระบบปฏิบัติการที่คุณกำลังจะนำเสนอ LUN เพื่อสนับสนุน LVM มิฉะนั้นจะมีจุดประสงค์อะไรในการนำเสนอต่อพวกเขา? หากเป็นเช่นนั้นคุณจะได้เห็นข้อมูลฟิสิคัลวอลุ่มทั้งหมดข้อมูลกลุ่มวอลุ่มและโลจิคัลวอลุ่ม (สมมติว่านี่เป็น PV เดียวในกลุ่มวอลุ่ม) ดังนั้นเอกสารด้วยตนเอง

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


2
ในทางทฤษฎีแล้วคุณจะไม่ผิดในทางปฏิบัติคุณจะเห็นปัญหาในชีวิตประจำวันเช่นระบบปฏิบัติการและตัวติดตั้ง (แม้แต่ Linux) ที่เสนอให้ฟอร์แมตดิสก์ฟรีที่ควรจะเป็น - เพราะพวกเขาไม่รู้จัก LVM ในเวลาเดียวกันไม่มีข้อเสีย (ประสิทธิภาพฉลาด) เพื่อใช้พาร์ทิชัน ดังนั้นในผู้ใช้ที่บ้านเดสก์ท็อปสภาพแวดล้อมระบบปฏิบัติการหลายระบบจึงปลอดภัยกว่าที่จะยึดพาร์ติชัน
frostschutz

ฉันไม่เห็นปัญหาเกี่ยวกับตัวติดตั้งด้วยตัวเอง เคอร์เนลควรจะเทียบเท่ากับpvscanตอนบูตดังนั้นเคอร์เนลบนดิสก์ตัวติดตั้งควรสแกนอุปกรณ์บล็อกทั้งหมดเพื่อค้นหาหัว LVM ฉันอาจจะยื่นข้อบกพร่องกับใครก็ตามที่ผู้ขายอธิบายว่าตัวติดตั้งของพวกเขาคือ fubar'd สำหรับการติดตั้งในบ้านปัญหาจะเหมือนกันแม้ว่าระบบไฟล์รากจะมีดิสก์สองแผ่นที่ดิสก์หลักของคุณจะถูกแบ่งพาร์ติชั่นสำหรับ / boot และเมื่อเคอร์เนลโหลดมันจะทำการสแกนปริมาณ นั่นคือวิธีที่คุณสามารถบูตด้วย LVM ได้
Bratchley

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

ขอบคุณพวก :) การอภิปรายนี้เป็นประโยชน์กับฉันจริงๆ
MacGyver

0

จากประสบการณ์ของฉันการใช้พาร์ติชันจะดีถ้าคุณกำลังทดสอบหรือสภาพแวดล้อมขนาดเล็กที่ดิสก์ / ที่เก็บข้อมูลไม่พร้อมใช้งาน เหมาะสำหรับโรงเรียนหรือทำงานในโรงรถของคุณ ในโลกแห่งความเป็นจริงด้วยเซิร์ฟเวอร์เสมือนที่คุณสามารถขยายดิสก์ได้ตามต้องการจะดีกว่าถ้าคุณปล่อยให้ LVM จัดการดิสก์ดิบ / ดิสก์ทั้งหมดแทนที่จะแบ่งพาร์ติชัน มันจะง่ายและยืดหยุ่นในการจัดการโดยไม่ต้องรีบูตเซิร์ฟเวอร์ของคุณ คุณรู้หรือไม่ว่าประหยัดเวลาได้มากน้อยแค่ไหน? ทวีคูณสำหรับเซิร์ฟเวอร์ทั้งหมดที่คุณอาจต้องจัดการ! หลายครั้งฉันมีความท้าทายที่เกิดจากพาร์ติชั่น / ชิ้นคุณจำเป็นต้องรีบูตเซิร์ฟเวอร์เนื่องจากเคอร์เนลอาจไม่รู้จักตารางใหม่ เมื่อเพิ่มดิสก์ดิบ / ดิสก์เสมือนลงใน LVM ของคุณและมีความจำเป็นที่จะต้องขยายระบบไฟล์ของคุณด้วย LVM ด้วยดิสก์ดิบนั้นยอดเยี่ยม โดยเรียกใช้คำสั่งง่าย ๆ เช่น“ echo 1> / sys / block / XXX / อุปกรณ์ / rescan” โดยที่ XXX เป็นดิสก์ของคุณ (sdb, sdc, sdd, ฯลฯ ) จะสแกนดิสก์อีกครั้งสำหรับพื้นที่เพิ่มเติมโดยไม่ต้องรีบูตเครื่องและบูม! คุณจะสามารถขยายระบบไฟล์ของคุณได้ทันที มันจะใช้เวลาคุณ litellary 5 นาทีเพื่อขยายดิสก์โดยไม่ต้องรีบูตเครื่องเซิร์ฟเวอร์ linux ของคุณ ด้วยดิสก์ที่แบ่งพาร์ติชันกระบวนการนี้ซับซ้อน


1
คำตอบของคุณดูเหมือนจะเน้นไปที่ข้อดีของการใช้ VM มากกว่าการจัดสรรดิสก์แบบเต็มให้กับ LVM
roaima

@roaima: ตกลงตาของฉันล้มเหลว คำตอบนี้จะพูดอะไรเกี่ยวกับ VMs?
G-Man กล่าวว่า 'Reinstate Monica'

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