启动带 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 RAM。
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 Console 创建: 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