ماشین مجازی

استاد راهنما:

دکتر غلامحسین دستغیبی فرد

برای رعایت حریم خصوصی نام نگارنده پایان نامه درج نمی گردد

(در فایل دانلودی نام نویسنده موجود می باشد)

تکه هایی از متن پایان نامه به عنوان نمونه :

(ممکن می باشد هنگام انتقال از فایل اصلی به داخل سایت بعضی متون به هم بریزد یا بعضی نمادها و اشکال درج نشود اما در فایل دانلودی همه چیز مرتب و کامل می باشد)

چکیده

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

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

   فهرست مطالب

عنوان                                                                                                    صفحه

 فصل اول: مقدمه…………………………………………………………………………………………. 1

1-1 مصرف انرژی در رایانه……………………………………………………………………………………. 2

 1-2 مراکز داده و مصرف انرژی در آنها……………………………………………………………………………….. 3

1-3 مجازی سازی………………………………………………………………………………………………. 5

1-4 ساختار پایان نامه…………………………………………………………………………………………………. 7

فصل دوم: پیشینه پژوهش……………………………………………………………………………. 8

2-1 صرفه جویی در انرژی مصرفی رایانه……………………………………………………………………………… 9

2-1-1 صرفه جویی در انرژی پویا……………………………………………………………………………………. 9

2-1-2 صرفه جویی در انرژی ایستا………………………………………………………………………………. 10

2-2 صرفه جویی در انرژی مصرفی مراکز داده………………………………………………………………….. 13

2-3 صرفه جویی در انرژی با بهره گیری از ترکیب ماشین مجازی………………………………………. 15

فصل سوم: مدل پیشنهادی………………………………………………………………………… 19

3-1 تعاریف……………………………………………………………………………………………….. 20

3-1-1 حالت خواب………………………………………………………………………………………………………… 20

3-1-2 انتخاب و استقرار………………………………………………………………………………………………… 21

3-1-3 حدود دسته بندی………………………………………………………………………………………………. 22

3-2 طراحی و بخش‌های مدل پیشنهادی………………………………………………………………………….. 22

3-3 عملکرد مدل پیشنهادی در یک مرکز داده………………………………………………………………… 26

3-4 بخش جانبی مدل پیشنهادی………………………………………………………………………………………. 27

3-4-1 واحد جمع آوری اطلاعات…………………………………………………………………………………. 28

3-4-2 واحد ارسال اطلاعات………………………………………………………………………………………….. 30

3-4-3 واحد دریافت و اجرای دستورات……………………………………………………………………….. 30

3-5 بخش مرکزی مدل پیشنهادی…………………………………………………………………………………….. 34

3-5-1 واحد دریافت اطلاعات………………………………………………………………………………………… 34

3-5-2 واحد ذخیره اطلاعات…………………………………………………………………………………………. 35

3-5-3 واحد طبقه بندی سرورها…………………………………………………………………………………… 35

3-5-4 واحد اتخاذ تصمیم……………………………………………………………………………………………… 37

3-5-5 واحد ارسال دستورات………………………………………………………………………………………… 40

3-6 سربارهای مدل پیشنهادی……………………………………………………………………………………………. 40

فصل چهارم: پیاده سازی……………………………………………………………………………. 42

4-1 پارامترهای آزاد در نرم افزار حاصل……………………………………………………………………………. 43

4-2 مختصات پیاده سازی…………………………………………………………………………………………………… 45

4-2-1 بازه‌ی داده برداری و ارسال اطلاعات…………………………………………………………………. 45

4-2-2 انتخاب و استقرار………………………………………………………………………………………………… 45

4-2-3 حدود دسته بندی و حاشیه………………………………………………………………………………. 47

4-3 پیکر بندی سفارشی نرم افزار……………………………………………………………………………………… 47

4-4 محیط انجام آزمایش……………………………………………………………………………………………………. 49

4-5 اندازه گیری اولیه…………………………………………………………………………………………………………. 51

4-6 بارکاری بهره گیری شده برای آزمایش‌ها…………………………………………………………………………. 52

4-6-1 بارکاری آزمایشی…………………………………………………………………………………………………. 53

4-6-2 بارکاری واقعی……………………………………………………………………………………………………… 55

فصل پنجم: نتایج و پیشنهادها…………………………………………………………………… 57

5-1 نتایج………………………………………………………………………………………………………… 58

5-1-1 نتایج بارکاری آزمایشی……………………………………………………………………………………….. 58

5-1-2 نتایج بارکاری واقعی……………………………………………………………………………………………. 61

5-2 جمع بندی نتایج………………………………………………………………………………………………………….. 64

5-3 اختصار و نتیجه گیری…………………………………………………………………………………………………. 65

5-4 پیشنهادها………………………………………………………………………………………………………………………. 66

فهرست منابع………………………………………………………………………………………….. 68

1-         مقدمه

 در این فصل آغاز به تبیین مصرف برق در رایانه پرداخته می گردد. سپس مصرف انرژی در مراکز داده و در نهایت مجازی سازی تبیین داده می شوند. جستجو در سایت :   

1-1-      مصرف انرژی در رایانه

مصرف برق در رایانه را می‌توان به دو بخش تقسیم نمود:

ایستا: بخشی از انرژی مصرفی رایانه می باشد که تنها صرف روشن بودن سیستم می گردد و به اندازه کاری که سیستم انجام می‌دهد ارتباطی ندارد. این سطح از مصرف انرژی سبب روشن و آماده به کار نگاه داشتن سیستم شده و از لحظه‌ای که سیستم روشن می گردد مصرف می گردد. بخش زیادی از این انرژی در واقع اتلاف به طرق مختلف و در سطوح مختلف سخت افزار می باشد؛ مانند نشت جریان در مدارات مجتمع[1].

پویا: بخشی از انرژی مصرفی رایانه می باشد که صرف انجام فعالیت‌های سیستم می گردد و با در نظر داشتن اندازه بار[2] روی بخشهای مختلف یک سیستم (مانند: پردازنده، حافظه[3]، دیسک سخت[4]، کارت گرافیکی[5] و …) متغیر می باشد.

شاید تصور گردد که مصرف حالت بیکار یک رایانه کم یا قابل چشم پوشی می باشد زیرا این سهمی از انرژی می باشد که در زمانی که رایانه کار مفیدی انجام نمی‌دهد مصرف می کند، اما بر خلاف تصور، یک سرور هنگام بیکاری حدود60 تا 70 درصد از بیشینه‌ی توان[6] مصرفی خود را مصرف می کند   [Barroso, 2007] و [Fan, 2007] و [Lefurgy, 2007]. بیشینه توان مصرفی یک رایانه هنگامی می باشد که با حداکثر توان پردازشی[7] خود کار می کند.

1-2-      مراکز داده و مصرف انرژی در آنها

یک مرکز داده ساختمانی می باشد، شامل تعداد زیادی رایانه (سرور) و قطعات مورد نیاز آنها مانند سوئیچ‌های شبکه و منابع انرژی پشتیبان [Kumar, 2009].

مصرف انرژی یک مرکز داده حاصل مجموع مصرف انرژی سرورهای موجود در آن به علاوه‌ی مصرف انرژی امکانات دیگر مانند سرورهای ذخیره سازی[8] ، سیستم‌های خنک کننده، تجهیزات شبکه و … می باشد.

نکته‌ی قابل توجه در این مورد، سهم تقریباً 50 درصدی سرورها در مصرف انرژی مرکز داده می باشد. به اظهار دیگر تنها نیمی از انرژی مصرفی یک مرکز داده صرف پردازش و پاسخ به درخواست‌ها می گردد و مابقی صرف موردها دیگر که مهمترین آن سیستم‌های خنک کننده هستند می گردد. شکل 1-1 که نمایش تفکیک انرژی مصرفی یک مرکز داده می باشد، به خوبی گویای این مسئله می باشد:

شکل 1-1 نمودار تفکیکی انرژی مصرفی مرکز داده [Iyengar, 2010]

در مورد اندازه مصرف انرژی در مراکز داده آمارها نشان می‌دهند علاوه بر چشمگیر بودن این مقدار، طریقه رو به رشدی از لحاظ مقدار و سهم از مصرف کل انرژی جامعه دارد [Koomey, 2011]. شکل‌ 1-2 نمایانگر این موضوع می باشد.

شکل 1-2 نمودار اندازه(محور عمودی) و سهم (درصدهای بالای ستون‌ها) مصرف انرژی مراکز داده در سطح جهان (سمت راست) و ایالات متحده (سمت چپ) در سالهای 2000، 2005 و 2010 میلادی [Koomey, 2011].

 بر اساس تحقیقات انجام شده [Barroso, 2007]  ، [Boher, 2002] ، [Rangan, 2008] و [Siegele, 2008]، متوسط بکارگیری[9] سرورها در یک مرکز داده کمتر از 30 درصد می باشد و یک سرور تنها در 10 درصد اوقات بکارگیری نزدیک به بیشینه‌ دارد [Armbrust, 2010].

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

1-3-      مجازی سازی

مجازی سازی آغاز در سالهای 1970 میلادی برای بهره گیری‌ی همزمان چندین کاربر از یک سیستم ارائه گردید [Bugnion, 1997]. طی سالهای گذشته کارهای زیادی در زمینه‌ی فن‌آوری مجازی سازی انجام شده می باشد و به مرور توانایی‌هایی بر آن افزوده شده که شاید در ابتدای ارائه‌ی ایده، جزء اهداف اصلی نبوده‌اند[Bugnion, 1997] و [Barham, 2003] و  [Clark, 2005] و [Walters, 1999].

امروزه مجازی سازی به انضمام ابزارهایی که به آن افزوده شده می باشد ویژگی‌هایی مانند افزایش امنیت کاربران به خصوص درفضاهای غیر همکار، افزایش بهره‌وری سرورها، ایجاد بستر مناسب برای اجزای نرم افزارهای مختلف تحت سیستم عامل‌های متفاوت و به صورت همزمان، ساده‌ سازی سرویس و نگه‌داری سیستم‌ها در مراکز داده، ایجاد امکان توازن بار[10] بین سرورهای مختلف و … را عرضه می کند که سبب شده می باشد بیشتر صنعت به خصوص مراکز داده به سمت بهره گیری از این فن‌آوری سوق پیدا کنند آنگونه که امروزه تقریباً تمامی مراکز داده در جهان از این فن‌آوری بهره می‌گیرند [Armbrust, 2010]. چنین محیط‌هایی متشکل از مجموعه‌ای از رایانه‌ها که برای ارائه سرویس‌های خود از فن‌آوری مجازی سازی بهره گیری می‌کنند را “ابرواره”[11] می‌نامیم. در واقع ابرواره همان مراکز داده هستند که سرویس‌های خود را روی شبکه و در در قالب بسته‌هایی از سخت افزار که به واسطه‌ی مجازی سازی شکل گرفته‌اند ارائه می‌دهند [Armbrust, 2010] و [Armbrust,2009]. این بسته‌های سخت افزار را به انضمام سیستم عامل درون خود “ماشین مجازی”[12] می‌نامیم.

مهاجرت ماشین مجازی[13] جزء قابلیت‌هایی می باشد که مدتی پس از ظهور مجازی سازی به آن اضافه گردید و به گونه اختصار عبارت می باشد از انتقال ماشین مجازی از روی یک سرور به سرور دیگر. مهاجرت ماشین مجازی می تواند به صورت زنده[14] باشد به شکلی که کاربر نهایی[15] که از ماشین مجازی مهاجرت کننده سرویس می گیرد متوجه هیچگونه اختلالی در دریافت سرویس نشود و به تعبیری اصلاً جابجایی ماشین مجازی سرویس دهنده خود را متوجه نشود [Clark, 2005]. در شکل 1-3 طرحی از مهاجرت ماشین مجازی بین دو سرور فعال نمایش داده شده می باشد.

شکل 1-3 نمایی از مهاجرت ماشین مجازی [Clark, 2005]

 اگر بخواهیم مهاجرت ماشین مجازی به صورت زنده را دقیق‌‌تر مطالعه نماییم، در واقع وقفه‌ای در ارائه سرویس پیش می‌آید که این تاخیر بین 60 تا 300 میلی ثانیه خواهد بود [Clark, 2005]. به هر حال از دید کاربر و پاسخ به درخواست‌ها مهم این می باشد که می توان بدون بروز مشکل یا پرداخت هزینه‌ی زمانی و مصرف انرژی بالا ماشین‌های مجازی را بین سرورهای مختلف جابجا نمود [Liu, 2011].

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

 

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

2-          پیشینه‌ی پژوهش

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

2-1-      صرفه جویی در انرژی مصرفی رایانه

روش‌های صرفه جویی در انرژی مصرفی یک رایانه، با در نظر داشتن اینکه کدام بخش از انرژی مصرفی را هدف صرفه جویی قرار می‌دهند به دو بخش تقسیم می شوند.

2-1-1.  صرفه جویی در انرژی پویا

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

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

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

مانند مهمترین روشهای این دسته می‌توان از “مقیاس سازی پویای ولتاژ و فرکانس[17]” (DVFS) نام برد [Weiser, 1995] و [Semeraro, 2002] . در این روش با بهره گیری از پشتیبانی در نظر گرفته شده در پردازنده‌ی اصلی، فرکانس کار پردازنده با در نظر داشتن حجم بار پردازشی آن در هر لحظه تغییر می کند. این کار باعث می گردد تا در زمانهایی که نیازی به حداکثر توان پردازنده وجود ندارد، فرکانس کاری آن پایین بیاید و از آنجا که این کار با کاهش ولتاژ صورت می‌گیرد، عملاً توان مصرفی پردازنده با نسبت توان سوم فرکانس کم می گردد. امروزه تمامی پردازنده‌های جدید از این قابلیت برخوردارند اما از آنجا که مصرف پردازنده بخش کمی از مصرف کل یک سرور را تشکیل می‌دهد (و این سهم با پیشرفت فناوری رو به کاهش می باشد) [Fan, 2007] علیرغم بهره گیری از این روش هنوز اندازه اتلاف انرژی چشمگیری در سرورها هست.

در سطح نرم افزاری نیز در سیستم عامل‌های جدیدتر پیشبینی‌هایی برای بهره بردن از توانایی‌های سخت افزار و راه ‌های دیگر کاهش مصرف انرژی صورت گرفته می باشد مانند کم کردن نور صفحه یا خاموش کردن نمایشگر[18] و یا قرار دادن کل سیستم در حالتی که سطح توان پردازشی و در نتیجه مصرف انرژی پایین‌تر باشد [Weiser, 1996] در مواقعی که نیازی به حداکثر توان پردازشی سیستم نیست.

2-1-2.   صرفه جویی در انرژی ایستا

روش‌هایی که حذف اتلاف ناشی از توان ایستا را هدف قرار داده‌اند، را می‌توان در دوسطح سخت افزاری و نرم افزاری طبقه بندی نمود.

یک سرور هنگامی که روشن می باشد و صرف نظر از اندازه کاری که انجام می‌دهد، توان ایستای خود را مصرف می کند. روش های نرم افزاری عموماً با قرار دادن سرور بیکار[19] در حالتی که مصرف انرژی کمی دارد (مانند خواب[20]) و یا خاموش کردن آن کوشش در حذف کل این بخش از مصرف انرژی دارند. البته بدیهی می باشد که این روش فقط قابل بهره گیری در مورد سرورهای بیکار می باشد و اگر سروری حتی به اندازه بسیار کمی هم از منابعش بهره گیری نماید، این روش در مورد آن قابل انجام نیست (و یا بایستی با روشی مانند آن چیز که در این پایان نامه ارائه و پیاده سازی شده‌می باشد، آغاز سرور را به حالت بیکار برده و سپس اقدام به خاموش کردن و یا به خواب بردن آن سرور گردد).

روش‌های سخت افزاری با بهره گیری از فناوری جدیدتر و با انجام تغییرات و بهینه سازی در سطح معماری سخت افزار، منطق و یا الگوی مدارات کوشش در کاهش نشتی‌های جریان و سایر اتلاف‌های انرژی موجود در مدارات دارند. در واقع با بهینه‌تر شدن و نیز با بکارگیری انواع روش‌های بسته‌بندی[21] مدارات کوشش در کاهش حجم قطعات دخیل در انجام یک اقدام خاص و همچنین اتلاف کمتر در سطح همین عده از قطعات الکترونیکی می گردد که این عوامل باعث کاهش اتلاف توان ایستا در سرورها خواهند بود.

مزیت روش‌های سخت افزاری به نرم افزاری در این می باشد که این روش‌ها در تمام حالات یک سرور کارایی خود را حفظ می‌کنند.

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

روش‌هایی که کاهش مصرف پویای انرژی را مد نظر قرار داده‌اند، به شرطی می‌توانند در سطح کل سیستم یا چند سیستم صرفه جویی قابل توجهی کنند که قطعه‌ی هدف آنها کسر بزرگی از کل انرژی مصرفی را به خود اختصاص دهد. در این بین پردازنده هم به خاطر اندازه مصرف زیاد و هم به دلیل متغیر بودن زیاد سطح مصرف در عملکردهای گوناگون (آنگونه که در DVFS انجام می گردد) بیشتر مورد توجه قرار گرفته می باشد. اما نشان داده شده می باشد که حتی پردازنده هم، الزاماً در هر سیستم و هر شرایط مصرف کننده‌ی غالب در سیستم نیست؛ سهم فعلی مصرف پردازنده از مصرف کل سیستم حدود 25 درصد می باشد که این سهم رو به کاهش می باشد [Laudon, 2006] ، [Fan, 2007] و [Lefurgy, 2003].

مشاهدات نشان می‌دهد که در سرورهای مختلف اندازه و سهم مصرف قطعات با یکدیگر متفاوت می باشد و هیچ یک از قطعات مصرف کننده‌ی غالب نیست [Meisner, 2009]. شکل 2-1 نشان دهنده‌ی همین وضعیت می باشد؛ این نمودار، تفکیک[22] مصرف انرژی قطعات مختلف سخت افزار متعلق به سرور IBM p670 [Lefurgy, 2003] و Sun UltraSparc T2000 [Laudon, 2006] و یک سرور نوعی مشخص شده توسط شرکت Google [Fan, 2007] می‌باشد. همانطور که در این نمودار نظاره می گردد، سهم مصرف قطعات مختلف سخت افزار در سرورهای مختلف متفاوت می باشد و در عین حال هیچکدام از قطعات مصرف کننده‌ی غالب انرژی نیستند.

تعداد صفحه :89

قیمت : 14700 تومان

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

و در ضمن فایل خریداری شده به ایمیل شما ارسال می گردد.

پشتیبانی سایت :        ****       serderehi@gmail.com

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

***  **** ***