مدیریت هارد دیسک در ویندوز سرور

تقسیم بندی انواع هارد دیسک از لحاظ فیزیکی :

   – LFF یا Large Form Factor: دیسک هایی که در کامپیوترها میگذارند و اندازه بزرگ دارند.

   – SFF یا Small Form Factor: دیسک هایی که امروزه مورد استفاده قرار میگیرند و اندازه کوچکتر دارند. امروزه معمولا اکثر دیسک هایی که مثلا برای سرورها خرید میکنیم و روی سرورها قرار میگیرد از این نوع هستند. مزیتی هم که SFF به LFF دارد این است که چون کوچکتر است فضای بیشتری را در اختیار میگذارد و در نتیجه میتوان از دیسک های بیشتری روی سرورها استفاده کرد.

دیسک ها با استفاده ازController به MotherBoard یا BaseBoard متصل میشوند و در نهایت میتوانند تبادل Data کرد. از کنترلرهای دیسک که میتوانند سخت افزاری دیسک را به BaseBoard متصل بکنند میتوان به IDE (قدیمی)، SATA، از قدیم کنترلر اسکازی(SCSI) داشته ایم که ورژن جدید آن SAS شده است (امروزه سمت سرور مرسوم است) و … .

از یک نظر دیگر دیسک ها به صورت زیر تقسیم میشوند:

  • HDD یا Hard Disk Drive:

همان دیسک های مغناطیسی قدیمی که دارای موتور و سیلندر و هد Read/Write و .. است و موتور این هد را بین سیلندر ها میچرخاند و عملیات انجام میشود. در دیسک های HDD یک مفهومی وجود دارد به نام RPM یا Round Per Minutes. این RPM سرعت چرخش دیسک (موتور سیلندر را میچرخاند و عمل R/W انجام میشود) را مشخص میکند که طبیعتا با سرعت R/W رابطه مستقیم دارد. هرچقدر RPM دیسک بیشتر باشد میتواند Data بیشتری را بخواند و بنویسد. در حال حاضر RPM دیسک های HDD یا ۵۴۰۰ است یا ۷۲۰۰ است یا ۱۰۰۰۰ دور است که به آن میگویند ۱۰k و یا ۱۵۰۰۰ دور است که ۱۵k است.

  • SSD یا Solid State Drive:

نسل جدید سیستم های ذخیره سازی اطلاعات هستند و دیگر هیچکدام از مسائلی مثل هد و موتور و سیلندر و… در آن وجود ندارد و تمام عملیات ها روی چیپ الکترونیکی است. یک چیزی شبیه به فلش مموری است که به کامپیوتر وصل میکنیم ولی تکنولوژی آن چیپ فرق میکند. یعنی اون چیپی که روی این دیسک های SSD استفاده میکنیم با اون چیپی که در Cool Disk ها وجود دارد فرق میکند. مزیت دیسک های SSD هم سرعت بسیار بالای آن ها است (مثلا یک مدل معمولی SSD سامسونگ ثانیه ای ۵۰۰ مگ میخواند و یا ثانیه ۴۵۰ مگ مینویسد).

یک اصطلاحی داریم به نام IOPS (I/O Per Second) که سرعت فرآیند read و write دیسک است که مثلا میگه IOPS دیسک ۵۰۰ مگ است یعنی ثانیه ای ۵۰۰ مگ را میخواند. پس SSD، IOPS خیلی بالایی دارد. دوم اینکه مصرف انرژی خیلی کمی دارد چون موتور ندارد که بچرخونتش یا برق زیادی مصرف بکند. مهمترین بدی دیسک های SSD این است که یک Life Cycle برای Write کردن دارند. یعنی اینکه مثلا میگه شما تا ۱۰۰۰۰ ساعت روی این دیسک میتوانی Write انجام بدی.بعد از ۱۰۰۰۰ ساعت دیگر Write روی آن نمیتوانی انجام بدی و فقط میتوانی Read بکنی. چون سلول هایی که روی اون چیپ های الکترونیکی وجود دارند و قرار است که Data را نگه دارند تا مثلا M بار میتوانیم روی آنها Write کنیم و پاک کنیم. پس این مسئله میتواند یک نگرانی باشد مخصوصا سمت سرور. مثلا وقتی میخواهیم دیسک SSD بخریم باز این دیسک ها مثلا SSD ی Enterprise دارد یا SSD ی Home Base دارد که این زمان Life Cycle مثلا در Enterprise آن بیشتر از Home Base آن است که حالا دسته بندی ها زیاد مهم نیست مهم اینه که تفاوت بین این دسته بندی ها را متوجه بشوید.

تا اینجا این مباحث به عنوان پیش زمینه مطرح شده و از این قسمت به بعد وارد بخش اصلی درس میشویم.

در این بخش میخواهیم در مورد مدیریت دیسک ها صحبت کنیم. یعنی میخواهیم ببینیم در سیستم عامل ویندوز ما چطور میتوانیم مدیریت دیسک رو انجام دهیم.

لایه مدیریتی دیسک در ویندوز دو حالت دارد:

دیسک یا Basic مدیریت میشود یا Dynamic .

  • دیسک Basic :

دیسک basic میتواند کلا ۴ تا پارتیشن داشته باشد. پس شما روی دیسک Basic بیشتر از چهارتا پارتیشن نمیتوانید داشته باشید. ما یک مفهومی داریم به نام Partition و یک مفهومی داریم به نام Drive . این دو مهفوم دوتا چیز مختلف اند.

Partition : برای مثال زمانی که شما یک هادر میخرید، هارده پیش فرض اصطلاحا RAW است. مفهوم RAW یعنی خام. برای مثال این مفهوم در عکاسی یعنی با یک فرمت RAW که اصطلاحا انگار خام هست تصویربرداری میکنیم و شما میتوانید این تصویر Save شده ی RAW را نگه دارید مثلا ۱۰۰ سال دیگر و با تکنولوژی های Printing اون زمان پرینتش کنید و طبیعتا اون کیفیتی که اونموقع بیاد بیرون با این کیفیتی که الان بخواد پرینت بشه کلی فرق میکند. چون به صورت خام ذخیره اش کردیم با هر تکنولوژی بالاتری میتوانیم آن را پرینت کنیم. حالا مفهوم RAW در دیسک هم یعنی خام، یعنی هیچ پارتیشن بندی ای نشده، هیچ فرمت خاصی روی آن انجام نشده و خام هست. به بخش بندی یک دیسک که بعدا می میتوانیم با اختصاص Drive letter ها آن را ببینیم پارتیشن میگویند. حالا خود این پارتیشن خودش دو حالت دارد. یعنی ما دو مدل پارتیشن داریم. یکی Primary Partition و یکی هم Extended Partition.

Primary Partition: وقتی یک کامپیوتر را روشن میکنیم اولین مرحله ای که انجام میشود عمل POST یا Power On Self Test میباشد. در این مرحله Bios سیستم (اولین نرم افزاری که بعد از روشن شدن سیستم اجرا میشود) قطعات اصلی سخت افزاری سیستم مثل RAM و CPU و .. را detect میکند و از نظر سالم بودن آن ها را تست میکند. اگر همه چیز ok بود یه بوق میزند و به اون بوق سلامت میگن. حالا اگر هر مشکلی وجود داشته باشد بوق ممتد یا بوق های چندتایی میزند. حالا اگر همه چیز اوکی باشد وارد مرحله دوم میشود به این مرحله Loader گفته میشود. این مرحله مرحله ای است که سیستم عامل قرار است Boot بشود و بیاد بالا. شما در بایوس ست کردید که Boot Order از کجا باشد، از Hard Disk بوت شود یا DVD Drive یا Flash یا کارت شبکه . مثلا فرض کنید از روی Hard Disk بوت میشود و میاد بالا. حالا که این اتفاق میخواهد بیوفتد اولین اتفاقی که میوفتد این است که سیستم عامل باید اون Boot اولیه اش یا Start اولیه اش در پارتیشن Primary نصب شده باشد. یعنی سیستم عامل از پارتیشن primary بوت میشود. حالا اگر سیستم عامل را در پارتیشن Primary نصب نکرده باشیم در اون مرحله ی loader، بوت OS را نمیتوانیم انجام دهیم. پس پارتیشن Primary پارتیشنی است که OS از آنجا Boot میشود. حالا ما یک اصطلاحی داریم به نام MBR یا Master Boot Record . حالا MBR چیه؟ ما روی دیسک basic کامپیوترمان گفتیم میتوانیم چهارتا Partition داشته باشیم. بعد گفتیم Primary پارتیشنی است که OS از آنجا Boot میشود. فرض کنید ما کامپیوتر را روشن کردیم و POST هم تموم شده و وارد مرحله ی Loader شده. حالا Hard Disk ما چهارتا پارتیشن Primary دارد. از کجا بدوند که OS رو از کدوم پارتیشن Primary باید بخوند؟ اگر شما چهارتا پارتیشن Primary دارید باید بروید روی پارتیشنی که قرار است OS از آنجا Load شده بیاد بالا یک Label ای بچسبانید به نام Active. اصطلاحا باید پارتیشن شما Set as Active شود. مثلا میگوییم OS ما در پارتیشن Primary سوم است و آن را Active میکنیم. حالا دوباره مرحله ی Post تمام شده و وارد Loader شدیم. Bios از کجا بداند که کدوم یکی از این چهارتا پارتیشن primary ها Active است که برود OS را از آنجا بخواند و بیاورد بالا؟ اینجاست که میرود Sector (کوچکترین واحد فیزیکی ذخیره سازی اطلاعات روی دیسک است که پیش فرض حجم آن ۵۱۲ byte است) صفر دیسک را میخواند. حالا اطلاعات MBR در سکتور صفر ذخیره میشود. حالا یک اصطلاح دیگری است به نام Boot Sector. آیا سکتور صفری که MBR در آن ذخیره شده است همان Boot Sector است؟ خیر. حالا در MBR چه اطلاعاتی هست؟ یک سری اطلاعات آماری دیسک در MBR نوشته شده است. مثلا این دیسک چند سکتور یا چند سیلندر دارد؟ یا این دیسکه کدوم پارتیشنش Primary یه Active است؟ پس یک سری اطلاعات آماری از این قبیل در آن ذخیره شده است. این اطلاعات آماری هم به درد Bios میخورد.

خب پس ما تا اینجا چهارتا پارتیشن primary داریم و یکی از این ها هم Active است. توی سکتور صفر که توش MBR است اطلاعاته لازمه نوشته شده. یک آدرسی که در آنجا نیز نوشته شده است آدرس Boot Sector است. آدرس Boot Sector اولین سکتور شروع کننده ی پارتیشن Primary ی Active نوشته شده است. پس در MBR این آدرسه نوشته شده است. حالا در این Sector چه Data ای نوشته شده است؟ OS Boot Files. یعنی فایل های بوت کننده ی OS اونجاست. حالا این فایل تا قبل از ویندوز ویستا فایلی بود به نام ntldr. در ویندوز ویستا یه بعد فایلی هست به نام bootmgr .

پس به طور خلاصه پارتیشن Primary پارتیشنی است که سیستم عامل از توش Boot میشود و این پارتیشن اگر Active باشد Boot Sector هم آنجاست. Boot Sector اولین سکتور شروع کننده ی آن پارتیشن Primary ی Active است که فایل های بوت اولیه OS اون تو نوشته شده است. تمامی این مفاهیم مخصوص پارتیشن primary است و Extended Partition نمیتواند Boot Sector داشته باشد. حالا چه دلیلی دارد که ما بخواهیم چهارتا پارتیشن Primary داشته باشیم؟ مثلا برای اینکه بخواهیم چندتا سیستم عامل داشته باشیم. در حال حاضر سیستم عامل ها هوشمند شدند و شما میتوانید یک پارتیشن Primary داشته باشید ولی چهارتا OS روی آن داشته باشید و وقتی سیستم را روشن میکنید یک Boot Menu باز شود و شما ویندوزی که میخواهید بوت شود را انتخاب کنید و برود فایل های اون ویندوز رو بردارد و در Boot Sector قرار دهد. این مفهوم پارتیشن بود.

Extended Partition: تا اینجا ما چهارتا پارتیشن Primary میتوانیم درست کنیم. اما ما میخواهیم دیسک سیستممان بخش بندی های بیشتری داشته باشد. یعنی اصطلاحا میخواهیم Drive داشته باشیم. یعنی مثلا یک درایو که موزیک هامون رو درآن ذخیره کنیم. یک درایو که پروژه هامون آنجا باشد و .. واین ها همه درایو هستند و پارتیشن نیستند. برای این کار به سراغ Extended ها میرویم. Extended Partition پارتیشنی است که به طور مستقیم قابل استفاده نیست.

1
همانطور که گفته شد از پارتیشن Extended به طور مستقیم قابلیت استفاده وجود ندارد. تا زمانی که Extended Partition را تبدیل به logical Drive نکنیم امکان استفاده از آن وجود ندارد. ما از یک دیسک Basic میتوانیم هر چهارتا را Primary کنیم یا سه تا را Primary و یکی را Extended. میتوانیم دوتا Primary و دوتا Extended داشته باشیم یا میتوانیم یک Primary داشته باشیم و ویندوز مان را روی آن بریزیم و یکی هم Extended کنیم و به هر چندتا Drive که میخواهیم تقسیم کنیم.دیسک Basic چهارتا پارتیشن Primary میتواند داشته باشد. اینجا اگر حجم دیسک ۱TB باشد و پارتیشن آخر هم Primary باشد و ۵۰GB فضا داشته باشد یعنی ۷۰۰GB از فضای دیسک بدون استفاده خواهد ماند چون چهارتا پارتیشن را پر کردیم. حالا ما میتوانیم کل فضای باقی مانده یعنی پارتیشن چهارم را Extended Partition کنیم. این Extended Partition این امکان را میدهد که آنرا به چندین Logical Drive تقسیم بندی بکنیم. در حقیقت Logical Drive یعنی بخش بندی یک پارتیشن Extended. حالا این دیسک ما با توجه به شکل بالا چهارتا پارتیشن دارد. چند Drive دارد؟

به تعداد مستطیل های نارنجی رنگ یعنی n تا. در حقیقت این یک غلط است که میگوییم Drive C یا Drive D . اینها درایو نیستند.

ورژن جدیدی از MBR به وجود آمده به نام GPT. در حقیقت GPT همان MBR است منتها ورژن جدید MBR است و نکته ای که وجود دارد این است که وقتی شما دارید برای دیسکتان Logical Management را انجام میدهید میتوانید بگویید به جای اینکه Sector 0 ، توش Data ی MBR ای نوشته بشود Data ی GPT ای نوشته شود. اگر دیسک شما شد GPT، دیسک Basic محدودیت چهار پارتیشنی اش برداشته میشود. نکته بعدی این است دیسک MBR میتواند تا ۲TB فضا را پارتیشن بندی کند. برای مثال ما یک دیسک داریم که چهار ترابایت است. اگر MBR باشد ۴ تا پارتیشن میتوانیم داشته باشیم، اما نمیتوانیم یک پارتیشن ۴TB ای در آن درست کنیم. یعنی شما از اون ۴TB فضایی که دارید میتوانید ۲TB آن را استفاده کنید و بیشتر از دو ترابایت قابل استفاده نیست. پس به سراغ GPT میرویم. توجه هم بکنید وقتی فضای دیسک کمتر از ۲TB است هیچ دلیلی ندارد که GPT باشد گرچه اگر هم باشد هیچ فرقی نمیکند. زیرا Drive مشکل تعداد Partition را حل میکند. تنها دلیل استفاده از دیسک GPT بالا بودن حجم از ۲TB است.

نسخه ی جدید Bios یا Basic Input Output System ، UEFI است. حالا اگر میخواهید دیسکی داشته باشید که بیشتر از ۲TB است و OS میخواهد از آن Boot شود و بالا بیاید به جای Bios باید GPT داشته باشید. حالا ویندوز که میخواهید نصب کنید آن سی دی ویندوز باید ساپورت Bios داشته باشد یا ساپورت UEFI. اگر ساپورت Bios را داشته باشد و سیستم شما UEFI داشته باشد آن ویندوز را نمیتوانید نصب بکنید. برعکس آن اگر سی دی ویندوز UEFI باشد و شما بخواهید آن را روی Bios نصب کنید به شما Error میدهد که باید بروید و پارتیشنتان را GPT کنید.

در سیستم عامل ویندوز یک Snap in داریم به نام Disk Management که میتوانیم یک دیسک را از اینجا مدیریت کنیم. ابتدا MMC را Run کنید و این Snap in را اضافه کنید.

2 3

این شکل نشان میدهد که این سیستم سه تا پارتیشن دارد و هر سه تا هم با توجه به رنگ آبی آن Priamry هستند. اگر به پارتیشن System Reserved دقت کنید مشاهده میکنید که Active است. در صورتی که پارتیشن C ، Primary است ولی Active نیست. تا ویندوز XP درایو C شما همان پارتیشن Primary و Active تان بوده. از ویندوز ویستا به بعد یک پارتیشنی درست شده که ۱۰۰MB است و از ویندوز ۸ به بعد شده ۳۵۰MB. این پارتیشن ها هم به این دلیل از هم جدا شده اند که اون پارتیشنی که Boot Sector در آن است این ۳۵۰MB است. یعنی Boot Sector الان روی Drive C ما نیست. حالا چرا در این ۳۵۰MB است؟ از ویندوز ویستا به بعد قابلیت BitLocker به سیستم عامل ویندوز اضافه شده است. که BitLocker یک قابلیت امنیتی است که میتواند دیسک شما را یا پارتیشن شما را رمزنگاری کند. اگر دیسک شما به سرقت رفت، اون تیکه اش که با BitLocker رمز نگاری شده است قابل خواندن نیست. یعنی میتواند آن را پاک کند اما به هیچ عنوان قابل رمزنگاری نیست. حالا تصور کنید که فایل های Boot کننده ی ویندوز در درایو C باشد و شما درایو C را با BitLocker رمز کنید. وقتی سیستمان را روشن کنید وقتی POST تمام شد میخواهد به دیسک برود و Boot Sector را بخواند و ویندوز را Boot کند. اما درایو C رمز شده است! در نتیجه بایوس به اون قسمت دسترسی ندارد. بنابراین Boot دیگر انجام نمیشود. برای اینکه این مشکل پیش نیاید اومدن یه پارتیشن جدید درست کردند (ابتدا ۱۰۰MB و با نسل جدید ویندوز ۳۵۰MB) و گفتن اون فایل های اول کار که قرار است سیستم را بوت کند و بالا بیاورد در این قسمت قرار گیرد. پس این پارتیشن حتما باید primary باشد و Active هم باشد. که اگر درایو C رمز شده بود Boot اولیه سیستم دچار مشکل نشود. الان اگر شما بخواهید از BitLocker استفاده بکنید باید روی مادربورد کامپیوترتان سخت افزاری یک Chip ای داشته باشید به نام TPM یا Trusted Platform Module. وقتی شما دیسکتان را رمز میکنید کلید های رمز نگاری در TPM ذخیره میشود. وقتی Mini Boot اولیه از طریق همان پارتیشن Primary انجام میشود میره به TPM دسترسی پیدا میکند و درایو C را unlock میکند و بقیه فایل های ویندوز جهت بوت را از آنجا میخواند و درایو C بوت میشود و بالا می آید. در صورتی که اگر همه ی این ها در درایو C بود کسی نبود برود و mini boot اولیه را انجام بدهد و درایو رو Unlock کند و سیستم را جلو ببرد به خاطر همین این قسمت را جدا کردند. اما از ویندوز XP به قبل چون BitLocker نداشتیم پارتیشن جدا هم نداشتیم.

اگر برای همین پارتیشن System Reserved یک Drive Letter اختصاص دهیم میتوانیم آن را در File Explorer مشاهده کنیم و فایل ها آن را ببینیم (پیش فرض فایل های آن Hidden شده هستند).Bootmgr هم فایلی است که با Assembly نوشته شده است.Assembly زبان سطح صفر است و همیشه برای ارتباط با سخت افزار باید باشد. مثل برنامه نویسی اندروید.

4

یک اصطلاحی (تکنولوژی) وجود دارد به نام RAID )Redundant Array Independent Disks).

Redundant یعنی از هرچیز مهمی بیشتر از یه دونه داشته باشیم که اگر یکیش قطع شد سرویس دهی قطع نشود. RAID در ترجمه فارسی یعنی آرایه ای از یک سری دیسک ها که از همدیگر مستقل هستند. تصور کنید که شما روی یک سیستمتان یک HDD دارید و روی این دیسک سیستم عامل و SQL و  خیلی نرم افزار های مهم وجود دارد و اگر این دیسک ازدست برود همه چیز ازدست رفته. شاید شما بک آپ داشته باشید اما واقعیت این است که Down Time توجیهی ندارد. یعنی اگر یک دیسک ازدست برود و شما بیاید دوباره یک دیسک راه اندازی کنید و ویندوز نصب کنید و بک آپ ها رو برگردونید خیلی سریع انجام دهید میشود یک روز قطعی. حالا برای اینکه این اتفاقات نیوفتد میان از Raid استفاده میکنند. برای مثال با raid کاری کنیم که همزمان هرچیزی که روی یک دیسک ثبت میشود روی یک دیسک دیگر هم ثبت شود. و اگر یک دیسک قطع شود هیچکس متوجه قطعی نمیشود. اگر هم که دیسک SSD باشد که هیچی خود ادمین باید سر یک تایم هایی حواسش باشد و دیسک را عوض کند چون دیسک های SSD یک Life Cycle ای دارند.

ما یک اصطلاحی داریم به نام SPF یا Single Point of Failure. یعنی در این بستر یک نقطه ای وجود دارد که اگر آن نقطه fail شود سیستم ما fail میشود. مثلا SPF ما میتواند این باشد که ما یک پاور داریم و اگر آن پاور fail شود سیستم میخوابد. یا میتواند SPF ما داشتن یک دیسک باشد یا مثلا اینکه UPS نداریم و هر اختلالی در برق به وجود بیاید سرورها میروند. یا مثلا این است که در server farm ممان یک کولر داریم.

خب ما با RAID میتوانیم SPF در سطح دیسک را برداریم. همچنین RAID کمک میکند که سرعت Read و Write ما در دیسک هم بالا برود.

حالا RAID خودش دو حالت دارد. ما یک RAID نرم افزاری داریم: Software Raid و Hardware Raid که یعنی یک raid نرم افزاری و یک raid سخت افزاری.

Raid سخت افزاری به این شکل است که شما میروید یک Raid Controller خریداری میکنید (یک board الکترونیکی که روی یکی از اسلات های مادربورد سرور شما مینشیند) و بعد دیسک هاتون رو (HDD) وصل میکنید به این Raid Controller. این Raid Controller بایوس دارد، RAM دارد، CPU دارد و… که Process ای که این Raid Controller میخواهد انجام دهد کاملا Independent از CPU و RAM سیستم باشد. مثلا شما وارد بایوس آن میشوید و میگید که این دیسک ها را باهم اینجوری raid کن و این یکی دیسک ها هم با هم اینجوری raid کن. این میشود RAID سخت افزاری.

اما RAID نرم افزاری اینجوریه که ما Raid Controller نداریم. چندتا دیسک گذاشتیم روی یک سیستم. حالا نرم افزاری میایم میگیم اینارو raid کن (یعنی تو OS). یعنی Handling این کارو سیستم عاملت داره انجام میده و سیستم عامل هم داره از resource ئه CPU و RAM سیستم استفاده میکند. قطعا RIAD سخت افزاری بهتر است.

شما برای اینکه در ویندوز RAID نرم افزاری داشته باشید باید دیسک هاتون رو Dynamic کنید. بزرگترین تفاوت دیسک Dynamic با دیسک Basic در همین است. یعنی شما در دیسک Dynamic میتوانید از قابلیت Raid نرم افزاری استفاده کنید ولی در دیسک Basic نمیتوانید. یعنی شما دیسک تان را Dynamic میکنید چون raid سخت افزاری نداشتید و حالا میخواهید از این قابلیت استفاده کنید. حالا این RAID ای که تا اینجا در مورد آن صحبت کردیم تکنولوژی های مختلف دارد که هرکدامشان یک شماره ی تکنولوژی دارند. مثل RAID 0 ، RAID 1 ،  RAID 5 ، RAID 6، RAID 10 ، RAID 50. هرکدام از این RAID ها عملکرد و کارکردهای متفاوتی دارند. توجه داشته باشید که تکنولوژی های RAID های ۲ و ۳ و ۴ وجود دارد اما ارزش افزوده ی خاصی به ما نمیدهند.

  • RAID 0 یا Striped (راه راه):

شما برای راه اندازی raid 0 حداقل به دوتا هارد دیسک و در ویندوز حداکثر ۳۲  هارد دیسک نیاز دارید (اصلا با یکی که raid ای راه اندازی نمیشود و Array ای به وجود نمیاد).

5

دو دیسک داریم که فضاهاشون ۵۰۰GB است. وقتی میایم اینارو RAID 0 میکنیم به این شکل عمل میشود که فضاهای این دوتا دیسک باهم جمع میشود و در یک Volume را تشکیل میدهد. یک Volume ای که فضای آن از این دو (تا حداکثر ۳۲) دیسک تشکیل شده است. بعد Data ای که میخواهیم روی این فضای ۱TB ای ذخیره کنیم تقسیم میشود به Block های ۶۴kb ای و ۶۴kb اش روی یک دیسک نوشته میشود و ۶۴kb بعدی روی دیسک دیگر نوشته میشود. یه جورایی Data را خورد میکنیم و یک قسمت اش را این طرف مینویسیم و یک قسمتش را در طرف دیگر. حالا اگر ۱۰ تا دیسک داشته باشیم Data ای که داریم مینویسیم هر ۶۴kb اش روی یک دیسک نوشته میشود. فرض کنید شما یک دیسک دارید با یک هد و یک کنترلر و یک فایل ۱۰MB ای قرار است روی آن نوشته شود، حالا اون فایل ۱۰MB را به ۱۰ قسمت تقسیم کنیم و همزمان ۱۰ تا دیسک آن را بنویسند. بدیهی است که سرعت بالا میرود. یعنی ۱۰ تا دیسک داشته باشیم سرعتمان حدودا ۱۰ برابر یک دیسک معمولی است. ضمنا نکته ی مهم آن است که در RAID 0 برای Volume فضاهای مساوی از دیسک ها برداشته میشود. یعنی اگر دیسک اول ۵۰۰GB باشد و دیسک دوم ۱TB ، از دیسک دوم فقط ۵۰۰ تای آن را برمیدارد و raid 0 میکند. یعنی اگر از یکی ۵۰۰ تا برداشتید از دیگری ماکزیمم ۵۰۰ تا بیشتر نمیتوانید بردارید. و اون نیم ترابایت خالی از دیسک دوم میتواند یک پارتیشن معمولی باشد اما اون پارتیشن یک بخشی از RAID نیست. بزرگترین مزیت RAID 0 این است که سرعت Read و Write مان را بالا میبرد. ضمنا RAID 0 هیچ Redundancy ای به ما نمیدهد. ما از RAID 0 زمانی استفاده میکنیم که میخواهیم اطلاعاتمان از بین برود! زیرا هرکدام از دیسک ها که بسوزد کل اطلاعاتش از بین رفته است. RAID 0 اصطلاحا I/O Per Second یا IOPS شما را بالا میبرد.

  • RAID 1 یا Mirror:

برای راه اندازی RAID ئه Mirror به حداقل ۲ Disks و حداکثر ۲Disks احتیاج دارید و بیشتر از ۲ دیسک را پشتیبانی نمیکند. در اینجا نیز فضاهای مساوی از دیسک ها برداشته میشود. در مثال زیر ۱TB فضا گذاشتیم اما فقط از ۵۰۰GB آن استفاده میکنیم. کار Mirror به این شکل است که Data که میخواهد ذخیره شود همش روی یک دیسک ذخیره میشود و پشت صحنه ی آن هر دیتا ایی که روی آن دیسک ریختیم سکتور به سکتور روی دیسک دیگر کپی میشود.

6

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

  • RAID 5 یا Striped Set with Parity:

Parity بیت Error Checking است. برای راه اندازی RAID 5 شما به حداقل ۳ Disks و حداکثر ۳۲ Disks نیاز دارید.

7

فضای volume ای که در اختیار شما قرار میدهد N-1 است. N تعداد دیسک ها است. وقتی در این مثال سه دیسک داریم یعنی دو سوم فضا را میتوانیم استفاده کنیم. روش کارش هم به این صورت است که دیتا وقتی میخواهد ذخیره شود مثل RAID 0 دیتا را به Block ها ۶۴kb ای ذخیره میکند و هر ۶۴kb را روی یک دیسک مینویسد. تا اینجا میشود Striped. منتها یک تکنیکی دارد که اگر یکی از دیسکها Down شد اطلاعات از دست نرود. برای مثال از از XOR بیت های دو دیسک اطلاعات دیسک سوم را میفهمد. در این Raid نیز فضاهای مساوی از دیسک ها برداشته میشود.

8

حالا در حالت اول مثلا اگر Data ی Disk1 را ازدست بدهیم از Data ی دیسک دوم و Parity ی دیسک سوم اطلاعاتش را به دست می آوریم. پس در این حالت سرعتمان بالا میرود چون روشش مثل RAID 0 است چون دیتا را به بلاک های ۶۴kb ای تقسیم میکند و هر ۶۴kb را روی یک دیسک مینویسد با این تفاوت که مانند شکل بالا کار میکند و افزونگی هم به ما میدهد. در حقیقت RAID 5، SPF را برمیدارد و سرعت خوب هم میدهد. یه جورایی ترکیب RAID 0 و RAID 1 است.  

پیشنهاد میشود سیستم عامل ها را روی RAID 1 نصب کنیم و مثلا اگر روی سیستم داریم SQL نصب میکنیم SQL رو روی دیسکی نصب کنیم که RAID 5 شده است.

در سیستم عامل ویندوز به لحاظ نرم افزاری فقط سه RAID 0,1,5 پشتیبانی میشوند. 

یک اصطلاحی وجود دارد به نام Hot Spair (تو فوتبال یک بازیکن داره خودشو گرم میکنه و آماده است بیاد تو زمین. این گرم کردنه میشه Hot Spair). یعنی منتظره که سریع جایگزین شود. قضیه اش هم اینجوریه که برای RAID 5 مثلا سه تا دیسک گذاشتیم اما میایم یک دیسک چهارمی را میگذاریم و آن را Hot Spair میکنیم. حالا اینجوری میشه که یکی از دیسک ها میسوزد. RAID 5 است و مشکلی پیش نمی آید. اما نگرانیم که دیسک دوم بسوزد و اطلاعات از بین برود. در اینجا Hot Spair سریع جایگزین دیسکی میشود که سوخته است و حالا دوباره سه تا دیسک داریم.

  • RAID 6:

Fault Tolerance یا تحمل خطای RAID 5 در برابر یک دیسک است. یعنی fail شدن یک دیسک را میتواند تحمل کند و بپذیرد و به واسطه ی Parity دیتای شما lost نشه. ولی اگر دیسک دوم هم بسوزد اطلاعاتمان ازبین رفته است. حالا RAID 6 عین RAID 5 عمل میکند با این تفاوت که Fault Tolerance آن در برابر دوتا دیسک است (Dual Parity است). برای راه اندازی RAID 6 شما حداقل به ۷ Disks احتیاج دارید. معمولا از RAID 6 استفاده نمیشود به علت اینکه Process آن بالاست.

  • RAID 10:

یک RAID ترکیبی است. RAID 10 ترکیب RAID 1 + RAID 0 است.

برای راه اندازی RAID 10 به حداقل ۴ Disks احتیاج دارید.

برای مثال تصور کنید ما چهارتا دیسک داریم. اینا دو به دو با هم RAID 0 میشوند. و بعد این دوتا باهم RAID 1 میشوند. RAID 10 هم مانند RAID 1 نصف فضا را به ما میدهد.

9

در مثال بالا که ۴TB فضا گذاشتیم فقط ۲TB آن را به ما میدهد. بدی raid 10 این است که گرونه. ۴ تا دیسک میخری ولی از دوتاش میتونی استفاده کنی.

  • Hot spair را برای همه ی raid ها داریم.

بنابراین در دیسک Dynamic چیزی به اسم درایو و پارتیشن نداریم و این اصطلاحات برای دیسک داینامیک است. دیسک شما اگر Basic بود Drive دارد و Partition دارد و اگر دیسک شما Dynamic بود Volume دارد.

دیسک Dynamic، Volume هایی که پشتیبانی میکند:

  1. RAID 0 یا Striped
  2. RAID 1 یا Mirror
  3. RAID 5 یا Striped with parity
  4. Simple
  5. Spanned

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

  1. Primary Partition
  2. Extended Partition
  3. Logical Drive

شما میتوانید دیسک ها را به هم convert کنید. یعنی اگر دیسک شما Basic است آنرا Dynamic کنید ولی توجه کنید که دیسک Dynamic را نمیتوانید به دیسک Basic ، Convert کنید. اگر میخواهید Dynamic را به Basic تبدیل کنید، کاری که میکنید این است که Volume های آن را پاک کنید و دوباره از اول Basic درست کنید. حالا اگر ما یک دیسک Basic داریم و پارتیشن و درایو داریم و آن را به دیسک داینامیک تبدیل کنیم، پارتیشن هایش همه میشوند Simple Volume.

تا اینجای کار برای راه اندازی تمامی RAID ها لازمه اش این هست که فضاهای مساوی از دیسک ها را بدهید. اما نکته ای که به وجود می آید این است که ما آمدیم فضاهای مساوی دیسک ها را برداشتیم و با هم RAID درست کردیم و در نتیجه از هر دیسک یک سری فضاهای باقی مانده ی خورد به وجود آمده است. مثلا از دیسک اول یک ۵ گیگ جا داریم، از دیسک دوم ۷ گیگ جا داریم و … و اینا همگی خورده همینجوری به درد ما نمیخورد. Spanned Volume، RAID نیست ولی میتواند بیاد فضاهای غیر مساوی دیسک ها رو باهم جمع کند و همه رو یک کاسه کند و فضای بزرگتری را به ما بدهد. مثلا همه ی فضاهای خورده را جمع کند و یک فضای ۱۰ گیگی به ما بدهد.

  • برای رفتن به Disk Management:

10

  • شما میتوانید دیسک مجازی درست کنید:

12

در Location بهش میگیم که در کجا برایمان یک فایل درست کنه با حجمی که ما بهش میگوییم. توجه کنید که حتما Dynamically expanding رو انتخاب کنید، زیرا اگر Fixed size رو بزنیم، اگر فضا را برایش ۱TB مشخص کنیم درجا میره یک فایل ۱TB ای میسازد. اما وقتی Dynamically expanding باشد این شکل نیست و اولش مثلا یک فایل میسازد با ۵MB ولی یک دیسک ۱TB ای را نشان میدهد و کم کم فضا تخصیص میدهد تا سقف مثلا ۱TB .  ضمنا VHDX ورژن جدید VHD است. بعد از اینکه ساخته شد آنرا Initialize میکنیم و Partition Style آن را که یا MBR است یا GPT مشخص میکنیم را انتخاب میکنیم و دیسک Online میشود.

13

برای مثال وقتی روی سه تا دیسک RAID 5 راه اندازی میکنیم به صورت زیر سه تایی که مشخص شده با هم دیگر یک Volume را تشکیل میدهند:

برای مثال به طور کامل تر خواهیم داشت:

فقط توجه داشته باشید که رنگ های بنفش که Spanned Volume هستند همانطور که قبلا گفته شد جزء RAID ها محسوب نمیشود.

نویسنده : مهندس محمد آجورلو

برگرفته از وب سایت تخصصی ادمین پرو   https://www.adminpro.ir

لینک مستقیم مقاله     https://goo.gl/c5jYgs

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *