10

我无法永久删除我创建的由 Google App Engine 管理的虚拟机。我已经从开发人员的控制台和使用 gcloud 命令多次删除了它们。在每种情况下,命令都会成功完成并删除虚拟机,但随后谷歌几乎立即创建了一个全新的虚拟机来取代它。

有谁知道如何永久删除托管虚拟机?谢谢。

4

5 回答 5

7

我们正在努力改善这种体验。不过,目前,一种解决方法是将非托管 VM 实例部署为默认版本,并删除任何其他基于托管 VM 的版本。同样,这个问题在我们的雷达上需要解决。

[Chris Ramsdale,App Engine 产品经理]

于 2015-03-25T20:15:15.957 回答
3

我想用我的一些解决方案来更新这篇文章,以在 Google Compute Engine 的托管 VM 上部署(带有版本)和删除实例。这是我找到的用于删除默认 GCE 托管 VM 的解决方案:

  • 确保您拥有最新的 GCE 组件。gcloud components update在 Google Cloud SDK Shell 中运行。
  • 在您的 app.yaml 中,删除vm:trueresources:部分和manual scaling:部分。
  • 导航到计算 -> App Engine -> 版本并记录<default-version-number>. 我的看起来像20150722t1245032带有(default)表示默认版本的字样。
  • 部署应用程序,设置默认值,并指定默认版本。gcloud preview app deploy "...\app.yaml" --set-default --version=<default-version-number>.
  • 导航到计算 -> 计算引擎 -> 虚拟机实例。选择默认实例并删除。

我还学会了如何停止部署额外的实例

  • 关键是要指定版本号gcloud preview app deploy "...\app.yaml" --set-default --version=<version-number>。@ZacharyNewman 能够帮助我解决这个问题

最后,这是删除实例的附加版本的方法

  • 导航到计算 -> App Engine -> 版本并删除您不需要的版本。
  • 导航到计算 -> 计算引擎 -> 虚拟机实例。选择您不想要的实例并删除。

希望这可以帮助!

于 2015-08-03T16:34:23.137 回答
1

可能有一种更简单的方法来解释这一点——“基本上,你不能删除接收 100% 流量的版本。

因此,您只需要创建一个非托管 VM,就像一个简单的 helloworld 应用程序。然后,您可以将所有流量转移到这个 helloworld 应用程序(见图,我将我的版本命名为 0),然后,删除版本 20160... 或任何您的 vm 名称。

在此处输入图像描述

在某个时间点,您可能会再次试验或启动您的托管 VM。当您这样做时,它将自动开始获得 100% 的流量。

或者,如果您碰巧知道接收 100% 流量的版本号,您始终可以使用此版本部署一个简单的非托管 VM。

于 2016-05-06T19:40:05.827 回答
0

我遇到了同样的问题,这就是我能够永久停止托管 VM 的方式。只需转到 appengine -> 设置 -> 禁用应用程序。这将自动停止并删除您的虚拟机。将来,如果您想运行托管 vm,只需启用应用程序,这会将您的应用程序重新部署到最后一个已知版本。

于 2016-09-05T22:05:46.793 回答
0

Google Cloud ConsoleApp Engine -> Versions,选择托管 VM 应用程序的默认版本,然后使用STOP按钮将其关闭。

于 2016-05-12T00:46:19.613 回答