Saltar al contenido

Modos de acceso de volumen persistente de Kubernetes: ReadWriteOnce vs ReadOnlyMany vs ReadWriteMany

Este equipo de trabajo ha estado mucho tiempo investigando la respuesta a tus dudas, te brindamos la solución por esto esperamos resultarte de gran apoyo.

Deberías usar ReadWriteX cuando planea tener Pods que necesitarán escribir al volumen, y no solo leer datos del volumen.

Deberías usar XMany cuando desee que los pods accedan a un volumen determinado mientras esas cargas de trabajo se ejecutan en diferentes nodos del clúster de Kubernetes. Estos pods pueden ser múltiples réplicas que pertenecen a una implementación o pueden ser pods completamente diferentes. Hay muchos casos en los que es deseable que los pods se ejecuten en diferentes nodos, por ejemplo, si tiene varias réplicas de pod para una sola implementación, hacer que se ejecuten en diferentes nodos puede ayudar a garantizar una cierta cantidad de disponibilidad continua incluso si uno de los nodos falla o se está actualizando.

Si no usa XMany, pero tiene varios pods que necesitan acceso al volumen dado, lo que obligará a Kubernetes a programar todos esos pods para que se ejecuten en cualquier nodo en el que se monte primero el volumen, lo que podría sobrecargar ese nodo si hay demasiados pods de este tipo, y puede afectar la disponibilidad de las implementaciones cuyos pods necesitan acceso a ese volumen, como se explica en el párrafo anterior.

Así que juntando todo eso:

  • Si necesita escribir en el volumen, y es posible que tenga varios Pods que necesiten escribir en el volumen donde preferiría que la flexibilidad de esos Pods se programe en diferentes nodos, y ReadWriteMany es una opción dado el complemento de volumen para su clúster K8s, use ReadWriteMany.
  • Si necesita escribir en el volumen pero no tiene el requisito de que varios pods puedan escribir en él, o ReadWriteMany simplemente no es una opción disponible para usted, use ReadWriteOnce.
  • Si solo necesita leer desde el volumen, y es posible que tenga varios Pods que necesiten leer desde el volumen donde preferiría que la flexibilidad de esos Pods se programe en diferentes nodos, y ReadOnlyMany es una opción dado el complemento de volumen para su clúster K8s, use ReadOnlyMany.
  • Si solo necesita leer el volumen, pero no tiene el requisito de que varios pods puedan leerlo, o ReadOnlyMany simplemente no es una opción disponible para usted, use ReadWriteOnce. En este caso, desea que el volumen sea de solo lectura, pero las limitaciones de su complemento de volumen lo han obligado a elegir ReadWriteOnce (no hay ReadOnlyOnce opción). Como buena práctica, considere la containers.volumeMounts.readOnly ajuste a true en las especificaciones de tu pod para montajes de volumen correspondientes a volúmenes que están destinados a ser de solo lectura.

  1. ReadOnlyMany: muchos nodos pueden montar el volumen como de solo lectura

Si un pod monta un volumen con el modo de acceso ReadOnlyMany, otro pod puede montarlo y realizar solo la operación de lectura. En este momento, GCP no admite este método.

Esto significa que un volumen se puede montar en uno o varios nodos de su clúster de kubernetes y solo puede realizar la operación de lectura.

Tiene un pod que se está ejecutando en el nodo y está leyendo el archivo almacenado del volumen. Mientras esté en el mismo volumen, no podrá realizar escrituras.

Como es ReadOnlyMany, si su pod está programado en otro nodo, también estarán disponibles el volumen y los datos para realizar la operación de lectura.

  1. ReadWriteMany: muchos nodos pueden montar el volumen como lectura-escritura

Si un pod monta un volumen con el modo de acceso ReadWriteMany, otro pod también puede montarlo.

Esto significa que el volumen se puede montar en uno o varios nodos de su clúster de kubernetes y puede realizar operaciones de lectura y escritura.

Tiene un pod ejecutándose en un nodo y está leyendo y escribiendo el archivo almacenado desde el volumen.

Como es ReadWriteMany, si su pod programa a otro nodo, el volumen y los datos también estarán disponibles allí para realizar la operación de lectura / escritura.

  1. ReadWriteOnce: el volumen se puede montar como lectura-escritura por un solo nodo

Si un pod monta un volumen con el modo de acceso ReadWriteOnce, ningún otro pod puede montarlo. En GCE (Google Compute Engine), los únicos modos permitidos son ReadWriteOnce y ReadOnlyMany. Por lo tanto, un pod monta el volumen ReadWrite, o uno o más pods montan el volumen ReadOnlyMany.

Esto significa que el volumen se puede montar en only un nodo de su clúster de Kubernetes y solo puede realizar la operación de lectura.

Tiene un pod ejecutándose en el nodo y está leyendo el archivo almacenado del volumen. Mientras esté en el mismo volumen, no podrá realizar escrituras.

Como es ReadWriteOnce, si su pod está programado en otro nodo, entonces se adjuntará un volumen máximo al nodo y no podrá acceder a los datos allí.

Reseñas y puntuaciones del artículo

Tienes la opción de corroborar nuestra publicación dejando un comentario y puntuándolo te damos las gracias.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags :

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *