如何使用 Amazon Redshift 作为 AWS DMS 任务的目标端点?

2 分钟阅读
0

我想使用 Amazon Redshift 作为我的 AWS Database Migration Service(AWS DMS)任务的目标。

简述

您可以使用任何支持的资源Amazon Redshift 数据库设置为 AWS DMS 任务的目标。当您迁移到 Amazon Redshift 时,AWS DMS 会首先将数据移动到 Amazon Simple Storage Service(Amazon S3)桶。然后,数据将传输到目标 Amazon Redshift 集群中的表。创建 S3 桶的 AWS 区域与 Amazon Redshift 数据库的 AWS 区域相同。因此,您的 Amazon Redshift 集群必须与复制实例位于同一个账户和相同的 AWS 区域。有关更多信息,请参阅Limitations on using Amazon Redshift as a target for AWS Database Migration Service

**注意:**对于 AWS DMS 版本 3.4.7 及更高版本: AWS DMS 复制实例使用的路由表中的 VPC 端点需要访问 S3 目标。或者,在 AWS DMS 复制实例用于访问 Amazon S3 目标的路由表中,您需要提供一个互联网网关路由。基于 AWS PrivateLink 的 VPC 端点允许您从 VPC 内直接私密连接到 AWS 服务。这包括 Amazon S3 之类的服务。

解决方案

**注意:**如果您在运行 AWS 命令行界面(AWS CLI)命令时收到错误,请参阅排查 AWS CLI 错误。此外,请确保您使用的是最新版本的 AWS CLI

在开始之前,请向 Amazon Redshift 集群安全组的入站规则提供安全组、子网 CIDR 范围或复制实例 IP 地址。AWS DMS 复制实例必须具有与集群使用的 Amazon Redshift 端点(主机名和端口)的网络连接。此外,请确保 AWS DMS 有权创建 S3 桶。AWS DMS 使用 Amazon S3 作为媒介将数据传输到 Amazon Redshift 集群。AWS DMS 需要 AWS Identity and Access Management(IAM)角色 dms-access-for-endpoint。有关更多信息,请参阅Prerequisites for using an Amazon Redshift database as a target for AWS Database Migration Service

  1. 打开 AWS DMS 控制台,然后选择您的 Amazon Redshift 集群所在的 AWS 区域。
  2. 从导航窗格中选择端点
  3. 选择创建端点
  4. 端点类型中,选择目标端点
  5. 输入您的端点标识符,然后选择 Redshift 作为您的目标引擎
  6. 服务器名称中,输入您的 Amazon Redshift 端点。
  7. 输入您的端口号
    **注意:**Amazon Redshift 的默认端口为 5439。
  8. 输入您的 Amazon Redshift 用户名密码数据库名称
  9. (可选)从特定于端点的设置中添加额外的连接属性。
  10. 测试端点连接部分,选择复制实例所在的 VPC。然后,选择复制实例
  11. 选择运行测试,然后等待状态变为成功
  12. 选择创建端点

如果您使用 AWS DMS 控制台创建端点,则 DMS 会自动创建所需的 IAM 角色和策略。如果您使用 AWS CLI 或 AWS DMS API 创建端点,则必须手动创建 IAM 角色和策略。有关更多信息,请参阅Creating the IAM roles to use with the AWS CLI and AWS DMS API

相关信息

Using Amazon S3 as a target for AWS Database Migration Service

Working with AWS DMS endpoints

VPC endpoint considerations for upgrading or creating AWS DMS version 3.4.7 or higher

AWS 官方
AWS 官方已更新 4 个月前