دانشکده مهندسي برق و کامپيوتر
پايان نامه کارشناسي ارشد در رشته مهندسي کامپيوتر(نرم افزار)
ادغام پوياي ماشينهاي مجازي در مراکز داده
به کوشش
علي اصغر رحمانيان کوشککي
استاد راهنما
دکتر غلامحسين دستغيبي فرد
شهريور 1393
به نام خدا
ادغام پوياي ماشينهاي مجازي در مراکز داده
به وسيلهي:
علي اصغر رحمانيان کوشککي
پايان نامه
ارائه شده به تحصيلات تکميلي دانشگاه به عنوان بخشي
از فعاليتهاي تحصيلي لازم براي اخذ درجه کارشناسي ارشد
در رشته:
مهندسي کامپيوتر- نرم افزار
از دانشگاه شيراز
شيراز
جمهوري اسلامي ايران
ارزيابي شده توسط کميته پايان نامه با درجه: عالي
دکتر غلامحسين دستغيبي فرد، دانشيار بخش مهندسي و علوم کامپيوتر(راهنما)…………………………………….
دکتر فرشاد خونجوش، استاديار بخش مهندسي و علوم کامپيوتر(مشاور)…………………………………………………..
دکتر مصطفي فخراحمد، استاديار بخش مهندسي و علوم کامپيوتر(داور)…………………………………………………..
شهريور 93
اظهار نامه

اينجانب علياصغر رحمانيان کوشککي(9130200) دانشجوي رشته مهندسي کامپيوتر گرايش نرمافزار دانشکده مهندسي برق و کامپيوتر اظهار ميکنم که اين پايان نامه حاصل پژوهش خودم بوده و در جاهايي که از منابع علمي ديگر استفاده شده است، نشاني دقيق و مشخصات کامل آن ذکر شده است. همچنين اينجانب اظهار ميکنم که تحقيق و موضوع پاياننامهام تکراري نبوده و تعهد مينمايم که بدون مجوز دانشگاه دستاوردهاي حاصل شده را منتشر ننموده و يا در اختيار غيره قرار ندهم. کليه حقوق اين اثر مطابق با آيين نامه مالکيت فکري و معنوي متعلق به دانشگاه شيراز است.
تقديم به مادرم:
مادرم،
آنکه آفتاب مهرش در آستانه قلبم، همچنان پابرجاست و هرگز غروب نخواهد کند.
سپاسگزاري
اينجانب بر خود واجب ميدانم که از حمايتهاي بي دريغ استاد راهنماي ارجمندم، جناب دکتر غلامحسين دستغيبيفرد و همچنين استاد مشاور جناب دکتر فرشاد خونجوش که در طول انجام پروژه همواره مشوق و حامي من بودهاند؛ و از جناب آقاي عباس حرّي نيز که در طول پروژه همراه من بوده و راهنماييها و همکاريهاي ايشان بسيار بهره بردهام کمال تشکر و قدرداني را به جا آورم. همچنين از اعضاي خانوادهام که هميشه مشوّق من بودهاند نيز بسيار سپاسگزارم.
چکيده
امروزه براي پياده سازي رايانش ابري از مراکز داده اي بزرگ استفاده ميکنند. مراکز دادهاي بزرگ از صدها ميزبان محاسباتي و دهها سوئيچ و ساير تجهيزات شبکه تشکيل شده است که روزانه انرژي زيادي مصرف ميکنند بطوريکه پيش بيني ميشود که مصرف انرژي مراکز داده در سال 2020 به 139.8 تراوات در ساعت خواهد رسيد. روش هاي مختلفي چون مديريت ايستا و پوياي ماشينهاي مجازي و سيستم تنظيم خودکار فرکانس پردازنده براي کاهش انرژي ارائه شده است. در اين پايان نامه براي کاهش انرژي مراکز داده دو الگوريتم مديريت پوياي ماشينهاي مجازي و مديريت سلسله مراتبي مراکز داده پيشنهاد شده است که نسبت به روش هاي قبلي، انرژي مصرفي ميزبانان و سوئيچها و ميزان تخطي ازSLA را کاهش داده است.
کلمات کليدي: رايانش ابري، مرکز داده، ادغام پوياي ماشين مجازي
فهرست مطالب
فصل اول پيشگفتار2
1-1-مقدمه3
1-2-ادغام پوياي ماشين هاي مجازي در راستاي مصرف کارآمد انرژي4
1-3-اهداف رساله7
1-4-ساختار پايان نامه7
فصل دوم مباني نظري تحقيق و کارهاي پيشين8
2-1-مقدمه9
2-2-راهکارهاي ارائه شده در مديريتِ کارآمد توان و انرژي9
2-3-زمان بندي ماشين هاي مجازي با آگاهي از توان الکتريکي و گرما12
2-4-روشهاي اکتشافيِ آگاه از انرژي در تخصيص منابع13
2-5-پشتيباني نيازمنديهاي امنيتي براي مديريت منابع در محيط رايانش ابري18
2-6-زمانبند شبکه آگاه و انرژي کاراي مراکز داده19
2-7-زمانبند قفسه آگاه در مراکز داده19
فصل سوم الگوريتم هاي پيشنهادي21
3-1-پيش گفتار22
3-2-ترکيب پوياي ماشينهاي مجازي به منظورکاهش مصرف انرژي با در نظر گرفتن توافقات سطح سرويس22
3-2-1-ارتباط بين بهرهوري پردازنده و حافظه اصلي24
3-2-2-شناسايي ميزبانان فروبار25
3-2-3-جايگذاري ماشينهاي مجازي26
3-2-4-انتخاب ماشينهاي مجازي29
3-2-5-تشخيص ميزبانان فرابار30
3-3-الگوريتم پيشنهادي مديريت سلسله مراتبي مراکز داده با در نظر گرفتن معماري مراکز داده و تجهيزات شبکه30
3-3-1-تشريح مسئله31
3-3-2-توسعه شبيه ساز CloudSim35
3-3-3-الگوريتمهاي ارائه شده براي معماري موجود35
فصل چهارم پياده سازي و ارزيابي الگوريتمهايپيشنهادي41
4-1-مقدمه42
4-2-شبيه ساز CloudSim42
4-3-بستر آزمايشي42
4-3-1-بارکاري43
4-4-نتايج ترکيب پوياي ماشينهاي مجازي به منظورکاهش مصرف انرژي با در نظر گرفتن توافقات سطح سرويس43
4-5-کارهاي آينده50
مراجع و منابع51

فهرست شکل ها
شکل1-1 ميزان مصرف انرژي مراکز داده جهان از سال 2000 تا 2010 3
شکل 1-2 نگاه سيستم از بالا به پايين6
شکل 2-1 طبقه بندي سطح بالاي مديريت توان و انرژي الکتريکي9
شکل 3-1 نمودار جريان روش ارائه شده23
شکل 3-2 ميزان وابستگي بهره وري پردازنده و حافظه اصلي ماشينهاي مجازي25
شکل 3-3 يک مرکز داده اي سه لايه32
شکل 3-4 انرژي مصرفي درون يک مرکز داده34
شکل 3-5 هزينه ماهيانه يک مرکز داده34
شکل 3-6 شناسايي ميزبانان، قفسهها و مراکز داده کوچک فروبار37
شکل 3-7 جايگذاري سلسله مراتبي VMها40
شکل 4-1 مصرف انرژي45
شکل 4-2 تخطي از توافقات سطح سرويس45
شکل 4-3 تعداد کوچ ماشينهاي مجازي46
شکل 4-4 تعداد خاموش شدن ميزبانان46
شکل 4-5 ميزان تخطي از توافقات سطح سرويس بر اساس ميزبانان فعال47
شکل 4-6 ميزان مصرف انرژي سوئيچ ها48
فهرست جداول
جدول 3-1 تجهيزات اساسي درون مرکز داده 32
جدول 3-2 سهم مصرف انرژي تجهيزات بر اساس نحوه توزيع انرژي مصرفي 33
جدول 4-1 مشخصات سخت افزاري ميزبانان42
جدول 4-2 مشخصات ماشين هاي مجازي استفاده شده براي شبيه سازي43
جدول 4-3 تعداد VM ها درون بارکاري43
جدول 4-4 نتايج نهايي شبيه سازي 44
جدول 4-5- نتايج نهايي شبيه سازي مديريت سلسله مراتبي منابع 47
فصل اول پيشگفتار

مقدمه
رايانش ابري1با توانايي در ارائه خدمات رايانشي بر حسب تقاضا، تحول عظيمي در فنآوري اطلاعات و ارتباطات2 (ICT) به وجود آورده است. سازمانها مي توانند از يک ديد با سپردن منابع رايانشي مورد نياز خود به ابر، از سرمايه گذاري بسيار در فراهم آوري زيرساخت هاي رايانشي به صورت خصوصي و به دنبال آن هزينه هاي نگهداري و به روز رساني آن ها جلوگيري کنند؛ و از ديد ديگر مي توانند با ساخت يک ابر خصوصي3 (يا به عبارت ديگر، مرکز داده4خصوصي)، در مديريت منابع و تأمين فرآيند هاي سازمان خود پيشرفت نمايند.
ازدياد روز افزون استفاده از سرويس هاي رايانش ابري به دليل مزاياي آن، باعث ايجاد مراکز داده اي با مقياس بزرگ در نقاط مختلف جهان شده است که هر کدام متشکل از هزاران سرور مي باشند. با اين وجود، مراکز داده مقادير زيادي از انرژي الکتريکي را مصرف کرده که نتيجه آن، هزينه بالاي عملياتي و انتشار دي اکسيدکربن در محيط زيست مي باشد. همانطور که در شکل 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) 5پياده سازي شده است.DVFS ، اجازه تنظيم پوياي ميزان ولتاژ و فرکانس پردازنده را بر اساس ميزان تقاضاي منابع در هر زمان، ميدهد. به عنوان نتيجه اين امر، پردازنده هاي موجود در رايانه هاي رو ميزي و سرورها، در حالت هاي کم قدرت مي توانند مصرفي کمتر از 30 درصد از حداکثر مصرف خود را داشته باشند؛ که اين دليلي بر دامنه 70 درصديِ توان الکتريکي پويا در پردازنده ميباشد[3] .
ميزان انرژي مصرفي پردازنده ميزبانان بسيار حائز اهميتتر از ساير مولفههاي ميزبانان است. به عنوان مثال بازههاي زماني مورد استفاده شدن از ساير اجزاي ميزبانان بدين قرار است: کمتر از 50% براي حافظه با دسترسي تصادفي پويا (DRAM) 6،25% براي ديسک درايوها 715% سوئيچ هاي شبکه 8و مقادير ناچيزي براي ديگر اجزاء است[4]. دليل اين مسئله اين است که فقط پردازنده ها از حالت هاي کم مصرف پشتيباني ميکنند و بقيه اجزا يا به طور کامل و يا قسمتي از آن ها بايد خاموش شود؛ ضمناً سربار زيادي بر روي عملکرد اجزاء سخت افزاري، در تغيير حالت از فعال به غير فعال و بر عکس، وجود دارد. براي مثال يک ديسک درايو در حالت خواب عميق9، تقريبا هيچ برقي مصرف نميکند؛ اما تغيير حالت آن به حالت فعال، تأخيري معادل با 1000 برابر يک دسترسي معمولي ايجاد ميکند. اتلاف انرژي در اجزاي سرور (غير از پردازنده) در زمان هايي که سرور کاري براي انجام دادن ندارد باعث مي شود که بازه توان مصرفي پوياي کل سرور کوچکتر شود که اين مقدار حدوداً 30% ميباشد. به عبارت ديگر حتي در زماني که يک سرور کاملا بيکار است حدوداً 70% از اوج برق مصرفي خود را استفاده ميکند.
يکي از روشهاي بهبود ميزان بهره وري از منابع و کاهش مصرف انرژي، که کارآمد بودن آن در اين مسير اثبات شده است؛ ادغام پوياي ماشين هاي مجازي مي باشد [5, 6, 7, 8, 9]. مجازي سازي به فراهم آورندگان ابر، اين اجازه را ميدهد که با اجراي چندين ماشين مجازي بر روي يک سرور، استفاده از منابع را بهينه کرده و ميزان سود خود را افزايش دهند. کاهش مصرف انرژي الکتريکي با قرار دادن سرور هاي بيکار در حالت هاي کم مصرف انرژي، مثل خواب و به دنبال آن حذف توان مصرفي ايستا10 امکان پذير است. همانطور در که در شکل 1-2 نشان داده شده است با بهرهگيري از مجازي سازي امکان اجراي چندين ماشين مجازي بر روي يک ميزبان فراهم شده است و بدين شکل زمانهايي که ميزباني داراي بارکاري چندان قابل توجهي نيست اين امکان وجود دارد که بارکاري آنرا به ساير ميزبانان انتقال داده و ميزبان مذکور را نيز به صورت پويا به حالت خواب انتقال داد.
مهاجرت زنده ماشينهاي مجازي، قابليت ديگري مي باشد که مجازي سازي آن را ممکن ميکند. با استفاده از مهاجرت زنده [10] ، ماشين هاي مجازي ميتوانند در هر زماني از اجراي خود از يک سرور فيزيکي به ديگري انتقال يابند؛ و اين عمل مي تواند در راستاي استفاده بهينه از منابع و کاهش سرورهاي فعال استفاده گردد.
شکل 1-2 نگاه سيستم از بالا به پايين
ادغام پوياي ماشين هاي مجازي از دو فرآيند اصلي تشکيل شده است:
1- انتقال ماشين هاي مجازي از ميزبانهاي فروبار11 در راستاي کاهش تعداد ميزبانهاي فعال
2- انتقال ماشين هاي مجازي از ميزبان هاي فرابار 12در راستاي جلوگيري از افت کارايي در ماشين هاي مجازي که ممکن است به نقض مسائل کيفيتي بينجامد.
ميزبانهاي بيکار به طور خودکار، در حالت هاي کم مصرفِ انرژي قرار مي گيرند و در صورت نياز به منابع، دوباره فعال مي شوند.
سرويس هاي نوين تحت وب اغلب، بارکاري بسيار متغيري را تجربه مي کنند که نياز به ايجاد الگوهاي پويا در استفاده از منابع مي گردد و اين موضوع باعث مي شود مسأله ادغام ماشين هاي مجازي به مسأله اي پيچيده تبديل شود. بنابراين، دقت ناکافي در ادغام ماشين هاي مجازي، ممکن است به دليل افزايش نياز ماشين هاي مجازي به منابع فيزيکي در يک مقطع زماني، موجب افتِ غير منتظره عملکرد آن ها گردد. اگر منابع مورد نياز يک ماشين مجازي و به تبع آن برنامه در حال اجرا بر روي آن، به ماشين مجازي تخصيص داده نشود، ممکن است برنامه با افزايش زمان پاسخگويي و يا حتي شکست در اجرا مواجه شود. اطمينان از کيفيت خدمات که از طريق توافقنامه هاي سطح سرويس بين فراهم آورنده و مشتري تعيين مي گردد يک مسئله اساسي در محيط هاي رايانش ابري ميباشد. بنابراين فراهم کنندگان ابر با يک چالش ميان کاهش انرژي و افت کارايي رو به رو هستند. بنابراين کاهش انرژي بايد به گونه اي باشد که در آن کيفيت خدمات نيز در نظر گرفته شود.
اهداف رساله
در انجام اين رساله به منظور مديريت و حل چالش هاي مطرح شده در بخش قبل، در مرحله اول به بررسي و طبقه بندي تحقيقات انجام شده در زمينه مصرف کارآمد انرژي الکتريکي پرداخته شده که از اين طريق درك مناسب و روشني از روش هاي موجود در اين زمينه و راه هاي رسيدن به اين هدف حاصل شود. در ادامه، هدف ارائه راهکاري براي کاهش مصرف انرژي بيهوده در مراکز داده است که اين عمل با استفاده از شيوه ادغام پوياي ماشين هاي مجازي صورت گرفته است. در حل اين مسئله سعي شده است که راهکار هاي ارائه شده بتوانند علاوه بر کاهش مصرف انرژي يک مرکز داده کيفيت خدمات را نيز در سطح بالايي نگه دارند.
همچنين با توجه به مقياس بزرگ مراکز داده، سعي شده است راهکارهاي ارائه شده در حد امکان قابليت پياده سازي در محيط هاي توزيع شده را داشته باشند. همچنين هدف ديگري که در روش هاي پيشنهادي و بر خلاف راهکارهاي موجود در اين زمينه، به آن توجه ويژه اي شده است تعداد مهاجرت هاي ماشين هاي مجازي و پرهيز از مهاجرت هاي بيهوده است که در يک دوره زماني توسط سيستم صورت ميگيرد. در پايان هم براي ارزيابي نتايج و مقايسه عادلانه آن با روش هاي مشابه محکي براي سنجش ميزان کيفيت استفاده شده است که مستقل از بارکاري اعمال شده باشد و بتواند تمامي مسائل مرتبط با کيفيت را به سادگي در نظر بگيرد.
ساختار پاياننامه
در فصل دوم تعاريف پايه و مباني نظري آورده شده است. فصل سوم به طبقه بندي و بررسي شيوه هاي موجود در مديريت توان و انرژي الکتريکي و بررسي روش هاي نوين ارائه شده در اين زمينه پرداخته است. در فصل چهارم روش هاي پيشنهادي براي مديريت منابع در راستاي مصرف کار آمد انرژي ارائه شده است و در فصل پنجم عملکردِ روش هاي پيشنهادي ارزيابي شده و با روش هاي موجود در اين زمينه مقايسه مي شوند. فصل ششم هم به نتيجه گيري و پيشنهادهاي ارائه شده براي تحقيقات آينده اختصاص يافته است.
فصل دوم مباني نظري تحقيق و کارهاي پيشين

مقدمه
در اين فصل ابتدا شيوه هاي موجود و راهکارهاي ارائه شده در زمينه مديريتِ کارآمد توان و انرژي الکتريکي در مراکز داده مورد بررسي قرار ميگيرند و در ادامه بشرح تحقيقات پيشين ميپردازيم.

راهکارهاي ارائه شده در مديريتِ کارآمد توان و انرژي
مطالعات و تحقيقات وسيعي در زمينه مديريت منابع، در سيستم هاي رايانشي در راستاي مصرف کارآمد توان و انرژي الکتريکي انجام شده است. همان طور که در شکل 2-1 نمايش داده شده است از ديد سطح بالا مي توان تمامي راهکارهاي ارائه شده در اين زمينه را به دو دسته ايستا و پويا تقسيم نمود [11].
شکل 2-1 طبقه بندي سطح بالاي مديريت توان و انرژي الکتريکي[11]
در شکل 2-1، از ديدگاه سخت افزار مديريت ايستاي توان الکتريکي به تمامي روش هاي صورت گرفته براي بهينه سازي در سطوح مدار، منطقي، معماري و سيستم گفته ميشود[13]،[12]. روشهاي سطح معماري 13 شامل تجزيه و تحليل سيستم و استفاده از شيوه هاي بهينه سازي توان الکتريکي در طراحي آن ميباشد.
جدا از بهينه سازي هاي صورت گرفته در طراحي سيستم در سطوح سخت افزاري، در نظر داشتن دقيق پياده سازي برنامه هايي که قرار است بر روي سيستم اجرا شوند از اهميت ويژه اي بر خوردار است. حتي با وجود بهترين طراحي سخت افزاري، يک پياده سازي نامرغوب از برنامه هايي که بر روي سيستم اجرا ميشوند مي تواند به طور چشم گيري در از دست دادن کارايي و انرژي الکتريکي موثر باشد. البته، تجزيه و تحليل ميزان مصرف انرژي الکتريکي صورت گرفته به خاطر يک نرم افزار، کاري غير عملي و يا غيرممکن مي باشد؛ چون علاوه بر فرآيند توليد کد و کامپايل آن به زبان ماشين، ترتيب اجراي دستورات نيز مي تواند در ميزان مصرف انرژي الکتريکي مؤثر باشد[14]،[ 15]،[ 16]. بنابراين بايد از شيوه هاي تخمين غير مستقيم استفاده کرد.
براي مثال در [16]،[17] نشان داده شده که کد سريعتر، اغلب، مصرف انرژي کمتري را خواهد داشت. اگر چه در حال حاضر روش هاي کلي براي تشخيص يک کد بهينه وجود ندارد و موضوع تجزيه و تحليل الگوريتمها، خود به تنهايي زمينه مهمي در تحقيقات به شمار ميرود که خارج از بحث اين رساله مي باشد.
تمرکز اين فصل بر روي شيوه هاي مديريت توان پويا (DPM) 14مي باشد که شامل روش ها و استراتژي هاي زمان اجرا براي تصميم گيري در چگونگي رفتار سيستم است. اين عمل با توجه به ميزان منابع مورد نياز و يا هر مشخصه پوياي ديگري از حالت سيستم در يک مقطع زماني معين، انجام ميشود. يکي از فرض هايي که شيوه DPM را ممکن مي کند اين است که سيستم ها، بار کاري متغييري را در طول عملکرد خود تجربه ميکنند. چنين فرضي اجازه تنظيم حالت قدرت عملياتي سيستم با توجه به عملکرد مورد نياز از سيستم را ميدهد. فرض ديگري که اغلب از آن استفاده ميشود، توانايي در استنتاج و پيشبيني حالت آينده سيستم و تصميم گيري مناسب با توجه به آن مي باشد.
همانطور که در شکل 2-1 نمايش داده شده است مي توان راهکار DPM را به صورت نرم افزاري و سخت افزاري تقسيم بندي کرد. مديريت پوياي توان در سطح سخت افزار را مي توان به دو دسته طبقه بندي نمود:
(1) تغيير مقياس عملکرد15 DPS مانند DVFS
(2) غير فعالسازي پوياي مؤلفه16(DCD) به صورت کامل يا ناقص در زمان هايي که اجزاي سيستم، فعاليتي ندارند.
شيوه هاي DPM در سطح نرم افزار با استفاده از دسترسي به قابليت هاي سخت افزاري در مديريت توان مصرفي سيستم، سياست هاي خود را اعمال ميکنند.
در ادامه اين بخش راهکارهاي مختلف در اعمال مديريت پوياي توان ، در سطوح مختلف بررسي ميشوند.
در اين سطح شيوه هاي مديريت پوياي توان را به دو دوسته کلي ميتوان تقسيم نمود: (1) غيرفعال سازي پوياي مؤلفه هاي سيستم (DCD) و (2) تغيير پوياي مقياس عملکرد (DPS). شيوههاي DCD بر اساس ايده غيرفعال کردن کامل و يا بعضي از قسمت هاي يک مؤلفه الکترونيکي ميباشد که در زمان هاي بدون فعاليت آن مؤلفه اعمال ميگردد. در مقابلِ غير فعال سازي مؤلفه به طور کامل، شيوههاي DPS بر اساس کارايي مورد نياز از مؤلفه، عملکرد آن را به طور پويا تنظيم ميکنند.
مؤلفههاي رايانهاي که از DPS پشتيباني نميکنند، فقط ميتوان آنها را غير فعال نمود. بنابراين با توجه به تغيير بارکاري و زماني که يک مؤلفه بيکار ميباشد، آن را غيرفعال کنند. اگر سر بار ناشي از انتقال يک مؤلفه بين حالت هاي فعال و غير فعال، مقداري ناچيز باشد، حالت ايدهآل است. اگر چه در واقعيت تغيير از يک حالت به حالت ديگر نه تنها باعث تأخير ميگردد بلکه کارايي سيستم را نيز کاهش مي دهد و باعث مصرف انرژي بيشتر به دليل راه اندازي مجدد مؤلفه ميگردد.
در صورتي که ميزان اين سربار ناچيز نباشد، اين مسأله به يک مسأله بهينه سازي بر خط17 تبديل ميگردد. اين کار فقط زماني ارزش دارد که زمان بيکاري مؤلفه از مجموع زمان غيرفعال سازي و دوباره فعال سازي آن بيشتر باشد و همچنين ميزان کاهش در مصرف انرژي، از ميزان انرژي مورد نياز براي راه اندازي مجدد مؤلفه بيشتر باشد. در سيستم هاي واقعي اغلب از بارکاري آينده دانشي وجود ندارد و يا اينکه دانش محدودي وجود دارد. بنابراين پيشبيني براي اعمال کارآمد غير فعال سازي بر اساس تجزيه و تحليل داده هاي موجود از گذشته سيستم و يا مدل هاي ديگر انجام مي گردد. تحقيقات وسيعي در راستاي حل اين مسأله انجام گرفته است[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- جايگذاري ماشين هاي مجازي انتخاب شده
براي انتخاب ماشين هاي مجازي سه الگوريتم با آستانه دوتايي، ارائه کردند. منظور از آستانه دوتايي18، دو آستانه با نامهاي بالا و پايين است؛ حال اگر ميزان بهرهوري از پردازنده يک سرور از مقدار آستانه پايين کمتر شد؛ تمامي ماشين هاي مجازي اختصاص يافته به آن بايد به سرورهاي ديگر منتقل شده و آن سرور بخواب رود؛ اين عمل در هر سه الگوريتم انجام ميشود. در مقابل، اگر ميزان بهره وري از پردازنده سرور بيش از آستانه بالا بشود، بايد يک يا چند ماشين هاي مجازي از آن ميزبان انتخاب و به ميزبانان ديگر منتقل شوند که بار بهرهوري پردازنده آن کمتر از حد آستانه بالاي ميزبان شود. سياست انتخابي در اين مرحله، عبارتند از:
الف: حداقل مهاجرت19 (MM) ، که هدف آن انتخاب کمترين تعداد ماشين هاي مجازي براي مهاجرت بود.
ب: بيشترين احتمال رشد20 (HPG) ، ميزباني را انتخاب ميکند که سرعت رشد بهرهوري پردازنده آن بيشترين باشد.
ج: سياست انتخاب تصادفي21 (RS)، که به صورت تصادفي تعدادي از ماشينهاي مجازي را انتخاب مي کند.
براي جايگذاري ماشين هاي مجازي انتخاب شده، الگوريتم MBFD 22 را ارائه کردهاند که جايگذاري هر ماشين مجازي، ميزباني را از ميان ميزبانان واجد شرايط انتخاب ميکند که اختصاص ماشين مجازي به آن ميزبان، کمترين افزايش را در مصرف انرژي داشته باشد.
نتايج شبيه سازي نشان ميدهد که هر سه سياست توانستند مقدار مشابهي از مصرف انرژي را کاهش دهند ولي سياست MM و RS نسبت به HPG ميزان نقض کمتري در توافقنامه سطح سرويس را داشتند؛ و تعداد مهاجرتهاي انجام شده MM از دو الگوريتم ديگر کمتر بوده است. يکي از مشکلات روشهاي ارائه شده در اين مقاله ميزان کيفيت ارائه شده است که در بسياري از مراکز داده قابل قبول نميباشد. همچنين استفاده از الگوريتم MBFD با کمينه کردن مصرف توان الکتريکي در يک لحظه نمي تواند دليلي بر کاهش انرژي الکتريکي باشد.
همچنين در ساختار پوياي مراکز داده استفاده از مقادير آستانه از پيش تعيين شده و ايستا راه مناسبي نمي باشد.
Bloglazov و Buyya در سال 2010 [27] کارقبلي خود را بهبود و روش آستانه پويا را ارائه کردندکه بتواند مقدار آستانه را بر اساس رفتار سيستم، تنظيم نمايد.
مقدار آستانه پويا را بر اساس دادههايي که از ميزان بهرهوري هر ماشين مجازي از پردازنده جمع آوري مي شد، به طور خودکار تنظيم کند و نام اين سياست را آستانه وفق پذير(DT) ناميدند.
آنها با ارائه اين روش از يک طرف به ميزان زيادي تخطي از توافقنامه سطح سرويس را نسبت به روش هاي با آستانه ايستا کاهش دهند ولي از طرف ديگر ميزان انرژي مصرفي توسط روش DT نسبت به روش هاي ديگر افزايش قابل توجهي داشت.
در سال 2012 چندين سياست اکتشافي در جهت ادغام پوياي ماشينهاي مجازي توسط Bloglazov و Buyya ارائه شدند [28]. در اين مقاله مسأله ادغام پوياي ماشينهاي مجازي به چهار بخش تقسيم شده است: الف) تشخيص ميزبانهاي فرابار23، ب) انتخاب ماشينهاي مجازي24 از ميزبانهاي فرابار براي مهاجرت؛ ج) نحوه جايگذاري ماشينهاي مجازي25؛ د) تشخيص ميزبانهاي فروبار26.
در اين مقاله براي يافتن ميزبانهاي فرابار چهار روش ارائه شده است که تمامي آن ها بر اساس استفاده از يک آستانه ي بالاي وفق پذير عمل ميکنند. اگر مقدار بهره وري پردازندهي يک ميزبان از مقدار آستانه بيشتر شد آن ميزبان، فرابار ميباشد. تفاوت سياستهاي پيشنهادي در اين بخش در نوع تنظيم مقدار آستانه ميباشد:
1- سياست ميانه انحراف مطلق27
2- سياست رگرسيون محلي28
3- سياست رگرسيون محلي قوي29
4- سياست بازه ميان چارکي30.
همگي سياست ها بر اساس داده هاي جمع آوري شده از ميزان بهرهوري پردازنده در طول حيات ماشينهاي مجازي، استفاده کرده و با تحليل آماري از اين داده ها مقدار آستانه را تنظيم مي کنند.
در راستاي کاهش بار از روي ميزبان هاي فرابار، سه سياست براي انتخاب ماشين هاي مجازي ارائه شده است. (1) سياست کمترين زمان مهاجرت31 که ماشيني را انتخاب مي کند که بر اساس ميزان حافظه و پهناي باند شبکه کمترين زمان را در مهاجرت داشته باشد؛ (2) سياست انتخاب تصادفي32؛ (3) سياست بيشترين همبستگي33 که در آن با محاسبه همبستگي براي تمامي ماشين هاي مجازي موجود بر روي ميزبان آن ماشيني انتخاب ميگردد؛ که بيشترين همبستگي در بهره وري از پردازنده را در کنار ديگر ماشينها داشته باشد. براي جايگذاري ماشينهاي مجازي نيز از الگوريتم PABFD34 استفاده شده است.
براي تشخيص ميزبان فروبار نيز به اين ترتيب عمل ميشود که ميزباني که کمترين ميزان بهرهوري از پردازنده را دارد انتخاب شده و پس از انتقال تمامي ماشينهاي مجازي موجود بر روي آن به ميزبانهاي ديگر بخواب ميرود و اين روند تا جايي که امکان پذير باشد تکرار ميشود.
نتايج شبيهسازي حاصل از ترکيب الگوريتمهاي مختلف نشان داد که الگوريتم LR براي تشخيص ميزبان فرابار و MMT براي انتخاب ماشين مجازي بهترين نتيجه را داشتهاند.
مشکل اساسي که در اين روش و روشهاي مشابه آن وجود دارد تعداد بسيار مهاجرت ماشين هاي مجازي ميباشد که اغلب مهاجرتها بيهوده صورت ميگيرند. اين واقعيت با ارزيابي و مقايسه نتايج اين مقاله با راهکارهاي پيشنهادي در اين رساله در بخش نتايج نشان داده شده است؛ به طور قابل توجهي هم ميزان مصرف انرژي و هم ميزان تخطي از توافقنامه سطح سرويس در راهکار پيشنهادي در اين رساله کاهش داشته است.
Horri و همکاران [43] در سال 2014 روشي نوين به منظور مديريت منابع سبز را ارائه دادند. در اين مقاله روشي ارائه شده که بتواند يک تعامل ميان ميزان مصرف انرژي و ميزان تخطي از توافقات سطح سرويس ايجاد کند که با توجه به نياز فراهم کننده ميتواند در زمانهايي از ميزان مصرف انرژي کمتري توسط مرکز داده بهره برده که البته منجر به تخطي از توافقات سطح سرويس به ميزان بيشتري خواهد شد؛ همچنين ميتوان با انتخاب پارامترهاي ارائه شده در کار به شکلي کار کرد که ميزان تخطي از توافقات سطح سرويس را به ميزان قابل توجهي کاهش داد ولي در ازاي آن انرژي به همان نسبت افزايش پيدا خواهد کرد.
در کار ارائه شده دو الگوريتم به يافتن ميزبانان فروبار و الگوريتم ديگري به منظور انتخاب ماشينهاي ميزبان مجازي به عنوان مقصد ماشين مجازي ارائه شده است. در الگوريتم ارائه شده به منظور انتخاب مقصد براي ماشينهاي مجازي از ميزان شباهت عملکرد ميزبانان با ماشين مجازي مذکور استفاده ميشود. از همبستگي به منظور ميزان وابستگي دو مولفه فوق استفاده شده به شکلي که ميزباني با حداقل ميزان شباهت به عملکرد ماشين مجازي مذکور، به عنوان مقصد انتخاب ميشود.
الگوريتم ارائه شده به منظور شناسايي ميزبانان فروبار علاوه بر استفاده از بهرهوري پردازنده ميزبان از تعداد ماشينهاي مجازي قرار گرفته بر روي ميزبان مذکور نيز به عنوان مولفهاي موثر در ادامه سياست کاري ميزبان استفاده ميکند. بدين شکل که بهرهوري ميزبان و تعداد ماشينهاي مجازي مشمول آن هر کدام داراي يک وزن هستند که اين وزن با کمک الگوريتم تپه نوردي بهينه شده است.
روش ارائه شده داراي اهميت به سزايي است بدين دليل که توانسته است الگوريتمي را ارائه دهد که با توجه به انتظار فراهم کننده و سياستهاي وي ميتوان ميزان بهاي ميزان مصرف انرژي و يا کيفيت کارايي ارائه سرويس به کاربران را به صورت نسب تعيين کرد. اما روش فوقالذکر هنوز از بهرهوري پردازنده به عنوان تنها معيار ترکيب ماشينهاي مجازي بر روي ميزبانان استفاده ميکند.
پشتيباني نيازمنديهاي امنيتي براي



قیمت: تومان


پاسخ دهید