TIPS – NFS de Proxmox montado en contenedores(CT)

Hoy vamos a mostrar como montar el espacio NFS que añadimos a nuestro PVE en nuestros contenedores (CT).

Vamos a usar unos de los comandos del sistema df (informe el uso del espacio de disco del sistema de archivos) con la opción -h que es legible por humanos para que muestre los datos en GB. Este comando te va a devolver una lista como la siguiente:

Como pueden ver el servidor tiene agregado el volumen NFS /mnt/pve/NFSSalvas.

Para este articulo vamos a usar el contenedor 100, y la utilidad pct “Proxmox Container Toolkit”, tengan en cuenta que esta utilidad esta disponible desde el cambio a LXC, para versiones con OpenVZ la utilidad era vzctl.
Usando esta utilidad revisaremos la configuración de nuestro contenedor:

Para montar el espacio NFS entramos al contenedor, podemos hacerlo abriendo una nueva consola pero vamos a darle utilidad a pct:

Una vez dentro del contenedor creamos una carpeta que es donde vamos a vincular la ruta del NFS en este caso sera en /opt/nfsct.

Después de crear la carpeta salimos del contenedor y en el servidor PVE vamos a la configuración para agregarle la linea que servirá para montar el NFS en la carpeta que acabamos de crear vamos al archivo de configuración del contenedor y agregamos la linea:

lxc.mount.entry: /mnt/pve/NFSSalvas /opt/ntfsct none rw,bind 0.0

Para agregar la linea voy a usar como editor nano que viene por defecto, seria como sigue:

Después de guardarlo verificamos que este en fichero de configuración del contenedor y vemos que tiene la linea que hemos agregado.

Reiniciamos el contenedor, entramos a el y verificamos el contenido de la carpeta.

El contenido es exactamente el mismo que tenemos en la carpeta NFS del servidor. Esto es muy útil para tener en lugares donde tengas mayor almacenamiento y para hacer contenedores solo con el espacio de disco necesario para el OS.

Agregando comentarios de Pavel Milanes Costa de la utilidad y lo que ayuda tener esta configuración:

Esto es muy útil para por ejemplo un server de correos, en el CT pongo el server y la carpeta de almacén de correos está en el NFS montada por este método en /home/vmail/ así al hacer una salva (backup) del CT no me llevo los X GB de correos porque se quedan en el NAS.

Está lógica se puede utilizar para por ejemplo la carpeta /var/www/html de un server web, un server samba4 con los profiles móviles de un dominio montado en /home/samba, etc.

Otros detalles interesantes:
* Como los archivos está montados a nivel de Clúster y no localmente cuando mueves un CT este encontrará la carpeta en el lugar exacto en el otro nodo, por lo que el downtime es despreciable.
* Como los archivos está montados a nivel de Clúster y no localmente, puedes tener varias instancias trabajando en diferentes nodos o incluso en un mismo nodo del cluster para incrementar la capacidad, estoy pensando por ejemplo en 2+ servers SMTP/POP/IMAP/WEB/FTP para servir un dominio nacional desde VPN con alta demanda. (piensen en varias instancias docker sirviendo el mismo servicio con los archivos físicos compartidos)
* Al tener el NFS montado solo en un puñado de IPS (Cluster nodes) puedes usar una seguridad mejor y mas ajustada sobre el NFS a diferencia de cuando usas varios CT que debes manejarlos a cada uno. (en concordancia con la filosofía “set & forget” de los sysadmins vagos)
* Esto es “casi” lo mismo que usar NFS dentro de un CT pero con el inconveniente que versiones de Proxmox viejas no tomaban en cuenta y te metían en contenido del mount point dentro del backup. Verificado que Proxmox 5.0 en adelante excluye el NFS montado, en versiones anteriores esto daba palos.
* Sin ánimo de crear una Flame War yo personalmente recomiendo esta opción por se más atómica y con menos puntos de fallos que la versión de montar el NFS dentro del CT.

Saludos, hasta un próximo articulo…

 

(Visited 532 times, 1 visits today)
Rafael L. Salgueiro
Sobre Rafael L. Salgueiro 8 Artículos
Administrador de redes y sistemas. Melómano, hedonista Usuario de GNU/Linux, Linux-User: #418573. Amante de las tecnologías en general.

3 Comentarios

  1. Yep, eso lo vengo utilizando desde hace tiempo y lo tengo montado en varios de mis clientes en Camagüey.

    Un detalle curioso que no mencionas y que es importante, en la linea:

    lxc.mount.entry: /mnt/pve/NFSIsos opt/ntfsct none rw,bind 0.0

    No notan nada raro?

    Sipe, el mount point destino no tiene el “/” de la referencia de la raíz, esto es una característica exigida, o sea no pueden poner el / de la raíz porque como es un CT al ejecutar el mount del CT dará error pues el crea la referencia dinámicamente.

    Esto es muy útil para por ejemplo un server de correos, en el CT pongo el server y la carpeta de almacén de correos está en el NFS montada por este método en /home/vmail/ así al hacer una salva (backup) del CT no me llevo los X GB de correos porque se quedan en el NAS.

    Está lógica se puede utilizar para por ejemplo la carpeta /var/www/html de un server web, un server samba4 con los profiles móviles de un dominio montado en /home/samba, etc.

    Otros detalles interesantes:
    * Como los archivos está montados a nivel de Clúster y no localmente cuando mueves un CT este encontrará la carpeta en el lugar exacto en el otro nodo, por lo que el downtime es despreciable.
    * Como los archivos está montados a nivel de Clúster y no localmente, puedes tener varias instancias trabajando en diferentes nodos o incluso en un mismo nodo del cluster para incrementar la capacidad, estoy pensando por ejemplo en 2+ servers SMTP/POP/IMAP/WEB/FTP para servir un dominio nacional desde VPN con alta demanda. (piensen en varias instancias docker sirviendo el mismo servicio con los archivos físicos compartidos)
    * Al tener el NFS montado solo en un puñado de IPS (Cluster nodes) puedes usar una seguridad mejor y mas ajustada sobre el NFS a diferencia de cuando usas varios CT que debes manejarlos a cada uno. (en concordancia con la filosofía “set & forget” de los sysadmins vagos)
    * Esto es “casi” lo mismo que usar NFS dentro de un CT pero con el inconveniente que versiones de Proxmox viejas no tomaban en cuenta y te metían en contenido del mount point dentro del backup. Verificado que Proxmox 5.0 en adelante excluye el NFS montado, en versiones anteriores esto daba palos.
    * Sin ánimo de crear una Flame War yo personalmente recomiendo esta opción por se más atómica y con menos puntos de fallos que la versión de montar el NFS dentro del CT.

    Saludos, Pavel, CO7WT.

    • pavel @CO7WT, gracias por la corrección del “/”, ya esta arreglado, y gracias por enriquecer el artículos con las.
      @alexminator hay varias formas de hacer las cosas, esta la comparto de algo que escribió

  2. Esto no es lo mismo que usar un mount point MP0??? Desde la webUI podremos declararlo. Otra forma seria, sin tener que editar el conf del ct, declarar en el fstab del ct el montaje del nfs. Una solucion que veo mas facil. Seria algo como esto
    # UNCONFIGURED FSTAB FOR BASE SYSTEM
    ipdelservernfs:/carpeta/a/compartir /carpeta/montada nfs auto 0 0
    espero les sirva
    alex out

Dejar una contestacion

Tu dirección de correo electrónico no será publicada.


*