Boot Debian ในขณะที่อาร์เรย์ RAID ถูกลดระดับลง


10

เมื่อเร็ว ๆ นี้ฉันเจอติดตั้ง Ubuntu Server ในระหว่างการติดตั้งจะถามฉันว่าจะอนุญาตให้ระบบการบูตจากอาร์เรย์ RAID ที่เสื่อมสภาพหรือไม่ (อาจเป็นเพราะฉันติดตั้งระบบลงในอุปกรณ์ RAID1 / dev / md0) นี่คือตัวเลือกอันยิ่งใหญ่ที่มีประโยชน์สำหรับเซิร์ฟเวอร์แบบอัตโนมัติซึ่งก็มีมาแบบออนไลน์หรือไม่อาร์เรย์ RAID ของพวกเขาคือเสื่อมโทรม (ตราบเท่าที่มันไม่ได้ล้มเหลวอย่างสิ้นเชิง)

หลังจากการค้นหาอย่างรวดเร็วฉันพบว่ามันทำงานได้ทั้งการอ่านไฟล์/etc/initramfs-tools/conf.d/mdadmการตั้งค่า (BOOT_DEGRADED = ตัวเลือกจริง) หรือโดยการอ่านอาร์กิวเมนต์บรรทัดการบูตเคอร์เนล (bootdegraded = true)

คำถาม:มีบางสิ่งที่คล้ายกัน (วิธีการบูตระบบที่มีอาร์เรย์เสื่อมโทรม) ที่ใช้งานได้กับ Debian หรือไม่? ฉันไม่แน่ใจว่าวิธีการที่แน่นอนนี้ใช้งานได้หรือไม่หรือว่ามันมีฟังก์ชั่นเฉพาะนี้

ฉันถามสิ่งนี้เพราะฉันเคยมีอาร์เรย์ RAID5 ในบางระบบและเมื่อปิดระบบที่ไม่เหมาะสมมันไม่สามารถบูตได้จนกว่าฉันจะ "แก้ไข" อาร์เรย์ด้วยตนเองซึ่งพิสูจน์แล้วว่าเป็น PITA ที่สำคัญเนื่องจากเซิร์ฟเวอร์ไม่ได้ทำงานในสถานที่ห่างไกล ไม่มี UPS และไฟฟ้าขัดข้องเกิดขึ้น ดังนั้นฉันจึงถามเพื่อป้องกันปัญหาประเภทนี้ในอนาคต


1
คุณไม่ได้ต้องการติดตั้งเซิร์ฟเวอร์Ubuntuหรือ
ตุ๊กตา

@ เท็ดดี้: แน่นอนฉันทำ แก้ไขแล้ว.
mr.b

เซิร์ฟเวอร์ในสถานที่ห่างไกลที่ไม่มี UPS บูตจากโวลุ่ม RAID ซอฟต์แวร์หรือไม่ ฟังดูไม่ดีอย่างที่คิด
Skyhawk

@Miles: มันเป็น แต่ก็ดีแม้จะได้รับงบประมาณและสถานการณ์ในขณะที่สร้างเซิร์ฟเวอร์นั้นไม่ได้หมายความว่ามันเป็นทางออกที่ดี
mr.b

www200.pair.com/mecham/raid/raid1-degraded-etch.html - คำแนะนำที่มีความยาวสำหรับการกำหนดค่า Debian Etch (ไม่ได้เขียนโดยฉัน)
Olli

คำตอบ:


6

คุณต้องการ start_dirty_degraded ลองระบุ md-mod.start_dirty_degraded = 1 เป็นอาร์กิวเมนต์สำหรับบูตกับอิมเมจเคอร์เนล


2

ฉันมีปัญหาที่ระบบของฉันจะบูตตามปกติด้วย / dev / sdb ถอดปลั๊ก แต่จะหยุดตลอดไปหากฉันลบ / dev / sda

วิธีแก้ปัญหาอย่างง่ายหลังจากการติดตั้ง Debian มาตรฐานคือการเรียกใช้ grub-install / dev / sdb

.. และตอนนี้มันบูทแม้ในขณะที่ / dev / sda ถูกตัดการเชื่อมต่อ


1

Debian ไม่สนใจว่าการโจมตีของคุณปลอดภัยหรือไม่ในขณะที่มันบู๊ต

คุณสามารถตรวจสอบได้โดยใช้ dmesg เมื่อเซิร์ฟเวอร์เริ่มต้นจะแสดงจำนวนไดรฟ์ที่ใช้ในอาร์เรย์การโจมตี

คุณสามารถตรวจสอบ / proc / mdstat เพื่ออ่านสถานะปัจจุบัน

ในที่สุดคุณสามารถใช้ mdadm / dev / md0 - จัดการ --fail / dev / sda1 เพื่อบังคับให้ / dev / sda1 ถูกทำเครื่องหมายว่าล้มเหลวแล้วรีบูต

ขอแสดงความนับถืออย่างสูง,

Arnaud


0

ฉันไม่มีวิธีง่าย ๆ ในการทดสอบในตอนนี้ (เฉพาะกล่อง Debian ที่ไม่ได้อยู่ในระยะไกลและกำลังใช้ซอฟต์แวร์ RAID1 กำลังการผลิตอยู่ในขณะนี้) แต่ฉันค่อนข้างมั่นใจว่าฉันจำได้หนึ่งหรือสองกรณีใน ในอดีตที่กล่องซอฟต์เฟอร์เดเบียนคนหนึ่งของฉันมีปัญหาดิสก์และฉันคิดว่าเดเบียนจะใช้ค่าเริ่มต้นเพื่อให้บูตด้วย RAID ที่เสื่อมสภาพ

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


0

ฉันจะลองบู๊ตเป็นบางสิ่งที่คล้ายกับโหมดเดี่ยวที่กำลังปิดการทำงานของ initramfs และ "แก้ไข" มัน

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