DatabaseMigrationService / Client / modify_replication_instance

modify_replication_instance#

DatabaseMigrationService.Client.modify_replication_instance(**kwargs)#

Modifies the replication instance to apply new settings. You can change one or more parameters by specifying these parameters and the new values in the request.

Some settings are applied during the maintenance window.

See also: AWS API Documentation

Request Syntax

response = client.modify_replication_instance(
    ReplicationInstanceArn='string',
    AllocatedStorage=123,
    ApplyImmediately=True|False,
    ReplicationInstanceClass='string',
    VpcSecurityGroupIds=[
        'string',
    ],
    PreferredMaintenanceWindow='string',
    MultiAZ=True|False,
    EngineVersion='string',
    AllowMajorVersionUpgrade=True|False,
    AutoMinorVersionUpgrade=True|False,
    ReplicationInstanceIdentifier='string',
    NetworkType='string'
)
Parameters:
  • ReplicationInstanceArn (string) –

    [REQUIRED]

    The Amazon Resource Name (ARN) of the replication instance.

  • AllocatedStorage (integer) – The amount of storage (in gigabytes) to be allocated for the replication instance.

  • ApplyImmediately (boolean) – Indicates whether the changes should be applied immediately or during the next maintenance window.

  • ReplicationInstanceClass (string) –

    The compute and memory capacity of the replication instance as defined for the specified replication instance class. For example to specify the instance class dms.c4.large, set this parameter to "dms.c4.large".

    For more information on the settings and capacities for the available replication instance classes, see Selecting the right DMS replication instance for your migration.

  • VpcSecurityGroupIds (list) –

    Specifies the VPC security group to be used with the replication instance. The VPC security group must work with the VPC containing the replication instance.

    • (string) –

  • PreferredMaintenanceWindow (string) –

    The weekly time range (in UTC) during which system maintenance can occur, which might result in an outage. Changing this parameter does not result in an outage, except in the following situation, and the change is asynchronously applied as soon as possible. If moving this window to the current time, there must be at least 30 minutes between the current time and end of the window to ensure pending changes are applied.

    Default: Uses existing setting

    Format: ddd:hh24:mi-ddd:hh24:mi

    Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun

    Constraints: Must be at least 30 minutes

  • MultiAZ (boolean) – Specifies whether the replication instance is a Multi-AZ deployment. You can’t set the AvailabilityZone parameter if the Multi-AZ parameter is set to true.

  • EngineVersion (string) –

    The engine version number of the replication instance.

    When modifying a major engine version of an instance, also set AllowMajorVersionUpgrade to true.

  • AllowMajorVersionUpgrade (boolean) –

    Indicates that major version upgrades are allowed. Changing this parameter does not result in an outage, and the change is asynchronously applied as soon as possible.

    This parameter must be set to true when specifying a value for the EngineVersion parameter that is a different major version than the replication instance’s current version.

  • AutoMinorVersionUpgrade (boolean) –

    A value that indicates that minor version upgrades are applied automatically to the replication instance during the maintenance window. Changing this parameter doesn’t result in an outage, except in the case described following. The change is asynchronously applied as soon as possible.

    An outage does result if these factors apply:

    • This parameter is set to true during the maintenance window.

    • A newer minor version is available.

    • DMS has enabled automatic patching for the given engine version.

  • ReplicationInstanceIdentifier (string) – The replication instance identifier. This parameter is stored as a lowercase string.

  • NetworkType (string) – The type of IP address protocol used by a replication instance, such as IPv4 only or Dual-stack that supports both IPv4 and IPv6 addressing. IPv6 only is not yet supported.

Return type:

dict

Returns:

Response Syntax

{
    'ReplicationInstance': {
        'ReplicationInstanceIdentifier': 'string',
        'ReplicationInstanceClass': 'string',
        'ReplicationInstanceStatus': 'string',
        'AllocatedStorage': 123,
        'InstanceCreateTime': datetime(2015, 1, 1),
        'VpcSecurityGroups': [
            {
                'VpcSecurityGroupId': 'string',
                'Status': 'string'
            },
        ],
        'AvailabilityZone': 'string',
        'ReplicationSubnetGroup': {
            'ReplicationSubnetGroupIdentifier': 'string',
            'ReplicationSubnetGroupDescription': 'string',
            'VpcId': 'string',
            'SubnetGroupStatus': 'string',
            'Subnets': [
                {
                    'SubnetIdentifier': 'string',
                    'SubnetAvailabilityZone': {
                        'Name': 'string'
                    },
                    'SubnetStatus': 'string'
                },
            ],
            'SupportedNetworkTypes': [
                'string',
            ]
        },
        'PreferredMaintenanceWindow': 'string',
        'PendingModifiedValues': {
            'ReplicationInstanceClass': 'string',
            'AllocatedStorage': 123,
            'MultiAZ': True|False,
            'EngineVersion': 'string',
            'NetworkType': 'string'
        },
        'MultiAZ': True|False,
        'EngineVersion': 'string',
        'AutoMinorVersionUpgrade': True|False,
        'KmsKeyId': 'string',
        'ReplicationInstanceArn': 'string',
        'ReplicationInstancePublicIpAddress': 'string',
        'ReplicationInstancePrivateIpAddress': 'string',
        'ReplicationInstancePublicIpAddresses': [
            'string',
        ],
        'ReplicationInstancePrivateIpAddresses': [
            'string',
        ],
        'ReplicationInstanceIpv6Addresses': [
            'string',
        ],
        'PubliclyAccessible': True|False,
        'SecondaryAvailabilityZone': 'string',
        'FreeUntil': datetime(2015, 1, 1),
        'DnsNameServers': 'string',
        'NetworkType': 'string'
    }
}

Response Structure

  • (dict) –

    • ReplicationInstance (dict) –

      The modified replication instance.

      • ReplicationInstanceIdentifier (string) –

        The replication instance identifier is a required parameter. This parameter is stored as a lowercase string.

        Constraints:

        • Must contain 1-63 alphanumeric characters or hyphens.

        • First character must be a letter.

        • Cannot end with a hyphen or contain two consecutive hyphens.

        Example: myrepinstance

      • ReplicationInstanceClass (string) –

        The compute and memory capacity of the replication instance as defined for the specified replication instance class. It is a required parameter, although a default value is pre-selected in the DMS console.

        For more information on the settings and capacities for the available replication instance classes, see Selecting the right DMS replication instance for your migration.

      • ReplicationInstanceStatus (string) –

        The status of the replication instance. The possible return values include:

        • "available"

        • "creating"

        • "deleted"

        • "deleting"

        • "failed"

        • "modifying"

        • "upgrading"

        • "rebooting"

        • "resetting-master-credentials"

        • "storage-full"

        • "incompatible-credentials"

        • "incompatible-network"

        • "maintenance"

      • AllocatedStorage (integer) –

        The amount of storage (in gigabytes) that is allocated for the replication instance.

      • InstanceCreateTime (datetime) –

        The time the replication instance was created.

      • VpcSecurityGroups (list) –

        The VPC security group for the instance.

        • (dict) –

          Describes the status of a security group associated with the virtual private cloud (VPC) hosting your replication and DB instances.

          • VpcSecurityGroupId (string) –

            The VPC security group ID.

          • Status (string) –

            The status of the VPC security group.

      • AvailabilityZone (string) –

        The Availability Zone for the instance.

      • ReplicationSubnetGroup (dict) –

        The subnet group for the replication instance.

        • ReplicationSubnetGroupIdentifier (string) –

          The identifier of the replication instance subnet group.

        • ReplicationSubnetGroupDescription (string) –

          A description for the replication subnet group.

        • VpcId (string) –

          The ID of the VPC.

        • SubnetGroupStatus (string) –

          The status of the subnet group.

        • Subnets (list) –

          The subnets that are in the subnet group.

          • (dict) –

            In response to a request by the DescribeReplicationSubnetGroups operation, this object identifies a subnet by its given Availability Zone, subnet identifier, and status.

            • SubnetIdentifier (string) –

              The subnet identifier.

            • SubnetAvailabilityZone (dict) –

              The Availability Zone of the subnet.

              • Name (string) –

                The name of the Availability Zone.

            • SubnetStatus (string) –

              The status of the subnet.

        • SupportedNetworkTypes (list) –

          The IP addressing protocol supported by the subnet group. This is used by a replication instance with values such as IPv4 only or Dual-stack that supports both IPv4 and IPv6 addressing. IPv6 only is not yet supported.

          • (string) –

      • PreferredMaintenanceWindow (string) –

        The maintenance window times for the replication instance. Any pending upgrades to the replication instance are performed during this time.

      • PendingModifiedValues (dict) –

        The pending modification values.

        • ReplicationInstanceClass (string) –

          The compute and memory capacity of the replication instance as defined for the specified replication instance class.

          For more information on the settings and capacities for the available replication instance classes, see Selecting the right DMS replication instance for your migration.

        • AllocatedStorage (integer) –

          The amount of storage (in gigabytes) that is allocated for the replication instance.

        • MultiAZ (boolean) –

          Specifies whether the replication instance is a Multi-AZ deployment. You can’t set the AvailabilityZone parameter if the Multi-AZ parameter is set to true.

        • EngineVersion (string) –

          The engine version number of the replication instance.

        • NetworkType (string) –

          The type of IP address protocol used by a replication instance, such as IPv4 only or Dual-stack that supports both IPv4 and IPv6 addressing. IPv6 only is not yet supported.

      • MultiAZ (boolean) –

        Specifies whether the replication instance is a Multi-AZ deployment. You can’t set the AvailabilityZone parameter if the Multi-AZ parameter is set to true.

      • EngineVersion (string) –

        The engine version number of the replication instance.

        If an engine version number is not specified when a replication instance is created, the default is the latest engine version available.

        When modifying a major engine version of an instance, also set AllowMajorVersionUpgrade to true.

      • AutoMinorVersionUpgrade (boolean) –

        Boolean value indicating if minor version upgrades will be automatically applied to the instance.

      • KmsKeyId (string) –

        An KMS key identifier that is used to encrypt the data on the replication instance.

        If you don’t specify a value for the KmsKeyId parameter, then DMS uses your default encryption key.

        KMS creates the default encryption key for your Amazon Web Services account. Your Amazon Web Services account has a different default encryption key for each Amazon Web Services Region.

      • ReplicationInstanceArn (string) –

        The Amazon Resource Name (ARN) of the replication instance.

      • ReplicationInstancePublicIpAddress (string) –

        The public IP address of the replication instance.

      • ReplicationInstancePrivateIpAddress (string) –

        The private IP address of the replication instance.

      • ReplicationInstancePublicIpAddresses (list) –

        One or more public IP addresses for the replication instance.

        • (string) –

      • ReplicationInstancePrivateIpAddresses (list) –

        One or more private IP addresses for the replication instance.

        • (string) –

      • ReplicationInstanceIpv6Addresses (list) –

        One or more IPv6 addresses for the replication instance.

        • (string) –

      • 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. The default value is true.

      • SecondaryAvailabilityZone (string) –

        The Availability Zone of the standby replication instance in a Multi-AZ deployment.

      • FreeUntil (datetime) –

        The expiration date of the free replication instance that is part of the Free DMS program.

      • DnsNameServers (string) –

        The DNS name servers supported for the replication instance to access your on-premise source or target database.

      • NetworkType (string) –

        The type of IP address protocol used by a replication instance, such as IPv4 only or Dual-stack that supports both IPv4 and IPv6 addressing. IPv6 only is not yet supported.

Exceptions

Examples

Modifies the replication instance to apply new settings. You can change one or more parameters by specifying these parameters and the new values in the request. Some settings are applied during the maintenance window.

response = client.modify_replication_instance(
    AllocatedStorage=123,
    AllowMajorVersionUpgrade=True,
    ApplyImmediately=True,
    AutoMinorVersionUpgrade=True,
    EngineVersion='1.5.0',
    MultiAZ=True,
    PreferredMaintenanceWindow='sun:06:00-sun:14:00',
    ReplicationInstanceArn='arn:aws:dms:us-east-1:123456789012:rep:6UTDJGBOUS3VI3SUWA66XFJCJQ',
    ReplicationInstanceClass='dms.t2.micro',
    ReplicationInstanceIdentifier='test-rep-1',
    VpcSecurityGroupIds=[
    ],
)

print(response)

Expected Output:

{
    'ReplicationInstance': {
        'AllocatedStorage': 5,
        'AutoMinorVersionUpgrade': True,
        'EngineVersion': '1.5.0',
        'KmsKeyId': 'arn:aws:kms:us-east-1:123456789012:key/4c1731d6-5435-ed4d-be13-d53411a7cfbd',
        'PendingModifiedValues': {
        },
        'PreferredMaintenanceWindow': 'sun:06:00-sun:14:00',
        'PubliclyAccessible': True,
        'ReplicationInstanceArn': 'arn:aws:dms:us-east-1:123456789012:rep:6UTDJGBOUS3VI3SUWA66XFJCJQ',
        'ReplicationInstanceClass': 'dms.t2.micro',
        'ReplicationInstanceIdentifier': 'test-rep-1',
        'ReplicationInstanceStatus': 'available',
        'ReplicationSubnetGroup': {
            'ReplicationSubnetGroupDescription': 'default',
            'ReplicationSubnetGroupIdentifier': 'default',
            'SubnetGroupStatus': 'Complete',
            'Subnets': [
                {
                    'SubnetAvailabilityZone': {
                        'Name': 'us-east-1d',
                    },
                    'SubnetIdentifier': 'subnet-f6dd91af',
                    'SubnetStatus': 'Active',
                },
                {
                    'SubnetAvailabilityZone': {
                        'Name': 'us-east-1b',
                    },
                    'SubnetIdentifier': 'subnet-3605751d',
                    'SubnetStatus': 'Active',
                },
                {
                    'SubnetAvailabilityZone': {
                        'Name': 'us-east-1c',
                    },
                    'SubnetIdentifier': 'subnet-c2daefb5',
                    'SubnetStatus': 'Active',
                },
                {
                    'SubnetAvailabilityZone': {
                        'Name': 'us-east-1e',
                    },
                    'SubnetIdentifier': 'subnet-85e90cb8',
                    'SubnetStatus': 'Active',
                },
            ],
            'VpcId': 'vpc-6741a603',
        },
    },
    'ResponseMetadata': {
        '...': '...',
    },
}