কিভাবে একটি অ-মান 2-ড্রাইভ RAID 5 অ্যারে থেকে একটি ড্রাইভ অপসারণ?


2

এখানে RAID অ্যারে মধ্যে আকৃতি পরিবর্তন পাওয়া কিছু তথ্য কিন্তু আমি একটু স্নায়বিক এবং নিশ্চিতকরণ চাই:

সমস্যা: আমার 500 টি ড্রাইভ সফ্টওয়্যার RAID 5 (mdadm) হিসাবে আছে। RAID-redundancy wimps জন্য হয় যেহেতু আমি দুটি ড্রাইভ এক মুক্ত করতে চাই ... আমি কি ঠিক করতে পারি

mdadm --grow --array-size=1

একটি দ্বারা অনুসরণ

mdadm --grow --raid-disks 1?

এই খুব সহজ মনে হয়। আমি কিভাবে ড্রাইভ মুক্ত করা হবে তা নির্দিষ্ট করা হবে? এই ম্যানুভারের কারণটি হল ব্যাকআপ চালানোর জন্য আমার অতিরিক্ত স্থান নেই।

সম্পাদনা: এটি হিসাবে, এটি একটি অ-স্টেড RAID5 বাস্তবায়ন (ডেভ এম বা গম্যান দ্বারা মন্তব্য দেখুন)। যাইহোক, অনুপযুক্ততা জন্য আমাকে শাস্তি না দয়া করে। আমি কেবল এই ড্রাইভ অপসারণ করছেন অন্তত ঝুঁকিপূর্ণ পদ্ধতিতে আগ্রহী। ধরুন আমি ব্যাকআপ সমস্যার যত্ন নিচ্ছি কিন্তু ব্যাকআপ থেকে পুনর্নির্মাণের জন্য আমি এটি ব্যবহার করতে যাচ্ছি না।


$ sudo mdadm --detail --test /dev/md1 
/dev/md1:
        Version : 00.90
  Creation Time : Sat Sep  1 18:08:21 2007
     Raid Level : raid5
     Array Size : 488383936 (465.76 GiB 500.11 GB)
  Used Dev Size : 488383936 (465.76 GiB 500.11 GB)
   Raid Devices : 2
  Total Devices : 2
Preferred Minor : 1
    Persistence : Superblock is persistent

Update Time : Mon Nov 28 11:32:13 2011
      State : clean

সক্রিয় ডিভাইস: 2 কাজ ডিভাইস: 2  ব্যর্থ ডিভাইস: 0   অতিরিক্ত ডিভাইস: 0

     Layout : left-symmetric
 Chunk Size : 64K

       UUID : XXX (local to host XXX)
     Events : 0.29336

Number   Major   Minor   RaidDevice State
   0       8       33        0      active sync   /dev/sdc1
   1       8       17        1      active sync   /dev/sdb1


2
RAID 5 তিনটি ড্রাইভ প্রয়োজন।
Dave M

RAID5 এর জন্য সর্বনিম্ন 3 ড্রাইভ প্রয়োজন, তাই আপনার কাছে সত্যিকারের RAID5 নেই। লেভেল-পরিবর্তন সাপোর্টটি সর্বদাই দ্রুতগামী হয় এবং আপনি যদি ডেটা হ্রাসে সংবেদনশীল হন তবে আমি এটির বিরুদ্ধে সুপারিশ করি; বিশেষ করে আপনার অ-মান বাস্তবায়ন বিবেচনা। উপরন্তু, AFAIK আপনি প্যারিটি-ভিত্তিক RAID স্তর থেকে অ-প্যারিটি এক অথবা অ-রেড ডিস্কে স্থানান্তর করতে পারবেন না।
Garrett

প্রকৃতপক্ষে, আপনি 3 RAID3 করতে পারেন পার্টিশন । mdadm অগত্যা যত্ন করে না যদি আপনার তিনটি প্রকৃত ড্রাইভ থাকে, অথবা শুধুমাত্র তিনটি পার্টিশন থাকে। আমি একটি একক ড্রাইভ RAID1 সম্পন্ন করেছি। আমি এই একটি ভাল ধারণা, মন মনে হয় না। একটি একক ড্রাইভ ব্যর্থতা সম্ভবত একাধিক পার্টিশন পায়ের পাতার মোজাবিশেষ পারে।
ChrisInEdmonton

RAID5 সংশোধন জন্য DaveM এবং gman ধন্যবাদ। অনুযায়ী সম্পাদন।
DrSAR

কোন প্যারিটি ডিস্ক নেই, এটি কি আসলেই ঠিক 0 RAID?
Paul

উত্তর:


3

Mdadm এর সাহায্যে, 2 ড্রাইভ RAID 5 একটি RAID1- র অনুরূপ বাইনারি, RAID 0 নয়, এবং কোনও যাদুকর অদৃশ্য ডিভাইস নেই। অ্যারে একই কারণ আপনি বলতে পারেন দুটি উপাদান প্রতিটি হিসাবে আকার, তাদের সমষ্টি নয়:

Array Size : 488383936 (465.76 GiB 500.11 GB)
Used Dev Size : 488383936 (465.76 GiB 500.11 GB)

আপনি করছেন যে নিশ্চিত করতে পারেন:

 dd if=/dev/sdb1 bs=512 count=1024 of=/tmp/b1
 dd if=/dev/sdc1 bs=512 count=1024 of=/tmp/c1

 md5sum /tmp/b1
 md5sum /tmp/c1

এমডি 5 প্রতিটি জন্য একই কারণ ড্রাইভ অনাদায়ী হয়। যেহেতু এটি RAID হিসাবে একই, এটি বন্ধ করার পরে আমরা একই ডিভাইসগুলিতে RAID1 তৈরি করতে এবং একই তথ্য থাকতে পারি:

mdadm -C /dev/md1  --level=1 --raid-devices=2 /dev/sdb1 /dev/sdc1

অথবা অন্যকে মুক্ত করে শুধুমাত্র একটি ডিভাইসের সাথে RAID1 করুন:

mdadm -C /dev/md1  --level=1 --raid-devices=1 --force /dev/sdb1

তারপরে মুছে ফেলা একটিকে সুপারব্লকটি সাফ করুন:

mdadm /dev/sdc1 --zero-superblock

এটি একটি mdadm সুপার ব্লক সংস্করণ 0.90, কারণ প্রতিটি ড্রাইভ তার নিজস্ব হিসাবে ব্যবহারযোগ্য হতে হবে। 1.1 এবং 1.2 থেকে শুরু করে মেটা ডেটা অ্যারের শুরুতে এটি সেই সংস্করণগুলির জন্য কাজ করবে না।


রে, আবার সম্পাদনা রোলব্যাক করবেন না দয়া করে। আমি আপনার বিন্যাস স্থির।
3498DB

1

আমি এই প্রশ্নের উত্তর অনেক বছর আগে উত্তর পেয়েছিলাম, কিন্তু আমি সম্প্রতি একই সমস্যা সমাধান করেছি, এবং আমি মনে করি আমি প্রশ্ন এবং রে এম এর উত্তর উভয় কিছু স্বচ্ছতা যুক্ত করতে পারি ...

একটি অনুরূপ দুই-ড্রাইভ RAID5 চলমান সুপারব্লক সংস্করণ 1.2, যেমন রে এম বলেছেন, বাইনারি 1 RAID1 এর মতো। যাইহোক, v0.9 এর বিপরীতে, 1.x মেটাডেটা সহ অ্যারে ডিভাইসটির শুরু এবং অ্যারের ডেটা সূত্রের মধ্যে একটি ফাঁক রেখে যেতে পারে। সুতরাং, দুটি ডিভাইসের সমতা যাচাই করার জন্য প্রথমে প্রতিটি উপাদানটির ডাটা অফসেট নির্ধারণ করুন:

mdadm --examine /dev/sdb1
mdadm --examine /dev/sdc1

প্রতিটি ডিভাইসের জন্য আপনাকে এইরকম একটি লাইন দেখতে হবে (ডিফল্টভাবে উভয়ই একইরকম):

Data Offset : 262144 sectors

এই ডিভাইসের তথ্য শুরু হয় যেখানে। এখানে শুরু, কিছু তথ্য অনুলিপি করুন:

dd if=/dev/sdb1 skip=262144 bs=512 count=1024 of=/tmp/b1
dd if=/dev/sdc1 skip=262144 bs=512 count=1024 of=/tmp/c1

এমডি 5 পরিমাণ সমান হওয়া উচিত:

$ md5sum /tmp/b1 /tmp/c1
6b327bb46f25587806d11d50f95ff29b  /tmp/b1
6b327bb46f25587806d11d50f95ff29b  /tmp/c1

যেহেতু ড্রাইভ আসলে একে অপরকে মিরর হিসাবে, আপনি উভয় ব্যর্থ হতে এবং একটি ড্রাইভ সরাতে পারেন, অ্যারে অবনমিত রেখে চলেছে:

mdadm /dev/md1 --fail /dev/sdc1 --remove /dev/sdc1
mdadm --zero-superblock /dev/sdc1

অথবা একটি একক-ডিস্ক RAID দিয়ে তাজা শুরু করুন 1:

mdadm --stop /dev/md1
mdadm --create /dev/md1 --level 1 --raid-devices 1 --force /dev/sdb1
mdadm --zero-superblock /dev/sdc1

উল্লেখ্য, RAID1 এর দুটি-ডিস্ক RAID5 এর বাইনারি সমতুল্য সত্ত্বেও, আপনি সহজেই এটি করতে পারবেন না:

mdadm --grow --raid-devices 1

দুটি ড্রাইভ RAID5 সঙ্গে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.