Recovery¶
En esta página se explicarán las tres casuísticas relativas a recoveries que pueden darse, desde la 'más' probable hasta la 'menos'. En los tres casos se harán uso de las políticas de copias de seguridad DLM definidas en la página de backup.
Recursos compartidos¶
En este apartado simularé que un usuario ha eliminado un archivo importante llamado Nomimas 2023.pdf
en un recurso compartido llamado rrhh
. El proceso general consistirá en:
- Comprobaremos la existencia del recurso y posteriormente lo eliminaremos.
- Crearemos un volumen EBS de la última snapshot disponible.
- Montaremos el volumen en una ubicación temporal.
- Restauraremos el archivo eliminado.
- Comprobaremos que el usuario vuelve a tener el archivo y que éste es accesible.
- Desmontamos y eliminamos el volumen.
Para simular la pérdida del documento importante, simplemente me conectaré con el usuario, comprobaré la existencia del documento y lo eliminaré.
-
Con el usuario comprobamos la existencia del documento en el recurso compartido:
-
Eliminamos el recurso:
Con el desastre simulado, procederemos a su recuperación.
-
Desde
EC2 -> Elastic Block Store -> Snapshots -> Create volume from snapshot
seleccionamos la última snapshot y creamos un volumen: -
Configuramos el volumen temporal:
Warning
Deberá crearse en la misma zona de disponibilidad.
-
Verificamos que el volumen haya sido creado con éxito y que esté disponible:
-
Asociamos el volumen a la instancia, para ello, vamos a
Actions -> Attach volume
: -
Nos conectamos vía SSH al servidor y verificamos que el sistema operativo detecta el nuevo volumen:
En mi entorno, el volumen ha sido montado como
nvme3n1p1
: -
Creamos un directorio temporal donde montaremos el nuevo disco:
-
Montamos el volumen:
-
Buscamos el documento en el recurso compartido
rrhh
en el directorio donde hemos montado el disco temporal:Ejemplo en mi servidor:
-
Una vez identificado el archivo, procedemos a su restauración:
Warning
Es importante que usemos la opción
-p
para preservar los permisos del archivo, de lo contrario, el usuario no podrá acceder a el. -
Desde el usuario, comprobaremos que el archivo fue recuperado y que es accesible:
-
Una vez hayamos confirmado la restauración del fichero, procedemos a desmontar el disco y eliminar el directorio temporal creado:
-
Desvinculamos el volumen EBS de la instancia, para ello, vamos a
Actions -> Detach volume
: -
Finalmente, eliminamos el volumen EBS desde
Actions -> Delete volume
:
Correos¶
El objetivo de este apartado es simular que un usuario llamado maria
a eliminado un email llamado Presupuesto 2023
con un adjunto. El proceso general es muy similar al anterior, que consiste de forma general en:
- Comprobaremos la existencia del email y posteriormente lo eliminaremos.
- Crearemos un volumen EBS de la última snapshot disponible.
- Montaremos el volumen en una ubicación temporal.
- Restauraremos el email eliminado.
- Comprobaremos que el usuario vuelve a tener acceso al email.
- Desmontamos y eliminamos el volumen.
Para simular la pérdida de un email importante, usaré el webmail para verificar el correo y posteriormente, lo eliminaré.
Ahora que tenemos simulado el desastre, procederemos a realizar las acciones necesarias para recuperar el email.
-
Desde
EC2 -> Elastic Block Store -> Snapshots -> Create volume from snapshot
seleccionamos la última snapshot y creamos un volumen: -
Configuramos el volumen temporal:
Warning
Deberá crearse en la misma zona de disponibilidad.
-
Verificamos que el volumen haya sido creado con éxito y que esté disponible:
-
Asociamos el volumen a la instancia, para ello, vamos a
Actions -> Attach volume
: -
Nos conectamos vía SSH al servidor y verificamos que el sistema operativo detecta el nuevo volumen:
En mi entorno, el volumen ha sido montado como
nvme3n1p1
: -
Creamos un directorio temporal donde montaremos el nuevo disco:
-
Montamos el volumen:
-
Buscamos el correo del usuario
maria
en el directorio donde hemos montado el disco temporal:Ejemplo en mi servidor:
-
Una vez identificado el correo, procedemos a su restauración:
Warning
Es importante que se use la opción
-p
para preservar los permisos del archivo, de lo contrario, el usuario no podrá acceder a el. Además, también será importante que la restauración se haga en el mismo directorio, que en mi caso es:icecrown.es/maria/Maildir/cur/
. -
Desde la cuenta del usuario de correo, verificamos que lo hemos recuperado junto con su adjunto.
-
Una vez restaurado con éxito el email, procedemos a desmontar el disco y eliminar el directorio temporal creado:
-
Desvinculamos el volumen EBS de la instancia, para ello, vamos a
Actions -> Detach volume
: -
Finalmente, eliminamos el volumen EBS desde
Actions -> Delete volume
:
Sistema¶
Para este apartado simularé que el sistema ha quedado totalmente inoperativo debido a que un administrador de sistemas ha eliminado accidentalmente el paquete zentyal-core
. El proceso general consiste en:
- Provocaremos el desastre.
- Crearemos un volumen EBS de la última snapshot disponible.
- Reemplazaremos el volumen de la instancia.
- Comprobaremos que el servidor vuelve a estar operativo.
- Eliminamos el volumen original.
Para simular el desastre, lo que haré será eliminar el paquete zentyal-core
.
-
Nos logeamos en el servidor a través de SSH y comprobamos el estado de los paquetes de Zentyal:
El resultado obtenido en mi caso:
-
Eliminamos el paquete
zentyal-core
para causar la inestabilidad: -
Finalmente, confirmamos que los módulos se han desinstalado, dejando el servidor ha quedado inoperativo:
Con el desastre correctamente implementado, procederemos a restaurarlo a través de la última snapshot disponible.
-
Desde
EC2 -> Elastic Block Store -> Snapshots -> Create volume from snapshot
seleccionamos la última snapshot y creamos un volumen: -
Configuramos el volumen:
Warning
Deberá crearse en la misma zona de disponibilidad.
-
Verificamos que el volumen haya sido creado con éxito y que esté disponible:
-
Paramos la instancia EC2, para ello, vamos a
EC2 -> Instances -> Instance state
: -
Una vez parada, obtenemos el punto de montaje del volumen del sistema desde
EC2 -> Elastic Block Store -> Volumes
(opción Attached instances): -
Desvinculamos el EBS del sistema desde
Actions -> Detach volume
: -
Asociamos el volumen creado en el paso 2 desde
Actions -> Detach volume
:Warning
El punto de montaje (Device name) deberá ser el mismo que el obtenido en el paso 5.
-
Iniciamos la instancia desde
EC2 -> Instances -> Instance state
: -
Nos conectamos a la instancia y verificamos que volvemos a tener los paquetes correctamente instalados:
El resultado obtenido en mi caso:
-
Eliminamos el volumen EBS inestable, para ello vamos a
EC2 -> Elastic Block Store -> Volumes -> Delete volume
: -
Finalmente, modificamos la etiqueta
Name
del nuevo volumen desdeTags -> Manage tags
:
Creado: 12 de abril de 2023