Configura Ubuntu, Proxmox, Zabbix & NethServer para entornos de Oficina
Menu

PROXMOX SSHFS

7/25/2017

2 Comments

 
Picture
Regresar
En el siguiente artículo vamos a explicar los pasos para activar "Unidades de Almacenamiento Temporal" con SSHFS en PROXMOX, para situaciones cotidianas como:
  • Generar y trasladar Backups de Emergencia de "Máquinas Virtuales" en un fin de semana, de forma remota y sin tener acceso físico a nuestro Datacenter.
  • Restaurar Backups históricos ubicados fuera de los Nodos o Cluster.
  • Importar y Exportar "Máquinas Virtuales" de otros hipervisores como VmWare, Virtualbox, Xen entre otros.
​Nota:  Los pasos que vamos a mostrar para generar Backups, Restaurar, Importar y Exportar "Máquinas Virtuales", es en resumen la recopilación de nuestras experiencias con PROXMOX en entornos productivos.  No discutimos que es mucho mejor operar desde linea de comando, sin embargo este artículo pretende demostrar que se puede facilitar este tipo de gestiones a través de un entorno gráfico.

Pasos a seguir

​1.  ¿Qué es SSHFS?
2.  Activar Storage con SSHFS
​3.  Generar y trasladar Backups de Emergencia
4.  Restaurar Backups históricos
​5.  Importar "Máquinas Virtuales"
6.  Exportar "Máquinas Virtuales"

 

1.  ¿Qué es SSHFS?

Secure SHell FileSystem (SSHFS) es un "Sistema de Archivos Virtual (VFS / Virtual File System)"  para Linux, que nos permite montar directorios de unidades remotas sobre una conexión segura SSH.   Se caracteriza por su fácil uso y que no requiere de configuraciones avanzadas en el fuselaje de Linux, ya que hace uso del módulo FUSE el cual viene integrado en la mayoría de Kernel's Linux a partir de sus versiones 2.6.  Más información haga clic en siguiente link:  https://en.wikipedia.org/wiki/SSHFS
Picture

 

2.  Activar Storage con SSHFS

Activar "Unidades de Almacenamiento Temporal" es un proceso que requiere de dos pasos:
  • Agregar "Directorio Remoto" en Nodo PROXMOX con SSHFS.
  • Activar en el Administrador Web PROXMOX -> "Storage Directory".
​
2.1  Agregar "Directorio Remoto" en Nodo PROXMOX con SSHFS
2.1.1  Instalar en el Nodo PROXMOX SSHFS, con la siguiente linea de comando:
  • apt install sshfs

2.1.2  Creamos un directorio en /mnt
  • mkdir /mnt/sshfsdisk
​
2.1.3  Montar Directorio de Unidad Remota:
  • sshfs usuariox@ip:/directorio  /mnt/sshfsdisk
  • usuariox:  Usuario válido en estación o servidor remoto.
  • ip:  IP de estación o servidor remoto.
  • :/directorio:  Dirección relativa del directorio remoto a utilizar.
  • /mnt/sshfsdisk:  Punto de montaje local
Estación o servidor remoto:
De lado de la estación o servidor remoto, el "Directorio Compartido" debe ser propiedad del usuario que utilice en la conexión sshfs.

Ejemplos:
​
Compartir directorio en Home:
  • /home/usuariox/proxmox
Compartir directorio en un USBDisk:
  • ​/media/usuariox/usbdisk-name
​Toda vez sea un directorio en su "Sistema de Archivo / File System", usted puede compartirlo al Nodo o cualquier servidor Linux y trasladar en él lo que necesite operar.
2.2  Activar en el Administrador Web PROXMOX -> "Storage Directory"
2.2.1  Crear Storage - Directory
Seleccione en "Datacenter" la opción Storage.
Agregue un Storage de tipo "Directory".
Picture
2.2.2  Parámetros "Storage - Directory"
Se sugiere utilizar los siguientes parámetros:
Picture
2.2.3  Descripción de campos pantalla "2.2.2 Parámetros "Storage - Directory""
  • ​ID:  Nombre a asignar al "Storage Directory".  En este ejemplo sshfsdisk
  • Directory:  Ingrese la dirección relativa del "Directorio Local", creado para vincular el "Directorio Remoto" con SSHFS.  En este caso es /mnt/sshfsdisk
  • Content:  Tipo de contenido del Storage.  en este ejemplo indicamos:
    disk Image:  "Discos Virtuales" de "Máquinas Virtuales".
    VZDump Backup File:   Almacena Backups de "Maquinas Virtuales" y "Contenedores".
    Container:  "Discos Virtuales" de "Contenedores".
  • Nodes:  Indica que Nodos no tienen acceso al Storage.  En este caso "Storage - Directory" relaciona "Directorios Locales" en el Nodo y no puede compartirse automáticamente con los demás Nodos.
  • Enable:  Habilita el Storage para su uso.
  • Shared:  Compartir Storage con otros Nodos.  En este caso "Storage - Directory" relaciona "Directorios Locales" en el Nodo y no puede compartirse automáticamente con los demás Nodos.
  • ​Max Backup:  Indica la cantidad máxima de Backups que puede contener.  En este caso tiene el valor "0" que indica que no tiene límite.
​
2.3  Revisar Storage - Directory
Después de agregar "Storage - Directory" debe aparecer en el listado de Storages del Nodo.

En este ejemplo vemos un Cluster PROXMOX y adicional se replica el Storage en los demás Nodos.  Puede hacer caso omiso a esta indicación porque el "Storage - Directory" con SSHFS solo funcionará en el Nodo donde se activó.
Picture
2.4  Directorio Remoto
La siguiente pantalla corresponde a la Estación Remota y el "Directorio Remoto".
PROXMOX genera los siguientes directorios:
images:  Directorio para los "Discos Virtuales" de las "Máquinas Virtuales y Contenedores".
dump:  Directorio donde se almacenan los archivos backup generados por PROXMOX.
Picture

A partir de este punto el "Storage - Directory / sshfsdisk" esta vinculado al "Directorio Local /mnt/sshfsdisk", que a su vez representa el "Directorio Remoto" con SSHFS.  Entonces, estamos listos para iniciar con los trabajos que se necesiten efectuar en el Nodo PROXMOX.

Picture

 

3.  Generar y trasladar Backups de Emergencia

El Administrador Web PROXMOX nos facilita el trabajo para generar Backups de forma manual o con tareas programadas, almacenando la configuración y "Disco(s) Virtual(es)" de las "Máquinas Virtuales" o "Contenedores" en archivos comprimidos.  Toda vez se generen los Archivos Backups, estos pueden ser restaurados o trasladados hacia otras unidades de almacenamiento vía USBDISK, Network, NFS, entre otros.
La gestión para crear Backups es bastante intuitivo y no requiere de mayor explicación, sin embargo pueden presentarse algunos escenarios donde "Generar y Trasladar Backups" con SSHFS sea de mucha utilidad, ejemplo:
​
  • Generar Backups un fin de semana conectado vía Teamviewer o VPN.  Operando de forma remota, no tiene acceso al Datacenter para colocar un UsbDisk en el servidor físico, sin embargo cuenta con la opción de interconexión entre los servidores, es entonces donde SSHFS saca la casta y nos hace la vida fácil.
  • Trasladar Backups hacia otro PROXMOX fuera de nuestras oficinas.
  • Manipular Backups para ser resguardado en cintas para su ubicación en bóvedas de seguridad.
  • Migrar hacia otro Hipervisor o simplemente llevarlo a la nube de algún proveedor.

En fin, se pueden presentar tantos escenarios donde Storage basado en SSHFS puede ser de mucha utilidad.
​
3.1  Backup en Storage - Directory + SSHFS
  • El procedimiento para generar Backups es similar a la gestión que se efectúa para almacenarlo de forma local, con la diferencia que en el proceso se debe de seleccionar el Storage que conecta el "Directorio Remoto", que en este ejemplo es sshfsdisk.
Picture
3.2  De lado del "Directorio Remoto"
  • Finalizada la tarea Backup vamos a observar en el "Directorio Compartido" un archivo que contiene la configuración de la "Máquina Virtual o Contenedor" así como su(s) "Disco(s) Virtual(es)", listo para ser restaurado en otro entorno, o trasladado hacia una cinta o usbdisk.
Picture
En resumen, con un "Directorio Remoto" como Storage tenemos la opción de efectuar tareas o "Pruebas de Concepto" sin colocar en riesgo el "Entorno Productivo".

 

4.  Restaurar Backups históricos

Utilizando el "Storage - Directory  / sshfsdisk" nos permite facilitar la gestión de restauración de "Backups" que tenemos guardados fuera del Nodo o Cluster.
​
4.1  Colocar Backup a Restaurar
  • Para restaurar Backups Históricos, simplemente copiamos el archivo comprimido en el directorio "dump". 
  • Es importante comentar que el nombre del archivo no debe de ser modificado debido a que la herramienta que restaura "qmrestore", toma en cuenta el formato utilizado en el nombre para interpretarlo y restaurar.
Picture
4.2  Restaurar Backup
El proceso de restauración es simple, sin embargo en este ejemplo se observa:
  • Puede restaurar en el "Disco Local del Nodo" o En el mismo Storage SSHFSDISK.
  • Nota:  En este ejemplo, podemos observar un Cluster PROXMOX en el cual se tiene un "Storage" que centraliza los "Discos Virtuales" de las "Máquinas Virtuales".  Esta característica le permite restaurar y después trasladar la "Máquina Virtual o Container" hacia otro Nodo miembro del Cluster.
Picture
Dato interesante:   El "Storage - Directory / sshfsdisk" siendo un "Virtual File System" le permite almacenar "Discos Virtuales" y correr "Máquinas Virtuales" en él.   Esta característica es de mucha utilidad únicamente para "Pruebas de concepto" y no es conveniente tener en él "Máquinas Virtuales" en producción.

 

5.  Importar "Máquinas Virtuales"

Estamos llegando a la fase final de este artículo y en esta última parte podrá observar los beneficios de "Storage Directory / sshfsdisk" y "Directorios Remotos".
5.1  Importar "Máquinas Virtuales" de otros Hipervisores

Para el siguiente ejemplo vamos a utilizar "Virtual Machine Appliance", que en resumen son "Máquinas Virtuales" que proveen algunas "Aplicaciones" para evaluar sus características.  Cuentan con la peculiaridad que vienen con un Sistema Operativo Lite y con la aplicación configurada y lista para ser activado (Muy similar a los Containers).
​Nuestra recomendación para este laboratorio es Zabbix el cual es una potente herramienta de monitoreo, más información en "Conoce Zabbix y como funciona".

5.1.1  Bajamos "Zabbix Appliance"

  • En el siguiente ejemplo vamos a bajar Zabbix Appliance para VirtualBox y VMWare.
 
  • Puede bajarlo desde el siguiente link:
    https://www.zabbix.com/download
Picture
5.1.2  Creación "Máquina Virtual"
  • ​El primer paso es crear una "Máquina Virtual" con la característica que el "Disco Virtual" este almacenado en el "Storage - Directory / sshfsdisk".
  • Es muy importante que el formato del "Disco Virtual" sea para VMWare (vmdk), debido a que estamos bajando un Appliance para VMWare.
​​
NOTA:  Para este ejemplo utilizamos VMWare, sin embargo se recomienda bajar los formatos qCow2 o RAW para próximos ensayos.
Picture
5.1.3  Revisar Disco Virtual
  • Finalizado la creación de la "Máquina Virtual", en el "Directorio Remoto" vamos a encontrar un archivo con extensión .vmdk (VMWare).
  • Este archivo es el que simula el "Disco Virtual" de la "Máquina Virtual" y es con el que vamos a trabajar más adelante.
Picture
5.1.4  Reemplazar Disco Virtual
  • Después de bajar "Zabbix Appliance" que viene comprimido en un tar.gz, el siguiente paso es extraerlo.
  • Ubique el archivo con extensión .vmdk el cual debe de tener un tamaño considerable.
  • Renombre el archivo con el nombre de "Disco Virtual" de la "Máquina Virtual" que se creó anteriormente, en este ejemplo es:
    vm-24072017-disk-1.vmdk
  • Asegúrese que la "Máquina Virtual" este apagada, entonces procesa a ELIMINAR el Archivo del "Disco Virtual" original de la "Máquina Virtual" y reemplace con el Archivo renombrado.​
Picture
5.1.5 Encender "Máquina Virtual"
  • Después de efectuar los pasos anteriormente descritos, que en resumen fue reemplazar el "Disco Virtual" de la "Máquina Virtual" por el "Disco del Appliance", se procede a iniciar la "Máquina Virtual".   Si efectuó los pasos según las indicaciones, la máquina debe de encender sin ningún inconveniente.
  • Si observa en detalle la configuración de la "Máquina Virtual", lo hemos configurado con lo básico, con la única diferencia que todo se guarda en el "Storage - Directory / sshhfsdisk".
Picture
5.1.6  Trasladar "Máquina Virtual"
  • Después de comprobar el correcto funcionamiento de la "Máquina Virtual" que hemos importado, el siguiente paso es colocarlo en producción.  Para ello vamos a utilizar la herramienta "Clonar" el cual hace el trabajo de "Transferir" el "Disco Virtual" hacia nuestros "Storages en producción" tanto locales como los compartidos.
  • Si lo traslada al "Disco Local" del Nodo, la herramienta "Clonar" lo integra al LVM como un Logical Volume (LV).
Picture

 

6.  Exportar "Máquinas Virtuales"

Para este fase me imagino que ha intuido el proceso de Exportar, después de observar como "Importar Máquinas Virtuales".  ​En resumen:
​
6.1  Clonar hacia "Storage Directory / sshfs"
  • Seleccione la "Máquina Virtual" y en modo apagado, proceda a clonar hacia el "Storage Directory / sshfsdisk".
  • Tome en cuenta el formato a exportar.  En este ejemplo vamos a exportar una "Máquina Virtual" alojado localmente en el Nodo.  El "Disco Virtual" de la "Máquina Virtual" a Exportar, se encuentra almacenado en el LVM como un Logical Volume.
  • La herramienta "Clonar" convierte y transfiere el "Disco Virtual" como un archivo .vmdk para Hipervisores VMWare o VirtualBox.
Picture
6.2  Disco Virtual Exportado
  • Finalizado la tarea "Clonar", vamos a ubicar el archivo .vmdk, el cual esta listo para colocarse en VMWare o VirtualBox.
  • Al seleccionar el formato VMWare, la herramienta "Clonar" efectuó automáticamente la conversión en el "Disco Virtual".
  • Teniendo a mano el "Disco Virtual" puede copiar a donde desee, incluso transportarlo hacia un proveedor en la Nube vía usbdisk o subirlo directamente.
Picture
6.3  Garantizar producto Exportado
  • Toda vez se efectué la tarea de Clonación, el siguiente paso es copiar el "Disco Virtual" y activarlo en el Hipervisor donde se necesite.
  • Para Garantizar que la imagen funcione correctamente, se siguiere probarlo como mínimo en VirtualBox.
  • Ahora bien, sino tenemos donde probar el "Disco Virtual" y necesitamos garantizar su funcionamiento, se sugiere crearlo de la siguiente forma:
    • En vez de "Clonar" utilice la herramienta "Backup" en la  "Máquina Virtual" a Exportar.
    • Restaure el Backup en "Storage - Directory / sshfsdisk", el proceso de Restauración crea un "Nuevo Disco Virtual" y vierte el contenido del Backup en él.  Esto obliga a validar la estructura en el "Disco Virtual" a Exportarse.

Finalizado PROXMOX SSHFS

Regresar

Picture

2 Comments
Maxwell
3/7/2018 21:46:18

Estuvo genial el tutorial, fue majestuosa su explicación, solamente necesito esto mismo pero aplicado a SAN/NAS, es decir, sin utilizar Ceph. Saludos y Gracias.

Reply
Abraham link
2/21/2019 16:19:17

Excelente articulo, me fue de mucha utilidad.
Se me plantea una duda, ¿se puede activar sshfs en todos los nodos del cluster apuntando a la misma compartición remota?

Reply



Leave a Reply.

    Editor:
    Juan Estuardo Hernandez

    Consultor Software Libre,
    Organización y Métodos.

    Acumular información es sólo el primer paso hacia la sabiduría. Pero compartir información es el primer paso hacia la comunidad.
    Henry Louis Gates, Jr.

    Condiciones de uso:

    El contenido del website 911-ubuntu y este artículo en particular, es “Libre” y puede ser consultado por quien lo desee.

    Por favor “No haga copias de nuestros artículos”.   Si desea compartirlo puede referir nuestras publicaciones como un enlace (Link), así las personas interesadas obtendrá nuestras últimas actualizaciones.

    Como todo en la vida, nada es perfecto, así que si observas algún error o  desea mejorar el contenido de estos artículos, puede enviarnos un mensaje el cual será bienvenido.  (Formulario al pie de página).


    Gracias por continuar consultando 911-Ubuntu para Entorno de Oficina y Redes Corporativas.

Creative Commons License
This work is licensed under a Creative Commons Attribution-NoDerivatives 4.0 International License
Powered by Create your own unique website with customizable templates.
  • Principal
  • Ubuntu Oficina
  • Servidores
    • nethserver
    • Proxmox
    • Zabbix
    • fengoffice
    • ubuntu-server >
      • Control remoto
  • Links
  • Principal
  • Ubuntu Oficina
  • Servidores
    • nethserver
    • Proxmox
    • Zabbix
    • fengoffice
    • ubuntu-server >
      • Control remoto
  • Links