英伟达如何拥抱云原生来扩展GPU基础架构?

英伟达如何拥抱云原生来扩展GPU基础架构?
作者:Janakiram MSV 编译:沈建苗

容器已成为现代工作负载的标准部署单元。容器的可移植性和可扩展性使开发和运营人员能够快速构建和部署应用程序。

Kubernetes已成为现代基础架构的基石,可管理和编排运行容器化工作负载的基础架构和应用程序。它是继Linux之后发展最迅猛的开源技术之一。

云原生是一种架构模式,用于在几乎任何环境下开发和部署由Kubernetes管理的容器化应用程序,包括本地数据中心、公共云,甚至部署在轮船上的远程边缘设备等环境。

英伟达是AI基础架构和平台领域无可争议的领导厂商,它积极采用容器和Kubernetes,使云原生开发人员易于访问及使用GPU。它构建了各种服务和工具,以缩小GPU和DPU等硬件加速器与Kubernetes生态系统之间的差距。

看到英伟达豪赌云原生不足为奇。Kubernetes和GPU这对组合为AI工作负载提供了无与伦比的规模。Kubernetes旨在通过汇集来自集群中所有机器的计算资源来扩展基础架构。GPU用于复杂深度学习模型的训练和推理所需要的大规模并行性。您在GPU机器集群上运行Kubernetes时,将实现一举两得:规模和并行性。

英伟达DGX和EGX等一些关键平台将Kubernetes作为编排层来运行。英伟达正与平台供应商合作,将其云原生GPU基础架构与Kubernetes整合起来。

 

NVIDIA Container Toolkit将GPU呈现在容器面前
容器运行时环境是云原生平台的核心部分。它们是管理容器生命周期的底层操作系统的一部分。Docker Engine和Containerd是云原生领域最受欢迎的容器运行时环境。

英伟达构建了NVIDIA Container Toolkit,这是Docker Engine和Containerd的扩展,使GPU对容器可见。它与容器运行时环境紧密集成,提供容器化的两个好处:可移植性和可扩展性。

图1. NVIDIA Container Toolkit
管理员通常通过安装图形驱动程序开始配置,然后安装CUDA库和运行时环境,这些可以从TensorFlow和PyTorch等深度学习框架来访问。堆栈必须运行GPU驱动程序、CUDA、Python和机器学习框架的兼容版本才能获得最佳性能。版本的任何差异都会使开发人员无法访问GPU。

 

NVIDIA Container Toolkit减少了与配置GPU软件堆栈有关的阻力或障碍。只要有图形驱动程序的支持版本,开发人员无需安装整个堆栈,即可获取CUDA容器镜像。

NVIDIA Container Toolkit可以安装在运行A100等高端GPU的服务器上,甚至可以安装在Jetson Nano等边缘设备上。

 

NGC:面向云原生、针对GPU优化的AI资源的中心

NVIDIA GPU Cloud(NGC)是访问针对GPU优化的容器化软件的一站式中心。NGC的关键要素之一是NVIDIA Container Registry(NVCR),这是一个镜像注册中心,含有一组容器镜像,提供了即时访问CUDA和HPC软件的机制。

 

NGC托管容器镜像、Helm图、预训练模型、Jupyter笔记本以及Jarvis和TLT等工具包。任何开发人员都可以免费注册NGC,以下载针对GPU优化的软件。


图2. NGC

NVIDIA Container Toolkit和NVCR这对组合大大简化了构建AI应用程序方面的工作流程。

 

DGX客户可以注册NGC私有注册中心,以获得专用且安全的存储库来存储敏感工件。

 

NVIDIA DeepOps:面向GPU就绪的Kubernetes和Kubeflow的开源安装程序

NVIDIA DeepOps是一个集成式开源安装程序,用于部署Kubernetes和Kubeflow。英伟达汇集了同类中最佳软件,以加快安装和配置运行Kubernetes的GPU集群这项工作。它依靠Kubespray将Kubernetes部署到一台或多台机器上。

 

NVIDIA DeepOps可自动安装Kubeflow,这是一个在Kubernetes上运行的开源云原生机器学习平台。

 

DeepOps安装程序部署从容器运行时环境、Kubernetes控制平面及节点、NVIDIA GPU operator到覆盖存储层的一切。客户在短短30分钟内,就可以拥有在单个节点(比如DGX设备)或GPU服务器集群上运行的一套全面配置的云原生、针对GPU优化的基础架构。
GPU Operator是专为Kubernetes设计的专用软件。它将对从驱动程序、CUDA运行时环境到cuDNN库的所有内容进行容器化,无需在服务器上安装堆栈。英伟达还构建了一个类似的operator,以便DPU将迈络思SmartNIC呈现在Kubernetes工作负载的面前。

图3. GPU Operator
DeepOps支持上游Kubernetes和企业容器平台(比如Red Hat OpenShift)。

 

随着容器化和云原生技术成为英伟达的关键,它会考虑收购一家Kubernetes平台公司来构建自己的堆栈。英伟达的官方Kubernetes发行版与NGC、Container Toolkit和GPU Operator互为补充,以提供一种端到端云原生平台。英伟达提供的针对GPU优化的集成式Kubernetes平台能够成为AI和HPC基础架构的基石。

K8S中文社区微信公众号

评论 抢沙发

登录后评论

立即登录