从 DocumentDB 到 S3 的跨账户 DMS 复制

问题描述

我想将与 MongoDB 兼容的 DocumentDB 中的数据作为账户 A 中的源导出到作为 AWS 账户 B 中目标的 S3。

我可以通过 vpc 对等实现这一点吗?对于从 DocumentDB 到 S3 的跨账户 DMS,我还需要做什么

解决方法

这取决于您的复制实例所在的位置。 如果您将复制实例与 DocumentDB 放在同一个 VPC 中,您甚至不需要 VPC 对等。

只需设置安全组以允许复制实例访问您的 DocumentDB 和 set it up as a Source Endpoint

假设复制实例可以访问互联网,或者您已经配置了 S3 VPC 终端节点,您可以设置 S3-Bucket as a target。您在设置目标时配置的角色需要 to have access to the S3 bucket

您可以从 documentation 附加到目标角色的示例策略:

{
    "Version": "2012-10-17","Statement": [
        {
            "Effect": "Allow","Action": [
                "s3:PutObject","s3:DeleteObject","s3:PutObjectTagging"
            ],"Resource": [
                "arn:aws:s3:::buckettest2/*"
            ]
        },{
            "Effect": "Allow","Action": [
                "s3:ListBucket"
            ],"Resource": [
                "arn:aws:s3:::buckettest2"
            ]
        }
    ]
}

目标账户中的存储桶需要有一个存储桶策略,允许源账户中的角色执行相同的操作。策略几乎相同,只是您还需要添加主体。