Google Compute Engine:如何更改实例模板

时间:2017-01-12 20:35:01

标签: templates google-compute-engine

我有一个Google Compute Engine小组,Group。我已经更改了组重复使用的模板,现在它已经在Template5上了。该组有一个实例Instance,它使用的是先前的模板(Template4)。 Template4已被删除,不再存在。我没有看到强制实例更改模板的方法。我试过/已经阻止尝试的事情:

  • 编辑模板而不是删除和创建新模板。模板似乎不可编辑。
  • 更改实例组模板。 我这样做了,它没有影响实例模板。
  • 在组内创建一个新实例,希望它能够获取新实例 模板。显然有一种方法可以做到这一点,但是 创建实例屏幕不允许我设置组和组 屏幕没有“创建新实例”按钮。它也会 失败,因为Template5包括使用外部磁盘,而且可以 一次只能由一个实例使用,但如果创作有效我 可以删除旧实例。
  • 重新启动实例。
  • 编辑实例。模板在编辑屏幕中无法更改。

1 个答案:

答案 0 :(得分:4)

GCP中的实例模板资源是不可变的。您只能通过创建新的实例模板来编辑/更改托管实例组。

使用控制台将新模板添加到托管实例组后,或者您可以通过执行此命令在gcloud中执行此操作:

gcloud compute instance-groups managed set-instance-template \
<name-of-managed-instance-group> --template=<new-template-name> \
[--region=REGION | --zone=ZONE] [GLOBAL-FLAG …]

现在,添加此模板后要创建的所有实例都将遵循实例模板中的规则。但是,添加实例模板不会影响组中的现有实例,即使用旧实例模板的实例。您需要通过在gcloud中键入以下命令来重新创建这些实例:

gcloud compute instance-groups managed recreate-instances \
<name-of-managed-instance-group> --instances \
<name-of-the-existing-instances-separated-by-comma>
[--region=REGION | --zone=ZONE] [GLOBAL-FLAG …]