بخشی از مقاله
چکیده
در این مقاله روشی جهت تخصیص منابع به ماشینهای مجازی در سرویس زیرساخت ابری، ارائه گردیده، یکی از مهمترین چالشها در مراکز داده رایانش ابری در لایه زیرساخت، مدیریت منابع است. در این لایه مسئله تلفیق سرویسدهندهها2 و بهینهسازی استقرار ماشینهای مجازی3 بروی ماشینهای فیزیکی بسیار حائز اهمیت است. هدف نهایی در این پژوهش کاهش توان مصرفی در مراکز داده رایانش ابری میباشد. تلاش در جهت صرفهجویی در مصرف انرژی باعث کاهش تعداد سرورهای فیزیکی فعال و کاهش میزان هرزروی منابع در مراکز داده میگردد. در روش پیشنهادی از الگوریتم کرم شبتاب جهت جایدهی ماشینهای مجازی بروی ماشینهای فیزیکی استفادهشده است. نتایج ارزیابی و شبیهسازی نشان میدهد که روش پیشنهادی بهتر از روشهای رایج کنونی در خصوص مسئله جایگذاری ماشینهای مجازی عمل میکند.
-1 مقدمه
یکی از مدلهای خدمات ارائهشده در رایانشی ابر، زیرساخت بهعنوان سرویس5 است که در آن منابع پردازشی بهصورت سرویس عرضه میگردند و پایه اصلی آن رافنّاوری مجازیسازی تشکیل میدهد و این سازوکار منافع زیادی را برای رایانش ابری به ارمغان آورده است. در زیرساخت بهعنوان سرویس درخواست برای منابع مجازی بهصورت پارامترهایی مانند سرعت پردازنده، ظرفیت حافظه و حجم دیسک مطرح میگردد و درخواستهای رسیده با نگاشت منابع مجازی بر منابع فیزیکی تأمین میگردد .[1]
امروزه یکی از مهمترین چالشهای مطرح در زیرساخت بهعنوان سرویس، مدیریت و تخصیص بهینه منابع به ماشینهای مجازی میباشد، با فرض وجود n ماشین مجازی و m ماشین فیزیکی، مسئله جایدهی n ماشین مجازی در بین m ماشین فیزیکی دارای mn حالت متفاوت است که فضای حالت بزرگی است و جستجو در این فضای حالت و یافتن گزینه مناسب بسیار زمانبر است . [2] این مسئله مشابه مسئله بستهبندی جعبهها6است. در نظریه پیچیدگی محاسباتی، این مسئله جزء مسائل بهینهسازی »ان پی سخت«7 است.
تا چندی پیش تنها دغدغه در بحث تخصیص منابع مسئله افزایش کارایی بود ولی اکنون مسئله کاهش مصرف انرژی بسیار اهمیت پیداکرده است و نحوه تخصیص منابع، رابطه مستقیم با میزان مصرف انرژی و سود سرویسدهنده پیداکرده است، یک مرکز داده متوسط،معمولاً بهاندازه 2500 مشترک خانگی، برق مصرف میکند [3] و وجود آنها برای محیطزیست نیز بسیار مضر است. به همین دلیل کاهش مصرف انرژی در مراکز داده یک موضوع چالشبرانگیز و پیچیده است .[4] ازاینرو لزوم تحقیقاتی جهت استفاده مفیدتر از زیرساختهای محاسباتی جهت حصول اطمینان از رشد و توسعه پایدار رایانش ابری در آینده لازم است.
در این تحقیق از الگوریتم کرم شبتاب جهت دستیابی به روشی جهت استقرار بهینه ماشینهای مجازی بر روی ماشینهای فیزیکی موجود در مراکز داده ابری استفادهشده است. الگوریتم کرم شبتاب یک مدل تکاملی است که مبتنی بر الگوریتمهای هوش جمعی و الهام گرفته از طبیعت میباشد. این نوع الگوریتمها ازجمله قویترین روشها برای حل مسائل بهینهسازی هستند. البته نحوه تنظیم پارامترها در کارایی این الگوریتمها بسیار مؤثر است.
کاربرد عمده الگوریتم کرم شبتاب نیز در حل مسائل بهینهسازی است و با توجه به تحقیقات صورت گرفته در برخی موارد بهتر از سایر الگوریتمهای هوش گروهی عمل کرده است.[5] سادگی و همچنین دقت خوب این الگوریتم باعث شده است که در بسیاری از برنامههای کاربردی مورداستفاده قرار گیرد .[6] تعریف اصلی الگوریتم کرم شبتاب برای حل مسائل بهینهسازی پیوسته است و با توجه به تأثیر آن در حل این نوع مسائل به نظر میرسد که در حل مسائل گسسته نیز بهاندازه کافی مؤثر باشد، همچنان که کاربرد این الگوریتم در حل مسئله زمانبندی کارها 7]،[6 و تنظیم بارکاری در مراکز داده [8] نشاندهنده این موضوع است. نتیجه بررسیهای انجامشده در [9] نشاندهنده برتری این الگوریتم نسبت به سایر روشهای متاهیوریستیک در حل مسائل »ان پی سخت« است.
الگوریتم کرم شبتاب دارای ویژگیهایی مانند سرعت، همگرایی بالا، غیر حساس بودن به مقادیر اولیه، انعطافپذیری و تحملپذیری خطای بالا است .[10] که به نظر میرسد با توجه به خصوصیات مراکز داده ابری و مواجه بودن آنان با گستره وسیع، متنوع و پویایی از درخواستها استفاده از این الگوریتم در حل مسئله تحقیق مناسب باشد. سازماندهی این مقاله به شرحی که در ادامه آمده است: در بخش دوم به بررسی ادبیات و کارهای گذشته در خصوص استقرار ماشینهای مجازی در مراکز داده ابری پرداخته میشود، در بخش سوم روش پیشنهادی این مقاله بهطور کامل شرح داده خواهد شد، در بخش چهارم نتایج حاصل از شبیهسازی روش پیشنهادی با سایر الگوریتمها و روشهای رایج در این خصوص مقایسه میگردد ونهایتاً در بخش پنجم، نتیجهگیری از این تحقیق ارائه خواهد شد.
-2 تحقیقات مرتبط
در خصوص مسئله استقرار ماشینهای مجازی در مراکز داده رایانش ابری تاکنون روشهای بسیاری پیشنهادشده است، در تمام این روشها تلاش بر این است که بهینهترین نحوه جایدهی ماشینهای مجازی بروی ماشینهای فیزیکی به دست آید، در ادامه برخی از مهمترین روشهای ارائهشده در این حوزه بررسی میگردد. بلگلازو و همکاران [3] چارچوبی برای مدیریت تخصیص منابع در مراکز داده رایانش ابری پیشنهاد کردهاند که شامل 4 بخش اصلی مشتری/ واسط، تخصیص دهنده سبز، ماشینهای مجازی، ماشینهای فیزیکی است و هدف نهایی کاهشانرژِی مصرفی، پایبندی بیشتر به توافقنامه سطح سرویس و کاهش تعداد مهاجرتها است.
لی و همکاران [11] 8 چارچوبی به نامTARA9 ارائه کردهاند که در آن از الگوریتم ژنتیک برای پیدا کردن یک راهحل بهینه استفادهشده است و تخصیص منابع با در نظر گرفتن نیازهای برنامه صورت میگیرد. چینگ چی10 و پنگ فنگ[12] 11 روشی به نام نوبت چرخشی پویا ارائه دادهاند، که 2 قانون اصلی را در مدیریت منابع اجرا میکند: اولین قانون از اضافه کردن ماشینهای مجازی بیشتر به یک ماشین فیزیکی در وضعیت بازنشسته اجتناب میکند. دومین قانون سرعت فرایند تلفیق سرورها را افزایش میدهد.
خوشدل و همکاران [13] مدلی ریاضی جهت مدیریت منابع در ابر پیشنهاد کردهاند، مبنای کار آنان تأمین منابع بهصورت رزرو از پیش است و هدف آنان ارائه مدلی جهت تأمین بهینه منابع بهمنظور صرفهجویی در مصرف منابع و پذیرش بیشترین درخواست ماشین مجازی و صرفهجویی در مصرف انرژی و درنتیجه افزایش سود ارائهدهنده ابر است. اشکان فرهادی و همکاران [14] مسئله تخصیص منبع به ماشینهای مجازی را بهصورت یک »مسئله بستهبندی جعبهها« باحالت چند ظرفیته در نظر گرفتهاند و با استفاده از الگوریتم ژنتیک گروهی آن را حل کردهاند. یانگ کیانک و هی بینگ [2] برای مسئله تخصیص منابع به سرورهای مجازی از الگوریتم کلونی مورچگان چند هدفه با 2 هدف کاهش مصرف انرژی و کاهش هرزروی منابع استفاده کردهاند.
جیانگ جوانگ12 و کوانگ مونگ سیم[15] 13 روشی برای تخصیص منابع بر اساس آگاهی از محل منابع پیشنهاد کردهاند. نیر 14 و همکاران [16] روش طبقهبندی خودکار درخواستها با استفاده از تعامل بین مشتریان و مدیر منابع با استفاده از تئوری تطبیقی رزونانس 2 را پیشنهاد کردهاند. وانگ و همکاران[17] 15 مسئله جایدهی بهینه ماشینهای مجازی را با استفاده از الگوریتم ازدحام ذرات گسسته، باهدف کاهش مصرف انرژی حل کردهاند.
-3 روش پیشنهادی
در این تحقیق روشی جهت بهینهسازی استقرار ماشینهای مجازی در مراکز داده رایانش ابری باهدف کاهش مصرف توان، کاهش تعداد سرورهای فیزیکی فعال و کاهش میزان هرزروی منابع ارائهشده است. بدین منظور از الگوریتم کرم شبتاب برای پیدا کردن مناسبترین ماشینهای فیزیکی برای استقرار دسته ماشینهای مجازی ورودی استفادهشده است.
-1-3 فرموله سازی مسئله
مجموعه متشکل از ماشین مجازی و مجموعه متشکل از ماشین فیزیکی وجود دارد هدف ما استقرار این ماشینهای مجازی بروی ماشینهای فیزیکی موجود در مرکز داده است بهنحویکه مجموع توان مصرفی و درنتیجه تعداد ماشینهای فیزیکی فعال و میزان هرزروی منابع حداقل گردد. مفروضات مسئله به این صورت است: فرض اول، تمام ماشینهای فیزیکی و ماشینهای مجازی با دو مشخصه پردازنده و حافظه نمایش داده میشوند و از اندازه دیسک با فرض وجود انباره ذخیرهسازی متصل به شبکه 16 صرفنظر میکنیم. فرض دوم، هیچ ماشین مجازی نیاز به منابعی بیشتر ازآنچه در یک سرور فیزیکی ارائهشده، ندارد. فرض سوم، ماشینهای مجازی بر اساس درخواست مشتری و مطابق سفارش وی ایجادشده است. فرض چهارم، مشتریان نمیتوانند درخواستی با هر نسبت از منابع سفارش دهند. پارامترهای مسئله به شرح جدول 1 میباشد.
جدول 1 بخش اعظم مصرف انرژی در یک سرور مربوط به پردازنده است و توان مصرفی در یک ماشین فیزیکی رابطه مستقیم با سطح بهرهبرداری از پردازنده دارد. پس میتوان توان مصرفی را بهعنوان تابعی از مقدار بهرهبرداری از پردازنده تعریف کرد و فرمول - 1 - را برای محاسبه توان مصرفی در ماشین فیزیکی j ام و فرمول - 2 - را برای محاسبه توان مصرفی در کل مرکز داده در نظر گرفت، درنتیجه تابع هدف مسئله موردبررسی بهصورت فرمول - 3 - میباشد.
البته با شرایطی که در فرمول - 4 - ، - 5 - و - 6 - قیدشده است. که فرمول - 4 - نشان میدهد ماشین مجازی ام فقط بروی یک ماشین فیزیکی باید مستقر گردد، فرمول - 5 - نشان دهنده محدودیت ظرفیت منبع پردازنده در ماشین فیزیکی ام است و فرمول - 6 - نشان دهنده محدودیت ظرفیت منبع حافظه در ماشین فیزیکی ام است. دو فرمول اخیر نشان میدهد که مجموع منابع مورد نیاز برای ماشینهای مجازی باید کمتر از ظرفیت منابع ماشینهای فیزیکی باشد. فرمول - 7 - دامنه متغیرهای مسئله را نشان میدهد .