Instalar controladores CSI adicionales
Esta página explica cómo instalar un controlador de almacenamiento de interfaz de almacenamiento de contenedores (CSI) en sus clústeres de GKE.
CSI es una API de estándar abierto que permite a Kubernetes exponer sistemas de almacenamiento arbitrarios a cargas de trabajo en contenedores. Además, CSI permite el uso de funciones de almacenamiento modernas, como el redimensionamiento y las instantáneas.
De forma predeterminada, GKE en Azure aprovisiona volúmenes de Azure Disk con elazuredisk-csi-driver
. También puede aprovisionar recursos compartidos de archivos de Azure con el azurefile-csi-driver
. Si desea usar otro tipo de volumen de almacenamiento, puede instalar un controlador CSI.Después de instalar un controlador CSI, debe crear una StorageClass de Kubernetes. Configure el controlador CSI como aprovisionador de la StorageClass. A continuación, puede establecer la StorageClass como predeterminada o configurar sus cargas de trabajo para que la usen.
Antes de empezar
Instalar el controlador CSI de un proveedor
Los proveedores de almacenamiento son responsables de proporcionar las instrucciones de instalación de sus controladores CSI. Consulte la lista de controladores CSI en la documentación de CSI.
Siga las instrucciones de instalación de su controlador CSI y luego continúe con los siguientes pasos en esta página.
Google no ofrece soporte ni instrucciones para controladores de terceros. Contacta con tu proveedor de almacenamiento para obtener ayuda.
Verifique la instalación de su controlador
Después de instalar un controlador CSI, puede verificar la instalación ejecutando los siguientes comandos.
kubectl get csinodes \
-o jsonpath='{range .items[*]} {.metadata.name}{": "} {range .spec.drivers[*]} {.name}{"\n"} {end}{end}'
Utilice un controlador CSI
Para utilizar un controlador CSI, haga lo siguiente:
Cree una StorageClass personalizada que haga referencia al controlador en su campo de
provisioner
.Para aprovisionar almacenamiento, puede:
- Haga referencia a StorageClass en la especificación
volumeClaimTemplates
de un StatefulSet . - Configúrelo como la clase de almacenamiento predeterminada del clúster .
- Haga referencia a StorageClass en la especificación
Consideraciones para StorageClass respaldado por un controlador CSI
Al crear una StorageClass, tenga en cuenta lo siguiente:
Consulte la documentación del controlador CSI para conocer los parámetros específicos del controlador que proporciona a StorageClass, incluido el nombre del aprovisionador.
Debe asignar el nombre de la StorageClass según sus propiedades (como
fast
ohighly-replicated
"), en lugar del nombre del controlador o dispositivo específico que la respalda. Al asignar el nombre de una StorageClass según sus propiedades, puede crear StorageClasses con el mismo nombre en diferentes clústeres y entornos. Luego, configure sus cargas de trabajo para que usen la misma StorageClass.
¿Que sigue?
- Cree una StorageClass que haga referencia al controlador CSI.