D'où vient la convention d'utilisation de / healthz pour les vérifications de l'état des applications?

141

Dans l'écosystème Kubernetes / Docker, il existe une convention d'utilisation /healthzcomme point de terminaison de vérification de l'état des applications.

D'où vient le nom «healthz» et y a-t-il une sémantique particulière associée à ce nom?

Andy Hume
la source

Réponses:

179

Cela vient historiquement des pratiques internes de Google. Ils sont appelés "z-pages".

La raison pour laquelle il se termine par zest de réduire les collisions avec les points de terminaison d'application réels avec le même nom (comme /status). Pour en savoir plus, consultez cette conférence: https://vimeo.com/173610242

Critères d' évaluation similaires (au moins à l' intérieur de Google) sont /varz, /statusz, /rpcz. Les services développés chez Google obtiennent automatiquement ces points de terminaison pour exporter leur santé et leurs métriques et il existe des outils qui collectent les métriques / statuts exposés de tous les services déployés.

Des outils open source comme Prometheus implémentent ce modèle (puisque les auteurs originaux de Prometheus sont également d'anciens Googleurs) en arrivant à un point de terminaison bien connu pour collecter des métriques à partir de votre application. De même, OpenCensus vous permet d'exposer des z-pages à partir de votre application (idéalement sur un port différent) pour diagnostiquer les problèmes.

AhmetB - Google
la source
Go expvar golang.org/pkg/expvar est assez proche de / varz
ptman
@AhmeB: Merci pour le lien vidéo. ça m'aide à comprendre un peu plus sur healthz
Gatsby Lee