:doc:`drs <../../drs>` / Client / update_replication_configuration

********************************
update_replication_configuration
********************************



.. py:method:: drs.Client.update_replication_configuration(**kwargs)

  

  Allows you to update a ReplicationConfiguration by Source Server ID.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/UpdateReplicationConfiguration>`_  


  **Request Syntax**
  ::

    response = client.update_replication_configuration(
        associateDefaultSecurityGroup=True|False,
        autoReplicateNewDisks=True|False,
        bandwidthThrottling=123,
        createPublicIP=True|False,
        dataPlaneRouting='PRIVATE_IP'|'PUBLIC_IP',
        defaultLargeStagingDiskType='GP2'|'GP3'|'ST1'|'AUTO',
        ebsEncryption='DEFAULT'|'CUSTOM'|'NONE',
        ebsEncryptionKeyArn='string',
        name='string',
        pitPolicy=[
            {
                'enabled': True|False,
                'interval': 123,
                'retentionDuration': 123,
                'ruleID': 123,
                'units': 'MINUTE'|'HOUR'|'DAY'
            },
        ],
        replicatedDisks=[
            {
                'deviceName': 'string',
                'iops': 123,
                'isBootDisk': True|False,
                'optimizedStagingDiskType': 'AUTO'|'GP2'|'GP3'|'IO1'|'SC1'|'ST1'|'STANDARD',
                'stagingDiskType': 'AUTO'|'GP2'|'GP3'|'IO1'|'SC1'|'ST1'|'STANDARD',
                'throughput': 123
            },
        ],
        replicationServerInstanceType='string',
        replicationServersSecurityGroupsIDs=[
            'string',
        ],
        sourceServerID='string',
        stagingAreaSubnetId='string',
        stagingAreaTags={
            'string': 'string'
        },
        useDedicatedReplicationServer=True|False
    )
    
  :type associateDefaultSecurityGroup: boolean
  :param associateDefaultSecurityGroup: 

    Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration.

    

  
  :type autoReplicateNewDisks: boolean
  :param autoReplicateNewDisks: 

    Whether to allow the AWS replication agent to automatically replicate newly added disks.

    

  
  :type bandwidthThrottling: integer
  :param bandwidthThrottling: 

    Configure bandwidth throttling for the outbound data transfer rate of the Source Server in Mbps.

    

  
  :type createPublicIP: boolean
  :param createPublicIP: 

    Whether to create a Public IP for the Recovery Instance by default.

    

  
  :type dataPlaneRouting: string
  :param dataPlaneRouting: 

    The data plane routing mechanism that will be used for replication.

    

  
  :type defaultLargeStagingDiskType: string
  :param defaultLargeStagingDiskType: 

    The Staging Disk EBS volume type to be used during replication.

    

  
  :type ebsEncryption: string
  :param ebsEncryption: 

    The type of EBS encryption to be used during replication.

    

  
  :type ebsEncryptionKeyArn: string
  :param ebsEncryptionKeyArn: 

    The ARN of the EBS encryption key to be used during replication.

    

  
  :type name: string
  :param name: 

    The name of the Replication Configuration.

    

  
  :type pitPolicy: list
  :param pitPolicy: 

    The Point in time (PIT) policy to manage snapshots taken during replication.

    

  
    - *(dict) --* 

      A rule in the Point in Time (PIT) policy representing when to take snapshots and how long to retain them for.

      

    
      - **enabled** *(boolean) --* 

        Whether this rule is enabled or not.

        

      
      - **interval** *(integer) --* **[REQUIRED]** 

        How often, in the chosen units, a snapshot should be taken.

        

      
      - **retentionDuration** *(integer) --* **[REQUIRED]** 

        The duration to retain a snapshot for, in the chosen units.

        

      
      - **ruleID** *(integer) --* 

        The ID of the rule.

        

      
      - **units** *(string) --* **[REQUIRED]** 

        The units used to measure the interval and retentionDuration.

        

      
    

  :type replicatedDisks: list
  :param replicatedDisks: 

    The configuration of the disks of the Source Server to be replicated.

    

  
    - *(dict) --* 

      The configuration of a disk of the Source Server to be replicated.

      

    
      - **deviceName** *(string) --* 

        The name of the device.

        

      
      - **iops** *(integer) --* 

        The requested number of I/O operations per second (IOPS).

        

      
      - **isBootDisk** *(boolean) --* 

        Whether to boot from this disk or not.

        

      
      - **optimizedStagingDiskType** *(string) --* 

        The Staging Disk EBS volume type to be used during replication when ``stagingDiskType`` is set to Auto. This is a read-only field.

        

      
      - **stagingDiskType** *(string) --* 

        The Staging Disk EBS volume type to be used during replication.

        

      
      - **throughput** *(integer) --* 

        The throughput to use for the EBS volume in MiB/s. This parameter is valid only for gp3 volumes.

        

      
    

  :type replicationServerInstanceType: string
  :param replicationServerInstanceType: 

    The instance type to be used for the replication server.

    

  
  :type replicationServersSecurityGroupsIDs: list
  :param replicationServersSecurityGroupsIDs: 

    The security group IDs that will be used by the replication server.

    

  
    - *(string) --* 

    

  :type sourceServerID: string
  :param sourceServerID: **[REQUIRED]** 

    The ID of the Source Server for this Replication Configuration.

    

  
  :type stagingAreaSubnetId: string
  :param stagingAreaSubnetId: 

    The subnet to be used by the replication staging area.

    

  
  :type stagingAreaTags: dict
  :param stagingAreaTags: 

    A set of tags to be associated with all resources created in the replication staging area: EC2 replication server, EBS volumes, EBS snapshots, etc.

    

  
    - *(string) --* 

    
      - *(string) --* 

      


  :type useDedicatedReplicationServer: boolean
  :param useDedicatedReplicationServer: 

    Whether to use a dedicated Replication Server in the replication staging area.

    

  
  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'associateDefaultSecurityGroup': True|False,
          'autoReplicateNewDisks': True|False,
          'bandwidthThrottling': 123,
          'createPublicIP': True|False,
          'dataPlaneRouting': 'PRIVATE_IP'|'PUBLIC_IP',
          'defaultLargeStagingDiskType': 'GP2'|'GP3'|'ST1'|'AUTO',
          'ebsEncryption': 'DEFAULT'|'CUSTOM'|'NONE',
          'ebsEncryptionKeyArn': 'string',
          'name': 'string',
          'pitPolicy': [
              {
                  'enabled': True|False,
                  'interval': 123,
                  'retentionDuration': 123,
                  'ruleID': 123,
                  'units': 'MINUTE'|'HOUR'|'DAY'
              },
          ],
          'replicatedDisks': [
              {
                  'deviceName': 'string',
                  'iops': 123,
                  'isBootDisk': True|False,
                  'optimizedStagingDiskType': 'AUTO'|'GP2'|'GP3'|'IO1'|'SC1'|'ST1'|'STANDARD',
                  'stagingDiskType': 'AUTO'|'GP2'|'GP3'|'IO1'|'SC1'|'ST1'|'STANDARD',
                  'throughput': 123
              },
          ],
          'replicationServerInstanceType': 'string',
          'replicationServersSecurityGroupsIDs': [
              'string',
          ],
          'sourceServerID': 'string',
          'stagingAreaSubnetId': 'string',
          'stagingAreaTags': {
              'string': 'string'
          },
          'useDedicatedReplicationServer': True|False
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **associateDefaultSecurityGroup** *(boolean) --* 

        Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration.

        
      

      - **autoReplicateNewDisks** *(boolean) --* 

        Whether to allow the AWS replication agent to automatically replicate newly added disks.

        
      

      - **bandwidthThrottling** *(integer) --* 

        Configure bandwidth throttling for the outbound data transfer rate of the Source Server in Mbps.

        
      

      - **createPublicIP** *(boolean) --* 

        Whether to create a Public IP for the Recovery Instance by default.

        
      

      - **dataPlaneRouting** *(string) --* 

        The data plane routing mechanism that will be used for replication.

        
      

      - **defaultLargeStagingDiskType** *(string) --* 

        The Staging Disk EBS volume type to be used during replication.

        
      

      - **ebsEncryption** *(string) --* 

        The type of EBS encryption to be used during replication.

        
      

      - **ebsEncryptionKeyArn** *(string) --* 

        The ARN of the EBS encryption key to be used during replication.

        
      

      - **name** *(string) --* 

        The name of the Replication Configuration.

        
      

      - **pitPolicy** *(list) --* 

        The Point in time (PIT) policy to manage snapshots taken during replication.

        
        

        - *(dict) --* 

          A rule in the Point in Time (PIT) policy representing when to take snapshots and how long to retain them for.

          
          

          - **enabled** *(boolean) --* 

            Whether this rule is enabled or not.

            
          

          - **interval** *(integer) --* 

            How often, in the chosen units, a snapshot should be taken.

            
          

          - **retentionDuration** *(integer) --* 

            The duration to retain a snapshot for, in the chosen units.

            
          

          - **ruleID** *(integer) --* 

            The ID of the rule.

            
          

          - **units** *(string) --* 

            The units used to measure the interval and retentionDuration.

            
      
    
      

      - **replicatedDisks** *(list) --* 

        The configuration of the disks of the Source Server to be replicated.

        
        

        - *(dict) --* 

          The configuration of a disk of the Source Server to be replicated.

          
          

          - **deviceName** *(string) --* 

            The name of the device.

            
          

          - **iops** *(integer) --* 

            The requested number of I/O operations per second (IOPS).

            
          

          - **isBootDisk** *(boolean) --* 

            Whether to boot from this disk or not.

            
          

          - **optimizedStagingDiskType** *(string) --* 

            The Staging Disk EBS volume type to be used during replication when ``stagingDiskType`` is set to Auto. This is a read-only field.

            
          

          - **stagingDiskType** *(string) --* 

            The Staging Disk EBS volume type to be used during replication.

            
          

          - **throughput** *(integer) --* 

            The throughput to use for the EBS volume in MiB/s. This parameter is valid only for gp3 volumes.

            
      
    
      

      - **replicationServerInstanceType** *(string) --* 

        The instance type to be used for the replication server.

        
      

      - **replicationServersSecurityGroupsIDs** *(list) --* 

        The security group IDs that will be used by the replication server.

        
        

        - *(string) --* 
    
      

      - **sourceServerID** *(string) --* 

        The ID of the Source Server for this Replication Configuration.

        
      

      - **stagingAreaSubnetId** *(string) --* 

        The subnet to be used by the replication staging area.

        
      

      - **stagingAreaTags** *(dict) --* 

        A set of tags to be associated with all resources created in the replication staging area: EC2 replication server, EBS volumes, EBS snapshots, etc.

        
        

        - *(string) --* 
          

          - *(string) --* 
    
  
      

      - **useDedicatedReplicationServer** *(boolean) --* 

        Whether to use a dedicated Replication Server in the replication staging area.

        
  
  **Exceptions**
  
  *   :py:class:`drs.Client.exceptions.ResourceNotFoundException`

  
  *   :py:class:`drs.Client.exceptions.InternalServerException`

  
  *   :py:class:`drs.Client.exceptions.ConflictException`

  
  *   :py:class:`drs.Client.exceptions.ThrottlingException`

  
  *   :py:class:`drs.Client.exceptions.AccessDeniedException`

  
  *   :py:class:`drs.Client.exceptions.ValidationException`

  
  *   :py:class:`drs.Client.exceptions.UninitializedAccountException`

  