Los clústeres de Tanzu Kubernetes Grid, al igual que otros componentes y cargas de trabajo que se ejecutan en espacios de nombres de Supervisor, requieren almacenamiento persistente.

Directivas de almacenamiento para clústeres de Tanzu Kubernetes Grid

Para proporcionar recursos de almacenamiento persistentes a los clústeres de Tanzu Kubernetes Grid, un administrador de vSphere configura directivas de almacenamiento que describen distintos requisitos de almacenamiento. Después el administrador agrega las directivas de almacenamiento al espacio de nombres en el que se implementa el clúster de Tanzu Kubernetes Grid. Las directivas de almacenamiento visibles para el espacio de nombres determinan a qué almacenes de datos puede acceder al espacio de nombres y cuáles puede utilizar para almacenamiento persistente. Dictan cómo se colocan los nodos del clúster y las cargas de trabajo en el entorno de almacenamiento de vSphere.

Basándose en las directivas de almacenamiento asignadas al espacio de nombres, vSphere IaaS control plane crea clases de almacenamiento de Kubernetes que concuerdan y se muestran automáticamente en el espacio de nombres. También se propagan al clúster de Tanzu Kubernetes Grid en este espacio de nombres.

En el clúster de Tanzu Kubernetes Grid, las clases de almacenamiento aparecen en dos ediciones, una con el modo de enlace Immediate y otra, con el modo de enlace WaitForFirstConsumer. La edición que elija el equipo de desarrollo y operaciones depende de sus requisitos.

Para obtener más información sobre las clases de almacenamiento en clústeres de Tanzu Kubernetes Grid, consulte Usar clases de almacenamiento para volúmenes persistentes.

Cómo se integran los clústeres de Tanzu Kubernetes Grid con el almacenamiento de vSphere

Para integrarse con el Supervisor y el almacenamiento de vSphere, los clústeres de Tanzu Kubernetes Grid usan Paravirtual CSI (pvCSI).

pvCSI es la versión del controlador de CNS-CSI vSphere modificada para los clústeres de Tanzu Kubernetes Grid. pvCSI reside en el clúster de Tanzu Kubernetes Grid y es responsable de todas las solicitudes relacionadas con el almacenamiento que se originan en el clúster de Tanzu Kubernetes Grid. Las solicitudes se envían a CNS-CSI, que a su turno las propaga a CNS en vCenter Server. Como resultado, pvCSI no tiene comunicación directa con el componente de CNS, sino que depende del CNS-CSI para las operaciones de aprovisionamiento de almacenamiento. A diferencia de CNS-CSI, pvCSI no requiere credenciales de infraestructura. Está configurado con una cuenta de servicio en el espacio de nombres.

pvCSI es un componente de los clústeres de TKG; CNS-CSI es un componente del Supervisor y CNS es un componente de vCenter Server.

Para obtener información sobre los componentes de Supervisor utilizados para la integración con el almacenamiento de vSphere, consulte Almacenamiento persistente para cargas de trabajo.

Cómo se crea un volumen persistente

A continuación, se muestra cómo interactúan diferentes componentes cuando un ingeniero de desarrollo y operaciones realiza una operación relacionada con el almacenamiento en el clúster de Tanzu Kubernetes Grid, por ejemplo, crea una notificación de volumen persistente (Persistent Volume Claim, PVC).

El ingeniero de desarrollo y operaciones crea un PVC mediante la línea de comandos en el clúster de Tanzu Kubernetes Grid. Esta acción genera una PVC correspondiente en el Supervisor y activa el CNS-CSI. CNS-CSI invoca la API de creación de volumen de CNS.

Tres componentes interactúan para crear un volumen persistente.

Después de crear correctamente un volumen, la operación se propaga de vuelta a través del Supervisor al clúster de Tanzu Kubernetes Grid. Como resultado de esta propagación, los usuarios pueden ver el volumen persistente y la notificación de volumen persistente en el estado enlazado en el Supervisor. Además, también verán el volumen persistente y la notificación de volumen persistente en el estado enlazado del clúster de Tanzu Kubernetes Grid.

Funcionalidad admitida por pvCSI

El componente pvCSI que se ejecuta en el clúster de Tanzu Kubernetes Grid admite varias funciones de almacenamiento de vSphere y Kubernetes.

Funcionalidades admitidas pvCSI con clúster de Tanzu Kubernetes Grid
Compatibilidad de CNS en vSphere Client
Estado mejorado del objeto en vSphere Client Sí (solo vSAN)
Volumen persistente de bloques dinámicos (modo de acceso ReadWriteOnce)
Volumen persistente de archivos dinámicos (modo de acceso ReadWriteMany) Sí (con Servicios de archivos de vSAN)
Almacén de datos de vSphere VMFS/NFS/vSAN/vVols
Volumen persistente estático
Cifrado No
Expansión de volumen sin conexión
Expansión de volumen conectado
Topologías de volumen y zonas
Varias instancias del plano de control de Kubernetes
WaitForFirstConsumer
VolumeHealth
Storage vMotion con volúmenes persistentes No