Skip to main content

Backup MongoDB databases using AWS Lambda functions

Project description

mongo-lambda-backup

Build Status

Backup MongoDB databases using AWS Lambda functions

The code in this repo allows running the backup of a MongoDB database to S3 on AWS Lambda by emulating a mongodump using pymongo and boto3. By default the function will create a JSON file for every collection in the database and save them in a /backup folder.

Install from pip

pip install mongo_lambda_backup

Configuration

All configuration values are passed using environment variables.

The following values are required:

  • MONGO_URI: The URI including authentication credentials of the MongoDB host to be backed up.
  • BUCKET_NAME: The name of the S3 bucket to store the backup files in.

The following values are optional:

  • MONGO_URI_IS_ENCRYPTED: In case this environment variable is set, the handler assumes the URI (which potentially contains credentials) needs to be encrypted using the KMS key associated with the Lambda.
  • MONGO_DATABASE: The name of the database to back up. In case this is not set, it will be read from the path of MONGO_URI.
  • BUCKET_FOLDER: The folder in the bucket to store the JSON files in. Defaults to backups.
  • COLLECTION_BLACKLIST: A comma-separated collection of collection names to skip when performing the back up (e.g. for skipping indices).

License

MIT © Frederik Ring

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mongo_lambda_backup-0.2.0.tar.gz (2.8 kB view details)

Uploaded Source

Built Distribution

mongo_lambda_backup-0.2.0-py3-none-any.whl (3.4 kB view details)

Uploaded Python 3

File details

Details for the file mongo_lambda_backup-0.2.0.tar.gz.

File metadata

  • Download URL: mongo_lambda_backup-0.2.0.tar.gz
  • Upload date:
  • Size: 2.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.20.1 setuptools/39.2.0 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/3.6.7

File hashes

Hashes for mongo_lambda_backup-0.2.0.tar.gz
Algorithm Hash digest
SHA256 e3f3ec69410b2f2558ef54f10edeb79ef5d118a69c75d892bc26e53579c9336a
MD5 69904b8d2de7189abbf91085630af6a8
BLAKE2b-256 1aad476803cedaa98f2782b5144cf4af5a838301162bae0cab06d12550dd0f82

See more details on using hashes here.

File details

Details for the file mongo_lambda_backup-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: mongo_lambda_backup-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 3.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.20.1 setuptools/39.2.0 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/3.6.7

File hashes

Hashes for mongo_lambda_backup-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1caf9020f8dd67d80adeaf5a092d732fe2cfec5fce832d83e34a26b0a061a693
MD5 b3f6dfa24c84d6cef12f0dfec55cb9c2
BLAKE2b-256 d86e223a3ee9cb8d464f4c12656b0a22130ad9be636ece63238e06dc0ca5870d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page