1. Packages
  2. AWS
  3. API Docs
  4. dms
  5. ReplicationInstance
AWS v6.60.0 published on Tuesday, Nov 19, 2024 by Pulumi

aws.dms.ReplicationInstance

Explore with Pulumi AI

aws logo
AWS v6.60.0 published on Tuesday, Nov 19, 2024 by Pulumi

    Provides a DMS (Data Migration Service) replication instance resource. DMS replication instances can be created, updated, deleted, and imported.

    Example Usage

    Create required roles and then create a DMS instance, setting the depends_on to the required role policy attachments.

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    // Database Migration Service requires the below IAM Roles to be created before
    // replication instances can be created. See the DMS Documentation for
    // additional information: https://docs.aws.amazon.com/dms/latest/userguide/security-iam.html#CHAP_Security.APIRole
    //  * dms-vpc-role
    //  * dms-cloudwatch-logs-role
    //  * dms-access-for-endpoint
    const dmsAssumeRole = aws.iam.getPolicyDocument({
        statements: [{
            actions: ["sts:AssumeRole"],
            principals: [{
                identifiers: ["dms.amazonaws.com"],
                type: "Service",
            }],
        }],
    });
    const dms_access_for_endpoint = new aws.iam.Role("dms-access-for-endpoint", {
        assumeRolePolicy: dmsAssumeRole.then(dmsAssumeRole => dmsAssumeRole.json),
        name: "dms-access-for-endpoint",
    });
    const dms_access_for_endpoint_AmazonDMSRedshiftS3Role = new aws.iam.RolePolicyAttachment("dms-access-for-endpoint-AmazonDMSRedshiftS3Role", {
        policyArn: "arn:aws:iam::aws:policy/service-role/AmazonDMSRedshiftS3Role",
        role: dms_access_for_endpoint.name,
    });
    const dms_cloudwatch_logs_role = new aws.iam.Role("dms-cloudwatch-logs-role", {
        assumeRolePolicy: dmsAssumeRole.then(dmsAssumeRole => dmsAssumeRole.json),
        name: "dms-cloudwatch-logs-role",
    });
    const dms_cloudwatch_logs_role_AmazonDMSCloudWatchLogsRole = new aws.iam.RolePolicyAttachment("dms-cloudwatch-logs-role-AmazonDMSCloudWatchLogsRole", {
        policyArn: "arn:aws:iam::aws:policy/service-role/AmazonDMSCloudWatchLogsRole",
        role: dms_cloudwatch_logs_role.name,
    });
    const dms_vpc_role = new aws.iam.Role("dms-vpc-role", {
        assumeRolePolicy: dmsAssumeRole.then(dmsAssumeRole => dmsAssumeRole.json),
        name: "dms-vpc-role",
    });
    const dms_vpc_role_AmazonDMSVPCManagementRole = new aws.iam.RolePolicyAttachment("dms-vpc-role-AmazonDMSVPCManagementRole", {
        policyArn: "arn:aws:iam::aws:policy/service-role/AmazonDMSVPCManagementRole",
        role: dms_vpc_role.name,
    });
    // Create a new replication instance
    const test = new aws.dms.ReplicationInstance("test", {
        allocatedStorage: 20,
        applyImmediately: true,
        autoMinorVersionUpgrade: true,
        availabilityZone: "us-west-2c",
        engineVersion: "3.1.4",
        kmsKeyArn: "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012",
        multiAz: false,
        preferredMaintenanceWindow: "sun:10:30-sun:14:30",
        publiclyAccessible: true,
        replicationInstanceClass: "dms.t2.micro",
        replicationInstanceId: "test-dms-replication-instance-tf",
        replicationSubnetGroupId: test_dms_replication_subnet_group_tf.id,
        tags: {
            Name: "test",
        },
        vpcSecurityGroupIds: ["sg-12345678"],
    }, {
        dependsOn: [
            dms_access_for_endpoint_AmazonDMSRedshiftS3Role,
            dms_cloudwatch_logs_role_AmazonDMSCloudWatchLogsRole,
            dms_vpc_role_AmazonDMSVPCManagementRole,
        ],
    });
    
    import pulumi
    import pulumi_aws as aws
    
    # Database Migration Service requires the below IAM Roles to be created before
    # replication instances can be created. See the DMS Documentation for
    # additional information: https://docs.aws.amazon.com/dms/latest/userguide/security-iam.html#CHAP_Security.APIRole
    #  * dms-vpc-role
    #  * dms-cloudwatch-logs-role
    #  * dms-access-for-endpoint
    dms_assume_role = aws.iam.get_policy_document(statements=[{
        "actions": ["sts:AssumeRole"],
        "principals": [{
            "identifiers": ["dms.amazonaws.com"],
            "type": "Service",
        }],
    }])
    dms_access_for_endpoint = aws.iam.Role("dms-access-for-endpoint",
        assume_role_policy=dms_assume_role.json,
        name="dms-access-for-endpoint")
    dms_access_for_endpoint__amazon_dms_redshift_s3_role = aws.iam.RolePolicyAttachment("dms-access-for-endpoint-AmazonDMSRedshiftS3Role",
        policy_arn="arn:aws:iam::aws:policy/service-role/AmazonDMSRedshiftS3Role",
        role=dms_access_for_endpoint.name)
    dms_cloudwatch_logs_role = aws.iam.Role("dms-cloudwatch-logs-role",
        assume_role_policy=dms_assume_role.json,
        name="dms-cloudwatch-logs-role")
    dms_cloudwatch_logs_role__amazon_dms_cloud_watch_logs_role = aws.iam.RolePolicyAttachment("dms-cloudwatch-logs-role-AmazonDMSCloudWatchLogsRole",
        policy_arn="arn:aws:iam::aws:policy/service-role/AmazonDMSCloudWatchLogsRole",
        role=dms_cloudwatch_logs_role.name)
    dms_vpc_role = aws.iam.Role("dms-vpc-role",
        assume_role_policy=dms_assume_role.json,
        name="dms-vpc-role")
    dms_vpc_role__amazon_dmsvpc_management_role = aws.iam.RolePolicyAttachment("dms-vpc-role-AmazonDMSVPCManagementRole",
        policy_arn="arn:aws:iam::aws:policy/service-role/AmazonDMSVPCManagementRole",
        role=dms_vpc_role.name)
    # Create a new replication instance
    test = aws.dms.ReplicationInstance("test",
        allocated_storage=20,
        apply_immediately=True,
        auto_minor_version_upgrade=True,
        availability_zone="us-west-2c",
        engine_version="3.1.4",
        kms_key_arn="arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012",
        multi_az=False,
        preferred_maintenance_window="sun:10:30-sun:14:30",
        publicly_accessible=True,
        replication_instance_class="dms.t2.micro",
        replication_instance_id="test-dms-replication-instance-tf",
        replication_subnet_group_id=test_dms_replication_subnet_group_tf["id"],
        tags={
            "Name": "test",
        },
        vpc_security_group_ids=["sg-12345678"],
        opts = pulumi.ResourceOptions(depends_on=[
                dms_access_for_endpoint__amazon_dms_redshift_s3_role,
                dms_cloudwatch_logs_role__amazon_dms_cloud_watch_logs_role,
                dms_vpc_role__amazon_dmsvpc_management_role,
            ]))
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/dms"
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/iam"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// Database Migration Service requires the below IAM Roles to be created before
    		// replication instances can be created. See the DMS Documentation for
    		// additional information: https://docs.aws.amazon.com/dms/latest/userguide/security-iam.html#CHAP_Security.APIRole
    		//   - dms-vpc-role
    		//   - dms-cloudwatch-logs-role
    		//   - dms-access-for-endpoint
    		dmsAssumeRole, err := iam.GetPolicyDocument(ctx, &iam.GetPolicyDocumentArgs{
    			Statements: []iam.GetPolicyDocumentStatement{
    				{
    					Actions: []string{
    						"sts:AssumeRole",
    					},
    					Principals: []iam.GetPolicyDocumentStatementPrincipal{
    						{
    							Identifiers: []string{
    								"dms.amazonaws.com",
    							},
    							Type: "Service",
    						},
    					},
    				},
    			},
    		}, nil)
    		if err != nil {
    			return err
    		}
    		_, err = iam.NewRole(ctx, "dms-access-for-endpoint", &iam.RoleArgs{
    			AssumeRolePolicy: pulumi.String(dmsAssumeRole.Json),
    			Name:             pulumi.String("dms-access-for-endpoint"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = iam.NewRolePolicyAttachment(ctx, "dms-access-for-endpoint-AmazonDMSRedshiftS3Role", &iam.RolePolicyAttachmentArgs{
    			PolicyArn: pulumi.String("arn:aws:iam::aws:policy/service-role/AmazonDMSRedshiftS3Role"),
    			Role:      dms_access_for_endpoint.Name,
    		})
    		if err != nil {
    			return err
    		}
    		_, err = iam.NewRole(ctx, "dms-cloudwatch-logs-role", &iam.RoleArgs{
    			AssumeRolePolicy: pulumi.String(dmsAssumeRole.Json),
    			Name:             pulumi.String("dms-cloudwatch-logs-role"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = iam.NewRolePolicyAttachment(ctx, "dms-cloudwatch-logs-role-AmazonDMSCloudWatchLogsRole", &iam.RolePolicyAttachmentArgs{
    			PolicyArn: pulumi.String("arn:aws:iam::aws:policy/service-role/AmazonDMSCloudWatchLogsRole"),
    			Role:      dms_cloudwatch_logs_role.Name,
    		})
    		if err != nil {
    			return err
    		}
    		_, err = iam.NewRole(ctx, "dms-vpc-role", &iam.RoleArgs{
    			AssumeRolePolicy: pulumi.String(dmsAssumeRole.Json),
    			Name:             pulumi.String("dms-vpc-role"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = iam.NewRolePolicyAttachment(ctx, "dms-vpc-role-AmazonDMSVPCManagementRole", &iam.RolePolicyAttachmentArgs{
    			PolicyArn: pulumi.String("arn:aws:iam::aws:policy/service-role/AmazonDMSVPCManagementRole"),
    			Role:      dms_vpc_role.Name,
    		})
    		if err != nil {
    			return err
    		}
    		// Create a new replication instance
    		_, err = dms.NewReplicationInstance(ctx, "test", &dms.ReplicationInstanceArgs{
    			AllocatedStorage:           pulumi.Int(20),
    			ApplyImmediately:           pulumi.Bool(true),
    			AutoMinorVersionUpgrade:    pulumi.Bool(true),
    			AvailabilityZone:           pulumi.String("us-west-2c"),
    			EngineVersion:              pulumi.String("3.1.4"),
    			KmsKeyArn:                  pulumi.String("arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012"),
    			MultiAz:                    pulumi.Bool(false),
    			PreferredMaintenanceWindow: pulumi.String("sun:10:30-sun:14:30"),
    			PubliclyAccessible:         pulumi.Bool(true),
    			ReplicationInstanceClass:   pulumi.String("dms.t2.micro"),
    			ReplicationInstanceId:      pulumi.String("test-dms-replication-instance-tf"),
    			ReplicationSubnetGroupId:   pulumi.Any(test_dms_replication_subnet_group_tf.Id),
    			Tags: pulumi.StringMap{
    				"Name": pulumi.String("test"),
    			},
    			VpcSecurityGroupIds: pulumi.StringArray{
    				pulumi.String("sg-12345678"),
    			},
    		}, pulumi.DependsOn([]pulumi.Resource{
    			dms_access_for_endpoint_AmazonDMSRedshiftS3Role,
    			dms_cloudwatch_logs_role_AmazonDMSCloudWatchLogsRole,
    			dms_vpc_role_AmazonDMSVPCManagementRole,
    		}))
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        // Database Migration Service requires the below IAM Roles to be created before
        // replication instances can be created. See the DMS Documentation for
        // additional information: https://docs.aws.amazon.com/dms/latest/userguide/security-iam.html#CHAP_Security.APIRole
        //  * dms-vpc-role
        //  * dms-cloudwatch-logs-role
        //  * dms-access-for-endpoint
        var dmsAssumeRole = Aws.Iam.GetPolicyDocument.Invoke(new()
        {
            Statements = new[]
            {
                new Aws.Iam.Inputs.GetPolicyDocumentStatementInputArgs
                {
                    Actions = new[]
                    {
                        "sts:AssumeRole",
                    },
                    Principals = new[]
                    {
                        new Aws.Iam.Inputs.GetPolicyDocumentStatementPrincipalInputArgs
                        {
                            Identifiers = new[]
                            {
                                "dms.amazonaws.com",
                            },
                            Type = "Service",
                        },
                    },
                },
            },
        });
    
        var dms_access_for_endpoint = new Aws.Iam.Role("dms-access-for-endpoint", new()
        {
            AssumeRolePolicy = dmsAssumeRole.Apply(getPolicyDocumentResult => getPolicyDocumentResult.Json),
            Name = "dms-access-for-endpoint",
        });
    
        var dms_access_for_endpoint_AmazonDMSRedshiftS3Role = new Aws.Iam.RolePolicyAttachment("dms-access-for-endpoint-AmazonDMSRedshiftS3Role", new()
        {
            PolicyArn = "arn:aws:iam::aws:policy/service-role/AmazonDMSRedshiftS3Role",
            Role = dms_access_for_endpoint.Name,
        });
    
        var dms_cloudwatch_logs_role = new Aws.Iam.Role("dms-cloudwatch-logs-role", new()
        {
            AssumeRolePolicy = dmsAssumeRole.Apply(getPolicyDocumentResult => getPolicyDocumentResult.Json),
            Name = "dms-cloudwatch-logs-role",
        });
    
        var dms_cloudwatch_logs_role_AmazonDMSCloudWatchLogsRole = new Aws.Iam.RolePolicyAttachment("dms-cloudwatch-logs-role-AmazonDMSCloudWatchLogsRole", new()
        {
            PolicyArn = "arn:aws:iam::aws:policy/service-role/AmazonDMSCloudWatchLogsRole",
            Role = dms_cloudwatch_logs_role.Name,
        });
    
        var dms_vpc_role = new Aws.Iam.Role("dms-vpc-role", new()
        {
            AssumeRolePolicy = dmsAssumeRole.Apply(getPolicyDocumentResult => getPolicyDocumentResult.Json),
            Name = "dms-vpc-role",
        });
    
        var dms_vpc_role_AmazonDMSVPCManagementRole = new Aws.Iam.RolePolicyAttachment("dms-vpc-role-AmazonDMSVPCManagementRole", new()
        {
            PolicyArn = "arn:aws:iam::aws:policy/service-role/AmazonDMSVPCManagementRole",
            Role = dms_vpc_role.Name,
        });
    
        // Create a new replication instance
        var test = new Aws.Dms.ReplicationInstance("test", new()
        {
            AllocatedStorage = 20,
            ApplyImmediately = true,
            AutoMinorVersionUpgrade = true,
            AvailabilityZone = "us-west-2c",
            EngineVersion = "3.1.4",
            KmsKeyArn = "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012",
            MultiAz = false,
            PreferredMaintenanceWindow = "sun:10:30-sun:14:30",
            PubliclyAccessible = true,
            ReplicationInstanceClass = "dms.t2.micro",
            ReplicationInstanceId = "test-dms-replication-instance-tf",
            ReplicationSubnetGroupId = test_dms_replication_subnet_group_tf.Id,
            Tags = 
            {
                { "Name", "test" },
            },
            VpcSecurityGroupIds = new[]
            {
                "sg-12345678",
            },
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                dms_access_for_endpoint_AmazonDMSRedshiftS3Role,
                dms_cloudwatch_logs_role_AmazonDMSCloudWatchLogsRole,
                dms_vpc_role_AmazonDMSVPCManagementRole,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.iam.IamFunctions;
    import com.pulumi.aws.iam.inputs.GetPolicyDocumentArgs;
    import com.pulumi.aws.iam.Role;
    import com.pulumi.aws.iam.RoleArgs;
    import com.pulumi.aws.iam.RolePolicyAttachment;
    import com.pulumi.aws.iam.RolePolicyAttachmentArgs;
    import com.pulumi.aws.dms.ReplicationInstance;
    import com.pulumi.aws.dms.ReplicationInstanceArgs;
    import com.pulumi.resources.CustomResourceOptions;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            // Database Migration Service requires the below IAM Roles to be created before
            // replication instances can be created. See the DMS Documentation for
            // additional information: https://docs.aws.amazon.com/dms/latest/userguide/security-iam.html#CHAP_Security.APIRole
            //  * dms-vpc-role
            //  * dms-cloudwatch-logs-role
            //  * dms-access-for-endpoint
            final var dmsAssumeRole = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder()
                .statements(GetPolicyDocumentStatementArgs.builder()
                    .actions("sts:AssumeRole")
                    .principals(GetPolicyDocumentStatementPrincipalArgs.builder()
                        .identifiers("dms.amazonaws.com")
                        .type("Service")
                        .build())
                    .build())
                .build());
    
            var dms_access_for_endpoint = new Role("dms-access-for-endpoint", RoleArgs.builder()
                .assumeRolePolicy(dmsAssumeRole.applyValue(getPolicyDocumentResult -> getPolicyDocumentResult.json()))
                .name("dms-access-for-endpoint")
                .build());
    
            var dms_access_for_endpoint_AmazonDMSRedshiftS3Role = new RolePolicyAttachment("dms-access-for-endpoint-AmazonDMSRedshiftS3Role", RolePolicyAttachmentArgs.builder()
                .policyArn("arn:aws:iam::aws:policy/service-role/AmazonDMSRedshiftS3Role")
                .role(dms_access_for_endpoint.name())
                .build());
    
            var dms_cloudwatch_logs_role = new Role("dms-cloudwatch-logs-role", RoleArgs.builder()
                .assumeRolePolicy(dmsAssumeRole.applyValue(getPolicyDocumentResult -> getPolicyDocumentResult.json()))
                .name("dms-cloudwatch-logs-role")
                .build());
    
            var dms_cloudwatch_logs_role_AmazonDMSCloudWatchLogsRole = new RolePolicyAttachment("dms-cloudwatch-logs-role-AmazonDMSCloudWatchLogsRole", RolePolicyAttachmentArgs.builder()
                .policyArn("arn:aws:iam::aws:policy/service-role/AmazonDMSCloudWatchLogsRole")
                .role(dms_cloudwatch_logs_role.name())
                .build());
    
            var dms_vpc_role = new Role("dms-vpc-role", RoleArgs.builder()
                .assumeRolePolicy(dmsAssumeRole.applyValue(getPolicyDocumentResult -> getPolicyDocumentResult.json()))
                .name("dms-vpc-role")
                .build());
    
            var dms_vpc_role_AmazonDMSVPCManagementRole = new RolePolicyAttachment("dms-vpc-role-AmazonDMSVPCManagementRole", RolePolicyAttachmentArgs.builder()
                .policyArn("arn:aws:iam::aws:policy/service-role/AmazonDMSVPCManagementRole")
                .role(dms_vpc_role.name())
                .build());
    
            // Create a new replication instance
            var test = new ReplicationInstance("test", ReplicationInstanceArgs.builder()
                .allocatedStorage(20)
                .applyImmediately(true)
                .autoMinorVersionUpgrade(true)
                .availabilityZone("us-west-2c")
                .engineVersion("3.1.4")
                .kmsKeyArn("arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012")
                .multiAz(false)
                .preferredMaintenanceWindow("sun:10:30-sun:14:30")
                .publiclyAccessible(true)
                .replicationInstanceClass("dms.t2.micro")
                .replicationInstanceId("test-dms-replication-instance-tf")
                .replicationSubnetGroupId(test_dms_replication_subnet_group_tf.id())
                .tags(Map.of("Name", "test"))
                .vpcSecurityGroupIds("sg-12345678")
                .build(), CustomResourceOptions.builder()
                    .dependsOn(                
                        dms_access_for_endpoint_AmazonDMSRedshiftS3Role,
                        dms_cloudwatch_logs_role_AmazonDMSCloudWatchLogsRole,
                        dms_vpc_role_AmazonDMSVPCManagementRole)
                    .build());
    
        }
    }
    
    resources:
      dms-access-for-endpoint:
        type: aws:iam:Role
        properties:
          assumeRolePolicy: ${dmsAssumeRole.json}
          name: dms-access-for-endpoint
      dms-access-for-endpoint-AmazonDMSRedshiftS3Role:
        type: aws:iam:RolePolicyAttachment
        properties:
          policyArn: arn:aws:iam::aws:policy/service-role/AmazonDMSRedshiftS3Role
          role: ${["dms-access-for-endpoint"].name}
      dms-cloudwatch-logs-role:
        type: aws:iam:Role
        properties:
          assumeRolePolicy: ${dmsAssumeRole.json}
          name: dms-cloudwatch-logs-role
      dms-cloudwatch-logs-role-AmazonDMSCloudWatchLogsRole:
        type: aws:iam:RolePolicyAttachment
        properties:
          policyArn: arn:aws:iam::aws:policy/service-role/AmazonDMSCloudWatchLogsRole
          role: ${["dms-cloudwatch-logs-role"].name}
      dms-vpc-role:
        type: aws:iam:Role
        properties:
          assumeRolePolicy: ${dmsAssumeRole.json}
          name: dms-vpc-role
      dms-vpc-role-AmazonDMSVPCManagementRole:
        type: aws:iam:RolePolicyAttachment
        properties:
          policyArn: arn:aws:iam::aws:policy/service-role/AmazonDMSVPCManagementRole
          role: ${["dms-vpc-role"].name}
      # Create a new replication instance
      test:
        type: aws:dms:ReplicationInstance
        properties:
          allocatedStorage: 20
          applyImmediately: true
          autoMinorVersionUpgrade: true
          availabilityZone: us-west-2c
          engineVersion: 3.1.4
          kmsKeyArn: arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
          multiAz: false
          preferredMaintenanceWindow: sun:10:30-sun:14:30
          publiclyAccessible: true
          replicationInstanceClass: dms.t2.micro
          replicationInstanceId: test-dms-replication-instance-tf
          replicationSubnetGroupId: ${["test-dms-replication-subnet-group-tf"].id}
          tags:
            Name: test
          vpcSecurityGroupIds:
            - sg-12345678
        options:
          dependson:
            - ${["dms-access-for-endpoint-AmazonDMSRedshiftS3Role"]}
            - ${["dms-cloudwatch-logs-role-AmazonDMSCloudWatchLogsRole"]}
            - ${["dms-vpc-role-AmazonDMSVPCManagementRole"]}
    variables:
      # Database Migration Service requires the below IAM Roles to be created before
      # replication instances can be created. See the DMS Documentation for
      # additional information: https://docs.aws.amazon.com/dms/latest/userguide/security-iam.html#CHAP_Security.APIRole
      #  * dms-vpc-role
      #  * dms-cloudwatch-logs-role
      #  * dms-access-for-endpoint
      dmsAssumeRole:
        fn::invoke:
          Function: aws:iam:getPolicyDocument
          Arguments:
            statements:
              - actions:
                  - sts:AssumeRole
                principals:
                  - identifiers:
                      - dms.amazonaws.com
                    type: Service
    

    Create ReplicationInstance Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new ReplicationInstance(name: string, args: ReplicationInstanceArgs, opts?: CustomResourceOptions);
    @overload
    def ReplicationInstance(resource_name: str,
                            args: ReplicationInstanceArgs,
                            opts: Optional[ResourceOptions] = None)
    
    @overload
    def ReplicationInstance(resource_name: str,
                            opts: Optional[ResourceOptions] = None,
                            replication_instance_class: Optional[str] = None,
                            replication_instance_id: Optional[str] = None,
                            availability_zone: Optional[str] = None,
                            preferred_maintenance_window: Optional[str] = None,
                            allocated_storage: Optional[int] = None,
                            engine_version: Optional[str] = None,
                            kms_key_arn: Optional[str] = None,
                            multi_az: Optional[bool] = None,
                            network_type: Optional[str] = None,
                            auto_minor_version_upgrade: Optional[bool] = None,
                            publicly_accessible: Optional[bool] = None,
                            apply_immediately: Optional[bool] = None,
                            allow_major_version_upgrade: Optional[bool] = None,
                            replication_subnet_group_id: Optional[str] = None,
                            tags: Optional[Mapping[str, str]] = None,
                            vpc_security_group_ids: Optional[Sequence[str]] = None)
    func NewReplicationInstance(ctx *Context, name string, args ReplicationInstanceArgs, opts ...ResourceOption) (*ReplicationInstance, error)
    public ReplicationInstance(string name, ReplicationInstanceArgs args, CustomResourceOptions? opts = null)
    public ReplicationInstance(String name, ReplicationInstanceArgs args)
    public ReplicationInstance(String name, ReplicationInstanceArgs args, CustomResourceOptions options)
    
    type: aws:dms:ReplicationInstance
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args ReplicationInstanceArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args ReplicationInstanceArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args ReplicationInstanceArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ReplicationInstanceArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ReplicationInstanceArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var replicationInstanceResource = new Aws.Dms.ReplicationInstance("replicationInstanceResource", new()
    {
        ReplicationInstanceClass = "string",
        ReplicationInstanceId = "string",
        AvailabilityZone = "string",
        PreferredMaintenanceWindow = "string",
        AllocatedStorage = 0,
        EngineVersion = "string",
        KmsKeyArn = "string",
        MultiAz = false,
        NetworkType = "string",
        AutoMinorVersionUpgrade = false,
        PubliclyAccessible = false,
        ApplyImmediately = false,
        AllowMajorVersionUpgrade = false,
        ReplicationSubnetGroupId = "string",
        Tags = 
        {
            { "string", "string" },
        },
        VpcSecurityGroupIds = new[]
        {
            "string",
        },
    });
    
    example, err := dms.NewReplicationInstance(ctx, "replicationInstanceResource", &dms.ReplicationInstanceArgs{
    	ReplicationInstanceClass:   pulumi.String("string"),
    	ReplicationInstanceId:      pulumi.String("string"),
    	AvailabilityZone:           pulumi.String("string"),
    	PreferredMaintenanceWindow: pulumi.String("string"),
    	AllocatedStorage:           pulumi.Int(0),
    	EngineVersion:              pulumi.String("string"),
    	KmsKeyArn:                  pulumi.String("string"),
    	MultiAz:                    pulumi.Bool(false),
    	NetworkType:                pulumi.String("string"),
    	AutoMinorVersionUpgrade:    pulumi.Bool(false),
    	PubliclyAccessible:         pulumi.Bool(false),
    	ApplyImmediately:           pulumi.Bool(false),
    	AllowMajorVersionUpgrade:   pulumi.Bool(false),
    	ReplicationSubnetGroupId:   pulumi.String("string"),
    	Tags: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	VpcSecurityGroupIds: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    })
    
    var replicationInstanceResource = new ReplicationInstance("replicationInstanceResource", ReplicationInstanceArgs.builder()
        .replicationInstanceClass("string")
        .replicationInstanceId("string")
        .availabilityZone("string")
        .preferredMaintenanceWindow("string")
        .allocatedStorage(0)
        .engineVersion("string")
        .kmsKeyArn("string")
        .multiAz(false)
        .networkType("string")
        .autoMinorVersionUpgrade(false)
        .publiclyAccessible(false)
        .applyImmediately(false)
        .allowMajorVersionUpgrade(false)
        .replicationSubnetGroupId("string")
        .tags(Map.of("string", "string"))
        .vpcSecurityGroupIds("string")
        .build());
    
    replication_instance_resource = aws.dms.ReplicationInstance("replicationInstanceResource",
        replication_instance_class="string",
        replication_instance_id="string",
        availability_zone="string",
        preferred_maintenance_window="string",
        allocated_storage=0,
        engine_version="string",
        kms_key_arn="string",
        multi_az=False,
        network_type="string",
        auto_minor_version_upgrade=False,
        publicly_accessible=False,
        apply_immediately=False,
        allow_major_version_upgrade=False,
        replication_subnet_group_id="string",
        tags={
            "string": "string",
        },
        vpc_security_group_ids=["string"])
    
    const replicationInstanceResource = new aws.dms.ReplicationInstance("replicationInstanceResource", {
        replicationInstanceClass: "string",
        replicationInstanceId: "string",
        availabilityZone: "string",
        preferredMaintenanceWindow: "string",
        allocatedStorage: 0,
        engineVersion: "string",
        kmsKeyArn: "string",
        multiAz: false,
        networkType: "string",
        autoMinorVersionUpgrade: false,
        publiclyAccessible: false,
        applyImmediately: false,
        allowMajorVersionUpgrade: false,
        replicationSubnetGroupId: "string",
        tags: {
            string: "string",
        },
        vpcSecurityGroupIds: ["string"],
    });
    
    type: aws:dms:ReplicationInstance
    properties:
        allocatedStorage: 0
        allowMajorVersionUpgrade: false
        applyImmediately: false
        autoMinorVersionUpgrade: false
        availabilityZone: string
        engineVersion: string
        kmsKeyArn: string
        multiAz: false
        networkType: string
        preferredMaintenanceWindow: string
        publiclyAccessible: false
        replicationInstanceClass: string
        replicationInstanceId: string
        replicationSubnetGroupId: string
        tags:
            string: string
        vpcSecurityGroupIds:
            - string
    

    ReplicationInstance Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The ReplicationInstance resource accepts the following input properties:

    ReplicationInstanceClass string
    The compute and memory capacity of the replication instance as specified by the replication instance class. See AWS DMS User Guide for available instance sizes and advice on which one to choose.
    ReplicationInstanceId string
    The replication instance identifier. This parameter is stored as a lowercase string.

    • Must contain from 1 to 63 alphanumeric characters or hyphens.
    • First character must be a letter.
    • Cannot end with a hyphen
    • Cannot contain two consecutive hyphens.
    AllocatedStorage int
    The amount of storage (in gigabytes) to be initially allocated for the replication instance.
    AllowMajorVersionUpgrade bool
    Indicates that major version upgrades are allowed.
    ApplyImmediately bool
    Indicates whether the changes should be applied immediately or during the next maintenance window. Only used when updating an existing resource.
    AutoMinorVersionUpgrade bool
    Indicates that minor engine upgrades will be applied automatically to the replication instance during the maintenance window.
    AvailabilityZone string
    The EC2 Availability Zone that the replication instance will be created in.
    EngineVersion string
    The engine version number of the replication instance.
    KmsKeyArn string
    The Amazon Resource Name (ARN) for the KMS key that will be used to encrypt the connection parameters. If you do not specify a value for kms_key_arn, then AWS DMS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.
    MultiAz bool
    Specifies if the replication instance is a multi-az deployment. You cannot set the availability_zone parameter if the multi_az parameter is set to true.
    NetworkType string
    The type of IP address protocol used by a replication instance. Valid values: IPV4, DUAL.
    PreferredMaintenanceWindow string
    The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

    • Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week.
    • Format: ddd:hh24:mi-ddd:hh24:mi
    • Valid Days: mon, tue, wed, thu, fri, sat, sun
    • Constraints: Minimum 30-minute window.
    PubliclyAccessible bool
    Specifies the accessibility options for the replication instance. A value of true represents an instance with a public IP address. A value of false represents an instance with a private IP address.
    ReplicationSubnetGroupId string
    A subnet group to associate with the replication instance.
    Tags Dictionary<string, string>
    A map of tags to assign to the resource. .If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    VpcSecurityGroupIds List<string>
    A list of VPC security group IDs to be used with the replication instance. The VPC security groups must work with the VPC containing the replication instance.
    ReplicationInstanceClass string
    The compute and memory capacity of the replication instance as specified by the replication instance class. See AWS DMS User Guide for available instance sizes and advice on which one to choose.
    ReplicationInstanceId string
    The replication instance identifier. This parameter is stored as a lowercase string.

    • Must contain from 1 to 63 alphanumeric characters or hyphens.
    • First character must be a letter.
    • Cannot end with a hyphen
    • Cannot contain two consecutive hyphens.
    AllocatedStorage int
    The amount of storage (in gigabytes) to be initially allocated for the replication instance.
    AllowMajorVersionUpgrade bool
    Indicates that major version upgrades are allowed.
    ApplyImmediately bool
    Indicates whether the changes should be applied immediately or during the next maintenance window. Only used when updating an existing resource.
    AutoMinorVersionUpgrade bool
    Indicates that minor engine upgrades will be applied automatically to the replication instance during the maintenance window.
    AvailabilityZone string
    The EC2 Availability Zone that the replication instance will be created in.
    EngineVersion string
    The engine version number of the replication instance.
    KmsKeyArn string
    The Amazon Resource Name (ARN) for the KMS key that will be used to encrypt the connection parameters. If you do not specify a value for kms_key_arn, then AWS DMS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.
    MultiAz bool
    Specifies if the replication instance is a multi-az deployment. You cannot set the availability_zone parameter if the multi_az parameter is set to true.
    NetworkType string
    The type of IP address protocol used by a replication instance. Valid values: IPV4, DUAL.
    PreferredMaintenanceWindow string
    The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

    • Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week.
    • Format: ddd:hh24:mi-ddd:hh24:mi
    • Valid Days: mon, tue, wed, thu, fri, sat, sun
    • Constraints: Minimum 30-minute window.
    PubliclyAccessible bool
    Specifies the accessibility options for the replication instance. A value of true represents an instance with a public IP address. A value of false represents an instance with a private IP address.
    ReplicationSubnetGroupId string
    A subnet group to associate with the replication instance.
    Tags map[string]string
    A map of tags to assign to the resource. .If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    VpcSecurityGroupIds []string
    A list of VPC security group IDs to be used with the replication instance. The VPC security groups must work with the VPC containing the replication instance.
    replicationInstanceClass String
    The compute and memory capacity of the replication instance as specified by the replication instance class. See AWS DMS User Guide for available instance sizes and advice on which one to choose.
    replicationInstanceId String
    The replication instance identifier. This parameter is stored as a lowercase string.

    • Must contain from 1 to 63 alphanumeric characters or hyphens.
    • First character must be a letter.
    • Cannot end with a hyphen
    • Cannot contain two consecutive hyphens.
    allocatedStorage Integer
    The amount of storage (in gigabytes) to be initially allocated for the replication instance.
    allowMajorVersionUpgrade Boolean
    Indicates that major version upgrades are allowed.
    applyImmediately Boolean
    Indicates whether the changes should be applied immediately or during the next maintenance window. Only used when updating an existing resource.
    autoMinorVersionUpgrade Boolean
    Indicates that minor engine upgrades will be applied automatically to the replication instance during the maintenance window.
    availabilityZone String
    The EC2 Availability Zone that the replication instance will be created in.
    engineVersion String
    The engine version number of the replication instance.
    kmsKeyArn String
    The Amazon Resource Name (ARN) for the KMS key that will be used to encrypt the connection parameters. If you do not specify a value for kms_key_arn, then AWS DMS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.
    multiAz Boolean
    Specifies if the replication instance is a multi-az deployment. You cannot set the availability_zone parameter if the multi_az parameter is set to true.
    networkType String
    The type of IP address protocol used by a replication instance. Valid values: IPV4, DUAL.
    preferredMaintenanceWindow String
    The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

    • Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week.
    • Format: ddd:hh24:mi-ddd:hh24:mi
    • Valid Days: mon, tue, wed, thu, fri, sat, sun
    • Constraints: Minimum 30-minute window.
    publiclyAccessible Boolean
    Specifies the accessibility options for the replication instance. A value of true represents an instance with a public IP address. A value of false represents an instance with a private IP address.
    replicationSubnetGroupId String
    A subnet group to associate with the replication instance.
    tags Map<String,String>
    A map of tags to assign to the resource. .If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    vpcSecurityGroupIds List<String>
    A list of VPC security group IDs to be used with the replication instance. The VPC security groups must work with the VPC containing the replication instance.
    replicationInstanceClass string
    The compute and memory capacity of the replication instance as specified by the replication instance class. See AWS DMS User Guide for available instance sizes and advice on which one to choose.
    replicationInstanceId string
    The replication instance identifier. This parameter is stored as a lowercase string.

    • Must contain from 1 to 63 alphanumeric characters or hyphens.
    • First character must be a letter.
    • Cannot end with a hyphen
    • Cannot contain two consecutive hyphens.
    allocatedStorage number
    The amount of storage (in gigabytes) to be initially allocated for the replication instance.
    allowMajorVersionUpgrade boolean
    Indicates that major version upgrades are allowed.
    applyImmediately boolean
    Indicates whether the changes should be applied immediately or during the next maintenance window. Only used when updating an existing resource.
    autoMinorVersionUpgrade boolean
    Indicates that minor engine upgrades will be applied automatically to the replication instance during the maintenance window.
    availabilityZone string
    The EC2 Availability Zone that the replication instance will be created in.
    engineVersion string
    The engine version number of the replication instance.
    kmsKeyArn string
    The Amazon Resource Name (ARN) for the KMS key that will be used to encrypt the connection parameters. If you do not specify a value for kms_key_arn, then AWS DMS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.
    multiAz boolean
    Specifies if the replication instance is a multi-az deployment. You cannot set the availability_zone parameter if the multi_az parameter is set to true.
    networkType string
    The type of IP address protocol used by a replication instance. Valid values: IPV4, DUAL.
    preferredMaintenanceWindow string
    The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

    • Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week.
    • Format: ddd:hh24:mi-ddd:hh24:mi
    • Valid Days: mon, tue, wed, thu, fri, sat, sun
    • Constraints: Minimum 30-minute window.
    publiclyAccessible boolean
    Specifies the accessibility options for the replication instance. A value of true represents an instance with a public IP address. A value of false represents an instance with a private IP address.
    replicationSubnetGroupId string
    A subnet group to associate with the replication instance.
    tags {[key: string]: string}
    A map of tags to assign to the resource. .If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    vpcSecurityGroupIds string[]
    A list of VPC security group IDs to be used with the replication instance. The VPC security groups must work with the VPC containing the replication instance.
    replication_instance_class str
    The compute and memory capacity of the replication instance as specified by the replication instance class. See AWS DMS User Guide for available instance sizes and advice on which one to choose.
    replication_instance_id str
    The replication instance identifier. This parameter is stored as a lowercase string.

    • Must contain from 1 to 63 alphanumeric characters or hyphens.
    • First character must be a letter.
    • Cannot end with a hyphen
    • Cannot contain two consecutive hyphens.
    allocated_storage int
    The amount of storage (in gigabytes) to be initially allocated for the replication instance.
    allow_major_version_upgrade bool
    Indicates that major version upgrades are allowed.
    apply_immediately bool
    Indicates whether the changes should be applied immediately or during the next maintenance window. Only used when updating an existing resource.
    auto_minor_version_upgrade bool
    Indicates that minor engine upgrades will be applied automatically to the replication instance during the maintenance window.
    availability_zone str
    The EC2 Availability Zone that the replication instance will be created in.
    engine_version str
    The engine version number of the replication instance.
    kms_key_arn str
    The Amazon Resource Name (ARN) for the KMS key that will be used to encrypt the connection parameters. If you do not specify a value for kms_key_arn, then AWS DMS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.
    multi_az bool
    Specifies if the replication instance is a multi-az deployment. You cannot set the availability_zone parameter if the multi_az parameter is set to true.
    network_type str
    The type of IP address protocol used by a replication instance. Valid values: IPV4, DUAL.
    preferred_maintenance_window str
    The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

    • Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week.
    • Format: ddd:hh24:mi-ddd:hh24:mi
    • Valid Days: mon, tue, wed, thu, fri, sat, sun
    • Constraints: Minimum 30-minute window.
    publicly_accessible bool
    Specifies the accessibility options for the replication instance. A value of true represents an instance with a public IP address. A value of false represents an instance with a private IP address.
    replication_subnet_group_id str
    A subnet group to associate with the replication instance.
    tags Mapping[str, str]
    A map of tags to assign to the resource. .If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    vpc_security_group_ids Sequence[str]
    A list of VPC security group IDs to be used with the replication instance. The VPC security groups must work with the VPC containing the replication instance.
    replicationInstanceClass String
    The compute and memory capacity of the replication instance as specified by the replication instance class. See AWS DMS User Guide for available instance sizes and advice on which one to choose.
    replicationInstanceId String
    The replication instance identifier. This parameter is stored as a lowercase string.

    • Must contain from 1 to 63 alphanumeric characters or hyphens.
    • First character must be a letter.
    • Cannot end with a hyphen
    • Cannot contain two consecutive hyphens.
    allocatedStorage Number
    The amount of storage (in gigabytes) to be initially allocated for the replication instance.
    allowMajorVersionUpgrade Boolean
    Indicates that major version upgrades are allowed.
    applyImmediately Boolean
    Indicates whether the changes should be applied immediately or during the next maintenance window. Only used when updating an existing resource.
    autoMinorVersionUpgrade Boolean
    Indicates that minor engine upgrades will be applied automatically to the replication instance during the maintenance window.
    availabilityZone String
    The EC2 Availability Zone that the replication instance will be created in.
    engineVersion String
    The engine version number of the replication instance.
    kmsKeyArn String
    The Amazon Resource Name (ARN) for the KMS key that will be used to encrypt the connection parameters. If you do not specify a value for kms_key_arn, then AWS DMS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.
    multiAz Boolean
    Specifies if the replication instance is a multi-az deployment. You cannot set the availability_zone parameter if the multi_az parameter is set to true.
    networkType String
    The type of IP address protocol used by a replication instance. Valid values: IPV4, DUAL.
    preferredMaintenanceWindow String
    The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

    • Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week.
    • Format: ddd:hh24:mi-ddd:hh24:mi
    • Valid Days: mon, tue, wed, thu, fri, sat, sun
    • Constraints: Minimum 30-minute window.
    publiclyAccessible Boolean
    Specifies the accessibility options for the replication instance. A value of true represents an instance with a public IP address. A value of false represents an instance with a private IP address.
    replicationSubnetGroupId String
    A subnet group to associate with the replication instance.
    tags Map<String>
    A map of tags to assign to the resource. .If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    vpcSecurityGroupIds List<String>
    A list of VPC security group IDs to be used with the replication instance. The VPC security groups must work with the VPC containing the replication instance.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the ReplicationInstance resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    ReplicationInstanceArn string
    The Amazon Resource Name (ARN) of the replication instance.
    ReplicationInstancePrivateIps List<string>
    A list of the private IP addresses of the replication instance.
    ReplicationInstancePublicIps List<string>
    A list of the public IP addresses of the replication instance.
    TagsAll Dictionary<string, string>
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    Id string
    The provider-assigned unique ID for this managed resource.
    ReplicationInstanceArn string
    The Amazon Resource Name (ARN) of the replication instance.
    ReplicationInstancePrivateIps []string
    A list of the private IP addresses of the replication instance.
    ReplicationInstancePublicIps []string
    A list of the public IP addresses of the replication instance.
    TagsAll map[string]string
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    id String
    The provider-assigned unique ID for this managed resource.
    replicationInstanceArn String
    The Amazon Resource Name (ARN) of the replication instance.
    replicationInstancePrivateIps List<String>
    A list of the private IP addresses of the replication instance.
    replicationInstancePublicIps List<String>
    A list of the public IP addresses of the replication instance.
    tagsAll Map<String,String>
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    id string
    The provider-assigned unique ID for this managed resource.
    replicationInstanceArn string
    The Amazon Resource Name (ARN) of the replication instance.
    replicationInstancePrivateIps string[]
    A list of the private IP addresses of the replication instance.
    replicationInstancePublicIps string[]
    A list of the public IP addresses of the replication instance.
    tagsAll {[key: string]: string}
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    id str
    The provider-assigned unique ID for this managed resource.
    replication_instance_arn str
    The Amazon Resource Name (ARN) of the replication instance.
    replication_instance_private_ips Sequence[str]
    A list of the private IP addresses of the replication instance.
    replication_instance_public_ips Sequence[str]
    A list of the public IP addresses of the replication instance.
    tags_all Mapping[str, str]
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    id String
    The provider-assigned unique ID for this managed resource.
    replicationInstanceArn String
    The Amazon Resource Name (ARN) of the replication instance.
    replicationInstancePrivateIps List<String>
    A list of the private IP addresses of the replication instance.
    replicationInstancePublicIps List<String>
    A list of the public IP addresses of the replication instance.
    tagsAll Map<String>
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    Look up Existing ReplicationInstance Resource

    Get an existing ReplicationInstance resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: ReplicationInstanceState, opts?: CustomResourceOptions): ReplicationInstance
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            allocated_storage: Optional[int] = None,
            allow_major_version_upgrade: Optional[bool] = None,
            apply_immediately: Optional[bool] = None,
            auto_minor_version_upgrade: Optional[bool] = None,
            availability_zone: Optional[str] = None,
            engine_version: Optional[str] = None,
            kms_key_arn: Optional[str] = None,
            multi_az: Optional[bool] = None,
            network_type: Optional[str] = None,
            preferred_maintenance_window: Optional[str] = None,
            publicly_accessible: Optional[bool] = None,
            replication_instance_arn: Optional[str] = None,
            replication_instance_class: Optional[str] = None,
            replication_instance_id: Optional[str] = None,
            replication_instance_private_ips: Optional[Sequence[str]] = None,
            replication_instance_public_ips: Optional[Sequence[str]] = None,
            replication_subnet_group_id: Optional[str] = None,
            tags: Optional[Mapping[str, str]] = None,
            tags_all: Optional[Mapping[str, str]] = None,
            vpc_security_group_ids: Optional[Sequence[str]] = None) -> ReplicationInstance
    func GetReplicationInstance(ctx *Context, name string, id IDInput, state *ReplicationInstanceState, opts ...ResourceOption) (*ReplicationInstance, error)
    public static ReplicationInstance Get(string name, Input<string> id, ReplicationInstanceState? state, CustomResourceOptions? opts = null)
    public static ReplicationInstance get(String name, Output<String> id, ReplicationInstanceState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    AllocatedStorage int
    The amount of storage (in gigabytes) to be initially allocated for the replication instance.
    AllowMajorVersionUpgrade bool
    Indicates that major version upgrades are allowed.
    ApplyImmediately bool
    Indicates whether the changes should be applied immediately or during the next maintenance window. Only used when updating an existing resource.
    AutoMinorVersionUpgrade bool
    Indicates that minor engine upgrades will be applied automatically to the replication instance during the maintenance window.
    AvailabilityZone string
    The EC2 Availability Zone that the replication instance will be created in.
    EngineVersion string
    The engine version number of the replication instance.
    KmsKeyArn string
    The Amazon Resource Name (ARN) for the KMS key that will be used to encrypt the connection parameters. If you do not specify a value for kms_key_arn, then AWS DMS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.
    MultiAz bool
    Specifies if the replication instance is a multi-az deployment. You cannot set the availability_zone parameter if the multi_az parameter is set to true.
    NetworkType string
    The type of IP address protocol used by a replication instance. Valid values: IPV4, DUAL.
    PreferredMaintenanceWindow string
    The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

    • Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week.
    • Format: ddd:hh24:mi-ddd:hh24:mi
    • Valid Days: mon, tue, wed, thu, fri, sat, sun
    • Constraints: Minimum 30-minute window.
    PubliclyAccessible bool
    Specifies the accessibility options for the replication instance. A value of true represents an instance with a public IP address. A value of false represents an instance with a private IP address.
    ReplicationInstanceArn string
    The Amazon Resource Name (ARN) of the replication instance.
    ReplicationInstanceClass string
    The compute and memory capacity of the replication instance as specified by the replication instance class. See AWS DMS User Guide for available instance sizes and advice on which one to choose.
    ReplicationInstanceId string
    The replication instance identifier. This parameter is stored as a lowercase string.

    • Must contain from 1 to 63 alphanumeric characters or hyphens.
    • First character must be a letter.
    • Cannot end with a hyphen
    • Cannot contain two consecutive hyphens.
    ReplicationInstancePrivateIps List<string>
    A list of the private IP addresses of the replication instance.
    ReplicationInstancePublicIps List<string>
    A list of the public IP addresses of the replication instance.
    ReplicationSubnetGroupId string
    A subnet group to associate with the replication instance.
    Tags Dictionary<string, string>
    A map of tags to assign to the resource. .If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    TagsAll Dictionary<string, string>
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    VpcSecurityGroupIds List<string>
    A list of VPC security group IDs to be used with the replication instance. The VPC security groups must work with the VPC containing the replication instance.
    AllocatedStorage int
    The amount of storage (in gigabytes) to be initially allocated for the replication instance.
    AllowMajorVersionUpgrade bool
    Indicates that major version upgrades are allowed.
    ApplyImmediately bool
    Indicates whether the changes should be applied immediately or during the next maintenance window. Only used when updating an existing resource.
    AutoMinorVersionUpgrade bool
    Indicates that minor engine upgrades will be applied automatically to the replication instance during the maintenance window.
    AvailabilityZone string
    The EC2 Availability Zone that the replication instance will be created in.
    EngineVersion string
    The engine version number of the replication instance.
    KmsKeyArn string
    The Amazon Resource Name (ARN) for the KMS key that will be used to encrypt the connection parameters. If you do not specify a value for kms_key_arn, then AWS DMS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.
    MultiAz bool
    Specifies if the replication instance is a multi-az deployment. You cannot set the availability_zone parameter if the multi_az parameter is set to true.
    NetworkType string
    The type of IP address protocol used by a replication instance. Valid values: IPV4, DUAL.
    PreferredMaintenanceWindow string
    The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

    • Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week.
    • Format: ddd:hh24:mi-ddd:hh24:mi
    • Valid Days: mon, tue, wed, thu, fri, sat, sun
    • Constraints: Minimum 30-minute window.
    PubliclyAccessible bool
    Specifies the accessibility options for the replication instance. A value of true represents an instance with a public IP address. A value of false represents an instance with a private IP address.
    ReplicationInstanceArn string
    The Amazon Resource Name (ARN) of the replication instance.
    ReplicationInstanceClass string
    The compute and memory capacity of the replication instance as specified by the replication instance class. See AWS DMS User Guide for available instance sizes and advice on which one to choose.
    ReplicationInstanceId string
    The replication instance identifier. This parameter is stored as a lowercase string.

    • Must contain from 1 to 63 alphanumeric characters or hyphens.
    • First character must be a letter.
    • Cannot end with a hyphen
    • Cannot contain two consecutive hyphens.
    ReplicationInstancePrivateIps []string
    A list of the private IP addresses of the replication instance.
    ReplicationInstancePublicIps []string
    A list of the public IP addresses of the replication instance.
    ReplicationSubnetGroupId string
    A subnet group to associate with the replication instance.
    Tags map[string]string
    A map of tags to assign to the resource. .If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    TagsAll map[string]string
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    VpcSecurityGroupIds []string
    A list of VPC security group IDs to be used with the replication instance. The VPC security groups must work with the VPC containing the replication instance.
    allocatedStorage Integer
    The amount of storage (in gigabytes) to be initially allocated for the replication instance.
    allowMajorVersionUpgrade Boolean
    Indicates that major version upgrades are allowed.
    applyImmediately Boolean
    Indicates whether the changes should be applied immediately or during the next maintenance window. Only used when updating an existing resource.
    autoMinorVersionUpgrade Boolean
    Indicates that minor engine upgrades will be applied automatically to the replication instance during the maintenance window.
    availabilityZone String
    The EC2 Availability Zone that the replication instance will be created in.
    engineVersion String
    The engine version number of the replication instance.
    kmsKeyArn String
    The Amazon Resource Name (ARN) for the KMS key that will be used to encrypt the connection parameters. If you do not specify a value for kms_key_arn, then AWS DMS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.
    multiAz Boolean
    Specifies if the replication instance is a multi-az deployment. You cannot set the availability_zone parameter if the multi_az parameter is set to true.
    networkType String
    The type of IP address protocol used by a replication instance. Valid values: IPV4, DUAL.
    preferredMaintenanceWindow String
    The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

    • Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week.
    • Format: ddd:hh24:mi-ddd:hh24:mi
    • Valid Days: mon, tue, wed, thu, fri, sat, sun
    • Constraints: Minimum 30-minute window.
    publiclyAccessible Boolean
    Specifies the accessibility options for the replication instance. A value of true represents an instance with a public IP address. A value of false represents an instance with a private IP address.
    replicationInstanceArn String
    The Amazon Resource Name (ARN) of the replication instance.
    replicationInstanceClass String
    The compute and memory capacity of the replication instance as specified by the replication instance class. See AWS DMS User Guide for available instance sizes and advice on which one to choose.
    replicationInstanceId String
    The replication instance identifier. This parameter is stored as a lowercase string.

    • Must contain from 1 to 63 alphanumeric characters or hyphens.
    • First character must be a letter.
    • Cannot end with a hyphen
    • Cannot contain two consecutive hyphens.
    replicationInstancePrivateIps List<String>
    A list of the private IP addresses of the replication instance.
    replicationInstancePublicIps List<String>
    A list of the public IP addresses of the replication instance.
    replicationSubnetGroupId String
    A subnet group to associate with the replication instance.
    tags Map<String,String>
    A map of tags to assign to the resource. .If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tagsAll Map<String,String>
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    vpcSecurityGroupIds List<String>
    A list of VPC security group IDs to be used with the replication instance. The VPC security groups must work with the VPC containing the replication instance.
    allocatedStorage number
    The amount of storage (in gigabytes) to be initially allocated for the replication instance.
    allowMajorVersionUpgrade boolean
    Indicates that major version upgrades are allowed.
    applyImmediately boolean
    Indicates whether the changes should be applied immediately or during the next maintenance window. Only used when updating an existing resource.
    autoMinorVersionUpgrade boolean
    Indicates that minor engine upgrades will be applied automatically to the replication instance during the maintenance window.
    availabilityZone string
    The EC2 Availability Zone that the replication instance will be created in.
    engineVersion string
    The engine version number of the replication instance.
    kmsKeyArn string
    The Amazon Resource Name (ARN) for the KMS key that will be used to encrypt the connection parameters. If you do not specify a value for kms_key_arn, then AWS DMS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.
    multiAz boolean
    Specifies if the replication instance is a multi-az deployment. You cannot set the availability_zone parameter if the multi_az parameter is set to true.
    networkType string
    The type of IP address protocol used by a replication instance. Valid values: IPV4, DUAL.
    preferredMaintenanceWindow string
    The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

    • Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week.
    • Format: ddd:hh24:mi-ddd:hh24:mi
    • Valid Days: mon, tue, wed, thu, fri, sat, sun
    • Constraints: Minimum 30-minute window.
    publiclyAccessible boolean
    Specifies the accessibility options for the replication instance. A value of true represents an instance with a public IP address. A value of false represents an instance with a private IP address.
    replicationInstanceArn string
    The Amazon Resource Name (ARN) of the replication instance.
    replicationInstanceClass string
    The compute and memory capacity of the replication instance as specified by the replication instance class. See AWS DMS User Guide for available instance sizes and advice on which one to choose.
    replicationInstanceId string
    The replication instance identifier. This parameter is stored as a lowercase string.

    • Must contain from 1 to 63 alphanumeric characters or hyphens.
    • First character must be a letter.
    • Cannot end with a hyphen
    • Cannot contain two consecutive hyphens.
    replicationInstancePrivateIps string[]
    A list of the private IP addresses of the replication instance.
    replicationInstancePublicIps string[]
    A list of the public IP addresses of the replication instance.
    replicationSubnetGroupId string
    A subnet group to associate with the replication instance.
    tags {[key: string]: string}
    A map of tags to assign to the resource. .If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tagsAll {[key: string]: string}
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    vpcSecurityGroupIds string[]
    A list of VPC security group IDs to be used with the replication instance. The VPC security groups must work with the VPC containing the replication instance.
    allocated_storage int
    The amount of storage (in gigabytes) to be initially allocated for the replication instance.
    allow_major_version_upgrade bool
    Indicates that major version upgrades are allowed.
    apply_immediately bool
    Indicates whether the changes should be applied immediately or during the next maintenance window. Only used when updating an existing resource.
    auto_minor_version_upgrade bool
    Indicates that minor engine upgrades will be applied automatically to the replication instance during the maintenance window.
    availability_zone str
    The EC2 Availability Zone that the replication instance will be created in.
    engine_version str
    The engine version number of the replication instance.
    kms_key_arn str
    The Amazon Resource Name (ARN) for the KMS key that will be used to encrypt the connection parameters. If you do not specify a value for kms_key_arn, then AWS DMS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.
    multi_az bool
    Specifies if the replication instance is a multi-az deployment. You cannot set the availability_zone parameter if the multi_az parameter is set to true.
    network_type str
    The type of IP address protocol used by a replication instance. Valid values: IPV4, DUAL.
    preferred_maintenance_window str
    The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

    • Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week.
    • Format: ddd:hh24:mi-ddd:hh24:mi
    • Valid Days: mon, tue, wed, thu, fri, sat, sun
    • Constraints: Minimum 30-minute window.
    publicly_accessible bool
    Specifies the accessibility options for the replication instance. A value of true represents an instance with a public IP address. A value of false represents an instance with a private IP address.
    replication_instance_arn str
    The Amazon Resource Name (ARN) of the replication instance.
    replication_instance_class str
    The compute and memory capacity of the replication instance as specified by the replication instance class. See AWS DMS User Guide for available instance sizes and advice on which one to choose.
    replication_instance_id str
    The replication instance identifier. This parameter is stored as a lowercase string.

    • Must contain from 1 to 63 alphanumeric characters or hyphens.
    • First character must be a letter.
    • Cannot end with a hyphen
    • Cannot contain two consecutive hyphens.
    replication_instance_private_ips Sequence[str]
    A list of the private IP addresses of the replication instance.
    replication_instance_public_ips Sequence[str]
    A list of the public IP addresses of the replication instance.
    replication_subnet_group_id str
    A subnet group to associate with the replication instance.
    tags Mapping[str, str]
    A map of tags to assign to the resource. .If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tags_all Mapping[str, str]
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    vpc_security_group_ids Sequence[str]
    A list of VPC security group IDs to be used with the replication instance. The VPC security groups must work with the VPC containing the replication instance.
    allocatedStorage Number
    The amount of storage (in gigabytes) to be initially allocated for the replication instance.
    allowMajorVersionUpgrade Boolean
    Indicates that major version upgrades are allowed.
    applyImmediately Boolean
    Indicates whether the changes should be applied immediately or during the next maintenance window. Only used when updating an existing resource.
    autoMinorVersionUpgrade Boolean
    Indicates that minor engine upgrades will be applied automatically to the replication instance during the maintenance window.
    availabilityZone String
    The EC2 Availability Zone that the replication instance will be created in.
    engineVersion String
    The engine version number of the replication instance.
    kmsKeyArn String
    The Amazon Resource Name (ARN) for the KMS key that will be used to encrypt the connection parameters. If you do not specify a value for kms_key_arn, then AWS DMS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.
    multiAz Boolean
    Specifies if the replication instance is a multi-az deployment. You cannot set the availability_zone parameter if the multi_az parameter is set to true.
    networkType String
    The type of IP address protocol used by a replication instance. Valid values: IPV4, DUAL.
    preferredMaintenanceWindow String
    The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

    • Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week.
    • Format: ddd:hh24:mi-ddd:hh24:mi
    • Valid Days: mon, tue, wed, thu, fri, sat, sun
    • Constraints: Minimum 30-minute window.
    publiclyAccessible Boolean
    Specifies the accessibility options for the replication instance. A value of true represents an instance with a public IP address. A value of false represents an instance with a private IP address.
    replicationInstanceArn String
    The Amazon Resource Name (ARN) of the replication instance.
    replicationInstanceClass String
    The compute and memory capacity of the replication instance as specified by the replication instance class. See AWS DMS User Guide for available instance sizes and advice on which one to choose.
    replicationInstanceId String
    The replication instance identifier. This parameter is stored as a lowercase string.

    • Must contain from 1 to 63 alphanumeric characters or hyphens.
    • First character must be a letter.
    • Cannot end with a hyphen
    • Cannot contain two consecutive hyphens.
    replicationInstancePrivateIps List<String>
    A list of the private IP addresses of the replication instance.
    replicationInstancePublicIps List<String>
    A list of the public IP addresses of the replication instance.
    replicationSubnetGroupId String
    A subnet group to associate with the replication instance.
    tags Map<String>
    A map of tags to assign to the resource. .If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tagsAll Map<String>
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    vpcSecurityGroupIds List<String>
    A list of VPC security group IDs to be used with the replication instance. The VPC security groups must work with the VPC containing the replication instance.

    Import

    Using pulumi import, import replication instances using the replication_instance_id. For example:

    $ pulumi import aws:dms/replicationInstance:ReplicationInstance test test-dms-replication-instance-tf
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    AWS Classic pulumi/pulumi-aws
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the aws Terraform Provider.
    aws logo
    AWS v6.60.0 published on Tuesday, Nov 19, 2024 by Pulumi