Coder Social home page Coder Social logo

terraform-module-dynamodb-replication's Introduction

Terraform module that manages DynamoDB data migration and ongoing replication

Based on

DynamoDB replication

Pre-requisites

  • Enable dynamoDB streams on the source dynamoDB table
  • Create an IAM role in the target account that has full access to the target dynamoDB table. This role will be assumed by the glue job during the initial migration and the lambda during the ongoing replication.

Post-migration

All resources should be deleted once the dynamoDB replication is no longer required.

  • Perform terraform destroy on this module (or just dereference it from your stack and let terraform tidy the resources up)
  • Disable the source table dynamoDB stream
  • Remove the role created as part of pre-req

Example

Simple example setup can be found in the examples folder

Inputs

Name Description Type Default Required
enabled Indicates if the replication is enabled bool false no
initial_load_sg Security group for the initial load ECS task string n/a yes
initial_load_subnet Subnet for the initial load ECS task string n/a yes
namespace Namespace this resources belong to string n/a yes
source_table_name Source Dynamo DB table name string n/a yes
source_table_stream_arn Source Dynamo DB table stream ARN string n/a yes
stage Deployment stage string n/a yes
stage_type Deployment stage type string n/a yes
tags A map of tags to assign to the resource. map(string) n/a yes
target_account Target AWS Account Number string n/a yes
target_dynamodb_table_name Target DynamoDB Table name string n/a yes
target_region The region for the target DynamoDB table string n/a yes
target_role_arn Target IAM Role name to be assumed by Lambda function and a Glue job string n/a yes

Outputs

No output.

terraform-module-dynamodb-replication's People

Contributors

ljiljanaholden avatar semantic-release-bot avatar

Stargazers

Pushpakant Behera avatar

Watchers

Mark Gibson avatar Daniel Chalk avatar Jon Mort avatar James Cloos avatar  avatar Tom Busby avatar Matthew Hope avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.