কম্পিউটার

MDADM ব্যবহার করে লিনাক্সে সফ্টওয়্যার RAID কনফিগার করা হচ্ছে

MDADM একটি টুল যা লিনাক্সে সফ্টওয়্যার RAID তৈরি এবং পরিচালনা করতে দেয়। এই নিবন্ধে আমরা দেখাব কিভাবে mdadm (একাধিক ডিস্ক অ্যাডমিন) ব্যবহার করতে হয় RAID অ্যারে স্টোরেজ তৈরি করতে, ডিস্ক যোগ করতে এবং পরিচালনা করতে, একটি হট-স্পেয়ার যোগ করতে এবং আরও অনেক কিছু করতে।

mdadm:কিভাবে একটি সফটওয়্যার রেইড ম্যানেজমেন্ট টুল ইনস্টল করবেন?

mdadm ইনস্টল করতে, ইনস্টলেশন কমান্ডটি চালান:

  • CentOS/Red Hat এর জন্য (yum/dnf ব্যবহার করা হয়):yum install mdadm
  • উবুন্টু/ডেবিয়ানের জন্য:apt-get install mdadm

mdadm এবং নির্ভরশীল লাইব্রেরি ইনস্টল করা হবে:

 লেনদেন চলমান ইন্সটল :libreport-filesystem-2.1.11-43.el7.centos.x86_64 1/2ইনস্টল করা হচ্ছে :mdadm-4.1-1.el7.x86_64 2/2 যাচাই করা হচ্ছে :mdadm-4.1-1.el7.V626ing/ :libreport-filesystem-2.1.11-43.el7.centos.x86_64 2/2ইনস্টল করা হয়েছে:mdadm.x86_64 0:4.1-1.el7নির্ভরতা ইনস্টল করা হয়েছে:libreport-filesystem.x86_64 0:2.1.11.43centel! /প্রে> 

লিনাক্সে ২টি ডিস্ক ব্যবহার করে RAID 1 (মিরর) তৈরি করা হচ্ছে

আমার লিনাক্স সার্ভারে দুটি অতিরিক্ত ডিস্ক ইনস্টল করা আছে এবং আমি সেগুলিতে একটি সফ্টওয়্যার আয়না তৈরি করতে চাই (RAID1)। ড্রাইভগুলো খালি। প্রথমত, RAID-এ যোগ করার জন্য আপনাকে ডিস্কের সমস্ত সুপারব্লক শূন্য করতে হবে:

# mdadm --zero-superblock --force /dev/vd{b,c}

আমার দুটি পরিষ্কার ডিস্ক আছে:vdb এবং vdc .

MDADM ব্যবহার করে লিনাক্সে সফ্টওয়্যার RAID কনফিগার করা হচ্ছে

mdadm:অচেনা md কম্পোনেন্ট ডিভাইস - /dev/vdbmdadm:অচেনা md কম্পোনেন্ট ডিভাইস - /dev/vdc

এই তালিকার মানে হল যে কোনও ডিস্কই কখনও অ্যারেতে যোগ করা হয়নি৷

একটি সফ্টওয়্যার তৈরি করতে RAID1 দুটি ডিস্ক থেকে ডিভাইসে /dev/md0, এই কমান্ডটি ব্যবহার করুন:

# mdadm --create --verbose /dev/md0 -l 1 -n 2 /dev/vd{b,c}

যেখানে ‘-l 1 ' হল অ্যারের ধরন (আমাদের ক্ষেত্রে RAID1,

এবং ‘-n 2 ' অ্যারেতে যোগ করা ডিস্কের সংখ্যা।

আপনি যদি RAID0 তৈরি করতে চান (স্ট্রাইপ) বিভিন্ন ফিজিক্যাল ডিস্কের মধ্যে সমান্তরাল কমান্ডের কারণে পড়ার/লেখার গতি উন্নত করতে, এই কমান্ডটি ব্যবহার করুন:

# mdadm --create --verbose /dev/md0 --level=0 --raid-devices=2 /dev/vdb /dev/vdc

RAID 5 এর জন্য তিন বা ততোধিক ড্রাইভের:

# mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/vdb /dev/ vdc /dev/vdd

আপনি কমান্ডগুলি প্রবেশ করার পরে, ক্রিয়াগুলি নিশ্চিত করুন এবং সফ্টওয়্যার RAID তৈরি হবে:

MDADM ব্যবহার করে লিনাক্সে সফ্টওয়্যার RAID কনফিগার করা হচ্ছে

আপনি যদি আপনার ডিস্ক সম্পর্কে তথ্য তালিকাভুক্ত করেন, আপনি আপনার RAID md0 ড্রাইভ দেখতে পাবেন:

# lsblk

NAME MAJ:MIN RM SIZE RO Type MOUNTPOINTvda 253:0 0 20G 0 disk├─vda1 253:1 0 512M 0 অংশ /boot└─vda2 253:2 0 19.5G /620 পার্ট disk└─md0 9:0 0 20G 0 raid1vdc 253:32 0 20G 0 disk└─md0 9:0 0 20G 0 raid1

আপনার RAID1 ড্রাইভে একটি ext4 ফাইল সিস্টেম তৈরি করতে, এই কমান্ডটি চালান:

# mkfs.ext4 /dev/md0

MDADM ব্যবহার করে লিনাক্সে সফ্টওয়্যার RAID কনফিগার করা হচ্ছে

একটি ব্যাকআপ ডিরেক্টরি তৈরি করুন এবং এতে RAID ডিভাইস মাউন্ট করুন:

# mkdir /backup
# mount /dev/md0 /backup/
# df -h

ফাইলসিস্টেম সাইজ ব্যবহার করা হয়েছে Avail Use% Mounted on................................../dev/md0 20G 45M 19G 1% /backup 

কোনো ত্রুটি ছাড়াই অ্যারে মাউন্ট করা হয়েছে। প্রতিবার ম্যানুয়ালি ডিভাইসটি মাউন্ট না করার জন্য, fstab-এ নিম্নলিখিত পরিবর্তনগুলি করুন :

# nano /etc/fstab

/dev/md0 /backup ext4 ডিফল্ট 1 2

MDADM ব্যবহার করে লিনাক্সে সফ্টওয়্যার RAID কনফিগার করা হচ্ছে

কিভাবে স্টেট দেখবেন বা RAID অ্যারের অখণ্ডতা পরীক্ষা করবেন?

অ্যারেতে ডেটা অখণ্ডতা পরীক্ষা করতে, নিম্নলিখিত কমান্ডটি ব্যবহার করুন:

#echo 'check' > /sys/block/md0/md/sync_action

তারপর নিম্নলিখিত ফাইলের আউটপুট দেখুন:

#cat /sys/block/md0/md/mismatch_cnt

যদি আপনি 0 পান , আপনার অ্যারে ঠিক আছে:

MDADM ব্যবহার করে লিনাক্সে সফ্টওয়্যার RAID কনফিগার করা হচ্ছে

চেক বন্ধ করতে, নিম্নলিখিতটি চালান:

#echo 'idle' > /sys/block/md0/md/sync_action

সার্ভারে উপলব্ধ সমস্ত RAID-এর অবস্থা পরীক্ষা করতে, এই কমান্ডটি ব্যবহার করুন:

# cat /proc/mdstat

ব্যক্তিত্ব:[raid1]md0 :সক্রিয় raid1 vdc[1] vdb[0]20954112 ব্লক সুপার 1.2 [2/2] [UU] 

আপনি এই কমান্ডটি ব্যবহার করে নির্দিষ্ট RAID সম্পর্কে আরও বিস্তারিত তথ্য দেখতে পারেন:

# mdadm -D /dev/md0

MDADM ব্যবহার করে লিনাক্সে সফ্টওয়্যার RAID কনফিগার করা হচ্ছে

কমান্ড তালিকার প্রধান আইটেমগুলি বিবেচনা করা যাক:

  • সংস্করণ – মেটাডেটা সংস্করণ
  • সৃষ্টির সময় – RAID তৈরির তারিখ এবং সময়
  • রেড লেভেল – একটি RAID অ্যারের স্তর
  • অ্যারের আকার – RAID ডিস্ক স্পেসের আকার
  • ব্যবহৃত ডেভ সাইজ - ডিভাইস দ্বারা ব্যবহৃত স্থানের আকার
  • রেড ডিভাইস – RAID-এ ডিস্কের সংখ্যা
  • মোট ডিভাইস – হল RAID-এ যোগ করা ডিস্কের সংখ্যা
  • রাজ্য – বর্তমান অবস্থা (পরিষ্কার — এটা ঠিক আছে)
  • সক্রিয় ডিভাইস – RAID এ সক্রিয় ডিস্কের সংখ্যা
  • ওয়ার্কিং ডিভাইসগুলি৷ – RAID-এ কর্মরত ডিস্কের সংখ্যা
  • ব্যর্থ ডিভাইসগুলি৷ – RAID এ ব্যর্থ ডিভাইসের সংখ্যা
  • অতিরিক্ত ডিভাইস – RAID এ অতিরিক্ত ডিস্কের সংখ্যা
  • সঙ্গতি নীতি – হল প্যারামিটার যা ব্যর্থতার পরে সিঙ্ক্রোনাইজেশনের ধরণ সেট করে, RSync হল RAID অ্যারে পুনরুদ্ধারের পরে একটি সম্পূর্ণ সিঙ্ক্রোনাইজেশন (বিটম্যাপ, জার্নাল, ppl মোড উপলব্ধ)
  • UUID - রেইড অ্যারে শনাক্তকারী

আপনি fdisk ব্যবহার করে সংক্ষিপ্ত তথ্য দেখতে পারেন :

# fdisk -l /dev/md0

ডিস্ক /dev/md0:21.5 GB, 21457010688 বাইট, 41908224 সেক্টর ইউনিট =1 * 512 =512 বাইট সেক্টর সাইজ (লজিক্যাল/ফিজিক্যাল):512 বাইট / 512 বাইটI/O 5 মিনিটের সাইজ/অপটিম সাইজ 512 বাইট

RAID এ একটি ডিস্ক ব্যর্থতা থেকে পুনরুদ্ধার করা, ডিস্ক প্রতিস্থাপন

যদি একটি RAID-এর একটি ডিস্ক ব্যর্থ হয় বা ক্ষতিগ্রস্ত হয়, তাহলে আপনি এটি অন্য একটি দিয়ে প্রতিস্থাপন করতে পারেন। প্রথমত, ডিস্কটি ক্ষতিগ্রস্থ হয়েছে কিনা তা খুঁজে বের করুন এবং প্রতিস্থাপন করা দরকার।

# cat /proc/mdstat

ব্যক্তিত্ব:[raid1]md0 :সক্রিয় raid1 vdb[0]20954112 ব্লক সুপার 1.2 [2/1] [U_]

পূর্ববর্তী কমান্ড থেকে আপনি দেখতে পারেন যে শুধুমাত্র একটি ডিস্ক সক্রিয় আছে। [U_ ] এর মানে একটি সমস্যা বিদ্যমান। যখন উভয় ডিস্ক সুস্থ থাকে, তখন আউটপুট হয় [UU ]।

RAID সম্পর্কে বিস্তারিত তথ্যও দেখায় যে কিছু সমস্যা আছে:

# mdadm -D /dev/md0

/dev/md0:সংস্করণ :1.2সৃষ্টির সময় :মঙ্গল 31 ডিসেম্বর 12:39:22 2020Raid স্তর :raid1Array সাইজ :20954112 (19.98 GiB 21.46 GB) ব্যবহৃত ডেভ সাইজ :209654GBT29654Got.196546 জিবি ডিভাইস ডিভাইস :2Persistence :Superblock is persistent Update Time :Tue Dec 31 14:41:13 2020State :clean, degradedactive Devices :1working Devices :1Feled Devices :1State :clean, degraded

- শেষ লাইনটি দেখায় যে RAID-এর একটি ডিস্ক ক্ষতিগ্রস্ত হয়েছে৷

আমাদের ক্ষেত্রে, /dev/vdc প্রতিস্থাপন করা আবশ্যক। অ্যারে পুনরুদ্ধার করতে, আপনাকে অবশ্যই ক্ষতিগ্রস্ত ডিস্কটি সরিয়ে একটি নতুন যোগ করতে হবে।

ব্যর্থ ড্রাইভ সরান:

# mdadm /dev/md0 --remove /dev/vdc

অ্যারেতে একটি নতুন ডিস্ক যোগ করুন:

# mdadm /dev/md0 --add /dev/vdd

আপনি একটি নতুন ডিস্ক যোগ করার পরে ডিস্ক পুনরুদ্ধার স্বয়ংক্রিয়ভাবে শুরু হবে:

# mdadm -D /dev/md0

/dev/md0:সংস্করণ :1.2সৃষ্টির সময় :মঙ্গল 31 ডিসেম্বর 12:39:22 2020Raid স্তর :raid1Array সাইজ :20954112 (19.98 GiB 21.46 GB) ব্যবহৃত ডেভ সাইজ :209654GBT29654Got.196546 জিবি ডিভাইস ডিভাইস :2Persistence :Superblock is persistent Update Time :Tue Dec 31 14:50:20 2020State :ক্লিন, ডিগ্রেডেড, রিকভারিং অ্যাক্টিভ ডিভাইসস :1ওয়ার্কিং ডিভাইসস :2ফেইল্ড ডিভাইসস :0স্পেয়ার ডিভাইসস :1Consillocence:Reconsiltos14 হোস্ট হোস্ট করতে 1)UUID :9d59b1fb:7b0a7b6d:15a75459:8b1637a2ইভেন্টস :42Number Major Minor RaidDevice State0 253 16 0 সক্রিয় সিঙ্ক /dev/vdb2 253 48 /dev/vdb2 253 48 1/dev/vdb2 253 48 স্টেট পুনঃনির্মাণ 1/dev/48 স্পেয়ার স্টার্ট পুনঃনির্মাণ স্টাডিল/ডিডি-এসপি পুনঃনির্মাণ 1/1/1/2000% স্পেয়ার স্টার্ট শো করা হয়েছে। পুনঃনির্মাণ /dev/vdd অ্যারেতে কোন ডিস্ক যুক্ত করা হচ্ছে তা দেখায়৷ অ্যারেটি পুনর্নির্মাণের পরে, এর অবস্থা পরীক্ষা করুন:রাজ্য :ক্লিনঅ্যাক্টিভ ডিভাইস :2 ওয়ার্কিং ডিভাইস :2 ব্যর্থ ডিভাইস :0 অতিরিক্ত ডিভাইস :0

লিনাক্সে সফ্টওয়্যার RAID-এ কীভাবে ডিস্ক যুক্ত বা সরাতে হয়?

আপনি যদি পূর্বে তৈরি mdadm RAID ডিভাইসটি সরাতে চান তবে এটি আনমাউন্ট করুন:

# umount /backup

তারপর এই কমান্ডটি চালান:

# mdadm -S /dev/md0

mdadm:stop /dev/md0

RAID অ্যারে ধ্বংস করার পরে, এটি একটি পৃথক ডিস্ক ডিভাইস হিসাবে সনাক্ত করা হবে না:

# mdadm -S /dev/md0

mdadm:খোলার ত্রুটি /dev/md0:এরকম কোন ফাইল বা ডিরেক্টরি নেই

আপনি সমস্ত সংযুক্ত ড্রাইভ স্ক্যান করতে পারেন এবং ফিজিক্যাল ড্রাইভের মেটাডেটা অনুযায়ী পূর্বে অপসারিত (ব্যর্থ) RAID ডিভাইস পুনরায় তৈরি করতে পারেন। নিম্নলিখিত কমান্ড চালান:

# mdadm --assemble —scan

MDADM ব্যবহার করে লিনাক্সে সফ্টওয়্যার RAID কনফিগার করা হচ্ছে

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

# mdadm /dev/md0 --fail /dev/vdc

তারপর আপনি এই কমান্ড ব্যবহার করে এটি অপসারণ করতে পারেন:

# mdadm /dev/md0 --remove /dev/vdc

আপনি একটি নতুন ডিস্ক যোগ করতে পারেন, ঠিক যেমন একটি ব্যর্থ ড্রাইভের ক্ষেত্রে:

# mdadm /dev/md0 --add /dev/vdd

কীভাবে একটি MDADM অ্যারেতে একটি হট-স্পেয়ার ড্রাইভ যুক্ত করবেন?

আপনি একটি অতিরিক্ত হট-স্পেয়ার যোগ করতে পারেন সক্রিয় ডিস্কগুলির একটি ব্যর্থ হলে দ্রুত RAID অ্যারে পুনর্নির্মাণের জন্য ড্রাইভ করুন। আপনি যে এমডি ডিভাইসটি চান তাতে একটি বিনামূল্যের ডিস্ক যোগ করুন:

# mdadm /dev/md0 --add /dev/vdc

আপনি যখন RAID স্থিতি পরীক্ষা করবেন, তখন আমরা ডিস্কটিকে অতিরিক্ত হিসাবে দেখতে পাব:

MDADM ব্যবহার করে লিনাক্সে সফ্টওয়্যার RAID কনফিগার করা হচ্ছে

হট-সোয়াপ কাজ করে তা নিশ্চিত করতে, যেকোনো ড্রাইভকে ব্যর্থ হিসাবে চিহ্নিত করুন এবং RAID স্থিতি পরীক্ষা করুন:

# mdadm /dev/md0 --fail /dev/vdb

চেক করার পরে, আপনি দেখতে পাবেন যে অ্যারের পুনর্নির্মাণ শুরু হয়েছে৷

MDADM ব্যবহার করে লিনাক্সে সফ্টওয়্যার RAID কনফিগার করা হচ্ছে

/dev/vdb ডিস্ক একটি ব্যর্থ হিসাবে চিহ্নিত করা হয়েছে, এবং হট-স্পেয়ার ডিস্ক সক্রিয় RAID ডিস্কগুলির মধ্যে একটি হয়ে উঠেছে। তাই পুনর্নির্মাণের প্রক্রিয়া শুরু হয়েছে৷

RAID-এ একটি অতিরিক্ত অপারেবল ডিস্ক যোগ করতে, আপনাকে অবশ্যই এই দুটি ধাপ অনুসরণ করতে হবে।

অ্যারেতে একটি খালি ড্রাইভ যোগ করুন:

# mdadm /dev/md0 --add /dev/vdb

এখন এই ডিস্কটি হট-স্পেয়ার হিসাবে প্রদর্শিত হবে। এটি সক্রিয় করতে, md RAID ডিভাইসটি প্রসারিত করুন:

# mdadm -G /dev/md0 —raid-devices=3

তারপর অ্যারেটি পুনর্নির্মাণ করা হবে:

MDADM ব্যবহার করে লিনাক্সে সফ্টওয়্যার RAID কনফিগার করা হচ্ছে

পুনর্নির্মাণের পরে, সমস্ত ডিস্ক সক্রিয় হয়ে যায়:

সংখ্যা মেজর মাইনর রেইডডিভাইস স্টেট3 253 32 0 সক্রিয় সিঙ্ক /dev/vdc2 253 48 1 সক্রিয় সিঙ্ক /dev/vdd4 253 16 2 সক্রিয় সিঙ্ক /dev/vdb

কিভাবে একটি MDADM RAID অ্যারে সরাতে হয়?

আপনি যদি স্থায়ীভাবে আপনার সফ্টওয়্যার RAID ড্রাইভটি সরাতে চান তবে নিম্নলিখিত স্কিমটি ব্যবহার করুন:

# umount /backup – ডিরেক্টরি থেকে অ্যারে আনমাউন্ট করুন

# mdadm -S /dev/md0 — RAID ডিভাইস বন্ধ করুন

তারপর ডিস্কের সমস্ত সুপারব্লক সাফ করুন যেগুলি থেকে এটি নির্মিত হয়েছিল:

# mdadm --zero-superblock /dev/vdb
# mdadm --zero-superblock /dev/vdc

Mdmonitor:RAID State Monitoring &Email Notifications

mdmonitor RAID এর অবস্থা নিরীক্ষণ করতে ডেমন ব্যবহার করা যেতে পারে। প্রথমে, আপনাকে অবশ্যই /etc/mdadm.conf তৈরি করতে হবে বর্তমান অ্যারে কনফিগারেশন ধারণকারী ফাইল:

# mdadm –detail –scan > /etc/mdadm.conf

mdadm.conf ফাইলটি স্বয়ংক্রিয়ভাবে তৈরি হয় না। আপনাকে অবশ্যই এটি তৈরি এবং আপডেট করতে হবে।

/etc/mdadm.conf-এর শেষে অ্যাডমিনিস্ট্রেটরের ইমেল ঠিকানা যোগ করুন যেখানে আপনি কোনো RAID সমস্যার ক্ষেত্রে বিজ্ঞপ্তি পাঠাতে চান:

MAILADDR raidadmin@woshub.com

তারপর systemctl:

ব্যবহার করে mdmonitor পরিষেবা পুনরায় চালু করুন

# systemctl restart mdmonitor

তারপরে mdadm ত্রুটি বা ত্রুটিপূর্ণ ডিস্ক থাকলে সিস্টেম আপনাকে ই-মেইলের মাধ্যমে অবহিত করবে৷

নিষ্ক্রিয় MDADM RAID

হার্ডওয়্যার ব্যর্থতা বা জরুরী শাটডাউনের ক্ষেত্রে, সফ্টওয়্যার RAID অ্যারে নিষ্ক্রিয় হয়ে যেতে পারে . সমস্ত ড্রাইভ নিষ্ক্রিয় হিসাবে চিহ্নিত করা হয়েছে, কিন্তু কোনো ত্রুটি নেই৷

# cat /proc/mdstat

ব্যক্তিত্ব:[রৈখিক] [মাল্টিপাথ] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]md0 :নিষ্ক্রিয় vdc[1] vdb[0]20954112 অতি-ব্যবহৃত ডিভাইস ব্লক করে: 

এই ক্ষেত্রে, আপনাকে এই কমান্ডটি ব্যবহার করে অ্যারে বন্ধ করতে হবে:

# mdadm --stop /dev/md0

এবং এটি পুনরায় একত্রিত করুন:

# mdadm --assemble --scan –force

যদি md ডিভাইসটি /etc/fstab-এ নিবন্ধিত হয়, তাহলে এই কমান্ডটি ব্যবহার করে পুনরায় মাউন্ট করুন:

# mount -a

ইতিমধ্যে ইনস্টল করা OS-এ একটি সফ্টওয়্যার RAID তৈরি করার কিছু উপায় রয়েছে। এই ক্ষেত্রে, আপনাকে ম্যানুয়ালি একটি নতুন ডিস্কে সমস্ত পার্টিশন টেবিল কপি করতে হবে, এবং ম্যানুয়ালি সিস্টেম ডিস্কের বিষয়বস্তুগুলিকে একটি ডিস্ক থেকে গঠিত RAID-এ সরাতে হবে। তারপর প্রথম ডিস্কটি পরিষ্কার করুন এবং এটি আপনার RAID-এ যোগ করুন, initramfs এবং GRUB লোডার সম্পাদনা করুন। তাই সার্ভার স্থাপনের সময় একটি সফ্টওয়্যার RAID-এ CentOS ইনস্টলেশনের মোড নির্বাচন করা ভাল।

mdadm লিনাক্সে সফ্টওয়্যার RAID পরিচালনা করা সহজ করে তোলে। এই নিবন্ধে আমি টুলের সাথে কাজ করার সময় প্রধান জিনিসগুলি বর্ণনা করেছি, এবং mdadm ব্যবহার করে RAID-এর সাথে কাজ করার সময় উদ্ভূত সাধারণ প্রশ্নগুলি কভার করেছি৷


  1. কিভাবে OpenSSL ব্যবহার করে লিনাক্সে SSL সার্টিফিকেট তৈরি করবেন

  2. লিনাক্সে ডিস্ক স্পেস খালি করতে ডু ব্যবহার করা

  3. কালি লিনাক্স ব্যবহার করে কীভাবে একটি অ্যান্ড্রয়েড ফোন অ্যাক্সেস করবেন

  4. আপনার কি সত্যিই লিনাক্সে অ্যান্টিভাইরাস সফ্টওয়্যার দরকার?