El 2 de octubre, se lanzó una nueva versión de GKE en AWS. Consulta las notas de la versión para obtener más información.

Storage

Puedes crear almacenamiento continuo para las cargas de trabajo que se ejecutan en GKE on AWS con objetos de Kubernetes.

Usa el almacenamiento continuo en tus cargas de trabajo de GKE on AWS

En GKE on AWS, usa los recursos de Kubernetes PersistentVolume (PV), PersistentVolumeClaim (PVC) y StorageClass para proporcionar almacenamiento continuo en bloque y de archivos a las cargas de trabajo. A partir de la versión 1.17, las instantáneas de almacenamiento persistente se pueden crear con los recursos VolumeSnapshot y VolumeSnapshotClass. Las instantáneas se almacenan en tu cuenta de AWS.

StorageClass

Los clústeres de GKE on AWS tienen un recurso StorageClass predeterminado de Kubernetes que aprovisiona de forma dinámica el almacenamiento con estado para cargas de trabajo en los volúmenes de Elastic Block Storage (EBS) de AWS. También puedes usar un StorageClass diferente para aprovisionar otros tipos de volúmenes. Estas opciones se describen en la siguiente sección.

VolumeSnapshotClass

Los clústeres de GKE en AWS tienen un VolumeSnapshotClass predeterminado de Kubernetes que crea instantáneas de almacenamiento con estado en volúmenes de AWS Elastic Block Storage (EBS).

Configurar el almacenamiento del clúster

Si deseas aprovisionar volúmenes de almacenamiento con una configuración diferente a los recursos StorageClass preinstalados, puedes crear un StorageClass nuevo en un clúster que use parámetros diferentes o un controlador de almacenamiento diferente. Luego, puedes configurar el StorageClass como la opción predeterminada del clúster o configurar tus cargas de trabajo para que usen el StorageClass. Por ejemplo, puedes usar un StatefulSet.

Usa instantáneas de volumen

En las versiones 1.17 o posteriores de Kubernetes, puedes usar el recurso VolumeSnapshot para crear instantáneas de volúmenes de almacenamiento. Luego, puedes aprovisionar los volúmenes persistentes nuevos a partir de estas instantáneas.

Elastic Block Storage (EBS)

GKE on AWS administra los volúmenes de EBS de AWS con el aws-ebs-csi-driver.

La versión del controlador de CSI de EBS está vinculada a la versión de una instancia principal de Kubernetes de GKE on AWS. Por lo general, este es el controlador más reciente disponible en el momento en que se lanza la versión de GKE. Cuando se actualiza el clúster, los controladores se actualizan de forma automática.

El controlador viene preinstalado con GKE on AWS y se configura con dos recursos StorageClass:

  • standard-rwo (opción predeterminada): Se usa para aprovisionar volúmenes gp2 de EBS.
  • premium-rwo: Se usa para aprovisionar volúmenes io1 de EBS.

Los volúmenes de EBS admiten el modo de acceso ReadWriteOnce de Kubernetes.

Volúmenes de EBS preexistentes

Puedes aprovisionar volúmenes de EBS existentes en las cargas de trabajo de GKE on AWS. Consulta Importa un volumen de EBS preexistente para obtener ejemplos sobre cómo usar volúmenes de EBS en GKE on AWS.

Opciones de almacenamiento adicionales

Otros sistemas de almacenamiento de terceros se pueden usar con GKE on AWS a través de controladores de CSI de terceros (opción recomendada) o en complementos de volumen de árbol de Kubernetes.

Controladores de CSI

Container Storage Interface (CSI) es una API estándar abierta que permite a Kubernetes conectar sistemas de almacenamiento arbitrarios con cargas de trabajo en contenedores. Una lista no completa de controladores de CSI se encuentra en la Documentación para desarrolladores de CSI de Kubernetes. GKE on AWS es compatible con CSI v1.x.

Para usar un controlador de CSI en un clúster, debes instalar el controlador de CSI que proporciona tu proveedor de almacenamiento. Luego, puedes configurar las cargas de trabajo para que usen el recurso StorageClass del controlador o establecerlo como el StorageClass predeterminado.

Controladores de almacenamiento adicionales específicos de AWS

Los siguientes controladores de volumen se pueden usar con GKE on AWS.

Elastic File System (EFS)

GKE on AWS no administra los volúmenes de EFS. Puedes instalar aws-efs-csi-driver de forma manual, pero Google no ofrece asistencia.

FSx for Lustre (FSX)

GKE on AWS no administra los volúmenes FSx. Puedes instalar aws-fsx-csi-driver de forma manual, pero Google no ofrece asistencia.

Complementos de volumen de árbol de Kubernetes

Kubernetes se entrega con cierta cantidad de complementos de volumen de árbol (integrados). Entre los controladores de árbol compatibles, se incluyen los siguientes:

  • configMap
  • emptyDir
  • hostPath
  • nfs
  • projected
  • secrets

Próximos pasos