# 如何在K8S中查看显卡资源

在Kubernetes(K8S)中查看显卡资源是一个重要的操作,特别适用于需要运行GPU加速的工作负载的用户。本文将向您展示如何在K8S中查看显卡资源,让您能够更好地管理您的集群资源。

## 流程概述

首先,让我们来看一下在K8S中查看显卡资源的整个流程,具体步骤如下表所示:

| 步骤 | 操作 |
|---|---|
| 1 | 安装NVIDIA Device Plugin |
| 2 | 部署支持GPU的Pod |
| 3 | 检查GPU资源情况 |

## 操作步骤

### 步骤 1: 安装NVIDIA Device Plugin

首先,您需要安装NVIDIA Device Plugin,以便K8S能够识别GPU资源。以下是安装NVIDIA Device Plugin的代码示例:

```bash
kubectl apply -f https://raw.githubusercontent.com/NVIDIA/k8s-device-plugin/v0.9.0/nvidia-device-plugin.yml
```

该命令将从NVIDIA GitHub库中下载相应的yaml文件,并在您的集群中安装NVIDIA Device Plugin。

### 步骤 2: 部署支持GPU的Pod

接下来,您需要部署一个支持GPU的Pod,以便利用GPU资源。以下是一个示例Pod的yaml文件:

```yaml
apiVersion: v1
kind: Pod
metadata:
name: gpu-pod
spec:
containers:
- name: gpu-container
image: nvidia/cuda:11.0-base
resources:
limits:
nvidia.com/gpu: 1
```

在这个示例中,我们定义了一个名为`gpu-pod`的Pod,其中包含一个名为`gpu-container`的容器,使用了NVIDIA CUDA 11.0的基础映像,并限制了该容器可以使用的GPU数量。

### 步骤 3: 检查GPU资源情况

最后,您可以通过以下命令查看您集群中的GPU资源情况:

```bash
kubectl get nodes -o=jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.status.allocatable}{"\n"}'
```

该命令会输出每个节点的名称以及可分配的资源情况,包括GPU资源。您可以通过这种方式检查GPU资源的使用情况,以便更好地管理您的集群资源。

现在,您已经学会了在K8S中查看显卡资源的操作流程,希望这篇文章对您有所帮助。祝您在K8S集群中使用GPU资源顺利!