En Mejorando.la hacemos hincapié en la protección de datos y en caso de desastre recuperarnos sin que el usuario se vea afectado. Nuestras bases de datos se encuentran distribuidas en distintas tecnologías para aprovechar las bondades de cada una, y una de esas tecnologías es MongoDB, y con la ayuda del Dev Team se creó un script para facilitar todo el tema de respaldos en MongoDB con protección de cada dump.
Todo ser vivo en el planeta tierra que guarde información importante en cualquier medio, debe tener la precaución de respaldar dicha información por si ocurre algún desastre; en el caso de medios electrónicos la mayoría de la información se almacena en grandes bases de datos relacionales o no relacionales.
Respalda tus bases de datos con Zoort
Zoort nace como un proyecto interno de la empresa, que ahora es de código abierto y nos ayuda a realizar respaldos de todas las bases de datos existentes en MongoDB, y ustedes dirán, "Pero MongoDB tiene ya herramientas que hacen eso", y sí, es cierto, pero requeríamos funcionalidades mas avanzadas como compresión, cifrado y subida del DUMP a AWS, y se ha logrado con Zoort.
Características de Zoort
- Opción de respaldo para una sola base de datos o todas las bases de datos contenidas en el servidor.
- Cifrado y descifrado por defecto con tecnología AES para archivos comprimido.
- Subida a S3 de Amazon Web Services. (Opcional)
- Elimina respaldos antiguos, por defecto 2 semanas atrás en S3.
- Configurable a través de un archivo JSON.
Instalación y configuración de Zoort
Por los momentos Zoort solo funciona bien en sistemas *NIX like, como Linux, Unix, Mac, etc. Si desean compatibilidad para Windows pueden realizar el aporte al repositorio en GitHub https://github.com/Mejorandola/zoort.
Para instalar Zoort se puede hacer a través de PIP con:
Código :
# pip install zoort
o descargando el código fuente y ejecutando:
Código :
# python setup.py install.
La configuración se hace a través de un archivo JSON que se encuentra en /etc/zoort/config.json y tiene un contenido como el siguiente:
Código :
{ "admin_user": "<admin_user>", "admin_password": "<admin_password>", "password_file": "<password_file>", "aws": { "aws_access_key": "<aws_access_key>", "aws_secret_key": "<aws_secret_key>", "aws_bucket_name": "<aws_bucket_name>", "aws_key_name": "<aws_key_name>" } }
Los parámetros de configuración son los siguientes:
- admin_user: Usuario administrador de MongoDB
- admin_password: Contraseña del adminsitrador de MongoDB
- password_file: Contraseña utilizada para el cifrado de los archivos. (Importante que sea bastante fuerte)
- aws: En el caso que deseen usar S3 deben especificar la llave de acceso, la llave secreta, el nombre del bucket en S3 y el prefijo que desea tener en S3 para los archivos.
Cómo usar Zoort?
El uso de Zoort es sencillo, todo se hace a través de consola y el nombre del comando es zoort y es acompañado con algunas opciones, como backup, backup_all o decrypt .
Código :
zoort Usage: zoort backup <database> [--path=<path>] [--upload_s3=<s3>] [--encrypt=<encrypt>] zoort backup <database> <user> <password> [--path=<path>] [--upload_s3=<s3>] [--encrypt=<encrypt>] zoort backup <database> <user> <password> <host> [--path=<path>] [--upload_s3=<s3>] [--encrypt=<encrypt>] zoort backup_all <user_admin> <password_admin> [--path=<path>] [--upload_s3=<s3>] [--encrypt=<encrypt>] zoort decrypt <path> zoort --version zoort --help Options: -h --help Show this screen. --version Show version. --path=<path> Path target for the dump. [default: pwd]. --upload_s3=<s3> Upload to AWS S3 storage. [default: N]. --encrypt=<encrypt> Encrypt output file dump before upload to S3. [default: Y]
Para ver la ayuda en línea de comandos debe ejecutar:
Código :
$ zoort --help
De esta manera verán todos los casos posibles para el uso de Zoort.
Licencia
Zoort posee licencia MIT, por lo tanto puede ser usado, compartido y modificado sin ningún problema. Pueden realizar aportes importantes si así lo desean al repositorio principal de Github. o en PyPI.
¿Sabes SQL? ¿No-SQL? Aprende MySQL, PostgreSQL, MongoDB, Redis y más con el Curso Profesional de Bases de Datos que empieza el martes, en vivo.
Por SinSemilla el 20 de Febrero de 2014
Gracias!
Por Josue el 21 de Febrero de 2014
Por Lisandro el 21 de Febrero de 2014
Por yograterol el 21 de Febrero de 2014
Lisandro-blog :
Se hizo ya la corrección, muchas gracias.
Por yograterol el 21 de Febrero de 2014
Josue-blog :
Perfecto, puedes aportar al proyecto
Por el 27 de Febrero de 2014