【问题标题】:On GCP is there a way to configure App Engine + Cloud Datastore application with multi-region availability?在 GCP 上,有没有办法配置具有多区域可用性的 App Engine + Cloud Datastore 应用程序?
【发布时间】:2019-10-08 05:56:49
【问题描述】:

上下文

App Engine 服务是区域性的。尽管 Cloud Datastore 具有多区域位置,其中数据在此处所述的同一位置内的多个区域中复制,但尚不清楚当使用多区域位置之一时 App Engine 服务是否也具有多区域可用性。我们了解 App Engine 在一个区域内使用多个区域来提供高可用性,但需求文档要求设置多区域(主动-主动)App Engine。

解决方案选项

我们正在考虑以下设置作为在 2 个不同区域实现 Active-Active AppEngine+Datastore 组合的一种方式。

  • 使用 2 个不同的 GCP 项目来托管相同的 AppEngine+Datastore 应用在 2 个不同的地区。其中之一将是主要的和 另一个将是活动备用。
  • 使用计划作业导出 数据从 Datastore 数据从主要区域到次要区域 受此处描述的进口/出口指南的约束。
  • 为了自动化数据导出和导入 App Engine cron 作业的组合 和/或可以使用云功能。
  • 数据备份频率可以由应用程序 RPO 和 RTO 需求确定。

云数据存储导出和导入的原理

目前没有其他内置(GCP 托管)复制机制可用于跨区域的 Datastore 数据复制。

问题

Q1:有没有办法为 App Engine + Cloud Datastore 应用程序配置多区域可用性?要求是在 2 个区域中具有主动-主动配置。这可能吗?正确的方法是什么?

Q2:为了使用上面给出的解决方案选项,需要有一种方法将主要和次要 App Engine 应用程序的域名映射到相同的 DNS 名称,并使用某种加权 DNS 映射来启用自动路由需要故障转移时到辅助 App Engine 实例的流量,

Q3:有推荐的方法吗? Cloud DNS 或 HTTP(s) Loadbalancer - 与 Stackdriver 结合是否提供了实现此目的的方法? (注意 - App Engine 应用程序没有公共静态 IP,而是由 GCP 提供域名。) Google 有没有关于自动化 Datastore 导出和导入的最佳方法的建议?最简单的解决方案是在 VM 中使用 gcloud 命令行。还有一些方法可以通过 App Engine Cron 作业和/或 Cloud Functions 自动执行此操作? Google 有什么建议?

【问题讨论】:

    标签: google-app-engine google-cloud-platform dns google-cloud-datastore google-app-engine-python


    【解决方案1】:

    据我所知,你想要完成的事情不可能像你描述的那样。

    使用多区域数据存储,您已经拥有良好的数据库可用性。如果您的目标是实例的可用性,那么一种选择是从属于不同项目、计算引擎或完全不同平台的实例连接到同一数据库。执行此操作的详细信息可在

    https://cloud.google.com/datastore/docs/activate#other-platforms

    唯一的挑战是额外的延迟,但您将能够避免与导入/导出和同步过程相关的大量复杂性。假设区域级中断是例外情况,您很少会为这种额外的延迟付费。

    我不确定如何使用此策略完成自定义域设置,其中域在出现中断时解析为其他区域上的实例。与使用应用引擎相比,使用 GCP 的其他计算选项可能会更好,但仍会利用云数据存储来实现整个堆栈的多区域可用性。

    【讨论】:

    • 评论以改进此答案。 1) App Engine Standard 仅支持每个项目一个区域。因此,Q2 是不可能的。 2) Cloud DNS 没有检测或重新路由失败流量的功能。 3) Google Frontend (GFE) 管理 App Engine Standard 的流量分配和路由。 4) Google HTTP 负载均衡器不支持 App Engine Standard 作为后端。
    猜你喜欢
    • 2018-01-28
    • 2011-02-03
    • 2015-04-09
    • 2018-06-10
    • 1970-01-01
    • 2019-04-28
    • 2018-07-26
    • 2019-07-07
    • 2011-10-29
    相关资源
    最近更新 更多