WABIپیادهسازی Sun با هدفی شبیه Wine است که به کاربران اجازه میدهد برنامههای کاربردی ویندوز مایکروسافت را روی چند محیط عملیاتی یونیکس که سیستم X استفاده میکند اجرا کنند. WABI همچنین نسخهای دارد که WabiServer نامیده میشود و اجازه میدهد چندین کاربر بهصورت راه دور از WABI بر روی کامپیوتر مشتری استفاده کنند. این ماشین مجازی با ترجمهی فراخوانهای ویندوز به فراخوانهای یونیکس و X و در سکوهای RISC، با ترجمه دستورات x86 به دستورات RISC کار میکند. با این حال پیادهسازی آن به گستردگی Wine نیست به همین دلیل در اجرای صحیح برنامههای خاصی به مشکل بر میخورد.
پردازش ابری
در این بخش نخست به تاریخچهی سیستمهای پردازش ابری اشاره خواهد شد و سپس به مزایای استفاده از این فناوری به ویژه در کاهش مصرف انرژی پرداخته خواهد شد. در ادامه انواع ابرهای محاسباتی معرفی میشوند و به حیطهی کاربرد هرکدام اشاره خواهد شد.
تاریخچه
جان مک کارتی در سال ۱۹۶۰ این ایده را مطرح کرد که محاسبات نیز میتوانند بهعنوان صنایع همگانی نظیر آب و برق سازماندهی شوند. جان یک دانشمند کامپیوتر نظری بود که از منطق ریاضیات در هوش مصنوعی حمایت کرد. چهار دهه بعد، محاسبات همگانی توسط شرکتهای مهم IT نظیر آمازون، اپل، گوگل، HP، IBM، مایکروسافت و اوراکل پذیرفته شد.
محاسبات ابر حرکتی است که در اواسط دهه اول هزاره جدید شروع شد. این حرکت با این ایده که پردازش اطلاعات میتواند در فضای محاسباتی و سیستمهای انباره بزرگ قابل دسترس از طریق اینترنت با کارایی بیشتری انجام میشود شتاب بیشتری گرفت.
محاسبات ابر الگوی حرکت از محاسبات و محتوای محلی به محاسبات و محتوای شبکه محور را زمانیکه منابع انبارهای و محاسباتی توسط مراکز داده دور تامین شود پشتیبانی میکند. برنامههای کاربردی مهندسی و علمی، دادهکاوی، محاسبات مالی، بازیها، شبکههای اجتماعی و همچنین محاسبات دیگر و فعالیتهای حساس به داده از محاسبات ابر استفاده میکنند. اطلاعات ذخیره شده در ابر مزایای قابل توجهی داشته و توسط تامینکنندگان سرویس پذیرفته شد. برای مثال، اپل در سال ۲۰۱۱ iCloud را منتشر کرد که حالتی شبکه محور برای محتواهایی نظیر موسیقی، ویدیو، فیلم و اطلاعات شخصی بود. محتواها که قبلا به وسایل شخصی نظیر ایستگاه کاری، لپتاپها، تبلتها و گوشیهای هوشمند محدود بود که نیازی نداشتند که برای مدت طولانی بهصورت محلی ذخیره شود و میتواند روی این دستگاهها به اشتراک گذاشته شده و هرجایی که دستگاه به اینترنت وصل شود قابل دسترس باشند.
جذابیت محاسبات ابر در این است که سرویسهای محاسباتی و انبارهای و قابلتوسعه ارایه میکند. منابعی که برای این سرویسها استفاده میشود قابل اندازهگیری بوده و کابران فقط هزینهی منابعی را میپردازند که استفاده میکنند. ابر محاسباتی یک واقعیت تجاری است که سازمانهای زیادی آن را پذیرفتهاند.
ابر محاسباتی به دلیل تسهیم منابع از نظر اقتصادی مقرون به صرفه است. دادهی کاربردی نزدیک به سایتی که استفاده میشود ذخیره میشود به روشی که وسیله و محل آن مستقل است. این استراتژی ذخیرهسازی داده قابلیت اطمینان و امنیت را افزایش میدهد . امنیت و نگهداری توسط تامینکنندگان سرویس تضمین میشود.
محاسبات ابر یک واقعیت اجتماعی و فنی و همچنین یک فناوری است. حالا باید اندیشید که زیربنا چگونه درگیر این الگو خواهد شد و چه برنامههای کاربردی باید مهاجرت داده شوند. مفهوم اقتصادی، اجتماعی، اخلاقی و حقوقی این تغییر در فناوری بسیار مهم است به موجب آن کاربران به سرویسهای ایجاد شده توسط مراکز داده بزرگ و داده خصوصی و نرمافزار ذخیره شده روی سیستمها که خارج از کنترل آنها میباشند متکی هستند.
مزایای اقتصادی ابر
مراکز داده با مقیاس بزرگ- مراکز با تعداد بیش از ۵۰۰۰۰ سیستم- به دلیل صرفهجویی در مصرف انرژی از مراکز با اندازه متوسط که حدود ۱۰۰۰ سیستم دارند اقتصادیتر است. در مراکز داده بزرگ کامپیوترهایی وجود دارند که تجربه کاهش ۵ تا ۷ برابری مصرف منابع ازجمله انرژی را در مقایسه با مراکز با اندازه متوسط دارند [۱۶]. هزینههای شبکه مراکز متوسط برای هر Mbit/sec/month به دلار۱/۷=۱۳÷۹۵ برابر بیشتر و هزینههای انباره برای هر Gbyte/month به دلار ۷/۵=۴/۰÷۲/۲ بیشتر بود. سربار اجرایی مراکز متوسط بیشتر است زیرا در مراکز متوسط به ازای هر ۱۴۰ سیستم یک سیستم مدیریتی وجود دارد درحالیکه در مراکز بزرگ هر ۱۰۰۰ سیستم یک سیستم مدیر دارند.
مراکز داده از مصرف کنندگان بسیار بزرگ انرژی الکتریکی برای سرپا و خنک نگهداشتن کارگزارها و زیربنای شبکه هستند. برای مثال، ۶۰۰۰ مرکز داده در ایالات متحده به گزارش خودشان در سال ۲۰۰۶، ۶۱ بیلیون کیلوواتساعت مصرف داشتند که ۵/۱% از کل انرژی الکتریکی ایالات متحده را به خود اختصاص میداد و هزینهای بالغ بر ۵/۴بیلیون دلار داشته است. برق درخواستی برای مراکز داده از ۲۰۰۶ تا ۲۰۱۱ دوبرابر پیشبینی شد. پیشبینی شده بود که اوج درخواست از ۷ گیگاوات در سال ۲۰۰۶ به ۱۲ گیگا وات در سال ۲۰۱۱ افزایش یابد که نیازمند ساخت ۱۰ نیروگاه جدید است. هزینه انرژی در ایالات متحده از ایالتی به ایالت دیگر متفاوت است مثلا هزینهی یک کیلو وات ساعت در آیداهو ۶/۳ سنت، کالیفرنیا ۱۰ سنت و هاوایی ۱۸ سنت است بنابراین مراکز داده باید در سایتهای
دانلود کامل پایان نامه در سایت pifo.ir موجود است. |
با هزینه انرژی کمتر قرار بگیرند
انواع ابر پردازشی
به دلیل پوشش دادن زیربناهای با اندازه متفاوت، با مدیریت متفاوت و کاربران متفاوت چند نوع ابر متصور هستند:
ابر خصوصی
ابر خصوصی زیرساختی است که فقط در اختیار یک سازمان قرار دارد ولی ممکن است مدیریت آن در اختیار خود آن سازمان یا شرکت دیگری باشد. این ابر میتواند درون یا برون سازمان قرار داشته باشد
ابر همگانی
ابر همگانی بین چندین سازمان مشترک است و شامل یک مجموعهی خاص میشود که علایق مشترک دارند(مثلا ماموریت، نیازهای امنیتی، سیاستی ). این ابر میتواند توسط سازمانها یا یک شرکت ثالث مدیریت شود.
ابر عمومی
ابر عمومی زیرساختی است که به صورت گسترده و برای استفاده عموم فراهم شده است و معمولا توسط شرکتهایی ارایه میشود که سرویسهای مبتنی بر ابر را ارایه مینمایند.
ابر ترکیبی
ابر ترکیبی زیرساختی متشکل از دو یا چند ابر (خصوصی، همگانی و یا عمومی) که با وجود این که از یک دیگر جدا هستند ولی با هم ارتباط دارند مثلا دو ابر ممکن است جهت توازن بار با هم در ارتباط باشند.
تحقیقات مرتبط
مقدمه
مطالعات متعددی در مورد زمانبندی ماشینهای مجازی در محیطهای توزیعشده انجام شده است. رویکردهای متفاوت، با مسایل متفاوتی در حوزهی زمانبندی مانند جانمایی اولیه، تجمیع و رابطهی معکوس بین برآورده کردن توافقات سطح سرویس[۷۵] و هزینهی ارایهدهندهی خدمات، روبرو میباشند. در پژوهشهای انجام شده معمولا یک مدل ریاضی از این مسایل ارایه میشود و سرانجام این مدل با یک الگوریتم تقریبی و یا ابتکاری[۷۶] حل میشود. به دلیل ماهیت پیچیدهی این مسایل، در بیشتر موارد به سراغ روشهای حل صریح این مسایل نمیتوان رفت. در نتیجه همواره رابطهی عکس بین کیفیت راه حل که به صورت فاصلهی راهحل تقریبی با راه حل کامل بیان میشود و زمان محاسبهی پاسخ بر قرار است. بدیهی است هرچه راهحل دقیقتر باشد و به پاسخ کامل نزدیکتر، الگوریتم آن نیز پیچیدهتر است در نتیجه زمان اجرای بیشتری دارد.
رویکردهای متفاوت به زمانبندی ماشینهای مجازی
تانگ و همکاران [۱۷] یک الگوریتم تقریبی ارایه نمودهاند که در زمان کوتاهی چندین هزار ماشین مجازی را بر روی چندین هزار ماشین سختافزاری زمانبندی میکند. هدف این الگوریتم بیشینهسازی ارضا نیازمندی نرمافزارها به منابع و کاهش تعداد توقف و شروع ماشینهای مجازی و توازن بار کاری بین ماشینهای مجازی است. اما این الگوریتم تقریبی برای نرمافزارهای تحت وب ارایه شده و با اجرای چند نمونه از یک نرمافزار تحت وب بر روی بستر توزیع شدهی مجازی سعی در برقراری توازن بار دارد. هرمنیر و همکاران [۱۸] یک روش پویا برای استقرار کارگزارها در یک محیط توزیعشدهی ناهمگون ارایه نمودند که البته هدف آن کاهش تعداد ماشینهای سختافزاری استفاده شده بود. در این روش مهاجرت ماشینهای مجازی سربار غیر قابل چشمپوشی را به سیستم تحمیل می کرد. وود و همکاران [۱۹] یک سیستم زمانبندی ارایه نمودند که بر مبنای بهرهوری حافظه، شبکه و پردازنده، ماشینهای مجازی را بر میزبانهای سختافزاری زمانبندی مینماید. هدف اصلی این زمانبند افزایش کارایی کل سیستم است. از آنجا که الگوریتم ارایه شده، جز مسایل سخت محسوب میشود استفاده از آن در محیطهای با تعداد گره کم توجیهپذیر است. شرکت VMware نیز روشی به نام DRS (Distributed Resource Scheduler ) [20] را مطرح نموده است که اساس آن نیز افزایش بهرهوری منابع سختافزاری با متمرکزسازی ماشینهای مجازی بر روی حداقل میزبان سختافزاری است. هدف اصلی مقالههای مورد اشاره، گذشته از روش ارایه شده، افزایش بهرهوری منابع سختافزاری و کاهش میزبانهای سختافزاری میباشد
رویکرد دیگر به زمانبندی ماشینهای مجازی، زمانبندی از دیدگاه مصرف انرژی است که شاخصترین آن استفاده از تکنیک DVFS (Dynamic Voltage and Frequency Scaling) است. در این روش تنظیمات ولتاژ و فرکانس کاری پردازنده متناسب با بار کاری تغییر میکند. اکثر پردازندههای امروزی از این فناوری پشتیبانی میکنند. از این جمله میتوان به کارهای لازوسکی و همکاران [۲۱] اشاره نمود. ارزیابیهای آنها کاهش مصرف انرژی قابل توجهی را نسبت به دیگر روشها نشان میدهد. شریفی و همکاران [۲۲] نیز با در نظر گرفتن اثرات بار کاری دیسک و پردازنده بر مصرف انرژی، مدلی بر مبنای فرآیند برنامهریزی غیر خطی[۷۷] ارایه نمودند. الگوریتم زمانبندی ارایه شده بر مبنای این مدل ماشینهای مجازی را بر اساس بارکاری و هزینهی مهاجرت به نوعی زمان بندی مینمود که مصرف انرژی کمینه شود. نتایج ارزیابی آنها از کار خود بهبود در حدود ۲۴% در مصرف انرژی در مقایسه با روشهای ایستا نشان میداد.
در نظر گرفتن ملاحظات دمایی نیز رویکردی دیگری جهت زمانبندی ماشینهای مجازی است. وانگ و همکاران [۲۳] الگوریتمی از مرتبهی چندجملهای پیشنهاد کردهاند که با محاسبهی میزان افزایش دما براساس اجرای یک وظیفه[۷۸]، زمان اجرای یک وظیفه و تعداد گرههای محاسباتی برای انجام وظیفه، بارهای کاری را به گونهای روی نودهای محاسباتی تقسیم میکند که کمترین دما جهت اجرای وظیفهی مورد نظر ایجاد شود.
رویکرد دیگر به زمانبندی ماشینهای مجازی، زمانبندی بر مبنای کمترین تداخل بار کاری است. نتاجی و همکاران [۲۴]
چارچوبی به نام Q-cloud را ارایه نمودهاند که تخصیص منابع را براساس کمترین تداخل انجام میدهد. البته تمرکز ایشان بر بارهای کاری پردازشی[۷۹] بوده است. چیانگ و همکاران [۲۵] نیز با ارایه چارچوبی به نام TRACON، اثر بار کاری بین چند ماشین داده محور همزمان را کاهش داده و به این ترتیب کارایی کل سیستم را بهبود داده اند. این چارچوب از تکنیکهای یادگیری ماشین استفاده مینماید و شامل سه جز است: مدل پیشبینی تداخل بار کاری که کارایی یک ماشین مجازی را از روی منابعی که در دسترس دارد و منابعی که مصرف می نماید، محاسبه میکند. زمانبند آگاه از تداخل بار کاری از مدل موجود جهت استفادهی بهینه از منابع استفاده مینماید و ناظر منابع و وظایف نیز با جمعآوری خصوصیات ماشینها سعی در تطبیق مدل در زمان اجرا دارد.
در [۲۶] نویسندگان به بررسی اثر بارهای کاری متفاوت روی محیطهای مجازی پرداختهاند. هر بار کاری با یک سری خصوصیات مانند متوسط بهرهگیری پردازنده یا تعداد مراجعه به دیسک در ثانیه مشخص میشود. با مشخص شده هر بار کاری، تداخل کارایی بین دو ماشین اندازهگیری میشود. در نهایت نویسندگان با اندازهگیری کارایی و بار کاری روشی جهت خوشهبندی ماشینهای مجازی ارایه نمودهاند.
مزایا و معایب رویکردهای زمانبندی ماشینهای مجازی
استفاده از روشهای مبتنی بر افزایش بهرهوری هرچه تمامتر منابع، بدون در نظر گرفتن تداخل بارهای کاری، افزایش زمان اجرا را به دنبال دارد. سختافزارهایی که از DVFS پشتیبانی مینمایند معماری پیچیده دارند، پیشبینی فرکانس کاری مناسب پردازنده برای اجرای یک برنامه به سادگی امکانپذیر نیست. مدلهای ارایه شده در روشهای مبتنی بر دما به دلیل وجود پارامترهای فراوان (مانند: دمای اجزای محاسباتی، تغییرات دمای پردازنده بر اثر اجرای یک وظیفه، دمای نقاط مختلف محیط فیزیکی) و موثر و همچنین دشواری اندازهگیری این پارامترها از یک سو، افزایش زمان اجرا به قیمت کاهش دما از سوی دیگر چالشهای فرا روی این روشها میباشند. روشهای مبتنی بر تداخل بار کاری به عنوان یک رویکرد جدید به مسالهی زمانبندی ماشینهای مجازی، هنوز به بلوغ کافی نرسیدهاند و ارایه مدلهای قابل قبول پیشبینی میزان تداخل بار کاری و الگوریتمهای زمانبندی مبتنی بر این مدلها از چالشهای پیش روی این رویکرد است.
الگوریتم DVMS
مقدمه
پارامترهای متعددی در این که زمانبندی کی و کجا انجام شود وجود دارد. زمانبندی یک مسالهی بهینهسازی است که شامل چند محدودیت نیز میشود. در این رساله زمانبندی ماشینهای مجازی به صورت رابطهی (۴-۱) تعریف میشود: