lunes, 4 de enero de 2021

Proxmox Backup Server. Solución integral para copias de seguridad

 Proxmox, conocido por sus productos Proxmox Virtual Environment y Proxmox Mail Gateway, ha lanzado la primera versión de la distribución Proxmox Backup Server.

Esta se presenta como un software de respaldo cliente-servidor de clase empresarial que respalda máquinas virtuales, contenedores y hosts físicos.

Está especialmente optimizado para la plataforma Proxmox Virtual Environment y permite realizar copias de seguridad y replicar datos de forma segura.
Proporciona una gestión sencilla con una línea de comandos y una interfaz de usuario basada en web y está licenciada bajo la Licencia Pública General GNU Affero v3 (GNU AGPL, v3).
Proxmox Backup Server admite copias de seguridad incrementales, deduplicación de datos, compresión y cifrado autenticado.

 
En este primer artículo sobre PBS mostraremos cómo instalar Debian Buster x64 y luego configurar los repositorios de PBS.

Veamos algunas características del mismo

Proxmox Backup se divide en una parte de servidor y otra de cliente. La parte del servidor puede ser instalada con un instalador gráfico o en Debian desde el repositorio de paquetes proporcionado.

Requisitos del sistema
 Es recomendable usar hardware para servidor de alta calidad cuando se ejecuta Proxmox Backup en producción. Para disminuir aún más el impacto de un host fallido, puede configurar la sincronización periódica, eficiente e incremental de la base de datos desde otras instancias del Proxmox Backup Server.

Requisitos mínimos del servidor, para la evaluación
Estos requisitos mínimos son sólo para fines de evaluación y no deben utilizarse en producción.

CPU: 64bit (x86-64 or AMD64), 2+ Cores
Memoria (RAM): 2 GB RAM
Hard drive: mayor a 8GB.
Placa de red (NIC)


Requisitos de sistema recomendados para el servidor
CPU: CPU moderna de AMD o Intel de 64 bits, con al menos 4 núcleos
Memoria: mínimo 4 GiB para el sistema operativo, la caché del sistema de archivos y los demonios del Proxmox Backup Server. Añade al menos otro GiB por cada espacio de almacenamiento TiB.
Almacenamiento del sistema operativo:
32 GiB, o más, de espacio de almacenamiento libre
Utilice un RAID de hardware con una caché de escritura protegida por batería (BBU) o una configuración ZFS redundante (ZFS no es compatible con un controlador RAID de hardware).
Almacenamiento de copias de seguridad:
Utilice sólo SSDs, para obtener los mejores resultados
Si se usan discos duros: Se recomienda encarecidamente utilizar una caché de metadatos, por ejemplo, añadir un espejo de dispositivo especial ZFS.
Tarjetas de interfaz de red (NIC) redundantes de Multi-GBit/s

el primer paso, luego de bajar la iso de la versión preferida para instalación de Debian será su instalación. En este caso utilizaré debian-10.7.0-amd64-netinst.iso


A continuación las configuraciones necesarias de particionado, conexión de red, zona horaria, usuario root, etc.


 




Solo elegimmos instalar el servidor ssh para facilitar el trabajo remoto desde terminal.


 finalizado, reiniciamos el sistema y tendremos debian 10, por el momento. Pasamos a instalar PBS



Ahora veremos cómo instalar PBS en un servidor Debian Buster. Para ello bajamos la llave gpg.
# wget http://download.proxmox.com/debian/proxmox-ve-release-6.x.gpg -O /etc/apt/trusted.gpg.d/proxmox-ve-release-6.x.gpg


Repositorio de copias de seguridad sin suscripción de Proxmox
Como su nombre indica, no necesita una clave de suscripción para acceder a este repositorio. Puede ser usado para pruebas y para uso fuera de la producción. No se recomienda utilizarlo en servidores de producción, porque estos paquetes no siempre están muy probados y validados.


Recomendamos configurar este repositorio en /etc/apt/sources.list
# PBS pbs-no-subscription repository provided by proxmox.com,
# NOT recommended for production use
deb http://download.proxmox.com/debian/pbs buster pbs-no-subscription


Adicionalmente podemos agregar el repositorio Testing de PBS.
deb http://download.proxmox.com/debian/pbs buster pbstest

luego actualizamos la de los repositorios y ya estamos


 Instalación del servidor
El servidor de respaldo almacena los datos actuales respaldados y proporciona una interfaz gráfica de usuario basada en la web para varias tareas de administración, como la administración de discos.
 

Nota
Siempre es necesario un servidor de respaldo. No es posible usar el Proxmox Backup sin la parte del servidor.
La imagen de disco (archivo ISO) proporcionada por Proxmox incluye un sistema Debian completo ("buster" para la versión 1.x) así como todos los paquetes necesarios para el servidor de Proxmox Backup.
El instalador le guiará a través del proceso de instalación y le permitirá particionar el disco o discos locales, aplicar las configuraciones básicas del sistema (por ejemplo, zona horaria, idioma, red) e instalar todos los paquetes necesarios. El ISO proporcionado le permitirá comenzar en pocos minutos, y es el método recomendado para usuarios nuevos y existentes.
Alternativamente, el servidor Proxmox Backup puede instalarse sobre un sistema Debian existente.

Instalar el Servidor de Copias de Seguridad de Proxmox en Debian
PBS es un conjunto de paquetes Debian que pueden ser instalados sobre una instalación estándar de Debian. Después de configurar los repositorios de paquetes de Debian explicado anteriormente, es necesario ejecutar:


# apt-get update
# apt-get install proxmox-backup-server


Los comandos anteriores mantienen el núcleo actual (Debian) e instalan un conjunto mínimo de paquetes requeridos.

se nos requerirá configurar postfix.

Y ya tendremos BPS instalado


Si se quiere instalar el mismo conjunto de paquetes que el instalador, es recomendable lo siguiente:
# apt-get update
# apt-get install proxmox-backup

 


Esto instalará todos los paquetes necesarios, el kernel Proxmox con soporte ZFS, y un conjunto de paquetes comunes y útiles.
Finalmente acceder a la interfaz web del PBS con el navegador web, usando HTTPS en el puerto 8007. Por ejemplo en https://<ip-or-dns-name>:8007



Proximamente estaré publicando cómo configurar los datastore y los clientes a resguardar.






miércoles, 10 de junio de 2020

Restaurar Backup diferenciales en proxmox V5

Esto va a ser bastante breve.
ustedes entiendan que siempre me hablo a mi mismo.

vamos con imágenes, que es lo ilustrativo.

Escenario:
Un CT que pierde su consistencia
Tenemos configurado copias diferenciales de resguardo:
apagamos el CT

Eliminamos el CT en producción
Restauramos el full backup

Restauramos el primer diff
Restauramos el segundo diff
Todo esto es más sencillo si hacemos un merge de los diff.
algo que tengo que investigar.

jueves, 9 de enero de 2020

Proxmox, backup full y diferencial

Proxmox Virtual Environment, o Proxmox VE, es un entorno de virtualización de servidores de código abierto. Está en distribuciones GNU/Linux basadas en Debian con una versión modificada del Kernel.


 A continuación vamos a ver cómo configurar un sistema de copias de seguridad diferenciales.

Los usuarios de ProxmoxVE saben que el sistema de backup del mismo solo realiza copias totales de cada VM o LXC lo que deviene en el desperdicio de una importante cantidad de espacio en disco, o medios extraibles.

Sin embargo, gracias al trabajo de Kamil Trzciński, es posible patchear ProxmoxVE para que realice backup diferenciales.

¿Qué es un backup diferencial?
La copia incremental ( o diferencial incremental ) es la más avanzada en sistemas de backup, ya que únicamente copia los ficheros creados o modificados desde el último backup realizado, ya sea de una copia completa o incremental, reduciendo de este modo los archivos a copiar y el tiempo empleado en el proceso de backup.

 una vez que tenemos nuestro host proxmox configurado y con sus VM y LXC corriendo, cabe ocuparnos de las copias de seguridad.
para ellos vamos a parchar proxmox de manera que acepte realizar copias diferenciales.

Se preguntaran a esta altura por qué no es una opción propia de Proxmox. Pués bien, la respuesta de los autores es:
Es decir: Quieren mantener esta herramienta tan sencilla como sea posible.
Nada más que agregar. Si no lo hacés vos, lo hago yo.

El Proxmox del ejemplo es:  Virtual Environment 5.4-7
chequear su versión para aplicar el patch correspondiente

Hay dos formas de obtener el script para patchear Proxmox
1) con wget
wget https://github.com/ayufan/pve-patches/blob/master/pve-5.4-5-diff-backup-addon

2) con git
git clone https://github.com/ayufan/pve-patches

una vez que tenemos el script le damos atributo de ejecutable y lo corremos

./pve-5.4-5-diff-backup-addon apply

como se observa en la imágen, el patch ya esta aplicado por lo que no produce ningún efecto.
En la primer instalación el mensaje será de un parchado satisfactorio.

A continuación instalamos xdelta3.
dpkg -i pve-xdelta3_3.0.6-1_amd64.deb


En Proxmox tenemos la posibilidad de trabajar tanto en la GUI como directamente en la terminal de Linux.
Veamos el backup configurado para algunas de los contenedores y vm




Nos queda seteado para 1 backup full y 2 diferenciales, de lunes a viernes.

podemos ver el contenido de nuestro directorio de backup
se observa que del container y la vm configurados para copia de seguridad ya existe el primer backup diferencial. Y vaya la diferencia en tamaño!!

lo mismo podemos observar en la terminal, con el agregado que se observan los log del sistema, interesantes de leer para entender el proceso completo.

Finalmente editamos el cron de proxmox para que quede similar a esta entrada:

vi /etc/pve/vzdump.cron
Agregando la opción --fullbackup

Nota:
En el ejemplo /mnt es el punto de montaje de un servidor NFS ubicado en una locación externa al proxmox. Decidí utilizar las propiedades de Debian para tal fin, antes que las propias de proxmox.


El patch tiene un script para chequear los backup
Y el blog del autor tiene ejemplos de restauración de los backup diferenciales.

Fuentes:
https://www.ayufan.eu/projects/proxmox-ve-differential-backups/#disqus_thread
https://github.com/ayufan/pve-patches



sábado, 19 de octubre de 2019

Backup en la nube de amazon con rsync desde ubuntu server

Continuando con la configuración de un sistema de backup de 100GB en la nube, luego de lo que ya hicimos en esta entrada: https://jaskolowski.com.ar/2019/10/amazon-web-services-100gb-de-espacio-en.html

Vamos a usar nuestro espacio en la nube automatizando un proceso de backup del servidor web.

 Utilizando el botón "conect" nos aparece la información de cómo usar el servidor ssh de nuestra vm

Por lo que simplemente deberemos logearnos remotamente con algo parecido a esto:

y comprobamos que el servidor rsync esta listo para recibir nuestros datos


enviamos nuestro backup a la nube de amazon

Crontab será de gran ayuda para automatizar esta tarea.


Fuentes:
https://medium.com/faun/bulk-upload-of-files-from-your-local-machine-to-aws-ec2-instance-with-remote-sync-rsync-2fe9a9456cad



martes, 1 de octubre de 2019

Amazon Web Services. 100GB de espacio en la nube gratis

Cada vez más rápido los espacios gratuitos que se ofrecen en internet para almacenamiento van quedando minimos y por ende inservibles.
Amazon ofrece de forma gratuita hasta 100GB de almacenamiento en sus servicios en la nube. Sin embargo, llegar a configurar adecuadamente una VM para guardar nuestras copias de seguridad en forma automatizada no es algo sencillo.
Aquí les explico brevemente cómo hacerlo.

Lo primero que haremos será registrar un usuario en amazon. para ello elegimos en la pantalla inicial de aws "crear una cuenta de aws"

En las opciones de registro se debe prestar atención de colocar datos reales ya que hay varias instancias de control de seguridad.
También debemos seleccionar que será de "uso personal" el servicio.

Una vez registrado y pasados los 3 niveles de chequeo de seguridad ya podremos acceder a nuestra cuenta aws.



A partir de aquí ingresamos al dash de Ec2 para crear una VM.











Seleccionamos "Launch Instance"


y elegimos una instancia ubuntu
Finalmente elegimos "review and lunch"
 Para poder conectarnos a la VM tendremos que generar una llave de seguridad


Con esto ya tenemos nuestro espacio en la nube de amazon.


Pero no del espacio en GB promocionado. Debemos ajustar el tamaño del volumen, que por default es de 8GB.

Para hacer cualquier ajuste de configuración debemos detener la VM



Seleccionamos en el menu de la izquierda: Elastik Block Store -->Volumes



Como se observa, la vm tiene 8GB de tamaño de disco


Seleccionamos desde el boton "actions" "modify volume



configuramos a 30 GB. Prestar atención al tamaño porque se puede pasar al sistema pago sin darse cuenta.









Finalmente iniciamos nuestra vm desde "launch instance"