تکنولوژی RAID و انواع آن
تاریخچه RAID
RAID نخستین بار در سال ۱۹۸۷ توسط دیوید پترسون، رندی کتز و گارث گیبسون مطرح شد. این افراد ۶ حالت RAID با ویژگیهای متفاوت (که از ۰ تا ۵ نامگذاری شدند) در نظر داشتند که البته امروزه تعداد حالات raid افزایش یافته است. البته استفاده از دیسکهای افزونه پیش از این هم مورد بحث قرار گرفته بود. IBM در سال ۱۹۷۷ پتنتی در این زمینه ثبت کرد که بعدها RAID 4 نام گرفت. در سال ۱۹۸۳ شرکت Digital Equipment درایوهایی با قابلیت raid 1 را به بازار عرضه کرد. در سال ۱۹۸۶ ، IBM پتنت دیگری ثبت نمود که امروزه RAID 5 شناخته میشود.
تکنولوژی RAID چیست؟
اصطلاح RAID برگرفته از عبارت Redundant Array of Independent Disks به معنای آرایهای افزونه از دیسکهای مستقل و مجزاست. این تکنولوژی برای مجازیسازی متعدد هارد دیسکهای مستقل به یک یا چند آرایه برای بهبود عملکرد، ظرفیت و دسترسی است. دلیل استفاده از تکنولوژی RAID این است که با قرار دادن داده ها بر روی بیش از یک عدد هارد دیسک، عملیات ورودی و خروجی به همپوشانی خاص میرسد که نتیجه آن افزایش کارایی است و افزایش کارایی سیستم نیز یعنی افزایش سرعت خواندن و نوشتن.
اما هدف تکنولوژی RAID ، ریکاور کردن دیتا در اثر Fail شدن هارد دیسک است. یعنی اگر یک هارددیسک دچار مشکل شود سیستم میتواند کار سرویسدهی خود را ادامه دهد. سیستمعامل، هاردهای RAID شده را به عنوان یک هارد واحد شناسایی خواهد کرد.
انواع تکنیکهای ذخیره سازی در RAID
Striping : تقسیم اطلاعات به بخشهایی با اندازههای مشخص، سپس نوشتن این اطلاعات به ترتیب در هارد دیسکها. این تکنیک باعث افزایش فضای سیستم ذخیره سازی میگردد.
Mirroring : تکنیکی برای نوشتن یک کپی از اطلاعات به طور همزمان بر روی چندین هارد دیسک است. این تکنیک باعث جلوگیری در از بین رفتن اطلاعات میشود.
Parity : در این تکنیک همانند تکنیک Striping اطلاعات به بخشهای مساوی شکسته میشوند. همچنین یک کد parity (توازن) تولید و در یک یا چند هارد دیسک ذخیره میگردد. اطلاعات parity به سیستم RAID اجازه میدهد در صورتی که اطلاعات هارد دیسک دچار مشکل شده باشد، آنها را شناسایی و بازسازی کند.
نکته : تمام تکنیکهای دیگر RAID، بر اساس این سه تکنیک striping، mirroring، parity و یا ترکیبی از این سه عمل میکنند.
انواع روش های ایجاد RAID
RAID نرمافزاری یا Software RAID :
در روش نرم افزاری از ابزارهای خود سیستم عامل برای ایجاد RAID استفاده می شود بنابراین به جهت بهره بردن از این قابلیت، نیازمند یک سیستم عامل می باشیم. هارد دیسک مورد استفاده در این روش همان دیسکی است که سیستم عامل روی آن قرار دارد. این روش به دلیل اینکه نیازی به سخت افزار مجزا ندارد از لحاظ اقتصادی به صرفه تر است و برای محیط تست و تمرین و موارد آموزشی مناسب می باشد. اما به دلیل اینکه در این روش خود سیستم عامل وظیفه اجرا و مدیریت RAIDها را بر عهده دارد، به دلیل استفاده از منابع سیستم، باعث کندی و کاهش کارایی می شود که البته این کاهش کارایی تا حد زیادی به نوع RAIDی که استفاده می نماییم هم بستگی دارد.
RAID سختافزاری یا Hardware RAID :
RAID سختافزاری بیشتر برای سرورهای سازمانی، تجاری و همچنین هنگامی که میزان تحمل خطا و بهینه شدن کارایی سیستم بسیار مورد اهمیت کاربراست، مورد استفاده قرار میگیرد. در این روش نیازمند تهیه یک قطعه سخت افزاری مجزا به نام RAID Controller می باشیم تا کار ایجاد و مدیریت RAID را برایمان انجام دهد. البته این Controller های سخت افزاری معمولا روی سرورهای سخت افزاری وجود دارد. RAIDهای سخت افزاری قابل اعتماد تر ازRAIDهای نرم افزاری می باشند و به نرم افزار یا سیستم عامل وابسته نیستند.
در روش نرم افزاری ابتدا نیاز به نصب سیستم عامل و سپس راه اندازی RAID است ولی در سخت افزاری قبل از راه اندازی سیستم عامل میتوان RAID ایجاد نمود. در RAID سخت افزاری به دلیل اینکه خود RAID Controller امور مربوط به RAID و نحوه تقسیم دیتا را برعهده دارد، سیستم عامل و منابع سیستم را درگیر نمی کند و در نتیجه باعث کاهش کارایی سیستم نمی شود. اما برخلاف RAID نرم افزاری، RAIDسخت افزاری نیاز به سخت افزار خاص دارد که به همین علت، باعث افزایش هزینه می شود.
RAID Controller :
وظیفه مدیریت و کنترل دیسکهای متصل شده به هم را بر عهده دارد. این کنترلر هوشمند در دو مدل داخلی و خارجی طراحی شدهاست. مدل داخلی آن در داخل سرور و به برد اصلی سرور متصل میشود و مدل دیگر آن که به صورت خارجی است، در RAIDهای سطح و مقیاس بالا به کار میرود.
انواع (Raid)
در ابتدا شش نوع RAID با شماره های 0 تا 5 معرفی شد. این اعداد روش های متفاوتی در چگونگی ایجاد آرایه های افزونگی و در واقع نوع RAID کردن را نشان می دهد. تعداد دیگری از انواع RAID باعث شد که انواع RAID کردن به 3 دسته کلی تقسیم شوند:
- استاندارد
- ترکیبی
- غیر استاندارد
RAID های استاندارد :
RAID 0
RAID 0 یا Stripping نواری، اطلاعات را به قسمتهای مساوی به نام Stripe یا Chunk نواری و قطعه قطعه تقسیم کرده و هر قسمت را روی یک هارد ذخیره میکند در واقع بین مجموعه هاردهای موجود در آرایه توزیع و ذخیره میکند. این کار باعث میشود همزمان چندین هد کار کند و در نتیجه کارایی افزایش مییابد. برای تنظیم این نوع RAID به حداقل ۲ هارد دیسک نیاز است. در این نوع RAID هیچ نوعی از افزونگی وجود ندارد و ضریب خطای آن صفر است و در بین تمام RAIDها سریعترین نوع محسوب میشود.
یکی از معایب این نوع RAID امنیت پایین آن است. امنیت پایین (از دست دادن کل اطلاعات در صورت آسیب دیدن یک هارددیسک در این مدل RAID، بر خلاف انواع دیگر RAID هیچ افزونگی ایجاد نمیشود ، اگر یک درایو Fail شود اطلاعات Array از دست میرود. یک خرابی و ایراد ناگهانی RAID میتواند باعث عدم دسترسی به ترابایت ها اطلاعات مهم شود.
برخی از رایج ترین حالات از دست رفتن اطلاعات RAID 0 :
- خرابی هارد دیسکهای داخل RAID
- اشکال در کنترلر RAID
- بروز مسائل الکترونیکی و آسیب PCB( برد مدار چاپی ) هارد
- خرابی Firmware هارددیسک ها
- خرابی و مغایرت سخت افزاری
- خرابی فایل و آسیب های ویروس ها
- فرمت کردن ، پارتیشن بندی ، مشکلات لاجیکالی و خطاهای کاربران
RAID 1
RAID 1 به نام Mirror یا آینهای نیز شناخته میشود و حداقل به ۲ هارد دیسک برای راهاندازی نیاز دارد و تعداد هارد دیسکها باید زوج باشد. در این مدل، ثبت اطلاعات روی هر دو دیسک انجام میشود بدین گونه که دیتا روی یک هارددیسک ذخیره میشود و سپس همان دیتا روی هارد دیسک دیگری نوشته میشود. به عنوان مثال اگر ۴ هارد دیسک را با این روش RAID کنیم، دو هارد دیسک کپی دیتای دو هارد دیسک دیگر میشود.
این مدل ذخیرهسازی دیتا باعث میشود اگر نصف تعداد هارد دیسکها از بین برود سیستم بدون وقفه بتواند کار سرویسدهی خود را انجام دهد. ولی ایراد آن این است که نصف فضای مفید ذخیرهسازی را از دست خواهیم داد و در واقع روشی گرانقیمت اما برای سیستمعامل مناسب است. در این نوع RAID اطلاعات همزمان میتواند از روی دو هارد خوانده شود و به همین علت سرعت خواندن در این ساختار بالاست. اما سرعت نوشتن بر روی هارد در این ساختار هم اندازه سرعت نوشتن اطلاعات بر روی یک تک هارد است.
برخی از رایج ترین حالات از دست رفتن اطلاعات RAID 1 :
- حذف تصادفی فایل یا فرمت کردن
- خرابی RAIDکنترلر
- خطا در بازسازی RAID (Rebuild)
- ناسازگاری های سخت افزاری
- خطاهای نرم افزاری که باعث آسیب یا خرابی فایل میشود.
- خرابی پیکر بندی آرایه RAID
- خرابی های چندین هاردیسک
- آسیبهای الکترونیکی
- خرابی سیستم عامل
RAID 2
RAID 2 بسیار شبیه به RAID 5 است با این تفاوت که به جای استفاده از تکنیک Striping با استفاده از Parity در این نوع RAID تکنیک Striping در سطح بیت یا Bit Level Striping انجام می شود. از این نوع RAIDبه ندرت در مصارف خاص استفاده می شود و هزینه پیاده سازی آن نیز بسیار زیاد است و به هیچ عنوان استفاده از چنین RAIDی به دلیل هزینه بسیار زیاد توصیه نمی شود ، برای مثال حداقل تعداد دیسک های مورد نیاز برای پیاده سازی RAID 2 عدد 6 است ، از طرفی این نوعRAID در برخی از فرآیند های کاری I/O دیسک از خودش کارایی ضعیفی ارائه می دهد.
RAID 3
RAID 3 بسیار شبیه به RAID 5 است با این تفاوت که در این راهکار یک دیسک بصورت اختصاصی برای نگهداری Parity ها استفاده می شود. در این نوع RAID ساختار Striping در سطح بایت یا Byte Level Striping انجام می شود. از RAID 3 بسیار به ندرت استفاده می شود. یکی از نقطه ضعف های این RAID این است که معمولا نمی تواند چندین درخواست را بصورت همزمان پاسخگویی کند. این تاخیر یا کندی پاسخ به دلیل این است که هر بار که قرار است در این نوع RAID فرآیند I/O انجام شود باید یکبار همه دیسک ها خوانده شوند و همین موضوع باعث کاهش کارایی می شود. تقریبا می توان از این سطح RAID به عنوان بی مصرف ترین نوع RAID نام برد ، شاید در برخی موارد از این RAIDبرای پایگاه داده های خاص و یا محیط های پردازشی استفاده شود.
RAID 4
RAID 4 نیز تا حدودی شبیه به RAID 5 عمل می کند با این تفاوت که ساختار Striping در این نوع RAID بصورت Block Level انجام می شود و همچنین یک دیسک بصورت اختصاصی برای Parity استفاده می شود. از این RAID به ندرت استفاده می شود زیرا در کنار اینکه برخی مواقع ممکن است کارایی خوبی ارائه دهد وقتی زیاد درگیر استفاده از Parity در یک دیسک شود کارایی آن به شدت کاهش پیدا می کند.
RAID 5
5 RAID نیاز به حداقل ۳ هارد دیسک دارد اما برای افزایش کارایی توصیه شده است که از ۵ هارد استفاده شود. اطلاعات، روی دو هارددیسک اول و دوم ذخیره میشود و سپس محاسباتی روی دیتا انجام داده و با نام بیت افزونه یا Parity آن را روی هارد سوم ذخیره میکند. در دفعات بعدی Parity را روی هارد دیسکها میچرخاند. در این نوع RAID حدودا فضای یک هارد دیسک را از دست میدهیم و چنانچه یک هارد دیسک به هر دلیلی دچار مشکل شود، سیستم بدون وقفه به ادامه کار خود میپردازد. پس از اینکه یک هارد دیسک دچار مشکل شد میتوان یک هارد دیسک جدید روی سرور قرار داد و دیتا روی آن شروع به ریکاور شدن میکند.
تحملپذیری در برابر خطا در این مدل RAID در حد یک هارددیسک است و چنانچه هارد دوم دچار مشکل شود ،اطلاعات از بین میرود. معماری این RAID به گونهای است که عملیات خواندن و نوشتن بر روی هاردها پخش میشود این امر باعث میشود که مجموع کارایی هاردها از کارایی یک هارد به مراتب بیشتر باشد. سرعت خواندن و نوشتن در ۵ RAID نسبت به RAID 0 پائینتر و نسبت به RAID 1 بالاتر است. این RAID برای پایگاههای داده مانند SQL مناسب است. این نوع از تکنولوژی RAID برای سیستمهایی که عملیات نوشتن زیاد و فشرده بر روی هاردها دارند اصلا گزینه مناسبی نیست زیرا عملیات تولید بیت افزونه Parity در زمان نوشتن اطلاعات کمی زمانبر است همچنین زمانی که یک هارد از مجموعه هاردها Fail شود زمان زیادی برای بازنشانی اطلاعات لازم است.
RAID 6
RAID 6 به نام RAID با بیت افزونه دوتایی (Double Parity RAID) هم معرفی میشود که در واقع از ساختار آن برگرفته شده است. نحوه ذخیرهسازی اطلاعات مانند RAID 5 است با این تفاوت که این RAID از دو بیت افزونه استفاده میکند یعنی Parity را دوبار و با دو شیوه مختلف محاسبه کرده و روی دو هارد دیسک مختلف پراکنده میکند. این کار باعث میشود چنانچه دو هارد دیسک نیز از بین برود سیستم بدون وقفه بتواند به ادامه کار خود بپردازد.
در واقع قابلیت تحمل خطای این نوع از تکنولوژی RAID ، عدد ۲ است بدان معنا که اگر دو هارد به طور کامل Fail شوند، باز هم قابلیت بازیابی اطلاعات در آن وجود دارد. در صورتی که ۳ هارددیسک دچار مشکل شود دیتا از دسترس خارج خواهد شد. در صورت از بین رفتن یک یا دو هارد دیسک یک مقدار افت کارایی خواهیم داشت و به همین دلیل می توان هارد Hot Spare قرار داد تا سریعا جایگزین هارد Fail شده شود. در RAID 6 حداقل ۴ هارد دیسک مورد نیاز است.
برخی از رایج ترین حالات از دست رفتن اطلاعات RAID 6 :
- خرابی چندین هارددیسک ( بیش از دو هارد دیسک)
- خطا در بازسازی Rebuild
- آسیب دیدن کارت RAIDکنترلر
- رونویسی ، فرمت یا پارتیشن بندی
- رونویسی در نتیجه Re-Initialize
- خرابی فایل
- آسیب های ویروس
- آتش سوزی ، دود یا آسیب هایی از طریق آب
RAID های ترکیبی یا تو در تو (Nested RAIDs)
RAID 10
برای راهاندازی 10 RAID حداقل ۴ هارددیسک نیاز است و به این صورت عمل میکند که دادهها را بین هاردهای آینهای شده به صورت نواری توزیع میکند. تا زمانی که یک هارد دیسک از هر جفت هارد آینهای شده، فعال باشد اطلاعات قابل بازیابی هستند. اما اگر هر دو هارد از یک جفت آینهای Fail شوند، اطلاعات به دلیل عدم وجود بیت افزونه (Parity) دیگر قابل دسترس نخواهد بود.
برخی از رایج ترین حالات از دست رفتن اطلاعات RAID 10 :
- خرابی های چندین هارد دیسک ناشی از نوسان برق یا موارد دیگر
- آسیب دیدگی RAID کنترلر
- خرابی یک هارد دیسک بعد از بروز خرابی هارد Mirror
- حذف تصادفی فایل
- آسیب های ویروس
- پارتیشن بندی، فرمت کردن، یا Re-initialization
RAID 01
برای راهاندازی 01 RAID حداقل ۴ هارد دیسک نیاز است و به این صورت عمل میکند که دادهها بین هاردها به صورت نواری توزیع میشود و سپس به صورت آینهای ذخیره میشود.
(RAID 03 (RAID 0+3
RAID 03 همچنین با نام های RAID 53 یا RAID 5+3 هم شناخته می شود. این نوعRAIDبرای بلاک های مجازیRAID 3 از نواربندی استفاده می کند. RAID 53 در واقع باید RAID 03 نامیده شود زیرا عمل Striping آن همانند RAID0 بوده و Segment بندی آن نیز مانند RAID 3 می باشد. برای راهاندازی این RAID حداقل 5 هارد دیسک نیاز است.
RAID 50
50 RAID نیاز به حداقل ۶ هارد دیسک دارد و برای سیستمهایی که عملیات نوشتن زیادی بر روی هاردها دارند بسیار مناسب است. حفاظت از سلامت اطلاعات و همچنین قابلیت بازیابی آن نسبت به RAID 5 به مراتب بیشتر است. کارایی این RAID نسبت به RAID5 از این جهت بهتر شده است که هر یک Fail فقط بر یک آرایه از اطلاعات تاثیر میگذارد. اگر Fail شدن اطلاعات در آرایههای مختلف RAID رخ دهد قابلیت تحمل این RAID عدد ۴ خواهد بود. یعنی اگر از هر زیرمجموعه Arrayیک درایو خراب شود، Fault Tolerance برابر با ۲ است و نهایتا ۴ درایو فعال داریم بدون اینکه اطلاعاتی از دست دهیم. اما توجه داشته باشید که اگر این دو درایو خراب از یک زیرمجموعه Array باشد اطلاعات شما از دست خواهد رفت.
پیادهسازی RAID 50 نیاز به کنترلر سختافزاری پیشرفته دارد که شاید این مورد را بتوان به عنوان یکی از معایب عمده آن در نظر گرفت. اما زمانی که شما با اپلیکیشنهایی سر و کار دارید که اطلاعاتشان بسیار حیاتی است و امنیت آن ها از درجه اهمیت بالایی برخوردار است توصیه میشود از این نوع تکنولوژی RAID استفاده کنید.
RAID 60
60 RAID ترکیبی از RAID 0 و RAID 6 است و به گونهای دیگر میتوان این طور در نظر گرفت که اطلاعات را بین دو دسته هارد که RAID 6 شدهاند به صورت نواری توزیع میکند. برای راهاندازی این مدل از تکنولوژی RAID حداقل به ۸ عدد هارد نیاز خواهد بود.
RAIDهای غیر استاندارد
RAID 7
RAID 7 بر اساس RAIDهای RAID 3 و RAID4 عمل می کند در حالی که یک حافظه cache هم به این ترکیب اضافه می کند که شامل یک سیستم عامل داخلی به عنوان کنترلر است. کنترلر با استفاده از حافظه cache و سایر مشخصات به عنوان یک کامپیوتر مستقل عمل می کند. این تکنولوژی RAID یک RAID اختصاصی و سازنده آن یک شرکت معتبر در زمینه تولید تجهیزات ذخیره سازی است و بصورت عام استفاده نمی شود.
Adaptive RAID
Adaptive RAID این اجازه را به RAID کنترلر می دهد که تصمیم بگیرد parity را چگونه روی هاردها ذخیره کند. کنترلر بین RAID 3 و RAID 5 بسته به اینکه کدام تکنولوژی RAID برای عملیات نوشتن روی هارد دیسک ها بالاترین کارایی را خواهد داشت یکی را انتخاب می کند.
(RAID S (Parity RAID
RAID S یک RAID اختصاصی شرکت EMC Symmetrix است که هم اکنون استفاده زیادی از آن نمی شود. به نظر می رسد این نوع RAID شبیه RAID 5 است که با استفاده از حافظه cache با سرعت بالا تر کارایی را افزایش می دهد.
Raid1 دو هارد با ابزار Storage Space
هیواشبکه
ما در مجموعه هیواشبکه شامل :
شرکت فنی و مهندسی هیوانوآوران داده گستر : مجری طراحی ، پیاده سازی ، پشتیبانی پروژه های شبکه و امنیت در استان گیلان – رشت و شهرها و استانهای همجوار
آموزشگاه تخصصی هیواشبکه : برگزار کننده دوره های تخصصی شبکه و امنیت ، پیکربندی سرور HP ، مجازی سازی ، MCSA 2016 ، نتورک و … به صورت حضوری با مجوز از سازمان فنی و حرفه ای و آموزش کارکنان دولت در رشت ، استان گیلان و به صورت مجازی در سراسر کشور
در خدمت شما عزیزان هستیم.
نظرات