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

دیسک و زیرسیستم های فایل یک کامپیوتر معمولاً مورد توجه ویژه کاربران قرار نمی گیرند. وینچستر یک چیز نسبتاً قابل اعتماد است و به تنهایی بدون جلب توجه یک کاربر معمولی عمل می کند.

با تسلط بر تکنیک های اساسی کار با فایل ها و پوشه ها، چنین کاربری آنها را به اتوماسیون کامل می رساند، بدون اینکه به وجود ابزارهای اضافی برای نگهداری هارد دیسک فکر کند. مدیریت دیسک به طور کامل به سیستم عامل منتقل شده است.

مشکلات یا زمانی شروع می‌شوند که سیستم فایل کاهش عملکرد واضحی را نشان می‌دهد، یا زمانی که شروع به شکست می‌کند. دلیل دیگری برای مطالعه دقیق تر این موضوع: نصب چندین "پیچ" در یک رایانه شخصی به طور همزمان.

مانند هر دستگاه پیچیده، یک هارد دیسک نیاز به تعمیر و نگهداری منظم دارد. ویندوز 7 اگرچه برخی از این نگرانی ها را برطرف می کند، اما به تنهایی قادر به حل همه مشکلات برای شما نیست. در غیر این صورت، "ترمز" در طول زمان تضمین می شود.حداقل باید بتوانید کارهای زیر را انجام دهید:

  • سیستم فایل را از زباله ها پاک کنید. مفهوم زباله شامل فایل‌های موقت، کوکی‌های مرورگر که تکثیر شده‌اند، اطلاعات تکراری و غیره است.
  • هارد دیسک خود را یکپارچه سازی کنید. سیستم فایل ویندوز به گونه ای ساخته شده است که آنچه کاربر به عنوان یک کل می بیند در واقع قطعات جداگانه ای از فایل های پراکنده بر روی سطح مغناطیسی هارد دیسک است که در یک زنجیره متحد شده اند: هر قطعه قبلی هر قطعه بعدی را می شناسد. برای خواندن کل فایل باید این قسمت ها را کنار هم قرار دهید که برای این کار باید تعداد زیادی چرخه خواندن را از مکان های مختلف روی سطح انجام دهید. هنگام ضبط هم همین اتفاق می افتد. Defragmentation به شما امکان می دهد تمام این قطعات را در یک مکان جمع آوری کنید.
  • مشاهده و تصحیح اطلاعات بخش
  • قادر به باز کردن دسترسی به فایل ها و پوشه های مخفی و سیستمی باشید.
  • در صورت لزوم، بتوانید همزمان با چندین "پیچ" کار کنید.

و همچنین برخی اقدامات مفید دیگر را انجام دهید. در یادداشت خود، به کل دامنه این موضوعات نمی پردازیم، بلکه تنها به چند مورد می پردازیم.

چگونه اطلاعات پارتیشن را بخوانیم؟

برای کسانی که اطلاعی ندارند، توضیحی بدهیم: در ویندوز چیزی به نام "snap" وجود دارد.

این یک فایل اجرایی msc است که مانند یک exe معمولی اجرا می شود. همه snap-in ها یک رابط یکسان دارند و بر اساس فناوری COM - اساس ساختار داخلی این سیستم عامل - ساخته شده اند.

پنجره مدیریت دیسک نیز یک ضربه محکم و ناگهانی است. همانطور که در شکل زیر نشان داده شده است، می توانید آن را با تایپ کردن نام آن diskmgmt.msc در پنجره "Run" اجرا کنید:

در نتیجه پنجره ای از خود snap-in با عنوان «مدیریت دیسک» خواهیم داشت. در اینجا ظاهر این برنامه به شرح زیر است:

این رابط بصری و ساده است. در پانل بالای پنجره، لیستی از تمام حجم ها (یا پارتیشن ها) روی "پیچ" را با اطلاعات مرتبط در مورد آنها، مانند:

  • نام بخش.
  • نوع بخش
  • ظرفیت کامل آن
  • وضعیت آن (بخش های مختلف ممکن است وضعیت متفاوتی داشته باشند).
  • فضای خالی باقیمانده بر حسب گیگابایت و درصد کل.

و اطلاعات دیگر. پانل پایین حاوی لیستی از درایوها و پارتیشن ها است. از اینجاست که می توانید عملیات با ولوم ها و درایوها را انجام دهید. برای انجام این کار، روی نام ولوم راست کلیک کرده و از زیر منوی «عملکردها» عملیات خاصی را انتخاب کنید.

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

عملیات حجمی

بیایید برخی از عملیات غیر آشکار را با پارتیشن ها تجزیه و تحلیل کنیم. ابتدا اجازه دهید در مورد انتقال از فرمت MBR به فرمت GPT بحث کنیم. هر دوی این فرمت ها با انواع مختلف بوت لودر مطابقت دارند. MBR یک فرمت بوت لودر کلاسیک اما در حال حاضر منسوخ شده است.

هم از نظر حجم (حداکثر 2 ترابایت) و هم در تعداد جلدها محدودیت های صریحی دارد - بیش از چهار مورد پشتیبانی نمی شود. حجم و بخش را اشتباه نگیرید - اینها مفاهیم تا حدودی متفاوت از یکدیگر هستند. در مورد تفاوت های آنها در اینترنت بخوانید. فرمت GPT مبتنی بر فناوری GUID است و این محدودیت ها را ندارد.

بنابراین اگر دیسک بزرگی دارید، می توانید MBR را به GPT تبدیل کنید. درست است، در این مورد، تمام داده های روی دیسک از بین می روند - آنها باید در مکان دیگری کپی شوند.

فناوری مجازی سازی در همه جا نفوذ کرده است. از سیستم فایل نیز عبور نکرد. در صورت تمایل، می توانید به اصطلاح "دیسک های مجازی" ایجاد و نصب کنید.

چنین "دستگاهی" یک فایل vhd معمولی است و می تواند به عنوان یک دستگاه فیزیکی معمولی - هم برای خواندن و هم برای نوشتن - استفاده شود.

این امر امکانات بیشتری را برای فهرست نویسی اطلاعات باز می کند. این داستان ما را به پایان می رساند. مدیریت دیسک در ویندوز 7 موضوع نسبتاً گسترده ای است و شما می توانید با غوطه ور شدن در آن چیزهای جدید زیادی کشف کنید.

16.01.1997 پاتریک کوریگان، میکی اپلبام

گزینه های پیکربندی برای زیرسیستم های دیسک سرور متنوع است و در نتیجه سردرگمی اجتناب ناپذیر است. برای کمک به درک این موضوع دشوار، تصمیم گرفتیم فناوری های اصلی و امکان اقتصادی استفاده از آنها را در نظر بگیریم. دیسک

گزینه های پیکربندی برای زیرسیستم های دیسک سرور متنوع است و در نتیجه سردرگمی اجتناب ناپذیر است. برای کمک به درک این موضوع دشوار، تصمیم گرفتیم فناوری های اصلی و امکان اقتصادی استفاده از آنها را در نظر بگیریم.

در مورد زیرسیستم‌های دیسک سرور، گزینه‌های زیادی برای انتخاب دارید، اما فراوانی آن، یافتن سیستمی را که برای شما بهترین کار می‌کند دشوار می‌کند. وضعیت به دلیل این واقعیت پیچیده است که در فرآیند انتخاب باید با حجم قابل توجهی از اطلاعات نادرست و تبلیغات بازاریابی مقابله کنید.

بررسی فناوری های اصلی زیرسیستم های دیسک سرور و بحث در مورد مصلحت استفاده از آنها از نظر هزینه، عملکرد، قابلیت اطمینان و تحمل خطا باید به درک ماهیت این موضوع کمک کند.

رابط های دیسک

چه در حال تعیین یک سرور جدید یا ارتقاء یک سرور موجود باشید، رابط دیسک یک مسئله حیاتی است. امروزه اکثر درایوها از رابط های SCSI یا IDE استفاده می کنند. ما به هر دو فناوری نگاه خواهیم کرد، پیاده سازی آنها را شرح خواهیم داد و در مورد نحوه عملکرد آنها صحبت خواهیم کرد.

SCSI یک رابط استاندارد ANSI است که دارای چندین تنوع است. مشخصات اولیه SCSI که اکنون SCSI-I نامیده می شود، از یک کانال داده 8 بیتی با حداکثر سرعت داده 5 مگابیت در ثانیه استفاده می کند. SCSI-2 چندین تغییر، از جمله SCSI سریع با کانال داده 8 بیتی و سرعت انتقال تا 10 مگابیت در ثانیه را امکان پذیر می کند. SCSI گسترده با کانال داده 16 بیتی و سرعت انتقال تا 10 مگابیت بر ثانیه. و Fast/Wide SCSI با پیوند داده 16 بیتی و سرعت انتقال تا 10 مگابیت در ثانیه (جدول 1 را ببینید).

جدول 1 - گزینه های SCSI

SCSI-1 حداکثر عملکرد پهنای کانال فرکانس تعداد دستگاه*
5 مگابیت بر ثانیه 8 رقمی 5 مگاهرتز 8
SCSI-2
SCSI سریع 10 مگابیت بر ثانیه 8 رقمی 10 مگاهرتز 8
SCSI سریع/عریض 20 مگابیت بر ثانیه 16 رقمی 10 مگاهرتز 8; 16**
* دستگاه های پشتیبانی شده عبارتند از HBA ** با سیگنال خروجی نامتعادل؛ دیفرانسیل

با ظهور SCSI سریع/عریض 16 بیتی "عریض"، نسخه های 8 بیتی گاهی اوقات به عنوان "باریک" - Narrow SCSI شناخته می شوند. چندین پیاده سازی SCSI اخیراً ظاهر شده اند: Ultra SCSI، Wide Ultra SCSI و SCSI-3. در مقایسه با گزینه های رایج تر، این رابط ها دارای برخی مزیت های عملکردی هستند، اما از آنجایی که هنوز بسیار گسترده نیستند (تعداد دستگاه هایی که از این رابط ها استفاده می کنند بسیار محدود است)، در این مقاله به آنها نخواهیم پرداخت.

سیستم کابلی SCSI-I یک گذرگاه خط با قابلیت اتصال حداکثر هشت دستگاه از جمله آداپتور اتوبوس میزبان (HBA) است. این طرح اتوبوس SCSI SCSI یک سر نامیده می شود و طول کابل می تواند تا نه متر باشد. SCSI-2 (عملاً جایگزین SCSI-I) از SCSI تک سر و SCSI دیفرانسیل پشتیبانی می کند. دیفرانسیل SCSI از روش سیگنال دهی متفاوتی نسبت به SCSI تک سر استفاده می کند و تا 16 دستگاه را در یک حلقه تا طول 25 متر پشتیبانی می کند. سرکوب بهتر نویز را فراهم می کند، که به معنای عملکرد بهتر در بسیاری از موارد است.

یکی از مشکلات SCSI دیفرانسیل سازگاری دستگاه است. به عنوان مثال، امروزه انواع محدودی از درایوهای نوار و درایوهای CD-ROM سازگار با SCSI دیفرانسیل وجود دارد. دستگاه‌های دیفرانسیل و HBA معمولاً کمی گران‌تر از دستگاه‌های تک پایانی هستند، اما مزیت پشتیبانی از دستگاه‌های بیشتر در هر کانال، حلقه‌های طولانی‌تر و در برخی موارد عملکرد بهتر را دارند.

هنگام انتخاب دستگاه های SCSI، باید از مشکلات سازگاری آگاه باشید. SCSI تک سر و SCSI دیفرانسیل می توانند از سیم کشی یکسانی استفاده کنند، اما دستگاه های تک سر و دیفرانسیل را نمی توان با هم ترکیب کرد. Wide SCSI از سیستم کابل کشی متفاوتی نسبت به Narrow SCSI استفاده می کند، بنابراین امکان استفاده از دستگاه های Wide SCSI و Narrow SCSI در یک کانال وجود ندارد.

SCSI چگونه کار می کند

در SCSI، کنترل کننده دستگاه (به عنوان مثال، یک کنترل کننده دیسک) و رابط با کامپیوتر دستگاه های مختلفی هستند. رابط کامپیوتری، HBA، یک گذرگاه رابط اضافی را برای اتصال چندین کنترلر دستگاه به رایانه اضافه می کند: حداکثر هفت کنترل کننده دستگاه در یک پیوند SCSI یک طرفه و حداکثر تا 15 در یک پیوند دیفرانسیل. از نظر فنی، هر کنترلر می تواند تا چهار دستگاه را پشتیبانی کند. با این حال، در نرخ های انتقال بالای درایوهای پرظرفیت امروزی، کنترل کننده دستگاه معمولاً برای کاهش نویز و نویز الکتریکی در درایو تعبیه شده است. این به این معنی است که شما می توانید تا هفت درایو را در یک پیوند SCSI تک سر و حداکثر تا 15 درایو را در یک پیوند SCSI دیفرانسیل داشته باشید.

یکی از مزایای SCSI پردازش دستورات متعدد و همپوشانی است. این پشتیبانی همپوشانی ورودی/خروجی به درایوهای SCSI این توانایی را می‌دهد که خواندن و نوشتن خود را به طور کامل با سایر درایوهای سیستم ترکیب کنند، به طوری که درایوهای مختلف می‌توانند دستورات را به‌جای یکی در یک زمان به صورت موازی پردازش کنند.

از آنجایی که تمام هوش رابط دیسک SCSI در HBA قرار دارد، HBA دسترسی سیستم عامل به دیسک ها را کنترل می کند. در نتیجه، HBA، نه رایانه، تضادهای ترجمه و دسترسی دستگاه را حل می کند. به طور کلی، این بدان معناست که به شرط استفاده از درایورهای درست نوشته و نصب شده، کامپیوتر و سیستم عامل هیچ تفاوتی بین دستگاه ها نمی بینند.

علاوه بر این، از آنجایی که HBA دسترسی بین گذرگاه توسعه داخلی کامپیوتر و گذرگاه SCSI را کنترل می‌کند، می‌تواند تضادهای دسترسی هر دوی آنها را با ارائه ویژگی‌های پیشرفته مانند سرویس شکستن/بازیابی لینک حل کند. Break/Recovery به سیستم عامل اجازه می دهد تا دستور find، read یا write را به یک دستگاه خاص ارسال کند، پس از آن درایو برای اجرای فرمان به حال خود رها می شود تا درایو دیگری در همان کانال بتواند در این فاصله فرمان را دریافت کند. این فرآیند تا حد زیادی توان عملیاتی کانال‌های دیسک با بیش از دو دیسک را بهبود می‌بخشد، به خصوص زمانی که داده‌ها به صورت راه راه یا پراکنده روی دیسک‌ها هستند. یکی دیگر از ویژگی های پیشرفته، تبادل همزمان داده ها است که به موجب آن توان عملیاتی کانال دیسک و یکپارچگی داده ها افزایش می یابد.

IDE

IDE استانداردی است که به طور گسترده در رایانه های شخصی مبتنی بر x86 استفاده می شود. این فقط یک توصیه کلی برای سازندگان است، بنابراین همه آزاد بودند تا یک IDE خاص برای دستگاه ها و آداپتورهای خود ایجاد کنند. در نتیجه، محصولات تولید کنندگان مختلف و حتی مدل های مختلف یک سازنده، با یکدیگر ناسازگار شدند. پس از حل شدن مشخصات، این مشکل تقریباً ناپدید شده است، اما ناسازگاری همچنان امکان پذیر است.

برخلاف SCSI، IDE اطلاعات را به جای HBA روی دیسک قرار می دهد. HBA برای IDE هوش کمی دارد و به سادگی گذرگاه کامپیوتر را به دیسک‌ها خروجی می‌دهد. بدون رابط میانی، تعداد دستگاه ها در یک کانال IDE به دو و طول کابل به سه متر محدود می شود.

از آنجایی که تمام هوشمندی دستگاه های IDE روی خود دستگاه ها قرار دارد، یکی از دستگاه های موجود در کانال به عنوان اصلی کانال اختصاص داده می شود و کنترلر داخلی روی دومی غیرفعال می شود و به Slave تبدیل می شود (slave کانال). دستگاه اصلی دسترسی از طریق کانال IDE به هر دو دستگاه را کنترل می کند و تمام عملیات I/O را برای آنها انجام می دهد. این یکی از احتمالات تضاد بین دستگاه ها به دلیل پیاده سازی فروشنده های مختلف رابط IDE است. به عنوان مثال، یک درایو ممکن است برای کار با یک طرح کنترل خاص طراحی شده باشد، اما میزبانی که به آن متصل است ممکن است از نوع کنترلر متفاوتی استفاده کند. علاوه بر این، درایوهای پیشرفته‌تر IDE (EIDE) از مجموعه گسترده‌ای از دستورات و جداول ترجمه برای پشتیبانی از درایوهای ظرفیت بیشتر و عملکرد بالاتر استفاده می‌کنند. اگر آنها به یک درایو اصلی استاندارد IDE متصل شوند، نه تنها ویژگی های پیشرفته خود را از دست می دهند، بلکه ممکن است تمام ظرفیت موجود خود را در اختیار شما قرار ندهند. بدتر از آن، آنها می توانند ظرفیت کامل خود را بدون استفاده از سیستم عامل گزارش دهند و به طور بالقوه به اطلاعات روی دیسک آسیب می رسانند.

احتمال خرابی داده ها به این دلیل است که هر سیستم عامل اطلاعات پیکربندی دیسک را به روش خود درک می کند. به عنوان مثال، DOS و بایوس سیستم تنها حداکثر ظرفیت دیسک 528 مگابایت را مجاز می‌کنند. NetWare و سایر سیستم های 32 بیتی این محدودیت ها را ندارند و می توانند کل درایو IDE را مستقیماً از طریق وسایل الکترونیکی خود بخوانند. هنگامی که چندین پارتیشن از سیستم عامل های مختلف را بر روی یک دیسک ایجاد می کنید، هر یک از آنها ظرفیت و پیکربندی متفاوتی را مشاهده می کنند و این می تواند منجر به همپوشانی جداول پارتیشن شود که به نوبه خود خطر از دست رفتن اطلاعات روی دیسک را به میزان قابل توجهی افزایش می دهد.

معماری اصلی IDE درایوهای بزرگتر از 528 مگابایت را شناسایی نمی کند و تنها می تواند دو دستگاه را در هر کانال با حداکثر سرعت انتقال 3 مگابیت در ثانیه پشتیبانی کند. برای غلبه بر برخی از محدودیت های IDE، معماری EIDE در سال 1994 معرفی شد. EIDE از ظرفیت و کارایی بالاتر پشتیبانی می کند، اما نرخ انتقال آن از 9 تا 16 مگابیت بر ثانیه هنوز کمتر از SCSI است. همچنین، برخلاف 15 دستگاه در هر کانال برای SCSI، می تواند حداکثر 4 دستگاه را در هر کانال پشتیبانی کند. همچنین توجه داشته باشید که نه IDE و نه EIDE ویژگی های چندوظیفه ای را ارائه نمی دهند. و بنابراین، آنها نمی توانند همان سطح کارایی رابط های SCSI را در یک محیط سرور معمولی ارائه دهند.

اگرچه در ابتدا برای دیسک طراحی شده بود، استاندارد IDE اکنون از درایوهای نوار و CD-ROM پشتیبانی می کند. با این حال، تقسیم یک کانال با CD-ROM یا درایو نوار می تواند بر عملکرد دیسک تأثیر منفی بگذارد. به طور کلی، مزیت های عملکرد و مقیاس پذیری SCSI آن را به انتخاب بهتری نسبت به IDE یا EIDE برای اکثر برنامه های کاربردی سرور رده بالا که به عملکرد بالا نیاز دارند تبدیل می کند. با این حال، برای برنامه‌های سطح مبتدی که عملکرد یا توسعه‌پذیری چندان مهم نیست، یک IDE یا EIDE کافی است. در عین حال، اگر به افزونگی دیسک نیاز دارید، به دلیل مشکلات احتمالی مرتبط با رویکرد master-slave، IDE بهترین گزینه نیست. علاوه بر این، باید مراقب همپوشانی احتمالی جدول پارتیشن و مشکلات ناسازگاری دستگاه master-slave باشید.

با این حال، چند مورد وجود دارد که رابط های IDE و EIDE را می توان در سرورهای پیشرفته استفاده کرد. به عنوان مثال، استفاده از یک درایو کوچک IDE برای پارتیشن DOS در سرورهای NetWare معمول است. همچنین استفاده از درایوهای CD-ROM با رابط IDE برای دانلود نرم افزار به طور گسترده انجام می شود.

سیستم های دیسک اضافی

موضوع مهم دیگری که باید در هنگام تعریف مشخصات سرور مورد بحث قرار گیرد، افزونگی است. چندین روش برای بهبود قابلیت اطمینان یک سیستم چند دیسکی وجود دارد. بیشتر این طرح‌های افزونگی، انواعی از RAID هستند (مخفف "آرایه اضافی از دیسک‌های ارزان یا مستقل"). مشخصات اصلی RAID برای جایگزینی دیسک‌های بزرگ و گران‌قیمت رایانه‌های بزرگ و مینی‌کامپیوتر با آرایه‌هایی از دیسک‌های کوچک و ارزان قیمت طراحی شده برای رایانه‌های کوچک طراحی شده بود – از این رو کلمه «ارزان» نامیده می‌شود. متأسفانه، به ندرت در سیستم های RAID چیزی ارزان قیمت می بینید.

RAID مجموعه ای از پیاده سازی آرایه های دیسک اضافی برای ارائه سطوح مختلف حفاظت و نرخ انتقال داده است. از آنجایی که RAID شامل استفاده از آرایه های دیسک است، SCSI بهترین رابط برای استفاده است زیرا می تواند حداکثر 15 دستگاه را پشتیبانی کند. 6 سطح RAID وجود دارد: از صفر تا پنجم. اگرچه برخی از تولیدکنندگان طرح‌های افزونگی خود را تبلیغ می‌کنند که از آن به عنوان RAID-6، RAID-7 یا بالاتر یاد می‌کنند. (RAID-2 و RAID-4 روی سرورهای شبکه نیستند، بنابراین در مورد آنها صحبت نمی کنیم.)

در بین تمام سطوح RAID، صفر بالاترین عملکرد و کمترین امنیت را دارد. حداقل دو دستگاه و نوشتن داده های همگام شده روی هر دو دیسک را فرض می کند، در حالی که دیسک ها شبیه یک دستگاه فیزیکی هستند. فرآیند نوشتن داده ها در چندین دیسک را درایو پوشاندن و روش واقعی نوشتن این داده ها را نوار داده می نامند. با striping، داده ها در تمام دیسک ها بلوک به بلوک نوشته می شود. این فرآیند را بلوک درهم می گویند. اندازه بلوک توسط سیستم عامل تعیین می شود، اما معمولاً از 2 کیلوبایت تا 64 کیلوبایت متغیر است. بسته به طراحی کنترل‌کننده دیسک و HBA، این نوشته‌های متوالی ممکن است با هم همپوشانی داشته باشند و در نتیجه عملکرد را افزایش دهند. به عنوان مثال، RAID-0 به تنهایی می تواند عملکرد را بهبود بخشد، اما محافظت از خطا را ارائه نمی دهد. اگر یک درایو از کار بیفتد، کل زیرسیستم از کار می افتد و معمولاً منجر به از دست رفتن کامل داده ها می شود.

یکی از انواع درهم آمیختن داده ها پراکندگی داده است. مانند striping، داده ها به صورت متوالی در چندین دیسک که پر می شوند نوشته می شود. با این حال، بر خلاف striping، نوشتن بر روی همه دیسک ها ضروری نیست. اگر دیسک مشغول یا پر است، داده ها را می توان در دیسک موجود بعدی نوشت - این به شما امکان می دهد دیسک ها را به حجم موجود اضافه کنید. مانند استاندارد RAID-0، ترکیب جمعیت دیسک با نوار داده ها عملکرد را بهبود می بخشد و اندازه حجم را افزایش می دهد، اما محافظت از خرابی را ارائه نمی دهد.

RAID-1 که به عنوان انعکاس دیسک شناخته می شود، شامل نصب جفت دیسک های یکسان است که هر دیسک در جفت تصویر آینه ای دیگری است. در RAID-1، داده ها روی دو جفت دیسک یکسان یا تقریباً یکسان نوشته می شوند: برای مثال، زمانی که یک دیسک از کار می افتد، سیستم با یک دیسک آینه ای به کار خود ادامه می دهد. اگر دیسک‌های آینه‌ای دارای یک HBA مشترک باشند، عملکرد این پیکربندی، در مقایسه با یک دیسک، پایین‌تر خواهد بود، زیرا داده‌ها باید به صورت متوالی در هر دیسک نوشته شوند.

ناول تعریف میرورینگ را محدود کرد و مفهوم دوبلکس را اضافه کرد. بر اساس اصطلاحات ناول، آینه‌سازی به جفت‌های دیسک زمانی اطلاق می‌شود که از طریق یک HBA به یک سرور یا رایانه متصل می‌شوند، در حالی که کپی‌سازی به جفت‌های دیسک آینه‌ای اشاره دارد که از طریق HBA‌های جداگانه متصل می‌شوند. افزونگی افزونگی را برای کل کانال دیسک، از جمله HBA، کابل‌ها و دیسک‌ها فراهم می‌کند و برخی از عملکردها را افزایش می‌دهد.

RAID-3 به حداقل سه درایو یکسان نیاز دارد. این اغلب به عنوان فناوری "n منهای 1" (n-1) نامیده می شود زیرا حداکثر ظرفیت سیستم توسط تعداد کل درایوهای آرایه (n) منهای یک درایو برای برابری داده می شود. RAID-3 از یک روش نوشتن به نام bit interleaving استفاده می کند که در آن داده ها به صورت بیت به بیت روی همه دیسک ها نوشته می شوند. برای هر بایت نوشته شده روی n-دیسک، یک بیت برابری در "دیسک برابری" نوشته می شود. این یک فرآیند بسیار کند است زیرا قبل از اینکه اطلاعات برابری تولید و در "دیسک برابری" نوشته شود، داده ها باید در هر یک از n دیسک آرایه نوشته شوند. می توانید عملکرد RAID-3 را با همگام سازی مکانیسم های چرخش دیسک به طوری که آنها به طور دقیق در مرحله کار کنند، افزایش دهید. با این حال، به دلیل محدودیت های عملکرد، استفاده از RAID-3 به طور چشمگیری کاهش یافته است و تعداد کمی از محصولات سرور مبتنی بر RAID-3 امروزه به فروش می رسند.

RAID-5 محبوب ترین پیاده سازی RAID در بازار سرور شبکه است. مانند RAID-3، حداقل به سه دیسک یکسان نیاز دارد. با این حال، بر خلاف RAID-3، RAID-5 بلوک های داده را بدون استفاده از یک دیسک اختصاصی برای برابری می کند. هم داده ها و هم چک جمع روی کل آرایه نوشته می شوند. این روش به خواندن و نوشتن مستقل روی دیسک اجازه می دهد و به سیستم عامل یا کنترل کننده RAID اجازه می دهد چندین I/O همزمان را انجام دهد.

در پیکربندی‌های RAID-5، دیسک تنها زمانی قابل دسترسی است که اطلاعات برابری یا داده‌ها از روی آن خوانده یا نوشته شوند. در نتیجه RAID-5 عملکرد بهتری نسبت به RAID-3 دارد. در عمل، عملکرد RAID-5 گاهی اوقات می تواند با عملکرد سیستم های تک دیسک مطابقت داشته باشد یا حتی از آن فراتر رود. البته این بهبود عملکرد به عوامل زیادی بستگی دارد، از جمله اینکه آرایه RAID چگونه پیاده‌سازی می‌شود و سیستم عامل سرور چه قابلیت‌هایی دارد. RAID-5 همچنین بالاترین سطح یکپارچگی داده را در میان هر پیاده سازی استاندارد RAID فراهم می کند زیرا هم داده ها و هم برابری به صورت راه راه نوشته شده اند. از آنجایی که RAID-5 به جای نوار بیت از نوار بلاک استفاده می کند، هیچ مزیت عملکردی برای همگام سازی اسپین وجود ندارد.

برخی از سازندگان افزونه هایی را به سیستم های RAID-5 خود اضافه کرده اند. یکی از این برنامه‌های افزودنی وجود یک دیسک "هت یدکی" است که در آرایه تعبیه شده است. اگر یک درایو از کار بیفتد، هات یدکی بلافاصله جایگزین درایو خراب می شود و داده ها را با بازیابی برابری در پس زمینه به خود برمی گرداند. با این حال، به خاطر داشته باشید که بازسازی دیسک RAID-5 منجر به افت شدید عملکرد سرور می شود. (برای اطلاعات بیشتر در مورد درایوهای hot-swap و hot-spare، به نوار کناری "ویژگی های درایو داغ" مراجعه کنید.)

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

سیستم های RAID پیاده سازی شده با نرم افزار مقدار قابل توجهی از منابع پردازنده سیستم و همچنین حافظه سیستم را اشغال می کنند که عملکرد سرور را تا حد زیادی کاهش می دهد. سیستم‌های RAID نرم‌افزاری گاهی اوقات به عنوان یکی از ویژگی‌های سیستم عامل (همانطور که با Microsoft Windows NT Server انجام می‌شود) یا به عنوان یک افزونه شخص ثالث (همانطور که با NetWare و سیستم عامل مکینتاش انجام می‌شود) گنجانده می‌شوند.

سیستم های RAID مبتنی بر سخت افزار از یک کنترلر آرایه RAID اختصاصی استفاده می کنند. معمولاً پردازنده، کش و نرم افزار ROM مخصوص به خود را برای ورودی/خروجی و برابری دیسک دارد. داشتن یک کنترلر اختصاصی برای انجام این عملیات، پردازنده سرور را برای انجام سایر عملکردها آزاد می کند. علاوه بر این، از آنجایی که نرم افزار پردازنده و آداپتور به طور خاص برای عملکرد RAID تنظیم شده اند، عملکرد ورودی/خروجی دیسک و یکپارچگی داده ها را نسبت به سیستم های RAID مبتنی بر نرم افزار ارائه می کنند. متأسفانه، کنترل‌کننده‌های RAID مبتنی بر سخت‌افزار نسبت به رقبای مبتنی بر نرم‌افزار گران‌تر هستند.

آینه سازی، تکثیر و پر کردن

برخی از سیستم عامل ها، از جمله NetWare و Windows NT Server، امکان انعکاس دیسک را در چندین کانال دیسک فراهم می کنند، بنابراین یک لایه اضافی از افزونگی را فراهم می کنند. همانطور که قبلا ذکر شد، ناول رویکرد دوم را تکرار دیسک می نامد. هنگامی که با پر کردن دیسک ترکیب می‌شود، تکرار می‌تواند عملکرد بهتری نسبت به سیستم‌های تک دیسک ارائه دهد و عموماً می‌تواند از اجرای سخت‌افزار RAID-5 بهتر عمل کند. از آنجایی که هر نیمه از یک جفت دیسک آینه‌ای از یک کانال دیسک جداگانه استفاده می‌کند، بر خلاف مواردی که دیسک‌ها روی یک HBA هستند، می‌توان به طور همزمان روی دیسک نوشت. همچنین تکرار امکان جستجوی تقسیم را فراهم می کند - فرآیند تقسیم درخواست های خواندن بین کانال های دیسک برای اجرای سریعتر. این ویژگی عملکرد خواندن دیسک را دو برابر می کند زیرا هر دو کانال بلوک های مختلف را به صورت موازی از یک مجموعه داده جستجو می کنند. همچنین تأثیر عملکرد هنگام نوشتن روی دیسک را کاهش می دهد، زیرا یک کانال می تواند داده ها را بخواند در حالی که کانال دیگر می نویسد.

NetWare تا هشت کانال دیسک را پشتیبانی می کند (بعضی از آداپتورهای SCSI چندین کانال را ارائه می دهند)، به این معنی که می توانید برای هر جفت تکراری چندین کانال داشته باشید. حتی می توانید تا هشت کانال آینه ای مجزا را سازماندهی کنید. Windows NT Server همچنین انعکاس و تکرارهای مبتنی بر نرم افزار را فراهم می کند، اما هنوز از نوشتن موازی و جستجوهای جداگانه پشتیبانی نمی کند.

چهار عامل اصلی برای انتخاب یک سیستم دیسک اضافی وجود دارد: عملکرد، هزینه، قابلیت اطمینان و حفاظت از خرابی.

از نظر عملکرد، قابلیت‌های داخلی سیستم عامل سرور یک عامل اصلی است، به خصوص زمانی که افزونگی دیسک به میان می‌آید. همانطور که قبلاً گفته شد، کپی کردن دیسک NetWare همراه با پر کردن دیسک عملکرد بهتری نسبت به RAID سخت افزاری یا نرم افزاری دارد. با این حال، عملکرد RAID سخت افزاری به طور کلی نسبت به خدمات دیسک داخلی ویندوز NT سرور برتر است. به طور کلی، در طول سال ها، فناوری و عملکرد سیستم های RAID به طور مداوم در حال بهبود بوده است.

یکی دیگر از مشکلات بالقوه عملکرد سیستم های RAID، بازیابی اطلاعات در صورت بروز فاجعه است. تا همین اواخر، اگر درایو از کار می افتاد، برای بازیابی آن باید آرایه RAID را خاموش می کردید. همچنین، اگر می‌خواهید اندازه آرایه را تغییر دهید (ظرفیت آن را افزایش یا کاهش دهید)، باید یک نسخه پشتیبان کامل از سیستم تهیه کرده و سپس آرایه را مجدداً پیکربندی و مقداردهی اولیه کنید و در طول این فرآیند تمام داده‌ها را پاک کنید. در هر دو مورد، سیستم برای مدتی طولانی در دسترس نیست.

برای حل این مشکل، Compaq کنترلر Smart Array-II را توسعه داده است که به شما امکان می دهد ظرفیت یک آرایه را بدون شروع مجدد پیکربندی آرایه موجود افزایش دهید. سایر تولیدکنندگان، از جمله فناوری پردازش توزیع شده (DPT)، اعلام کرده اند که کنترل کننده های آنها عملکردهای مشابهی را در آینده ای نه چندان دور انجام خواهند داد. بسیاری از آرایه های جدید دارای ابزارهای کاربردی برای سیستم عامل های مختلف هستند که می توان از آنها برای بازیابی آرایه پس از جایگزینی دستگاه آسیب دیده بدون خاموش کردن سرور استفاده کرد. با این حال، به خاطر داشته باشید که این ابزارها منابع سرور زیادی را می خورند و در نتیجه بر عملکرد سیستم تأثیر منفی می گذارند. برای جلوگیری از این نوع مشکل، بازیابی سیستم باید در ساعات غیر کاری انجام شود.

بحث های زیادی در صنعت و انتشارات فروشنده RAID در مورد تفاوت هزینه بین Mirroring، Duplication و پیاده سازی RAID وجود داشته است. Mirroring و Duplication 100% دیسک ها و (در صورت تکرار) HBA ها را دوبرابر می کند، در حالی که پیاده سازی های RAID دارای یک کنترلر HBA و/یا RAID به اضافه یک دیسک بیشتر از ظرفیتی هستند که می خواهید در پایان داشته باشید. با توجه به این استدلال ها، RAID ارزان تر است زیرا تعداد دیسک های مورد نیاز کمتر است. اگر محدودیت‌های عملکرد پیاده‌سازی‌های RAID نرم‌افزاری موجود در سیستم عامل، مانند مواردی که در Windows NT وجود دارد، برای شما قابل تحمل باشد، ممکن است درست باشد. با این حال، در بیشتر موارد، یک کنترلر RAID اختصاصی برای دستیابی به عملکرد مناسب مورد نیاز است.

درایوها و آداپتورهای استاندارد SCSI نسبتاً ارزان هستند، در حالی که یک کنترلر RAID با کیفیت می تواند تا 4500 دلار قیمت داشته باشد. برای تعیین هزینه سیستم خود، باید تنظیمات بهینه را برای همه اجزا در نظر بگیرید. به عنوان مثال، اگر تقریباً به 16 گیگابایت فضای دیسک آدرس پذیر نیاز دارید، می توانید یک پیکربندی آینه ای با دو دیسک 9 گیگابایتی در هر کانال پیاده سازی کنید و مقداری ظرفیت اضافی دریافت کنید. در مورد RAID-5، به دلایل عملکرد و قابلیت اطمینان، بهتر است از پنج درایو 4 گیگابایتی استفاده کنید تا تعداد اسپیندل های نوار داده و در نتیجه عملکرد کلی آرایه افزایش یابد.

با یک زیرسیستم دیسک خارجی، پیکربندی آینه تقریباً 10500 دلار به ازای هر 18 گیگابایت فضای موجود هزینه خواهد داشت. این رقم بر اساس قیمت‌های واقعی خرده‌فروشی است: 2000 دلار برای یک درایو، 250 دلار برای یک HBA، و 300 دلار برای هر زیرسیستم دیسک خارجی شامل کابل‌ها. یک سیستم RAID-5 پیکربندی شده با 16 گیگابایت فضای آدرس پذیر با استفاده از پنج دیسک 4 گیگابایتی حدود 12800 دلار هزینه خواهد داشت. این رقم بر اساس قیمت های واقعی خرده فروشی برای یک آرایه DPT RAID-5 است.

بسیاری از سیستم های RAID شامل اجزای "اختصاصی" طراحی شده توسط سازنده هستند. حداقل، "مارک" مورد و پانل عقب هستند. کنترلرهای HBA و RAID نیز اغلب اختصاصی هستند. برخی از سازندگان نیز از نگهدارنده ها و لاستیک های غیر استاندارد برای دیسک ها استفاده می کنند. کسی آنها را به طور جداگانه با قیمت مناسب ارائه می دهد ، کسی - فقط همراه با دیسک و به عنوان یک قاعده با قیمت بالا. هنگامی که شما نیاز به تعمیر یا گسترش سیستم خود دارید، رویکرد دوم می تواند پرهزینه باشد. راه دیگری که فروشنده شما را به گوشه ای سوق می دهد، ارائه نرم افزار مدیریت و نظارت بر دیسک است که فقط با اجزای خاص کار می کند. با اجتناب از اجزای غیر استاندارد در صورت امکان، معمولاً می توان هزینه را پایین نگه داشت.

هنگام مقایسه قابلیت اطمینان سیستم های دیسک اضافی، دو عامل وجود دارد که باید در نظر گرفته شود: احتمال خرابی سیستم یا خرابی هر یک از اجزای آن، و احتمال از دست رفتن اطلاعات به دلیل خرابی قطعه. (متاسفانه RAID یا Mirroring نمی تواند شما را از عامل اصلی از دست دادن اطلاعات - خطای کاربر - نجات دهد!)

P = t / Tc،

که در آن t زمان عملیات و Tc زمان ترکیبی بین خرابی قطعات است.

هنگامی که بدون خرابی به مدت یک سال (8760 ساعت) و Tc یک دیسک فرضی 300000 ساعت اجرا می شود، احتمال خرابی 3٪ یا کمی کمتر از یک در 34 مورد می شود. با افزایش تعداد قطعات، احتمال خرابی خرابی هر جزء افزایش می یابد. هم RAID و هم Mirroring احتمال خرابی را افزایش می دهند اما احتمال از دست دادن اطلاعات را کاهش می دهند.

جدول 2 که از بولتن ابعاد ذخیره سازی با عنوان "سیستم های ذخیره سازی مقاوم در برابر خطا برای شبکه سازی مداوم" گرفته شده است، احتمال خرابی محاسبه شده با استفاده از فرمول فوق را در مقابل احتمال از دست دادن داده ها برای چهار دیسک بالشتکی، یک آرایه RAID پنج دیسکی و هشت دیسک آینه ای (با فرض اینکه همه درایوها یک اندازه هستند و هر سه سیستم ظرفیت قابل استفاده یکسانی را ارائه می دهند. برای یک بولتن، به صفحه Storage Dimensions مراجعه کنید: http://www.storagedimensions.com/raidwin/wp-ovrvw.html.)

جدول 2 - برآوردهای احتمال شکست

اگرچه میرورینگ همراه با پر کردن درایو احتمال خرابی دیسک از نظر آماری بالاتری دارد، اما در صورت از کار افتادن دیسک، احتمال از دست دادن اطلاعات نیز بسیار کمتر است. همچنین، با طراحی مناسب سیستم اضافی، زمان بازیابی می تواند به طور قابل توجهی کوتاهتر شود.

این مثال بسیاری از عوامل را در نظر نمی گیرد. برای به دست آوردن یک رقم آماری صحیح، باید میانگین زمان بین خرابی تمام اجزای سیستم دیسک، از جمله HBA، کابل‌های ریبون، کابل‌های برق، فن‌ها و منابع تغذیه محاسبه شود. البته، این محاسبات فقط نشان می دهد که با توجه به قابلیت اطمینان اجزای پیشنهادی چه اتفاقی می افتد، اما اصلاً ضروری نیست که این اتفاق بیفتد.

هنگام انتخاب یک سیستم دیسک، باید به وضوح بدانید که کدام اجزاء تکراری نیستند. در سیستم‌های RAID، این می‌تواند شامل HBA، کنترل‌کننده‌های RAID، منابع تغذیه، کابل‌های برق و کابل‌های ریبون باشد. یکی از مزایای تکرار با زیرسیستم های دیسک جداگانه در هر کانال، حذف اکثر مکان هایی است که ممکن است خرابی رخ دهد.

نتیجه

به طور کلی، دستگاه های SCSI نسبت به درایوهای IDE یا EIDE انتخاب بهتری برای زیرسیستم دیسک سرور هستند. دریافت درایوهای SCSI تا 9 گیگابایت در هر درایو آسان است، در حالی که درایوهای EIDE امروزی حداکثر ظرفیتی در حدود 2.5 گیگابایت دارند. با چندین HBA دو لینک، کل ظرفیت SCSI می تواند به راحتی از 100 گیگابایت تجاوز کند، در حالی که محدودیت EIDE 10 گیگابایت است. SCSI همچنین عملکرد بهتری دارد. علاوه بر این، SCSI از مشکلاتی که رویکرد master-slave در IDE/EIDE مستلزم آن است، رنج نمی برد.

اگر به افزونگی دیسک نیاز دارید، چندین گزینه وجود دارد. افزونگی Novell NetWare همراه با پر کردن دیسک، عملکرد عالی و محافظت در برابر شکست را فراهم می کند. RAID مبتنی بر سخت افزار نیز انتخاب خوبی است، اما معمولاً عملکرد کمتر و هزینه بالاتری دارد. اگر از ویندوز NT استفاده می کنید و عملکرد برای شما مهم است، RAID سخت افزاری ممکن است بهترین گزینه برای شما باشد.

پاتریک کوریگان رئیس و مشاور و تحلیلگر ارشد در گروه کوریگان، یک شرکت مشاوره و آموزش است. می توان با او تماس گرفت: [ایمیل محافظت شده]یا از طریق Compuserve: 75170.146. میکی اپلبام مشاور ارشد شبکه در GSE Erudite Software است. می توان با او تماس گرفت: [ایمیل محافظت شده]

معرفی توابع زیرسیستم دیسک

توابع "داغ" زیرسیستم های دیسک

اصطلاحات hot-swap، hot spare و hot-rebuild، که به طور گسترده برای توصیف عملکردهای خاص زیرسیستم‌های دیسک استفاده می‌شوند، اغلب اشتباه گرفته می‌شوند.

"Hot Swap" قابلیتی است که به شما امکان می دهد یک دیسک خراب را از زیر سیستم دیسک بدون خاموش کردن سیستم حذف کنید. پشتیبانی از Hot Swap یکی از ویژگی های سخت افزاری زیرسیستم دیسک شما است، نه RAID.

در سیستم‌های با قابلیت تعویض داغ، هارد دیسک‌ها معمولاً روی سورتمه‌هایی نصب می‌شوند که به پین‌های زمین بین درایو و شاسی اجازه می‌دهند تا مدت بیشتری نسبت به خطوط برق و کنترلر متصل بمانند. این درایو را از آسیب ناشی از تخلیه استاتیکی یا قوس الکتریکی بین کنتاکت ها محافظت می کند. دیسک های قابل تعویض داغ را می توان هم در آرایه های RAID و هم در سیستم های دیسک آینه ای استفاده کرد.

"بازیابی داغ" به توانایی سیستم برای بازیابی پیکربندی دیسک اصلی به طور خودکار پس از تعویض دیسک خراب اشاره دارد.

لوازم یدکی هات در یک آرایه RAID تعبیه شده و معمولاً تا زمانی که به آنها نیاز نباشد بیکار می مانند. پس از اینکه هات یدکی جایگزین درایو خراب شد، باید درایو خراب را جایگزین کرده و آرایه را دوباره پیکربندی کنید.

یک سیستم دیسک قابل تعویض داغ با دیسک های یدکی داغ لزوماً قابلیت بازیابی داغ را ندارد. "Hot Swap" به سادگی به شما امکان می دهد تا به سرعت، ایمن و به راحتی یک درایو را حذف/نصب کنید. به نظر می رسد که یک "هت یدکی" یک "بازسازی داغ" را ارائه می دهد زیرا اجازه می دهد یک درایو خراب در یک آرایه RAID بلافاصله جایگزین شود، اما درایو خراب هنوز باید قبل از اینکه دستور بازسازی داده شود، جایگزین شود. امروزه، همه سیستم‌های RAID موجود بر روی پلت‌فرم رایانه شخصی به سطحی از مداخله کاربر برای شروع بازیابی داده‌ها نیاز دارند - حداقل در سطح بارگیری ماژول NLM در سرور NetWare یا فشار دادن دکمه شروع در منوی برنامه NT Server.



هدف معماری‌های مقاوم در برابر خطا، ارائه یک سیستم اطلاعاتی با هزینه‌های نگهداری کم و زمان توقف صفر است. در دسترس نبودن سیستم کافی می تواند منجر به خسارات مالی هنگفتی برای شرکت شود. این مبلغ شامل هزینه کاهش بهره وری کارکنان به دلیل خرابی سیستم، هزینه کاری که تا زمان بازسازی سیستم قابل انجام نیست، هزینه تعمیر عناصر خراب سیستم است. بنابراین، هنگام پیاده‌سازی برنامه‌های کاربردی حیاتی، شایان توجه است که هزینه خرابی ناشی از خرابی سیستم، سرمایه‌گذاری قابل‌توجهی را در نصب معماری‌های مقاوم به خطا توجیه می‌کند.

برای ساخت یک سیستم مقاوم در برابر خطا، توجه به چند جزء اصلی آن ضروری است. قابلیت اطمینان زیرسیستم دیسک بسیار مهم است. بیایید به ویژگی‌های اصلی زیرسیستم‌های دیسک مقاوم در برابر خطا نگاهی بیندازیم و در مورد اجرای آنها با استفاده از فناوری RAID صحبت کنیم.

پشت تحمل خطای زیرسیستم دیسک چیست

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

نکته کلیدی در ایجاد یک سیستم مقاوم در برابر خطا، ارائه افزونگی محافظ بر اساس سخت افزار و نرم افزار است. این افزونگی الگوریتم‌های تشخیص خطا را پیاده‌سازی می‌کند که همراه با الگوریتم‌های تشخیصی برای شناسایی علت خطا استفاده می‌شوند.

سه روش اصلی تشخیص خطا وجود دارد. اولین مورد آزمایش اولیه (Initial Testing) است که قبل از یکپارچه سازی نهایی سیستم توسط سازنده انجام می شود. در این مرحله، عیوب سخت افزاری که می تواند در حین تولید و مونتاژ اجزای سیستم رخ دهد، شناسایی می شود.

روش دوم، تست آنلاین همزمان، به زمان عملکرد عادی سیستم اشاره دارد. این روش عمدتاً به دنبال آن دسته از خطاهایی است که ممکن است پس از نصب سیستم ظاهر شده باشند. یکی از شناخته شده ترین روش های تست آنلاین، بررسی برابری است. این تضمین می کند که هر بایت داده ای که از طریق یک سیستم کامپیوتری منتقل می شود به جزء بعدی خود دست نخورده می رسد. روش برابری فقط وجود یک خطا را تشخیص می دهد و نمی تواند تعیین کند کدام بیت از دست رفته است. بنابراین، از آن همراه با کد تصحیح خطا استفاده می‌شود، که دقیقاً تعیین می‌کند چه داده‌هایی از بین رفته و به سیستم اجازه می‌دهد آن‌ها را به سرعت بازیابی کند.

در نهایت، سومین روش تشخیص خطا، Redundancy Testing است. بررسی می کند که ویژگی های ایمن سیستم به درستی کار می کنند.

یک سیستم مقاوم در برابر خطا باید در صورت خرابی یک دستگاه جایگزین را ارائه کند، و همچنین مدیر را از هرگونه تغییر پیکربندی مطلع کند تا بتواند اجزای خراب را قبل از اینکه نسخه های تکراری آنها کار نکنند، بازیابی کند. برای انجام این کار، سیستم باید پیام هایی را به کنسول مدیر ارسال کند، تمام خطاها را برای بررسی دوره ای روی دیسک ثبت کند و همچنین بتواند در صورت عدم حضور مدیر در محل کار، یک پیام خارجی ارسال کند.

هنگام انتخاب یک سیستم مقاوم در برابر خطا، باید توانایی آن برای انطباق با فناوری های جدید را نیز در نظر گرفت، زیرا رایانه ها و دستگاه های دیسک با عملکرد بالاتر با سرعت فوق العاده ای ظاهر می شوند.

در نهایت، کاربران نباید فراموش کنند که در بهترین پیاده سازی تحمل خطا، باید به صورت دوره ای از اطلاعات روی نوار مغناطیسی یا دیسک نوری نسخه پشتیبان تهیه کنند تا در صورت وقوع فاجعه ای جهانی تر از خرابی هر یک از اجزای سیستم، از ایمنی آنها اطمینان حاصل کنند. بعید است که تحمل خطا در صورت وقوع آتش سوزی، زلزله یا بمب تروریستی صرفه جویی کند.

زیرسیستم های دیسک RAID

در حالی که بسیاری از عوامل بر عملکرد سیستم تأثیر می‌گذارند، مانند قطع برق یا گرمای بیش از حد، هیچ چیز مهم‌تر از محافظت از داده‌های درایوهای شما نیست. خرابی دیسک باعث از کار افتادن طولانی مدت سیستم می شود زیرا قبل از شروع مجدد برنامه، داده ها باید بازسازی شوند.

در سال 1987، سه محقق از دانشگاه برکلی مقاله‌ای را منتشر کردند که در آن روش‌هایی برای ارائه تحمل خطا با استفاده از آرایه‌هایی از درایوهای دیسک کوچک (3.5 و 5.25 اینچی) که می‌توانند ویژگی‌های عملکردی یک دیسک بزرگ گران قیمت را به دست آورند (Single Large Expensive Disk) منتشر کردند. - SLED) در مین فریم. این فناوری RAID - Redundant Array of Inexpensive Disks (Redundant Array of Inexpensive Disks) نامیده می شود. در زیر، ویژگی های اصلی شش سطح RAID را بررسی خواهیم کرد.

سطوح RAID ویژگی های عملکردی متفاوت و هزینه های متفاوتی دارند. RAID 0 (روش دوبلکس) سریعترین است و پس از آن RAID 3 یا RAID 5 (بسته به اندازه رکوردها) قرار دارند. هزینه هر روش بستگی به مقدار کل فضای دیسک مورد نیاز دارد. به عنوان مثال، برای فایل های کوچک تا متوسط، Mirroring می تواند ارزان تر از RAID 3 یا 5 باشد.

هنگام انتخاب یک زیرسیستم دیسک مقاوم در برابر خطا، باید نرم افزاری را نیز برای بازیابی خودکار اطلاعات در صورت خرابی در نظر داشته باشید. هنگامی که صحبت از یک سرور فایل LAN می شود، مهم است که داده ها با کمترین تلاش از طرف سرپرست LAN و با حداقل ضرر برای کاربران سرور بازیابی شوند. به عنوان مثال، برای RAID 0، بازسازی به سادگی کپی کردن داده ها از درایو ثانویه به درایو بازسازی شده یا جایگزین شده است. برای سیستم‌های RAID 3، 4 و 5، سازندگان نرم‌افزاری را ارائه می‌کنند که داده‌ها را توسط بخش‌های XOR بازیابی می‌کند. این برنامه‌ها در پس‌زمینه اجرا می‌شوند و به کاربران اجازه می‌دهند در حین ریکاوری به کار خود ادامه دهند. سیستم‌های RAID با پردازنده‌های هوشمند داخلی می‌توانند بسیار سریع‌تر از همتایان خود که از نرم‌افزارهایی که روی پردازنده سیستم اصلی اجرا می‌شود، بازسازی کنند.

سیستم های RAID سنتی دارای مزایای غیرقابل انکاری هستند، اما مشکلات زیادی نیز ایجاد می کنند. سطوح مختلف RAID عملکرد و هزینه های متفاوتی را ارائه می دهند و مدیران باید بهترین گزینه را برای یک سیستم خاص پیدا کنند. زیرسیستم های دیسک RAID امروزی برای مدیریت و پیکربندی بسیار پیچیده هستند. افزایش فضای دیسک و پیکربندی مجدد یک سیستم فرعی نیز فرآیندی زمان بر و پر زحمت است.

برای رویارویی با این مشکلات، فناوری‌های آرایه دیسک جدید با قابلیت پیکربندی خودکار در سطوح مختلف که دیگر در چارچوب سنتی سطوح RAID مشخص شده قرار ندارند، در حال توسعه هستند. ما به محصولاتی از این نوع از Hewlett-Packard و EMC نگاه خواهیم کرد.

Hewlett-Packard AutoRAID

پس از چهار سال کار سخت، بخش ذخیره سازی Hewlett-Packard فناوری جدیدی را توسعه داده است که از افزونگی RAID سنتی استفاده می کند و در عین حال بسیاری از کاستی های آن را برطرف می کند. زیرسیستم دیسک AutoRAID به طور خودکار سطح RAID را که نیازهای کاربران را برآورده می کند انتخاب می کند و همچنین تعدادی ویژگی مهم دیگر را پیاده سازی می کند.

هسته اصلی این فناوری مجموعه ای از الگوریتم های کنترل کننده زیرسیستم دیسک برای مدیریت آدرس های بلوک داده است. آرایه‌های دیسک سنتی، مانند RAID 4 یا 5، از الگوریتم‌های ثابت و از پیش تعریف‌شده برای ترجمه آدرس بلوک‌های داده رایانه میزبان به آدرس‌های دیسک استفاده می‌کنند. توسعه دهندگان AutoRAID این رویکرد را کنار گذاشتند و ترجیح دادند از الگوریتم های پویا برای نگاشت هوشمند آدرس بلوک هاست روی هر دیسکی در آرایه استفاده کنند. این نمایشگر ممکن است در حین کار سیستم تغییر کند.

الگوریتم‌های پویا به کنترل‌کننده اجازه می‌دهند تا داده‌های ذخیره‌شده در یک آرایه دیسک را به هر مکانی روی هر دیسکی بدون تأثیر بر داده‌ها یا نحوه آدرس‌دهی آن‌ها توسط رایانه میزبان منتقل کند. این فناوری امکان تبدیل از یک سطح RAID به سطح دیگر را فراهم می کند. بر اساس آنچه در مورد ویژگی های عملکرد متفاوت سطوح مختلف RAID شناخته شده است، زیرسیستم دیسک به صورت پویا برای پاسخگویی به نیازهای رایانه میزبان سازگار می شود.

یکی دیگر از امکان های مهم این رویکرد، ترکیب ساده دیسک هایی با اندازه ها و عملکردهای مختلف در یک زیر سیستم است. برخی از آرایه‌های دیسک سنتی امکانات مشابهی دارند، اما در آنها پیکربندی یک زیرسیستم یک فرآیند پیچیده و طولانی است. پیکربندی در AutoRAID سریع و آسان است. یکی از وظایف مدیر هنگام پیکربندی هر آرایه دیسک، ایجاد دیسک های مجازی از فضای فیزیکی موجود است. کاربران با دیسک های مجازی کار می کنند که کنترل کننده زیرسیستم به صورت فیزیکی به آنها ارائه می کند. هنگام پیکربندی یک آرایه دیسک سنتی، یک مدیر باید ویژگی های هر دیسک فیزیکی را بداند تا آنها را با هم برای ایجاد دیسک های مجازی گروه بندی کند. AutoRAID مدیر را از این پیچیدگی ها رها می کند. حالا کافی است مقدار کل حافظه موجود در آرایه دیسک را بداند. مدیر میزان حافظه مورد نیاز برای هر دیسک مجازی را تعیین می‌کند، پس از آن الگوریتم‌های نقشه‌برداری به‌طور خودکار دیسک‌های فیزیکی را گروه‌بندی می‌کنند تا از کارآمدترین استفاده از فضای موجود اطمینان حاصل کنند و بالاترین عملکرد را ارائه دهند.

پیکربندی مجدد یک زیرسیستم نیز آسان است. یکی از رایج ترین دلایل پیکربندی مجدد نیاز به افزایش فضای دیسک است. زیرسیستم های RAID سنتی این مشکل را از دو طریق حل می کنند. اولین مورد اضافه کردن دیسک کافی برای ایجاد یک گروه افزونگی جدید است. این روش می تواند بسیار گران باشد. در حالت دوم، مدیر تمام داده ها را در یک دیسک ذخیره می کند، دیسک های جدید اضافه می کند، کل زیرسیستم را دوباره پیکربندی می کند و داده ها را بازیابی می کند. بدیهی است که این فرآیند زمان زیادی طول خواهد کشید که در طی آن سیستم کار نمی کند.

پیکربندی مجدد برای اضافه کردن فضای دیسک اضافی بسیار ساده تر به نظر می رسد. کافی است مدیر دیسک های جدید را نصب کند و دیسک مجازی دیگری ایجاد کند. این کار به صورت تعاملی انجام می شود و چند ثانیه طول می کشد.

این سهولت پیکربندی مجدد سیستم متکی بر فناوری نگاشت پویا است که در AutoRAID پیاده سازی شده است. هر دیسک در آرایه به عنوان دنباله ای از بلوک ها در نظر گرفته می شود. با اضافه شدن دیسک های جدید، بلوک های آن ها به کل حافظه موجود اضافه می شود. الگوریتم‌های نقشه‌برداری به کنترل‌کننده اجازه می‌دهند تا از هر بلوک به‌طور مستقل استفاده کند و در نتیجه عملکرد، هزینه و در دسترس بودن سیستم را بهتر می‌کند.

ویژگی منحصر به فرد فناوری AutoRAID استفاده خودکار و مستقیم از دیسک های جدید برای بهبود عملکرد زیرسیستم دیسک است. هنگامی که یک درایو جدید نصب می شود، داده ها به طور یکنواخت در تمام درایوهای زیر سیستم توزیع می شوند. این فرآیند متعادل سازی نامیده می شود و در پس زمینه بین عملیات کامپیوتر میزبان اجرا می شود. توزیع یکنواخت داده ها در تمام دیسک ها فرصت های بیشتری برای انجام عملیات داده های متعدد به طور همزمان ایجاد می کند. برای سیستم های پردازش تراکنش، افزایش تعداد عملیات موازی به معنای افزایش عملکرد کلی است.

یکی دیگر از نوآوری های فن آوری توصیف شده بر اساس روش متعادل کننده است - به اصطلاح "فید گرم فعال" (فضای گرم فعال). عملکرد یک هات یدکی فعال مانند یک هات یدکی در یک آرایه سنتی است. اگر هر درایو از کار بیفتد، کنترل‌کننده زیرسیستم بلافاصله یک فرآیند بازسازی را آغاز می‌کند که داده‌های از دست رفته را در درایو یدکی بازسازی می‌کند و افزونگی زیرسیستم را بازیابی می‌کند. در آرایه های معمولی، درایو یدکی تا زمانی که اتفاقی برای سیستم رخ ندهد استفاده نمی شود، زیرا حاوی فضای خالی برای داده های بازیابی شده است. گاهی اوقات ذخیره سازی موقت روی یک درایو یدکی داغ ایجاد می شود، اما به محض از کار افتادن درایو باید آن را دور انداخت.

فناوری HP AutoRAID از لوازم یدکی داغ برای بهبود عملکرد زیرسیستم استفاده می کند. فرآیند متعادل سازی داده های کاربر را در تمام دیسک های سیستم، از جمله دیسک یدکی داغ، توزیع می کند (هرچه دیسک های بیشتری برای داده ها استفاده شود، عملکرد بهتری دارد). در عین حال، در هر دیسک، بخشی از فضا برای بازیابی اطلاعات در صورت خرابی در نظر گرفته شده است. داده های بازسازی شده در طول فرآیند بازسازی سیستم در قسمت یدکی هر یک از دیسک های موجود در آرایه ذخیره می شود.

EMC RAID-S

EMC، تولید کننده سیستم های ذخیره سازی، پیاده سازی جدیدی از فناوری RAID به نام RAID-S را ارائه می دهد که عملکرد و حفاظت از داده ها را بهبود می بخشد و بسیاری از کاستی های سیستم های RAID سنتی را برطرف می کند.

RAID-S را نمی توان به یک سطح RAID اختصاص داد. EMC با استفاده از پیشرفت‌های جدید در سخت‌افزار، نرم‌افزار و نمایشگر، جنبه‌های مثبت RAID 4، 5 و RAID 6 را با فناوری‌های جدید ترکیب می‌کند تا یک طرح حفاظتی جدید از داده ایجاد کند. آرایه‌های دیسک RAID-S برای استفاده در سیستم‌های کلاس اصلی طراحی شده‌اند.

RAID-S به کاربران اجازه می دهد تا سیستم های ذخیره سازی بسازند که به ایجاد بهترین تعادل بین عملکرد، حفاظت از داده ها و در دسترس بودن سیستم کمک کند. RAID-S به شما امکان می دهد سطح RAID را انتخاب کنید که به بهترین وجه با نیازهای سازمان شما مطابقت دارد. علاوه بر این، EMC به شما امکان می دهد فناوری RAID-S، آرایه دیسک RAID 1 و سایر سیستم های ذخیره سازی دیسک شرکت را در یک سیستم ترکیب کنید.

به عنوان مثال، یک بانک بزرگ ممکن است سیستم های پردازش تراکنش آنلاین را برای خدمات رسانی به مشتریان خود و همچنین سیستم های پردازش دسته ای برای وظایف اداری اجرا کند. هر برنامه دارای شرایط ذخیره سازی و دسترسی خاص خود است. سیستم های دیسک EMC سطح لازم در دسترس بودن و حفاظت از داده ها را برای هر یک از آنها فراهم می کند.

مراحل تعالی RAID

RAID 0. RAID 0 ذاتاً قابل تحمل خطا نیست، اما می تواند عملکرد را به طور قابل توجهی بهبود بخشد. در یک سیستم معمولی، داده ها به صورت متوالی روی دیسک نوشته می شوند تا زمانی که ظرفیت آن تمام شود. RAID 0 داده ها را در بین دیسک های موجود در آرایه به صورت زیر توزیع می کند. به عنوان مثال، اگر از چهار دیسک استفاده شود، داده ها در اولین تراک دیسک اول، سپس به اولین تراک دیسک دوم، اولین تراک سوم و اولین تراک چهارم نوشته می شود. سپس داده ها در آهنگ دوم دیسک اول نوشته می شوند و به همین ترتیب. این توزیع داده ها به شما اجازه می دهد تا به طور همزمان داده ها را روی چهار دیسک بخوانید و بنویسید و در نتیجه عملکرد سیستم را افزایش دهید. از طرف دیگر، اگر یکی از درایوها خراب شود، باید اطلاعات هر چهار درایو را نیز بازیابی کنید.

RAID 1. RAID 1 با ایجاد یک کپی دوم از داده ها روی یک دیسک جداگانه برای هر دیسک در آرایه، انعکاس/دوبلکس کردن داده ها را پیاده سازی می کند. دوبلکس کردن، علاوه بر داده های روی دیسک، کارت آداپتور و کابل را نیز کپی می کند و افزونگی بیشتری را فراهم می کند. روش ذخیره دو کپی از داده ها روشی قابل اعتماد برای پیاده سازی یک زیرسیستم دیسک مقاوم در برابر خطا است و کاربرد گسترده ای در معماری های مدرن پیدا کرده است.

RAID 2. RAID 2 داده ها را روی دیسک های آرایه بیت به بیت توزیع می کند: بیت اول روی دیسک اول، بیت دوم روی دیسک دوم و غیره نوشته می شود. افزونگی توسط چندین دیسک اضافی ارائه می شود که کد تصحیح خطا در آن نوشته شده است. این پیاده سازی گران تر است زیرا به سربار افزونگی بیشتری نیاز دارد: آرایه ای با 16 تا 32 دیسک اصلی باید سه دیسک اضافی برای ذخیره کد تصحیح داشته باشد. RAID 2 عملکرد و قابلیت اطمینان بالایی را ارائه می دهد، اما استفاده از آن عمدتاً به بازار رایانه های تحقیقاتی به دلیل حداقل نیاز فضای دیسک بالا محدود می شود. سرورهای فایل شبکه در حال حاضر از این روش استفاده نمی کنند.

RAID 3. RAID 3 داده ها را روی دیسک های آرایه بایت به بایت توزیع می کند: بایت اول روی دیسک اول، بایت دوم روی دیسک دوم و غیره نوشته می شود. افزونگی یک دیسک اضافی را فراهم می کند که مجموع مدول داده 2 (XOR) برای هر یک از دیسک های اصلی نوشته می شود. به این ترتیب، RAID 3 رکوردهای فایل داده را تقسیم می کند، آنها را همزمان روی چندین دیسک ذخیره می کند و خواندن و نوشتن بسیار سریع را ارائه می دهد. بخش های XOR در درایو ثانویه می توانند هرگونه خرابی زیرسیستم دیسک را تشخیص دهند و نرم افزار ویژه تعیین می کند که کدام درایو در آرایه از کار افتاده است. استفاده از توزیع بایتی داده ها امکان خواندن یا نوشتن همزمان داده ها از چندین دیسک را برای فایل هایی با رکوردهای بسیار طولانی فراهم می کند. فقط یک عملیات خواندن یا نوشتن را می توان در یک زمان انجام داد.

RAID 4. RAID 4 شبیه به RAID 3 است با این تفاوت که داده ها روی دیسک ها در بلوک ها راه راه هستند. یک دیسک اضافی نیز برای ذخیره قطعات XOR استفاده می شود. این پیاده سازی برای فایل هایی با نوشتن بسیار کوتاه و فرکانس خواندن بالاتر از نوشتن مفید است، زیرا می توان همزمان با اندازه بلوک مناسب روی دیسک چندین خواندن را انجام داد. با این حال، تنها یک عملیات نوشتن در هر زمان هنوز مجاز است، زیرا همه عملیات نوشتن از یک درایو ثانویه برای محاسبه جمع کنترلی استفاده می کنند.

RAID 5. RAID 5، مانند RAID 4، از توزیع بلوک به بلوک استفاده می کند، اما بخش های XOR در تمام دیسک های موجود در آرایه توزیع می شوند. این به شما امکان می دهد چندین عملیات نوشتن را همزمان انجام دهید. RAID 5 برای نوشتن فایل های کوتاه نیز مفید است.

مهاجرت زنده

به ویژه، یک استراتژی انتقال داده زنده به شما امکان می دهد فعال ترین داده ها را در RAID 1 ذخیره کنید، که بالاترین عملکرد را دارد، و داده های فعال کمتری را در RAID ارزان تر 5 دارد. در اکثر سیستم ها، داده های مورد استفاده فعال بخش کوچکی از همه است. اطلاعات ذخیره شده بنابراین، بخش عمده ای از داده ها در RAID 5 ذخیره می شود. این فناوری دو مزیت کلیدی را برای مدیران سیستم فراهم می کند. اول، آنها را از درد فکر کردن در مورد سطح RAID رها می کند. ثانیاً، زیرسیستم دیسک به طور مداوم عملکرد و هزینه ذخیره سازی دیسک را بهینه می کند، همانطور که زمانی که یک مدیر تمام زمان کار خود را صرف تنظیم سیستم می کند، این اتفاق می افتد.

ویژگی های پیاده سازی RAID-S:

    RAID-S کد تصحیح خطای اضافی را در سطح درایور دیسک محاسبه می کند، نه در سطح کنترل کننده زیرسیستم. این کنترل کننده را تخلیه می کند و آن را از پردازش درخواست های ورودی / خروجی آزاد می کند و در نتیجه عملکرد زیرسیستم دیسک را بهبود می بخشد.

    در RAID-S، داده ها مانند پیاده سازی های RAID سنتی در بین دیسک های فیزیکی تقسیم نمی شوند، اما روی دیسک دست نخورده باقی می مانند. این به شما امکان می دهد از نظارت موجود و تنظیمات زیر سیستم I / O استفاده کنید

    بدون آموزش کارکنان اضافی

    از آنجایی که داده ها روی دیسک ها راه راه نیستند، حتی اگر چندین دیسک به طور همزمان از کار بیفتند، اطلاعات مربوط به حجم های باقی مانده در گروه RAID-S همچنان برای برنامه های کاربردی در دستگاه میزبان در دسترس خواهد بود.

    RAID-S فن‌آوری پیشرفته را پیاده‌سازی می‌کند و برای ادغام آسان فناوری‌های آینده آماده است و از سرمایه‌گذاری بلندمدت کاربران محافظت می‌کند.

مواد به سه بخش تقسیم می شوند: A - تئوری، B - عمل، C - ایجاد یک درایو فلش چند بوت.

الف- نظریه عمومی (محبوب).

1. آهن.

همه دستگاه‌های فیزیکی که ما هر روز برای ذخیره اطلاعات استفاده می‌کنیم (HDD، CD-ROM، درایو فلش و حتی فلاپی) دستگاه‌های بلوک ورودی/خروجی هستند. آنها می توانند از طریق رابط های مختلف به رایانه متصل شوند: IDE، SATA، eSATA، USB. سیستم عامل یک راه شفاف برای کاربر و برنامه نویس نرم افزار کاربردی برای خواندن/نوشتن اطلاعات از/روی این رسانه ها فراهم می کند.

درایورها مستقیماً با سخت افزار ارتباط برقرار می کنند. درایور برنامه ای است که در سیستم عامل بارگذاری می شود. این یک لایه بین سیستم عامل و دستگاه ها است که سیستم عامل را با یک رابط برنامه نویسی استاندارد برای دستگاه های بلوک ورودی / خروجی نشان می دهد.

2. داده ها روی دیسک فیزیکی.

این دستگاه ها را دستگاه های بلوک می نامند زیرا اطلاعات بر روی آنها در بلوک ها (بخش ها، خوشه ها) با اندازه ثابت نوشته و خوانده می شود. اندازه بلوک مضربی از 512 بایت است. رویکرد بلوک برای اطمینان از سرعت بالای زیرسیستم دیسک ضروری است.

خود دیسک در سطح پایین (در کارخانه) فرمت (پارتیشن بندی) شده است. دیسک از سیلندر تشکیل شده است. استوانه دایره ای روی صفحه دیسک است. اولین سیلندرها در مرکز صفحه دیسک قرار دارند، آخرین - در لبه بیرونی. هر سیلندر به بخش هایی تقسیم می شود. بخش ها بلوک ها را روی یک دیسک سازماندهی می کنند. علاوه بر خود داده ها، اطلاعات در بلوک ها برای کنترل خطا ثبت می شود. کنترلر داخل هارد با این اطلاعات کار می کند و از بیرون قابل مشاهده نیست. درایور دستورات را در سطح "خواندن 10 بلوک 10 سیلندر 20 سکتور" به کنترل کننده دیسک ارسال می کند.

تمام داده‌های محموله نوشته شده در رسانه در بخش‌هایی سازماندهی شده‌اند. در ویندوز، هر پارتیشن معمولاً به صورت یک درایو منطقی (C، D، E، ...) نشان داده می شود. در رسانه های قابل جابجایی (درایو فلش، سی دی، فلاپی)، به عنوان یک قاعده، یک پارتیشن منفرد ایجاد می شود، برعکس، در هارد دیسک های داخلی، معمولا چندین پارتیشن وجود دارد. داده های یک پارتیشن در یک سیستم فایل سازماندهی می شوند.

هر پارتیشن می تواند به طور مستقل اندازه بلوک خود را تنظیم کند - اندازه خوشه. تعادل سرعت/اقتصاد را تنظیم می کند. بلوک کوچکترین واحد آدرس پذیر فضای دیسک است. یک خوشه چندین بلوک را ترکیب می کند - این حداقل واحد آدرس پذیر در یک پارتیشن است.

بنابراین، سلسله مراتب منطقی زیر ایجاد می شود (از پایین به بالا): بلوک، بخش، سیلندر - خوشه - بخش - فایل، فهرست.

در اکثر سیستم های فایل، یک فایل می تواند یک یا چند کلاستر را اشغال کند. بنابراین، اگر اندازه فایل کمتر از اندازه خوشه باشد، فایل کل خوشه را اشغال خواهد کرد. به هر فایل روی دیسک تعدادی بایت اختصاص داده می شود که مضربی از اندازه خوشه است. برخی از سیستم های فایل می توانند یک خوشه را به چندین فایل (بسته بندی) تقسیم کنند، اما این یک استثنا است (در حال حاضر). بنابراین، هر چه اندازه خوشه بزرگتر باشد، سرعت بالاتر و فضای بیشتری در خوشه های نیمه پر تلف می شود.

3. طرح دیسک فیزیکی.

اندازه پارتیشن نیز بر حسب بلوک اندازه گیری می شود. به همین دلیل است که هنگام پارتیشن بندی یک دیسک، اندازه بیان شده در بایت می تواند توسط برنامه کمی اصلاح شود.

از آنجایی که ممکن است چندین پارتیشن روی یک دیسک وجود داشته باشد، باید در جایی به همراه محدودیت‌ها و ویژگی‌های هر پارتیشن فهرست شوند. برای این کار از جدول پارتیشن استفاده می شود که در ابتدای دیسک فیزیکی قرار دارد (ابتدای دیسک اولین بلوک آن مطابق با آدرس دهی است). در حالت کلاسیک، بخشی از MBR ( رکورد بوت اصلی) است که کل بلوک اول را اشغال می کند. کل جدول پارتیشن 64 بایت اختصاص داده شده است. هر ورودی جدول از آدرس های ابتدا و انتهای پارتیشن، نوع پارتیشن، تعداد سکتورهای پارتیشن و پرچم "مشغول" پارتیشن تشکیل شده است و 16 بایت را اشغال می کند. بنابراین، حداکثر تعداد پارتیشن ها روی یک دیسک به چهار (16 × 4 = 64) محدود می شود.

این به صورت تاریخی اتفاق افتاد، اما با گذشت زمان مشخص شد که 4 بخش همیشه کافی نیست. راه حل مشکل پیدا شده است. پارتیشن هایی که در هدر دیسک (در MBR) مشخص شده اند، Primary (اولیه) نامیده می شوند. آنها هنوز باید تا 4 را شامل شوند. علاوه بر این، مفهوم بخش های توسعه یافته (گسترده) معرفی شد. یک پارتیشن توسعه یافته شامل یک یا چند پارتیشن فرعی است و حاوی سیستم فایل نیست. او خودش یک بخش اولیه تمام عیار است.

از آنجایی که پارتیشن های فرعی پارتیشن توسعه یافته در جدول پارتیشن دیسک فهرست نشده اند، نمی توان آنها را به عنوان قابل بوت علامت گذاری کرد. پارتیشن قابل بوت پارتیشنی است که سیستم عامل از آن شروع به بوت شدن می کند. در ورودی جدول پارتیشن آن پرچم گذاری شده است. بنابراین، تنها یکی از 4 بخش اصلی می تواند علامت گذاری شود. یک پارتیشن توسعه یافته نمی تواند بوت شود زیرا سیستم فایل ندارد.

نشانه گذاری یک بخش توسعه یافته در ابتدای آن توضیح داده شده است. بر اساس قیاس با MBR، یک EBR (رکورد بوت توسعه یافته) وجود دارد که در بخش اول قرار دارد. طرح بندی درایوهای منطقی این پارتیشن توسعه یافته را شرح می دهد.

یک دیسک نوری و یک درایو فلش معمولا فقط یک پارتیشن دارند، زیرا تقسیم کوچکتر در آنجا معنی ندارد. به طور معمول هنگام رایت سی دی از سیستم فایل ISO 9660 استفاده می شود.تصویر دیسک با این فایل سیستم را تصویر ISO می نامند. اغلب از آن جدا از یک دیسک فیزیکی به عنوان محفظه ای برای انتقال داده استفاده می شود، زیرا هر تصویر یک کپی دقیق از یک رسانه فیزیکی است.

4. سیستم فایل.

هر پارتیشن دیسکی که برای ذخیره سازی داده ها در نظر گرفته شده است (یعنی همه پارتیشن ها به جز پارتیشن توسعه یافته) بر اساس سیستم فایلی فرمت می شوند. قالب بندی فرآیند ایجاد یک ساختار سیستم فایل در فضایی روی دیسک - یک پارتیشن است. سیستم فایل داده های کاربر را در قالب فایل هایی که در برخی سلسله مراتب دایرکتوری ها (پوشه ها، دایرکتوری ها) قرار دارند، سازماندهی می کند.

ساختار دایرکتوری ها و فایل ها در یک پارتیشن به طور کلاسیک در یک جدول فایل توضیح داده شده است. به طور معمول، یک جدول مقداری فضای را در ابتدای یک بخش اشغال می کند. بعد از جدول، خود داده نوشته می شود. بنابراین، یک سیستم ایجاد می شود که در آن ساختار به طور جداگانه توضیح داده می شود، و داده ها (فایل ها) به طور جداگانه ذخیره می شوند.

اگر فایلی از دیسک حذف شود، از جدول فایل حذف می شود. فضایی که روی دیسک اشغال کرده است به عنوان آزاد علامت گذاری شده است. اما پاکسازی فیزیکی این مکان وجود ندارد. وقتی یک دیسک روی دیسک نوشته می شود، داده ها در فضای خالی نوشته می شوند. بنابراین اگر پس از حذف یک فایل جدید ایجاد کنید، این احتمال وجود دارد که در محل حذف شده نوشته شود. با قالب بندی سریع (که در اکثر موارد استفاده می شود) پارتیشن، فقط جدول نیز رونویسی می شود. روش بازیابی فایل ها پس از حذف یا قالب بندی بر اساس این ویژگی ها است.

در حین کار، ممکن است آسیب فیزیکی روی دیسک رخ دهد. برخی از بلوک ها ممکن است ناخوانا شوند. به این بلوک ها «بد» (بدسکتور) می گویند. اگر هنگام خواندن دیسک، دیسک بدی برخورد کند، خطای I/O رخ می دهد. بسته به محل ظاهر شدن بلوک بد و تعداد آنها، ممکن است بخشی از محتویات فایل ها یا بخشی از جدول فایل از بین برود.

هنگام تلاش برای نوشتن در یک بلوک بد، کنترل کننده دیسک باید مشکل را تعیین کند و یک مکان جدید در سطح دیسک برای این بلوک اختصاص دهد و مکان قدیمی را از استفاده حذف کند (relocate bad block). این کار را به صورت نامرئی با سیستم عامل و درایورها به تنهایی انجام می دهد. تا زمانی که فضای ذخیره ای برای انتقال وجود داشته باشد این اتفاق می افتد.

5. با دیسک کار کنید.

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

در سیستم عامل های یونیکس، تمام دستگاه های ذخیره سازی به صورت فایل در دایرکتوری dev/ نمایش داده می شوند:

    sda، sdb، sdc، ... - دیسک های فیزیکی (HDD، از جمله خارجی، درایوهای فلش، درایوهای IDE).

    fd0، fd1 - فلاپ ها.

پارتیشن های موجود در هر یک از دیسک ها به صورت sda1، sda2، sd3، ... موجود است.

دیسک ها به ترتیبی که BIOS آنها را می بیند شماره گذاری می شوند. شماره گذاری پارتیشن - به ترتیبی که پارتیشن ها روی دیسک ایجاد شده اند.

برای ایجاد یک تصویر (تصویر یک کپی بیت به بیت از اطلاعات قرار داده شده روی یک دیسک یا پارتیشن) از کل دیسک (به عنوان مثال، اولین مورد مطابق بایوس - sda)، باید داده ها را از / dev کم کنید. / sda به هر فایل دیگری که مخصوصاً برای تصویر با استفاده از محتوای فایل برنامه کپی پی در پی ایجاد شده است. برای نوشتن یک تصویر در یک فایل، باید از همان برنامه برای کم کردن داده ها از تصویر در /dev/sda استفاده کنید. بر اساس قیاس، می توانید با دسترسی به /dev/sda1 به جای /dev/sda، تصویری از یک پارتیشن (به عنوان مثال، اولین مورد روی دیسک اول - sda1) ایجاد/بازیابی کنید.

6. نصب.

برای "تبدیل" یک دستگاه دیسک به مجموعه ای از فایل ها و دایرکتوری های قابل دسترسی، باید آن را نصب کرد. چیزی به نام مانت در ویندوز وجود ندارد. در آنجا، پارتیشن ها به سادگی به درایوهای منطقی (C:، D:، E، ...) متصل می شوند. اطلاعات مربوط به اینکه کدام حرف را به کدام درایو اختصاص دهیم در خود سیستم عامل ذخیره می شود.

در یونیکس، مفهوم نصب برای کار با دیسک ها اساسی است و انعطاف پذیری بسیار بیشتری نسبت به ویندوز فراهم می کند. Mounting فرآیند پیوند دادن منبع تصویر دیسک (اعم از خود دیسک یا یک فایل با تصویر آن) به دایرکتوری در سیستم فایل یونیکس است. سیستم فایل در یونیکس از یک نقطه شروع می شود - از دایرکتوری ریشه (/)، و هیچ درایو منطقی C، D، E وجود ندارد.

در ابتدای راه‌اندازی سیستم‌عامل خانواده یونیکس، پارتیشن دیسکی که به‌عنوان root (ریشه) علامت‌گذاری شده است در دایرکتوری ریشه / نصب می‌شود. دایرکتوری های سرویس سیستم عامل واقع در ریشه سیستم فایل باید روی پارتیشن دیسک ایجاد شوند. پارتیشن‌های دیگر را می‌توان روی آن‌ها نصب کرد، یا فایل‌ها را می‌توان مستقیماً در پارتیشن اصلی نوشت (به / نصب کرد).

نکته کلیدی این است که یک منبع تصویر دیسک (یک دستگاه بلوک، یک فایل تصویر، یا یک دایرکتوری از یک سیستم فایل از قبل نصب شده) را می توان به هر دایرکتوری در هر سطح تودرتو سیستم فایل که با / شروع می شود سوار کرد. بنابراین، پارتیشن‌های منطقی مختلف یک دیسک فیزیکی توسط دایرکتوری‌ها در یک سیستم فایل واحد نمایش داده می‌شوند، برخلاف سیستم‌های فایل جداگانه از دیسک‌های منطقی مختلف در ویندوز (که در آن هر دیسک به عنوان یک سیستم فایل مستقل که ریشه خاص خود را دارد، در نظر گرفته می‌شود).

برای نصب، باید سیستم فایل تصویر، گزینه های mount و دایرکتوری برای اتصال به آن را مشخص کنید.

با توجه به این انعطاف‌پذیری، می‌توانید یک دایرکتوری را به چندین مکان مختلف در سیستم فایل متصل کنید، یک تصویر دیسک بسازید و بدون نوشتن آن روی دیسک نصب کنید، تصویر ISO را باز کنید. و همه اینها بدون استفاده از ابزارهای شخص ثالث انجام می شود.

7. MBR - منطقه بوت.

در ابتدای یک دیسک فیزیکی، معمولا یک MBR ( رکورد اصلی بوت) وجود دارد. این قسمت بوت دیسک است. هنگامی که کامپیوتر بوت می شود، BIOS تعیین می کند که کدام دیسک اصلی (اولیه) است و به دنبال MBR روی آن می گردد. اگر پیدا شد، کنترل به آن منتقل می شود. در غیر این صورت، خطایی نشان می دهد که دیسک بوت یافت نشد.

در MBR، علاوه بر جدول پارتیشن (که در بالا توضیح داده شد)، یک کد برنامه وجود دارد که در حافظه بارگذاری شده و اجرا می شود. این برنامه است که باید پارتیشن بوت روی دیسک را تعیین کند و کنترل را به آن منتقل کند. انتقال کنترل مشابه است: اولین بلوک (512 بایت) پارتیشن بوت در RAM قرار می گیرد و اجرا می شود. این شامل کد برنامه ای است که بوت شدن سیستم عامل را آغاز می کند.

با توجه به اینکه هنگام بوت شدن کامپیوتر، کنترل از بایوس به برنامه ضبط شده روی دیسک منتقل می شود، می توان انتخاب پارتیشن بوت را انعطاف پذیرتر کرد. این کاری است که لودرهای GRUB و LILO که به طور گسترده در دنیای یونیکس استفاده می شوند انجام می دهند. در حال حاضر هیچ فایده ای برای استفاده از آخرین بوت لودر در رایانه های مدرن وجود ندارد. با استفاده از GRUB، می توانید انتخاب کنید که کدام پارتیشن و چگونه بوت شود.

کد GRUB آنقدر بزرگ است که در MBR جای نمی گیرد. بنابراین، روی یک پارتیشن جداگانه (معمولاً پارتیشنی که در /boot نصب شده است) با سیستم فایل FAT، FFS یا Ext2 نصب می شود. MBR حاوی کدی است که کد GRUB را از یک پارتیشن خاص بارگیری می کند و کنترل را به آن منتقل می کند.

خود GRUB یا با کمک کاربر تعیین می کند که بوت از کدام پارتیشن انجام شود. در مورد یک پارتیشن Winsows، کنترل به سادگی به همان روشی که از یک MBR معمولی است به آن منتقل می شود. در مورد لینوکس، بوت لودر اقدامات پیچیده تری را انجام می دهد. هسته سیستم عامل را در حافظه بارگذاری می کند و کنترل را به آن منتقل می کند.

تهیه نسخه پشتیبان از ناحیه بوت دیسک به آسانی پشتیبان گیری از کل دیسک یا یک پارتیشن است. نکته اصلی این است که MBR 512 بایت اول دیسک /dev/sda را اشغال می کند. بنابراین، برای یک نسخه پشتیبان MBR، باید 512 بایت اول /dev/sda را از یک فایل کم کنید و برای بازیابی، برعکس، باید فایل را به /dev/sda تفریق کنید.

وقتی در مورد منابع زیرسیستم دیسک صحبت می کنیم، سه مورد از آنها وجود دارد: مقدار فضا، سرعت خواندن و نوشتن بر حسب مگابایت بر ثانیه، و سرعت خواندن و نوشتن در تعداد عملیات ورودی / خروجی در ثانیه (ورودی / خروجی در هر ثانیه) دوم، IOPS، یا به سادگی I/O).

بیایید ابتدا در مورد حجم صحبت کنیم. من ملاحظاتی را که باید توسط آنها هدایت شود و مثالی از محاسبه ارائه خواهم کرد.

ملاحظات به شرح زیر است:

فضای دیسک توسط خود فایل های دیسک ماشین مجازی اشغال می شود. بنابراین، باید درک کنید که آنها به چه مقدار فضا نیاز دارند.

اگر قصد داریم از دیسک های نازک برای تمام یا بخشی از ماشین مجازی استفاده کنیم، باید حجم اولیه و رشد بعدی آنها را برنامه ریزی کنیم (از این پس منظور از thin disk ها نوع مربوط به فایل های vmdk، یعنی تابع تامین نازک در ESX است. ) پیاده سازی) واقعیت این است که عملکرد thin provisioning را می توان بدون توجه به ESX(i) روی یک سیستم ذخیره سازی پیاده سازی کرد، و منظور من عملکرد سیستم های ذخیره سازی نیست).

به طور پیش فرض، برای هر ماشین مجازی، هایپروایزر یک فایل صفحه بندی برابر با RAM خود ایجاد می کند. این فایل صفحه بندی در پوشه VM (پیش فرض) یا در یک LUN جداگانه قرار دارد.

اگر قصد دارید از اسنپ شات استفاده کنید، باید مکانی برای آنها نیز برنامه ریزی کنید. ملاحظات زیر را می توان به عنوان نقطه شروع در نظر گرفت:

اگر اسنپ شات ها برای مدت کوتاهی پس از ایجاد وجود داشته باشند، به عنوان مثال، فقط برای زمان پشتیبان گیری، ده درصد از اندازه دیسک VM را برای آنها رزرو می کنیم.

اگر اسنپ شات ها با شدت متوسط ​​یا غیرقابل پیش بینی استفاده شوند، منطقی است که آنها حدود 30 درصد از اندازه دیسک VM را قرار دهند.

اگر عکس‌های فوری برای ماشین‌های مجازی به طور فعال مورد استفاده قرار گیرند (که در سناریوهایی که ماشین‌های مجازی برای آزمایش و توسعه استفاده می‌شوند مرتبط است)، پس مقدار اشغال شده توسط آنها می‌تواند چندین برابر بزرگ‌تر از اندازه اسمی دیسک‌های مجازی باشد. در این مورد، ارائه توصیه های دقیق دشوار است، اما دو برابر کردن اندازه هر VM را می توان به عنوان نقطه شروع در نظر گرفت. (از این پس، یک عکس فوری به عملکرد متناظر ESX(i) اشاره دارد. واقعیت این است که عکس‌های فوری می‌توانند مستقل از ESX(i) روی یک سیستم ذخیره‌سازی پیاده‌سازی شوند، و منظور من عملکرد سیستم‌های ذخیره‌سازی نیست.)

یک فرمول نمونه به این صورت است:

مقدار فضا برای گروهی از ماشین های مجازی = تعداد ماشین های مجازی x (اندازه دیسک x T +

Disk Size x S + Memory Size - Memory Size x R).

T - ضریب دیسک های نازک. اگر از چنین دیسک‌هایی استفاده نمی‌شود، برابر با 1 است. در صورت استفاده از آن‌ها، بسته به ماهیت برنامه در VM، ارائه یک تخمین انتزاعی دشوار است. اساساً، دیسک های نازک فضای ذخیره سازی کمتری را نسبت به اندازه اسمی دیسک اشغال می کنند. بنابراین - این ضریب نشان می دهد که چه نسبتی از اندازه اسمی توسط دیسک های ماشین مجازی اشغال شده است.

S اندازه عکس های فوری است. 10/30/200 درصد، بسته به مدت استفاده مداوم؛

R درصد حافظه ذخیره شده است. حافظه رزرو شده در فایل swap قرار نمی گیرد، فایل swap در اندازه کوچکتر ایجاد می شود. اندازه آن برابر است با: مقدار حافظه VM منهای مقدار حافظه رزرو شده.

داده های ورودی تخمینی، برای مثال، جدول را ببینید. 1.3.

جدول 1.3. داده ها برای برنامه ریزی حجم زیرسیستم دیسک

ما تخمینی از حجم مورد نیاز به دست می آوریم:

گروه زیرساخت - 15 x (20 + 20 x 10٪ + 2 - 2 x 0) = 360 گیگابایت؛

سرورهای برنامه - 20 x (40 + 40 x 10٪ + 2 - 2 x 0) = 920 گیگابایت؛

سرورهای بحرانی - 10 x (100 + 100 x 10٪ + 6 - 6 x 0.5) = 1130 گیگابایت؛

آزمایشی و موقت - 20 x (20 x 30% + (20 x 30%) x 200% + 2 - 2 x 0) = = 400 گیگابایت.

بنابراین، می‌توانیم دو LUN 1.4 ترابایتی ایجاد کنیم و ماشین‌های مجازی را تقریباً به طور مساوی بین آنها توزیع کنیم. یا 4-5 LUN از هر کدام 600800 گیگابایت ایجاد کنید و ماشین های گروه های مختلف را روی LUN های مختلف قرار دهید. هر دو گزینه (و بین گزینه ها) قابل قبول هستند. انتخاب بین آنها بر اساس ترجیحات دیگر (مثلاً سازمانی) انجام می شود.

یکی دیگر از منابع زیرسیستم دیسک عملکرد است. در مورد ماشین های مجازی، سرعت مگابایت بر ثانیه معیار قابل اعتمادی نیست، زیرا زمانی که تعداد زیادی ماشین مجازی به دیسک های مشابه دسترسی دارند، دسترسی ها متناقض است. برای یک زیرساخت مجازی، مشخصه مهمتر تعداد عملیات ورودی/خروجی (IOPS، ورودی/خروجی در ثانیه) است. زیرسیستم دیسک زیرساخت ما باید بیشتر از درخواست ماشین های مجازی اجازه این عملیات را بدهد.

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

1. سیستم عامل مهمان درخواست را به درایور کنترلر SAS/SCSI (که هایپروایزر را برای آن شبیه سازی می کند) ارسال می کند.

2. درایور آن را به خود کنترلر مجازی SAS/SCSI ارسال می کند.

3. Hypervisor آن را رهگیری می کند، آن را با درخواست های دیگر ماشین های مجازی ترکیب می کند و صف مشترک را به درایور کنترل کننده فیزیکی (HBA در مورد FC و iSCSI سخت افزاری یا کنترل کننده اترنت در مورد NFS و نرم افزار iSCSI) ارسال می کند.

4. راننده درخواست را برای کنترلر ارسال می کند.

5. کنترلر آن را از طریق یک شبکه داده به سیستم ذخیره سازی منتقل می کند.

6. کنترل کننده ذخیره سازی درخواست را می پذیرد. این درخواست یک عملیات خواندن یا نوشتن از برخی از حجم LUN یا NFS است.

7. LUN یک "پارتیشن مجازی" در یک آرایه RAID است که از دیسک های فیزیکی تشکیل شده است. یعنی درخواست توسط کنترلر ذخیره سازی به درایوهای آن آرایه RAID ارسال می شود.

گلوگاه زیرسیستم دیسک کجا می تواند باشد:

به احتمال زیاد، در سطح دیسک های فیزیکی. تعداد دیسک های فیزیکی در آرایه RAID مهم است. هر چه تعداد آنها بیشتر باشد، عملیات خواندن و نوشتن بهتر می تواند موازی شود. همچنین، هر چه سرعت خود دیسک‌ها (از نظر ورودی/خروجی) بیشتر باشد، بهتر است.

سطوح مختلف آرایه های RAID عملکرد متفاوتی دارند. ارائه توصیه های کامل دشوار است، زیرا، علاوه بر سرعت، انواع RAID در هزینه و قابلیت اطمینان نیز متفاوت است. با این حال، ملاحظات اساسی عبارتند از:

RAID-10 سریع ترین، اما کم کارآمدترین استفاده از فضای دیسک است که 50٪ برای پشتیبانی تحمل خطا کسر می شود.

RAID-6 قابل اطمینان ترین است، اما از عملکرد نوشتن پایین رنج می برد (30-40٪ RAID-10 در 100٪ نوشتن)، اگرچه خواندن از آن به همان سرعت RAID-10 است.

RAID-5 یک مصالحه است. عملکرد نوشتن بهتر از RAID-6 است (اما بدتر از RAID-10)، راندمان ذخیره سازی بالاتر است (ظرفیت تنها یک دیسک برای تحمل خطا گرفته می شود). اما RAID-5 از مشکلات جدی مربوط به بازیابی طولانی اطلاعات پس از خرابی دیسک در مورد دیسک‌های مدرن با ظرفیت بالا و گروه‌های RAID بزرگ رنج می‌برد، که طی آن از خرابی دیگری محافظت نمی‌شود (تبدیل به RAID-0) و به طور چشمگیری از دست می‌دهد. کارایی؛

RAID-0 یا "RAID با تحمل خطا صفر" نمی تواند برای ذخیره داده های معنی دار استفاده شود.

تنظیمات سیستم ذخیره سازی، به ویژه حافظه پنهان کنترل کننده ذخیره سازی. مطالعه مستندات سیستم ذخیره سازی برای پیکربندی و عملکرد مناسب آن مهم است.

شبکه داده. به خصوص اگر قصد دارید از ذخیره سازی IP، iSCSI یا NFS استفاده کنید. به هیچ وجه نمی خواهم بگویم که استفاده از آنها ضروری نیست - چنین سیستم هایی برای مدت طولانی و توسط بسیاری مورد سوء استفاده قرار گرفته اند. آنچه من می گویم این است که باید سعی کنید باری که به محیط مجازی منتقل می شود، پهنای باند شبکه کافی با پهنای باند برنامه ریزی شده داشته باشد.

سرعت حاصل از زیرسیستم دیسک از سرعت دیسک ها و الگوریتم موازی کردن دسترسی های دیسک توسط کنترلر (منظور نوع RAID و عملکردهای مشابه) است. نسبت تعداد عملیات خواندن به تعداد عملیات نوشتن نیز مهم است - ما این نسبت را از آمار یا از مستندات برنامه های کاربردی در ماشین های مجازی خود می گیریم.

بیایید یک مثال بزنیم. بیایید فرض کنیم که ماشین های مجازی ما باری تا 1000 IO ایجاد می کنند که 67 درصد آن خواندن و 33 درصد نوشتن است. در صورت استفاده از RAID-10 و RAID-5 به چند عدد و چه دیسک نیاز خواهیم داشت؟

در یک آرایه RAID-10، همه دیسک ها به طور همزمان درگیر عملیات خواندن هستند و تنها نیمی از آنها درگیر عملیات نوشتن هستند (زیرا هر بلوک داده به طور همزمان روی دو دیسک نوشته می شود). در آرایه RAID-5، همه دیسک‌ها در خواندن شرکت می‌کنند، اما هر بلوک با سربار مرتبط با محاسبه و تغییر چک‌سوم نوشته می‌شود. شما می توانید تصور کنید که یک نوشتن در یک آرایه RAID-5 باعث چهار نوشتن مستقیم روی دیسک می شود.

Write - 1000 x 0.33% = 330 x 2 (از آنجایی که فقط نیمی از دیسک ها در نوشتن نقش دارند) = 660 IOps.

در مجموع، ما به 1330 IOps از دیسک نیاز داریم. اگر 1330 را بر تعداد IOهای اعلام شده در مشخصات عملکرد یک دیسک تقسیم کنیم، تعداد دیسک های لازم در یک آرایه RAID-10 برای بار مشخص شده بدست می آید.

خواندن - 1000 x 0.67٪ = 670 IOps.

نوشتن - 1000 x 0.33٪ = 330 x 4 = 1320 IOps.

در مجموع، ما به 1990 IOps از دیسک نیاز داریم.

طبق مستندات سازنده، یک هارد SAS 15k دارای 150-180 IOps است. یک درایو SATA 7.2k - 70-100 IOps. با این حال، نظری وجود دارد که بهتر است روی اعداد کمی متفاوت تمرکز کنید: 50-60 برای SATA و 100-120 برای SAS.

بیایید مثال را تمام کنیم.

هنگام استفاده از RAID-10 و SATA، ما به 22-26 دیسک نیاز داریم.

هنگام استفاده از RAID-5 و SAS، ما به 16-19 دیسک نیاز داریم.

واضح است که محاسباتی که ارائه کردم کاملاً تقریبی است. سیستم‌های ذخیره‌سازی از انواع مکانیسم‌ها، در درجه اول ذخیره‌سازی - برای بهینه‌سازی عملکرد سیستم ذخیره‌سازی استفاده می‌کنند. اما به عنوان یک نقطه شروع برای درک فرآیند اندازه گیری زیرسیستم دیسک، این اطلاعات مفید است.

در پشت صحنه روش هایی برای به دست آوردن تعداد IOPS مورد نیاز برای ماشین مجازی و نسبت خواندن به نوشتن وجود دارد. برای یک زیرساخت موجود (هنگام انتقال آن به ماشین های مجازی)، این داده ها را می توان با استفاده از ابزارهای جمع آوری اطلاعات ویژه، مانند VMware Capacity Planner به دست آورد. برای زیرساخت های برنامه ریزی شده - از مستندات برنامه ها و تجربه شخصی شما.