亚马逊AWS官方博客

Tag: HPC

光环新网运营的AWS中国(北京)区域HPC集群创建

在上个博客“在AWS云上快速搭建高性能计算(HPC)集群”中,我们介绍了高性能计算的使用场景,框架和如何在AWS Global创建HPC集群,但在光环新网运营的AWS中国(北京)区域并不支持使用CFNCluster直接创建HPC,因此我们需要使用CloudFormation手工创建集群,整个过程并不复杂。步骤如下: 1.进入光环新网运营的AWS中国(北京)区域的Console,然后进入CloudFormation的服务。如下图: 2.点击 “Create New Stack”后,弹出下面的界面。 3.在界面中制定CloudFormation的模板文件如下。 https://s3.cn-north-1.amazonaws.com.cn/cfncluster-cn-north-1/templates/cfncluster.cfn.json 4.在后续界面中下面参数必须定义: Stack name:要创建HPC集群的名称 AvailablityZone:指定要在那个可用区创建HPC集群 VPCId:指定需要创建集群的VPCId MasterSubnetId:指定Master节点的子网ID KeyName:指定EC2服务器访问的key Scheduler:指定高性能计算的管理框架,默认是SGE,有Openlava,Torque等可以选择。 5.可选参数定义: InitialQueueSize:HPC集群的初始节点数 ComputeInstanceType:集群计算节点的类型 MasterInstanceType:Master节点的类型 MaxQueueSize:集群最大节点数 PlacementGroup:节点的放置组 对于全部的配置参数说明,可以参考下面链接: http://cfncluster.readthedocs.io/en/latest/configuration.html 6.点击Next后,输入集群的tag。 7.点击左下方的checkbox运行AWS Cloudformation帮助创建资源,然后点击创建。 8.等待当前HPC集群的创建状态变为COMPLETE,查看下方的Outputs消息输出,找到HPC Master节点的IP。 9.使用前面Output中的Master节点的IP或去Console中的EC2里面找到刚才创建的Master节点的机器,通过ssh连接,然后运行HPC的命令。 总结 在AWS中国区,你可以使用CloudFormation快速的创建HPC集群,AWS提供了丰富的服务器类型供你选择,你可以选择基于CPU或GPU等不同类型的服务器,也可以选择SGE,OpenLava等分布式资源管理软件来调度你的程序,如果我们不配置,默认的资源管理软件是SGE。 作者介绍 蓝勇,AWS解决方案架构师,负责基于AWS的云计算方案架构的咨询和设计,同时致力于AWS云服务在国内的应用和推广,在DR解决方案、数据仓库、RDS服务、企业应用、自动化运维等方面有着广泛的设计和实践经验。在加入AWS之前,在甲骨文中国担任资深售前工程师,负责售前方案咨询和架构设计,在数据库,中间件,大数据及企业应用方面有丰富经验。

Read More

在AWS云上快速搭建高性能计算(HPC)集群

1. 高性能计算的应用场景 科学家、工程师及科研者等经常需要使用大规模高性能计算集群(HPC)来解决计算密集或存储密集型计算的问题,常见的使用高性能计算的场景包括基因处理、金融建模与仿真、计算化学、物理建模与仿真、政府及科研项目等。在这些HPC应用中,通常需要使用HPC集群来帮助我们快速完成计算,从而减少研发成本和时间。比如基因公司为了完成遗传病组学研究,通常一次需要研究上万份基因的样本,分析上百T的数据,如果用自己机房的服务器来完成计算分析,需要数年的时间,如果使用HPC集群,提交基因分析任务,我们能使用集群的分布式资源管理器来调度并最大化的利用机器资源,在数天内完成分析任务,大大的节省计算的时间。常见的高性能计算的场景还包括:视频转码与编码、流体力学、天气预测、材料仿真、汽车碰撞仿真、风险建模、分子建模、上下文搜索、物流建模、地震勘探数据处理、基因数据计算、天体物理、深度学习、动画建模、微电子验证、图像处理、地理信息系统等。 2. 什么是高性能计算 通常所说的高性能计算使用的硬件一般分为两种情况: 高性能计算机 高性能计算机通常指使用了很多处理器(作为单个机器一部分)的机器。 比如说国内的高性能计算机“天河”、“曙光”、“神威-太湖之光”等,如“神威-太湖之光”由40个运算机柜和8个网络机柜组成,一台机柜装有1024块处理器,计算速度12亿亿次浮点运算次数。 高性能计算机集群 使用某一集群中的多台计算机(作为单个计算资源操作)的计算系统和环境。 这是通过将多台计算机,通过软件的方式组成集群,由集群的分布式资源管理器来负责集群中服务器资源的监控、调度等,我们可以将集群看做单个计算资源,然后将任务提交到集群,分布式资源管理器负责将任务调度到具体服务器执行。 比如在2013年的超级计算机500强的竞赛中,AWS使用多个C3实例组建了高性能计算机集群,使用了26496个核,计算峰值速度达593.5万亿次浮点运算次数,当年排名世界第64位。 当我们需要高性能计算的时候,通常由于机房的资源比较固定,很难有很多服务器给我们来组建集群,而借用高性能计算机如“曙光“,”神威“的成本非常高,也不太现实。这时在云上搭建高性能计算集群就非常方便,因为云上有无限量的计算及存储的资源,资源更弹性,计算过程中可以根据业务压力,调整集群服务器数量;在完成计算后,我们可以释放所有计算资源,大大降低了计算成本。 3. 如何使用AWS云搭建HPC集群 通过 AWS,您能在数分钟内完成高性能计算集群的创建,并将并行 HPC 任务的数量增加到大多数本地 HPC 环境都无法支持的规模,从而提高研究速度并缩短获得成效的时间。AWS 可按需提供针对特定应用程序进行优化的 CPU、GPU 和 FPGA 服务器,有众多的服务器类型选择,无需巨额资金投入,从而帮助降低成本。您有权限访问面向紧密耦合、IO 密集型和存储密集型工作负载的完全等分的高带宽网络,这使您能够在数千个核心之间横向扩展,从而更快获得成效。 4. 集群管理软件CFNCluster 您的HPC集群可能拥有成百上千台机器,手工搭建HPC集群意味着你需要创建所有服务器,配置所有软件,这个过程太复杂。为了简化这个操作,AWS提供了CFNCluster集群管理软件,它是由AWS开发和维护的高性能计算集群的框架,能帮助你在数分钟内完成集群的创建和生产部署,CFNCluster创建的集群支持SGE,OpenLava,Torque等高性能计算框架。下图是CFNCluster和HPC集群的关系图: 通过上图可知,通常我们需要在一台服务器上安装CFNCluster软件,然后通过CFNCluster创建和管理多个HPC的集群,HPC集群中的服务器安装了SGE, OpenLava等分布式资源管理器,你可以根据需要配置分布式资源管理器的类型 ,你也可以使用Cloudwatch监控服务,根据业务压力动态调整(AutoScaling)HPC集群计算节点的数量。当HPC集群创建完成后,你可以像以往使用HPC集群一样通过Master节点访问你的HPC集群。下面示例详细介绍了安装CFNCluster和创建HPC集群的详细过程: (1) 在AWS云中创建一台EC2服务器(使用Amazon Linux的AMI),并运行sudo pip install cfncluster安装CFNCluster,示例如下: sudo pip install cfncluster You are using pip version 6.1.1, however version 9.0.1 is available. […]

Read More