论文部分内容阅读
随着计算机网络技术的不断发展,快速增长的用户和业务给传统互联网带来了巨大压力。云计算作为一种新兴的商业计算模型,允许用户按需获取和使用资源而不必关注底层基础设施,为应用服务的部署和弹性伸缩提供了极大的便利。越来越多的企业开始拥抱云计算,将业务转移到云上。相比只使用单个云,企业出于风险控制和成本优化的目的,更倾向于采用多云策略。
应用编排是指在云中自动化创建主机并部署应用服务。现有编排方案大多是通过编写基于TOSCA(Topology and Orchestration Specification for Cloud Applications)规范的模板文件实现的。编写出一个可用的模板文件需要花费大量时间学习专业知识和语法规则,而不同云厂商提供的模板语法和内置函数也仅限用于自家云平台,因此在多云环境下通过手动编写模板文件进行应用编排的效率较低。此外,模板文件对于应用部署的描述也不够直观,并且只有在解析模板文件执行资源创建的过程中才能知道云平台的可用资源是否满足需求。本文针对上述问题,设计实现了适用于多云环境的应用编排系统,主要工作如下:
1.针对通过手动编写模板文件方式进行应用编排存在的不足,设计了一个适用于多云环境的应用编排系统。该系统提供一个图形化设计器,可将用户创建的应用部署拓扑图转换为不同云平台支持的模板文件,从而解决模板语法差异导致的应用编排效率低的问题。同时设计了一种任务调度策略,对云平台资源消耗均衡情况和负载情况进行量化分析,从多个云平台中筛选出执行编排任务的云平台。
2.根据选用的技术方案对应用编排系统的功能进行实现,其中包括基于Token的身份认证、多云资源管理、基于SVG技术的应用部署拓扑编辑、使用LibvirtAPI采集虚拟机的使用数据以及使用ECharts图表展示监控数据。此外,针对任务调度策略使用CloudSim框架进行了仿真实验。
3.基于OpenStack搭建多云环境对系统进行测试,并以一个Web应用的部署为例验证应用编排功能。实验结果表明,本文设计的应用编排系统可以管理接入的多个云平台的租户资源,通过图形化设计器创建的应用编排任务可正常执行。
应用编排是指在云中自动化创建主机并部署应用服务。现有编排方案大多是通过编写基于TOSCA(Topology and Orchestration Specification for Cloud Applications)规范的模板文件实现的。编写出一个可用的模板文件需要花费大量时间学习专业知识和语法规则,而不同云厂商提供的模板语法和内置函数也仅限用于自家云平台,因此在多云环境下通过手动编写模板文件进行应用编排的效率较低。此外,模板文件对于应用部署的描述也不够直观,并且只有在解析模板文件执行资源创建的过程中才能知道云平台的可用资源是否满足需求。本文针对上述问题,设计实现了适用于多云环境的应用编排系统,主要工作如下:
1.针对通过手动编写模板文件方式进行应用编排存在的不足,设计了一个适用于多云环境的应用编排系统。该系统提供一个图形化设计器,可将用户创建的应用部署拓扑图转换为不同云平台支持的模板文件,从而解决模板语法差异导致的应用编排效率低的问题。同时设计了一种任务调度策略,对云平台资源消耗均衡情况和负载情况进行量化分析,从多个云平台中筛选出执行编排任务的云平台。
2.根据选用的技术方案对应用编排系统的功能进行实现,其中包括基于Token的身份认证、多云资源管理、基于SVG技术的应用部署拓扑编辑、使用LibvirtAPI采集虚拟机的使用数据以及使用ECharts图表展示监控数据。此外,针对任务调度策略使用CloudSim框架进行了仿真实验。
3.基于OpenStack搭建多云环境对系统进行测试,并以一个Web应用的部署为例验证应用编排功能。实验结果表明,本文设计的应用编排系统可以管理接入的多个云平台的租户资源,通过图形化设计器创建的应用编排任务可正常执行。