Manuales de desarrollo de YeboYebo
Esta herramienta sustituye a los scripts usados para copias de seguridad y el paquete sendMail usado para envios a vigilancia@yeboyebo.es. Engloba todas las necesidades que se conocen para gestionar las copias de un servidor : dump a ficheros comprimidos, copia de ficheros, email de información, etc …
https://github.com/yeboyebo/utils/tree/master/backup_tools
python3 backup_tools.py config atributo valor ofuscado?:False
python3 backup_tools.py config server_name SERVIDOR1
Este comando añade el atributo server_name al fichero config.ini
Para crear copias se ejecuta el comando db dump, seguido con el nombre de un fichero que contiene la lista de Bases de datos a copiar.
En el siguiente ejemplo se realizaría backup de las siguientes tablas incluidas en lista.txt.
python3 backup_tools.py db dump lista.txt
Como resultado se crearan 3 ficheros en la carpeta especificada en el atributo local_folder_backups, con un timestamp de la fecha de creación.
Para copiar ficheros desde nuestra carpeta de copias especificada en el atributo local_folder_backups, a un emplazamiento externo, se usará los argumentos
python3 backup_tools.py file remote local_folder remote_device horas? 12
Usaremos el comando db restore fichero
python3 backup_tools.py db restore lista.txt
Al ejecutarse el comando buscará los ficheros más recientes de cada BD y los restaurará el el Servidor de postgres principal.
Usaremos el comando db replicate fichero OJO!. Es necesario el atributo replicate_host_db en config.ini indicando la url del servidor de postgres alternativo y que este configura con mismo user/pass y puerto que el servidor principal.
python3 backup_tools.py db replicate lista.txt
Al ejecutarse el comando buscará los ficheros más recientes de cada BD y los restaurará el el Servidor de postgres espeicicado.
python3 backup_tools.py resume
Al ejecutarlo se enviará un email a las direcciones especifcadas en el atributo list_mails con una lista de los ficheros generados en las últimas 24 horas.