在 Amazon Redshift 中管理集群重新定位 - Amazon Redshift
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

在 Amazon Redshift 中管理集群重新定位

通过使用搬迁,您可以启用 Amazon Redshift 将集群移动到另一个可用区域 (AZ),而不会丢失任何数据或对您的应用程序进行更改。通过重新定位,您可以在群集上出现服务中断时继续操作,而影响最小。

启用集群重定位后,Amazon Redshift 可能会在某些情况下选择重新定位集群。特别是,当前可用区域中的问题阻碍了最佳群集操作或提高服务可用性时,会发生这种情况。您还可以在给定可用区域中的资源限制中断群集操作的情况下调用重新定位功能。一个示例是恢复集群或调整集群大小的功能。Amazon Redshift 提供迁移功能,无需额外付费。

当 Amazon Redshift 集群重新定位到新的可用区时,新集群具有与原始集群相同的终端节点。您的应用程序可以重新连接到终端并继续操作,而无需修改或丢失数据。但是,由于给定可用区域中的潜在资源限制,重新安置可能并不总是可能的。

仅对 RA3 实例类型支持 Amazon Redshift 集群重新定位,例如大型实例、原始版本 3.16 倍大型实例和原始版本。RA3 实例类型使用 Redshift 托管存储 (RMS) 作为持久存储层。集群数据的最新副本始终在Amazon区域。换句话说,您可以将 Amazon Redshift 集群重新定位到另一个可用区域,而不会丢失任何数据。

当您启用集群进行重新定位时,Amazon Redshift 会将您的集群迁移到代理后面。这样做有助于实现对群集计算资源的独立位置访问。迁移会导致重新引导群集。当群集重新定位到另一个可用区时,当新群集在新可用区中重新联机时,会发生中断。但是,您无需对应用程序进行任何更改,因为即使集群重新定位到新的可用区后,群集终端节点仍保持不变。

如果您启用了重定位,并且您当前使用领导节点 IP 地址访问您的集群,请确保更改该访问权限。相反,请使用与集群的 Virtual Private Cloud (VPC) 终端节点关联的 IP 地址。要查找此集群 IP 地址,VPC 在网络和安全性部分。要获取有关 VPC 终端节点的更多详细信息,请登录 Amazon VPC 控制台。

您也可以使用Amazon Command Line Interface(Amazon CLI) 命令describe-vpc-endpoints以获取与终端节点关联的 elastic network interface。您可以将describe-network-interfaces命令获取关联的 IP 地址。有关 Amazon Redshift 的更多信息Amazon CLI命令,请参阅可用命令中的Amazon CLI命令参考。

启用集群重新定位

您可以从 Amazon Redshift 控制台启用和管理集群重新定位Amazon CLI和 Amazon Redshift API。

要启用群集重新定位,请定义包含多个可用区的子网组。如果 Amazon Redshift 确定了多个可访问的可用区,Amazon Redshift 会自动从可访问的可用区列表中选择重新定位集群。

重新定位完成后,您可以使用相同的终端节点访问集群。Amazon Redshift 会删除原始集群的计算资源,并将其返回到资源池。

Limitations

使用 Amazon Redshift 时,请注意以下限制:

  • 由于给定可用区域中的潜在资源限制,可能无法在所有情况下进行集群重新定位。如果发生这种情况,Amazon Redshift 不会更改原始集群。

  • DC1、DC2 或 DS2 产品实例系列不支持重新定位。

  • 对于可公开访问的 Amazon Redshift 集群,重新定位不可用。

  • 您不能跨Amazon区域。

  • 您只能为使用默认端口设置 (5439) 的群集启用重定位。否则,启用重新定位失败。

  • 如果您已成功启用重定位并稍后尝试修改默认端口设置,则修改操作将失败。

使用控制台管理重新定位

您可以使用 Amazon Redshift 控制台管理集群重新定位的设置。

在创建新集群时启用重新定位

在创建新集群时,可以使用以下过程启用重新定位。

启用新集群的重新定位

  1. 登录到Amazon Web Services Management Console,然后打开 Amazon Redshift 控制台https://console.aws.amazon.com/redshift/

  2. 在导航窗格中,选择集群

  3. 选择创建集群以创建新集群。有关如何创建集群的更多信息,请参阅创建 Amazon Redshift 集群Amazon Redshift 入门

  4. UDER备份, 用于集群重新定位中,选择Enable (启用 Gem)。默认情况下,将禁用重新定位。

  5. UDER网络和安全性, 用于公开访问,请接受默认禁用。如果选择Enable (启用 Gem)时,Amazon Redshift 将返回错误。

  6. 选择 Create Cluster (创建集群)

修改现有集群的重新定位

可以通过以下过程更改现有集群的重新定位设置。

修改现有集群的重新定位设置

  1. 登录到Amazon Web Services Management Console,然后打开 Amazon Redshift 控制台https://console.aws.amazon.com/redshift/

  2. 在导航窗格中,选择集群。这将列出您的账户在当前 Amazon 区域中的集群。列表中的各个列中显示了每个集群的一部分属性。

  3. 从列表中选择要修改的集群的名称。此时将显示集群详细信息页面。

  4. 选择维护选项卡,然后在Backup 详细信息部分选择编辑

  5. UDER备份中,选择Enable (启用 Gem)。默认情况下,将禁用重新定位。

  6. 选择属性选项卡,然后在网络和安全性部分确保选择禁用(对于 )公开访问选项。

  7. 网络和安全性部分中,请确保选择禁用(对于 )公开访问选项。

  8. 选择修改集群

重新定位集群

可以通过以下过程手动将集群重新定位到其他可用区。当您希望在辅助可用区中测试网络设置或当您在当前可用区中遇到资源限制时,这一点尤其有用。

将集群重新定位到其他可用区

  1. 登录到Amazon Web Services Management Console,然后打开 Amazon Redshift 控制台https://console.aws.amazon.com/redshift/

  2. 在导航窗格中,选择集群。这将列出您的账户在当前 Amazon 区域中的集群。列表中的各个列中显示了每个集群的一部分属性。

  3. 选择要从列表中移动的集群的名称。此时将显示集群详细信息页面。

  4. 适用于操作中,选择搬迁。这些区域有:重新定位集群页面。

  5. (可选) 选择可用区。如果您没有选择可用区,Amazon Redshift 会为您选择一个可用区。

Amazon Redshift 开始重新定位并将集群显示为重新定位。重新定位完成后,群集状态将更改为可用。

使用 Amazon Redshift CLI 管理重新定位

您可以使用Amazon命令行界面 (CLI)。

随着AmazonCLI 中,以下示例命令会创建一个名为mycluster启用了重新定位。

aws redshift create-cluster --cluster-identifier mycluster --number-of-nodes 2 --master-username adminuser --master-user-password TopSecret1 --node-type ra3.4xlarge --port 5439 --no-publicly-accessible --availability-zone-relocation

如果您的当前群集使用不同的端口,则必须在修改它以启用重新定位之前修改它以使用 5439。以下示例命令修改端口,以防您的集群不使用 5439。

aws redshift modify-cluster --cluster-identifier mycluster --port 5439

以下示例命令在 Amazon Redshift 集群上启用可用性区域重新定位参数。

aws redshift modify-cluster --cluster-identifier mycluster --availability-zone-relocation

以下示例命令禁用 Amazon Redshift 集群上的可用性区域重新定位参数。

aws redshift modify-cluster --cluster-identifier mycluster --no-availability-zone-relocation

以下示例命令将调用 Amazon Redshift 集群上的重新定位。

aws redshift modify-cluster --cluster-identifier mycluster --availability-zone us-east-1b