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"
 


lunes, 30 de septiembre de 2019

Imagen de disco windows xp

a continuación dejo una imagen de windows xp sp3 instalado, junto con la aplicación de clonado de discos Acronis.

Xp es el único windows de los actuales que puede ser cambiado de hardware sin que esto rompa el sistema.
En muchas oportunidades tenemos máquinas antiguas pero que pueden ser utilizadas y si bien GNU/Linux es mucho mejor para estos casos no todos los usuarios llegan a adaptarse a este sistema operativo.
Todo los que hay que hacer es grabar la imagen del acronis en un CD, bootear con el mismo y clonar la imagen de windows xp en el nuevo rígido.
Al iniciar XP auto instala los drivers del nuevo hardware.
De los periféricos que no tenga el driver apropiado (video, sonido, red, etc) hay que buscar el correcto e instalarlo manualmente.



miércoles, 13 de marzo de 2019

SIU TOBA Framework de desarrollo web


SIU-Toba es una herramienta de desarrollo que permite crear sistemas transaccionales en forma rápida, utilizando tecnología web open-source. El sistema apunta a agilizar el proceso de construcción y el mantenimiento de los mismos, a través de la reducción de tareas repetitivas, permitiendo al desarrollador enfocar su actividad en la lógica del dominio.
Basada en la experiencia de más de diez años desarrollando soluciones para el Sistema Universitario Nacional, esta herramienta fue declarada software libre a través de la Resolución Ministerial Nº 823/2007, convirtiéndose así en el primer software de código abierto desarrollado por el Estado argentino.
Debido a sus características técnicas y funcionales, SIU-Toba ha sido adoptada como herramienta de desarrollo para innumerables proyectos, tanto en el ámbito estatal como en el privado.
Características Generales:

  • Tecnología WEB. Utiliza PHP.
  • Diseño 100 % orientado a objetos.
  • Orientado al desarrollo declarativo.
  • Desarrollado con herramientas que no requieren licenciamiento y cuentan con una amplia comunidad de usuarios.
  • Permite el desarrollo de aplicaciones con arquitectura en capas.
  • Arquitectura con posibilidad de extensión de todos sus componentes.
  • Dispone de una guía para el desarrollador.
Funcionalidades

  • Autentificación y control de permisos de accesos de usuarios.
  • Esquema de menús dinámicos por usuarios.
  • Interfaces gráficas generadas en forma declarativa con validaciones y comportamientos predefinidos y extensibles.
  • Marco transaccional a las operaciones.
  • Log de acceso de usuarios
  • Manejo de errores/excepciones en forma integral
  • Interoperabilidad a través de servicios web SOAP
  • Personalización de los sistemas desarrollados, manteniendo los cambios entre actualizaciones.
Los interesados en conocer más sobre esta herramienta pueden hacerlo desde la wiki, desde donde se puede descargar la herramienta e interiorizarse sobre sus funcionalidades.


Lo anterior corresponde a la descripción que tiene el consorcio SIU en la página del SIU-Toba

a continuación les muestro cómo realizar la instalación en un container LXD en un servidor ubuntu 16.04

Instalamos apache 2 , php y postgresql









Instalamos graphviz









Ceamos el usuario para la db de toba














 clonamos el  framework







 instalamos yarn con npm







instalamos bower con npm








seteamos la variable y ejecutamos la instalación de toba












 luego de satifacer las dependencias si persiste los requerimientos forzamos la instalación con --ignore-plataform-reqs











si nos da error del proceso de instalación instalamos composer










clonamos un template para sitios desde cero
 



 
 y lo instalamos con composer











intentamos nuevamente la instalación ahora desde el template










 agregamos el sitio creado a apache 2





ingresamos a /toba_editor/3.2






























 otro modelo para ver /toba_referencia/3.2















finalmente podemos crear una copia de seguridad de nuestra instlación








Para aquellos que tengan un SO linux y quieran probar este framework, les dejo un snapshot del container con el SIU-Toba

https://drive.google.com/open?id=1uzWd6-x7GJEBU4b6qdVMUGAADXSiMXCt


para usarlo bastará ejecutar:

lxc image import lxc-toba.tar.gz --alias toba-img

lxc init toba-img toba

lxc image delete toba-img

luego ingresar con:
lxc exec toba bash

y editar los parametros para la configuración de red:

vi /etc/netplan/50-cloud-init.yaml

usuario: toba
clave: toba123

Fuentes:
https://github.com/SIU-Toba/framework#creando-un-proyecto-de-cero
https://github.com/SIU-Toba/template-proyecto-toba
http://foro.comunidad.siu.edu.ar/index.php?topic=12467.0
https://discuss.linuxcontainers.org/t/backup-the-container-and-install-it-on-another-server/463/3