大家好,又见面了,我是你们的朋友全栈君。
Cloudsim 澳大利亚墨尔本学校的网格实验室和Gridbus项目推出,是在离散事件模拟包SimJava上开发的函数库,继承了GridSim的编程模型,特点:
- 支持大型云计算的基础设施的建模和仿真;
- 一个自足的支持数据中心、服务代理人、调度和分配策略的平台
独特功能:
- 提供虚拟化引擎,旨在数据中心节点上帮助建立和管理多重的、独立的、协调的虚拟化服务;
- 在对虚拟化服务分配处理核心时能够在时间共享和空间共享之间灵活切换
软件结构框架和体系结构组件:SimJava 、GridSim 、CloudSim 、UserCode.
CloudSim是在GridSIm模型基础上发展而来,提供了云计算的特性,支持云计算的资源管理和调度模拟。云计算和网格计算的最大区别是云计算采用了成熟的虚拟化技术,将数据中心的资源虚拟化为资源池,打包对外向用户提供服务,CloudSim体现了此特点,扩展部分实现了一系列接口,提供基于数据中心的虚拟化技术、虚拟化云的建模和仿真功能。
CloudSim提供了资源的检测、主机到虚拟机的映射功能CIS和DataCenterBroker实现资源发现和信息交互,是模拟调度的核心,用户自行开发的算法可在DataCenterBroker的方法中实现,从而实现调度算法的模拟
CIS:Cloud Information Service
源代码中的核心类;
- Cloudlet类:构建云环境下的任务;
- DataCenter:数据中心,提供虚拟化的网格资源,处理虚拟机信息的查询,包含虚拟机对资源的分配策略,云计算采用VMProvisoner处理虚拟机。
- DataCenterBroker类:隐藏了虚拟机的管理,如创建、任务提交、虚拟机的销毁等。
- Host类:扩展了机器对虚拟机除处理单元PE之外的参数分配策略,如带宽、存储空间、内存等,一台Host可对应多台虚拟机。
- VirtualMachine类:虚拟机类,运行在Host之上,与其他虚拟机共享资源,每台虚拟机由一个拥有者所有,可提交任务,并由VMScheduler类定制该虚拟机的调度策略。
CloudSim下仿真步骤:
- 初始化cloudsim包
- 创建数据中心Datacenter
- 创建数据中心代理Broker
- 创建虚拟机
- 创建云任务
- 执行资源调度算法,完成过任务到虚拟机间的映射
- 启动仿真程序
- 打印仿真结果
CloudSim 工作模型图中的 CIS(Cloud Information Service)负责将用户请求映射到云服务提供商,DatacenterBroker 起到模拟 SaaS 提供商代理的作用,并且能够根据 QoS 的需求 协商资源和服务的分配策略。而通过扩展 VmScheduler 类能 调整处理器的共享策略,该类是抽象类实现了主机的组件并 模拟虚拟机的分配调度策略。VMAllocationPolicy 是负责将 虚拟机分配给主机的虚拟机监视器调度策略。
云计算中的任务调度,主要分为任务到资源的调度和资源监控两个过程
MCT Max Completed Time最大完成时间
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/182397.html原文链接:https://javaforall.cn