论文部分内容阅读
在资源日益紧缺、人力成本、空间使用成本日益攀升的今天,虚拟化正逐步迎来一次复兴,在当前数据中心中得到了广泛地使用。虚拟机平台,将服务器的计算资源通过抽象和虚拟化进行整合并再次分配,让资源以按需分配的方式,向用户提供服务,从而降低成本,减少维持计算机运行所需要的能源、空间、管理维护等开销。虚拟化技术的规模化发展,对虚拟机的扩展性能提出了较高的要求。虽然目前虚拟机中I/O(Input/Output)系统已经有了不错的性能,但是面临平台中虚拟机的数目不断增加时,在性能隔离和可扩展性上还亟需改善。由于I/O系统的性能很大程度上也决定着整个虚拟机平台的性能表现,不合理的资源调度、管理和分配方式会给虚拟机带来巨大的性能影响,影响用户的使用体验。因此,如何更好地实现虚拟机中I/O系统的性能隔离及可扩展性,成为虚拟机研究中的一个重要课题。经过对现有I/O系统性能的分析,在I/O资源的调度和管理、虚拟块设备访问模型的优化和面向I/O响应优化的CPU调度算法等几个方面,进行了以下的研究。针对虚拟机中现有的I/O系统资源(包括网络资源和块设备资源等)管理时静态分配不够灵活,设备的利用率偏低,无法实现按需分配以满足用户个性化需求等缺陷,提出一种基于权重的Max-min公平的资源动态分配算法。该算法依据各虚拟机资源的权重对系统中每项I/O资源动态地统筹分配,通过预留用户最低保障资源,保证了虚拟机中应用服务的正常运行;同时,I/O资源经过Max-min方式进行按权重的分配,达到了帕累托最优。通过和原有的Credit资源分配策略测试对比,Max-min公平的资源动态分配算法能够有效地满足虚拟机应用对I/O资源的差异性需求。对带宽资源的动态调整也提高了I/O系统硬件设备的利用效率,并改善了I/O系统资源的性能隔离和可扩展性。在现有的虚拟机平台中,存储系统访问过程协议层次过多、路径较长,存储设备的访问严重依赖于协议处理的速度,并对资源的开销产生显著的影响。对现有存储系统进行测试,分析了访问过程关键路径中的各模块占比,提出了一种新的驱动访问架构,通过将访问过程中瓶颈部分的关键模块优化和并行运行,达到转移存储系统瓶颈的目的。实验数据表明,在Xen虚拟机平台现有的块设备存储驱动基础上,实施并行优化,加快了系统处理的速度。与Xen现有的访问架构比较,外部存储设备的访问性能增强了20%,有效改善了虚拟机中I/O系统的访问性能。针对虚拟机中CPU调度算法对I/O系统性能的巨大影响,为了提高I/O请求的响应速度和访问性能,提出一种负载均衡的最早截止日期优先核心调度算法。算法解决了多核架构下的虚拟机CPU任务的实时响应,通过虚拟机CPU任务的计算判断物理CPU核的繁忙程度,并据此将虚拟机CPU在各物理CPU核中进行迁移和调度,在多核环境下实现了虚拟机CPU任务负载均衡的特性。和现有的调度算法相比,该算法在I/O请求密集的应用环境中,将请求响应时间缩短了50%,满足服务质量控制的需求。通过对虚拟机中I/O系统的调度进行研究,改善了虚拟机性能隔离性,为后续的研究打下了基础。