【发布时间】:2015-03-05 08:33:39
【问题描述】:
Google App Engine 向托管虚拟机请求 /_ah/health 以进行健康检查。
我试图部署一个我不是代码维护者的项目,它将被部署为托管虚拟机以进行自动缩放和健康检查。
目前 app.yaml 不支持重写规则,如果支持,我可以将 /_ah/health 指向 /ping 端点。这会很棒,因为可以在不更改代码的情况下实现健康检查。
在 app.yaml 中有处理程序的配置,我的理解是处理程序用于谷歌运行时,而不是用于托管虚拟机。
我想更改 /_ah/health 请求的位置。有没有办法进行这种更改?
【问题讨论】:
-
您可以根据 cloud.google.com/appengine/docs/python/managed-vms/… 自定义很多健康检查参数,但不能自定义 AFAIK,它使用的 URL。您不能只在该 URL 以及任何其他 URL 上提供健康检查吗?您到底想完成什么专业任务?
-
用例是支持在不更改源代码的情况下部署应用程序。
-
如果健康检查显示
/health/mine而不是/_ah/health,这将如何促进您的任务?您可以使用app.yaml(或 Java 中的等效机制)来切换代码的哪一部分服务于健康检查,无论您使用的是两个 URL 中的哪一个。 -
我可以将运行状况检查请求指向应用程序中已经存在的端点(响应 200 的 get),而无需更改代码。我搜索了文档,但找不到像 apache 那样配置 app.yaml 来重写请求的方法。
-
为什么需要重写请求?您不能按原样将其指向现有的端点吗?我建议编辑您的 Q 以清楚详细地解释您的目标以及为什么不能使用明显的方法,因为此评论线程变得太长而 Q 太短:-)。