تعریف RAID

RAID مخفف Redundant Array of Independent Disks مکانیزمی است که در آن مجموعه‌ای از دیسک‌ها به‌صورت زنجیره‌ای به هم متصل می‌شوند و موجب افزایش کارایی و دسترسی‌پذیری به داده‌ها و همچنین تحمل خطاپذیری و بازیابی داده‌های ذخیره شده می‌شود.

انواع RAID

  • Hardware RAID: که به‌صورت سخت‌افزاری و مستقل از سیستم‌عامل عمل می‌کند و تمامی عملیات توسط RAID Controller سیستم انجام می‌شود.
  • Software RAID: که توسط سیستم‌عامل و نرم‌افزار پیکربندی و کنترل می‌شود.

 

سطوح RIAD

RAID می‌تواند به‌صورت‌های مختلفی پیاده‌سازی شود که در ادامه به معرفی کاربردی‌ترین آن‌ها می‌پردازیم.

  • RAID 0 یا Striping: در این روش داده‌ها به‌صورت تکه‌تکه شده و هر تکه در یک دیسک ذخیره می‌شود که موجب افزایش سرعت خواندن/نوشتن می گردد. در این روش امکان تحمل خطاپذیری و بازیابی داده‌ها وجود ندارد و در صورت خرابی یکی از دیسک ها داده‌ها از بین خواهد رفت.
  • RAID 1 یا Mirroring: در این روش داده‌های نوشته شده روی یک دیسک عیناً روی دیسک دیگر کپی می‌شود. در این روش سرعت خواندن/نوشتن افزایش نمی‌یابد ولی امکان تحمل خطاپذیری و بازیابی داده‌ها در زمانی خرابی یکی از دیسک‌ها وجود دارد.
  • RAID 5 یا Striped with Parity: در این روش داده‌ها همانند روش Striping به‌صورت تکه‌تکه شده بین دیسک‌ها تقسیم و ذخیره می‌شود با این تفاوت که علاوه بر داده‌های ذخیره شده نوعی داده تحت عنوان Parity نیز در دیسک‌ها ذخیره می‌گردد. در این روش سرعت خواندن/نوشتن افزایش می‌یابد و همچنین بدلیل استفاده از Parity امکان تحمل خطاپذیری و بازیابی داده‌ها در زمان خرابی یکی از دیسک‌ها وجود دارد.
  • RAID 6 یا Striped with Double Parity: این روش در‌واقع نسخه توسعه یافته RAID 5 می‌باشد با این‌ تفاوت که در این روش از دو بلوک مجزا Parity استفاده می‌شود که موجب می‌شود امکان تحمل خطاپذیری و بازیابی داده‌ها افزایش یابد.

هرچند که انواع دیگری از RAID را هم میتوان نام برد .

 

در این آموزش به نصب و راه‌اندازی RAID نرم‌افزاری در لینوکس خواهیم پرداخت.

 

نصب و راه‌اندازی RIAD در لینوکس

برای راه اندازی RAID در لینوکس ما از ابزار mdadm استفاده میکنیم.این ابزار در بعضی از توزیع های لینوکس به صورت پیش فرض نصب است.در صورت نصب نبودن ما میتوانیم با دستور زیر ان را نصب کنیم.

yum install  mdadm 

اگر لینوکس شما RedhatBase باشد با این دستور میتوان نرم افزار را نصب نمود.در صورا ستفاده از توزیع های DebianBase با دستور زیر میتوان عمل نصب را انجام داد:

apt-get  install   mdadm

RAID 0 :

برای راه اندازی RAID 0 ما حداقل نیاز به ۲ دیسک داریم.در این سناریو ما قبلا ۲ دیسک مجازی به سیستم خود اضافه کرده ایم(بجز دیسک اصلی)

برای مشاهده وضعیت دیسک های خود از دستور زیر استفاده میکنیم :

fdisk  -l

 

همان گونه که مشاهده میکنید دیسک های اضافه شده را با نام های sdb  و sdc  میشناسد که هر کدام ۲ گیگابایت فضا دارد.

برای این که بتوانیم از این دیسک ها در RADI خود استفاده کنیم اول باید ان ها را پارتیشن بندی کنیم.

مراحل پارتیشنبندی دیسک ها گام به گام توضیح داده شده است:

 

  1. دستور fdisk /dev/sdb را وارد کنید و Enter را بزنید
  2. در قسمت command حرف به معنی new partition را وارد کنید و Enter را بزنید
  3. در قسمت Select حرف به معنی primary partition را وارد کنید و Enter را بزنید
  4. در قسمت partition number عدد ۱ و سپس Enter را بزنید
  5. در قسمت First Sector کلید Enter را بزنید
  6. در قسمت Last Sector با توجه به اینکه ما می خواهیم همه دیسک مورد استفاده قرار بگیرد Enter بزنید
  7. اینبار در قسمت command حرف برای تعیین type یا نوع پارتیشن را وارد کنید
  8. در قسمت Hex Code حروف fd را وارد کنید ، fd به پارتیشن قابلیت RAID می دهد
  9. در قسمت command اینبار حرف برای write شدن اطلاعات را وارد و Enter کنیم

 

 

این مراحل را برای دیسک دیگر یعنی sdc هم تکرار میکنیم.الان ما ۲ دیسک داریم که میتوانیم از انها در RAID استفاده کنیم.

با زدن دستور زیر میتوان خروجی کارها را مشاهده کرد .

fdisk  -l  

 

همان طور که مشاهده میکنیم خروجی کارهای مراحل قبل ۲ پارتیشن با نام های sdb1  و sdc1  میباشد.حالا میتوان از این ۲ پارتیشن در RAID استفاده کرد.

در دستور زیر ما با استفاده از mdadm دو عدد هارد دیسک یا device را تبدیل به RAID Level 0 می کنیم که این دو هارد دیسک در انتها با فاصله مشخص شده اند ، در دستور پایین در نهایت هر دو پارتیشن ما به نامهای dev/sdb1/ و dev/sdc1/ تبدیل به یک پارتیشن RAID سطح ۰ به نام dev/md0/ خواهند شد :

mdadm   –create  /dev/md0   –level=0  –raid-devices=2  /dev/sdb1  /dev/sdc1

 

 

با استفاده از دستور زیر  می توانید جزئیات RAID ایجاد شده را مشاهده کنید ، همانطور که در تصویر زیر مشاهده می کنید RAID Level 0 ما با استفاده از دو هارد دیسک۲ گیگابایتی با ظرفیت۴ گیگابایت ایجاد شده است اما هنوز بصورت کامل قادر به استفاده از آن نمی باشیم :

mdadm –detail /dev/md0

ما در حال حاضر یک دستگاه جدید به سیستم به نام dev/md0/ اضافه کرده ایم که دارای ۴ گیگابایت ظرفیت است و تشکیل شده از دو عدد هارد دیسک به نام های dev/sdc1/ و dev/sdb1/ است . اما این دیسک واقعی نیست و همه ما می دانیم که از دو عدد دیسک ایجاد شده است و به همین دلیل dev/md0/ را به عنوان Virtual Disk می شناسیم. حالا طبق معمول ما باید این Virtual Disk را فرمت و پارتیشن بندی کنیم و فایل سیستم  آن را بر حسب علاقه انتخاب کنیم ، طبق دستور زیر ما فایل سیستم ext3 را برای این پارتیشن مجازی انتخاب می کنیم :

mkfs.ext3  /dev/md0

 در نهایت کاری که باید طبق معمول برای استفاده از آن بکنیم این است که این Virtual Directory را به یک Directory بر روی سیستم Mount کنیم تا قابل استفاده باشد ، برای اینکار کافیست دستورات زیر را وارد کنید ، ما ابتدا یک دایرکتوری به نام raid0 ایجاد می کنیم و در نهایت dev/md0/ را به آن mount می کنیم:

mkdir   /itnovin

mount /dev/md0   /itnovin

 

در این بخش اموزش راه اندازی RAID در لینوکس را به صورت گام به گام کار کردیم.در بخش های بعدی اموزش راه اندازی RAID1 و RAID 5 و RAID 10 را با هم کار خواهیم کرد.

 

Leave a Comment