ادغام پویای ماشین های مجازی در مراکز داده- قسمت ۱۰

Servers

با توجه به ساختار مرکز داده (دولایه ای، سه لایه ای و …) میتوان میزان هزینه انتقال ماشینهای مجازی را به صورت دقیق محاسبه کرد. حال اگر بتوان بار کاری موجود را در تعداد کمتری قفسه و جایگذاری قفسهها در تعداد کمتری ماژول انجام داد، باعث کاهش مصرف انرژی به دلیل کاهش تعداد سوئیچهای درگیر خواهد شد و از سوی دیگر هزینه کوچ زنده ماشینهای مجازی (به دلیل کاهش تعداد سطوح انتقال) نیز کاهش خواهد یافت. اما این کل کاری که میتوان با مدیریت همه جانبه منابع مرکز داده انجام داد، نمیباشد. درون هر مرکز داده تجهیزات خنک کننده درون قفسه و محیط نیز در مصرف انرژی نقش بسیار مهمی ایفا میکنند[۳۵]. به عنوان نمونه قفسههای HP حاوی ۱۰ خنک کننده است که به طور میانگین حدود ۵۰۰ وات انرژی مصرف میکنند[۳۵]. Interconnected bay ها هم که میزبانان را به قفسهها متصل میکنند حدود ۱۳۳ وات انرژی مصرف میکنند. این گونه مصارف انرژی را حتی در زمانهایی که میزبانان را که هم در حالت خاموش قرار دارند وجود دارد. با استفاده بهینه و یا خاموش کردن برخی از سخت افزارها باعث کاهش مصرف انرژی خواهد شد[۳۵]. خاموش سازی قفسهها را با کمک تکنیک PDU از راه دور مثل APC’s Switched Rack PDU میتوان انجام داد[۳۵].
در کارهای پیشین، چیدمان، تعداد و محل قرار گیری میزبانان به هیچ وجه در نظر گرفته نشده است. در سیاست بخواب بردن میزبانان، میتوان در سطح قفسه و در سطح ماژول نیز تعمیم داد. در شکل ۳-۴ میزان و نحوه توزیع انرژی مصرفی در یک مرکز داده را نشان میدهد و مشخص میکند که میزان قابل توجهی از انرژی مصرفی در هر مرکز داده توسط سیستمهای خنک کننده، چراغها، ناکارآمدی UPSها و تجهیزات ارتباطی و … مورد مصرف قرار میگیرد[۴۹]. به عنوان نمونه سیستمهای خنک کننده در مراکز داده به تنهایی مسئولیت مصرف ۳۸ درصد از انرژی مصرفی هر مرکز داده را بر عهده دارد. در شکل ۳-۵ نیز میزان هزینههای مورد نیاز بخشهای مختلف در مرکز داده نشان داده شده است[۴۹].
شکل ۳-۴ انرژی مصرفی درون یک مرکز داده[۴۹]
شکل ۳-۵ هزینه ماهیانه یک مرکز داده متعلق به [۴۹]
بدین رو با خاموش سازی تمامی میزبانان درون یک قفسه و یا یک مرکز داده میتوان کلیه تجهیزات جانبی بخش مذکور را نیز از مدار مصرف انرژی خارج کرده و در نتیجه انرژی مصرفی کلی مرکز داده را کاهش داد. به عنوان مثال هر گاه در یک مرکز داده چندین قفسه با بهرهوری پایین(میزبانان با وضعیت فروبار و یا نزدیک فروبار) در حالت فعال قرار دارند؛ این امکان وجود خواهد داشت که بار کاری درون این قفسه ها را به صورت متمرکز درون یک و یا تعداد کمتری قفسه تجمیع کرده و میزان مصرف انرژی کلی را به دلیل خاموش سازی سایر تجهیزات قفسه و یا حتی ماژول های غیر فعال شده را کاهش داد؛ که این خود منجر به کاهش مصرف انرژی سوئیچهای سطوح بالاتر خواهد شد. در حل حاضر کاهش مصرف انرژی سیستمهای خنک کننده چالشی بزرگ محسوب میشود و میتوانیم با مجموعه سیاستهای مطرح شده به شکل قابل توجهی انرژی مصرفی آنها را کاهش داد. با توجه به ایدهها و چشم اندازهای پیش رو و ساختارمند کردن مدیریت بخشهای مختلف منابع میبایست منابع را به صورت سلسله مراتبی از پایینترین سطح (قفسهها و ماژولها) تا بالاترین سطح (مراکز داده) مدیریت کرد و یا اولویت انتقالات و جایگذاری ها را به ترتیب ذکر شده انجام داد.
توسعه شبیه ساز CloudSim
درون شبیه ساز CloudSim قابلیت ایجاد و تعریف مراکز داده، میزبانان وجود دارد؛ اما سایر تجهیزات و اجزای مرکز از قبیل سوئیچها، تجزیه بخشهای مختلف مرکز داده از قبیل مرکز داده کوچک[۴۹]، قفسهها تعریف نشده است.
بدین منظور برای ارائه و پیاده سازی سیستمی جهت مدیریت همه منظوره اجزای مرکز داده انتزاعات زیر را به شبیه ساز CloudSim اضافه کردهایم:
ایجاد شئ سوئیچ
ایجاد شئ قفسه
ایجاد شئ مرکز داده کوچک
ایجاد شئ واسط میان اشیاء بالا با میزبانان
ایجاد شئ محاسبه انرژی مصرفی سوئیچها
ایجاد شئ تشخیص سربار قفسهها و مراکز داده کوچک
الگوریتمهای ارائه شده برای معماری موجود
در این بخش اقدام به ارائه مدیریت پویای ماشینهای مجازی بر اساس معماری فوقالذکر خواهیم پرداخت به شکلی بر خلاف تمامی کارهای قبلی انجام شده سعی در کاهش مصرف انرژی میزبانان و سوئیچهای درون مراکز داده خواهیم پرداخت. بدین منظور میبایست به ترتیب سلسله مراتبی از کوچکترین واحد (میزبان) تا بزرگترین واحد(مرکز داده) مورد استفاده قرار بگیرد. در تحقیق انجام شده اقدام به ارائه سه الگوریتم به منظور مدیریت سلسله مراتبی منابع برای سه بخش شناسایی میزبانان، قفسهها و مراکز داده کوچک فرابار، شناسایی میزبانان، قفسهها و مراکز داده کوچک فروبار و جایگذاری سلسله مراتبی ماشینهای مجازی درون میزبانان، قفسهها و مراکز داده کوچک ارائه شده است.
یافتن میزبانان، قفسهها و مراکز داده کوچک فروبار
روش ارائه شده به منظور شناسایی مولفههای فروبار در الگوریتم ۳-۴ و شکل ۳-۶ ارائه شده است. در اولین گام تعداد مراکز داده کوچک، قفسهها و میزبانان فعال مورد نیاز را بر اساس بهرهوری فعلی مرکز داده تخمین میزنیم. سپس سعی در خاموش سازی همه مولفههای باقی مانده مرکز داده خواهیم کرد. ابتدا لیست همه میزبانان سایر مولفهها را تهیه (excludedHostsForFindingNewVmPlacement) میکنیم. همه ماشینهای مجازی از سایر میزبانان درون
مولفههای کاندید خاموش شدن را انتخاب و در لیست vmsToMigrateFromUnderUtilizedHost اضافه و مقصدی برای هر یک انتخاب میکنیم.

منبع فایل کامل این پایان نامه این سایت pipaf.ir است

الگوریتم ۳-۴ شناسایی سلسله مراتبی میزبانان فروبار
Input: OverUtilizedHostsList
Output: MigrationMapList
۱: MinActiveMDC = ComputeMinMDCs();
۲: MinActiveRack = ComputeMinRacks();
۳: MinActiveHost = ComputeMinHosts();
۴: MDCList.SortDecreasingBasedOnUtilization();
۵: RackList.SortDecreasingBasedOnUtilization();
۶: HostList.SortDecreasingBasedOnUtilization();
۷: MigrationMapList = null;
۸: while (MigrationMapList == null )
۹: if (MinActiveMDC >= 2 )