在同一VPC中将Redshift从子网1移到子网2

时间:2018-06-26 06:32:08

标签: amazon-web-services amazon-redshift

我有一个VPC,它有2个私有子网,即子网1和子网2。我的redshift群集位于子网2中,并有数据。我想在同一VPC内将redshift从子网2移到子网1(这很容易做到)。但是我对数据迁移毫无疑问:

  1. 数据迁移是否会自动发生而没有任何数据丢失,还是我需要进行备份,在子网1中创建群集,然后再次将备份的数据推送到群集中。

任何线索都将不胜感激。

2 个答案:

答案 0 :(得分:1)

来自Amazon Redshift Snapshots - Amazon Redshift

  

从快照还原群集

     

快照包含来自群集上运行的所有数据库的数据,以及有关群集的信息,包括节点数,节点类型和主用户名。如果您需要从快照还原集群,Amazon Redshift会使用集群信息来创建新集群,然后从快照数据还原所有数据库。 Amazon Redshift从快照创建的新群集将具有与原始快照相同的配置,包括节点的数量和类型。 除非在请求中指定了另一个可用区,否则群集将在同一区域和一个随机的,系统选择的可用区中恢复。

因此,您应该获取现有Redshift群集的快照,然后通过从快照还原群集在另一个AZ中创建新群集。一切正常之后,您可以删除旧群集。

答案 1 :(得分:0)

我知道这是一个老问题,但是在另一个答案中查看评论时,我遇到了同样的问题。要从一个子网移动到另一个子网,请执行以下操作:

  1. 确保您的子网组中同时有两个子网
  2. 拍摄当前群集的快照
  3. 使用与原始群集相同的设置将快照还原到新群集,但选择您希望其位于的另一个可用区。将群集命名为“ {ORIGINAL_NAME} -new”
  4. 新群集启动后,转到旧群集,对其进行编辑,然后在名称后加上“ -old”(除了保持直线,它可以是其他任何东西)。
  5. 重命名完成后,返回到新集群,对其进行编辑,然后将名称更改为与原始名称完全相同的名称。
  6. 群集建立后,请确保可以正确连接到该群集,然后删除原始群集(“旧”群集)。

CloudFormation通过集群名称挂接到集群。因此,只要这些设置与原始设置相同,那么CF堆栈中就不会出现偏移,并且在更改名称后它将链接到新群集。