欢迎访问深圳敏捷云计算科技有限公司!

甲骨文云OCI部署由NVIDIA Tensor Core GPU驱动的高性能计算裸机服务器集群

2024-03-05 原创文章

部署人工智能(AI)、机器学习(ML)或深度学习(DL)模型,如BERT-Large用于语言建模,通常需要高性能计算(HPC)。


Oracle云基础设施(OCI)提供直接访问由NVIDIA Tensor Core GPU驱动的裸机服务器集群。HPC裸机GPU集群为部署AI、ML或DL提供业界最佳的性价比。您可以托管500+ GPU集群,并根据需求轻松扩展。


架构

此架构展示了典型系统中各个组件之间的关系,以HPC裸机GPU集群为核心。它适用于许多AI、ML或DL应用,如BERT-Large、GPT2/3、Jasper、MaskRCNN和GNMT。


BERT是一种在自然语言处理(NLP)任务中流行的预训练深度学习模型。它可以针对特定应用或领域进行微调。更大的变体,BERT-large,包含3.4亿参数。在没有数百个相同GPU的大规模分布式集群的情况下,训练和推理时间是巨大的。GPU集群需要高I/O吞吐量和低延迟的集群文件系统。您能处理数据的多少、速度和成本尤其关键于实时AI推理应用。


Oracle云基础设施(OCI)利用Oracle的低延迟集群网络,基于远程直接内存访问(RDMA),通过聚合以太网(RoCE)运行,延迟小于2微秒。RDMA允许节点之间的低延迟连接,并在不涉及CPU的情况下访问GPU内存。OCI HPC使客户能够将多达64个裸机节点聚集起来,每个节点配备8个NVIDIA A100 GPU,总计512个GPU。OCI提供多种高性能、低延迟的存储解决方案,适用于HPC工作负载,如本地NVMe SSD、网络和并行文件系统。OCI裸机服务器配备NVMe SSD本地存储。它可用于创建用于临时文件的临时NFS或临时并行文件系统(BeeOND、Weka),使用块卷多附加功能,您可以使用单个卷存储整个训练数据集,并将其附加到多个GPU实例。或者您可以使用英特尔Ice lake BM或VM以及平衡性能层块存储来构建具有最高吞吐量和最低成本的文件服务器,使用基于NFS的(NFS-HA、FSS)或并行文件系统(Weka.io、Spectrum Scale、BeeGFS、BeeOND)。训练结果保存在Oracle云基础设施对象存储中,用于长期存储。以下图表说明了这一参考架构。

架构包含以下组件:

区域

  • Oracle云基础设施区域是一个包含一个或多个数据中心的地理区域,这些数据中心被称为可用性域。区域彼此独立,相距甚远(跨越国家甚至洲际)。


云守护

  • 您可以使用Oracle Cloud Guard来监控和维护Oracle云基础设施中资源的安全。Cloud Guard使用您定义的检测配方来检查资源的安全漏洞,并监控操作员和用户的风险活动。当检测到任何错误配置或不安全活动时,Cloud Guard推荐纠正措施,并协助采取这些措施,这是基于您可以定义的响应配方。


可用性域

  • 可用性域是区域内独立、自主的数据中心。每个可用性域中的物理资源与其他可用性域的资源隔离,提供故障容忍。可用性域不共享如电力或冷却等基础设施,或内部可用性域网络。因此,一个可用性域的故障不太可能影响该区域内的其他可用性域。


故障域

  • 故障域是可用性域内的硬件和基础设施分组。每个可用性域有三个具有独立电源和硬件的故障域。当您在多个故障域中分布资源时,您的应用程序可以容忍物理服务器故障、系统维护和故障域内的电力故障。


分区

  • 分区是Oracle云基础设施租户内跨区域的逻辑分区。使用分区来组织Oracle云中的资源,控制对资源的访问,并设置使用配额。要控制对特定分区中资源的访问,您需要定义策略,指定谁可以访问资源以及他们可以执行哪些操作。


虚拟云网络(VCN)和子网

  • VCN是您在Oracle云基础设施区域中设置的可定制的、软件定义的网络。就像传统数据中心网络一样,VCNs使您能够完全控制您的网络环境。VCN可以具有多个不重叠的CIDR块,您可以在创建VCN后更改这些块。您可以将VCN分割成子网,这些子网可以被限定在一个区域或一个可用性域。每个子网包含一个连续的地址范围,这些地址不与VCN中的其他子网重叠。您可以在创建后更改子网的大小。子网可以是公共的或私有的。


点对点VPN

  • 点对点VPN提供了您的本地网络与Oracle云基础设施中的VCNs之间的IPSec VPN连接。IPSec协议套件在数据包从源传输到目的地之前加密IP流量,并在到达时解密流量。


FastConnect

  • Oracle云基础设施FastConnect提供了一种在您的数据中心和Oracle云基础设施之间创建专用、私有连接的简便方式。与基于互联网的连接相比,FastConnect提供了更高的带宽选项和更可靠的网络体验。


动态路由网关(DRG)

  • DRG是一个虚拟路由器,提供了从VCN到区域外网络的私有网络流量路径,如另一个Oracle云基础设施区域的VCN、本地网络或其他云提供商的网络。


网络地址转换(NAT)网关

  • NAT网关允许VCN中的私有资源访问互联网上的主机,而不会使这些资源暴露于来自互联网的入站连接。


互联网网关

  • 互联网网关允许VCN中的公共子网与公共互联网之间的流量交换。


服务网关

  • 服务网关提供了从VCN到其他服务(如Oracle云基础设施对象存储)的访问。从VCN到Oracle服务的流量经过Oracle网络结构,从不穿越互联网。


安全列表

  • 对于每个子网,您可以创建安全规则,指定必须允许进出子网的流量的来源、目的地和类型。


路由表

  • 虚拟路由表包含规则,用于将子网的流量路由到VCN外部的目的地,通常通过网关。


堡垒主机

  • 堡垒主机是一个计算实例,作为从云外部进入拓扑的安全、受控的入口点。堡垒主机通常部署在非军事区(DMZ)。它使您能够通过将敏感资源放置在无法从云外部直接访问的私有网络中来保护这些资源。拓扑有一个单一的、已知的入口点,您可以定期监控和审计。因此,您可以避免暴露拓扑的更敏感部分,同时不妨碍对它们的访问。


堡垒节点(头节点)

  • 堡垒节点(头节点)使用基于Web的门户连接到头节点并安排HPC作业。作业请求通过Oracle云基础设施FastConnect或IPSec VPN传递给头节点。头节点还将客户数据集发送到文件存储,并可以对数据进行一些预处理。头节点可以配置HPC节点集群,并在作业完成后删除HPC集群。头节点包含BERT模型,运行调度器,并可以作为访问集群的堡垒主机。它具有消息传递接口(MPI)并通过REST API自动扩展裸机节点。HPC集群根据需求配置裸机节点。模型训练和推理使用附加到裸机节点的4 x 6.4TB NVMe SSD本地存储。如果您使用我们的解决方案启动基础设施,架构部署头节点,且默认在NVMe SSD存储的/mnt上安装nfs-share。


HPC集群节点

  • 头节点配置并终止这些计算节点,这些节点是启用了RDMA的集群。它们处理存储在文件存储中的数据并将结果返回到文件存储。


NFS服务器

  • 头节点将其中一个HPC节点提升为NFS服务器。


实例池

  • 实例池是区域内由相同实例配置创建并作为一个组管理的实例群组。
  • 实例池允许您作为一个组在同一区域内创建和管理多个计算实例。它们还支持与其他服务的集成,如Oracle云基础设施负载均衡服务和Oracle云基础设施身份与访问管理服务。


裸机数据库系统

  • 裸机(BM)数据库系统是运行Oracle Linux 7的单个裸机服务器,配有本地连接的NVMe存储。使用裸机GPU形状进行硬件加速分析和其他计算。
  • 当您启动一个裸机数据库系统时,您选择一个形状和一个单一的Oracle数据库版本,适用于该数据库系统上的所有数据库。每个数据库系统可以有多个数据库家园,这些数据库家园可以是不同的版本。每个数据库家园只能有一个数据库,其版本与数据库家园相同。
  • 形状决定了分配给数据库系统的资源。选择,如2或3路镜像和为数据文件分配的空间,会影响系统上可用存储的数量。


对象存储

  • 对象存储提供了对大量结构化和非结构化数据的快速访问,这些数据可以是任何内容类型,包括数据库备份、分析数据和图像及视频等丰富内容。您可以安全且可靠地存储数据,然后直接从互联网或云平台内检索数据。您可以无缝扩展存储,而不会经历性能或服务可靠性的下降。对于您需要快速、立即和频繁访问的“热”存储,使用标准存储。对于您长期保留且很少或几乎不访问的“冷”存储,使用归档存储。

                 


建议

使用以下建议作为起点。您的需求可能与这里描述的架构不同。

VCN

  • 创建VCN时,根据您计划附加到VCN子网中的资源数量来确定所需的CIDR块数量及每个块的大小。使用标准私有IP地址空间内的CIDR块。
  • 选择与您打算设置私有连接的任何其他网络(在Oracle云基础设施、您的本地数据中心或其他云提供商中)不重叠的CIDR块。
  • 创建VCN后,您可以更改、添加和删除其CIDR块。
  • 设计子网时,考虑您的流量流向和安全要求。将特定层或角色内的所有资源附加到同一子网,这可以作为安全边界。
  • 使用区域子网。


安全

  • 主动使用Oracle Cloud Guard来监控和维护Oracle云基础设施中资源的安全。Cloud Guard使用您定义的检测配方来检查资源的安全漏洞,并监控操作员和用户的风险活动。当检测到任何错误配置或不安全活动时,Cloud Guard推荐纠正措施,并协助采取这些措施,这是基于您可以定义的响应配方。
  • 对于需要最大安全性的资源,Oracle建议您使用安全区域。安全区域是与Oracle定义的基于最佳实践的安全策略配方相关联的分区。例如,安全区域中的资源不得从公共互联网访问,并且必须使用客户管理的密钥加密。在安全区域中创建和更新资源时,Oracle云基础设施将操作与安全区域配方中的策略进行验证,并拒绝违反任何策略的操作。


Cloud Guard

  • 克隆并自定义Oracle提供的默认配方,以创建自定义的检测器和响应者配方。这些配方使您能够指定哪些类型的安全违规会生成警告以及允许对其执行哪些操作。例如,您可能希望检测将可见性设置为公共的对象存储桶。
  • 在租户级别应用Cloud Guard,以覆盖最广范围并减少维护多个配置的行政负担。
  • 您还可以使用托管列表功能将特定配置应用于检测器。


安全区域

  • 对于需要最大安全性的资源,Oracle建议您使用安全区域。安全区域是与Oracle定义的基于最佳实践的安全策略配方相关联的分区。例如,安全区域中的资源不得从公共互联网访问,并且必须使用客户管理的密钥加密。在安全区域中创建和更新资源时,Oracle云基础设施将操作与安全区域配方中的策略进行验证,并拒绝违反任何策略的操作。


网络安全组(NSGs)

  • 您可以使用NSGs来定义一组应用于特定VNIC的入站和出站规则。我们建议使用NSGs而不是安全列表,因为NSGs使您能够将VCN的子网架构与应用程序的安全要求分开。


HPC节点

  • 部署HPC裸机形状以获得完整性能。
  • 使用BM.HPC4.8形状,配备8个A100 Tensor Core GPU,每个具有40 GB内存,2 x 32核AMD处理器,频率为2.9 GHz,2048 GB DDR4内存,8 x 200 Gbps网络,每个节点最多4 x 6.4-TB本地NVMe SSD存储,每个节点最多1PB块存储。
  • 聚集多达64个裸机节点,提供512个GPU和4096个CPU。



考虑因素

在部署此参考架构时,请考虑以下几点。


性能

  • 根据工作负载的大小,确定您希望BERT运行在多少核心上。这一决定确保模拟能够及时完成。
  • 为了获得最佳性能,请选择具有适当带宽的正确计算形状。


可用性

  • 根据您的部署要求和地区,考虑使用高可用性选项。选项包括在一个区域中使用多个可用性域和故障域。 监控和警报为您的节点设置CPU和内存使用的监控和警报,以便根据需要调整形状的规模。


成本

  • 裸机GPU实例提供必要的CPU功率,但成本更高。评估您的需求以选择合适的计算形状。
  • 在没有运行作业时,您可以删除集群。


集群文件系统

  • 有多种场景:
  1. 随HPC形状提供的本地NVMe SSD存储。
  2. 多附加块卷可提供高达2,680 MB/s的IO吞吐量或700k IOPS。
  3. 您还可以根据性能要求,在NVMe SSD存储或块存储上安装自己的并行文件系统。OCI提供临时和永久基于NFS的(NFS-HA、FSS)或并行文件系统(weka.io、Spectrum Scale、BeeGFS、BeeOND、Lustre、Gluster、Quobyte)解决方案,详见“了解更多”。如需为您的需求设计最优化的解决方案,请联系HPC存储团队。



部署

此参考架构的Terraform代码可作为样本堆栈在Oracle云基础设施资源管理器中获取。您还可以从GitHub下载代码,并根据您的需求进行自定义。


  • 对于Oracle云基础设施 - 高性能计算与RDMA集群网络,使用Oracle云基础设施资源管理器部署:点击。如果您尚未登录,请输入租户和用户凭据。查看并接受条款和条件。选择您希望部署堆栈的区域。按照屏幕上的提示和指示创建堆栈。创建堆栈后,点击Terraform操作,并选择计划。等待作业完成,并查看计划。如需进行任何更改,返回到堆栈详细信息页面,点击编辑堆栈,并进行所需更改。然后,再次运行计划操作。如果不需要进一步更改,返回到堆栈详细信息页面,点击Terraform操作,并选择应用。




对于Oracle云基础设施 - 高性能计算,使用GitHub中的Terraform代码部署:


  1. 前往GitHub。
  2. 克隆或下载存储库到您的本地计算机。
  3. 按照README文档中的指示操作。



开启您的Oracle云之旅:Agilewing - 您的智能云服务伙伴

作为Oracle的高级合作伙伴,Agilewing正重新定义企业体验Oracle云服务的方式。借助于其简化的开户流程和一流的技术支持,Agilewing将复杂的开户和操作流程转化为一种轻松、直观的体验。通过我们的一站式服务,您可以迅速开启并享受Oracle云的全方位服务,从而无缝融入云端世界。


Agilewing的AgileCDN服务,结合了OCI的云基础服务,提供了一流的全球内容加速解决方案。超过2800个全球POP节点和7000个直连点的强大网络,确保了无论您的业务扩展到全球哪个角落,都能保持高效稳定的运行。


利用Oracle云的先进技术,Agilewing致力于简化云服务搭建、云迁移和业务出海的过程。我们的合作模式为客户带来经济高效的解决方案,使他们能够更加专注于核心业务,同时享受Oracle云的高性能和安全保障。


Oracle云服务,作为一个充满潜力的领域,以其高性能、安全性和全球统一的服务标准,为各类企业开启了新的机遇之门。通过Agilewing的专业服务,无论是个人用户还是企业,都能轻松步入这个充满技术革新和高效能的新时代。现在,就让Agilewing引领您开始探索Oracle云服务,打开一个全新的世界大门。