ارائه الگوریتم زمانبندی مهاجرت ماشین های مجازی جهت بهینه سازی همزمان مصرف انرژی و تولید آلاینده ها در شبکه محاسباتی ابر
استفاده از زیر ساخت های واقعی برای محک زنی کارآیی برنامه ها و الگوریتم ها در شرایط متغیر (قابلیت دسترسی، الگوهای بار کاری)، اغلب با مقاومت و استحکام زیرساخت ها محدود شده است. از اینرو باعث می شود که تولید دوباره نتایج بر روی یک آزمایش کار بسیار مشکلی باشد و برای تست چند باره نیز بسیار خسته کننده و مشکل شود. با وجود چنین محدودیت هایی برای محیط های محاسبات ابری، باعث می شود که فراهم کنندگان سرویس ها نتوانند محیط را به درستی کنترل نمایند. بنابراین امکان انجام آزمایش محک زنی در محیط های قابل تکرار و انعطاف پذیر در جهان واقعی محاسبات ابری امکان پذیر نیست که یک جایگزین مناسب برای آن استفاده از ابزارهای شبیه سازی می باشد. این ابزارها امکان بالایی از ارزیابی فرض ها در یک محیط کنترل شده که نتایج به آسانی می توانند دوباره تولید شوند، را فراهم می سازند. روش های مبتنی بر شبیه سازی مزایای مهمی برای کمپانی های IT خواهند داشت (و یا هر کسی که می خواهد تا اپلیکیشن هایش را بر اساس محاسبات ابری ارئه دهد) که به آن ها اجازه می دهد تا ۱- سرویس هایشان را در یک محیط قابل تکرار و کنترل شده تست کنند ۲- پیدا کردن گلوگاه های سیستم قبل از استقرار در ابرهای واقعی ۳-آزمایش بار کاری متفاوت و سناریو های کارآیی منابع روی زیر ساخت های شبیه سازی شده برای استقرار و تست تکنیک های تامین برنامه تطبیقی
برای دانلود متن کامل پایان نامه به سایت zusa.ir مراجعه نمایید. |
هدف از این شبیه سازی تعیین عملکرد الگوریتم زمانبندی پیشنهادی در حوزه انرژی است.
۴-۲ ویژگی های شبیه سازی تخصیص و مهاجرت ماشین های مجازی
تعریف مشکل: هدف معرفی شبیه سازی برای اهداف آکادمیک وصنعتی میباشد.تاسیاست های جدید رابرای بهره وری بهتر از زیر ساخت های ابر، تست کنیم. با شبیه سازی, کارآیی و بهره وری منابع برای سیاست های تخصیص منابع و زمان بندی منابع اندازه گیری می شود. و توسعه دهندگان قادربه تست کارآیی کلی سیستم ها برای مهاجرت وقرارگیری سیاست ها میباشد. شبیه ساز به تحلیل و مدل کامپوننت های متفاوتی ازمحاسبات ابری کمک میکند. با بهره گرفتن از این شبیه ساز، ارائه دهندگان سرویس های ابر میتوانند کارآیی اجرای اپلیکیشن ها ازطرف مشتریان رااندازه گیری نمایند.دراینجا لیستی از ویژگی های ایده ال از شبیه سازی محاسبات ابری راخواهیم دید.
الف: ماشین فیزیکی:
این ویژگی توانایی شبیه سازی ماشین های فیزیکی با خصوصیات سخت افزاری متفاوت است که این مرحله ی بالایی از انتزاع ازماشین فیزیکی میباشد. انتزاع یعنی اینکه ماشین فیزیکی مجموعه ای ازمنابع است که این منابع ازطریق چندین ماشین مجازی به اشتراک گذاشته می شوند که خود از طریق تکنیک های مجازی سازی صورت می گیرد. واسط[۶۶] اجازه ایجاد،شروع،توقف و تخریب ماشین های مجازی درون یک ماشین فیزیکی راخواهدداد.همچنین واسط انواع متفاوتی ازبرنامه های کاربردی[۶۷] رابرای پیکر بندی وتخصیص ویژگی ها در میان ماشین های مجازی متفاوت، فراهم خواهد کرد.
ب:ماشین مجازی:
توانایی شبیه سازی ماشین مجازی با نیازمندی های منابع مشخص وتکنولوژی های مجازی سازی راخواهیم داشت که این انتزاع سطح بالایی ازماشین مجازی است.انتزاع ماشین مجازی اجرا شده روی میزبان های(host) ماشین فیزیکی که از اشتراک منابع لایه های زیرین برای کامل کردن یک اپلیکیشن استفاده میکنند. و واسط به ما اجازه تایید وپس گرفتن اپلیکیشن ها دریک ماشین مجازی رامی دهد.
ج) تکنولوژی مجازی سازی متفاوت:
برای نیازمندی ها وخصوصیات هر تکنولوژی مجازی سازی می تواند مورد استفاده قرار گیرد.کاربران باید قادر به ذکر اینکه کدام تکنیک مجازی سازی مورد استفاده قرار خواهد گرفت، باشند و بسته به تکنولوژی، ویژگی های متفاوت فراهم شده توسط آن تکنولوژی ایجادخواهد شد مثل تکنولوژی xen.
یکی از مزایای مهم و اصلی مجازی سازی توانایی مهاجرت به سمت ماشین های مجازی می باشد.فرایند مهاجرت، استفاده از منابع ماشین های منبع و مقصد راتحت تاثیر قرار خواهد داد.درهر دو ماشین استفاده از cpu وپهنای باند به طور چشمگیری افزایش پیدا می کند.
د) کاربردها[۶۸]:
توانایی شبیه سازی کاربردها ها با پیکربندی متفاوت کاربرد ها روی ماشین مشخص(تمام نیازمندی ها)و در یک زمان مشخص. دید ما ازیک کاربرد یک مجموعه ای از منابع مورد استفاده است که می توانند مستقل و وابسته به مفاهیم خارجی باشند اما به منابع سخت افزاری وابسته هستند و آن می تواند دیر یا زود اجرا شود. زمان نمایش ویژگی های یک کاربرد باید انتخاب های زیادی برای کاربر وجودداشته که چگونه منابع مورد نیاز می توانند نمایش داده شوند.
ه)تخصیص منابع:
سیاست های تخصیصی منابع درباره مقدار منابع اختصاص یافته به یک ماشین مجازی خاص یا مجموعه ای از آنها تصمیم می گیرند.که این سیاست ها می توانندهمچنین تخصیص منابع به صورت پویا را بروز[۶۹] کنند.برای پیاده سازی اولویت بندی ما می توانیم منابع بیشتری رابرای یک ماشین مجازی خاص به نسبت ماشین مجازی های دیگر فراهم کنیم .ومنابع می توانند دخالت کنند ویا بایکدیگربه اشتراک گذاشته شوند .منابع حوزه ذخیره سازی میتوانندازتکنولوژیهای متفاوتی استفاده کنند،شبیه ذخیره سازی مستقیم ویا شبکه ای. تکنولوژی های متفاوت, تاخیرمتفاوت، وسربارcpu متفاوتی رادارند.وکارایی تکنولوژی ذخیره سازی می توانند تاثیرمهمی دربهره وری سیستم داشته باشند.
و) سیستم های ذخیره سازی
سیستم های ذخیره سازی یکی از مهم ترین بخش های مراکز داده می باشد. که می تواند به ۱- ناحیه ذخیره سازی شبکه(SAN) 2- ناحیه مستقیم ذخیره سازی تقسیم شود. بیشتر حالت های ناحیه ذخیره سازی شبکه ای در مراکز داده مورد استفاده قرار می گیرند. سیستم های ذخیره سازی در بر گیرنده تصویر image)) ماشین مجازی می باشد که نمایش فوری ماشین مجازی می باشد. استفاده SAN منجر به ایجاد چالش هایی برای قرارگیری ماشین های مجازی می شود اما در عوض انعطاف پذیری را فرآهم می سازد.
ز) سیاست های قرارگیری
سیاست های قرارگیری هم به ماشین مجازی وهم به سایت های قرارگیری اپلیکیشن هاارجاع داده می شود.سیاست های قرارگیری ماشین های مجازی درباره مقصد میزبان های فیزیکی می باشد که براساس تعدادی ازمقادیر پارامترها تصمیم گیری می کنند وسیاست های قرارگیری اپلیکیشن ها به منابع موجود وتعداد اپلیکیشن های درحال اجرا بر روی ماشین مجازی وابسته هستند.
سیاست های قرارگیری می تواند دسته بندی شودبا:
۱)سیاست های قرارگیری ابتدایی(ثابت) ۲)سیاستهای قرارگیری پویا
سیاستهای قرارگیری ابتدایی درزمان شروع یک اپلیکیشن یا قرارگیری ماشین مجازی اجرا می شونددرعوض سیاست های قرارگیری پویا درضمن زمان اجرا، که وابسته به پارامترهایی متفاوتی، شبیه مقدار موجود منابع متفاوت باتخلف SLA(موافقت مراحل سرویس) صورت می پذیرد.
ح)سیاست های مهاجرت
سیاست های مهاجرت برای این که کدام وکجا یک ماشین مجازی مهاجرت کند تصمیم گیری می کنند.این سیاستها شرایط محدودکننده ای که باعث مهاجرت یک ماشین مجازی میشود رامشخص میکنند.
ماشین مقصد نیز که قراراست دستکاری شده باشد باید تعدادی شرط را ارضاکند.برای مثال یک ماشین مجازی بایدمهاجرت داده شودزمانی که بار تولیدشده به وسیله اپلیکیشن درحال اجرا بالاتر از۹۰ درصد از ظرفیت ماشین مجازی است.
ط)تکنیکهای مجازی سازی
تکنیکهای مجازی سازی متفاوت روش های تخصیص منابع متفاوتی راپیاده سازی می کنند.
ی)مدل قیمت
درحالت های عملی، ارائه دهندگان سرویس ابر ماشین های فیزیکی را اجاره می دهند یا اپلیکیشن های کاربران را اجرا می کنند. که مبتنی برتعدادی مدل قیمت گذاری می باشد مدل قیمت می تواند مبتنی برخصوصیات سخت افزاری مشخص ویا منابع مورداستفاده باشد.شبیه به نوع اجاره، مدل های قیمت گذاری مختلف وقدرت استفاده ازمدل می تواند پیاده سازی شود.مدل قیمت به ما کمک میکندتا مقادیری را که می توان صرفه جویی کرد را با استفاده ازسرویس های محاسبات ابری محاسبه کنیم.[۷۷]
.
۴-۳ نرم افزار متلب[۷۰]
متلب (MATLAB) نام یکی از نرم افزارهای رایانه ای برای انجام محاسبات ریاضی است. واژه متلب هم به معنی محیط محاسبات رقمی و هم به معنی خود زبان برنامه نویسی مربوطه است که از ترکیب دو واژه MATrix و LABoratory ایجاد شده است. این نام حاکی از رویکرد ماتریس محور برنامه است، که در آن حتی اعداد منفرد هم به عنوان ماتریس در نظر گرفته می شوند.
متلب که از محصولات شرکت مت ورکس [۷۱] است، برای گروه های مختلف مهندسان رشته های مختلف از جمله مهندسی برق، مکانیک، رایانه و… کاربرد بسیاری دارد. هسته متلب برای سرعت و کارایی بالا به زبان سی نوشته شده است ولی رابط گرافیکی آن به زبان جاوا پیاده سازی گشته است.
برنامه های متلب اکثراً متن باز هستند و در واقع متلب (مانند بیسیک[۷۲]) مفسر است نه کامپایلر. قدرت متلب از انعطاف پذیری آن و راحت بودن کار با آن ناشی می شود، همچنین شرکت سازنده و گروه های مختلف، از جمله دانشگاه های سرتاسر جهان و برخی شرکت های مهندسی هر ساله جعبه ابزارهای خاص-کاربردی به آن می افزایند که باعث افزایش کارآیی و محبوبیت آن شده است.
فهرستی از این جعبه ابزارها در زیر آمده است:
- جعبه ابزار مخابرات متلب، توابع و ابزارهای محاسبات مهندسی مخابرات
- جعبه ابزار کنترل متلب، توابع و ابزارهای محاسبات مهندسی کنترل
- جعبه ابزار فازی متلب، توابع و ابزارهای محاسبات فازی
- جعبه ابزار محاسبات متلب، توابع و ابزارهای محاسبات عددی
- جعبه ابزار سیمولینک متلب، جعبه ابزاری برای شبیه سازی سیستم ها به صورت مجرد
- جعبه ابزار تخمین متلب، توابع و ابزارهای محاسبات بحث تخمین سیستم در مهندسی کنترل
- جعبه ابزار آمار متلب، توابع و ابزارهای محاسبات آمار
- جعبه ابزار جمع آوری داده متلب، توابع و ابزارهای جمع آوری داده
- جعبه ابزار شبکه عصبی متلب، توابع و ابزارهای محاسبات شبکه عصبی
- جعبه ابزار پردازش تصویر متلب، توابع و ابزارهای محاسبات پردازش تصویر
- جعبه ابزار پردازش صوت متلب، توابع و ابزارهای محاسبات پردازش صوت
- جعبه ابزار احتمالات متلب
- جعبه ابزار کارگاه بلادرنگ متلب، توابع و ابزارهای محاسبات سیستم های بلادرنگ
۴-۴ نتایج شبیه سازی
ما از روش های مختلف بررسی بار کاری و انتخاب ماشین مجازی مهاجر جهت ادغام در الگوریتم زمانبندی پیشنهادی استفاده کردیم. همچنین از متد تک نقطه ای و دو نقطه ای وپراکنده و … جهت مرحله ترکیب زمانبند و از روش های بیتی و …. جهت مرحله جهش زمانبند استفاده کردیم.
در نهایت بهترین نتایج بدست آمده پس از تغییرات مکرر در متغیرها با توجه به تغییر عملگر ترکیب و تعداد تکرار بدست آمد. چند نمودار که پاسخشان نسبت به نمودار و تغییر متغیرهای دیگربهینه تر بود را در زیر آوردیم :
در تکرار ۱۰۰ و با عملگر ترکیب تک نقطه ای و جهش بیتی و عملگر انتخاب ارائه شده و با جمعیت ۱۰۰در هر تکرار نتیجه زیر بدست آمد.
نمودار ۴-۱ – زمانبند ارائه شده با تعداد تکرار۱۰۰ و عملگر ترکیب تک نقطه ای.
همانطور که می بینیم مصرف انرژی با این شیوه به مقدار حدودی ۹۰ کیلو وات ساعت رسیده است.
سپس عملگر ترکیب را پراکنده یا Scatter انتخاب کردیم که با عدد احتمالی که تولید می کند تعداد نقاط را تعیین می کند و سپس ترکیب صورت می گیرد.در واقع می توان آن را ترکیب بینهایت نقطه ای نامید.
. با تغییر تکرار به هزار و عملگر ترکیب پراکنده, نتیجه بهبود داشت و کمینه مصرف انرژی برابر ۸۴٫۴۰ کیلووات ساعت شد.
نمودار ۴-۲ – زمانبند ارائه شده با تعداد تکرار۱۰۰۰ و عملگر ترکیب پراکنده
در مقایسه با روش های ارائه شده دیگر, روش پیشنهادی بهبود مصرف انرژی را نشان می دهد.
جدول زیر این مقایسه را نشان می دهد.
Energy kwh | Policy |
۲۴۱۹٫۲ | NPA |
۶۱۳٫۶ | DVFS |
۹۵٫۳۶ | THR-MMT-1.0 |
۸۹٫۹۲ | THR-MMT-0.8 |
۹۰٫۱۳ | IQR-MMT-1.5 |
۸۷٫۶۷ | MAD-MMT-2.5 |
۸۷٫۹۳ | LRR-MMT-1.2 |
۸۸٫۱۷ | LR-MMT-1.2 |
۸۴٫۴۰ | Suggested Algorithm |
جدول ۴-۱ مقایسه الگوریتم های مختلف برپایه مصرف انرژی سرورها (Kwh)
نمودار ۴-۱ مقایسه الگوریتم های مختلف برپایه مصرف انرژی سرورها (Kwh)
الگوریتم NPA در واقع الگوریتمی است که سعی در بهینه سازی مصرف انرژی مراکز داده نمی کند و فاکتورهای دیگر از جمله کیفیت کار را مد نظر قرار می دهد.
ما در نمودار بالا این الگوریتم را بدین جهت جای دادیم که مقایسه ای کلی بین مصرف انرژی طبق الگوریتم های انرژی گرا و دیگر الگوریتم ها را داشته باشیم.
در نمودار زیر فقط الگوریتم های انرژی گرا را مقایسه می کنیم.تا جزئی تر این بهینه سازی ها را مشاهده کنیم.
نمودار ۴-۴ مقایسه الگوریتم های انرژی آگاه برپایه مصرف انرژی سرورها (Kwh)
همانطور که مشاهده می شود الگوریتم ارائه شده به مینیمم مقدار ۸۴٫۴۰ رسیده است که در بین الگوریتم های پیشین رقم بسیار خوبی است.همانطور که دیده می شود این الگوریتم حتی نسبت به الگوریتم ارائه شده توسط جناب آقای Buyya و همکاران که در سال ۲۰۱۱ ارائه شد(LR-MMT) مصرف انرژی را کاهش داده است . الگوریتم LR-MMT براساس بررسی نقطه بحرانی با الگوریتم LR و تخصیص منابع اضافی با الگوریتم MMT کار می کرد.
و براساس مقایسه نمودار مستطیلی که در زیر آمده است به خوبی واضح است که الگوریتم ارائه شده برپایه الگوریتم ژنتیک نسبت به روش های ارائه شده قبلی باعث بهبود مصرف انرژی مراکز داده ابر می شود.در نتیجه برق کمتری مصرف شده و کربن تولیدی کاهش می یابد در نتیجه تولید آلاینده های زیستی که در سال های اخیر در جهان بسیار چالش برانگیز شده است کاهش می یابد.
۴-۴ نتیجه گیری
همانطور که در بخش نتایج ملاحظه کردید ما کارایی روش خودمان را با انجام دادن آزمایش های مختلفی سنجیده ایم و برای اینکه این کارایی بهتر مشخص شود این نتایج را با نتایج بدست آمده از روش های مختلف نیز مقایسه کردیم. نتایج مقایسه نشان دادند که روش پیشنهادی ما مصرف انرژی مراکز داده ابر را کاهش می دهد و در نتیجه باعث کاهش تولید آلاینده های زیستی خواهد شد. و این در حالیست که کیفیت خدمات کاربر را تضمین می کند و با روش مهاجرت زنده که در این الگوریتم استفاده کردیم بدون هیچ اختلالی حتی در حین مهاجرت, برنامه های کاربران اجرا می شود.
در فصل بعد ما خلاصه ای از آنچه را که در این پایان نامه بحث شد را خواهیم آورد و همچنین برخی از کارهایی را که
نسخه قابل چاپ | ورود نوشته شده توسط نجفی زهرا در 1399/12/22 ساعت 12:53:00 ق.ظ . دنبال کردن نظرات این نوشته از طریق RSS 2.0. |