本文编者为VMware中国资深架构师安浦,基于2024年2月21日VMware by Broadcom 在 Tech Field Day 活动现场AI Field Day 4主题的系列演讲整理。演讲嘉宾为Shawn Kelly,Principal Engineer, VMware By Broadcom。
内容摘要
VMware Cloud Foundation(简称VCF)针对Private AI的关键能力:
-VCF简化了AI生产流程,为企业提供了无与伦比的灵活性、控制力和选择权。通过Private AI,企业可以在各种环境中无缝部署一流的人工智能服务,同时确保隐私和安全。
-VCF解决了与AI项目相关的许多基础设施挑战,例如敏捷性、工作负载迁移、避免空闲计算资源、扩展、生命周期管理、隐私和安全等。
-VCF是VMware的战略方向, VCF底层包含了久经考验的vSphere技术,使用VCF本质上也涉及使用vSAN。
-在性能方面,VMware的hypervisor已持续优化了20多年,匹配裸金属速度,在AI工作负载中只有正负2%以内的性能差异。在某些情况下,vSphere虚拟机的性能甚至超过了裸机,达到了5%的提升
-VCF支持NVIDIA的NVLink和NVSwitch,允许多个GPU直接相互连接。
Private AI与第三方的合作示例:
-与Anyscale Ray(用于扩展Python AI工作负载的开源框架)的集成,可以快速启动AI任务的工作节点(RayLits)。NVIDIA会处理GPU的许可,但Ray是一个开源插件,没有额外的许可成本。
-与IBM watsonx的合作,从而为具有特定数据合规性要求的客户提供了IBM watsonx功能。可在VCF上部署运行OpenShift,然后,再在其上部署watsonx平台。
演讲正文
本演讲将深入探讨VMware平台上可以运行的AI服务。在进一步讨论之前,或许可以提出这样一个问题:为什么客户会选择在VMware的平台上运行这些特定类型的工作负载?
目前,我们观察到约有50%以上的项目从试点阶段顺利过渡到生产阶段。
这一转变背后的原因在于这些环境中存在的复杂性。在左侧,涵盖数据科学领域的多个方面,包括数据收集的配置、特征提取等,这些都是数据科学家必须精心处理的任务。而在右侧,则是核心的IT基础设施领域,它涵盖了基础设施监控、管理工具以及资源本身。当然,在中间部分,我们看到了算法和模型。但实际上,当你考虑到全面的生产规模时,这部分只是冰山一角。
客户选择在VMware平台上运行AI服务的原因,是因为VMware能够有效解决这些基础设施方面的挑战。多年来,VMware已经积累了丰富的经验,这使得VMware能够提供如灵活性等关键优势。例如,VMware平台能够在几分钟内重新配置和重新分配硬件资源,而不是像裸机那样可能需要数小时甚至数天。
此外,VMware解决方案还能够提供无中断的工作负载迁移。无论是因为需要对服务器进行维护,还是为了重新配置资源以平衡数据中心中的工作负载,VMware都能轻松实现从一个服务器到另一个服务器的迁移工作。避免裸机孤岛也是VMware方案的优势之一。有时,计算资源虽然强大,并配备了GPU,但可能因为被分配给单一项目或团队而导致组织内的其它项目和团队无法使用这些昂贵的算力资源。
规模的可扩展性同样至关重要。VMware致力于从一开始就正确规划算力资源,这意味着可以以裸机无法实现的方式对其进行划分,从而确保资源得到最有效的利用,并能够快速扩展以满足需求。有时,这也意味着在需要时缩小规模,以释放算力资源给其它可以充分利用它们的工作负载。
生命周期管理同样不可忽视。VMware简化了维护、升级、打补丁等流程,提高了可靠性和可用性。几十年来,VMware一直在为企业工作负载提供这些服务,而这些久经考验的方法同样适用于AI。当然,隐私和安全是我们始终关注的重点,尤其是在涉及敏感数据时。
VMware Cloud Foundation是一个包含多种产品的解决方案套件,这其中涵盖了SDDC Manager、vSphere、NSX、vSAN,以及在其之上的Aria Suite。这是VMware未来的主要发展方向,特别是对于VMware的重点客户而言。但这并不意味着vSphere会消失,VMware依然会将其作为独立产品继续提供,只是这两者在底层都使用了vSphere技术。
目前,使用VCF进行AI工作和单纯地采用vSphere支持AI工作,这两种类型的客户数量都在稳步增长。对于使用VCF的客户,他们在技术上也必然使用了vSAN,因为vSAN是VCF不可或缺的核心组件。
另外,VCF中也可以使用外部存储。很多人认为vSAN是部署VCF的唯一方法,但实际上,对于这类工作负载,你也可以利用NFS来存储数据,这种方法是完全可行的。
性能至关重要,且经常成为讨论的焦点。人们可能会担心,添加额外的虚拟化层会导致延迟增加。但实际测试表明并非如此。这得益于VMware针对虚拟化调度程序进行了长达二十年的性能优化工作,确保vSphere平台能够保持与裸机相当的性能水平。可以看到橙色线代表的就是裸机的性能。基准测试显示,在AI工作负载上,vSphere虚拟机的表现与裸机相比差距在正负2%以内。事实上,从最后两个图表中还可以看到,在某些情况下,vSphere虚拟机的性能甚至超过了裸机,达到了5%的提升,这主要得益于vSphere高效的调度程序。
有用户也许会担心,当将这些GPU切片并在多个虚拟机之间共享时,是否会引入额外的开销?实际上,在相关的测试中,并未观察到太多的额外开销。NVIDIA已经对这些情况进行了基准测试,对于扩展他们的方案,性能表现基本上是线性的。
基于VCF的能力和性能,这构成了VMware Private AI的基础。VCF支持NVIDIA的NVLink技术,实现GPU之间的直接连接,从而避免数据在CPU和内存之间的往返传输。VMware提供了几种不同的配置方式。其中包括NVSwitch,它会嵌入在主板上,还有NVLink Bridges,用户可以使用它将两个相邻的PCI插槽中的GPU连接起来,只需一些小的物理连接件即可。
Private AI是一种架构方法,旨在帮助企业在AI的商业利益与组织的隐私和合规需求之间找到平衡。面对这一问题,VMware希望能与整个开放生态系统伙伴紧密合作。
这里涉及的内容很多,时间所限无法一一详述,这里会展示几项VMware正在做的事情。
与Anyscale Ray(用于扩展Python AI工作负载的开源框架)的集成
首先是Private AI with Ray,Ray是一个开源框架,它极大地简化了Python工作负载和AI工作负载的扩展。许多知名公司都在使用它,如OpenAI、Uber、LinkedIn等。
在vSphere中利用Ray的方式,是将其实现为一个插件。在左侧,有一个Ray Head节点,而在右侧,你可以看到那些Raylets节点,它们实际上是工作节点。它的工作原理是,从Ray Head节点出发,自动伸缩器向vSphere中的分布式资源调度程序发送算力请求。然后,这个分布式资源调度程序会从预定义的资源池中部署算力资源。这些算力资源将以Raylets或工作节点的形式存在,并由Ray Head节点进行编排。
Raylets是以虚拟机的方式部署的,可以通过这个演示看看在vSphere侧的实际表现会是如何。
这里有一个vSphere环境,其中包含一个计算集群,该集群由三台主机和一个资源池组成。此外,还有一个虚拟机,将用于执行即时克隆操作。
现在,通过运行Ray up命令,非常迅速地同时启动了一个Head节点和一个单独的工作节点,符合之前提到的三秒钟要求,在公有云中执行此操作,可能需要30秒,而在裸机上可能需要大约5分钟。
现在,已经有了Ray环境,并且已经切换到Head节点。可以再次查看集群状态,其中包括Head节点和工作节点。
现在,进入到一个Python应用程序中,计划对癌症检测进行训练。但这次,将使用两个工作节点,每个节点配备两个CPU。非常简单,只需将得到的地址复制粘贴到Head节点上,然后运行作业。
现在,如果回到vSphere界面,可以查看后台的操作情况。如果转到任务管理,可以看到即时克隆正在进行中,这也是为什么启动过程只需要几秒钟的原因。我们正在克隆已经存在的虚拟机,并快速创建了一个Head节点和几个工作节点。
也可以直接在Python代码中更改CPU为GPU,通常会在一个YAML文件中进行此类配置。如果客户目前只使用CPU,并希望同时利用GPU,这是完全可以的,不需要重新编码。
要注意的是,Ray对CPU和GPU的许可存在着区别。GPU的许可通常通过NVIDIA进行,因此可能会涉及一些额外的许可费用,而CPU则已经内置在服务器上。从Ray的角度来看,作为一个开源插件,VMware平台并不涉及许可问题。这主要是NVIDIA的事情,当涉及到GPU时,他们会处理自己的许可,而VMware不参与这一过程。
与IBM watsonx的合作
接下来,是关于VMware与IBM合作的Private AI,这是一个引人注目的话题。比如有客户正在使用IBM watsonx,并且非常喜欢它,但由于合规性原因,他们无法将数据放在公有云中。当他们看到VMware上的解决方案时,感到非常兴奋。这个解决方案的核心思路是将IBM watsonx的整个数据平台与VMware Cloud Foundation进行集成,从而为用户提供实际上是在本地的IBM watsonx的体验。
从技术堆栈的角度来看,底部是计算层,包括 VMware Cloud Foundation及其带来的所有优势,VCF 还注重安全性,提供了身份验证、访问管理等功能。
在此基础上,去运行OpenShift。虽然有些人可能会对VMware的平台上运行OpenShift感到惊讶,因为VMware也有自己的VMware Tanzu解决方案,但这两者并不是竞争关系。实际上,在VMware平台上运行OpenShift已经存在很多年,并且它们都运行得非常稳定。目前有很多OpenShift实例正在VMware平台上运行。
然后,我们在OpenShift之上部署watsonx平台,这个平台与云环境非常相似,并且还部署了像Granite、Flan、StarCoder、Llama 2等模型。
当涉及到隐私和安全性方面时,请深入研究一下这里的不同组件,比如vSphere,具备安全启动、虚拟TPM、vTrust Authority VM和加密等功能。所有这些安全措施都是多年来在VMware平台上开发的。
此外,还可以利用来自NSX的微分段技术。这是一种有效地保护虚拟机的能力,使得可以在虚拟机内部具有所有上下文。防火墙不在虚拟机内部,也不在客户操作系统内部,而是在虚拟机外部,靠近虚拟机的地方。如果有人能够进入该虚拟机,他们也无法关闭防火墙。
然而,仅仅保护基础架构部件并不足够。watsonx也提供了他们自己的保护措施,他们投入了大量时间来处理治理问题,并确保在隐私合规性方面也有所作为。
这更像是一种分层的方法。存在多个不同的层次,VMware试图在每个层次上都进行保护。
对于watsonx,当涉及到用户部署的模型时,可以拥有多种选择,有像Granite这样的专有模型,它是一个基础模型。还有Slate,另一个基础模型。此外,还有开源模型,所有常见的模型都在那里,包括像Flan和GPT这样的。还有第三方模型,如Llama 2、StarCoder等,所有这些都可以在这个平台上运行。
目前正在实现的应用场景有哪些呢?代码生成是一个很常见的应用场景,来自程序员的需求相当大。我们想尽一切办法来加速他们的工作,所以代码生成有助于解决这个问题。接触中心解决方案,在VMware,总是有很多人来寻求支持,并希望尽快解决问题。这使得我们可以尽快将他们引导到合适的人,或者让我们的团队尽快给出正确的答案。
watsonx 不仅仅是一个框架,它实际上是一个完整的AI平台,是一个云服务,通常是一个云中的服务。现在,VMware将其带到了本地,放在了Cloud Foundation之上。
真实的客户应用场景多种多样。有的数据希望放在云服务中,有的则希望保留在本地。因此,IBM将客户引导到VMware这里,与VMware合作处理本地使用案例。对于客户来说,这是一种混合的方法,对IBM来说也是如此。
如果客户希望将OpenShift和watsonx集成在一起,并且希望这些服务在本地运行,那么VCF就是他们的理想选择。此外,加上Private AI的额外功能,VMware可以为客户提供更加全面的支持。
有一家石油和天然气公司。他们已经在使用watsonx云服务,但现在他们希望将这些服务迁移到他们的石油钻井平台上,这是一个典型的本地使用案例。目前,他们正在使用VCF来实现这一目标。接下来是高级信息检索,关于文件搜索政策,我们看到这些检索、增强生成应用场景越来越受欢迎。通过将数据与AI的智能相结合,能够快速获取最新信息的正确答案。同时,还需要考虑如何保护想要响应的内容,确保信息的安全性。
VMware AI解决方案相关信息链接
Artificial Intelligence Solutions | VMware AI: https://www.vmware.com/artificial-intelligence.html
VMware's Approach to Private AI: https://news.vmware.com/technologies/vmware-technology-private-ai
Deploying Enterprise-Ready Generative AI on VMware Private AI: https://core.vmware.com/resource/deploying-enterprise-ready-generative-ai-vmware-vmware-cloud-foundation
网友评论