“云”对超算中心的吸引力
伴随着HPC性能的不断提升和系统的日益庞大,单一计算平台与不同应用多样化需求的矛盾也日益突出,同时后期部署、管理、能耗、散热等成本也不断提高,导致实际的计算成本居高不下,单纯的CPU利用率已不能用来作为衡量高性能计算中心服务水平和效益的惟一指标。
云计算,作为一种新型的计算模式,可以将应用、数据和IT资源以服务的方式通过网络提供给用户使用,在提供高性能计算用户所需的自主性和安全支持以外,实现更大的资源灵活性和更丰富的使用计量方式,成为许多用户优先考虑的解决方案。 采用云计算的基础架构,高性能计算中心可以自动地管理和动态地分配、部署、配置、重新配置以及回收资源,也可以自动部署多种应用平台,从而根据不同需求实 现快速高效、动态优化的资源分配。利用云计算的特性,高性能计算中心既可以为传统的计算服务提供更加灵活扩展的计算资源,也可以为各种不同项目提供动态使 用的“专属系统”。
传统“云”方案的挑战
但是,如何有效利用云的方式取决于应用,对于计算密集型和I/O密集型的高性能计算应用,传统的云计算解决方案往往束手无措,其主要的障碍包括:
1.I/O瓶颈
当前许多云架构建立在服务器虚拟化技术之上。由于虚拟机的I/O实现机制不同,在许多系统平台上会严重影响应用的网络延迟和访问带宽,造成额外的资源需求,降低了整体运算性能。对于一些基于MPI的并行程序,其性能甚至可以相差数倍。
2.数据瓶颈
高性能计算通常需要对大量的非结构化数据进行访问,由于云计算环境中所提供的计算平台具有多样性和灵活性的特点,需要考虑为不同平台提供统一的高速数据访问性能、全局命名空间和多种应用访问协议支持,同时支持和计算资源快速分配相匹配的数据管理功能。根据应用需求,存储容量应当能够动态增加或移出,确保信息始终可用。
3.管理瓶颈
传统的高性能计算,其资源一般相对固定,通常通过资源和负载管理软件来提高资源的利用率,在云计算环境中,资源上限远大于一般应用的需求相比, 如何有效地结合负载管理和资源配送,提高总体系统利用率和用户服务质量,同时满足特定应用高峰时间的需求,是构建高性能计算云所必需考虑的问题。
因此,对于高性能计算中心来说,需要结合其自身的应用特点和云计算平台的优势,通过虚拟化技术和自动化技术,同时支持物理机和虚拟机环境,实现硬件资源和软件资源的统一管理、统一分配、统一部署、统一监控和统一备份,打破单个运算对资源的独占,提供动态的高性能计算服务平台。
高性能计算云的构成
高性能计算云包含以下关键组成技术:
1.统一的用户和服务管理平台
需要提供统一的云计算服务管理门户,进行整体资源管理和服务流程管理,使平台管理员和用户可以进行自助式的各项服务管理操作,包括资源池的管理,资源管理和监控,用户服务的开通、停止、变更,用户管理,资源使用情况统计,服务申请及状态查询,能耗与节能策略管理、操作系统镜像和软件包管理等等。
根据高性能计算应用的特点,系统应提供不同的应用模板来支持不同分布式应用(如Hadoop,MPI集群)的快速部署,以及服务器之间的关联关系,如IP地址的指向,端口的匹配等等。
2.统一资源池管理
在传统的计算资源管理模式中,管理员需要考虑每一个计算资源、每一个应用系统的配置情况,需要考虑每一个应用系统所需要的各种计算资源,包括服 务器、存储、网络、应用系统等等,这种管理模式的管理成本高,也让管理员的工作变得非常复杂,需要人为考虑和干预的过程非常多,容易造成管理上的失误。同 时,管理员很难对数据中心内的计算资源和应用系统进行全盘考虑,不利于数据中心的整体优化。
云在对计算资源的管理模式上采用池化的办法,通过服务器、存储、网络等虚拟化技术将计算资源按照不同的标准组织成不同的资源池。在一个资源池 内,可以包括服务器、存储空间、网络端口等。这样,在一个资源池中我们就可以为某一个应用系统提供所需要的所有资源。通过云计算的自动化功能,云计算的管 理员可以方便、快速地在资源池中定制化地选择应用系统需要的计算资源配置,并在使用结束后进行快速回收。
3.支持物理机和虚拟机环境的动态部署引擎
为了提供计算所必需的高性能,需要同时提供包括虚拟机和物理机环境的快速、动态部署功能,并支持专用的高性能、低时延计算网络,如Infiniband、万兆以太网等。
在整体方案中,通常可以划分一部分资源进行虚拟化,从而提供一个共享的开发测试环境给用户,便于用户在正式提交作业之前进行程序的调试和试运 行。在一些具体的应用场景上,针对一些对性能要求很高的计算任务,虚拟化带来的性能开销不可忽略,因此可以考虑在不虚拟化的情况下进行资源的分配和管理。
4.灵活的服务接口
最终用户可以通过云计算管理平台获取自己项目独占的计算资源,包括硬件、应用软件和操作系统等,用户可以在计算资源上按照自己的需求进行个性化 调整。另外,用户也可以通过云计算管理平台部署的计算资源上的作业管理系统,以排队的方式和其他用户共享计算资源,来进行作业的运算。
根据多年的探索和实践,IBM正在积极地与行业领先的独立软件开发商、企业以及高校合作,将私有云计算平台扩展到高性能计算领域。通过高性能计算云管理套件,可以将独立的高性能计算资源连接成一个私有云,从而帮助用户更高效地利用他们的高性能计算资源。其参考架构如下图所示,独立的高性能计算资源连接成一个私有云。
为实现更智慧的计算平台,需要采用新的方法来设计和建设高性能计算中心,以便做到专为数据设计,针对任务进行调优,并且在云中管理。