gpt4 book ai didi

docker - GKE中的GPU部署:tensorflow_model_server:加载共享库时出错:/usr/lib/x86_64-linux-gnu/libcuda.so.1:文件太短

转载 作者:行者123 更新时间:2023-12-02 11:39:26 25 4
gpt4 key购买 nike

我正在尝试使用GPU使用tensorflow模型在GKE上部署模型。我使用docker创建了一个容器,它在云VM上运行良好。我正在尝试使用GKE进行扩展,但是部署存在上述错误。

我创建了只有1个节点的GKE集群,并带有GPU(Tesla T4)。我根据docs安装了驱动程序

据我所知,这似乎是成功的(名为nvidia-driver-installer-tckv4的pod已添加到节点的pod列表中,并且正在正常运行)

接下来,我创建了部署:

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: reph-deployment
spec:
replicas: 1
template:
metadata:
labels:
app: reph
spec:
containers:
- name: reph-container
image: gcr.io/<project-id>/reph_serving_gpu
resources:
limits:
nvidia.com/gpu: 1
ports:
- containerPort: 8500
args:
- "--runtime=nvidia"

然后,我运行kubectl create -f d1.yaml,并且容器在日志中退出,并出现上述错误。

我还尝试将os从cos切换到ubuntu并从 docs运行示例

我如上所述安装了驱动程序,这次是针对ubuntu。并应用了从GKE文档中提取的此Yaml(仅更改了要消耗的GPU数量):
apiVersion: v1
kind: Pod
metadata:
name: my-gpu-pod
spec:
containers:
- name: my-gpu-container
image: nvidia/cuda:10.0-runtime-ubuntu18.04
resources:
limits:
nvidia.com/gpu: 1

这次,我得到了CrashLoopBackOff,日志中没有更多内容。

有什么主意吗?我是kubernetes和docker的新手,所以我可能缺少一些琐碎的东西,但是我确实尝试坚持使用GKE文档。

最佳答案

好的,我认为文档尚不十分清楚,但是似乎缺少的是在/usr/local/nvidia/lib64环境变量中包括LD_LIBRARY_PATH
以下yaml文件成功运行:

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: reph-deployment
spec:
replicas: 1
template:
metadata:
labels:
app: reph
spec:
containers:
- name: reph-container
env:
- name: LD_LIBRARY_PATH
value: "$LD_LIBRARY_PATH:/usr/local/nvidia/lib64"
image: gcr.io/<project-id>/reph_serving_gpu
imagePullPolicy: IfNotPresent
resources:
limits:
nvidia.com/gpu: 1
requests:
nvidia.com/gpu: 1
ports:
- containerPort: 8500
args:
- "--runtime=nvidia"

这是GKE docs中的相关部分

关于docker - GKE中的GPU部署:tensorflow_model_server:加载共享库时出错:/usr/lib/x86_64-linux-gnu/libcuda.so.1:文件太短,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57037531/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com