बड़े डिस्क का उपयोग करने के लिए लिनक्स एमडी RAID 10 सरणी का विस्तार करें


11

जो मैं समझता हूं कि यह संभव है, लेकिन मैं इसके बारे में कैसे जाने के बारे में कहीं भी एक सीधा जवाब नहीं पा सकता हूं, और मैं खुद के साथ प्रयोग करने वाले डेटा को खोने का जोखिम नहीं उठाना चाहता हूं इसलिए मैं यहां पूछ रहा हूं।

मेरे पास एक होम सर्वर है जिसमें पांच डिस्क चल रहे हैं CentOS। एक एसएसडी एक ओएस पकड़े हुए है। शेष चार डिस्क 4TB हार्डड्राइव को RAID10 में mdraid के साथ कॉन्फ़िगर किया गया है। उपयोग में फाइलसिस्टम xfs है।

मैं 8TB वाले 4TB डिस्क को बदलने की कोशिश कर रहा हूं। क्या वास्तव में एक नए RAID को फिर से कॉन्फ़िगर करने और डेटा खोने के बिना इस प्रतिस्थापन को बनाने के लिए किए जाने की आवश्यकता है?

Details output:

[root@fluttershy ~]# mdadm -D /dev/md127
/dev/md127:
        Version : 1.2
  Creation Time : Mon Apr 18 12:46:24 2016
     Raid Level : raid10
     Array Size : 7813771264 (7451.79 GiB 8001.30 GB)
  Used Dev Size : 3906885632 (3725.90 GiB 4000.65 GB)
   Raid Devices : 4
  Total Devices : 4
    Persistence : Superblock is persistent

  Intent Bitmap : Internal

    Update Time : Mon Jun 13 11:04:41 2016
          State : clean 
 Active Devices : 4
Working Devices : 4
 Failed Devices : 0
  Spare Devices : 0

         Layout : near=2
     Chunk Size : 512K

           Name : fluttershy:data  (local to host fluttershy)
           UUID : aa8f857a:g8bd0344:06d2f6d3:bac01a46
         Events : 13440

    Number   Major   Minor   RaidDevice State
       0       8        1        0      active sync set-A   /dev/sda1
       1       8       17        1      active sync set-B   /dev/sdb1
       2       8       33        2      active sync set-A   /dev/sdc1
       3       8       49        3      active sync set-B   /dev/sdd1

जवाबों:


14

प्रत्येक डिस्क के लिए निम्नलिखित चरणों को पूरा करें; /dev/sda1आवश्यक के रूप में अन्य डिस्क के साथ बदलें । अगली डिस्क पर आगे बढ़ने से पहले आपको एक डिस्क के लिए इन सभी चरणों को पूरा करना होगा ।

  • डिस्क को विफल के रूप में चिह्नित करें ताकि एमडी उसका उपयोग करना बंद कर दे: mdadm --manage /dev/md127 --fail /dev/sda1
  • सरणी से डिस्क निकालें: mdadm --manage /dev/md127 --remove /dev/sda1
  • डिस्क को भौतिक रूप से बदलें।
  • विभाजन का उपयोग करके नई डिस्क 0xDAको एक विभाजन के साथ पूरे डिस्क पर फैले हुए।
  • सरणी में नई डिस्क जोड़ें: mdadm --manage /dev/md127 --add /dev/sda1

एक बार जब आप प्रतिस्थापन डिस्क जोड़ लेते हैं, तो MD सरणी का पुनर्निर्माण करेगा। सुनिश्चित करें कि अगली डिस्क पर आगे बढ़ने से पहले पुनर्निर्माण पूरा हो गया है। आप रन करके ऐरे की स्थिति देख सकते हैं cat /proc/mdstat

एक बार जब सभी डिस्क को बदल दिया गया है और सरणी को फिर से बनाया गया है, तो सभी डिस्क की अधिकतम क्षमता को भरने के लिए सरणी का विस्तार करें mdadm --grow /dev/md127 --size=max। आप विस्तारित RAID को भरने के लिए वहां से फाइल सिस्टम का आकार बदल सकते हैं; आपके मामले में, xfs_growfsकमांड का उपयोग करें ।

लिनक्स आरडी विकी पर एमडी सरणी कैसे बढ़ें, इस बारे में अधिक जानकारी उपलब्ध है ।

किसी भी अन्य डिस्क हेरफेर कार्य के साथ, आपको शुरू करने से पहले एक बैकअप लेना चाहिए।


1
शायद जोड़ दें कि आप पुनर्निर्माण की प्रगति की जांच कैसे करते हैं ->tim@MushaV3 ~ $ cat /proc/mdstat Personalities : [raid1] [raid10] [raid6] [raid5] [raid4] [multipath] md1 : active raid1 sdb1[0] sda1[1] 131008 blocks [2/2] [UU] bitmap: 0/1 pages [0KB], 65536KB chunk
djsmiley2kStaysInside

2

आप पहले प्रत्येक डिस्क को एक-एक करके स्वैप करना चाहेंगे।

ऐसा करने के लिए आप प्रत्येक डिस्क को 'विफल' कर देंगे, और इसे नए 8Tb प्रतिस्थापन के साथ बदल देंगे, अचूक यदि आपके पास अतिरिक्त पोर्ट हैं, तो आप अतिरिक्त डिस्क जोड़ सकते हैं, फिर डिस्क से हटाने के स्थान पर mdadm 'प्रतिस्थापित' करें छापे और विफलता का एक उच्च जोखिम है।

इस सवाल का सबसे अच्छा तरीका है कि मैं इसे 'सुरक्षित' करने का पता लगा सकूं

एक बार जब आप ऐसा कर लेते हैं, तो आप मौजूदा FS को नए बनाए गए स्थान में विस्तारित करना चाहते हैं। ऐसा प्रतीत होता है कि यह 'xfs_growfs' के लिए कमांड है, हालांकि मुझे एक्सएफ़एस के साथ अनुभव नहीं मिला है कि यह समझाने के लिए कि आप वास्तव में यह कैसे करेंगे।

हमेशा की तरह, बैकअप तैयार है (और छापे बैकअप नहीं है!)।


एक raid10 और mdraid के साथ स्थापित होने के नाते, क्या अतिरिक्त स्थान भी पहचाना जाएगा? क्या मुझे एक बार में दो स्वैप करना चाहिए, प्रत्येक प्रतिबिंबित जोड़ी से एक?
केफका

आप केवल सभी डिस्क को स्वैप करने के बाद स्थान जोड़ते हैं, और फिर हाँ इसे पहचाना जाएगा।
djsmiley2kStaysInside
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.