سوالهای رایج در مورد شبیه ساز cloudsim: تفاوت میان نسخهها
بدون خلاصۀ ویرایش |
بدون خلاصۀ ویرایش |
||
(۲ نسخهٔ میانی ویرایش شده توسط یک کاربر دیگر نشان داده نشد) | |||
خط ۱: | خط ۱: | ||
در این صفحه سئوالات رایج در خصوص شبیه ساز کلادسیم مطرح شده و پاسخ متناسب با آن ارائه شده است. اگر سئوال جدیدی دارید میتوانید با برچسب کلادسیم در [http://forum.occc.ir سایت پرسش و پاسخ] مطرح نمایید تا بعد از پاسخ به آن در اینجا مستند شود. اگر هم پاسخ سئوالی را میدانید میتوانید در تکمیل آن مشارکت داشته باشید تا توسط سایر دوستان مورد استفاده قرار بگیرد. همچنین میتوانید با کلیک بر روی بحث، روی سئوالات و جواب های مطرح شده در همینجا بحث کنید. | |||
== چگونه در cloudsim ماشین مجازی به میزبانها(host) نسبت داده می شود؟ == | == چگونه در cloudsim ماشین مجازی به میزبانها(host) نسبت داده می شود؟ == | ||
اختصاص ماشین مجازی به میزبان بر اساس الگوریتمی است که در کد مشخص می نمایید در مورد کدهای آماده طبق الگوریتم زمانبندی که پیش فرض وجود دارد اجرا می شود. انتساب میزبان به ماشین مجازی در هر دفعه ممکن است متفاوت باشد و به پارامترهای مانند:بار میزبان و ماشین مجازی بستگی دارد همچنین به نوع الگوریتمی که به طور پیش فرض اجرا می شود. برای آشنای بیشتر با این عمل و دیدن نمونه کد و دستکاری آن می توانید به کلاس VmAllocationPolicySimple مراجعه نمایید | اختصاص ماشین مجازی به میزبان بر اساس الگوریتمی است که در کد مشخص می نمایید در مورد کدهای آماده طبق الگوریتم زمانبندی که پیش فرض وجود دارد اجرا می شود. انتساب میزبان به ماشین مجازی در هر دفعه ممکن است متفاوت باشد و به پارامترهای مانند:بار میزبان و ماشین مجازی بستگی دارد همچنین به نوع الگوریتمی که به طور پیش فرض اجرا می شود. برای آشنای بیشتر با این عمل و دیدن نمونه کد و دستکاری آن می توانید به کلاس VmAllocationPolicySimple مراجعه نمایید | ||
[[بحث:چگونه در cloudsim ماشین مجازی به میزبانها(host) نسبت داده می شود؟| بحث]] | |||
== چگونه منابع یک میزبان بین ماشین های مجازی تقسیم می شود؟ == | == چگونه منابع یک میزبان بین ماشین های مجازی تقسیم می شود؟ == | ||
بعد از اختصاص یافتن ماشین مجازی به میزبان الگوریتم های مختلفی را برای انتساب هسته های پردازشی میزبانها به ماشینهای موجود اجرا نمود در کد | بعد از اختصاص یافتن ماشین مجازی به میزبان الگوریتم های مختلفی را برای انتساب هسته های پردازشی میزبانها به ماشینهای موجود اجرا نمود در کد | ||
پیش فرض شبیه ساز دو الگوریتم TimeShare و SpaceShare وجود دارد و کدهای آن نیز در این شبیه ساز می باشد. | پیش فرض شبیه ساز دو الگوریتم TimeShare و SpaceShare وجود دارد و کدهای آن نیز در این شبیه ساز می باشد. | ||
[[بحث:چگونه منابع یک میزبان بین ماشین های مجازی تقسیم می شود؟| بحث]] | |||
== شبیه سازی در سطح رک در کلادسیم == | == شبیه سازی در سطح رک در کلادسیم == | ||
مفهوم راک در کلادسیم وجود ندارد، ولی شما میتوانید آن را به راحتی به کلادسیم اضافه نمایید. برای این کار مثلا میتوانید در کلاس مربوط به میزبان (Host) یک متغییر به عنوان rack_id اضافه نمایید و این تقسیم بندی را در الگوریتم های خود مورد استفاده قرار دهید. | مفهوم راک در کلادسیم وجود ندارد، ولی شما میتوانید آن را به راحتی به کلادسیم اضافه نمایید. برای این کار مثلا میتوانید در کلاس مربوط به میزبان (Host) یک متغییر به عنوان rack_id اضافه نمایید و این تقسیم بندی را در الگوریتم های خود مورد استفاده قرار دهید. | ||
[[بحث:شبیه سازی در سطح رک در کلادسیم| بحث]] | |||
== ایجاد ماشین مجازی در حین شبیه سازی == | |||
میتوانید یک پارامتر starttime در پیاده سازی ماشین مجازی تعریف کنید و در تابع createVmsInDatacenter در کلاس DatacenterBroker دستور sendNow را به send تغییر دهید و بصورت زیر اصلاح کنید: | |||
<div dir='ltr'> | |||
send(datacenterId, vm.getStartTime(), CloudSimTags.VM_CREATE_ACK, vm); | |||
</div> | |||
این تغییر میبایست برای [[کلادلت]] ها هم انجام شود. این کار در تابع submitCloudlets از کلاس DatacenterBroker قابل انجام است: | |||
<div dir='ltr'> | |||
send(getVmsToDatacentersMap().get(vm.getId()), cloudlet.getExecStartTime() ,CloudSimTags.CLOUDLET_SUBMIT, cloudlet); | |||
</div> | |||
[[بحث:ایجاد ماشین مجازی در حین شبیه سازی| بحث]] | |||
== لینک های مرتبط == | |||
* [[کلادسیم]] | |||
* [http://www.cloudbus.org/cloudsim/doc/api/index.html راهنمای دستورات] | |||
* [http://www.cloudbus.org/cloudsim/examples.html مثال ها و شرح آنها] | |||
* [http://www.cloudbus.org/cloudsim سایر پروژه های مرتبط] | |||
* [http://forum.occc.ir/index.php?qa=tag&qa_1=cloudsim طرح سئوال جدید در خصوص کلادسیم] |
نسخهٔ کنونی تا ۲۴ ژوئیهٔ ۲۰۱۴، ساعت ۰۸:۲۸
در این صفحه سئوالات رایج در خصوص شبیه ساز کلادسیم مطرح شده و پاسخ متناسب با آن ارائه شده است. اگر سئوال جدیدی دارید میتوانید با برچسب کلادسیم در سایت پرسش و پاسخ مطرح نمایید تا بعد از پاسخ به آن در اینجا مستند شود. اگر هم پاسخ سئوالی را میدانید میتوانید در تکمیل آن مشارکت داشته باشید تا توسط سایر دوستان مورد استفاده قرار بگیرد. همچنین میتوانید با کلیک بر روی بحث، روی سئوالات و جواب های مطرح شده در همینجا بحث کنید.
چگونه در cloudsim ماشین مجازی به میزبانها(host) نسبت داده می شود؟
اختصاص ماشین مجازی به میزبان بر اساس الگوریتمی است که در کد مشخص می نمایید در مورد کدهای آماده طبق الگوریتم زمانبندی که پیش فرض وجود دارد اجرا می شود. انتساب میزبان به ماشین مجازی در هر دفعه ممکن است متفاوت باشد و به پارامترهای مانند:بار میزبان و ماشین مجازی بستگی دارد همچنین به نوع الگوریتمی که به طور پیش فرض اجرا می شود. برای آشنای بیشتر با این عمل و دیدن نمونه کد و دستکاری آن می توانید به کلاس VmAllocationPolicySimple مراجعه نمایید بحث
چگونه منابع یک میزبان بین ماشین های مجازی تقسیم می شود؟
بعد از اختصاص یافتن ماشین مجازی به میزبان الگوریتم های مختلفی را برای انتساب هسته های پردازشی میزبانها به ماشینهای موجود اجرا نمود در کد پیش فرض شبیه ساز دو الگوریتم TimeShare و SpaceShare وجود دارد و کدهای آن نیز در این شبیه ساز می باشد. بحث
شبیه سازی در سطح رک در کلادسیم
مفهوم راک در کلادسیم وجود ندارد، ولی شما میتوانید آن را به راحتی به کلادسیم اضافه نمایید. برای این کار مثلا میتوانید در کلاس مربوط به میزبان (Host) یک متغییر به عنوان rack_id اضافه نمایید و این تقسیم بندی را در الگوریتم های خود مورد استفاده قرار دهید. بحث
ایجاد ماشین مجازی در حین شبیه سازی
میتوانید یک پارامتر starttime در پیاده سازی ماشین مجازی تعریف کنید و در تابع createVmsInDatacenter در کلاس DatacenterBroker دستور sendNow را به send تغییر دهید و بصورت زیر اصلاح کنید:
send(datacenterId, vm.getStartTime(), CloudSimTags.VM_CREATE_ACK, vm);
این تغییر میبایست برای کلادلت ها هم انجام شود. این کار در تابع submitCloudlets از کلاس DatacenterBroker قابل انجام است:
send(getVmsToDatacentersMap().get(vm.getId()), cloudlet.getExecStartTime() ,CloudSimTags.CLOUDLET_SUBMIT, cloudlet);