---
title: "Drivers for GPU node groups in a Managed Kubernetes cluster"
sidebar_label: "Drivers for GPU node groups"
description: "Which kernel modules are used in preinstalled drivers and how to install drivers manually"
sidebar_position: 13
toc_max_heading_level: 2
---

import Formbricks from '@theme/MDXComponents/Formbricks'

# Drivers for GPU node groups in a Managed Kubernetes cluster

You can [create Managed Kubernetes clusters on a cloud server with a GPU](/managed-kubernetes/create/create-cloud-gpu-cluster.mdx):

* with предустановленными драйверами — [ядерные модули in предустановленных драйверах](#kernel-modules-in-preinstalled-drivers) зависят от архитектуры графического процессора;
* без предустановленных драйверов — вы самостоятельно выбираете and [устанавливаете драйверы](#install-gpu-drivers). Для групп нод with GPU без драйверов недоступно [автоматическое масштабирование кластера](/managed-kubernetes/node-groups/autoscaling.mdx).

## Kernel modules in preinstalled drivers \{#kernel-modules-in-preinstalled-drivers}

Kernel modules in preinstalled drivers can be:

* проприетарными — используются in графических процессорах with архитектурой Pascal, Maxwell and Volta;
* открытыми — используются in графических процессорах with архитектурой Turing and всеми последующими поколениями архитектуры.

Among [available GPUs](/managed-kubernetes/create/create-cloud-gpu-cluster.mdx#available-gpu), only the NVIDIA® GTX 1080 GPU with Pascal-based architecture uses proprietary kernel modules; the rest use open ones.

Read more about kernel modules in the [Kernel Modules](https://docs.nvidia.com/datacenter/tesla/driver-installation-guide/latest/kernel-modules.html#kernel-modules) section of the NVIDIA® documentation.

## Install drivers \{#install-gpu-drivers}

Чтобы самостоятельно установить драйвер, используйте приложение [NVIDIA® GPU Operator](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/overview.html)

1. [Connect to the cluster](/managed-kubernetes/clusters/connect-to-cluster.mdx).

2. Установите менеджер пакетов [Helm](https://helm.sh/docs/intro/install/) версии 3.7.0 and выше.

3. Add the `nvidia` repository to Helm:

   ```bash
   helm repo add nvidia https://helm.ngc.nvidia.com/nvidia
   ```

4. Update the `nvidia` repository in Helm:

   ```bash
   helm repo update
   ```

5. Install NVIDIA GPU Operator and specify the required GPU driver version:

   ```bash
   helm install \
     --namespace gpu-operator \
     --create-namespace \
     --set driver.version=<driver_version> \
     gpu-operator nvidia/gpu-operator
   ```

   Specify `<driver_version>` — the NVIDIA® driver version. You can find it in the NVIDIA GPU Driver row of the [GPU Operator Component Matrix](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/latest/platform-support.html#gpu-operator-component-matrix) in the NVIDIA® documentation.

6. To verify that the NVIDIA GPU Operator and GPU driver are installed correctly, run a GPU application. For example, the CUDA VectorAdd application for vector addition:

   ```bash
   cat << EOF | kubectl create -f -
   apiVersion: v1
   kind: Pod
   metadata:
   name: cuda-vectoradd
   spec:
   restartPolicy: OnFailure
   containers:
   - name: cuda-vectoradd
       image: "nvidia/samples:vectoradd-cuda11.2.1"
       resources:
       limits:
           nvidia.com/gpu: 1
   EOF
   ```

7. Make sure the CUDA VectorAdd application has successfully finished — the pod status should be `Completed`:

   ```bash
   kubectl get pods
   ```

   В ответе у пода `cuda-vectoradd` будет статус `Completed`:

   ```bash
   NAME                                  READY   STATUS        RESTARTS   AGE
   cuda-vectoradd                        0/1     Completed     0          51s
   ```

<Formbricks />
