FreeBSD posee una característica muy interesante llamada 'zpool checkpoint'.
https://sdimitro.github.io/post/zpool-checkpoint/
https://oshogbo.vexillium.org/blog/79/
https://zedfs.com/zpool-checkpoints/
Los puntos de control de zpool o checkpoint, en lugar de tomar una única instantánea (snapshot) del conjunto de datos, toma una instantánea de todo el pool. Eso significa que no sólo se revierten los datos sino también todos los metadatos.
Esta característica es increíblemente útil, especialmente cuando se actualiza un sistema operativo, o cuando necesite experimentar con conjuntos de datos adicionales.
El punto de control zpool recuerda todo el grupo de transacciones (TXG). Eso significa que ningún dato desaparecerá mientras exista el punto de control.
Recuerda todo el estado del grupo en el momento en que fue tomado y el usuario puede volver a él más tarde o descartarlo.
Un caso de uso genérico es un administrador/a que está a punto de realizar un conjunto de acciones destructivas para ZFS como parte de un procedimiento crítico. Ella toma un punto de control del grupo antes de realizar las acciones, luego retrocede a él si uno de ellos falla o pone el grupo en un estado inesperado.
# zpool status -x
all pools are healthy
# zpool list
NAME SIZE ALLOC FREE CKPOINT EXPANDSZ FRAG CAP DEDUP HEALTH ALTROOT backups 37G 6.63G 30.4G - - 0% 17% 1.00x ONLINE - zroot 109G 20.7G 88.3G - - 4% 18% 1.00x ONLINE -Crear checkpoint
# zpool checkpoint zroot
# zpool list
NAME SIZE ALLOC FREE CKPOINT EXPANDSZ FRAG CAP DEDUP HEALTH ALTROOT backups 37G 6.63G 30.4G - - 0% 17% 1.00x ONLINE - zroot 109G 20.7G 88.3G 240K - 4% 18% 1.00x ONLINE -
En el menú del cargador (loader menu) tiene una nueva entrada acompañada de un número, en este caso 8. Si pulsa la tecla 8 se revertirán los cambios y Rewind ZFS checkpoint pasará de Rewind ZFS checkpoint: NO a Rewind ZFS checkpoint: YES.
Todo estará tal y como estaba en el momento de la creación del checkpoint.
Listar zpool
# zpool list
Ahora no aparece el checkpoint, ya se ha utilizado. De lo contrario si no pulsa el número correspondiente en la mencionada entrada el checkpoint aún permanece.
Zpool Checkpoint funciones:
Para crear un checkpoint:
# zpool checkpoint <pool>
Retrocede el estado al punto de control y elimina el checkpoint:
# zpool import -- rewind-to-checkpoint <pool>
Eliminar el checkpoint:
# zpool checkpoint --discard <pool> o zpool checkpoint -d <pool>
FreeBSD es genial!.
No hay comentarios:
Publicar un comentario