如何将Amazon RDS快照从源复制到另一个源(区域)

时间:2018-06-18 06:40:09

标签: amazon-web-services aws-lambda amazon-rds

我正在尝试将Amazon RDS快照从一个区域复制到另一个区域,但它不起作用。

但是,我可以使用以下代码将其复制到相同的原点。

let URL = `https://rds.us-west-1.amazonaws.com/?Action=CopyDBSnapshot?SourceDBSnapshotIdentifier=${snapshot.DBSnapshotArn},?DestinationRegion=us-west-1?KmsKeyId=KmsKeyId?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=access-key/${date}/us-west-1/rds/aws4_request&X-Amz-Date=${datetime}&X-Amz-Expires=86400&X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date&X-Amz-Signature=somevalue`;

let copyparams = {

    SourceDBSnapshotIdentifier: snapshot.DBSnapshotArn,
    TargetDBSnapshotIdentifier: snapshotname,
    CopyTags: true,
    SourceRegion: 'us-east-1',
    PreSignedUrl: url
};

rds.copyDBSnapshot(copyparams, function(err, result) {

    if (err) {
        console.log(err);
    } else {
        console.log(result);
    }
});

1 个答案:

答案 0 :(得分:0)

在同一区域中复制快照时,可以使用dbSnapshot标识符,但是在跨区域复制快照时,必须做三件事。

1:必须在目标区域中创建客户端。

2:必须使用快照ARN而不是快照标识符。

3:您必须指定源区域。

这是python如何自动将RDS快照复制到新区域的很好的演练。设置时间为5分钟。它包含所有所需的代码以及分步说明和视频演示!

https://geektopia.tech/post.php?blogpost=Automating_The_Cross_Region_Copy_Of_RDS_Snapshots