Instalar controladores de almacenamiento

En este tema se explica cómo instalar un controlador de almacenamiento de Container Storage Interface (CSI) en tus clústeres.

Información general

De forma predeterminada, GKE on AWS aprovisiona volúmenes de EBS de AWS con la StorageClass predeterminada. Si tus cargas de trabajo necesitan usar otro tipo de volumen de almacenamiento, puedes instalar un controlador de CSI compatible para proporcionar acceso a él.

La Container Storage Interface (CSI) es una API estándar abierta que proporciona a las cargas de trabajo de Kubernetes acceso a sistemas de almacenamiento compatibles. CSI también permite usar funciones de almacenamiento modernas, como el cambio de tamaño y las copias de seguridad.

Después de instalar un controlador CSI, debes crear un StorageClass de Kubernetes. Has definido el controlador CSI como aprovisionador de la clase de almacenamiento. Después, puedes configurar StorageClass como predeterminada o configurar tus cargas de trabajo para que usen StorageClass. Para ver un ejemplo de cómo crear un StatefulSet con un StorageClass personalizado, consulta Usar StorageClasses con tus cargas de trabajo.

Instalar un controlador de CSI de un proveedor

Los proveedores de almacenamiento son los responsables de proporcionar las instrucciones de instalación de sus controladores de CSI. Consulta la lista de controladores de CSI en la documentación de CSI.

Sigue las instrucciones de instalación de tu controlador CSI y, a continuación, continúa con los pasos que se indican en esta página.

Verificar la instalación del controlador

Después de instalar un controlador de CSI, puedes verificar la instalación ejecutando los siguientes comandos.

kubectl get csinodes \
  -o jsonpath='{range .items[*]} {.metadata.name}{": "} {range .spec.drivers[*]} {.name}{"\n"} {end}{end}'

Cómo usar un controlador de CSI

Para usar un controlador de CSI, sigue estos pasos:

  1. Crea un StorageClass personalizado que haga referencia al controlador en su campo provisioner.

  2. Para aprovisionar almacenamiento, puedes hacer lo siguiente:

Consideraciones sobre StorageClass respaldado por un controlador de CSI

Cuando crees un StorageClass, ten en cuenta lo siguiente:

  • Consulta la documentación de tu controlador de CSI para ver los parámetros específicos del controlador que proporcionas a tu StorageClass, incluido el nombre del provisionador.

  • Debes asignar a StorageClass el nombre de sus propiedades (como fast o highly-replicated) en lugar del nombre del controlador o del dispositivo específico que haya detrás. Si le pones a una StorageClass el nombre de sus propiedades, puedes crear StorageClasses con el mismo nombre en diferentes clústeres y entornos. A continuación, configura tus cargas de trabajo para que usen la misma StorageClass.

Siguientes pasos

  • Crea un StorageClass que haga referencia al controlador de CSI.