Recursos compartidos múltiples de Filestore para GKE

Filestore Multishares para GKE asigna hasta 80 recursos compartidos en una sola instancia de nivel Enterprise.

Esta función optimiza el uso compartido en tus instancias de Filestore y ofrece las siguientes ventajas:

  • Permite a los usuarios estimar y definir la capacidad máxima de compartir
  • Optimiza el número de particiones por instancia.
  • Optimiza el uso de las instancias de Filestore en los grupos de almacenamiento de GKE asociados
  • Mejora los costes

¿Por qué usar Filestore multishares para GKE?

Una instancia de Filestore es un sistema de almacenamiento conectado a una red (NAS) totalmente gestionado que puedes usar con tus instancias de GKE.

La función multicompartir de Filestore para GKE, combinada con el controlador de CSI de Filestore para GKE, versión 1.27, ofrece las siguientes ventajas:

  • Proporciona una vista completa de tus volúmenes persistentes (PVs) como un único grupo de almacenamiento. El controlador crea o elimina dinámicamente instancias de Filestore a medida que añades, eliminas o cambias el tamaño de los volúmenes. El controlador gestiona tus instancias de Filestore como un gran conjunto de volúmenes con características comunes según la definición de StorageClass e incluye la capacidad de escalar o crear copias de seguridad de cada volumen por separado.

  • Admite el acceso de varios escritores para aplicaciones que requieren un sistema de archivos compartido para los datos.

  • Admite el almacenamiento regional resistente a las interrupciones de zonas.

  • Admite varios recursos compartidos con tamaños más pequeños y flexibles para mejorar la utilización y la rentabilidad de cada instancia de Filestore.

  • Asigna hasta 80 recursos compartidos en una sola instancia de nivel Enterprise de Filestore:

    • Cada recurso compartido se asigna a un volumen persistente único en GKE.

    • Con las StorageClasses de GKE, puedes restringir el tamaño máximo compartido a 128 GiB, 256 GiB, 512 GiB o 1024 GiB (1 TiB).

      En función del tamaño especificado, el controlador CSI de Filestore de GKE limita el número máximo de recursos compartidos por instancia de Filestore, lo que crea una capacidad máxima de 80, 40, 20 o 10 recursos compartidos por instancia, respectivamente.

    • Las versiones del controlador CSI de Filestore para GKE de la 1.23 a la 1.26 siguen admitiendo hasta 10 recursos compartidos por instancia Enterprise.

  • Ofrece una mayor flexibilidad a las organizaciones que necesitan volúmenes más pequeños para varios clientes y acceso de varios escritores en una red compartida:

    • Admite un tamaño de recurso compartido ampliado de entre 10 GiB y 1 TiB (1024 GiB) o el tamaño máximo de recurso compartido especificado.

    • Las versiones del controlador CSI de Filestore de GKE de la 1.23 a la 1.26 admiten tamaños de recurso compartido que oscilan entre 100 GiB y 1 TiB.

  • Admite el aprovisionamiento dinámico de volúmenes, así como el aumento o la reducción de la capacidad de las instancias y los recursos compartidos según sea necesario:

    • Si la carga de trabajo de la aplicación supera las 80 reclamaciones de volumen persistente (PVCs), el controlador de CSI de Filestore de GKE crea automáticamente más instancias de Filestore y asigna los recursos compartidos necesarios de forma dinámica entre las instancias.

    • Cuando eliminas un PV, el controlador CSI de Filestore de GKE reclama el almacenamiento compartido asignado y elimina el recurso compartido. El controlador CSI de Filestore de GKE también elimina la instancia de Filestore si se han eliminado todos los recursos compartidos asociados.

    • Cuando creas, eliminas o editas la capacidad de un PV, el controlador CSI de GKE Filestore añade o recupera la capacidad de la instancia de Filestore asociada para adaptarse a la capacidad de todos los recursos compartidos. El tamaño de la instancia de Filestore puede variar en incrementos de 256 GiB.

    • El rendimiento de la instancia multicompartida empresarial de Filestore subyacente se comparte, lo que proporciona un mayor rendimiento a los PVs de GKE específicos cuando es necesario.

    • Esto permite aumentar la capacidad de los PV en función de las demandas de las cargas de trabajo con un tiempo de inactividad casi nulo.

  • Admite la retrocompatibilidad con las instancias creadas con las versiones del controlador CSI de Filestore de GKE de la 1.23 (la versión original lanzada con funciones de multicompartir) a la 1.26:

  • Las partes de estas instancias pueden aprovechar el tamaño mínimo ampliado de 10 GiB.

StorageClasses y aprovisionamiento dinámico de volúmenes

Para acceder a la función multicompartir de Filestore, primero debes habilitar el controlador de CSI de Filestore para GKE, versión 1.23 o posterior. Una vez habilitado, puedes aprovechar las StorageClasses de GKE, que usan un proceso automatizado llamado aprovisionamiento dinámico de volúmenes para gestionar de forma eficaz el ciclo de vida de tus PVs y PVCs.

El controlador de CSI de Filestore de GKE crea StorageClasses para satisfacer tus necesidades específicas. En la siguiente tabla se compara el rendimiento de Filestore Enterprise con varias carpetas compartidas con el de las opciones de una sola carpeta compartida:

Nivel de servicio StorageClass de GKE Número de participaciones por instancia Tamaño de PVC de GKE Capacidad de Filestore Cambio incremental Implementación Modo de acceso
HDD básico standard-rwx Uno Entre 100 GiB y 64 TiB Entre 100 GiB y 64 TiB 1 GiB Por zonas lectura/escritura múltiple
SSD básico premium-rwx Uno De 2,5 TiB a 64 TiB De 2,5 TiB a 64 TiB 1 GiB Por zonas lectura/escritura múltiple
Empresa enterprise-rwx Uno De 1 a 10 TiB De 1 a 10 TiB 256 GiB Regional lectura/escritura múltiple
Empresa con la función de compartir varios archivos enterprise-multishare-rwx Hasta 80 De 10 GiB a 1 TiB Grupo de instancias de Filestore, cada una de entre 1 y 10 TiB


Cada instancia de Filestore aloja hasta 80 PVs (recursos compartidos),
cada uno de ellos con un tamaño de entre 10 GiB y 1 TiB.

256 GiB por instancia


1 GiB por PVC (compartido)

Regional lectura/escritura múltiple

Para ver una comparación más detallada de las opciones de nivel de servicio, consulta Niveles de servicio.

Cómo funciona

Si usas la versión 1.27 del controlador CSI de Filestore de GKE y el parámetro max-volume-size StorageClass, tendrás más control para definir un tamaño máximo de recurso compartido. Haciendo referencia a este valor, el controlador restringe el número de recursos compartidos permitidos en la instancia.

Para implementar esta función, cree un StorageClass e incluya el parámetro en el archivo de configuración, asignándole uno de los cuatro valores aceptados que se indican en la primera columna:

Tamaño máximo del volumen (tamaño del recurso compartido) Número máximo de recursos compartidos por instancia
128 GiB 80
256 GiB 40
512 GiB 20
1024 GiB (1 TiB) 10

Si quieres limitar el tamaño de la participación a 128 GiB, usa el par clave-valor max-volume-size: "128Gi".

Si no se especifica ningún valor para el parámetro max-volume-size o se omite por completo, el controlador asigna un valor predeterminado de 1024 GiB por recurso compartido. De esta forma, se establece un recuento máximo de 10 recursos compartidos en la instancia. Para ver un ejemplo detallado, consulta Optimizar contenido compartido varias veces.

Retrocompatibilidad

La función multicompartir más reciente es compatible con las instancias creadas con las versiones del controlador CSI de GKE Filestore de la 1.23 (la versión original lanzada con funciones multicompartir) a la 1.26:

  • Las instancias que ya tengas pueden crear PVCs o recursos compartidos con la restricción de tamaño mínimo ampliada. Por lo tanto, el tamaño de cada parte ahora oscila entre 10 GiB y 1024 GiB (1 TiB).

  • La versión 1.27 del controlador de CSI de Filestore de GKE reconoce las instancias Enterprise antiguas y les asigna un límite de tamaño máximo de recurso compartido predeterminado de 1024 GiB. Esto significa que las instancias antiguas no pueden tener más de 10 recursos compartidos por instancia.

Ejemplo de instancia antigua

Por ejemplo, supongamos que instalas la versión 1.25 del controlador de CSI de Filestore de GKE y creas una StorageClass con la etiqueta enterprise-multishare-rwx. A continuación, aprovisionas una instancia de nivel Enterprise de 1 TiB, denominada F1, asignada a un único recurso compartido de 100 GiB. El controlador hace referencia a las especificaciones de la instancia indicadas en StorageClass para esta solicitud.

A continuación, actualizas el controlador CSI de Filestore de GKE a la versión 1.27 y, después, aprovisionas diez instancias compartidas de 10 GiB.

El archivo de configuración de StorageClass usado para crear F1 no incluye el parámetro max-volume-size, por lo que el controlador reconoce la instancia F1 como una instancia antigua y le asigna un tamaño máximo de recurso compartido predeterminado de 1024 GiB para todos los recursos compartidos nuevos asignados a la instancia. A continuación, el controlador hace referencia a este valor en futuras solicitudes que puedan incluir la instancia. También está disponible el nuevo tamaño mínimo de participación de 10 GiB.

En cuanto a la solicitud de aprovisionamiento de diez PVCs de 10 GiB, nueve se asignan a F1 y, a continuación, se crea una segunda instancia, F2, para aprovisionar la cuota final de 10 GiB.

Ten en cuenta que el controlador primero reconoce el tamaño máximo permitido para compartir y, a continuación, usa ese valor para determinar el número máximo de recursos compartidos que se pueden asignar a una instancia de Filestore. Cuando se alcanza el número máximo de recursos compartidos de una instancia, se crean nuevas instancias, si es necesario, para completar una solicitud de aprovisionamiento.

Supervisión

Para obtener información sobre cómo monitorizar el rendimiento de las instancias, consulta Monitorizar instancias y cuota.

Limitaciones de las funciones

Se aplican las siguientes limitaciones:

  • La función de multirecurso compartido de Filestore solo está disponible en el nivel de servicio Enterprise de Filestore.

  • Los StorageClasses de GKE son inmutables. El tamaño máximo de los recursos compartidos debe elegirse con cuidado.

    Si necesitas cambiar el tamaño máximo de los recursos compartidos de tus instancias de Filestore, debes crear una clase de almacenamiento personalizada con el tamaño actualizado, crear nuevas instancias y, a continuación, copiar y mover tus datos.

  • Cada instancia de Filestore Enterprise puede alojar hasta 80 recursos compartidos o PVs de GKE. Si se superan los 80 PVCs, el controlador de CSI de Filestore de GKE creará más instancias de Filestore y asignará esos recursos compartidos de forma dinámica entre las instancias. En algunas circunstancias, crear un nuevo recurso compartido de Filestore o un PV puede llevar más tiempo. Si tu aplicación requiere aprovisionamiento inmediato de PVs, incluye la siguiente especificación en el archivo YAML de StorageClass:

    volumeBindingMode: Immediate

  • Las instantáneas aún no se admiten en los multirecursos compartidos de Filestore. Si es necesario, puedes usar una StorageClass de Filestore de un solo recurso compartido para crear manualmente instantáneas mediante la API de Filestore.

  • Las instancias de uso compartido múltiple y los recursos compartidos asociados pueden tardar varios minutos en crearse y no se muestran hasta que se completan las operaciones de creación.

  • Algunas operaciones de eliminación de PV pueden tardar mucho tiempo en completarse. Es posible que se bloqueen las operaciones PV create o PV expand iniciadas por los PVCs definidos por la misma StorageClass durante este tiempo.

  • El controlador de CSI de Filestore de GKE es compatible con los clústeres que usan Linux.

  • Si prevé cargas de trabajo con una sobrecarga de metadatos mayor, le recomendamos que defina un tamaño máximo de recurso compartido que se ajuste a las necesidades de capacidad de su aplicación.

    Por ejemplo, supongamos que aprovisionas una instancia de Filestore Enterprise con varios recursos compartidos, lo que permite un tamaño máximo de 256 GiB por recurso compartido. Esto da como resultado un límite máximo de 40 recursos compartidos en la instancia.

    Por ejemplo, supongamos que se produce un error en las operaciones de escritura de un recurso compartido y, al revisar la métrica de porcentaje de capacidad sin formato disponible de la instancia en Explorador de métricas, observa que la instancia no tiene capacidad suficiente. Te recomendamos que configures las nuevas instancias de multirepartición con un tamaño de partición mayor (por ejemplo, 512 GiB) para satisfacer las necesidades de tu carga de trabajo. Ten en cuenta que, en este caso, se permiten menos recursos compartidos en la instancia (20).

  • Los valores máximos de tamaño de los recursos compartidos son 128 GiB, 256 GiB, 512 GiB o 1024 GiB (1 TiB).

  • En el caso de las cargas de trabajo que requieran recursos compartidos de 1 TiB, usa un solo recurso compartido por instancia.

Precios

Una vez habilitada la facturación, se aplican cargos en función del nivel de servicio Enterprise de Filestore subyacente. Con la capacidad compartida en varios volúmenes más pequeños, los usuarios pueden beneficiarse de una reducción significativa de los costes de almacenamiento.

Para obtener más información, consulta los artículos sobre el nivel Enterprise y la asignación de capacidad.

Siguientes pasos