本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
满足使用 DMS 架构转换的先决条件
在创建实例配置文件、添加数据提供者和创建迁移项目之前,请完成以下必备任务。这些任务配置 DMS 架构转换所需的 Amazon 资源,例如 VPC、Amazon S3 存储桶、 Amazon Secrets Manager 密钥和具有权限策略的 IAM 角色。
控制台自动创建资源
当您使用 Amazon 管理控制台创建迁移项目时, Amazon DMS 可以自动代表您创建所需的 IAM 角色和 Amazon S3 存储桶。如果您希望手动创建这些资源,或者如果您使用 Amazon CLI 或 API,请完成以下步骤。有关创建迁移项目的更多信息,请参阅 创建迁移项目。
配置 VPC、Amazon S3 和密钥管理器
在创建 IAM 角色和策略之前,您需要为迁移项目提供以下 Amazon 资源。
Amazon Virtual Private Cloud
您需要一个 VPC,该VPC 可以从至少两个可用区的子网连接到您的源数据库和目标数据库。您可以使用符合这些要求的现有 VPC,也可以创建一个新的 VPC,例如名为sc-vpc。有关网络配置的更多信息,请参阅为 DMS 架构转换设置网络。
Amazon S3
您需要一个启用了版本控制的 Amazon S3 存储桶来存储评估报告、转换后的 SQL 代码和数据库架构元数据。在与您的迁移项目相同的区域创建 Amazon S3 存储桶,例如命名amzn-s3-demo-bucket,或者使用符合这些要求的现有存储桶。DMS 架构转换支持使用 Amazon S3 托管密钥进行 Server-Side 加密 (SSE-S3) 或使用 Amazon KMS 密钥 Server-Side 加密 () 的 Amazon S3 存储桶。SSE-KMS这包括客户管理的密钥。如果您的存储桶 SSE-KMS 与客户管理的密钥一起使用,请确保对该密钥sc-s3-role具有所需的权限(请参阅创建 IAM 角色和策略)。DMS 架构转换不支持 SSE-C 或 Client-Side 加密。有关创建存储桶的说明,请参阅 Amazon S3 用户指南中的创建存储桶。
Amazon Secrets Manager
在其中创建 JSON 密钥 Amazon Secrets Manager ,其中包含username源数据库和目标数据库的password键值对,例如命名sc-source-secret和。sc-target-secret您的密钥必须与迁移项目 Amazon Web Services 区域 相同。如果您已经拥有满足这些要求的密钥,则可以重复使用它们。有关创建密钥的说明,请参阅《Amazon Secrets Manager 用户指南》中的创建 Amazon Secrets Manager 密钥。
创建 IAM 角色和策略
要使用 DMS 架构转换,请创建以下五个 IAM 角色。每个角色都必须使用允许 Amazon DMS 服务代入角色的信任策略。
| 角色名称 | 权限策略 |
|---|---|
sc-s3-role |
允许 DMS 架构转换将评估报告、转换后的 SQL 代码和元数据存储在 Amazon S3 存储桶中:
SSE-KMS 客户管理的密钥的权限如果您的 Amazon S3 存储桶 SSE-KMS 与客户管理的密钥一起使用,则该 将以下语句添加到
或者在 KMS 密钥策略中添加一条声明。
如果您的存储桶使用 SSE-S3,则不需要额外的权限。 |
sc-source-secret-role |
允许 DMS 架构转换检索您的源数据库凭据:
|
sc-target-secret-role |
允许 DMS 架构转换检索您的目标数据库凭据:
|
dms-vpc-role |
|
dms-cloudwatch-logs-role |
|
每个角色都需要以下信任策略:
-
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "dms.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
要创建这些资源,请先创建策略,然后创建角色并附加相应的策略。有关说明,请参阅 IAM 用户指南中的创建 IAM 策略和为 Amazon 服务创建角色。