云计算关键技术及挑战
云计算作为一种新的计算理念和模式,在技术上是将大型服务器集群,包括计算服务器,存储服务器和网络带宽资源集中起来,通过对各类可分配资源的虚拟化,利用专门软件实现对资源的按需分配,支持各种应用程序的运行,使得用户只需关注并提供业务相关的解决方案,无需在硬件平台、综合计算、安全存储、信息的一致性等方面耗费大量的人力、物力和财力,有利于提高系统的整体效率、降低成本,促进技术创新。
尽管基于云计算模式的计算平台或服务已被广泛接受并逐步走进应用,但云计算的研究总体上还处于起步阶段,许多现有的问题还没有被完全解决。本文提出了部分具有挑战性的云计算关键技术和研究问题。
1 虚拟机迁移
云计算通过允许虚拟机迁移实现整个数据中心负载平衡。此外,虚拟机迁移提高数据中心的健壮性和高度响应。虚拟机迁移是由进程迁移演变而来的。虚拟机迁移的主要优势是避免热点,然而,这并不简单。目前,检测工作负载热点和启动一个迁移缺乏应对突然的工作负载变化的灵活性。此外,虚拟机迁移时内存中的状态应当一致且高效地传输,同时还需综合考虑应用程序和物理服务器的资源负载。
2 服务器整合
服务器整合可以最大化资源的利用率,同时最小化能耗的有效方法。虚拟机迁移常用来整合驻留在多个很少使用的服务器的虚拟机到一个服务器,这样剩余的服务器可以设置为节能状态。在数据中心优化整合服务器通常是一个NP难的变种装箱优化问题。针对这个问题已经提出各种启发式方法。
服务器整合不应该影响应用程序的性能。众所周知,单个虚拟机资源的使用不停的在变化。对于虚拟机间共享的服务器资源(比如带宽、内存缓存和磁盘I/O),最大限度地整合服务器可能导致拥堵。因此,观察虚拟机负载的波动和使用这些信息有效的整合服务器是很重要的。最后,在资源拥塞发生时,系统必须能快速响应。
3 能耗管理
提高能源效率是云计算另一个主要问题。据估计,能耗成本占数据中心运营支出总额的53%。因此基础设施提供商承受了巨大的压力减少能源消耗。目标是不仅要减少数据中心的能源成本,还要达到政府法规和环境标准。
设计节能数据中心最近受到越来越多的重视。这个问题可以从多个方向解决。例如,节能的硬件架构、减慢CPU速度和关闭部分硬件组件已成为研究者的共识。有节能感知的作业调度和服务器整合两种方式可以减少能源消耗。最近的研究也已开始研究节能的网络协议和基础设施。一个关键的挑战是实现节省能源和应用程序的性能之间达到一个好的平衡。在这方面,一些研究人员最近已经开始在一个动态的云环境实现性能和能耗管理的协调解决方案。
4 流量管理和分析
分析数据流量对于今天的数据中心是重要的。例如,许多web应用程序依赖于分析数据流量来优化用户体验。网络运营商还需要知道数据流量进行许多管理和规划决策。然而,把互联网服务提供商(ISP)现有的流量测量和分析方法扩展到云计算数据中心还存在一些挑战性的问题。首先,数据中心链接的密度要比ISP高得多;其次,大多数现有的方法可以计算几百台主机的流量矩阵,但一个小型数据中心可能拥有几千台服务器;最后,现有的方法通常基于一些ISP的流量模式,但是部署在数据中心应用程序极大的改变了流量模式。此外,在云计算中应用程序的网络使用、计算和存储资源存在更紧密的耦合。
5 软件框架
云计算提供了进行大规模数据密集型应用程序的平台。通常这些应用程序利用MapReduce框架(如Hadoop可伸缩的和容错数据处理)。研究表明MapReduce作业的性能和资源消耗的是高度依赖应用程序的类型。例如,Hadoop任务sort是I/O密集型,而grep则要求大量CPU资源。此外,分配在每个Hadoop节点的VM可能是异构的。例如,一个VM可用带宽依赖于配置在同一个服务器的其他VM。因此,通过仔细选择它的配置参数值和设计更高效的调度算法能优化MapReduce应用程序的性能和成本。通过缓解瓶颈资源,可以将应用程序的执行时间显著提高。关键的挑战包括Hadoop的性能建模(无论是在线还是离线)和动态条件下自适应调度。
另一个相关的方法认为让MapReduce框架有节能感知。这种方法的基本思想是将完成工作且等待新任务的Hadoop节点进入睡眠状态。这就要求Hadoop和HDFS必须由有节能感知。此外,通常会在性能和节能感知之间进行权衡。根据目标,找到一个理想的权衡点仍是一个没有探索的研究课题。
6 存储技术和数据管理
软件框架MapReduce和它的不同实现(Hadoop和Dryad)针对分布式处理的数据密集的任务。这些框架通常运行在网际文件系统(比如GFS和HDFS)。这些文件系统的存储结构、访问模式和应用程序编程接口不同于传统的分布式文件体系。特别是他们没有实现标准POSIX接口,因此引入和传统文件系统和应用程序的兼容性问题。目前的解决方法主要包括提支持MapReduce框架使用集群文件体系方法和基于新的API原语支持可伸缩和并发数据访问等。