首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >在Kubernetes(k8s)中使用GPU

在Kubernetes(k8s)中使用GPU

原创
作者头像
小陈运维
发布于 2021-12-10 01:04:51
发布于 2021-12-10 01:04:51
2.5K00
代码可运行
举报
文章被收录于专栏:小陈运维小陈运维
运行总次数:0
代码可运行

在Kubernetes(k8s)中使用GPU

介绍

Kubernetes 支持对节点上的 AMD 和 NVIDIA GPU (图形处理单元)进行管理,目前处于实验状态。

修改docker配置文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
root@hello:~# cat /etc/docker/daemon.json
{
    "default-runtime": "nvidia",
    "runtimes": {
        "nvidia": {
            "path": "/usr/bin/nvidia-container-runtime",
            "runtimeArgs": []
        }
    },
  "data-root": "/var/lib/docker",
  "exec-opts": ["native.cgroupdriver=systemd"],
  "registry-mirrors": [
    "https://docker.mirrors.ustc.edu.cn",
    "http://hub-mirror.c.163.com"
  ],
  "insecure-registries": ["127.0.0.1/8"],
  "max-concurrent-downloads": 10,
  "live-restore": true,
  "log-driver": "json-file",
  "log-level": "warn",
  "log-opts": {
    "max-size": "50m",
    "max-file": "1"
    },
  "storage-driver": "overlay2"
}
root@hello:~#


root@hello:~# systemctl  daemon-reload


root@hello:~# systemctl  start docker
复制代码

添加标签

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
root@hello:~# kubectl label nodes 192.168.1.56 nvidia.com/gpu.present=true


root@hello:~# kubectl get nodes -L nvidia.com/gpu.present
NAME           STATUS                     ROLES    AGE    VERSION   GPU.PRESENT
192.168.1.55   Ready,SchedulingDisabled   master   128m   v1.22.2  
192.168.1.56   Ready                      node     127m   v1.22.2   true
root@hello:~#
复制代码

安装helm仓库

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
root@hello:~# curl https://baltocdn.com/helm/signing.asc | sudo apt-key add -
root@hello:~# sudo apt-get install apt-transport-https --yes
root@hello:~# echo "deb https://baltocdn.com/helm/stable/debian/ all main" | sudo tee /etc/apt/sources.list.d/helm-stable-debian.list
root@hello:~# sudo apt-get update
root@hello:~# sudo apt-get install helm


helm install \
    --version=0.10.0 \
    --generate-name \
    nvdp/nvidia-device-plugin
复制代码

查看是否有nvidia

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
root@hello:~# kubectl describe node 192.168.1.56 | grep nv
                    nvidia.com/gpu.present=true
  nvidia.com/gpu:     1
  nvidia.com/gpu:     1
  kube-system                 nvidia-device-plugin-1637728448-fgg2d         0 (0%)        0 (0%)      0 (0%)           0 (0%)         50s
  nvidia.com/gpu     0           0
root@hello:~#
复制代码

下载镜像

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
root@hello:~# docker pull registry.cn-beijing.aliyuncs.com/ai-samples/tensorflow:1.5.0-devel-gpu
root@hello:~# docker save -o tensorflow-gpu.tar  registry.cn-beijing.aliyuncs.com/ai-samples/tensorflow:1.5.0-devel-gpu
root@hello:~# docker load -i tensorflow-gpu.tar
复制代码

创建tensorflow测试pod

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
root@hello:~# vim gpu-test.yaml
root@hello:~# cat gpu-test.yaml
apiVersion: v1
kind: Pod
metadata:
  name: test-gpu
  labels:
    test-gpu: "true"
spec:
  containers:
  - name: training
    image: registry.cn-beijing.aliyuncs.com/ai-samples/tensorflow:1.5.0-devel-gpu
    command:
    - python
    - tensorflow-sample-code/tfjob/docker/mnist/main.py
    - --max_steps=300
    - --data_dir=tensorflow-sample-code/data
    resources:
      limits:
        nvidia.com/gpu: 1
  tolerations:
  - effect: NoSchedule
    operator: Exists
root@hello:~#



root@hello:~# kubectl  apply -f gpu-test.yaml
pod/test-gpu created
root@hello:~#
复制代码

查看日志

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
root@hello:~# kubectl logs test-gpu
WARNING:tensorflow:From tensorflow-sample-code/tfjob/docker/mnist/main.py:120: softmax_cross_entropy_with_logits (from tensorflow.python.ops.nn_ops) is deprecated and will be removed in a future version.
Instructions for updating:


Future major versions of TensorFlow will allow gradients to flow
into the labels input on backprop by default.


See tf.nn.softmax_cross_entropy_with_logits_v2.


2021-11-24 04:38:50.846973: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:895] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2021-11-24 04:38:50.847698: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1105] Found device 0 with properties:
name: Tesla T4 major: 7 minor: 5 memoryClockRate(GHz): 1.59
pciBusID: 0000:00:10.0
totalMemory: 14.75GiB freeMemory: 14.66GiB
2021-11-24 04:38:50.847759: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1195] Creating TensorFlow device (/device:GPU:0) -> (device: 0, name: Tesla T4, pci bus id: 0000:00:10.0, compute capability: 7.5)
root@hello:~#
复制代码

blog.csdn.net/qq_33921750

my.oschina.net/u/3981543

www.zhihu.com/people/chen…

segmentfault.com/u/hppyvyv6/…

juejin.cn/user/331578…

space.bilibili.com/352476552/a…

cloud.tencent.com/developer/c…

知乎、CSDN、开源中国、思否、掘金、哔哩哔哩、腾讯云

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
配置 SSH 管理多个 Git 仓库和以及多个 Github 账号
在工作中,我们可能需要将代码推送到公司内部的自建 Git 代码托管平台(如 GithLab)。与此同时,日常开发过程中,我们也常常需要将代码提交到社区的 Git 代码托管平台(如 Github 等)。提交到 github 又需要管理多个 github 账号
ACK
2024/06/17
3640
生成SSH秘钥
单个 ssh key 是指一台 git 服务器只有一个 git 账号。也就是说,如果你不仅在 github 有账号,在 coding 也有账号,甚至团队内部自己搭建了私有的 git 服务器等,这些服务器都可以公用同一个 ssh key 的,绝对没有必要创建多个 ssh key。你只需要将相同的 ssh 公钥添加到相应的服务器的账号设置里即可。如果自己不能添加,可以将公钥发给服务器管理人员,让他帮忙添加也行。
leader755
2022/03/09
2.3K0
生成SSH秘钥
Git 配置多个 SSH-Key
在 ~/.ssh 目录下新建一个 config 文件,添加如下内容(其中 Host 和 HostName 填写 git 服务器的域名,IdentityFile 指定私钥的路径)
hedeqiang
2019/12/18
9670
Git 配置多个 SSH-Key
Git 在同一台机器上配置多个Git帐号
git config --global --unset user.password
授客
2019/09/10
2.6K0
Git 在同一台机器上配置多个Git帐号
git多账号配置和多个ssh配置
有时候我们的代码仓库时使用 ssh 方式,那就必须要配置 ssh 之后才能 clone pull push .... SSH 协议可以实现安全的免密认证,且性能比 HTTP(S) 协议更好
用户6256742
2024/05/19
7810
git多账号配置和多个ssh配置
Mac 上SSH-Key对应多个git账号
因为最近在其他公司帮忙,而其公司用的是他们自己的git服务器,自己本公司又有自己的git服务器,然后自己还用github,造成三个git账号的都要ssh-key,而在网上一搜生成ssh-key的方法都是直接就给你弄全局了,然后肯定又会覆盖原有的ssh-key,所以查了一下关于同机器多账号的ssh-key配置,在此记录一下。
用户1065635
2019/03/21
1.2K0
git的使用(gitlab、github ssh拉取文件,拉取多个平台多个账号)
ssh-keygen -t rsa -C 'xxx@xxx.com' (表示你的邮箱)
gfu
2019/08/28
2.8K0
git的使用(gitlab、github ssh拉取文件,拉取多个平台多个账号)
GitLab配置ssh key
  当前很多公司都选择git作为代码版本控制工具,然后自己公司搭建私有的gitlab来管理代码,我们在clone代码的时候可以选择http协议,当然我们亦可以选择ssh协议来拉取代码。但是网上很少找到如何用git客户端生成ssh key,然后配置在gitlab,我当时在做的时候苦于摸索,后来终于找到了解决方案,那么本文,我们就来聊一聊如何本地git客户端生成ssh key,然后配置在gitlab里,而后使用ssh协议进行提交和拉取git远程仓库的代码。
阿豪聊干货
2018/08/09
1.2K0
GitLab配置ssh key
git配置多个ssh-key
我们在日常工作中会遇到公司有个gitlab,还有些自己的一些项目放在github上,这样就导致我们要配置不同的ssh-key对应不同的环境。我在网上也看了几篇文章,其中开源中国的这篇讲的比较好,但是文章中的代码还是有很多细节问题,所以我照猫画虎,详细写一下设置的过程。 1、生成公司和个人的ssh-key $ ssh-keygen -t rsa -C 'youremail@yourcompany.com' -f ~/.ssh/company_rsa $ ssh-keygen -t rsa -C 'you
Ewall
2018/12/13
2.1K0
git配置多个ssh-key
如何在一台电脑上创建多个sshkey达到操控多个github账号的目的
此时 在.ssh目录下会生成一个abc.pub和abc (.ssh目录一般位于C:\Users\windows.ssh)
乱码三千
2021/07/29
1.7K0
配置多个git账号的ssh密钥
我们在工作中会以 ssh 的方式配置公司的 git 账号,但是平时也会使用 github 管理自己的项目。出于各种原因,自己的 github 项目无法使用公司的 git 账号,于是我们可以为自己的 github 创建一个新的 git 账号,这就需要生成新的 ssh 密钥。 下面总结了创建多个互相独立的 ssh 密钥的步骤(以公司的和自己 github 的为例)。
xiaoxi666
2018/12/13
2.3K0
window 平台 git 配置多个账号的 ssh-key
然后会在: ~/.ssh/ 目录下看到生成的秘钥文件, 密钥文件一般存放在: C:\Users\username\.ssh 目录下
芥末鱿鱼
2022/05/05
5810
git配置远程仓库,同时配置github、gitee、gitlab,完美解决方案
新安装 git 跳过。 若之前对 git 设置过全局的 user.name 和 user.email。(用 git config --global --list 进行查看你是否设置) 必须删除该设置 git config --global --unset user.name "你的名字" git config --global --unset user.email "你的邮箱"
鳄鱼儿
2024/05/21
6360
多个git使用的 ssh key共存
不要一直回车,指定密钥为 id_rsa_ljkj 默认为(id_rsa) 同理 创建其他密钥
肖哥哥
2018/08/02
1.2K0
Windows下Git多账号配置,同一电脑多个ssh-key的管理
本文主要介绍了如何在Windows系统下配置Git以实现多账号的操作,包括生成SSH密钥、配置SSH代理以及如何在Git Bash客户端中设置多个SSH账号。通过实践,可以成功地在同一台电脑上使用多个SSH密钥连接不同的Git服务器,从而实现对多个账号的管理。
用户1155943
2018/01/04
4.7K1
Windows下Git多账号配置,同一电脑多个ssh-key的管理
Windows配置Github、Gitee共存的Git环境
在我们的日常开发中,可能要用到多个账号,公司开发gitlab,国外开源github,国内开源gitee。这种多环境的情况下,我们就需要生成和配置多个SSH-Key。
三分恶
2020/12/14
1.3K0
git使用双秘钥
由于新项目需要两个github账号,然后一个git秘钥只能绑定一个号,所以特地写出教程,教你如何配置双秘钥
huanhao
2020/04/09
1.2K0
常用的SSH,你了解多少?(长文警告)
客户端和服务端采用相同的密钥进行数据的加解密,很难保证密钥不丢失,或者被截获。隐藏着中间人攻击的风险
甜点cc
2022/09/27
1.3K0
常用的SSH,你了解多少?(长文警告)
gitee配置
在用户主目录下找到.ssh文件夹(隐藏文件) 新建config文件,添加如下内容
2020/10/23
5970
gitee配置
管理不同 git 系统的多个 ssh-key
今天记录一下如何管理不同 git 系统下生成的 ssh-key。比如常用的 github 有一个 key,而公司搭建的 gitlab 又是一个不同邮箱生成的 key。那么这个时候该怎么办呢?
Originalee
2019/04/18
9690
相关推荐
配置 SSH 管理多个 Git 仓库和以及多个 Github 账号
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档