چکیده

در سالهاي اخیر علاقه به استفاده از رایانش ابري براي برنامههاي کاربردي مختلف رشد کرده است. با توجه به مزایاي مختلف مانند مقرون به صرفه بودن، قابلیت انعطاف بالا و غیره توانسته است توجه جوامع مختلف از جمله محققان را بدست آورد. اما امکان ارزیابی طرحها یا راه حلهاي محققان در محیط واقعی بنا به دلایلی مانند هزینه بالاي آزمایش، وقتگیر بودن و غیره مشکل میباشد. بنابراین ابزارهاي شبیهسازي در مدلهاي رایانش ابري بیش از بیش مهم است. در این مقاله شبیهسازهاي رایانش ابري از چندین جنبه بررسی و گردآوري میشود تا مخاطب درك بهتر و واضحی از مفهوم آنها داشته باشد. در نهایت یک مقایسه از این شبیهسازها ارائه شده و چالشهاي موجود در آنها مطرح میشود. در بخش نتیجهگیري چندین کار آتی براي پژوهشهاي آینده پیشنهاد شده است.

واژههاي کلیدي: رایانش ابري، شبیهسازي، مدلسازي، ارزیابی عملکرد، برنامههاي کاربردي، گردشکار.

-۱ مقدمه:

رایانش ابري۱ در کمتر از دو سال خود را در بین ده فناوري برتر دنیا جاي داده است(سید رضا پاکیزه،۱۳۹۱ و (۳۲ و به سرعت توجه جوامع مختلف از جمله محققان، مصرفکنندگان و سازمانهاي دولتی را به خود جلب کرده است(۲۰۱۲ ,S. Garg و .(۱۰۵ از مزایاي استفاده از رایانش ابري کاهش هزینه، پیادهسازي سریع، قابلیت اطمینان، چندکاربري، تکنولوژي سبز و…
میباشد(سید رضا پاکیزه،۱۳۹۱ و ;۳۲ دکتر محمد رضا احمدي،۱۳۹۲ و .(۱۱۱ اما امکان ارزیابی طرحها یا راه حلهاي محققان در محیط واقعی بنا به دلایلی (هزینه بالاي آزمایش و وقتگیر بودن بسترهاي توزیع شده در مقیاس بزرگ و …) آسان نیست.

همچنین تکرار آزمایش و مقایسه راه حلهاي مختلف دشوار میباشد(۲۰۱۲ ,S. Garg و . (۱۰۵ بنابراین ابزارهاي شبیهسازي در مدلهاي رایانش ابري بیش از بیش مهم است. به طور کلی شبیهسازي را زمانی انجام میدهیم که امکان آزمایش در محیط واقعی وجود نداشته باشد.

شبیهسازي، علم و هنر ساختن مدلی از یک پروسه یا سیستم واقعی، به منظور ارزیابی میباشد که هدف آن پی بردن به رفتارهاي سیستم یا ارزیابی استراتژيهاي گوناگون است(سید رضا پاکیزه،۱۳۹۱ و .(۱۸۳ نرمافزارهاي شبیهسازي مختلفی براي مدل کردن محیط رایانش ابري و تست کارآرایی میتوان استفاده کرد که تقریبا تمامی آنها مبتنی بر جاوا میباشند. با استفاده از این ابزارها میتوان تمامی جوانب این فناوري را شبیه سازي کرد(ندا ملکی، ۱۳۹۱ و .(۱

۱ Cloud Computing

۱

در این مقاله به بررسی و گردآوري انواع آن میپردازیم. روند ادامه مقاله به این شرح میباشد که در بخش دوم شبیهسازهاي موجود همراه با مزایا و معایب آنها معرفی میشود. در بخش سوم نتیجهگیري و زمینههاي تحقیقاتی جدید بیان شده است.

-۲ شبیهسازهاي رایانش ابري

شبیهسازي به عنوان یک ابزار محبوب براي ارزیابی عملکرد بخشهاي مختلف رایانش ابري است. نرمافزارهاي فراوانی براي شبیهسازي رایانش ابري وجود دارد. چندین نمونه از نرم افزارهاي شبیهسازي در زیر توضیح داده میشود:

-۱-۲کلودسیم

شبیهساز کلودسیم۱ در حال حاضر پیشرفتهترین شبیهساز رویدادهاي گسسته براي ابرهاست(۲۰۱۲ ,S. Garg و . (۱۰۵ در ابتدا توسط دانشگاه ملبورن در سال ۲۰۰۹ روانه بازار شد که در محیطهاي ویندوز، یونیکس و لینوکس قابل اجرا است. در حال حاضر نسخههاي جدید آن با قابلیت و انعطافپذیري بیشتري نسبت به نسخههاي پیشین در دسترس کاربران است.
کلودسیم یک ابزار کتابخانهاي است که به زبان جاوا میباشد و تمام عملیاتی که انجام میدهد، براساس کلاسهاي موجود در

آن است. براي مثال عملیات مربوط به کلاسهاي پایه براي توصیف وظایف، مرکزداده و ماشینهاي مجازي را با کلاسهاي Cloudlet، ۲DataCenter و ۳VM انجام میدهند. سیاستهایی براي مدیریت قسمتهاي مختلف از سیستم

ارائه میکند(مثل زمانبندي، سیاستهاي تعادلبار، تخصیص منابع و…). نیازي به نصب ندارد، براي اجراي آن و به کارگیري فایلهاي محتوي میتوان از نرمافزارهاي NetBeans، Eclips و Apache Ant استفاده کرد(۲۰۱۳, I.Vashirashudej و .(۱

شکل (۱) صفحه اصلی کلودسیم

کلودسیم یک راه حل آماده براي استفاده نیست یک مجموعه از پارامترها و نتایج جمع آوري شده است و نیازمند یک برنامه جاوا با استفاده از اجزاي آن در سناریو مورد نظر است. در شکل ۱ کلاسها و پوشهي مثالهاي کلودسیم نمایش داده شده است. این اجزا میتوانند در کنار هم قرار بگیرند و در بررسی شیوههاي جدید زمانبندي، نگاشت و سیاست تعادل بار و …

استفاده شوند. از کلودسیم در ارزیابی سیاستهاي سبز IT نیز استفاده میشود. بنابراین میتوانیم کلاسها را گسترش دهیم یا

۱ cloudsim
مرکزداده۲ ۳ Virtual Machines

۲

جایگزین کنیم و سیاستهاي جدید اضافه کنیم. کلودسیم ویژگیهاي زیادي دارد که ما آن را براي محیط شبیهسازي خود

انتخاب کنیم. این ویژگیها به شرح زیر است:
– پشتیبانی از مدلسازي و شبیهسازي از مراکز دادهي رایانش ابري و مدیریت vmها و پهناي باند.

– پشتیبانی از مدلسازي و شبیهسازي از سرور میزبان مجازي، با سیاست قابل تنظیم براي تامین منابع میزبان در ماشینهاي مجازي.
– پشتیبانی از مدلسازي و شبیهسازي منابع محاسباتی آگاه به انرژي.

– پشتیبانی از مدلسازي و شبیهسازي توپولوژيهاي شبکهاي استقاده شده در مرکز داده.

– پشتیبانی از مدلسازي و شبیهسازي از ابرهاي فدرال.
– درج پویاي عناصر شبیهسازي، متوقف کردن و راه اندازي مجدد یک شبیه سازي.
– پشتیبانی از گردش کار در مراکز داده و تخصیص cloudletها به ماشینهاي مجازي و غیره(۲۰۱۱ ,R. Calheiros و