使用GPU启动Google Cloud GKE集群以运行KubeRay#
有关完整详情,请参阅 https://cloud.google.com/kubernetes-engine/docs/how-to/gpus,或继续阅读以快速入门。
步骤 1:在 GKE 上创建一个 Kubernetes 集群#
在本地机器或 Google Cloud Shell 上运行此命令及所有后续命令。如果在本地机器上运行,您需要安装 Google Cloud SDK。以下命令在 us-west1-b
区域创建一个名为 kuberay-gpu-cluster
的 Kubernetes 集群,包含 1 个 CPU 节点。此示例使用 e2-standard-4
机器类型,该类型具有 4 个 vCPU 和 16 GB 内存。
gcloud container clusters create kuberay-gpu-cluster \
--num-nodes=1 --min-nodes 0 --max-nodes 1 --enable-autoscaling \
--zone=us-west1-b --machine-type e2-standard-4
注意
你也可以从 Google Cloud Console 创建一个集群。
步骤 2:创建一个 GPU 节点池#
运行以下命令以创建用于 Ray GPU 工作者的 GPU 节点池。您也可以从 Google Cloud 控制台创建它:https://cloud.google.com/kubernetes-engine/docs/how-to/gpus#console
gcloud container node-pools create gpu-node-pool \
--accelerator type=nvidia-l4-vws,count=1 \
--zone us-west1-b \
--cluster kuberay-gpu-cluster \
--num-nodes 1 \
--min-nodes 0 \
--max-nodes 1 \
--enable-autoscaling \
--machine-type g2-standard-4
--accelerator
标志指定节点池中每个节点的GPU类型和数量。此示例使用 NVIDIA L4 GPU。机器类型 g2-standard-4
有1个GPU,24 GB GPU内存,4个vCPU和16 GB RAM。
注意
GKE 自动配置污点和容忍度,以便只有 GPU Pod 被调度到 GPU 节点上。更多详情,请参见 GKE 文档
步骤 3:配置 kubectl
以连接到集群#
运行以下命令以下载 Google Cloud 凭据并配置 Kubernetes CLI 以使用它们。
gcloud container clusters get-credentials kuberay-gpu-cluster --zone us-west1-b
更多详情,请参见 GKE 文档。
步骤 4:安装 GPU 驱动程序(可选)#
如果你在使用 GKE 安装的 GPU 驱动程序时遇到任何问题,你可以按照以下说明手动安装 GPU 驱动程序。
# Install NVIDIA GPU device driver
kubectl apply -f https://raw.githubusercontent.com/GoogleCloudPlatform/container-engine-accelerators/master/nvidia-driver-installer/cos/daemonset-preloaded-latest.yaml
# Verify that your nodes have allocatable GPUs
kubectl get nodes "-o=custom-columns=NAME:.metadata.name,GPU:.status.allocatable.nvidia\.com/gpu"
# Verify that your nodes have allocatable GPUs
# NAME GPU
# ...... <none>
# ...... 1