将Google计算引擎实例迁移到不同的地区

20

我正在尝试将一些计算引擎实例从欧洲迁移到亚洲。

我需要这样做是因为大多数服务器用户在亚洲,他们可以更快地访问其所在区域的服务器。我正在尝试以下命令。

gcloud compute instances move asiawindows1 --zone europe-west1-d  --destination-zone asia-east1-c

当我尝试这样做时,我收到以下错误:

属于子网络的实例不能在不同地区之间移动。

如何在不手动设置亚洲区域的情况下移动这些服务器是最好的方式?

4个回答

26

请按以下步骤在Google Cloud Platform上操作

  1. 创建您的VM实例的快照
  2. 使用此快照创建磁盘
  3. 使用所创建的磁盘创建镜像
  4. 使用上述步骤创建的镜像创建一个新的实例,并更改您的区域

这会改变我的外部IP地址吗? - Tejas
1
@Tejas 是的,它会。 - Jorick Spitzen

9

您正在使用的命令是用于在同一区域内移动区域,而不是跨区域。

您可以创建实例的映像,并使用该映像在不同的区域中创建新的实例。


5

如果自动移动未发生,请尝试手动移动 VM 实例。首先列出所有磁盘以选择正确的磁盘进行快照。

gcloud compute disks list

从列表中确定磁盘的名称并创建该磁盘的快照

gcloud compute disks snapshot <disk_name> --snapshot-names <snapshot_disk_name> --zone <current_zone>

现在如果您要搬家,可以删除您的实例。
gcloud compute instances delete <instance_name> --zone <instance_zone>

下一步是在你想创建实例的新区域中,从你已经创建的快照中创建一个磁盘。
gcloud compute disks create <disk_name> --source-snapshot <snapshot_disk_name> --zone <new_zone_name>

现在,您需要创建一个已挂载此磁盘的实例。请根据您的需求选择适当的机器类型,这里我将创建一个f1-micro实例。

gcloud compute instances create <instance_name> --machine-type f1-micro --zone <new_zone> 
--disk name=<disk_name>,boot=yes,mode=rw

就是这样。

现在,如果你想,你可以删除该快照。

gcloud compute snapshots delete <snapshot_name> 

1
正确的标志是 --snapshot-names 用于创建快照。 - Oleg Kr
@OlegKr - 是的。谢谢你指出来。我已经更新了。 - Arundev

-1

GCP指南中提到快照根磁盘,创建镜像,并将该镜像用作新VM的根磁盘。


你能添加源吗?我在GCP文档中没有看到。 - Keto

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接