منبع علمی مقاله —d1230

فهرست مطالب
TOC \o "1-3" \h \z \u فصل اول پیشگفتار PAGEREF _Toc400881263 \h 21-1-مقدمه PAGEREF _Toc400881265 \h 31-2-ادغام پویای ماشین های مجازی در راستای مصرف کارآمد انرژی PAGEREF _Toc400881266 \h 41-3-اهداف رساله PAGEREF _Toc400881267 \h 71-4-ساختار پایان نامه PAGEREF _Toc400881268 \h 7فصل دوم مبانی نظری تحقیق و کارهای پیشین PAGEREF _Toc400881269 \h 82-1-مقدمه PAGEREF _Toc400881272 \h 92-2-راهکارهای ارائه شده در مدیریتِ کارآمد توان و انرژی PAGEREF _Toc400881276 \h 92-3-زمان بندی ماشین های مجازی با آگاهی از توان الکتریکی و گرما PAGEREF _Toc400881277 \h 122-4-روشهای اکتشافیِ آگاه از انرژی در تخصیص منابع PAGEREF _Toc400881278 \h 132-5-پشتیبانی نیازمندیهای امنیتی برای مدیریت منابع در محیط رایانش ابری PAGEREF _Toc400881279 \h 182-6-زمانبند شبکه آگاه و انرژی کارای مراکز داده PAGEREF _Toc400881280 \h 192-7-زمانبند قفسه آگاه در مراکز داده PAGEREF _Toc400881281 \h 19فصل سوم الگوریتم های پیشنهادی PAGEREF _Toc400881282 \h 213-1-پیش گفتار PAGEREF _Toc400881284 \h 223-2-ترکیب پویای ماشینهای مجازی به منظورکاهش مصرف انرژی با در نظر گرفتن توافقات سطح سرویس PAGEREF _Toc400881285 \h 223-2-1-ارتباط بین بهرهوری پردازنده و حافظه اصلی PAGEREF _Toc400881286 \h 243-2-2-شناسایی میزبانان فروبار PAGEREF _Toc400881287 \h 253-2-3-جایگذاری ماشینهای مجازی PAGEREF _Toc400881288 \h 263-2-4-انتخاب ماشینهای مجازی PAGEREF _Toc400881289 \h 293-2-5-تشخیص میزبانان فرابار PAGEREF _Toc400881290 \h 303-3-الگوریتم پیشنهادی مدیریت سلسله مراتبی مراکز داده با در نظر گرفتن معماری مراکز داده و تجهیزات شبکه PAGEREF _Toc400881291 \h 303-3-1-تشریح مسئله PAGEREF _Toc400881298 \h 313-3-2-توسعه شبیه ساز CloudSim PAGEREF _Toc400881299 \h 353-3-3-الگوریتمهای ارائه شده برای معماری موجود PAGEREF _Toc400881300 \h 35فصل چهارم پیاده سازی و ارزیابی الگوریتمهایپیشنهادی PAGEREF _Toc400881301 \h 414-1-مقدمه PAGEREF _Toc400881303 \h 424-2-شبیه ساز CloudSim PAGEREF _Toc400881304 \h 424-3-بستر آزمایشی PAGEREF _Toc400881305 \h 424-3-1-بارکاری PAGEREF _Toc400881306 \h 434-4-نتایج ترکیب پویای ماشینهای مجازی به منظورکاهش مصرف انرژی با در نظر گرفتن توافقات سطح سرویس PAGEREF _Toc400881307 \h 434-5-کارهای آینده PAGEREF _Toc400881308 \h 50مراجع و منابع PAGEREF _Toc400881309 \h 51

فهرست شکل ها
TOC \h \z \t "تصاویر,1" شکل1-1 میزان مصرف انرژی مراکز داده جهان از سال 2000 تا 2010 PAGEREF _Toc402947819 \h 3شکل 1-2 نگاه سیستم از بالا به پایین PAGEREF _Toc402947820 \h 6شکل 2-1 طبقه بندی سطح بالای مدیریت توان و انرژی الکتریکی PAGEREF _Toc402947821 \h 9شکل 3-1 نمودار جریان روش ارائه شده PAGEREF _Toc402947822 \h 23شکل 3-2 میزان وابستگی بهره وری پردازنده و حافظه اصلی ماشینهای مجازی PAGEREF _Toc402947823 \h 25شکل 3-3 یک مرکز داده ای سه لایه PAGEREF _Toc402947824 \h 32شکل 3-4 انرژی مصرفی درون یک مرکز داده PAGEREF _Toc402947825 \h 34شکل 3-5 هزینه ماهیانه یک مرکز داده PAGEREF _Toc402947826 \h 34شکل 3-6 شناسایی میزبانان، قفسهها و مراکز داده کوچک فروبار PAGEREF _Toc402947827 \h 37شکل 3-7 جایگذاری سلسله مراتبی VMها PAGEREF _Toc402947828 \h 40شکل 4-1 مصرف انرژی PAGEREF _Toc402947829 \h 45شکل 4-2 تخطی از توافقات سطح سرویس PAGEREF _Toc402947830 \h 45شکل 4-3 تعداد کوچ ماشینهای مجازی PAGEREF _Toc402947831 \h 46شکل 4-4 تعداد خاموش شدن میزبانان PAGEREF _Toc402947832 \h 46شکل 4-5 میزان تخطی از توافقات سطح سرویس بر اساس میزبانان فعال PAGEREF _Toc402947833 \h 47شکل 4-6 میزان مصرف انرژی سوئیچ ها PAGEREF _Toc402947834 \h 48

فهرست جداول
TOC \p " " \h \z \t "جداول,1" جدول 3-1 تجهیزات اساسی درون مرکز داده PAGEREF _Toc402948057 \h 32جدول 3-2 سهم مصرف انرژی تجهیزات بر اساس نحوه توزیع انرژی مصرفی PAGEREF _Toc402948058 \h 33جدول 4-1 مشخصات سخت افزاری میزبانان PAGEREF _Toc402948059 \h 42جدول 4-2 مشخصات ماشین های مجازی استفاده شده برای شبیه سازی PAGEREF _Toc402948060 \h 43جدول 4-3 تعداد VM ها درون بارکاری PAGEREF _Toc402948061 \h 43جدول 4-4 نتایج نهایی شبیه سازی PAGEREF _Toc402948062 \h 44جدول 4-5- نتایج نهایی شبیه سازی مدیریت سلسله مراتبی منابع PAGEREF _Toc402948063 \h 47

فصل اول پیشگفتار
مقدمهرایانش ابریبا توانایی در ارائه خدمات رایانشی بر حسب تقاضا، تحول عظیمی در فنآوری اطلاعات و ارتباطات (ICT) به وجود آورده است. سازمانها می توانند از یک دید با سپردن منابع رایانشی مورد نیاز خود به ابر، از سرمایه گذاری بسیار در فراهم آوری زیرساخت های رایانشی به صورت خصوصی و به دنبال آن هزینه های نگهداری و به روز رسانی آن ها جلوگیری کنند؛ و از دید دیگر می توانند با ساخت یک ابر خصوصی (یا به عبارت دیگر، مرکز دادهخصوصی)، در مدیریت منابع و تأمین فرآیند های سازمان خود پیشرفت نمایند.
ازدیاد روز افزون استفاده از سرویس های رایانش ابری به دلیل مزایای آن، باعث ایجاد مراکز داده ای با مقیاس بزرگ در نقاط مختلف جهان شده است که هر کدام متشکل از هزاران سرور می باشند. با این وجود، مراکز داده مقادیر زیادی از انرژی الکتریکی را مصرف کرده که نتیجه آن، هزینه بالای عملیاتی و انتشار دی اکسیدکربن در محیط زیست می باشد. همانطور که در شکل 1-1 نمایش داده شده است میزان مصرف برق مراکز داده سراسر جهان از سال 2005 تا 2010 میلادی، به میزان 56% افزایش داشته است و در سال 2010 مقداری برابر با 1.1 تا 1.5 درصد از کل برق مصرفی جهان را به خود اختصاص داده است [1]. پیش از این نیز، میزان انتشار دی اکسید کربن توسط صنعت ICT ، هم اکنون حدود 2 درصد تخمین زده شده است که مقداری برابر با صنعت هوانوردی می باشد و سهم قابل توجهی در اثر گلخانه ای دارد[2].

شکل1-1 میزان مصرف انرژی مراکز داده جهان از سال 2000 تا 2010 [1]امروزه رشد مصرف انرژی الکتریکی در مراکز داده نیاز به راه حل های پیشرفته ای در راستای مدیریت منابع به منظور مصرف کارآمد انرژی الکتریکی دارد.
برای حل مشکل مصرف بالای انرژی، باید در راه برق رسانی به منابع رایانشی و چگونگی بهره وری از منابع رایانشی برای سرویس دهی به کارهای تقاضا شده، از ناکارآمدی و اتلاف بیهوده انرژی الکتریکی جلوگیری شود. این امر می تواند با بهبود زیرساخت های فیزیکی مراکز داده و یا استفاده از راهکارهای مدیریت و تخصیص منابع انجام گردد.
یک منشأ اساسی در اتلاف انرژی الکتریکی، استفاده ناکارآمد از منابع رایانشی می باشد. داده های جمع آوری شده در 6 ماه از بیش از 5000 سرور، نشان می دهد که سرورها اگر چه در بسیاری از مواقع بیکار نیستند ولی به ندرت بهره وری از پردازنده آن ها به 100% می رسد [3]. بیشتر اوقات فقط از 10 تا 50 درصد از کل توان سرورها استفاده می شود و این عاملی بر پیدایش هزینه های اضافی به دلیل تأمین بیش از نیاز منابع می باشد[3]. بیش از این نیز مدیریت و نگهداری این منابع اضافی باعث افزایش هزینه برای مالک منابع می گردد. علاوه بر موارد گفته شده، بازه کوچک مصرفِ توان الکتریکی پویا در سرور ها، مسأله بهره وری پایین در سرورها را تشدید می کند: یک سرور در وضعیت کاملا بیکار، حدود 70 درصد از حداکثرِ توان الکتریکی خود را مصرف می کند[4] . بنابراین از دیدگاه مصرف انرژی الکتریکی، بهره وری پایین سرورها بسیار ناکارآمد می باشد.
تمرکز این رساله بر روی مسأله مدیریت منابع در راستای مصرف کارآمد انرژی الکتریکی می باشد که از یک سو با کاهش هزینه برق مصرفی، سود بیشتری را برای فراهم کنندگان ابر به ارمغان میآورد و از سوی دیگر مخاطرات ناشی شده از تولید برق برای محیط زیست را کاهش میدهد. این عمل با استفاده بهینه از منابع رایانشی به منظور سرویس دهی به مشتریان و در راستای کاهش انرژی الکتریکی به گونه ای انجام شده است که سرویس های ارائه شده کیفیتی مطلوب و منظقی داشته باشند.
ادغام پویای ماشین های مجازی در راستای مصرف کارآمد انرژییک راه ایده آل برای حل مصرف ناکارآمد انرژی الکتریکی، پیاده سازی یک سیستم رایاناشی با مصرف متناسبِ انرژی میباشد؛ به این معنی که مصرف انرژی الکتریکی متناسب با بار کاری اعمال شده بر سیستم باشد. چنین راهکاری به طور ناقص با استفاده از شیوه پر کاربرد مقیاس پذیریِ پویای ولتاژ و فرکانس (DVFS) پیاده سازی شده است.DVFS ، اجازه تنظیم پویای میزان ولتاژ و فرکانس پردازنده را بر اساس میزان تقاضای منابع در هر زمان، میدهد. به عنوان نتیجه این امر، پردازنده های موجود در رایانه های رو میزی و سرورها، در حالت های کم قدرت می توانند مصرفی کمتر از 30 درصد از حداکثر مصرف خود را داشته باشند؛ که این دلیلی بر دامنه 70 درصدیِ توان الکتریکی پویا در پردازنده میباشد[3] .
میزان انرژی مصرفی پردازنده میزبانان بسیار حائز اهمیتتر از سایر مولفههای میزبانان است. به عنوان مثال بازههای زمانی مورد استفاده شدن از سایر اجزای میزبانان بدین قرار است: کمتر از 50% برای حافظه با دسترسی تصادفی پویا (DRAM) ،25% برای دیسک درایوها 15% سوئیچ های شبکه و مقادیر ناچیزی برای دیگر اجزاء است[4]. دلیل این مسئله این است که فقط پردازنده ها از حالت های کم مصرف پشتیبانی میکنند و بقیه اجزا یا به طور کامل و یا قسمتی از آن ها باید خاموش شود؛ ضمناً سربار زیادی بر روی عملکرد اجزاء سخت افزاری، در تغییر حالت از فعال به غیر فعال و بر عکس، وجود دارد. برای مثال یک دیسک درایو در حالت خواب عمیق، تقریبا هیچ برقی مصرف نمیکند؛ اما تغییر حالت آن به حالت فعال، تأخیری معادل با 1000 برابر یک دسترسی معمولی ایجاد میکند. اتلاف انرژی در اجزای سرور (غیر از پردازنده) در زمان هایی که سرور کاری برای انجام دادن ندارد باعث می شود که بازه توان مصرفی پویای کل سرور کوچکتر شود که این مقدار حدوداً 30% میباشد. به عبارت دیگر حتی در زمانی که یک سرور کاملا بیکار است حدوداً 70% از اوج برق مصرفی خود را استفاده میکند.
یکی از روشهای بهبود میزان بهره وری از منابع و کاهش مصرف انرژی، که کارآمد بودن آن در این مسیر اثبات شده است؛ ادغام پویای ماشین های مجازی می باشد [5, 6, 7, 8, 9]. مجازی سازی به فراهم آورندگان ابر، این اجازه را میدهد که با اجرای چندین ماشین مجازی بر روی یک سرور، استفاده از منابع را بهینه کرده و میزان سود خود را افزایش دهند. کاهش مصرف انرژی الکتریکی با قرار دادن سرور های بیکار در حالت های کم مصرف انرژی، مثل خواب و به دنبال آن حذف توان مصرفی ایستا امکان پذیر است. همانطور در که در شکل 1-2 نشان داده شده است با بهرهگیری از مجازی سازی امکان اجرای چندین ماشین مجازی بر روی یک میزبان فراهم شده است و بدین شکل زمانهایی که میزبانی دارای بارکاری چندان قابل توجهی نیست این امکان وجود دارد که بارکاری آنرا به سایر میزبانان انتقال داده و میزبان مذکور را نیز به صورت پویا به حالت خواب انتقال داد.
مهاجرت زنده ماشینهای مجازی، قابلیت دیگری می باشد که مجازی سازی آن را ممکن میکند. با استفاده از مهاجرت زنده [10] ، ماشین های مجازی میتوانند در هر زمانی از اجرای خود از یک سرور فیزیکی به دیگری انتقال یابند؛ و این عمل می تواند در راستای استفاده بهینه از منابع و کاهش سرورهای فعال استفاده گردد.

شکل 1-2 نگاه سیستم از بالا به پایینادغام پویای ماشین های مجازی از دو فرآیند اصلی تشکیل شده است:
1- انتقال ماشین های مجازی از میزبانهای فروبار در راستای کاهش تعداد میزبانهای فعال
2- انتقال ماشین های مجازی از میزبان های فرابار در راستای جلوگیری از افت کارایی در ماشین های مجازی که ممکن است به نقض مسائل کیفیتی بینجامد.
میزبانهای بیکار به طور خودکار، در حالت های کم مصرفِ انرژی قرار می گیرند و در صورت نیاز به منابع، دوباره فعال می شوند.
سرویس های نوین تحت وب اغلب، بارکاری بسیار متغیری را تجربه می کنند که نیاز به ایجاد الگوهای پویا در استفاده از منابع می گردد و این موضوع باعث می شود مسأله ادغام ماشین های مجازی به مسأله ای پیچیده تبدیل شود. بنابراین، دقت ناکافی در ادغام ماشین های مجازی، ممکن است به دلیل افزایش نیاز ماشین های مجازی به منابع فیزیکی در یک مقطع زمانی، موجب افتِ غیر منتظره عملکرد آن ها گردد. اگر منابع مورد نیاز یک ماشین مجازی و به تبع آن برنامه در حال اجرا بر روی آن، به ماشین مجازی تخصیص داده نشود، ممکن است برنامه با افزایش زمان پاسخگویی و یا حتی شکست در اجرا مواجه شود. اطمینان از کیفیت خدمات که از طریق توافقنامه های سطح سرویس بین فراهم آورنده و مشتری تعیین می گردد یک مسئله اساسی در محیط های رایانش ابری میباشد. بنابراین فراهم کنندگان ابر با یک چالش میان کاهش انرژی و افت کارایی رو به رو هستند. بنابراین کاهش انرژی باید به گونه ای باشد که در آن کیفیت خدمات نیز در نظر گرفته شود.
اهداف رسالهدر انجام این رساله به منظور مدیریت و حل چالش های مطرح شده در بخش قبل، در مرحله اول به بررسی و طبقه بندی تحقیقات انجام شده در زمینه مصرف کارآمد انرژی الکتریکی پرداخته شده که از این طریق درک مناسب و روشنی از روش های موجود در این زمینه و راه های رسیدن به این هدف حاصل شود. در ادامه، هدف ارائه راهکاری برای کاهش مصرف انرژی بیهوده در مراکز داده است که این عمل با استفاده از شیوه ادغام پویای ماشین های مجازی صورت گرفته است. در حل این مسئله سعی شده است که راهکار های ارائه شده بتوانند علاوه بر کاهش مصرف انرژی یک مرکز داده کیفیت خدمات را نیز در سطح بالایی نگه دارند.
همچنین با توجه به مقیاس بزرگ مراکز داده، سعی شده است راهکارهای ارائه شده در حد امکان قابلیت پیاده سازی در محیط های توزیع شده را داشته باشند. همچنین هدف دیگری که در روش های پیشنهادی و بر خلاف راهکارهای موجود در این زمینه، به آن توجه ویژه ای شده است تعداد مهاجرت های ماشین های مجازی و پرهیز از مهاجرت های بیهوده است که در یک دوره زمانی توسط سیستم صورت میگیرد. در پایان هم برای ارزیابی نتایج و مقایسه عادلانه آن با روش های مشابه محکی برای سنجش میزان کیفیت استفاده شده است که مستقل از بارکاری اعمال شده باشد و بتواند تمامی مسائل مرتبط با کیفیت را به سادگی در نظر بگیرد.
ساختار پایاننامهدر فصل دوم تعاریف پایه و مبانی نظری آورده شده است. فصل سوم به طبقه بندی و بررسی شیوه های موجود در مدیریت توان و انرژی الکتریکی و بررسی روش های نوین ارائه شده در این زمینه پرداخته است. در فصل چهارم روش های پیشنهادی برای مدیریت منابع در راستای مصرف کار آمد انرژی ارائه شده است و در فصل پنجم عملکردِ روش های پیشنهادی ارزیابی شده و با روش های موجود در این زمینه مقایسه می شوند. فصل ششم هم به نتیجه گیری و پیشنهادهای ارائه شده برای تحقیقات آینده اختصاص یافته است.
فصل دوم مبانی نظری تحقیق و کارهای پیشین
مقدمهدر این فصل ابتدا شیوه های موجود و راهکارهای ارائه شده در زمینه مدیریتِ کارآمد توان و انرژی الکتریکی در مراکز داده مورد بررسی قرار میگیرند و در ادامه بشرح تحقیقات پیشین میپردازیم.
راهکارهای ارائه شده در مدیریتِ کارآمد توان و انرژیمطالعات و تحقیقات وسیعی در زمینه مدیریت منابع، در سیستم های رایانشی در راستای مصرف کارآمد توان و انرژی الکتریکی انجام شده است. همان طور که در شکل 2-1 نمایش داده شده است از دید سطح بالا می توان تمامی راهکارهای ارائه شده در این زمینه را به دو دسته ایستا و پویا تقسیم نمود [11].

شکل 2-1 طبقه بندی سطح بالای مدیریت توان و انرژی الکتریکی[11]در شکل 2-1، از دیدگاه سخت افزار مدیریت ایستای توان الکتریکی به تمامی روش های صورت گرفته برای بهینه سازی در سطوح مدار، منطقی، معماری و سیستم گفته میشود[13]،[12]. روشهای سطح معماری شامل تجزیه و تحلیل سیستم و استفاده از شیوه های بهینه سازی توان الکتریکی در طراحی آن میباشد.
جدا از بهینه سازی های صورت گرفته در طراحی سیستم در سطوح سخت افزاری، در نظر داشتن دقیق پیاده سازی برنامه هایی که قرار است بر روی سیستم اجرا شوند از اهمیت ویژه ای بر خوردار است. حتی با وجود بهترین طراحی سخت افزاری، یک پیاده سازی نامرغوب از برنامه هایی که بر روی سیستم اجرا میشوند می تواند به طور چشم گیری در از دست دادن کارایی و انرژی الکتریکی موثر باشد. البته، تجزیه و تحلیل میزان مصرف انرژی الکتریکی صورت گرفته به خاطر یک نرم افزار، کاری غیر عملی و یا غیرممکن می باشد؛ چون علاوه بر فرآیند تولید کد و کامپایل آن به زبان ماشین، ترتیب اجرای دستورات نیز می تواند در میزان مصرف انرژی الکتریکی مؤثر باشد[14]،[ 15]،[ 16]. بنابراین باید از شیوه های تخمین غیر مستقیم استفاده کرد.
برای مثال در [16]،[17] نشان داده شده که کد سریعتر، اغلب، مصرف انرژی کمتری را خواهد داشت. اگر چه در حال حاضر روش های کلی برای تشخیص یک کد بهینه وجود ندارد و موضوع تجزیه و تحلیل الگوریتمها، خود به تنهایی زمینه مهمی در تحقیقات به شمار میرود که خارج از بحث این رساله می باشد.
تمرکز این فصل بر روی شیوه های مدیریت توان پویا (DPM) می باشد که شامل روش ها و استراتژی های زمان اجرا برای تصمیم گیری در چگونگی رفتار سیستم است. این عمل با توجه به میزان منابع مورد نیاز و یا هر مشخصه پویای دیگری از حالت سیستم در یک مقطع زمانی معین، انجام میشود. یکی از فرض هایی که شیوه DPM را ممکن می کند این است که سیستم ها، بار کاری متغییری را در طول عملکرد خود تجربه میکنند. چنین فرضی اجازه تنظیم حالت قدرت عملیاتی سیستم با توجه به عملکرد مورد نیاز از سیستم را میدهد. فرض دیگری که اغلب از آن استفاده میشود، توانایی در استنتاج و پیشبینی حالت آینده سیستم و تصمیم گیری مناسب با توجه به آن می باشد.
همانطور که در شکل 2-1 نمایش داده شده است می توان راهکار DPM را به صورت نرم افزاری و سخت افزاری تقسیم بندی کرد. مدیریت پویای توان در سطح سخت افزار را می توان به دو دسته طبقه بندی نمود:
(1) تغییر مقیاس عملکرد DPS مانند DVFS
(2) غیر فعالسازی پویای مؤلفه(DCD) به صورت کامل یا ناقص در زمان هایی که اجزای سیستم، فعالیتی ندارند.
شیوه های DPM در سطح نرم افزار با استفاده از دسترسی به قابلیت های سخت افزاری در مدیریت توان مصرفی سیستم، سیاست های خود را اعمال میکنند.
در ادامه این بخش راهکارهای مختلف در اعمال مدیریت پویای توان ، در سطوح مختلف بررسی میشوند.
در این سطح شیوه های مدیریت پویای توان را به دو دوسته کلی میتوان تقسیم نمود: (1) غیرفعال سازی پویای مؤلفه های سیستم (DCD) و (2) تغییر پویای مقیاس عملکرد (DPS). شیوههای DCD بر اساس ایده غیرفعال کردن کامل و یا بعضی از قسمت های یک مؤلفه الکترونیکی میباشد که در زمان های بدون فعالیت آن مؤلفه اعمال میگردد. در مقابلِ غیر فعال سازی مؤلفه به طور کامل، شیوههای DPS بر اساس کارایی مورد نیاز از مؤلفه، عملکرد آن را به طور پویا تنظیم میکنند.

 برای دانلود فایل کامل به سایت منبع مراجعه کنید  : elmname.com

یا برای دیدن قسمت های دیگر این موضوع در سایت ما کلمه کلیدی را وارد کنید :

 

مؤلفههای رایانهای که از DPS پشتیبانی نمیکنند، فقط میتوان آنها را غیر فعال نمود. بنابراین با توجه به تغییر بارکاری و زمانی که یک مؤلفه بیکار میباشد، آن را غیرفعال کنند. اگر سر بار ناشی از انتقال یک مؤلفه بین حالت های فعال و غیر فعال، مقداری ناچیز باشد، حالت ایدهآل است. اگر چه در واقعیت تغییر از یک حالت به حالت دیگر نه تنها باعث تأخیر میگردد بلکه کارایی سیستم را نیز کاهش می دهد و باعث مصرف انرژی بیشتر به دلیل راه اندازی مجدد مؤلفه میگردد.
در صورتی که میزان این سربار ناچیز نباشد، این مسأله به یک مسأله بهینه سازی بر خط تبدیل میگردد. این کار فقط زمانی ارزش دارد که زمان بیکاری مؤلفه از مجموع زمان غیرفعال سازی و دوباره فعال سازی آن بیشتر باشد و همچنین میزان کاهش در مصرف انرژی، از میزان انرژی مورد نیاز برای راه اندازی مجدد مؤلفه بیشتر باشد. در سیستم های واقعی اغلب از بارکاری آینده دانشی وجود ندارد و یا اینکه دانش محدودی وجود دارد. بنابراین پیشبینی برای اعمال کارآمد غیر فعال سازی بر اساس تجزیه و تحلیل داده های موجود از گذشته سیستم و یا مدل های دیگر انجام می گردد. تحقیقات وسیعی در راستای حل این مسأله انجام گرفته است[18]،[19]. اغلب تکنیکهای موجود در این زمینه بر اساس ارتباط موجود میان رفتار گذشته سیستم و آینده نزدیک آن میباشد. کارآمد بودن چنین راه کارهایی به ارتباط واقعی که میان گذشته و آینده سیستم وجود دارد بر میگردد.
روش دیگر فرموله کردن مسأله به عنوان یک مسأله بهینه سازی احتمالی است. که احتیاج به ساخت یک مدل احتمالی مناسب از سیستم دارد. به طور کلی راهکارهای ارائه شده در این زمینه، اغلب برای نمونه خاصی از بارکاری تنظیم می شوند که مناسب برای سیستم هایی که بی اطلاع از بارکاری می باشند، مناسب نیستند. همچنین اگر بتوان با ادغام ماشین های مجازی به نوعی که آن ها همزمان از تمامی منابع سیستم استفاده کنند؛ نیازی به اعمال چنین روشهایی نمی باشد.
علاوه بر غیر فعال کردن یک مؤلفه به طور کامل، بعضی از مؤلفه ها مانند پردازنده اجازه افزایش و یا کاهش تدریجی فرکانس ساعت به همراه تنظیم ولتاژ تغذیه را میدهند. این راهکار وقتی که از منبع به طور کامل استفاده نمیگردد، بسیار مفید میباشد که نمونه بسیار کاربردی آن شیوه DVFS میباشد.
با وجود اینکه فرکانس پردازنده میتواند به طور مستقل تنظیم گردد، استفاده از مقیاس پذیری فرکانس به تنهایی نمیتواند راه مفیدی برای کاهش مصرف انرژی باشد. بیشتر کاهش صورت گرفته در انرژی مصرفی به دلیل کاهش مقیاس ولتاژ میباشد. به دلیل وجود مؤلفه V2 در محاسبه توان پویا و این واقعیت که پردازندههای نوین برای کار در ولتاژهای پایین بسیار، بهینه ساخته شدهاند.
با وجود اینکه اعمال تکنیک DVFS ممکن است ساده به نظر برسد. در سیستم های واقعی پیچیدهگیهای فراوانی وجود دارد که باید در نظر گرفته شوند. اول اینکه به دلیل معماری پیچیده پردازنده )خط لوله، حافظه نهان چند سطحی و... (، پیشبینی میزان مورد نیاز فرکانس پردازنده که بتواند نیاز برنامههای مورد نظر را برآورده کند کار سادهای نمیباشد. مسئله دیگر این است که میزان مصرف انرژی پردازنده ممکن است رابطهای از نوع درجه 2 با ولتاژ تغذیه نداشته باشد [3].
بیش از این نیز زمان اجرای یک برنامه ممکن است همیشه رابطه عکس با کاهش فرکانس پردازنده نداشته باشد [20]. برای مثال میتوان برنامههایی که دستورات ورودی/خروجی زیادی دارند را نام برد.
علاوه بر این، کاهش فرکانس پردازنده می تواند در ترتیب اجرای دستورات مؤثر باشد [21]. به طور خلاصه میتوان گفت DVFS میتواند کاهش قابل توجهی در مصرف انرژی الکتریکی داشته باشد. البته به دلیل اینکه نتیجه اعمال این تکنیک در سیستم های نرم افزاری و سخت افرازی مختلف ممکن است متفاوت باشند؛ سیستم مذکور نیاز باید با دقت عمل فراوان اعمال گردد.
زمان بندی ماشین های مجازی با آگاهی از توان الکتریکی و گرمادر این سیستم زمانبندی، تمرکز بر روی به حداقل رساندن انرژی مصرفی توسط سرورها میباشد [22]، [23]. بنابراین تعداد سرورهای فعال بر اساس نیازی که به منابع در یک زمان وجود دارد تا حد ممکن کاهش پیدا میکنند و در نتیجه با قرار دادن سرور های بیکار در حالت های کم مصرف انرژی مثل خواب و یا خاموش نمودن، انرژی مصرفی را کاهش داد.
دسته دیگری از زمانبندی با تمرکز بر روی دمای کلی مرکز داده و گرمای تولید شده توسط سرورها میباشد. بدین منظور کارها به گونه ای زمان بندی میشوند که دمای مرکز داده به حداقل کاهش پیدا کنند. روشهای ارائه شده در این زمینه[24]،[25]،[26] لزوماً باعث کم شدن انرژی مصرفی توسط سرورها نمیگردند؛ بلکه انرژی مصرفی سیستمهای خنک کننده را مد نظر قرار میدهند.
روشهای اکتشافیِ آگاه از انرژی در تخصیص منابع
Srikantaiah و همکارانش [30] در سال 2008 به بررسی مسأله اجرای در کنار هم برنامههای تحت وب بر روی یک ماشین فیزیکی در مراکز داده با هدف کم کردن انرژی مصرفی پرداختهاند. در ابتدا نویسندگان، تأثیر ادغام بارکاری را بر روی انرژی مصرفی از دید میزان بهرهوری پردازنده و دیسک بررسی نمودند. نتایج نشان داد که میزان بهره وری و مصرف انرژی رابطه ای غیر خطی با یکدیگر دارند. آنها به یک منحنی U شکل (نقطه بهینه) در ارتباط بین بهره وری از منابع و مصرف انرژی رسیده اند به گونه ای که اگر از یک سو بهره وری پایین باشد به دلیل وجود توان استاتیک مصرف انرژی کارآمد نخواهد بود و از سوی دیگر اگر بهره وری زیاد شود باعث افزایش نرخ Cache miss ، تعویض متن و تداخل در زمانبندی میشود که در اینصورت نیز انرژی مصرفی به دلیل افت کارایی و به دنبال آن زیادتر شدن زمان اجرا، بیشتر خواهد شد.
نویسندگان مطرح کرده اند که هدف از مدیریت پویای انرژی آگاهانه بارکاری، نگه داشتن سرورها در مقدار بهینه از لحاظ مصرف انرژی است. آنها مسأله را به یک مسأله بسته بندی چند بعدی تبدیل کردهاند که در آن بستهها همان ماشینهای فیزیکی میباشند و ابعاد آنها منابع موجود )پردازنده، حافظه، شبکه و دیسک( هستند که کم کردن تعداد بسته ها باعث کمتر شدن انرژی مصرفی به دلیل خاموش کردن ماشین های بیکار میگردد. برای حل این گونه مساله از یک روش اکتشافی استفاده کردهاند.
روش پشنهادی در این مقاله برای محیط های ناهمگون مفید میباشد ولی چندین کاستی دارد:
1- اول اینکه فرض شده است میزان نیاز هر کار به منابع از قبل مشخص میباشد و ثابت میماند.
2- انتقال یک برنامه بین سرورها، در افت عملکرد و افزایش مصرف انرژی تأثیر دارد که مدل نشده است.
3- برای تعیین مقدار بهینه در بهره وری منابع به ازای هر نوع از سرور باید یک مطالعه تجربی انجام شود.
Kusic و همکارانش در سال 2009[29] ، به بررسی مدیریت منابع با هدف کارآمد بودن توان و کارایی پرداختند. هدف آنها کاهش هرچه بیشتر انرژی مصرفی و عدم تخطی از توافقنامه سطح سرویس بوده است که در این صورت افزایش سود برای عرضه کننده را به همراه خواهد داشت.
آنها مسأله تأمین پویای ماشین های مجازی برای سرویس های تحت وب، بر اساس تعداد درخواستهای ورودی را بررسی کردهاند. مسئله به عنوان یک مسئله بهینه سازی ترتیبی در نظر گرفته شده و با استفاده از کنترلِ پیشبینیِ محدودشده (LCC) حل شده است. چهار تغییر اساسی در بهینه سازی در نظر گرفته شده است:
1- تعداد سرورهایی که روشن و خاموش می شوند.
2-تعداد ماشین های مجازی که باید به هر سرویس اختصاص پیدا کند.
3- میزان پردازنده (اختصاص یافته به هر ماشین مجازی
4- میزان بارکاری اختصاص یافته به هر سرور است.
به منظور کاهش انرژی مصرفی، در این مقاله از ترکیب پویای ماشینهای مجازی با استفاده از مهاجرت برون خطی و خاموش و روشن کردن پویای میزبانها استفاده شده است. به منظور تخمین تعداد درخواستهای ورودی آینده از فیلتر کالمن استفاده شده است. همچنین برای حل مسئله بهینه سازی از یک مدل ریاضی بهره برده شده است.
نرخ پردازشی به ازای هر ماشین مجازی با پردازندههای متفاوت باید از قبل برای هر درخواست مشخص باشد. همچنین به دلیل پیچیدگی مدل ارائه شده، زمان اجرا برای 15 میزبان حدود 30 دقیقه میباشد. که برای مراکز داده با حجم بالای میزبان ها به هیچ وجه مناسب نمیباشد.
Younge و همکارانش در سال 2010 [50] مجموعه ای از خط مشیها لازم در ساخت و مدیریت مراکز داده را در قالب یک چارچوب سبز ارائه کردند. چارچوب ارائه شده در سطح اول مسئله را به دو بخش تقسیم مینمود:
1- طراحی مرکز داده که مواردی از قبیل نوع قرار گیری سرورها، سیستم های خنک کننده و چگونگی گردش هوا و ... در آن مطرح میباشد.
2- مدیریت ماشین های مجازی
در این مقاله در راستای مدیریت و ادغام ماشینهای مجازی الگوریتمی برای زمانبندی آگاه از انرژی ماشینهای مجازی ارائه کردند. به گفته آنها محرک این روش از آنجا سرچشمه گرفته است که در یک سیستم چند هستهای با بهروری از هستههای بیشتر توان مصرفی با نسبت کمتری افزایش پیدا میکند برای مثال اگر بهره وری را از 0% به 10% تغییر دهیم با افزایش 20 وات توان مصرفی روبه رو میشویم در حالی که اگر بهرهوری را از 70% به 80% افزایش دهیم، توان مصرفی فقط 5/3 وات افزایش پیدا می کند؛ به همین دلیل زمانبندی با سیاست نوبت گردشی میتواند در حین توزیع بار عادلانه بین همه سرورها به ناکارآمدترین وضع ممکن توان مصرفی را افزایش دهد. در همین راستا آن ها الگوریتمی را ارائه کردند که اول بهره وری از یک سرور را به حداکثر برساند سپس در صورت نیاز از سرورهای دیگر استفاده شود.
آن ها در الگوریتم پیشنهادی نیاز هر ماشین مجازی را فقط به یک هسته پردازنده محدود کردهاند و مشخصا چنین الگوریتمی که به صورتی مهاجم به ادغام ماشین های مجازی میپردازد نمیتواند کیفیت مطلوبی را به دلیل ماهیت پویا و نیاز متغییر ماشین های مجازی به پردازنده، ارائه دهد.
Bloglazov و Buyya در سال 2010 [41]،[40]، مسأله ترکیب ماشین های مجازی ها را به دو زیر مسأله تقسیم کردند:
1- انتخاب یک یا بیشتر ماشین های مجازی برای مهاجرت
2- جایگذاری ماشین های مجازی انتخاب شده
برای انتخاب ماشین های مجازی سه الگوریتم با آستانه دوتایی، ارائه کردند. منظور از آستانه دوتایی، دو آستانه با نامهای بالا و پایین است؛ حال اگر میزان بهرهوری از پردازنده یک سرور از مقدار آستانه پایین کمتر شد؛ تمامی ماشین های مجازی اختصاص یافته به آن باید به سرورهای دیگر منتقل شده و آن سرور بخواب رود؛ این عمل در هر سه الگوریتم انجام میشود. در مقابل، اگر میزان بهره وری از پردازنده سرور بیش از آستانه بالا بشود، باید یک یا چند ماشین های مجازی از آن میزبان انتخاب و به میزبانان دیگر منتقل شوند که بار بهرهوری پردازنده آن کمتر از حد آستانه بالای میزبان شود. سیاست انتخابی در این مرحله، عبارتند از:
الف: حداقل مهاجرت (MM) ، که هدف آن انتخاب کمترین تعداد ماشین های مجازی برای مهاجرت بود.
ب: بیشترین احتمال رشد (HPG) ، میزبانی را انتخاب میکند که سرعت رشد بهرهوری پردازنده آن بیشترین باشد.
ج: سیاست انتخاب تصادفی (RS)، که به صورت تصادفی تعدادی از ماشینهای مجازی را انتخاب می کند.
برای جایگذاری ماشین های مجازی انتخاب شده، الگوریتم MBFD را ارائه کردهاند که جایگذاری هر ماشین مجازی، میزبانی را از میان میزبانان واجد شرایط انتخاب میکند که اختصاص ماشین مجازی به آن میزبان، کمترین افزایش را در مصرف انرژی داشته باشد.
نتایج شبیه سازی نشان میدهد که هر سه سیاست توانستند مقدار مشابهی از مصرف انرژی را کاهش دهند ولی سیاست MM و RS نسبت به HPG میزان نقض کمتری در توافقنامه سطح سرویس را داشتند؛ و تعداد مهاجرتهای انجام شده MM از دو الگوریتم دیگر کمتر بوده است. یکی از مشکلات روشهای ارائه شده در این مقاله میزان کیفیت ارائه شده است که در بسیاری از مراکز داده قابل قبول نمیباشد. همچنین استفاده از الگوریتم MBFD با کمینه کردن مصرف توان الکتریکی در یک لحظه نمی تواند دلیلی بر کاهش انرژی الکتریکی باشد.
همچنین در ساختار پویای مراکز داده استفاده از مقادیر آستانه از پیش تعیین شده و ایستا راه مناسبی نمی باشد.
Bloglazov و Buyya در سال 2010 [27] کارقبلی خود را بهبود و روش آستانه پویا را ارائه کردندکه بتواند مقدار آستانه را بر اساس رفتار سیستم، تنظیم نماید.
مقدار آستانه پویا را بر اساس دادههایی که از میزان بهرهوری هر ماشین مجازی از پردازنده جمع آوری می شد، به طور خودکار تنظیم کند و نام این سیاست را آستانه وفق پذیر(DT) نامیدند.
آنها با ارائه این روش از یک طرف به میزان زیادی تخطی از توافقنامه سطح سرویس را نسبت به روش های با آستانه ایستا کاهش دهند ولی از طرف دیگر میزان انرژی مصرفی توسط روش DT نسبت به روش های دیگر افزایش قابل توجهی داشت.
در سال 2012 چندین سیاست اکتشافی در جهت ادغام پویای ماشینهای مجازی توسط Bloglazov و Buyya ارائه شدند [28]. در این مقاله مسأله ادغام پویای ماشینهای مجازی به چهار بخش تقسیم شده است: الف) تشخیص میزبانهای فرابار، ب) انتخاب ماشینهای مجازی از میزبانهای فرابار برای مهاجرت؛ ج) نحوه جایگذاری ماشینهای مجازی؛ د) تشخیص میزبانهای فروبار.
در این مقاله برای یافتن میزبانهای فرابار چهار روش ارائه شده است که تمامی آن ها بر اساس استفاده از یک آستانه ی بالای وفق پذیر عمل میکنند. اگر مقدار بهره وری پردازندهی یک میزبان از مقدار آستانه بیشتر شد آن میزبان، فرابار میباشد. تفاوت سیاستهای پیشنهادی در این بخش در نوع تنظیم مقدار آستانه میباشد:
1- سیاست میانه انحراف مطلق
2- سیاست رگرسیون محلی
3- سیاست رگرسیون محلی قوی
4- سیاست بازه میان چارکی.
همگی سیاست ها بر اساس داده های جمع آوری شده از میزان بهرهوری پردازنده در طول حیات ماشینهای مجازی، استفاده کرده و با تحلیل آماری از این داده ها مقدار آستانه را تنظیم می کنند.
در راستای کاهش بار از روی میزبان های فرابار، سه سیاست برای انتخاب ماشین های مجازی ارائه شده است. (1) سیاست کمترین زمان مهاجرت که ماشینی را انتخاب می کند که بر اساس میزان حافظه و پهنای باند شبکه کمترین زمان را در مهاجرت داشته باشد؛ (2) سیاست انتخاب تصادفی؛ (3) سیاست بیشترین همبستگی که در آن با محاسبه همبستگی برای تمامی ماشین های مجازی موجود بر روی میزبان آن ماشینی انتخاب میگردد؛ که بیشترین همبستگی در بهره وری از پردازنده را در کنار دیگر ماشینها داشته باشد. برای جایگذاری ماشینهای مجازی نیز از الگوریتم PABFD استفاده شده است.
برای تشخیص میزبان فروبار نیز به این ترتیب عمل میشود که میزبانی که کمترین میزان بهرهوری از پردازنده را دارد انتخاب شده و پس از انتقال تمامی ماشینهای مجازی موجود بر روی آن به میزبانهای دیگر بخواب میرود و این روند تا جایی که امکان پذیر باشد تکرار میشود.
نتایج شبیهسازی حاصل از ترکیب الگوریتمهای مختلف نشان داد که الگوریتم LR برای تشخیص میزبان فرابار و MMT برای انتخاب ماشین مجازی بهترین نتیجه را داشتهاند.
مشکل اساسی که در این روش و روشهای مشابه آن وجود دارد تعداد بسیار مهاجرت ماشین های مجازی میباشد که اغلب مهاجرتها بیهوده صورت میگیرند. این واقعیت با ارزیابی و مقایسه نتایج این مقاله با راهکارهای پیشنهادی در این رساله در بخش نتایج نشان داده شده است؛ به طور قابل توجهی هم میزان مصرف انرژی و هم میزان تخطی از توافقنامه سطح سرویس در راهکار پیشنهادی در این رساله کاهش داشته است.
Horri و همکاران [43] در سال 2014 روشی نوین به منظور مدیریت منابع سبز را ارائه دادند. در این مقاله روشی ارائه شده که بتواند یک تعامل میان میزان مصرف انرژی و میزان تخطی از توافقات سطح سرویس ایجاد کند که با توجه به نیاز فراهم کننده میتواند در زمانهایی از میزان مصرف انرژی کمتری توسط مرکز داده بهره برده که البته منجر به تخطی از توافقات سطح سرویس به میزان بیشتری خواهد شد؛ همچنین میتوان با انتخاب پارامترهای ارائه شده در کار به شکلی کار کرد که میزان تخطی از توافقات سطح سرویس را به میزان قابل توجهی کاهش داد ولی در ازای آن انرژی به همان نسبت افزایش پیدا خواهد کرد.
در کار ارائه شده دو الگوریتم به یافتن میزبانان فروبار و الگوریتم دیگری به منظور انتخاب ماشینهای میزبان مجازی به عنوان مقصد ماشین مجازی ارائه شده است. در الگوریتم ارائه شده به منظور انتخاب مقصد برای ماشینهای مجازی از میزان شباهت عملکرد میزبانان با ماشین مجازی مذکور استفاده میشود. از همبستگی به منظور میزان وابستگی دو مولفه فوق استفاده شده به شکلی که میزبانی با حداقل میزان شباهت به عملکرد ماشین مجازی مذکور، به عنوان مقصد انتخاب میشود.
الگوریتم ارائه شده به منظور شناسایی میزبانان فروبار علاوه بر استفاده از بهرهوری پردازنده میزبان از تعداد ماشینهای مجازی قرار گرفته بر روی میزبان مذکور نیز به عنوان مولفهای موثر در ادامه سیاست کاری میزبان استفاده میکند. بدین شکل که بهرهوری میزبان و تعداد ماشینهای مجازی مشمول آن هر کدام دارای یک وزن هستند که این وزن با کمک الگوریتم تپه نوردی بهینه شده است.
روش ارائه شده دارای اهمیت به سزایی است بدین دلیل که توانسته است الگوریتمی را ارائه دهد که با توجه به انتظار فراهم کننده و سیاستهای وی میتوان میزان بهای میزان مصرف انرژی و یا کیفیت کارایی ارائه سرویس به کاربران را به صورت نسب تعیین کرد. اما روش فوقالذکر هنوز از بهرهوری پردازنده به عنوان تنها معیار ترکیب ماشینهای مجازی بر روی میزبانان استفاده میکند.
پشتیبانی نیازمندیهای امنیتی برای مدیریت منابع در محیط رایانش ابریJhawar و همکارانشADDIN CSL_CITATION { "citationI--s" : [ { "id" : "ITEM-1", "i--Data" : { "DOI" : "10.1109/ICCSE.2012.32", "ISBN" : "978-1-4673-5165-2", "author" : [ { "dropping-particle" : "", "family" : "Jhawar", "given" : "Ravi", "non-dropping-particle" : "", "parse-names" : false, "suffix" : "" }, { "dropping-particle" : "", "family" : "Piuri", "given" : "Vincenzo", "non-dropping-particle" : "", "parse-names" : false, "suffix" : "" }, { "dropping-particle" : "", "family" : "Samarati", "given" : "Pierangela", "non-dropping-particle" : "", "parse-names" : false, "suffix" : "" } ], "container-title" : "2012 IEEE 15th International Conference on Computational Science and Engineering", "id" : "ITEM-1", "issued" : { "date-parts" : [ [ "2012", "12" ] ] }, "page" : "170-177", "publisher" : "IEEE", "title" : "Supporting Security Requirements for Resource Management in Cloud Computing", "type" : "paper-conference" }, "uris" : [ "http://www.mendeley.com/documents/?uuid=1e29a84f-0dc0-48d2-bad5-6a7f872555b9" ] } ], "mendeley" : { "manualFormatting" : "[32]", "previouslyFormattedCitation" : "[1]" }, "properties" : { "noteIndex" : 0 }, "schema" : "https://github.com/citation-style-language/schema/raw/master/csl-citation.json" }[32] در سال 2012 صورت مسئله مدیریت منابع را توسعه و فرضیات بیشتری از مدیریت منابع را مورد تحلیل، بررسی و استفاده قرار دادند. درکارهای قبلی بهرهوری پردازنده به عنوان تنها پارامتر تاثیرگذار در نظر گرفته میشد و مواردی چون حافظه، هزینه انتقال داده در شبکه و ... لحاظ نشدهاند. نویسندگان برای رسیدن به این هدف سه پارامتر جایگذاری در سطوح سراسری، زیرساخت و برنامه برای ماشینهای مجازی را در نظر گرفتهاند. در سطح زیرساخت دو پارامتر Forbid و Count تعریف شده اند که به ترتیب ممنوعیت جایگذاری ماشینهای مجازی خاص، روی میزبانان خاص و دیگری حداکثر تعداد ماشینهای مجازی دارای مجوز قرار گیری بر روی میزبان خاص را مشخص می کند. در سطح برنامه نیز، از سه پارامتر محدودیت، توزیع و تأخیر استفاده شده است. محدودیت، محدودیت هایی را برای اجرای ماشینهای مجازی خاص بر روی میزبانهای خاص تعریف میکند. توزیع، محدودیت هایی برای عدم قرارگیری دوماشین مجازی خاص درون یک میزبان به صورت همزمان تعریف میکند و در نهایت تأخیر، حداکثر میزان تاخیر ارتباط بین دو ماشین مجازی خاص را مشخص می کند.
در این کار انواع مختلفی از نیازمندیها توسط نویسندگان تعریف شده و از یک روش ابتکاری جهت ارائه ماشینهای مجازی بر روی میزبانان استفاده میشود. روش مذکور به ادعای نویسندگان، اولین گام به سمت در نظر گرفتن جامع نیازمندی های امنیتی در سناریو محیط های رایانش ابری است[32].
کار ارائه شده هیچ پیاده سازی عملی را نداشته و تنها در سطح انتزاعی اقدام به تعریف محدودیت و اصولی برای رعایت اصول امنیتی ماشینهای مجازی در محیط رایانش ابری انجام شده است.
زمانبند شبکه آگاه و انرژی کارای مراکز دادهKliazovich و همکاران [34] در سال 2013 به مسئله مدیریت انرژی در مراکز داده از دیدگاه دیگری را مطرح کردند. آنها خاطر نشان کردند که انرژی مصرفی مراکز داده نه تنها شامل انرژی مصرفی توسط میزبانان است؛ بلکه بخش قابل توجهی از انرژی مصرفی مراکز داده توسط تجهیزات شبکه بوده است. بدین منظور جهت مدیریت انرژی در مرکز داده میبایست میزان توان مصرفی این تجهیزات را مورد توجه قرار داد. علاوه بر این هر مرکز داده میتواند شامل ساختار و توپولوژی متفاوتی باشد به شکلی که معماری مرکز داده مورد نظر در استراتژیهای مدیریت انرژی کارای جریان محاسباتی درون آن بسیار اهمیت دارد. بنابراین علاوه بر مدیریت نرم افزاری جریانهای داده، معماری سخت افزاری نیز در میزان عملکرد بهینه آن در مصرف انرژی بسیار حائر اهمیت است و حتی استراتژی نرم افزاری آگاه از نوع معماری سخت افزاری مرکز داده نیز میتواند در بهبود عملکرد انرژی کارا مفید فایده باشد.
نویسندگان شبیه سازی را تحت عنوان Green Cloud Simulator ارائه دادند که میزان انرژی مصرفی تجهیزات شبکه (سوئیچها) را میتواند محاسبه و ارزیابی نماید.
زمانبند قفسه آگاه در مراکز دادهدر سال 2013 اولین روش هدفمند مدیریت انرژی تجهیزات شبکه مراکز داده توسط Patil و همکاران ارائه شد[36]. نویسندگان با الهام از دو کار ارائه شده قبلی و علم به توان کاهش مصرف انرژی بیشتر با مدیریت تجهیزات شبکهای مانند سوئیچ نسبت به مدیریت پویای ماشینهای مجازی و خاموش سازی ماشینهای بیکار روشی را جهت بهبود جریان کاری به منظور استفاده بهینه از تعداد سوئیچهای مورد استفاده ارائه دادند.
نویسندگان به منظور اثبات مدعای خود با تعریف یک مدل انتزاعی از یک مرکز داده با کمک شبیه سازی Green Cloud Simulator اقدام به بررسی میزان مصرف انرژی الگوریتم خود کردهاند و تمامی اجزای یک مرکز داده از جمله قفسهها، ماژولها و سوئیچها را در نظر گرفتهاند. الگوریتم ارائه شده به منظور اختصاص میزبانی به کارها از یک الگوریتم بسته بندی ساده استفاده شده است بدین شکل که سعی در استفاده از حداقل تعداد قفسه شود. بنابراین برای این منظور قفسهها بر اساس میزان بهرهوری و به صورت نزولی مرتب شده و سعی در جایگذاری کارها درون میزبان با بیشترین بهرهوری ممکن میشود. اما در کار ارائه شده همانند کار ارائه شده قبلی عدم دید منطقی به مدیریت پویای ماشینهای مجازی بر اساس معماری مرکز داده میتوان اشاره کرد و علاوه بر مورد فوق عدم بررسی مناسب میزان تخطی از توافقات سطح سرویس کارهای ارائه شده و عدم بررسی روش ارائه شده در مقیاس مرکز دادهی بزرگ میتوان اشاره کرد.
تمامی روشهای ارائه شده تاکنون از بهرهوری پردازنده به عنوان تنها پارامتر به منظور مدیریت میزبانان و VMها به منظور کاهش مصرف انرژی و کاهش میزان تخطی از توافقات سطح سرویس استفاده کردهاند. اما نکته حائز اهمیت موجود این است که در مراکز داده واقعی مدیریت VMها و نحوه قرارگیری آنها بر روی میزبانان تنها و بدون در نظر گرفتن سایر ویژگیهای VMها و میزبانان و سایر سخت افزارها امکان پذیر نمیباشد و این مسئله خود باعث شده که روشهای ارائه شده تاکنون نتوانند در پیاده سازی و استفاده واقعی چندان مطلوب و کارا باشند. از سوی دیگر معماری مراکز داده و نحوه چینش تجهیزات درون آن یکی مقولههای مهم و اساسی موثر در نحوه بازدهی آنها به حساب میآید که در هیچ یک از کارهای مدیریت انرژی آگاه منابع در فرضیه حل مسئله مورد استفاده قرار گرفته نشدهاند.

فصل سوم الگوریتمهای پیشنهادی
پیش گفتار
در این فصل به شرح الگوریتم نوین ارائه شده به منظور مدیریت پویای ماشینهای مجازی خواهیم پرداخت. منبع علمی مقاله انجام شده شامل دو بخش متفاوت و در یک راستا میباشد. در کار اول تلاش برای کاهش مصرف انرژی با در نظر گرفتن توافقات سطح سرویس و کاهش میزان تخطی از آن، ارائه شده است که شامل سه بخش میباشد. در کار دوم، با بهره گیری از دیدگاهی کلانتر، اقدام به ارائه نمونهای بهبود یافته از شبیهساز CloudSim کرده ایم؛ به شکلی که شبیهساز علاوه بر مدیریت میزبانان درون مراکز داده، اقدام به مدیریت منابع و سایر تجهیزات مراکز داده(از قبیل سوئیچ ها) و پارامترهای ارزیابی آنها میکند.
ترکیب پویای ماشینهای مجازی به منظورکاهش مصرف انرژی با در نظر گرفتن توافقات سطح سرویسهمانطور در فصل گذشته گفته شد، در کار ارائه شده توسط Buyya و همکاران[28] به منظور انجام محاسبات سبز، روشی که شامل چهار بخش زیر است، ارائه شده است:
1) شناسایی میزبانان فرابار
2) شناسایی میزبانان فروبار
3) انتخاب ماشینهای مجازی از میزبانان فرابار و
4) جایگذاری ماشینهای انتخاب شده
شکل 3-1 نمودار جریانروش ارائه شده را مشاهده میکنید.
در چندین سال اخیر الگوریتمهای متعددی [39]،[40]،[41] ،[42] و [43] با سیاستهای مختلف به منظور کاهش مصرف انرژی و تبعیت از توافقات سطح سرویس ارائه شده است. اما همه روشهای ارائه شده تا پیش از این روش تنها بر اساس میزان بهرهوری پردازنده میزبانان و میزان بهرهوری ماشینهای مجازی اقدام به تصمیم گیری در هر چهار بخش فوق الذکر کردهاند.
ایراد بسیار بزرگی به همه کارهای ارائه شده توسط شبیه ساز تا بدین روز وارد است چرا که با توجه به دریافت نتایج مطلوب توسط برخی از الگوریتمهای ارائه شده در محیط شبیه ساز به هیچ وجه تضمینی به منظور دریافت نتایجی یکسان، درون محیط واقعی رایانش ابری نخواهد بود؛ چرا که در محیط واقعی علاوه بر بهره وری پردازنده، پارامترهای دیگری از قبیل بهرهوری حافظه اصلی، دیسک و بار شبکه نیز بسیار حائز اهمیت هستند. با توجه به وجود نیاز آشکار به ارزیابی و تصمیم گیری بر اساس برخی از این پارامترها در کارهای پیشین ارائه شده با ساده سازی صورت مسئله تلاش در حل هر چه سادهتر مسئله شده است.

شکل 3-1 نمودار جریان روش ارائه شدهاز دلایل ساده سازی مسئله میتوان به دو نکته حائز اهمیت اشاره کرد. اولین دلیل آنها برخط بودن تصمیم گیریها در مدیریت منابع، نیاز به تصمیم گیری هر چه سریع تر است. دومین دلیل نیز که تکمیل کننده دلیل اول است و به منظور کاهش زمان اجرا و ساده سازی فرضیات مسئله، میزان بهرهوری حافظه اصلی را وابسته به میزان بهرهوری پردازنده در نظر گرفتهاند که در ادامه خواهیم دید که این فرضیه از ریشه نادرست است و کاملا به نوع برنامههای در حال اجرای درون ماشینهای مجازی وابسته است و این برنامهها نیز در زمان اجرا کاملا متغیر خواهند بود. به عبارتی دیگر فرضیه پیشین تنها در تعداد محدودی از حالات صحیح خواهد بود؛ هر چند در همین حالات نیز ممکن است همان برنامه ها در دورههای بعدی اجرا، سیاست و عملکرد متفاوتی را از خود نشان دهند.
به منظور اثبات مدعای خود اقدام به بررسی بارکاری استاندارد استفاده شده در همه کارهای پیشین میپردازیم. در همه کارهای پیشین ارائه شده از بارکاری comon [51] استفاده شده است. این بارکاری شامل اطلاعات زیادی از ماشینهای مجازی و میزبانان مختلف در طول 24 ساعت به ازای هر 5 دقیقه میباشد. اما همانطور که گفته شد در کارهای پیشین تنها از بهرهوری پردازنده به منظور ارزیابی استفاده شده است. اما این عمل یک نقیصه به حساب میآید؛ چراکه احتمال انتخاب مقصدی برای ماشین مجازی خاصی با تصمیم گیری بر اساس بهرهوری پردازنده میتواند منجر به خطای اجرای ماشین مجازی مورد نظر شود به شکلی که ظرفیت حافظه اصلی میزبان مقصدِ ماشین مجازی مذکور، به منظور جایگذاری، کافی نباشد و در نتیجه منجر به خطای توافق سطح سرویس و توقف اجرای برنامه مشتری مذکور میشود.
از سوی دیگر در هنگام کوچ ماشینهای مجازی به منظور فرار از وضعیت فرابار نیز تصمیم گیری تنها بر مبنای بهرهوری پردازنده نیز کار کاملا صحیحی نمیباشد؛ چراکه ممکن است میزبانی از لحاظ حافظه اصلی و یا پردازنده و یا هر دو معیار دچار وضعیت فرابار شود. در نتیجه بر اساس نوع فرابار شدن میزبان میبایست سیاست مناسب را جهت انتخاب ماشین مجازی مناسب جهت کوچ انتخاب کرد.
ارتباط بین بهرهوری پردازنده و حافظه اصلیبه منظور اثبات گفتههای انجام شده و اطمینان از صحت منطق روش ارائه شده در ابتدا اقدام به بررسی میزان وابستگی بهرهوری پردازنده و حافظه اصلی میپردازیم. به منظور ارزیابی میزان وابستگی بهرهوری پردازنده و حافظه اصلی از همبستگی استفاده میکنیم. بدین شکل که به ازای هر ماشین مجازی، میزان بهرهوری پردازنده و حافظه اصلی ماشین مجازی در طول 24 ساعت را به صورت نمودار نمایش داده و میزان وابستگی این دو نمودار را با کمک همبستگی محاسبه میکنیم. به منظور ارزیابی هر چه دقیقتر، اقدام به ارزیابی همه ماشینهای مجازی موجود درون بارکاری معرفی شده کردهایم که نتایج آن در شکل 3-2 مشاهده میشود. همانطور که مشخص شده است حدود 93% ماشینهای مجازی میزان وابستگی بهرهوری پردازنده و حافظه اصلی آنها کمتر از 10% است.

شکل 3-2 میزان وابستگی بهرهوری پردازنده و حافظه اصلی ماشینهای مجازیشناسایی میزبانان فروباربه منظور شناسایی میزبانان فروبار از ترکیب روش ارائه شده در[28] و[38] FFDSUM (رابطه 3-1) به منظور ارزیابی هر دو پارامتر پردازنده و حافظه اصلی استفاده شده است به شکلی که این الگوریتم میتواند در سناریو واقعی مورد استفاده قرار بگیرد.
UTHi=α.CPUHi+(1-α).MEMHiWhere 0 <α<1 (1)
در رابطه 3-1 CPUHi مقدار بهرهوری پردازنده میزبان i ام و MEMHi میزان بهرهوری حافظه اصلی میزبان i ام را نشان میدهد. رابطه 3-1 به منظور شناسایی میزبانی به عنوان فروبار از ترکیبی از میزان بهرهوری حاظه اصلی و پردازنده استفاده میکند که درصد تاثیر هر کدام با استفاده از α مشخص شده است. مقدار بهینه α نیز با کمک روش تپه نوردی محاسبه شده است. الگوریتم زیر به صورت دورهای به منظور شناسایی میزبانان فروبار مورد استفاده قرار میگیرد:
محاسبه UTHi به ازای همه میزبانان
انتخاب میزبان با کمترین UTHi به عنوان کاندید میزبان فروبار، برای کوچ همه ماشینهای مجازی درون آن. اگر دو و یا چند ماشین دارای کمترین UTHi بودند، یکی از آنها را به صورت تصادفی انتخاب میکنیم.
اگر با کوچ همه ماشینهای مجازی روی میزبان کاندید، سرباری درون سایر میزبانان بوجود آمد، عملیات را رها کن.
کوچ همه ماشینهای مجازی درون میزبان کاندید، با استفاده از الگوریتم جایگذاری ماشینهای مجازی (بخش بعد را ببینید) و سپس میزبان کاندید به حالت خاموش تغییر وضعیت میدهد.
روش ارائه شده در مقایسه با کارهای قبلی ارائه شده [39]،[40]،[41] ،[42] و [43] مزایای زیر را دارد:
در این تکنیک از بهرهوری حافظه اصلی نیز به منظور ارزیابی استفاده شده است؛ در حالی که در تکنیکهای پیشین ارائه شده تنها از بهرهوری پردازنده استفاده شده است و برای سناریو واقعی مناسب نیستند. استفاده از بهرهوری حافظه اصلی در شناسایی میزبانان فروبار منجر به کاهش تعداد کوچ ماشینهای مجازی شده و در نتیجه باعث کاهش تخطی از توافق سطح سرویس و انرژی مصرفی میشود. در کوچ زنده ماشینهای مجازی باید همه حافظه ماشین مجازی به میزبان مقصد انتقال یابند و در نتیجه روش ارائه شده، ترافیک شبکه و تعداد کوچ ماشینهای مجازی را کاهش میدهد.
جایگذاری ماشینهای مجازیدر این منبع علمی مقاله به منظور جایگذری ماشینهای مجازی که به عنوان کوچ انتخاب شدهاند دو الگوریتم ارائه شده است. در این بخش نیز همانند روش پیشین از هر دو پارامتر بهره وری پردازنده و بهره وری حافظه اصلی استفاده شده است. روشهای بسته بندی میتوانند به منظور تطبیق ماشینهای مجازی به ماشینهای فیزیکی استفاده شود. به شکلی که میزبانان به عنوان سطل ها و ماشینهای مجازی به عنوان اشیائی که درون سطلها قرار میگیرند، در نظر گرفته میشوند[44].
در روش قبلی ارائه شده به دلیل استفاده از بهرهوری پردازنده به عنوان تنها پارامتر ارزیابی از بسته بندی یک بعدی برای حل مساله استفاده شده است. یکی از قابل توجه ترین روشهای اکتشافی ارائه شده به منظور بسته بندی یک بعدی استفاده از الگوریتم حریصانه است به شکلی که ماشینهای مجازی به صورت نزولی و بر اساس بهره وری پردازنده مرتب شده و به ترتیب در اولین میزبانی که فضای کافی برای ماشین مجازی مذکور داد قرار میگیرند. این روش اغلب به عنوان جایگذاری در اولین بهترین(FFD) نامیده میشود که در بیشتر کارهای قبلی ارائه شده [39]،[40]،[41]،[42] و [43] از نسخههای مختلف آن استفاده شده است. اما در این کار به دلیل استفاده از پارامترهای بهرهوری پردازنده و حافظه اصلی دیگر نمیتوان از بسته بندی یک بعدی یاری جست. در نتیجه به منظور حل مساله فوق از بسته بندی دو بعدی استفاده شده است.
روشهای مختلفی از نسخه FFD برای بسته بندی در محیط دو بعدی وجود دارند. در این مطالعه ما دو روش از آنها را مورد ارزیابی قرار دادهایم.
wI= i≤dIi (FFDProd) (3-2)
wI= i≤daiIi FFDSum (3-3)
در رابطههای فوق a یک بردار به شکل a = a1,…, ad است. این بردار دو هدف را دنبال میکند. اول، این بردار نیاز به نرمال سازی و تراز کردن ابعاد را دارد. دوم، اینکه معادلات وزن دهی تقاضاها بر اساس اهمیت و یا همسایگی حقیقی آنها به منظور جایگذاری را انجام میدهند.
به آسانی میتوان نشان داد که الگوریتم FFD برای بیشتر ورودیها عملا بسیار ضعیف عمل میکند. به عنوان مثال، با در نظر گرفتن چندین نمونه از ماشین مجازی که نیمی از آنها دارای بهرهوری حافظه اصلی 30% و پردازنده 15% هستند و نیمی دیگر از ماشینهای مجازی دارای بهرهوری حافظه اصلی 15% و پردازنده 30% میتوان این قضیه را نشان داد. در حالت راه حل بهینه چهار ماشین مجازی درون یک میزبان قرار میگیرند(دو ماشین مجازی از هر نمونه). در حالی که روش FFD احتمالا سه ماشین مجازی را درون یک میزبان قرار میدهد. این مثال میتواند یک وضعیت بد جایگذاری ماشینهای مجازی دورن میزبانان را نمایش دهد. این نوع از حالات ممکن است که در سناریو واقعی رخ دهد. به عنوان نمونه محاسبات علمی نیاز زیادی به پردازنده و نیاز کمی به ورودی/خروجی دارند؛ در حالی که وب سرورها نیازهایی تقریبا عکس این را دارند. لذا باید روشی ارائه دهیم که همه فضای احتمالی رخ داده برای ماشینهای مجازی را در نظر گرفته باشد.
بسته بندی برداری
این روش اکتشافی به منظور حداکثر سازی ضرب نقطهای بین بردار ظرفیت خالی میزبان و بردار تقاضای ماشین مجازی تعریف شده است[45].
Dot-Product=maxCPUVMi×1-CPUPMj+MEMVMi×1-MEMPMj,VMi in MigrationList, Hostj in HostList (3-4)
در رابطه 3-4 CPUVMi و MEMVMi به ترتیب میزان بهرهوری پردازنده و حافظه اصلی ماشین مجازی i ام؛ همچنین CPUPMj و MEMPMj میزان بهرهوری پردازنده و حافظه اصلی ماشین مجازی j ام میباشد.
بسته بندی بر اساس تناسب(PBP) ابعاد
روش بسته بندی بر اساس تناسب(PBP) حالت بهبود یافتهای از روش بسته بندی برداری است. رابطه 5 روشی نوین است که به منظور جایگذاری ماشینهای مجازی آنرا ارائه دادهایم.
PBP=max(CPUHostj+CPUVMi)- (CPUPMj+CPUVMi)- (MEMPMj+MEMVMi) , VMi in MigrationList, Hostj in HostList ) 3-5
بر اساس رابطه فوق، روش ما هر ماشین مجازی به میزبان j ام کوچ میکند، اگر و فقط اگر PBP متعلق به آن، دارای بیشترین مقدار برای میزبان j ام باشد. روش PBP در الگوریتمهای 3-1 و 3-2 نمایش داده شده است.
الگوریتم 3-1 جایگذاری ماشینهای مجازی با PBP
Input: VmsToMigrateList
Input: HostList
Output: MigrationMap
1: Sort VmsToMigrateList By FFD_Sum (Decreasing)
2: foreach(Vmi in VmsToMigrateList)
3: DestinationHost= FindHostForVM2D(Vmi)
4: if (DestinationHost != null)
5: Add (Vmi DestinationHost) to MigrationMap
6: end if
7: end foreach
8: return MigrationMap
الگوریتم 3-2 جستجوی میزبان برای ماشین مجازی
Input: Vmi
Output: AllocatedHost
1: Sort HostList By FFD_Sum (Decreasing)
2: foreach(Hostj in HostList)
3: if (Suitable(Vmi, Hostj))
4: Value= ProportionalityBasedPacking (Vmi, Hostj)
5: if (Value > Max)
6: DestinationHost = Hostj
7: Max = Value
8: end if
9: end if
10:end foreach

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *