跳至主要内容

什么是集群计算?

集群计算是指使用多个计算节点(称为集群)以提高解决复杂问题的处理能力的过程。药物研发、蛋白质分析和人工智能模型训练等复杂的使用案例,需要对数百万个数据点进行并行处理,以完成复杂的分类和预测任务。集群计算技术协调多个计算节点,每个节点均配备独立的 CPU、GPU 和内部存储器,以共同执行相同的数据处理任务。在集群计算基础设施上运行的应用程序,其运行方式如同在单台机器上运行,无需了解基础系统的复杂性。

集群计算技术如何演变?

计算集群出现于 20 世纪 60 年代,旨在通过多台计算机协同工作,提供并行处理能力、内存及存储。早期的集群由个人计算机、工作站和服务器组成。每台计算机都连接到局域网(LAN),让用户可以像使用单台计算机一样访问资源。

多年来,支持集群计算的技术不断发展,催生出更多元化的使用案例,例如高性能计算(HPC)。高性能计算使用多个互联处理器(可能多达数十万个)以提供强大的并行计算能力。组织使用 HPC 以支持资源密集型应用程序的工作负载,例如数据分析、科学研究、机器学习和视觉处理。

云中的集群计算

通常情况下,设置计算机集群需要手动安装和配置计算机、操作系统、网络功能以及资源分配机制。此外,本地架构会给组织带来财务压力,因为扩展集群需要投资更多服务器硬件。

如今,许多云提供商都提供托管的高性能计算(HPC)集群,而组织可在该集群上轻松部署其工作负载。您无需在本地设置数千台联网计算机,即可通过 AWS HPC 获得无限制的云端处理能力。

AWS HPC 使软件团队可以利用现有的集群计算服务,对计算密集型工作负载实施创新和扩展。例如,Hypersonix 利用高性能计算,在 AWS 云中运行涉及数百万个单元的高速流体动力学模拟。

集群计算的使用案例有哪些?

下面,我们将分享集群计算技术的典型应用。

大数据分析

集群计算通过将分析任务并行分配给多台计算机,以加速数据分析。例如,您可以使用专为支持 HPC 工作负载而设计的云计算集群,以运行蒙特卡洛模拟、基因组学分析或情感分析等复杂的计算任务。

人工智能和机器学习

人工智能和机器学习(AI/ML)应用程序在训练和处理数据时需要极大的处理能力。借助专门构建的集群计算基础设施,数据科学家可以加速获得结果。例如,您可以在由 AWS Trainium(一种专为加速人工智能研究而设计的计算芯片)提供支持的云人工智能集群上运行 AI/ML 工作负载。 

3D 渲染

集群计算支持集群渲染。集群渲染是一种通过多台互联计算机在不同的屏幕间同步图像或视频的过程。您还可以使用集群渲染以支持计算机辅助工程、虚拟现实以及其他需要强大图形处理能力的应用程序。

模拟

组织使用计算集群,以模拟数据可能生成的结果,从而为业务决策提供指导。  多台计算机相互连接后,可实现交互式工作流程,确保人类专家可以提取、审查和优化基础模型的结果。例如,您可以使用联网计算机的资源,以支持基础机器学习工作负载,从而进行财务风险分析。 

集群计算如何工作?

集群计算通过网络连接两台或多台计算机,使其协同工作,形成统一的系统。通常情况下,集群架构由计算节点、领导节点、负载均衡器和心跳机制组成。当领导节点接收到请求时,会将任务传递给计算节点。根据工程师对集群的配置方式,每个节点可以单独执行任务,也可以并行执行任务。我们将在下方解释每个组件。

 

计算节点

计算节点是处理分布式任务的服务器(或云实例)。通常情况下,它们共享相同的 CPU、GPU、内存、存储、操作系统及其他计算规格。我们称之为同构架构。有时可能采用异构架构,意即其中某些集群节点具有不同的计算规格。

领导节点

领导节点是指定用于协调其他计算节点协同工作的计算机。领导节点接收传入请求,并将任务分配给其管辖下的不同节点。如果领导节点发生故障,其他节点将通过选举过程取而代之,通常由剩余节点达成共识加以实现。

负载均衡器

负载均衡器是一种将传入流量分配到相应计算节点的网络设备。它会跟踪网络活动、资源使用情况以及集群节点间的数据交换。在集群计算中,负载均衡器可防止计算节点因请求量骤增而超负荷运行。有时,领导节点会通过专用的负载均衡软件工具充当负载均衡器。

心跳机制

心跳机制会监控集群中的所有计算节点,以确保这些节点处于运行状态。如果某个节点无法响应,心跳机制会向领导节点发出警报,并将任务重新分配给其他正常运行的节点。 

集群计算有哪些类型?

组织可以设置计算集群,以支持各种业务、性能和运营目标。

负载均衡集群

负载均衡集群通过自动协调资源管理,以确保系统运行稳定。如果集群接收到请求,会将任务平均分配给所有可用节点。这可防止任何单个节点不堪重负。例如,企业在负载均衡集群上托管电子商务网站,以应对季节性流量高峰。由于所有节点协同处理请求,即使是高流量情况,用户也能享受稳定的性能。

高可用性集群

高可用性(HA)集群通过维护冗余节点以确保服务可用性。如果单个节点出现故障,负载均衡器会将流量重新分配至备用节点,以确保始终保持服务连续性。冗余负载均衡器通常包含在架构中,以防出现单点故障。如此一来,如果集群中的组件出现故障,整个集群也能迅速恢复。

您可以通过两种方式配置高可用性集群。

主动-主动配置

所有节点均处于运行状态,无论是否为其分配任务。然而,如果出现故障,负载均衡器会将任务重新分配给正常运行的节点。

主动-被动配置。

某些节点在正常操作期间处于空闲状态。它们仅在某个节点出现故障时才会被激活。

高性能集群

高性能集群将多台计算机或超级计算机进行组合,以高处理速度解决复杂的计算任务。高性能集群采用并行处理数据的方式,而非顺序处理,这对于数据挖掘等资源密集型应用程序具有显著优势。此外,计算节点在朝着共同目标努力的过程中可以交换数据。 

集群计算在人工智能中的作用是什么?

人工智能工作负载需要海量的计算资源、存储以及低延迟的网络连接。此前,组织将人工智能工作负载部署在本地数据中心。然而,随着人工智能应用程序日益复杂,它们需要更强大的计算能力和更大的存储空间。当集群计算被重新用于人工智能工作负载时,就会构建庞大的超级计算机网络,人工智能工作负载可在该网络上运行。这些超级计算机由 GPU 和 TPU 而非 CPU 提供支持,以满足高计算需求。此类集群架构(也称为人工智能超级集群)使组织能够构建、部署和扩展深度学习、自治系统、大数据分析及其他人工智能应用程序。

AWS 如何支持您的集群计算需求?

AWS 并行计算服务(AWS PCS)是一项托管服务,使用 Slurm 在 AWS 上运行和扩展高性能计算(HPC)工作负载。您可以使用 AWS PCS,以:

  • 使用内置的管理和可观测性功能,简化集群操作。
  • 构建集成 AWS 计算、存储、联网和可视化的计算集群。
  • 运行模拟或构建科学和工程模型。

Elastic Fabric Adapter(EFA)是运行在 Amazon EC2 实例上的计算节点所使用的网络接口。其自定义构建的接口可提升实例间通信的性能,这对扩展集群计算应用程序至关重要。

AWS ParallelCluster 是一款开源集群管理工具,可轻松部署和管理 Amazon EC2 集群。您可以使用简单的图形用户界面(GUI)或文本文件,以安全、自动化的方式为 HPC 应用程序所需的资源进行建模和预置。

立即创建免费账户,开始在 AWS 上使用集群计算。