【问题标题】:Google Cloud: can't add disk to instance template with write permissionGoogle Cloud:无法将磁盘添加到具有写入权限的实例模板
【发布时间】:2018-10-02 06:52:35
【问题描述】:

我在 Google Cloud 上运行可抢占式实例。为了保持这种状态,我使用了实例组,一旦它被杀死,它就会从实例模板中生成这个实例。我想在这个实例上运行 Mongo(我知道这是一个坏主意,它对我来说已经足够好了)所以我需要向实例添加一个永久磁盘。

当我向实例模板添加磁盘时,mode 单选按钮显示为灰色并设置为read-only。有一条警告说我只能在手动从模板生成实例时更改mode。这对我没有帮助,因为我需要实例组使用可写磁盘自动生成新实例。我该怎么做?

【问题讨论】:

    标签: google-cloud-platform google-compute-engine gcloud


    【解决方案1】:

    托管实例组中的实例应该相同,因为它们基于相同的模板。因此,附加到它们的任何附加磁盘都是只读的。 GCP 永久磁盘只能作为“只读”附加到多个实例,这在 Managed Instance Group 的情况下完成。另请注意,托管实例组中的实例被认为是短暂的,您不应将持久性数据存储在附加到托管实例组中的实例的磁盘中。

    为了保留您的数据,作为最佳做法,我建议您定期维护最新的操作系统映像、使用启动脚本并将您的数据备份到一个集中位置,例如 Google Cloud Storage。在您的实例模板中,您可以指定自定义映像和相关的启动脚本,以便在重新创建实例时,它安装了必要的软件应用程序并可以访问所需的数据。这将帮助您完成您的需求。请参阅此link 了解更多信息。 有关创建实例模板的更多建议,请阅读Deterministic 实例模板。

    【讨论】:

    • 感谢您的回答。 -“您不应该将持久性数据存储在附加到托管实例组中的实例的磁盘中” AFAIU 这里的主要问题是该实例可能会被杀死?我的用例可以容忍严重的停机时间,这就是我决定在可抢占实例上运行它的原因。我正在考虑使用 Google Cloud Storage Fuse 来实现这一目标。性能下降是主要问题。很想使用一些谷歌服务作为数据库。数据存储对我有用,但不幸的是,数据存储没有基于 python asyncio 的客户端。
    • Google Cloud Platform 具有 Cloud SQL,它是一种完全托管的数据库服务,可以轻松设置、维护、管理和管理关系数据库。您可以将 Cloud SQL 与 MySQL 或 PostgreSQL 结合使用。您可以在其官方documentation 上阅读有关 CloudSQL 的更多信息。
    猜你喜欢
    • 1970-01-01
    • 2018-07-10
    • 2020-06-01
    • 1970-01-01
    • 2018-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-18
    相关资源
    最近更新 更多