7.2. NVIDIA GPU 启用


下图显示了如何为 OpenShift 启用 GPU 架构:

图 7.1. NVIDIA GPU 启用

NVIDIA GPU 启用
注意

MIG 仅支持 A30, A100, A100X, A800, AX800, H100, 和 H800。

7.2.1. GPU 和裸机

您可以在 NVIDIA 认证的裸机服务器上部署 OpenShift Container Platform,但有一些限制:

  • control plane 节点可以是 CPU 节点。
  • Worker 节点必须是 GPU 节点,只要 AI/ML 工作负载在这些 worker 节点上执行。

    另外,worker 节点可以托管一个或多个 GPU,但它们必须是相同的类型。例如,一个节点可以有两个 NVIDIA A100 GPU,但不支持在一个节点中带有一个 A100 GPU 和一个 T4 GPU。Kubernetes 的 NVIDIA 设备插件不支持在同一节点上混合不同的 GPU 模型。

  • 在使用 OpenShift 时,请注意,需要一个、三个或更多个服务器。不支持带有两个服务器的集群。单一服务器部署称为单一节点 openShift (SNO),使用此配置的 OpenShift 环境不具有高可用性。

您可以选择以下方法之一来访问容器化 GPU:

  • GPU passthrough(GPU 透传)
  • 多实例 GPU (MIG)

7.2.2. GPU 和虚拟化

虽然许多开发人员和企业都在转型到容器化应用程序和无服务器基础架构,但仍然有大量对在虚拟机(VM)上运行的应用程序进行开发和维护的需求。Red Hat OpenShift Virtualization 提供此功能,使企业能够将虚拟机合并到集群中的容器化工作流中。

您可以选择以下方法之一将 worker 节点连接到 GPU:

  • 用于访问和使用虚拟机(VM)中的 GPU 硬件的 GPU 透传。
  • 当 GPU 计算的容量没有因为工作负载而饱和时,可以进行 GPU (vGPU) 时间分片。

7.2.3. GPU 和 vSphere

您可以在可托管不同 GPU 类型的 NVIDIA 认证的 VMware vSphere 服务器上部署 OpenShift Container Platform。

如果虚拟机使用了 vGPU 实例,必须在 hypervisor 中安装 NVIDIA GPU 驱动程序。对于 VMware vSphere,此主机驱动程序以 VIB 文件的形式提供。

可分配给 worker 节点虚拟机的最大 vGPU 数量取决于 vSphere 的版本:

  • vSphere 7.0:每个虚拟机最多 4 个 vGPU
  • vSphere 8.0:每个虚拟机最大 8 个 vGPU

    注意

    vSphere 8.0 引入了对与一个虚拟机关联的多个完整或部分同配置集的支持。

您可以选择以下方法之一将 worker 节点附加到 GPU:

  • 用于访问和使用虚拟机(VM)中的 GPU 硬件的 GPU 透传
  • 当不需要所有 GPU 时,可以使用 GPU (vGPU) 时间分片

与裸机部署类似,需要一个或多个服务器。不支持带有两个服务器的集群。

7.2.4. GPU 和 Red Hat KVM

您可以在基于 NVIDIA 认证的虚拟机 (KVM) 服务器上使用 OpenShift Container Platform。

与裸机部署类似,需要一个或多个服务器。不支持带有两个服务器的集群。

但是,与裸机部署不同,您可以在服务器中使用不同类型的 GPU。这是因为您可以将这些 GPU 分配给作为 Kubernetes 节点的不同虚拟机。唯一的限制是,一个 Kubernetes 节点在自己本身上必须具有相同的 GPU 类型。

您可以选择以下方法之一来访问容器化 GPU:

  • 用于访问和使用虚拟机(VM)中的 GPU 硬件的 GPU 透传
  • 当不需要所有 GPU 时,可以使用 GPU (vGPU) 时间分片

要启用 vGPU 功能,必须在主机级别安装特殊驱动程序。这个驱动程序作为 RPM 软件包提供。对于 GPU 透传分配,不需要这个主机驱动程序。

7.2.5. GPU 和 CSP

您可以将 OpenShift Container Platform 部署到主要的云服务供应商 (CSP) 之一:Amazon Web Services (AWS)、Google Cloud Platform (GCP)或 Microsoft Azure。

有两种操作模式:完全管理的部署和自我管理的部署。

  • 在完全管理的部署中,一切都由红帽与 CSP 合作实现自动化。您可以通过 CSP Web 控制台请求 OpenShift 实例,集群由红帽自动创建并完全管理。您不必担心环境中节点故障或错误。红帽完全负责维护集群的正常运行时间。完全管理的服务在 AWS 和 Azure 上提供。对于 AWS,OpenShift 服务称为 ROSA (Red Hat OpenShift Service on AWS)。对于 Azure,该服务称为 Azure Red Hat OpenShift。
  • 在自我管理的部署中,您需要自行实例化和维护 OpenShift 集群。红帽提供了 OpenShift-install 工具来支持 OpenShift 集群的部署。自我管理的服务可全局提供给所有 CSP。

重要的是,此计算实例是一个 GPU 加速的计算实例,并且 GPU 类型与 NVIDIA AI Enterprise 支持的 GPU 列表匹配。例如,T4、V100 和 A100 是此列表的一部分。

您可以选择以下方法之一来访问容器化 GPU:

  • 用于访问和使用虚拟机(VM)中的 GPU 硬件的 GPU 透传。
  • 当不需要整个 GPU 时,可以进行 GPU (vGPU) 时间分片。

7.2.6. GPU 和 Red Hat Device Edge

Red Hat Device Edge 提供对 MicroShift 的访问。MicroShift 提供了单节点部署的简单性和资源约束(边缘)计算所需的功能和服务。Red Hat Device Edge 满足在资源受限环境中部署的裸机、虚拟、容器化或 Kubernetes 工作负载的需求。

您可以在 Red Hat Device Edge 环境中的容器上启用 NVIDIA GPU。

您可以使用 GPU 透传来访问容器化 GPU。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.