AWS DMS Replication Task
This page shows how to write Terraform and CloudFormation for AWS DMS Replication Task and write them securely.
aws_dms_replication_task (Terraform)
The Replication Task in AWS DMS can be configured in Terraform with the resource name aws_dms_replication_task
. The following sections describe 4 examples of how to use the resource and its parameters.
Example Usage from GitHub
resource "aws_dms_replication_task" "task_sample" {
count = var.dms_enabled
migration_type = "full-load"
replication_instance_arn = aws_dms_replication_instance.instance[0].replication_instance_arn
replication_task_id = "sample"
resource "aws_dms_replication_task" "replication_tasks" {
for_each = var.dms_replication_tasks
migration_type = "full-load-and-cdc"
replication_instance_arn = aws_dms_replication_instance.dms-instance.replication_instance_arn
replication_task_id = each.value.name
source_endpoint_arn = aws_dms_endpoint.dms-endpoints[each.key].endpoint_arn
resource "aws_dms_replication_task" "test" {
migration_type = "full-load"
count = 1
replication_instance_arn = aws_dms_replication_instance.replication-instance.replication_instance_arn
replication_task_id = "test-dms-replication-task-tf"
source_endpoint_arn = aws_dms_endpoint.test1[count.index].endpoint_arn
resource "aws_dms_replication_task" "rt-mssql-pg" {
migration_type = "full-load"
replication_instance_arn = aws_dms_replication_instance.replication-instance.replication_instance_arn
replication_task_id = "dms-rt-mssql-pg"
source_endpoint_arn = aws_dms_endpoint.dms-endpoint-source.endpoint_arn
target_endpoint_arn = aws_dms_endpoint.dms-endpoint-target.endpoint_arn
Parameters
-
cdc_start_time
optional - string -
id
optional computed - string -
migration_type
required - string -
replication_instance_arn
required - string -
replication_task_arn
optional computed - string -
replication_task_id
required - string -
replication_task_settings
optional - string -
source_endpoint_arn
required - string -
table_mappings
required - string -
tags
optional - map from string to string -
target_endpoint_arn
required - string
Explanation in Terraform Registry
Provides a DMS (Data Migration Service) replication task resource. DMS replication tasks can be created, updated, deleted, and imported.
AWS::DMS::ReplicationTask (CloudFormation)
The ReplicationTask in DMS can be configured in CloudFormation with the resource name AWS::DMS::ReplicationTask
. The following sections describe 10 examples of how to use the resource and its parameters.
Example Usage from GitHub
Type: AWS::DMS::ReplicationTask
Properties:
ReplicationTaskIdentifier: !Sub ${Username}-replication-task
MigrationType: full-load-and-cdc
ReplicationInstanceArn:
Fn::ImportValue: !Sub '${BaseVpcStackName}:DMSReplicationInstance'
Type: AWS::DMS::ReplicationTask
Properties:
MigrationType: full-load-and-cdc
ReplicationInstanceArn:
Ref: ReplicationInstance
SourceEndpointArn:
Type: AWS::DMS::ReplicationTask
Properties:
MigrationType: cdc
ReplicationInstanceArn: !Ref dmsInstance
ReplicationTaskIdentifier: !Sub ${PJPrefix}-dms-rep-task-001
ReplicationTaskSettings: !Ref DMSTaskSetting
Type: AWS::DMS::ReplicationTask
Properties:
MigrationType: !Ref DmsMigrationType
ReplicationInstanceArn: !ImportValue DmsReplicationInstanceArn
ReplicationTaskIdentifier: !Ref DmsRepTaskName
SourceEndpointArn: !ImportValue DmsSourceEndpointArn
Type: 'AWS::DMS::ReplicationTask'
Metadata:
'AWS::CloudFormation::Designer':
id: b8cec7e0-993b-41a7-b03a-2dcce1f44f71
Metadata:
'AWS::CloudFormation::Designer':
"Type": "AWS::DMS::ReplicationTask",
"Properties": {
"MigrationType": "full-load-and-cdc",
"ReplicationInstanceArn": {
"Ref": "dbserver1instance"
},
"Type": "AWS::DMS::ReplicationTask",
"Properties": {
"MigrationType": "full-load-and-cdc",
"ReplicationInstanceArn": {
"Ref": "dbserver1instance"
},
"Type": "AWS::DMS::ReplicationTask",
"Properties": {
"SourceEndpointArn": {
"Ref": "SourceEndpointARN"
},
"TargetEndpointArn": {
"Type": "AWS::DMS::ReplicationTask",
"Properties": {
"SourceEndpointArn": {
"Ref": "SourceEndpoint"
},
"TargetEndpointArn": {
"aws:cdk:cloudformation:type": "AWS::DMS::ReplicationTask",
"aws:cdk:cloudformation:props": {
"migrationType": "full-load-and-cdc",
"replicationInstanceArn": {
"Ref": "dbserver1instance"
},
Parameters
-
ReplicationTaskSettings
optional - String -
CdcStartPosition
optional - String -
CdcStopPosition
optional - String -
MigrationType
required - String -
TargetEndpointArn
required - String -
ReplicationInstanceArn
required - String -
TaskData
optional - String -
CdcStartTime
optional - Double -
ResourceIdentifier
optional - String -
TableMappings
required - String -
ReplicationTaskIdentifier
optional - String -
SourceEndpointArn
required - String -
Tags
optional - List of Tag
Explanation in CloudFormation Registry
The
AWS::DMS::ReplicationTask
resource creates an AWS DMS replication task.
Frequently asked questions
What is AWS DMS Replication Task?
AWS DMS Replication Task is a resource for DMS of Amazon Web Service. Settings can be wrote in Terraform and CloudFormation.
Where can I find the example code for the AWS DMS Replication Task?
For Terraform, the gmallipeddi/terraform-asudev7, clusterfrak-dynamics/terraform-aws-dms and yaseenzafar/terraform-rdsmigration source code examples are useful. See the Terraform Example section for further details.
For CloudFormation, the alesabater/customer360, jgilbert01/aws-lambda-stream and jimatomo/dms-kinesis-kcl source code examples are useful. See the CloudFormation Example section for further details.