注意:
- 本教程需要访问 Oracle Cloud。要注册免费账户,请参阅开始使用 Oracle Cloud Infrastructure 免费套餐。
- 它对 Oracle Cloud Infrastructure 身份证明、租户和区间使用示例值。完成实验室后,请使用特定于云环境的那些值替换这些值。
使用 OCI 堆栈将裸金属 GPU 节点作为自行管理的节点迁移到 OKE
简介
在本教程中,我们将介绍使用 Oracle Cloud Infrastructure (OCI) 堆栈将裸金属 (BM) GPU 节点迁移到 Oracle Cloud Infrastructure Kubernetes Engine (OKE) 自托管节点的过程。
首先,让我们了解什么是自我管理的节点,以及为什么它们非常适合在 OKE 上运行 GPU。
什么是 OKE 自托管节点?
顾名思义,自我管理的节点完全由客户控制和维护。这包括预配、扩展、配置、升级和维护任务,例如操作系统 (Operating System,OS) 打补丁和节点替换。虽然这种方法需要更多的手动管理,但它提供了最大的灵活性和控制力,使其适用于像在 GPU 上运行的专用工作负载。
自托管节点的主要功能:
-
完全控制:客户可以完全控制节点生命周期,包括预配、OS 更新、扩展和终止。
-
定制配置:客户可以使用定制映像、安装特定软件、配置网络或使用替代实例类型。
-
手动升级:与 OKE 管理的节点池不同,客户必须手动升级 Kubernetes 版本、安全补丁程序和 OS 更新。
-
自带节点 (BYON):客户可以使用现有的 OCI 计算实例作为 OKE 集群中的 worker 节点。
-
无自动节点循环:如果节点出现故障,客户需要手动替换/循环该节点。
本教程介绍当前在 OCI 中的 Slurm 集群上运行 BM A100 GPU 工作负载的用例,目的是将其迁移到 OKE 集群。可以使用高性能计算 (High Performance Computing,HPC) OKE 堆栈部署空 OKE 集群,然后向其添加现有 GPU 节点,从而实现此目的。
目标
- 使用 HPC OKE 堆栈将 BM A100 GPU 节点作为自我管理的节点迁移到 OKE。
先决条件
-
管理员可以访问正在运行的 OCI 租户和 OKE 集群。
-
在 BM A100 节点上安装 NVIDIA Run:ai 以容器化应用程序。有关详细信息,请参阅 NVIDIA Run:ai 。
-
在 OKE 上运行远程直接内存访问 (Remote Direct Memory Access,RDMA) GPU 负载。有关更多信息,请参见 Running RDMA(remote direct memory access,远程直接内存访问)GPU workloads on OKE 。
任务 1:使用 HPC OKE 堆栈将 BM A100 GPU 节点迁移到 OKE
-
登录到 OCI 控制台并创建必要的策略,如以下 GitHub 页面中所述:在 OKE 上运行 RDMA(远程直接内存访问)GPU 工作负载。
-
Click Deploy to Oracle Cloud and review the terms and conditions.

-
选择要部署堆栈的区域。
-
在堆栈信息页中,输入堆栈的名称。

-
在配置变量页中,输入 VCN 的名称。

-
在堡垒和运算符部分中,输入堡垒实例的信息并为堡垒实例添加 SSH 密钥。

-
(可选)选择配置操作员配置可创建用于监视或运行作业的操作员节点。

-
配置 OKE 集群、 Workers:Operational 节点和 Workers:GPU + RDMA 节点的变量。确保选择 Flannel CNI 以用于云池网络。



-
选择 Create a RAID 0 array using local NVMe drives 和 Install Node Problem Detector & Kube Prometheus Stack 。

-
查看堆栈信息,然后单击创建。

-
查看资源管理器中的堆栈详细信息,并在 OCI 控制台的 Kubernetes 部分下验证 OKE 集群。


-
通过 OCI 控制台使用访问集群登录 OKE 集群,然后继续向其中添加新的 GPU 节点。
-
按照此处提到的所有步骤操作:为自管理节点创建动态组和策略。
-
按照此处提到的步骤 1 和步骤 2 执行操作:为自管理节点创建 Cloud-init 脚本。
-
运行以下脚本以将 GPU 节点添加到 OKE 群集。
sudo rm archive_uri-https_objectstorage_ap-osaka-1_oraclecloud_com_p_ltn5w_61bxynnhz4j9g2drkdic3mwpn7vqce4gznmjwqqzdqjamehhuogyuld5ht_n_hpc_limited_availability_b_oke_node_repo_o_ubuntu-jammy.list sudo apt install -y oci-oke-node-all* sudo oke bootstrap --apiserver-host <API SERVER IP> --ca <CA CERT> --manage-gpu-services --crio-extra-args " -
运行以下命令以验证节点是否已成功添加到 OKE 群集。
kubectl get nodes
相关链接
确认
- Authors - Ruzhu Chen(首席企业云架构师)、Payal Sharma(高级企业云架构师)
更多学习资源
浏览 docs.oracle.com/learn 上的其他实验室,或者访问 Oracle Learning YouTube 渠道上的更多免费学习内容。此外,请访问 education.oracle.com/learning-explorer 成为 Oracle Learning Explorer。
有关产品文档,请访问 Oracle 帮助中心。
Migrate Bare Metal GPU Nodes to OKE as Self-Managed Nodes using an OCI Stack
G31992-01
Copyright ©2025, Oracle and/or its affiliates.