Digamos que tengo el control de versiones S3 habilitado para mi bucket: http://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html
Luego, digamos que alguien (por ejemplo, empleado junior) desordena el cubo S3 (elimina algunos archivos accidentalmente, etc.)
¿Cómo puedo restaurar todo el depósito versionado a un punto particular en el tiempo? Creo que esto debería ser posible dada la API de S3, pero prefiero no tener que escribir ese script yo mismo, por miedo a perderme algo (no soy un experto en AWS).
¿Hay una buena solución para este problema? Estoy usando el cubo S3 como una tienda de imágenes para mi aplicación Rails, por lo que algo basado en Ruby que podría usar como una tarea de rastrillo sería ideal.
fuente
Si entiendo la documentación correctamente, cuando haya habilitado el control de versiones, la eliminación del archivo simplemente revierte la versión "más reciente" un número de versión. Sin embargo, esto no le da la capacidad de restaurar un cubo completo. Esto hace que las versiones anteriores en S3 no sean adecuadas para sus necesidades (es decir, recuperación de la eliminación).
Mantenga una copia de seguridad en otro lugar también por si acaso. Stack Overflow tiene una pregunta / respuesta sobre este uso
s3cmd
. Estoy seguro de que podría encontrar un script basado en Ruby en algún lugar o pedir ayuda en ese sitio si lo necesita.fuente
s3cmd
, pero también me gusta tener instantáneas versionadas en S3.delete
inserta un marcador de eliminación y las solicitudes futuras devuelven un 404, no la versión anterior. Para RESTAURAR puede copiar una versión anterior a una nueva versión o puede hacerlodelete
con una versión específica del objeto actual; luego, a los futuros seget
les asigna la segunda versión más reciente. docs.aws.amazon.com/AmazonS3/latest/dev/... para ser justos, el docu alrededor de cubo de versiones tiende a ser impreciso y carente ...Aquí hay un pequeño script php útil que utilicé para restaurar mi bucket de un bucket de respaldo con versiones:
Para volver a subir a un cubo con el control de versiones activado
restaurar la copia de seguridad de los archivos versionados entre estas dos marcas de tiempo
Puede descargar el script PHP aquí: http://boulderapps.co/post/backing-up-and-restoring-s3-to-a-versioned-bucket
fuente