前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何借助云集群打造高性能计算

如何借助云集群打造高性能计算

作者头像
静一
发布2018-03-23 11:14:19
9640
发布2018-03-23 11:14:19
举报
文章被收录于专栏:云计算D1net云计算D1net

云计算一开始致力于为互动系统(systems of engagement)改善应用架构,而在高性能计算方面提供不了什么。而如今,领先的云服务提供商正在重构解决方案及相关的基础设施,让计算密集型应用切合实际、经济高效。

在过去,云架构是为了交付将应用程序与Dropbox、Gmail、iTunes和Evernote等存储结合起来的服务而设计的。Bright Computing公司的首席执行官Matthijs Van Leeuwen说:“集群的架构旨在暴露除了存储外的其他资源,比如在定制网络中执行厂商提供的或用户构建的应用程序所需要的那些资源。”

酷似在专用硬件上运行的传统集群,基于云的集群包括不同的分布式资源,这些资源因某个用途而结合起来。这可能包括:为可识别集群的数据库管理系统(DBMS)、高性能计算(HPC)应用或大数据分析应用交付平台。亚马逊和Rackspace之类的公有云提供商暴露资源的预定义实例,它们可以用于在云基础设施上构建集群。

OpenStack让企业组织可以定制自己的资源实例,然后使用这些资源实例在自己的私有云中构建集群。物理服务器或使用物理服务器上虚拟机管理程序的虚拟机在专用的内部部署集群中很典型。对开发人员来说,区别主要在于资源实例抽象,这是云集群与专用集群之间的主要区别。

常见的集群使用场合

Leeuwen表示,云集群可以用来取代或补充专用资源。对于运行在低配专用硬件(比如笔记本电脑)上的应用程序而言,云可以用来为集群创建实例、使用集群以及删除实例。在这种使用场合下,笔记本电脑只是访问基于云的集群的最终用户设备而已。它并不提供用来执行计算或设计网络的任何实例化资源。

在第二种常见的使用场合下,基于云的资源可以用来补充专用资源。这种情况下,内部部署的资源通过云突发流程,由云端可用的那些资源予以拓展。基于云的资源只要根据需要创建实例、使用并删除实例。可以做到内部部署资源与云端资源的这种区别对最终用户和许多类型的应用而言是透明的。

这两种使用场合都可以运用到公有云或私有云。企业组织可以设计其应用程序架构,以便直接做到这一点,或者充分利用Bright Cluster Manager之类的工具,在AWS公有云或在OpenStack私有云中构建集群,前期的开发和配置工作比较少。

弥补抽象方面的缺口

开发人员面临的最大挑战就是,用于相对专用硬件,配置云资源(比如网络、处理器和存储)的不同抽象模式。云依赖实例化资源。除了存储外,暴露基于云的处理器实例在公有云和私有云解决方案中都相当成熟。最新的云解决方案随带服务和钩子(hook),可用于指定异常需求,比如InfiniBand网络连接、GPU加速和定制的IP网络。

任何资源都需要通过这同一条路径来传输,之后才能予以暴露,以便在任何一种类型的云里面利用。由于集群通常使用低延迟高带宽的互连结构、加速器和协处理器以及其他的专门资源,这每一个在基于云的集群方面同时带来了机遇和挑战。

Leeuwen表示,企业组织完全由云服务提供商来支持存储和计算之外的资源实例化。比如说,AWS通过亚马逊VPC以及英伟达GPU实例,支持定制的IP网络。一种良好的做法就是,开发标准的配置,或者充分利用第三方云管理工具,管理存储、计算、网络和加速器等资源,无论它们驻留在企业内部,还是与AWS协同使用。

延迟对集群来说很关键

通信延迟是构建可扩展集群应用面临的最大挑战之一。一个良好的做法就是,为HPC智能化缓存数据。在数据方面,这需要认真考虑使用更具成本效益的、速度较慢的持久性存储服务(比如AWS S3)和归档服务(比如AWS Glacier),而不是成本较为高昂的RAM实例。

但是一个还要重大的网络挑战在于在运算期间,尽量缩短节点之间的通信延迟。处理期间充分利用消息传递的HPC应用最有可能出现瓶颈。大量使用消息传递接口(MPI)等接口的应用会陷入困境,除非开发人员和操作团队确保节点之间的延迟极低。

如果MPI应用在密封在私有云或公有云里面的集群中运行,这个问题比较容易解决。但如果在不同公有云或私有云基础设施上运行的不同节点之间有大量的MPI流量,这个问题就比较棘手。

这些考虑同样适用于云端运行大数据分析任务。让Hadoop分布式文件系统(HDFS)实例横跨内部部署基础设施和云基础设施没有太大意义。Leeuwen说:“但是完全在内部或完全在云端的HDFS实例实际上能取得相当好的效果。”

敏捷云整合解决方案提供商Jitterbit的首席技术官Ilan Sehayek表示,你在扩展时要保持性能的关键在于分布式架构。“让用户自行选择哪里运行API,哪里运行支持API的服务。”

另外要确保所有通信由可扩展的消息传递基础设施来支持,以便快速、有保障地处理API网关与服务之间的API请求。Sehayek补充说,面向集群的服务还需要高效的缓存技术,以便提供快速响应API这一机制。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2015-08-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云计算D1net 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档