2-2-5      معماری کلاسترهای با قابلیت دسترسی بالا……………………….. 26

2-2-6      اتصالات و شبکه کلاستر………………………. 28

2-2-7      مدیریت و نظارت بر کلاستر………………………. 28

2-2-8      تصویر یکپارچه سیستم (SSI)………………………

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      معرفی شبیه‌ساز CloudSim…………………………

6-1-1      اجزای ابر………………………. 109

6-1-2      اجزای اصلی هسته………………………. 111

6-1-3       سرویس‌های موجود و الگوریتم‌های آن‌ها……………………… 114

6-1-4      روند کار شبیه ساز………………………. 115

6-2      نحوه پیادهسازی سیستم تحمل‌پذیر اشکال در شبیه ساز………… 116

6-2-1      FaultInjector……………………….

6-2-2       FaultPredictor……………………….

6-2-3      FTHost……………………….

6-2-4       FTDatacenter……………………….

6-2-5       FTDatacenterBroker……………………….

6-3      نتایج آزمایشات……………………….. 124

6-3-1      بررسی اثر سربار نقطه مقابله‌گیری………………………… 126

6-3-2      بررسی عمل‌های انتخابی………………………… 127

6-3-3      خرابی‌های متوقف سازنده و غیر متوقف سازنده………………………. 129

7     نتیجه گیری و پیشنهادات………………………… 132

منابع ………………………  133

یک مطلب دیگر :

 
 

چکیده:

با افزایش بازار استفاده از تکنولوژی محاسبات ابری، مراکز داده عظیمی به وجود آمده­اند تا محاسبات را سریع­تر انجام دهند. یکی از دغدغه­ های اصلی در محاسبات ابری، مواجه­شدن با اشکال­ها در حین اجرا ­کردن یک برنامه موازی زمان­بر است. برای غلبه بر این قبیل مشکلات، عموما از روش­های آزمون نقطه ­مقابله ­گیری یا آرشیوکردن[2 استفاده می­شود. اما این روش­ها غالبا سربار بالایی دارند و به صورت واکنشی عمل می­کنند.

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

فصل اول: مقدمه

1- مقدمه

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

محاسبات ابری که در اواخر سال 2007 پا به عرضه ظهور گذاشت هم­اکنون به دلیل توانایی‌اش در ارائه زیر ساخت فناوری پویا و بسیار منعطف، محیط‌های محاسباتی تصمین شده از نظر کیفیت و همچنین سرویس‌های نرم‌افزاری قابل پیکر­بندی به موضوع داغ بدل شده است . در گزارش رویکردی گوگل همانطور که در شکل ‏1‑1 مشاهده می‌نمایید، محاسبات ابری، محاسبات توری را پشت سر گذاشته است [1]. محاسبات ابری از رویکرد مجازی­سازی بهره­گیری می­نماید که این امر سبب انعطاف­پذیری بیشتر سیستم ابر می­شود. در حقیقت با استفاده از این تکنولوژی، برنامه­ها می­توانند سرویس‌های مختلف را به صورت مجزا و انتزاعی از گره‌های سرویس‌دهنده دریافت نمایند.

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

محاسبات ابری از خصوصیات منحصر به فردی بهره می‌برد که این سبک محاسباتی را از سایر سبک‌ها متمایز می‌کند. البته برخی از این خصوصیات کما بیش در سبک‌های پیشین نیز وجود داشته­اند. بعضی از این خصوصیات عبارتند از:

– ارائه سرویس مبتنی بر تقاضا: در اینجا لازم نیست تا برای آن چه استفاده نمی‌کنید هزینه پرداخت کنید. این بدان معناست که مشتریان تنها بر اساس مقدار و کیفیت سرویسی که مصرف می‌نمایند، هزینه استفاده پرداخت می‌نمایند. در حقیقت رویکرد این تکنولوژی همانند سرویس‌های عمومی قابل استفاده دیگر امروزی است. برای مثال همان­طور که برای تولید برق نیاز نیست که هر خانوار دارای ژنراتور و سایر وسایل تولید الکتریسیته باشد، دریافت سرویسی مانند محاسبات یا محل ذخیره داده نیز دیگر نیازی به خصوصی بودن ندارد و می‌توان آن را از فراهم آوردنگان ابر[1] اجاره کرد.

– دسترسی شبکه گسترده (اینترنت): این سیستم برای تحویل و ارئه سرویس‌ها از بستر موجود برای اینترنت استفاده می‌نماید. بنابراین مشتریان سرویس‌ها به هیچگونه نرم‌افزار یا سخت‌افزار خاصی نیاز ندارند و با همان مرورگری که هر روزه به گشت و گذار در وب می‌پردازند می‌توانند از سرویس‌های ابر بهره ببرند.

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

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

– هزینه پایین: به صورت سنتی برای اجرای برنامه‌های سنگین محاسباتی یا داده ای عظیم نیاز به یک سیستم با توان بالای محاسباتی و داده­ای احساس می‌شده است. این سیستم هزینه سنگینی را برای شرکت و یا افراد سرویس­گیرنده فراهم می‌آورده است. حال با استفاده از سرویس‌های موجود بر روی ابر، کاربران می‌توانند بر روی پروژه خود تمرکز بیشتری داشته باشد و هزینه گزافی را بابت تهیه زیرساخت‌ها نپردازد.

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

در سیستم­های محاسبات توزیعی به دلیل کم کردن هزینه و توان مصرفی، از اجزاء تجاری عام­منظوره موجود در بازار استفاده می­شود[3]. این اجزا به مرور زمان مستهلک شده و دچار خرابی می‌شوند تا جایی‌که برای همیشه غیرقابل­استفاده می­گردند. همچنین با توجه به آمار ذکر شده، تعداد پردازنده­ها به منظور بهبود کارآیی سیستم محاسباتی توزیعی رو به افزایش است. با این حال احتمال وقوع خرابی[2] در کل سیستم توزیعی با یک رابطه نمایی بالا می­رود. برای مثال سیستم کلاستری که برای یکی از قسمت‌های سایت گوگل استفاده می­شود، بیش از 15000 پردازنده دارد که بر اساس آمار ذکر شده در [4]، نرخ خرابی هر گره محاسباتی تقریبا 2-3% در سال است. این سیستم به طور میانگین 20 بار در هر روز به علت خرابی ناگزیر به راه‌اندازی مجدد[3] است. بزرگ­ترین مرکز داده جهان بیش از 51470000 هسته پردازشی دارد و در کم‌تر از هر 10 دقیقه با یک اشکال در سیستم مواجه می‌شود. درجدول 1-1 چند نمونه از تعداد اشکال‌های گزارش شده در مراکز داده آمده است.

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

موضوعات: بدون موضوع  لینک ثابت


فرم در حال بارگذاری ...