Todos los productos
Search
Centro de documentos

Container Service for Kubernetes:Customize GPU drivers on nodes with an OSS URL

Última actualización: Sep 18, 2026

Los clústeres de ACK instalan distintas versiones predeterminadas del controlador de NVIDIA según el tipo y la versión del clúster. Para instalar una versión más reciente del controlador en los nodos de GPU, cargue un controlador personalizado en OSS y configure las etiquetas del node pool para obtenerlo mediante su URL de OSS.

Notas de uso

  • ACK no garantiza la compatibilidad entre las versiones del controlador de GPU y las versiones de la biblioteca CUDA. Usted es responsable de comprobar dicha compatibilidad.

  • Para conocer los requisitos detallados del controlador según el modelo de GPU de NVIDIA, consulte la documentación oficial de NVIDIA.

  • Si utiliza una imagen de sistema operativo personalizada que ya incluye un controlador de GPU, NVIDIA Container Runtime u otros componentes de GPU, ACK no puede garantizar que dicho controlador sea compatible con otros componentes de GPU de ACK, como los agentes de monitoreo.

  • Cuando se especifica una versión del controlador de GPU mediante una etiqueta de node pool, el controlador se instala únicamente en los nodos nuevos que se agregan al pool. Los nodos existentes no se ven afectados. Para aplicar el nuevo controlador a los nodos existentes, debe Remove a node from a cluster or node pool y después Add existing nodes.

  • Los tipos de instancia gn7, GPU-accelerated compute-optimized instance family y GPU compute-optimized: gn, ebm, and scc presentan problemas de compatibilidad con las versiones 510.xxx y 515.xxx del controlador. Utilice una versión anterior a la 510 con el procesador de sistema de GPU (GSP) deshabilitado (por ejemplo, 470.xxx.xxxx) o bien la versión 525.125.06 o posterior.

  • Las instancias de ECS de tipo GPU compute-optimized: gn, ebm, and scc o Ebmgn7e instance family solo admiten versiones del controlador de NVIDIA 525.125.06 o posteriores.

  • Si customize the GPU driver version by specifying a version number o by using an OSS URL, el sistema operativo y el controlador podrían volverse incompatibles tras la actualización. Consulte Supported NVIDIA driver versions in ACK para seleccionar un controlador compatible.

  • Cargar su propio controlador de GPU en OSS puede generar incompatibilidades con la imagen del sistema operativo, el tipo de instancia de ECS o el entorno de ejecución de contenedores, lo que provoca errores al crear el nodo. ACK no garantiza que este método funcione correctamente. Compruebe la configuración antes de continuar.

Paso 1: Descargar el controlador requerido

Si la NVIDIA driver versions supported by ACK no incluye la versión que necesita, descargue el controlador desde el sitio web oficial de NVIDIA. Este ejemplo utiliza la versión 550.90.07. Descargue el archivo NVIDIA-Linux-x86_64-550.90.07.run en su computadora local.

Paso 2: Descargar NVIDIA Fabric Manager

Descargue NVIDIA Fabric Manager desde el repositorio YUM de NVIDIA. La versión de Fabric Manager debe coincidir con la versión del controlador.

wget https://developer.download.nvidia.cn/compute/cuda/repos/rhel7/x86_64/nvidia-fabric-manager-550.90.07-1.x86_64.rpm

Paso 3: Crear un bucket de OSS

Inicie sesión en la consola de OSS y create a bucket.

Nota

Cree el bucket en la misma región que su clúster de ACK para que los nodos puedan descargar el controlador a través de la red interna.

Paso 4: Cargar archivos en el bucket de OSS

  1. Inicie sesión en la consola de OSS y upload los archivos NVIDIA-Linux-x86_64-550.90.07.run y nvidia-fabric-manager-550.90.07-1.x86_64.rpm en el directorio raíz del bucket.

    Importante

    Cargue los archivos en el directorio raíz del bucket, no en un subdirectorio.

  2. En la página del bucket, dentro del panel de navegación izquierdo, haga clic en File Management > Objects. En la columna Actions del archivo que acaba de cargar, haga clic en Details.

  3. En el panel Details, desactive el interruptor Use HTTPS.

    Importante

    ACK descarga los archivos del controlador mediante HTTP, pero OSS usa HTTPS de forma predeterminada. Desactive Use HTTPS para habilitar el acceso por HTTP.

  4. En el panel de navegación izquierdo, haga clic en Overview. Copie el endpoint interno que aparece en la parte inferior de la página.

    Importante
    • Los endpoints externos son lentos y pueden provocar errores al crear el nodo de GPU. Utilice un endpoint interno (que contiene -internal) o un endpoint acelerado (que contiene oss-accelerate).

    • Si falla la descarga de algún archivo, ajuste la política de access control del bucket.

Paso 5: Configurar las etiquetas del node pool

  1. Inicie sesión en la consola de ACK. En el panel de navegación izquierdo, haga clic en Clusters.

  2. En la página Clusters, haga clic en el nombre de su clúster. En el panel de navegación izquierdo, haga clic en Nodes > Node Pools.

  3. Haga clic en Create Node Pool para agregar nodos de GPU. Consulte Create and manage a node pool para conocer el detalle de cada parámetro. A continuación se muestran los parámetros clave de esta configuración:

    En la sección Node Labels, haga clic en el icono 1 para agregar las siguientes etiquetas. Sustituya los valores de ejemplo por sus valores reales.

    Key

    Value

    ack.aliyun.com/nvidia-driver-oss-endpoint

    Endpoint interno del bucket de OSS obtenido en Step 4.

    my-nvidia-driver.oss-cn-beijing-internal.aliyuncs.com

    ack.aliyun.com/nvidia-driver-runfile

    Nombre del archivo del controlador de NVIDIA indicado en Step 1.

    NVIDIA-Linux-x86_64-550.90.07.run

    ack.aliyun.com/nvidia-fabricmanager-rpm

    Nombre del archivo de Fabric Manager indicado en Step 2.

    nvidia-fabric-manager-550.90.07-1.x86_64.rpm

Paso 6: Comprobar la instalación del controlador

  1. Consulte los pods que tienen la etiqueta component: nvidia-device-plugin:

    kubectl get po -n kube-system -l component=nvidia-device-plugin -o wide

    Salida esperada:

    NAME                                            READY   STATUS    RESTARTS   AGE   IP              NODE                       NOMINATED NODE   READINESS GATES
    nvidia-device-plugin-cn-beijing.192.168.1.127   1/1     Running   0          6d    192.168.1.127   cn-beijing.192.168.1.127   <none>           <none>
    nvidia-device-plugin-cn-beijing.192.168.1.128   1/1     Running   0          17m   192.168.1.128   cn-beijing.192.168.1.128   <none>           <none>
    nvidia-device-plugin-cn-beijing.192.168.8.12    1/1     Running   0          9d    192.168.8.12    cn-beijing.192.168.8.12    <none>           <none>
    nvidia-device-plugin-cn-beijing.192.168.8.13    1/1     Running   0          9d    192.168.8.13    cn-beijing.192.168.8.13    <none>           <none>

    La salida muestra que el pod del nodo recién agregado es nvidia-device-plugin-cn-beijing.192.168.1.128.

  2. Compruebe que se instaló la versión correcta del controlador:

    kubectl exec -ti nvidia-device-plugin-cn-beijing.192.168.1.128 -n kube-system -- nvidia-smi

    Salida esperada:

    +-----------------------------------------------------------------------------------------+
    | NVIDIA-SMI 550.90.07              Driver Version: 550.90.07      CUDA Version: 12.4     |
    |-----------------------------------------+------------------------+----------------------+
    | GPU  Name                 Persistence-M | Bus-Id          Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
    |                                         |                        |               MIG M. |
    |=========================================+========================+======================|
    |   0  Tesla P100-PCIE-16GB           On  |   00000000:00:08.0 Off |                  Off |
    | N/A   31C    P0             26W /  250W |       0MiB /  16384MiB |      0%      Default |
    |                                         |                        |                  N/A |
    +-----------------------------------------+------------------------+----------------------+
                                                                                             
    +-----------------------------------------------------------------------------------------+
    | Processes:                                                                              |
    |  GPU   GI   CI        PID   Type   Process name                              GPU Memory |
    |        ID   ID                                                               Usage      |
    |=========================================================================================|
    |  No running processes found                                                             |
    +-----------------------------------------------------------------------------------------+

    La salida indica la versión 550.90.07 del controlador, lo que confirma que el controlador de NVIDIA personalizado se instaló correctamente.

Otros métodos

También puede establecer la URL de OSS del controlador personalizado al crear un node pool con la API CreateClusterNodePool:

{
  // Other sections are omitted.
  ......
    "tags": [
      {
        "key": "ack.aliyun.com/nvidia-driver-oss-endpoint",
        "value": "my-nvidia-driver.oss-cn-beijing-internal.aliyuncs.com"
      },
      {
        "key": "ack.aliyun.com/nvidia-driver-runfile",
        "value": "NVIDIA-Linux-x86_64-550.90.07.run"
      },
      {
        "key": "ack.aliyun.com/nvidia-fabricmanager-rpm",
        "value": "nvidia-fabric-manager-550.90.07-1.x86_64.rpm"
      }
    ],
  // Other sections are omitted.
  ......
}