2-1-3معیارهای سنجش قابلیت دسترسی12
2-1-4سطوح قابلیت دسترسی بالا13
2-1-5توقف برنامه‌ریزی شده و توقف برنامه‌ریزی نشده14
2-1-6عوامل مؤثر بر میزان دسترسی سیستم16
2-2دستیابی به قابلیت دسترسی بالا در سیستم‌های کلاستر16
2-2-1تعریف نقاط منفرد بروز خرابی17
2-2-2از بین بردن نقاط منفرد بروز خرابی در اجزای سخت‌افزاری17
2-2-3از بین بردن نقاط منفرد بروز اشکال در اجزای نرم‌افزاری23
2-2-4تشخیص دهندۀ خرابی در کلاسترهای با قابلیت دسترسی بالا25
2-2-5معماری کلاسترهای با قابلیت دسترسیبالا26
2-2-6اتصالات و شبکه کلاستر28
2-2-7مدیریت و نظارت بر کلاستر28
2-2-8تصویر یکپارچه سیستم (SSI)33
3روالهای تحمل‌پذیر اشکال برای رسیدن به قابلیت دسترسی بالا در سیستمهای مبادله پیام36
3-1پیشزمینه و تعاریف38
3-1-1مدل سیستم38
3-1-2حالت‌های سیستم یکپارچه39
3-1-3تعامل با دنیای خارج40
3-1-4پیام در حال گذر41
3-1-5قراردادهای ثبت وقایع42
3-1-6ذخیره‌ساز پایدار43
3-1-7جمع‌آوری داده‌های زائد44
3-2بازیافت براساس نقطه مقابله44
3-2-1نقطه مقابله گرفتن به صورت غیرهماهنگ45
3-2-2نقطه مقابله گرفتن به صورت هماهنگ48
3-2-3نقطه مقابله گرفتن بر اساس ارتباطات51
3-3بازیافت بر اساس ثبت وقایع54
3-3-1شرط یکپارچگی بدون پروسه‌های یتیم55
3-3-2ثبت بدبینانه وقایع56
3-3-3ثبت خوشبینانه وقایع59
3-3-4ثبت علّی وقایع61
3-3-5مقایسه قراردادهای بازیافت63
3-4مباحث مطرح در پیاده‌سازی63
3-4-1بررسی63
3-4-2پیاده‌سازی تکنیکهای نقطه مقابله گرفتن64
3-4-3مقایسه قراردادهای نقطه مقابله‌ گرفتن66
3-4-4قراردادهای ارتباطی66
3-4-5بازیافت بر اساس روش ثبت وقایع67
3-4-6ذخیره‌ساز پایدار67
3-4-7دنبال کردن وابستگی68
3-4-8بازیافت69
4کارهای انجام شده اخیر71
4-1مروری بر روش‌های پیشبینی اشکال72
4-1-1کلاسه بندی و اشکالهای ریشه آماری72
4-1-2مدل آماری زمان میان خرابی‌ها73
4-1-3جمع‌آوری و پیش‌پردازش داده‌های مرتبط با خرابی73
4-2تکنیک‌های پیش‌بینی اشکال74
4-2-1حدآستانه مبتنی بر آمار74
4-2-2آنالیز سری‌های زمانی75
4-2-3کلاسه‌بندی مبتنی بر قانون75
4-2-4مدل‌های شبکه بیزی76
4-2-5مدل‌های پردازش شبه مارکوف76
4-3مطالعات انجام گرفته77
5روش پیشنهادی86
5-1مدل اشکال86
5-1-1متوسط زمانی تا خرابی89
5-2مبانی احتمال و پیشبینی91
5-2-1مفاهیم اولیه91
5-2-2رابطه قانون بیز و احتمال درستی پیش‌بینی92
5-3رابطه الگوریتم پیش‌بینی و مدل اشکال94
5-3-1تحلیل روابط احتمالی94
5-4مدل پیشنهادی97
5-4-1ارائه الگوریتم100
5-4-2مدل مبتنی بر هزینه101
5-4-3اثر پیش‌بینی‌کننده بر روی مدل‌های هزینه105
5-4-4تصمیم‌گیری سیستم در کارگزار ابر106
6نتایج آزمایشها109
6-1معرفی شبیه‌ساز CloudSim109
6-1-1اجزای ابر109
6-1-2اجزای اصلی هسته111
6-1-3سرویس‌های موجود و الگوریتم‌های آن‌ها114
6-1-4روند کار شبیهساز115
6-2نحوه پیادهسازی سیستم تحمل‌پذیر اشکال در شبیهساز116
6-2-1FaultInjector117
6-2-2FaultPredictor120
6-2-3FTHost121
6-2-4FTDatacenter121
6-2-5FTDatacenterBroker122
6-3نتایج آزمایشات124
6-3-1بررسی اثر سربار نقطه مقابله‌گیری126
6-3-2بررسی عمل‌های انتخابی127
6-3-3خرابی‌های متوقف سازنده و غیر متوقف سازنده129
7نتیجه گیری و پیشنهادات132
منابع133
فهرست شکلها
شکل ‏11رویکرد یه تکنولوژی‌های مختلف محاسبات توزیع شده [1]3
شکل ‏21 سهم عوامل مختلف در از کارافتادگی سیستم HA [11]16
شکل ‏22 برخی SPOFها در سیستم سرویسدهنده/سرویسگیرنده18
شکل ‏23 SPOFها در یک شبکه اترنت نوعی22
شکل ‏24 حذف SPOFهای شبکه به روش افزونگی کامل23
شکل ‏25 نمونهای از تشخیص خرابی با سیگنال ضربان قلب26

شکل ‏26 نمای ساده از نظارت31
شکل ‏27 ارتباط اجزا مختلف EMS31
شکل ‏31 مثالی از یک سیستم مبادله پیام با سه واحد موازی38
شکل ‏32 مثالی از حالت یکپارچه و غیریکپارچه سیستم40
شکل ‏33 پیاده‌سازی مکانیسمهای بازیافت42
شکل ‏34 ثبت کردن پیام برای اجرای مجدد قطعی43
شکل ‏35 اندیس نقطه مقابله و بازه نقطه مقابله46
شکل ‏36 (a) یک اجرای مثال (b) گراف وابستگی بازگشت به عقب (c) گراف نقطه مقابله47
شکل ‏37 انتشار بازگشت به عقب، خط بازیافت و اثر دومینو48
شکل ‏38 نقطه مقابله گرفتن به صورت هماهنگ و غیربلوکه شونده (a) غیریکپارچگی نقطه مقابله (b) با کانال FIFO (c) با کانال غیرFIFO49
شکل ‏39 مسیر Z سیکل Z52
شکل ‏310 روش ثبت بدبینانه وقایع57

در این سایت فقط تکه هایی از این مطلب با شماره بندی انتهای صفحه درج می شود که ممکن است هنگام انتقال از فایل ورد به داخل سایت کلمات به هم بریزد یا شکل ها درج نشود

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

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

اینجا کلیک کنید

شکل ‏311 روش ثبت خوشبینانه وقایع60
شکل ‏312 روش ثبت علّی وقایع (الف) حالتهای قابل بازیافت حداکثر (ب)گراف مقدم را برای پروسه P0 در حالت X62
شکل ‏51 منحنی وان88
شکل ‏52 نمودار مثبت واقعی، منفی واقعی و دقت پیشبینی95
شکل ‏53 اثر تغییرات MTTF بر روی دقت پیشبینی96
شکل ‏54 اثر حساسیت و ویژگی بر روی دقت پیشبینی97
شکل ‏55 شماتیک خط زمانی نقطه مقابلهگیری هماهنگ دورهای98
شکل ‏56 شماتیک خط زمانی نقطه مقابلهگیری هماهنگ دورهای در برخورد با اشکال99
شکل ‏57 شماتیک خط زمانی الگوریتم تطبیقی پیشنهادی101
شکل ‏61دیاگرام کلی شبیه‌ساز[92]116
شکل ‏62 جریان کار اجزای برنامه‌های موازی در شبیه‌ساز [92]116
شکل ‏63 نمونه‌ای از محتویات یک فایل سناریوی خرابی گرها در یک مرکز داده118
شکل ‏64 ماشین حالت خرابی یک گره محاسباتی در ابر119
شکل ‏65 تکه کد تغییر وضعیت حالت میزبان‌های یک مرکزداده به صورت بهینه120
شکل ‏66 تکه کد پیش‌بینی وضعیت یک گره محاسباتی در زمان آینده time121
شکل ‏67 در صد بهبود زمان اجرای الگوریتم‌های پیشنهادی نسبت به الگوریتم آزمون نقطه مقابله‌گیری دوره‌ای کلاسیک126
شکل ‏68 در صد بهبود زمان اجرای الگوریتم‌های پیشنهادی نسبت به الگوریتم آزمون نقطه مقابله‌گیری دوره‌ای کلاسیک با افزایش زمان نقطه مقابله‌گیری به 5 دقیقه127
شکل ‏69 تعداد عمل‌های انتخابی در طول زمان اجرا با الگوریتم نقطه مقابله‌گیری دوره‌ای128
شکل ‏610 تعداد عمل‌های انتخابی در طول زمان اجرا با الگوریتم تطبیقی اولیه128
شکل ‏611 تعداد عمل‌های انتخابی در طول زمان اجرا با الگوریتم تطبیقی تصحیح شده129
شکل ‏612 تعداد اشکال‌هایی که در طول اجرای برنامه سبب توقف یا عدم توقف ابر می‌شوند130
فهرست جداول
جدول ‏11 قابلیت اطمینان در مراکز داده مختلف[4]5
جدول ‏21 مقایسه کلاسترهای HA و FT [13]11
جدول ‏22 زمانهای توقف و کارکرد یک سیستم 52×7×1214
جدول ‏23 زمان‌های توقف و کارکرد یک سیستم 52×5×1214
جدول ‏31 مقایسه بین قراردادهای مختلف بازیابی [47]64
جدول ‏51 رابطه وضعیت محیط و الگوریتم پیشبینی91
جدول ‏52 تعاریف پارامترهای استفاده شده در مدلها102
جدول ‏53 مدل هزینه عمل مهاجرت103
جدول ‏54 مدل هزینه عمل نقطه مقابلهگیری104
جدول ‏55 مدل هزینه عمل اجرای بلافاصل105
جدول ‏61 مقداردهی اولیه متغیرهای شبیهساز125
فصل اول
مقدمه
مقدمه
جهان محاسباتی که امروزه با آن روبرو هستیم روز به‌روز در حال بزرگتر و پیچیده‌تر شدن است. محاسبات ابری نیز در ادامه سبک‌های دیگر مانند محاسبات توری با هدف پردازش حجم عظیمی از داده با استفاده از خوشه‌هایی از کامپیوتر‌هاست. طبق گراش ارائه شده ای از گوکل، در حال حاضر به لطف محاسبات توزیع شده روزانه بیش از 20 ترابایت داده خام اینترنتی مورد پردازش قرار می‌گیرد. تکامل و شکل‌گیری محاسبات ابری خواهد توانست این چنین مسائلی را به راحتی و به شکلی مناسب‌تر از طریق سرویس‌های مبتنی بر تقاضا حل و فصل نماید. از زاویه دیگر، جهان محاسباتی اطراف ما در حال حرکت به سمت الگوهای “پرداخت برای استفاده” حرکت می‌کند و همین الگو یکی دیگر از پایه‌های اصلی محاسبات ابری محسوب می‌شود.
محاسبات ابری که در اواخر سال 2007 پا به عرضه ظهور گذاشت هماکنون به دلیل توانایی‌اش در ارائه زیر ساخت فناوری پویا و بسیار منعطف، محیط‌های محاسباتی تصمین شده از نظر کیفیت و همچنین سرویس‌های نرم‌افزاری قابل پیکربندی به موضوع داغ بدل شده است . در گزارش رویکردی گوگل همانطور که در شکل ‏11 مشاهده می‌نمایید، محاسبات ابری، محاسبات توری را پشت سر گذاشته است [1]. محاسبات ابری از رویکرد مجازیسازی بهرهگیری مینماید که این امر سبب انعطافپذیری بیشتر سیستم ابر میشود. در حقیقت با استفاده از این تکنولوژی، برنامهها میتوانند سرویس‌های مختلف را به صورت مجزا و انتزاعی از گره‌های سرویس‌دهنده دریافت نمایند.
شکل ‏11رویکرد یه تکنولوژی‌های مختلف محاسبات توزیع شده [1]
تعاریف زیادی در مورد محاسبات ابری ارائه شده است که سعی می‌نمایند مشخصه‌های اصلی محاسبات ابری را مد نظر بگیرند که سیستم ابری را ” یک مدل برای دسترسی بنابر تقاضا و راحت تحت شبکه به یک مجموعه اشتراکی از منابع محاسباتی قابل پیکربندی” تعریف می‌نمایند درحالیکه “این منابع با کمترین تلاش و هزینه به صورت آزاد” فراهم گردند [2].
محاسبات ابری از خصوصیات منحصر به فردی بهره می‌برد که این سبک محاسباتی را از سایر سبک‌ها متمایز می‌کند. البته برخی از این خصوصیات کما بیش در سبک‌های پیشین نیز وجود داشتهاند. بعضی از این خصوصیات عبارتند از:
ارائه سرویس مبتنی بر تقاضا: در اینجا لازم نیست تا برای آن چه استفاده نمی‌کنید هزینه پرداخت کنید. این بدان معناست که مشتریان تنها بر اساس مقدار و کیفیت سرویسی که مصرف می‌نمایند، هزینه استفاده پرداخت می‌نمایند. در حقیقت رویکرد این تکنولوژی همانند سرویس‌های عمومی قابل استفاده دیگر امروزی است. برای مثال همانطور که برای تولید برق نیاز نیست که هر خانوار دارای ژنراتور و سایر وسایل تولید الکتریسیته باشد، دریافت سرویسی مانند محاسبات یا محل ذخیره داده نیز دیگر نیازی به خصوصی بودن ندارد و می‌توان آن را از فراهم آوردنگان ابر10 اجاره کرد.
دسترسی شبکه گسترده (اینترنت): این سیستم برای تحویل و ارئه سرویس‌ها از بستر موجود برای اینترنت استفاده می‌نماید. بنابراین مشتریان سرویس‌ها به هیچگونه نرم‌افزار یا سخت‌افزار خاصی نیاز ندارند و با همان مرورگری که هر روزه به گشت و گذار در وب می‌پردازند می‌توانند از سرویس‌های ابر بهره ببرند.
استخر منابع: در این سیستم با حجم وسیعی از منابع روبرو هستیم. این منابع از طریق مجازیسازی از محل فیزیکی خود مستقل شدهاند. بنابراین به راحتی می‌توانند در بستر شبکه جابهجا شوند. در واقع نرم‌افزارها، پایگاه‌های داد، وب سرورها و سیستم‌های عامل همگی به عنوان سرورهای مجازی در سیستم ابر حضور دارند.
قابلیت اطمینان بالا: فراهم آورندگان ابر به مشتریان خود تضمین می‌دهند که سیستم ابر همیشه قابلیت ارائه سرویس را داشته باشد. حال آنکه در سیستم‌های خانگی یک اشکال در نرم‌افزار یا سخت‌افزار می‌تواند موجب عدم دسترسی به اطلاعات و سرویس شود.
هزینه پایین: به صورت سنتی برای اجرای برنامه‌های سنگین محاسباتی یا داده ای عظیم نیاز به یک سیستم با توان بالای محاسباتی و دادهای احساس می‌شده است. این سیستم هزینه سنگینی را برای شرکت و یا افراد سرویسگیرنده فراهم می‌آورده است. حال با استفاده از سرویس‌های موجود بر روی ابر، کاربران می‌توانند بر روی پروژه خود تمرکز بیشتری داشته باشد و هزینه گزافی را بابت تهیه زیرساخت‌ها نپردازد.
به‌روز بودن: هزینه‌های گزافی که برای برپا بودن و به‌روز بودن زیرساخت‌های سخت‌افزاری و نرم‌افزاری باید پرداخت شوند با استفاده از ابر از بین می‌رود. در حقیقت به‌روز در آوردن زیرساخت‌ها از وظایف فراهمآورندگان ابر می‌شود که بدون آنکه کاربر نهایی از این موضوع مطلع شود انجام می‌پذیرد.
در سیستمهای محاسبات توزیعی به دلیل کم کردن هزینه و توان مصرفی، از اجزاء تجاری عاممنظوره موجود در بازار استفاده میشود[3]. این اجزا به مرور زمان مستهلک شده و دچار خرابی می‌شوند تا جایی‌که برای همیشه غیرقابلاستفاده میگردند. همچنین با توجه به آمار ذکر شده، تعداد پردازندهها به منظور بهبود کارآیی سیستم محاسباتی توزیعی رو به افزایش است. با این حال احتمال وقوع خرابی11 در کل سیستم توزیعی با یک رابطه نمایی بالا میرود. برای مثال سیستم کلاستری که برای یکی از قسمت‌های سایت گوگل استفاده میشود، بیش از 15000 پردازنده دارد که بر اساس آمار ذکر شده در [4]، نرخ خرابی هر گره محاسباتی تقریبا 2-3% در سال است. این سیستم به طور میانگین 20 بار در هر روز به علت خرابی ناگزیر به راه‌اندازی مجدد12 است. بزرگترین مرکز داده جهان بیش از 560000 هسته پردازشی دارد و در کم‌تر از هر 10 دقیقه با یک اشکال در سیستم مواجه می‌شود. درجدول 1-1 چند نمونه از تعداد اشکال‌های گزارش شده در مراکز داده آمده است.
جدول ‏11 قابلیت اطمینان در مراکز داده مختلف[4]
سیستمتعداد پردازندهمیانگین زمان تا خرابی بعدیASCI Q81926.5 ساعتASCI White81925 ساعت و 40 دقیقهPSC Lemieux30169.7 ساعتGoogle1500020 راهاندازی مجدد در روز
برای برنامههای علمی-کاربردی موازی امروزی که بسیار پیچیده‌تر شده‌اند و معمولا برای روزها، هفتهها و یا بیشتر طراحی شدهاند تا به اتمام برسند، برخورد با اشکال در حین اجرا برنامه موازی امری اجتنابناپذیر به نظر می‌رسد. امروزه رویکردهای تحمل‌پذیر اشکال در مراکز به یکی از چالش‌های اصلی در محاسبات توزیعی تبدیل شده است.
آزمون نقطه مقابلهگیری(cp)13 و بازیافت14 یک تکنیک معمول برای مدیریت اشکال در محاسبات توزیع شده میباشد و مقالات ارزشمندی در مورد بازیابی بر اساس الگوریتمهای آزمون نقطه مقابلهگیری مختلف موجود میباشد[5 و6 و7]. مطالعه بر روی هزینه نقطه مقابله‌ گرفتن به صورت گسترده کماکان در حال انجام است. بیش‌تر کارها بر روی انتخاب بازه بهینه نقطه مقابله‌ و کم کردن سربار برای عمل نقطه مقابله انجام شده است. در واقع مهمترین مساله در بازیافت، برخورد با اشکالها بعد از وقوع آن و رویکرد بازگشت به عقب15 است. در روش نقطه مقابله بهصورت هماهنگ دورهای، در ابتدای بازه‌های زمانی از پیش تعریف شده حالت کنونی تکتک واحدهای محاسباتی موجود (این واحد در ابر ماشین‌های مجازی است) ذخیره می‌شود. پس از اتمام ذخیرهسازی تمام ماشین‌های مجازی، سیستم تا ابتدای بازه زمانی بعدی به کار خود ادامه می‌دهد.
زمانیکه در یکی از گرههای محاسباتی خرابی رخ داد، این خرابی کشف میشود و تمام کارهای موازی16 متوقف شده تا اشکال در سیستم بر طرف گردد. پس از رفع اشکال سیستم به آخرین حالت ذخیره شده ماشین‌های مجازی باز میگردد و عملیات را از آن نقطه دوباره آغاز میکند و به کار خود ادامه می‌دهد. در اغلب پیادهسازیها، پروتکل کشف و بازیافت اشکال از دید برنامهنویس پنهان میباشد. این قبیل پروتکلها به صورت واکنشی پس از وقوع اشکال در سیستم عمل مینماید. بنابراین در این حالت ممکن است زمان زیادی به لحاظ تعمیر سیستم و بازیابی مجدد ماشین‌های مجازی از دست برود که روی کارآیی ابر بهصورت مستقیم تاثیر منفی میگذارد.
در مقابل این روشها، اخیرا روشهای دیگری پیشنهاد شده که مبتنی بر پیشبینی اشکال در هر گره محاسباتی هستند. در این سیستمها، یک مکانیسم مدیریت اشکال تطبیقی17 وجود دارد که سعی دارد تا بهصورت بهینه، بهترین عمل را در ابتدای هر بازه تصمیمگیری نماید.
در دهههای گذشته پیشرفتهایی در زمینه پیشبینی اشکال حاصل شده است. برای نمونه، وسایل سختافزاری مدرنی با خصیصههای مختلفی همچون سنسورهای سختافزاری طراحی شدهاند که میتوانند افت یک ویژگی در طول زمان را (برای شناسایی خرابیهای نزدیک) نشان دهند[8 و 9] و تعدادی روشهای یادگیری ماشینی و آماری مبتنی بر تکنیکهای احتمال برای بالابردن دقت آنها ارائه شده است[3 و 10]. تکنیکهای مقاومت در برابر اشکال پیشکنشی18 مبتنی بر پیشبینی به منظور دستیابی به دسترسی‌بالا19، برای کاربردهای بحرانی- امن اتخاذ گردیده است. اما تاکنون مطالعات خوبی بر روی ابر صورت نگرفته است.
در این پایاننامه سیستم‌های محاسبات ابری را به عنوان یکی از سیستمهای پردازش موازی مبتنی بر مبادله پیام مورد بررسی قرار می‌دهیم. این محیطها به علت ویژگی خاص خود که ارتباط کارهای موازی فقط از پیام‌های رد و بدل شده انجام می‌پذیرد، دارای توانمندی‌های بالقوه برای انجام عملیات بازیافت می‌باشند. از این رو، آنچه ما به طور خلاصه مورد مطالعه قرار خواهیم داد، قراردادهای بازیافت مختلف برای محیط مبادله پیام خواهد بود. این قراردادها برای توانمند کردن محیط پردازش موازی به منظور تحمل‌پذیر کردن در برابر اشکال، اطلاعاتی نظیر حالت ماشین‌های مجازی یا محتوی پیام‌ها را در طول اجرای عادی نگهداری می‌کنند تا در زمان وقوع اشکال با استفاده از آنها، عملیات بازیافت انجام پذیرد.
در این پایاننامه در فصل دوم با قابلیت دسترسی‌بالا آشنا خواهیم شد و سپس در فصل سوم قراردادهای بازیافت در یک محیط پردازش موازی مبتنی بر مبادله پیام را مورد بررسی و مقایسه قرار می‌دهیم. در فصل چهارم به مطالعه کارهای اخیر انجام شده در زمینه برخورد پیش‌کنشی با اشکال‌های محتمل می‌پردازیم. فصل پنجم را به معرفی الگوریتم پیشنهادی اختصاص داده و در آخر به پیادهسازی و ارزیابی الگوریتم‌های پیشنهادی و مقایسه آن با روش کلاسیک پرداخته و نتیجهگیری می‌نماییم.
فصل دوم
قابلیت دسترسیبالا
قابلیت دسترسیبالا
با توجه به این که تمایل در مراکز داده به سمت استفاده از سیستم‌های پردازش موازی کلاستر با تعداد پردازنده خیلی زیاد می‌رود، توجه به خرابی این سیستم‌ها بسیار اهمیت پیدا می‌کند. لذا توجه به تحمل اشکال و قابلیت دسترسیبالا در سیستم‌های کلاستر امری اجتناب‌ناپذیر است.
مسائل مهم در این ارتباط پیشگیری از وقوع اشکال، پیدا کردن اشکالها و بازگرداندن جزء خراب شده به حالت قبل از خرابی است. پیشگیری اشکال در سیستم‌‌های پردازش موازی مبتنی بر کلاستر را می‌توان با طراحی مناسب و دارای افزونگی20 اجزایی چون شبکه‌های ارتباطی یا پردازنده‌ها به وجود آورد. در مورد پیدا کردن اشکال‌ها نیز می‌توان از انواع ابزارهای نظارت و هشداردهندۀ سیستم‌های کلاستر بهره برد. در زمینه بازگرداندن سیستم در صورت وقوع خرابی به حالت قبل خود، با توجه به نوع سیستم مورد استفاده در محیط کلاستر این بحث بررسی خواهد شد. به عنوان مثال سیستمهای سرویسدهنده در صورت وقوع اشکال تنها باید تقاضای سرویسگیرنده را به دیگر گره‌ها هدایت کنند ولی در مراکز داده سرویس دهنده به ابر که وقوع خرابی در حین اجرای یک برنامه به وقوع می‌پییوندد، باید این قابلیت دسترسیبالا ایجاد شود تا در مدت زمان کوتاهی به شرایط قبل از وقوع اشکال بازگردند.
در این فصل ابتدا به مفاهیم پایه قابلیت دسترسی بالا و مباحث مرتبط با آن خواهیم پرداخت و در ادامه برای بررسی قابلیت دسترسیبالا در ابر بهطور خاص، روشهای دستیابی به قابلیت دسترسیبالا در مراکز داده را توضیح خواهیم داد.
مفاهیم پایه قابلیت دسترسی بالا
تعریف قابلیت دسترسی بالا
قابلیت دسترسی بالا مشخصۀ سیستم‌هایی است که به منظور ارائۀ بدون وقفۀ خدمات به کاربران طراحی می‌شوند. در اینگونه سیستم‌ها علاوه بر استفاده از راهکارهایی به منظور کاهش بروز خرابی در اجزای سخت‌افزاری و نرم‌افزاری، تدابیری نیز برای برخورد با چنین خرابی‌هایی در نظر گرفته می‌شود. به این ترتیب اولاً امکان وقوع اشکال در سیستم‌های دسترس بالا21 (یا به اختصار HA) کاهش می‌یابد و ثانیاً در اثر بروز اشکال، سیستم همچنان می‌تواند به کار خود ادامه داده و خدمات در دست اقدام خود را بدون توقف پیگیری کند. البته روشن است که بروز خرابی باعث کاهش کارایی سیستم خواهد شد.
یکی دیگر از امکاناتی که معمولاً در سیستم‌های HA در نظر گرفته می‌شود امکان تعمیر، ارتقاء و تغییر پیکربندی سیستم در حین ارائۀ خدمات به کاربران یا مشتریان است؛ این امکان نیز در جهت کاهش مدت زمان توقف سیستم از اهمیت ویژه‌ای برخوردار است. برای مقایسۀ سیستم‌های HA از معیاری با عنوان قابلیت دسترسی22 استفاده می‌شود. قابلیت دسترسی یک سیستم به صورت (متوسط) درصدی از زمان که سیستم قابل استفاده است تعریف می‌شود. به عنوان مثال سیستمی را تصور کنید که باید در تمام روزهای هفته و در تمام 24 ساعت شبانه‌روز آماده ارادۀ خدمات به مشتریان نباشد. در صورتی که این سیستم به طور متوسط در هفته به مدت یک ساعت از کار بیافتد میزان دسترسی برابر با
“1-7×24″ /”7×24″ ×”100″=”%99.4 ” خواهد داشت. هر چه مدت توقف و از کارافتادگی سیستم کمتر باشد میزان دسترسی آن بیشتر خواهد بود.
مفاهیم و مباحث مرتبط با قابلیت دسترسی بالا
قابلیت دسترسی پیوسته
این حالت، ایده آل HA است، به این معنی که سیستم با قابلیت دسترسی پیوسته هیچگاه متوقف نمی‌شود. واضح است که قابلیت دسترسی پیوسته یک حالت فرضی است و در دنیای خارجی محقق نخواهد شد. اما گاهاً این اصطلاح در مورد سیستم‌هایی که قابلیت دسترسی بسیار بالایی دارند و تنها مدت توقف معین و بسیار کوتاه قابل پذیرشی دارند، به کار می‌رود[11].
قابلیت تحملپذیری اشکال23
سیستم‌های با قابلیت تحملپذیری اشکال (FT) چنانکه از نامشان پیداست این قابلیت را دارند که در اثر بروز یک اشکال در واحدهای مختلف سخت‌افزاری یا نرم‌افزای، همچنان به کار خود ادامه دهند، بهطوریکه کاربر از وقوع اشکال مطلع نشود. نکتۀ اصلی در دستیابی به قابلیت تحملپذیری اشکال ، استفاده از بلوک‌های سخت‌افزاری و نرم‌افزاری اضافه است. این بلوک‌ها پیش از اینکه سیستم دچار اشکال شود نقشی در کارکرد سیستم ندارند اما به محض وقوع اشکال در یک واحد از سیستم، بلوک اضافی متناظر با آن وارد عمل شده و جای واحد خراب را می‌گیرد و وظایف آن را انجام می‌دهد. در سیستم‌هایی که قابلیت تحملپذیری اشکال کامل دارند همۀ اجزای تشکیل دهندۀ سیستم دارای افزونگی24 هستند تا وقوع هیچ اشکالی منجر به توقف سیستم نشود. لازم به ذکر است که قابلیت تحملپذیری اشکال و قابلیت دسترسی بالا به یک معنا نیستند. در واقع یک سیستم با قابلیت تحملپذیری اشکال در صورتی که نرخ بروز خطا یا اشکال بالایی داشته باشد به هیچ‌ وجه HA نخواهد بود [12].
البته باید توجه داشت که برای دستیابی به قابلیت دسترسیبالا چاره‌ای جز بکارگیری بلوک‌های اضافی برای برخی از اجزاء سیستم نخواهیم داشت. ولی در سیستم‌های HA علاوه بر بکارگیری افزونگی برای برخی از اجزاء و استفاده از اجزای مرغوب، مکانیسم‌هایی نیز در نظر گرفته می‌شود تا در صورت وقوع اشکال در یکی از اجزاء، سایر اجزاء بتوانند علاوه بر وظیفۀ خود، وظیفۀ جزء خراب را نیز بر عهده بگیرند و در نتیجه سیستم به کار خود ادامه دهد. به این مکانیسم‌ها دور زدن خرابی25 گفته می‌شود. از آنجا که سیستم‌های FT از اجزای سخت‌افزاری و نرم‌افزاری خاصی استفاده می‌کنند و حاوی حجم انبوهی از افزونگی‌ها هستند لذا از سیستم‌های HA گران‌تر می‌باشند. در جدول 2-1 سایر مشخصات سیستم‌های HA و FT با هم مقایسه شده‌اند [13].
جدول ‏21 مقایسه کلاسترهای HA و FT [13]
کلاسترHAسیستم FTزمان بازیابیچند ثانیه تا چند دقیقهچند میلی ثانیهمدل بازیابیبازیابی تراکنشی دادهمبتنی بر حافظه و دیسک سختدادههای بحرانیدیسکدیسک و حافظهپیادهسازیتوسعه اسکریپنیازمند به شبکهسیستمکلاسترسیستم منفردبرد محصولارزان قیمت تا دقت بالاچند بردهقابلیت تحمل حادثه26
قابلیت تحمل حادثه به معنای این است که یک تأسیسات کامپیوتری این امکان را داشته باشد که در اثر بروز چند اشکال در یک سایت و یا در اثر از کارافتادگی کامل یک سایت همچنان به ارائه خدمات ادامه دهد. در این دسته از سیستم‌ها سایت‌ها در یک ساختمان یا شهر و یا حتی قارّه پراکنده شده‌اند و مکانیزمی پیش‌بینی شده است که در اثر وقوع حادثه‌ای چون آتش‌سوزی برای یک از سایت‌ها، سایت‌ دیگر عملیات را برعهده بگیرد. ناگفته پیداست که این گونه سیستم‌ها نیاز به طراحی و پیاده‌سازی دقیق دارند و بسیار گران هستند.
قابلیت اطمینان27
قابلیت اطمینان و قابلیت دسترسی مفاهیم مرتبطی هستند ولی باید به اختلاف بین آن دو توجه کرد. چنانچه پیش از این ذکر شد میزان دسترسی یک سیستم درصدی از کل زمان‌هاست که سیستم قابل استفاده برای کاربرد معمول آن است. اما قابلیت اطمینان مدت زمانی است که انتظار می‌رود سیستم بدون از کارافتادگی همچنان به کار خود ادامه دهد. واضح است که یک سیستم HA از قابلیت اطمینان بالایی نیز برخوردار خواهد بود. ولی یک سیستم با قابلیت اطمینان بالا ممکن است به دلیل زمان زیاد مورد نیاز برای تشخیص و تعمیر خرابی و راه‌اندازی مجدد، HA نباشد.
معیارهای سنجش قابلیت دسترسی
مهم‌ترین و کامل‌ترین این معیارها، قابلیت دسترسی سیستم است که در ضمن تعریف سیستم‌های HA توضیح داده شد. در ادامه به معرفی برخی دیگر از معیارهای سنجش قابلیت دسترسی می‌پردازیم که تنها از یک منظر، کیفیت سیستم HA را مشخص می‌کنند و لذا معیار کاملی از سیستم‌های HA نیستند.
متوسط فاصلۀ زمانی بین خرابیها28 (MTBF)
این معیار مشخصه‌ای برای میزان قابلیت اطمینان سیستم است و معمولاً برای واحدهای منفرد تشکیل دهندۀ سیستم مانند دیسک‌ها بکار می‌رود. MTBF از فرمول زیر محاسبه می‌شود:
MTBF=(کارکرد زمان کل)/(آمده پیش اشکالات کل تعداد)
در صورتی که بخواهیم MTBF را برای یک سیستم مرکب محاسبه کنیم باید مجموع خالص زمان‌های کارکرد واحدهای تشکیل‌دهندۀ سیستم (اعم از واحدهایی که دچار اشکال نمی‌شوند) را بر تعداد کل اشکالات رخ داده در واحدهای مختلف تقسیم کنیم. معمولاً MTBF از روی عملکرد گذشته سیستم محاسبه می‌شود و بهعنوان تخمینی از عملکرد گذشته سیستم مورد استفاده قرار می‌گیرد.
متوسط زمان تعمیر29 (MTTR)
این معیار متوسط زمان مورد نیاز برای تعمیر سیستم را نشان می‌دهد. هر چه این زمان کوتاهتر باشد، بهتر است و به مفهوم بازگشت دوبارۀ واحد خراب به سیستم است. لازم به ذکر است که میزان دسترسی به هر دو پارامترهای MTBF و MTTR بستگی دارد.
سطوح قابلیت دسترسی بالا
میزان دسترسی قابل قبول برای یک سیستم، به کاربرد آن و میزان خسارات ناشی از بروز اشکالات در سیستم بستگی دارد. از طرف دیگر با افزایش میزان دسترسی یک سیستم قیمت آن به سرعت رشد می‌کند. لذا پیش از اقدام برای خرید و نصب سیستم باید مطالعات کافی به منظور یافتن سطح HA مورد نیاز در آن کاربرد انجام شده باشد. مسئلۀ دیگری که در انتخاب سیستم HA باید مد نظر باشد ساعات کاری سیستم است. در جدول 2-2 و جدول 2-3 سطوح مختلف HA و زمان‌های توقف و در دسترس بودن سیستم‌هایی با ساعات کاری 52×7×24 (یعنی 24 ساعت در روز، 7 روز در هفته و 52 هفته در سال) و 52×5×12 درج شده است. در سیستم‌هایی که در تمام طول شبانه‌روز مشغول خدمات‌رسانی نیستند ممکن است بتوان تعمیر سیستم را تا پایان ساعت خدمات‌رسانی روزانه، به تعویق انداخت و به این ترتیب زمان در دسترس بودن سیستم را افزایش داد اما در مورد سیستم‌های شبانه‌روزی معمولاً مکانیزم‌هایی برای تعمیر سیستم به صورت برخط30 و بدون توقف در نظر گرفته می‌شود.
جدول ‏22 زمانهای توقف و کارکرد یک سیستم 52×7×12
قابلیت دسترسیکمترین زمان مورد انتظار دسترس بودنکمترین زمان مجاز خارج از دسترس بودنزمان باقیمانده99%867288099.5%871644099.95%875550100%876000
جدول ‏23 زمان‌های توقف و کارکرد یک سیستم 52×5×12
قابلیت دسترسیکمترین زمان مورد انتظار دسترس بودنکمترین زمان مجاز خارج از دسترس بودنزمان باقیمانده99%308332564299.5%310416564299.95%311825642100%312005642توقف برنامه‌ریزی شده و توقف برنامه‌ریزی نشده
سیستم HA ممکن است به دو صورت متوقف شود: برنامه‌ریزی شده و یا برنامه‌ریزی نشده. توقف برنامه‌ریزی شدۀ سیستم طبق برنامۀ از پیش تعیین شده‌ای توسط اپراتور انجام می‌شود. توقف برنامه‌ریزی شدۀ سیستم ممکن است به صورت روزانه، هفتگی، ماهانه و بیش‌تر انجام شود. هدف از توقف برنامه‌ریزی شده می‌تواند برخی از موارد زیر باشد[11] :
تهیۀ نسخۀ پشتیبان31 به طور متناوب
ارتقاء نرم‌افزاری سیستم
توسعه و یا تعمیر سخت‌افزار
تغییر پیکربندی سیستم
تغییر و بهروز کردن داده‌ها
توقف برنامه‌ریزی شده در صورتی که به نحو مناسب زمان‌بندی شده باشد معمولاً مشکلی ایجاد نمی‌کند. چنانکه پیش از این هم اشاره شد، یک انتخاب جایگزین برای توقف برنامه‌ریزی شده، روش‌های تهیۀ نسخه‌های پشتیبان به صورت برخط و روش‌های تعمیر و ارتقاء سخت‌افزاری به صورت اتصال در زمان روشن بودن دستگاه32 است. نوع دیگری از توقف‌های سیستم، توقف‌های برنامه‌ریزی نشده یا از کارافتادگی‌ها هستند و در سیستم‌های HA بسیار نامطلوب می‌باشند. بعضی از علل وقوع این گونه از توقف‌ها عبارتند از [11]:
از کار افتادن بخشی از سخت‌افزار
خطای سیستم فایل
پر شدن دیسک و نبودن جا برای ذخیره‌سازی
رویداد پرش ناگهانی33 در تغذیۀ سیستم
از کار افتادن منبع تغذیه
مسائل مربوط به شبکۀ ارتباطی
نقص نرم‌افزاری
خطای کاربرد
نقص میان‌افزاری
حوادث طبیعی (مانند آتش‌سوزی، سیل)
اشتباه اپراتور یا مدیر سیستم.
در شکل 1-1 سهم هر یک از گروه‌هایی را که منشاء توقف برنامهریزی نشده هستند، به صورت آماری نشان می‌دهد [11].
شکل ‏21 سهم عوامل مختلف در از کارافتادگی سیستم HA [11]
عوامل مؤثر بر میزان دسترسی سیستم
عامل‌های مؤثر بر میزان دسترسی یک سیستم را می‌توان به سه دسته تقسیم کرد: پرسنل، پروسه و فناوری [14]. پرسنل و مدیران سیستم‌های HA، خصوصاً سیستم‌های با مأموریت بحرانی باید مهارت‌ها و دانش لازم برای مدیریت این گونه سیستم‌ها و آگاهی از نحوۀ برخورد با خرابی‌ها و اشکالات به وجود آمده در سیستم را دارا باشند. همچنین سازمان‌هایی که از چنین سیستم‌هایی بهره می‌گیرند باید پروسه‌های مشخصی را برای مواجهه با خرابی‌ها و اشکالات احتمالی پیش‌بینی کرده باشند. عنصر سوم، فناوری به کار رفته در سیستم است. به این معنا که طراحان سیستم‌های HA می‌بایستی از قطعات سخت‌افزاری و نرم‌افزاری مناسب، شبکه‌های ارتباطی کارا، سیستم‌های عامل و برنامه‌های کاربردی خوبی استفاده کرده باشند. اگر چه ضعف هر یک از این سه عامل منجر به کاهش میزان دسترسی سیستم از دید کاربران می‌شود ولی ما در این نوشته‌ تنها به بُعد فناوری سیستم‌های HA خواهیم پرداخت.
دستیابی به قابلیت دسترسی بالا در سیستم‌های کلاستر
با توجه اینکه تمایل در سطح سیستم‌های موازی به سمت استفاده از سیستم‌های پردازش موازی کلاستر با تعداد پردازشگر خیلی زیاد می‌رود، توجه به خرابی این سیستم‌ها بسیار اهمیت پیدا می‌کند. این سیستم‌ها از کامپیوترهایی که با استفاده از یک شبکۀ ارتباطی به یکدیگر متصل شده‌اند تشکیل می‌شوند. همۀ این کامپیوترها در یک جعبه قرار می‌گیرند و به صورت یک سیستم واحد و یکپارچه دیده می‌شوند. در این بخش نقاط منفرد بروز خرابی34 که در این فصل گاهی آن را اختصاراً SPOF می‌نامیم، در یک سیستم کلاستر مشخص کرده و راهکارهای حذف آنها را بررسی می‌کنیم. با حذف نقاط منفرد بروز اشکال نخستین گام به سوی سیستم HA برداشته خواهد شد.
تعریف نقاط منفرد بروز خرابی
نقاط منفرد بروز خرابی اجزائی هستند که نبودن یا از کارافتادگی هر یک از آنها منجر به توقف خدمات ارائه شده توسط سیستم می‌گردد. معمولاً جزئی از سیستم که برای آن افزونگی در نظر گرفته نشده است یک SPOF خواهد بود. به عنوان مثال، در شکل 1-2 تعدادی از SPOFها در یک سیستم سرویس‌دهنده/ سرویسگیرنده35 نشان داده شده است.
از بین بردن نقاط منفرد بروز خرابی در اجزای سخت‌افزاری
از بین بردن نقاط منفرد بروز خرابی مربوط به منابع تغذیه
چنانکه در شکل 2-2 ملاحظه می‌شود همۀ اجزای مدار به یک منبع تغذیه متصل شده‌اند. در نتیجه این منبع تغذیه به وضوح یکی از SPOFهای سیستم‌ خواهد بود. به منظور رفع این نقیصه می‌توان از منابع تغذیۀ اضطراری36 (UPS) استفاده کرد که به صورت کلی دو نوع هستند. UPSهای منفرد، منافع تغذیه‌ای هستند که در صورت قطع توان ورودی، به یک باتری سوییچ می‌کنند و برای مدت کوتاهی توان سیستم را تأمین می‌کنند. در این مدت سیستم می‌تواند به نحو مناسب خاموش شود. در صورتی که در این مدت تغذیۀ سیستم مجدداً به حالت اول برگردد سیستم بدون خاموش شدن ادامۀ کارهایش را پی‌گیری می‌کند. باید توجه داشت که این نوع UPS خود می‌تواند دچار اشکال شود و از کار بیفتد و لذا یک SPOF محسوب می‌شود. برای حذف این SPOF باید از دو یا چند UPS استفاده کرد. علاوه بر این برای اینکه در اثر از کارافتادن یک UPS، تمام سیستم یکباره متوقف نشود می‌توان برای قسمت‌های مختلف سیستم از UPSهای مجزا استفاده کرد
شکل ‏22 برخی SPOFها در سیستم سرویسدهنده/سرویسگیرنده
نوعی دیگر از آنها، UPS عبور دهندۀ توان37 نام دارد. این نوع که از UPS منفرد گران‌تر است، خودش SPOF نیست زیرا در حالتی که توان ورودی در وضعیتی مناسب قرار دارد و دچار اشکال نشده است این نوع UPS تنها توان را عبور می‌دهد و به عبارت دیگر در مدار قرار ندارد. اما به محض بروز اشکال، این نوع UPS وارد عمل شده و توان سیستم را از طریق یک باتری یا ژنراتور اضطراری تأمین می‌کند.
از بین بردن نقاط منفرد بروز خرابی مربوط به دیسک‌ها
همان‌طور که در شکل 2-2 مشاهده می‌شود سیستم مورد نظر از دو دیسک استفاده می‌کند: دیسک ریشه38 و دیسک داده. دیسک ریشه محل قرار گرفتن سیستم عامل است و داده‌های کاربردهای مختلف بر روی دیسک داده نگهداری می‌شوند. در صورت بروز اشکال در دیسک ریشه، سیستم نمی‌تواند پردازش‌های معمول خود را انجام دهد. برای رفع اشکال، این دیسک باید عوض شود و محتوای دیسک با نصب مجدد نرم‌افزارهای سیستم و یا با استفاده از نسخه‌های پشتیبان بازیابی شود. در صورت بروز اشکال در دیسک داده کاربردها متوقف می‌شوند و پس از جایگزینی دیسک داده‌ها با دیسک مشابه باید داده‌های موجود در آخرین نسخۀ پشتیبان موجود، بر روی دیسک جدید بارگذاری شود. داده‌هایی که پس از تهیۀ آخرین نسخۀ پشتیبان تغییر کرده‌اند قابل بازیابی نخواهند بود. چنانکه ملاحظه می‌شود هر یک از دیسک‌ها یک SPOF هستند و تنها راه از بین بردن این SPOFها استفاده از افزونگی است. دو روش برای به کارگیری افزونگی در مورد دیسک‌ها وجود دارد که عبارتند از:
محافظت داده‌ها با استفاده از آرایه‌ای از دیسک‌ها
حافظت نرم‌افزاری از داده‌ها با بکارگیری ایدۀ قرینه‌سازی39
محافظت داده‌ها با استفاده از آرایهای از دیسک‌ها
در این روش آرایه‌ای از دیسک به صورت یک پیکربندی RAID40 مورد استفاده قرار می‌گیرد و می‌توان از سطوح مختلف RAID بهره جست. برخی از این سطوح RAID به روش قرینهسازی سخت‌افزاری و برخی دیگر با استفاده از توازن41 از داده‌ها محافظت می‌کنند بهطوری که در اثر بروز اشکال در یک دیسک، همچنان بتوان داده‌ها را بازیابی کرد. سطوح متداول RAID عبارتند از:
RAID 0: داده به طور معمول بر روی دیسک‌ها نوشته می‌شود و محافظتی از داده‌ها به عمل نمی‌آید.
RAID 1: داده بر روی گروهی از دیسک‌ها که قرینه42 یکدیگر هستند نوشته می‌شود.
RAID 3: داده به صورت بایت- بایت خرد می‌شوند و بیت‌های مختلف هر بایت بر روی دیسک مختلف نوشته می‌شوند و در ضمن بیت توازن برای هر بایت بر روی یک دیسک معین ذخیره می‌شود.
RAID 5: داده به بلوک‌هایی شکسته می‌شود و علاوه بر ذخیره‌سازی بلوک‌ها اطلاعات مربوط به بلوک‌ها نیز بر روی دیسک پراکنده شده و ذخیره می‌شود.
از مزایای استفاده از آرایه‌ای از دیسک‌ها می‌توان موارد زیر را برشمرد:
امکان و سهولت تعویض بر خط بلوکی از دیسک‌ها که یکی از آنها دچار اشکال شده است.
قابلیت تخصیص خودکار یک بلوک از دیسک‌ها به منظور بر عهد گرفتن وظیفۀ یکی از بلوک‌هایی که دچار اشکال شده است (در حالت عادی بلوک مورد بحث در حالت منتظر43 می‌باشد).
انعطاف‌پذیری در پیکربندی آرایه (حالت‌های مختلف).
امکان حذف SPOFها با استفاده از کنترل کننده‌ها، منبع تغذیه و فن اضافی.
حجم بالای حافظۀ پیوسته.
محافظت از داده‌ها با استفاده از قرینه‌سازی نرم‌افزاری
این روش همان سطح RAID 1 است که بر روی دیسک‌های منفرد و به صورت نرم‌افزاری پیاده‌سازی شده است. از مزایای این روش می‌توان به موارد زیر اشاره کرد:
قرینه‌سازی با دو یا چند کپی قابل انجام است و می‌توان تعداد کپی‌ها را به صورت نرم‌افزاری تعیین کرد.
کپی‌های داده را می‌توان به منظور تهیۀ نسخۀ پشتیبان به تکه‌های کوچک‌تری خرد کرد و حتی می‌توان نسخۀ پشتیبان را بر روی یک سیستم دیگر نگهداری کرد.
می‌توان نحوۀ چنیش داده‌ها بر روی دیسک‌ها را کنترل کرد تا کارایی یک کاربرد خاص افزایش یابد.
می‌توان قرینه‌ها را طوری پیکربندی کرد که از کانالهای فیبری یا گذرگاه‌های SCSI44 مختلفی استفاده کنند و به این ترتیب نرخ عملیات I/O را چند برابر کرد.
دیگر یک کنترلکنندۀ دیسک، گلوگاه45 نخواهد بود.
حذف نقاط منفرد بروز اشکال مربوط به اجزای واحدهای پردازشی46 (SPUها)
هر یک از واحدهای پردازشی که آن را اختصاراً SPU می‌نامیم، در یک سیستم از اجزایی تشکیل شده‌اند که آن اجزاء مستعد بروز اشکال هستند. مهم‌ترین این اجزاء عبارتند از:
یک یا چند پردازه
کنترل‌های I/O
بُردهای حافظه
در صورت بروز اشکال در این گونه اجزاء SPU قادر به انجام عملیات مورد انتظار نخواهد بود. برای حذف این نوع از SPOFها دو راه وجود دارد: یکی استفاده از اجزای SPU به صورت افزونگی و دیگری استفاده از کلاسترهای HA.
در روش اول جعبه‌هایی حاوی پردازنده‌ها، کارت‌های شبکه، کارت‌های I/O، حافظه‌ها، منابع تغذیه و اتصال دهنده‌ها در نظر گرفته می‌شود که در صورت وقوع خرابی، جایگزین اجزای خراب می‌شوند. در روش دوم SPUهای پشتیبان در نظر گرفته می‌شود که این SPUها ممکن است در حالت عادی فعال بوده و یا منتظر باشند. در اثر وقوع خرابی در یکی از SPUها، SPUی پشتیبان طی فرایندی موسوم به دور زدن خطا، کاربردی که در حال اجرا بر روی SPUی خراب بوده است را از سر می‌گیرد. پروسۀ دور زدن خطا در مدت کوتاهی انجام می‌شود و نرم‌افزار مربوط به آن همواره بر روی تمام واحدهای کلاستر در حال اجرا است. این روش نسبت به روش قبل انعطاف‌پذیرتر بوده و در مورد برخی از کاربردها مقرون به صرفه‌تر است.
حذف نقاط منفرد بروز اشکال مربوط به شبکه
در سیستم‌های کلاستر شبکه‌ها به دو منظور مورد استفاده قرار می‌گیرند:
دسترسی سرویسگیرنده‌ها و سیستم‌های دیگر به کاربردها
مبادلۀ پیام بین واحدهای کلاستر
به منظور دسترسی گیرنده به کاربرد موجود بر روی سرویس‌دهنده معمولاً از شبکه‌های محلی استفاده می‌شود. در شکل 2-3 یک شبکه اترنت نوعی با همبندی ستاره به همراه SPOFها نشان داده شده است. چنانکه در این مشاهده می‌شود کابل‌ها، مسیریاب‌ها، هاب‌ها و کارت‌های شبکه همگی می‌توانند SPOF باشند. علاوه بر این نرم‌افزارهای شبکه مانند کنترل کنندۀ DNS 47 می‌توانند باعث وقوع اشکال شوند و از این رو در زمرۀ SPOFها محسوب می‌شوند.
شکل ‏23 SPOFها در یک شبکه اترنت نوعی
چنانکه ذکر شد واحدهای کلاستر نیز برای برقراری ارتباط با یکدیگر از شبکه‌ها بهره می‌جویند. پیام‌هایی که واحدهای شبکۀ HA با هم مبادله می‌کنند دو گونه هستند. دسته‌ای از این پیام‌ها کار رد و بدل داده‌ها و برنامه‌ها را انجام می‌دهند و دستۀ دیگری از آنها پیام‌هایی است که به منظور اطلاع از سلامت و صحت واحدهای شبکه مبادله می‌شوند و به پیام‌های ضربان قلب48 موسوم هستند. گاهی اوقات در برخی سیستم‌ها از دو شبکۀ مجزا برای این دو دسته از پیام‌ استفاده می‌شود. SPOFها در شبکه‌هایی که به منظور ارتباط بین واحدها در نظر گرفته شده‌اند، شامل کابل‌ها و کارت‌های شبکه می‌باشند. البته لازم به ذکر است که در بعضی از سیستم‌ها ارتباط بین واحدها نیز از طریق همان شبکه‌ای که برای دسترسی سرویس‌گیرنده‌ها به کلاستر در نظر گرفته شده است انجام می‌شود. برای حذف SPOFهای شبکه دو راه حل وجود دارد:
افزونگی کامل در شبکه

دسته بندی : پایان نامه ارشد

پاسخ دهید