A newer version of this documentation is available.
View Latest (v2.0)

Installation steps

Gluesync NoSQL to NoSQL for AWS S3

Prerequisites

In order to have Gluesync working on your AWS S3 instance you will need to have:

  • an S3 bucket;

  • valid user credentials with permissions: arn:aws:iam::aws:policy/AmazonS3FullAccess;

  • IAM access key obtained through AWS IAM console;

  • IAM secret key obtained through AWS IAM console;

  • name of the region where the buckets belogs to.

Basic configuration example

This module can be customized by using a configuration file, in JSON format. The file name to use must be specified as parameter when launching the app, with the -f or --file tokens. The file should be composed by union of common configuration file (see here Installation steps) and source specific configuration:

{
  ...
  // (source section omitted)
  ...
  "targetHost": "eu-central-1",
  "targetName": "myBucketName",
  "targetUsername": "IAMCredentialAccessKeyID",
  "targetPassword": "IAMCredentialSecret",
  ...

  "awsS3": {
    "entitiesMetadata": {
      "articles": [ "id", "article_name" ]
    },

    "allowObjectsDeletion": false
  },
}

The parameters that refer to a target are the parameters that describe the connection to the AWS S3 bucket.

  • targetHost: the name of the region where your bucket belongs to;

  • targetName: the name of the target bucket as represented inside your AWS S3 console (do not use the arn);

  • targetUsername: IAM Credential access key ID created under your AWS IAM console;

  • targetPassword: IAM Credential secret created under your AWS IAM console.

Other configuration parameters are the following:

AWS S3 specific configurations are listed under the awsS3 property:

  • timeoutSeconds (optional): defaults to 60. Number of seconds to set as timeout for operations involving communication with the destination;

  • allowObjectsDeletion (optional): defaults to true. If set to false tells Gluesync to skip any action that involves data deletion committed into the source database: Gluesync will propagate only events that involve Insert(s) and Update(s).

  • entitiesMetadata (optional): defaults to null. Key-value object that describes the binding of values per each table-fields that you would like to set as metadata values belonging to each stored object in the S3 bucket. Where key is the table (entity) name and as a value a list (array) of strings representing the column names.