我正在尝试使用Nvidia GPU节点/从属服务器设置Kubernetes。
我遵循了https://docs.nvidia.com/datacenter/kubernetes-install-guide/index.html上的指南,并且能够使节点加入集群。我尝试了下面的kubeadm示例pod:
apiVersion: v1
kind: Pod
metadata:
name: gpu-pod
spec:
containers:
- name: cuda-container
image: nvidia/cuda:9.0-base
command: ["sleep"]
args: ["100000"]
extendedResourceRequests: ["nvidia-gpu"]
extendedResources:
- name: "nvidia-gpu"
resources:
limits:
nvidia.com/gpu: 1
affinity:
required:
- key: "nvidia.com/gpu-memory"
operator: "Gt"
values: ["8000"]
广告连播未能安排,并且kubectl事件显示:
4s 2m 14 gpu-pod.15487ec0ea0a1882 Pod Warning FailedScheduling default-scheduler 0/2 nodes are available: 1 Insufficient nvidia.com/gpu, 1 PodToleratesNodeTaints.
我正在使用AWS EC2实例。主节点为m5.large,从节点为g2.8xlarge。描述该节点还会给出“ nvidia.com/gpu:4 ”。
如果我缺少任何步骤/配置,有人可以帮我吗?
最佳答案
根据AWS G2 documentation,g2.8xlarge
服务器具有以下资源:
内存和编码四个实时高清视频的能力
1080p的视频流或720P的八个实时高清视频流。
查看注释,60 GB是标准RAM,用于常规计算。
g2.8xlarge
服务器具有4个GPU,每个GPU具有4 GB的GPU内存,该内存用于nvidia/cuda
容器中的计算。在您的情况下,每个GPU需要8 GB的GPU内存,但是您的服务器只有4 GB。因此,群集缺少用于调度POD的资源。因此,请尝试减少Pod设置中的内存使用量,或尝试使用具有更大GPU内存的服务器。
关于tensorflow - 使用Nvidia GPU节点在Kubernetes上运行示例Pod,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51718792/