将域从 App Engine 服务优雅地切换到 Cloud Run

问题描述 投票:0回答:2

我有一个在 App Engine 中运行的服务,该服务已映射到它的自定义域。
我们正在将此服务从 App Engine 迁移到 Cloud Run。
因此,我们希望将域映射从 App Engine 切换到 Cloud Run。
我们尝试在临时环境中执行此操作,发现这种切换会导致我们的服务出现一些停机时间(大约 10-15 分钟)。
是否可以避免这样的停机并在不停机的情况下优雅地迁移流量/交换域?

仅供参考,在我们的 App Engine 域中是通过部署

dispatch.yaml
文件进行映射的。
在 Cloud Run 中,我们通过以下链接为我们的服务启用域:https://console.cloud.google.com/run/domains?project=&supportedpurview=project

google-app-engine google-cloud-platform google-cloud-run
2个回答
3
投票

正如@John Hanley提到的和@Sandeep Vokkareni分享的那样,

可能会有停机时间。问题在于域映射由 GFE(Google 前端)管理。您必须删除并重新发布自定义域映射。减少停机时间的一种方法是使 DNS 资源记录TTL 值较小,例如 60 秒。重新映射成功后,将 TTL 更改回正常值,例如 86400(一天)。


0
投票

我们还需要从 App Engine 切换到 Cloud Run。

根据本指南:https://cloud.google.com/appengine/migration-center/run/custom-domain-to-cloud-load-balancing我非常确定我们可以在不停机的情况下进行迁移.

指南中写道:

请注意,Cloud Load Balancing 文档具有创建 Google 管理的 SSL 证书的类似说明,但其中的说明使用负载均衡器授权,这需要 App Engine 服务停机长达几个小时。有关详细信息,请参阅 Google 管理的证书的域授权。

根据我的理解,使用具有 DNS 授权的证书可以在真正更改最终 DNS 记录之前提前创建它。

我会在接下来的几天内尝试,完成后我会更新我的评论以判断它是否有效。

© www.soinside.com 2019 - 2024. All rights reserved.