Storage

Crea almacenamiento persistente para cargas de trabajo que se ejecutan en clústeres de Anthos alojados en AWS (GKE en AWS) con objetos de Kubernetes.

Usa almacenamiento persistente en tus cargas de trabajo de clústeres de Anthos de AWS

En clústeres de Anthos alojados en AWS, se usan los recursos de Kubernetes PersistentVolume (PV), PersistentVolumeClaim (PVC) y StorageClass para proporcionar almacenamiento persistente en archivo y en bloque a las cargas de trabajo. Para los clústeres de usuario versión 1.17 y versiones posteriores, puedes crear instantáneas de almacenamiento continuo con los recursos VolumeSnapshot y VolumeSnapshotClass. Las instantáneas se almacenan en tu cuenta de AWS.

StorageClass

Los clústeres de usuario tienen un StorageClass de Kubernetes predeterminado que aprovisiona de forma dinámica el almacenamiento con estado para cargas de trabajo en volúmenes de AWS Elastic Block Storage (EBS). 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 usuario tienen un VolumeSnapshotClass de Kubernetes predeterminado 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 StorageClass no predeterminada, puedes crear una StorageClass nueva 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 para establecer un nombre específico de StorageClass.

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)

Clústeres de Anthos alojados en AWS administra volúmenes de AWS EBS con el aws-ebs-csi-driver.

La versión del controlador de CSI de EBS está vinculada a la versión clústeres de Anthos alojados en AWS de Kubernetes. Cuando actualizas la versión del clúster de usuario, la versión nueva del controlador se aplica de forma automática. Por lo general, esta versión es el controlador más reciente disponible en el momento en que se lanza la versión clústeres de Anthos alojados en Azure.

El controlador preinstalado con clústeres de Anthos en alojados AWS proporciona los siguientes StorageClass de forma predeterminada:

  • 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 tus cargas de trabajo de clústeres de Anthos alojados en AWS. Consulta Importa un volumen de EBS existente para obtener ejemplos sobre cómo usar volúmenes de EBS en clústeres de Anthos alojados en AWS.

Elastic File System (EFS)

clústeres de Anthos alojados en AWS 1.6 y versiones posteriores admite la activación de sistemas de archivos y puntos de acceso AWS EFS preexistentes. Para obtener más información, consulta Usa EFS.

Opciones de almacenamiento adicionales

Se pueden usar otros sistemas de almacenamiento de terceros con clústeres de Anthos alojados en AWS a través de controladores de interfaz de almacenamiento de contenedores (CSI) de terceros (recomendado) o en complementos de volúmenes de Kubernetes de árbol.

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. Clústeres de Anthos alojados en 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 específicos de AWS

Los siguientes controladores de volumen se pueden usar con clústeres de Anthos alojados en AWS.

FSx for Lustre (FSX)

Clústeres de Anthos alojados en AWS no administran los volúmenes de FSx directamente. 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 complementos de volumen en árbol (integrados). Entre los controladores en árbol compatibles, se incluyen los siguientes:

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

Próximos pasos