在 Kubernetes/Docker 生态系统中,有一个惯例是使用 /healthz
作为应用程序的健康检查端点。
“healthz”这个名字是从哪里来的,这个名字有什么特殊的语义吗?
最佳答案
它历来来自 Google 的内部实践。它们被称为“z-pages”。
它以 z
结尾的原因是为了减少与具有相同名称的实际应用程序端点的冲突(如 /status
)。有关更多信息,请参阅此演讲:https://vimeo.com/173610242
类似的端点(至少在 Google 内部)是 /varz
、/statusz
、/rpcz
。 Google 开发的服务会自动让这些端点导出其运行状况和指标,并且有一些工具可以从所有已部署的服务中收集公开的指标/状态。
像 Prometheus 这样的开源工具通过访问一个众所周知的端点从您的应用程序中收集指标来实现这种模式(因为 Prometheus 的原始作者也是前 Google 员工)。同样OpenCensus允许您从您的应用程序(最好在不同的端口上)公开 z 页面以诊断问题。
关于docker - 使用/healthz 进行应用程序健康检查的约定从何而来?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43380939/