El 6 de febrero de 2018, 20:07, Alberto Cardenas Cardenas< alberto.cardenas.c...@gmail.com> escribió:
> Gracias por la respuesta me quedo muy claro, pero ahora tengo otra duda, y > es con los respaldos incrementales. > > Mi configuracion de barman es la siguiente: ejemplo servidor se llama > esclavo2 , es un servidor esclavo replicado. > > [esclavo2] > > description = "Servidor Esclavo PostgreSQL server" > conninfo = host=esclavo2 user=barman dbname=postgres > streaming_conninfo = host=esclavo2 user=streaming_barman > > backup_method = rsync > reuse_backup = link > backup_options = concurrent_backup > > streaming_backup_name = barman_streaming_backup > streaming_archiver = on > slot_name = barman > streaming_archiver_name = barman_receive_wal > > > ;streaming_archiver_batch_size = 50 > ; PATH setting for this server > path_prefix = "/usr/pgsql-9.6/bin" > > retention_policy_mode = auto > retention_policy = RECOVERY WINDOW OF 1 days > wal_retention_policy = main > > ssh_command = ssh postgres@esclavo2 > archiver = on > parallel_jobs = 1 > > > > Este es el resultado del barman check > > esclavo2: > PostgreSQL: OK > is_superuser: OK > PostgreSQL streaming: OK > wal_level: OK > replication slot: OK > directories: OK > retention policy settings: OK > backup maximum age: OK (interval provided: 1 day, latest backup > age: 1 minute, 30 seconds) > compression settings: OK > failed backups: OK (there are 0 failed backups) > minimum redundancy requirements: OK (have 65 backups, expected at > least 0) > ssh: OK (PostgreSQL server) > archive_mode: OK > archive_command: OK > continuous archiving: OK > pg_receivexlog: OK > pg_receivexlog compatible: OK > receive-wal running: OK > archiver errors: OK > > > > En el cron tengo la siguiente tarea: > > */5 * * * * barman backup --reuse-backup=link esclavo2 > > > Este fue el backpu full inicial > > esclavo2 20180206T083014 - Tue Feb 6 08:30:21 2018 - Size: 130.3 MiB - > WAL Size: 102.4 MiB (tablespaces: tbs_indices:/var/lib/pgsql/9. > 6/data/indices) > > Estos son backup Incrementales (supuestamente) > > esclavo2 20180206T165503 - Tue Feb 6 16:55:16 2018 - Size: 2.2 GiB - WAL > Size: 0 B (tablespaces: tbs_indices:/var/lib/pgsql/9.6/data/indices) > esclavo2 20180206T133503 - Tue Feb 6 13:35:08 2018 - Size: 2.2 GiB - WAL > Size: 0 B (tablespaces: tbs_indices:/var/lib/pgsql/9.6/data/indices) > esclavo2 20180206T133002 - Tue Feb 6 13:30:08 2018 - Size: 2.2 GiB - WAL > Size: 0 B (tablespaces: tbs_indices:/var/lib/pgsql/9.6/data/indices) > esclavo2 20180206T132502 - Tue Feb 6 13:25:08 2018 - Size: 2.2 GiB - WAL > Size: 0 B (tablespaces: tbs_indices:/var/lib/pgsql/9.6/data/indices) > esclavo2 20180206T132002 - Tue Feb 6 13:20:08 2018 - Size: 2.2 GiB - WAL > Size: 0 B (tablespaces: tbs_indices:/var/lib/pgsql/9.6/data/indices) > esclavo2 20180206T131503 - Tue Feb 6 13:15:09 2018 - Size: 2.2 GiB - WAL > Size: 0 B (tablespaces: tbs_indices:/var/lib/pgsql/9.6/data/indices) > > > Esta es la informacion del ultimo bachup > > barman show-backup esclavo2 20180206T165503 > Backup 20180206T165503: > Server Name : esclavo2 > Status : DONE > PostgreSQL Version : 90606 > PGDATA directory : /var/lib/pgsql/9.6/data > Tablespaces: > tbs_indices: /var/lib/pgsql/9.6/data/indices (oid: 86015) > > Base backup information: > Disk usage : 2.2 GiB (2.2 GiB with WALs) > Incremental size : 135.1 KiB (-99.99%) > Timeline : 3 > Begin WAL : 00000003000000010000003B > End WAL : 00000003000000010000003B > WAL number : 0 > Begin time : 2018-02-06 16:55:03.947275-08:00 > End time : 2018-02-06 16:55:16.688294-08:00 > Copy time : 2 seconds + 9 seconds startup > Estimated throughput : 55.6 KiB/s > Begin Offset : 40 > End Offset : 152 > Begin LSN : 1/3B000028 > End LSN : 1/3B000098 > > WAL information: > No of files : 0 > Disk usage : 0 B > Last available : None > > Catalog information: > Retention Policy : VALID > Previous Backup : 20180206T133503 > Next Backup : - (this is the latest base backup) > > > > > Lo que no entiendo de todo esto es, porque todos los respaldos > incrementales pesas 2.2 GB, pesan , si tengo u respaldo full , se supone > que los incrementales son solo la diferencia del full, o estoy equivocado > Por la opción reuse_backup = link, barman reutiliza los ficheros del respaldo respaldo anterior para hacer los incrementales, y utiliza la funcionalidad de enlaces duros en linux [1]. El concepto principal es que una copia de seguridad base POSTERIOR compartirá los archivos que no han cambiados desde la copia de seguridad ANTERIOR (mediante enlaces duros) [2]. Si te fijas en la salida del comando, Incremental size : 135.1 KiB (-99.99%), sólo 135.KiB ha sido la diferencia con respecto al último. Por lo tanto, no tienes muchas copias de respaldos de 2.2 GB, sino que, sólo ha sido generado 135 KiB y los ficheros que no han sido modificados se reutilizan. [1] https://askubuntu.com/questions/108771/what-is-the-difference-between-a-hard-link-and-a-symbolic-link [2] http://docs.pgbarman.org/release/2.3/#incremental-backup Saludos > > Saludos cordiales > > El 6 de febrero de 2018, 6:49, Martin Marques <martin.marques@2ndquadrant. > com> escribió: > >> El 05/02/18 a las 22:22, Alberto Cardenas Cardenas escribió: >> > Hola lista, tengo una duda he leído la documentación de Barman, pero sin >> > embargo no se como poder restaurar archivos respaldados anteriores a >> > cierta ventana de tiempo (retention_policy), me explico. >> >> Todo lo que sacas del servidor de barman (lo que esta fuera de la >> ventana que configuraste para retener respaldos) barman no tiene forma >> de de saber donde está o como usar dichos archivos. Para barman esos >> archivos ya no están (aunque si están en otro lugar). >> >> Queda en vos copiar el backup completo y todos los WALs y escribir el >> recovery.conf para restaurar el respaldo. >> >> > Por ejemplo el parametro así: >> > >> > retention_policy = RECOVERY WINDOW OF 7 DAYS >> > >> > Y el dia 8 lo muevo a un NAS, , como puedo hacer un recovery de >> > cualquiera de los dias anteriores a mi política de retención si no están >> > en Barman, sino en un NAS. Es decir, que pasa si quiero recuperar un >> > respaldo muy grande de hace 6 meses. Como puedo configurar barman para >> > que pueda hacer esto sin necesidad de tener esto >> >> Como movés los respaldos fuera de la ventana configurada para la >> retensión al NAS en lugar de borrarlos? >> >> > retention_policy = RECOVERY WINDOW OF 7 MONTHS >> > >> > Ojalá me haya explicado bien >> >> Para mi estaba claro con el primer párrafo. :) >> >> >> -- >> Martín Marqués http://www.2ndQuadrant.com/ >> PostgreSQL Development, 24x7 Support, Training & Services >> > > -- Daymel Bonne https://www.2ndQuadrant.com/ <https://www.2ndquadrant.com/> Database Consultant, Training & Services