[英]How to detect when a Kubernetes liveness / readiness probe fails and invoke an endpoint passing some information about the pod
我已經為應用程序設置了活躍度和就緒性探測器,例如:
readinessProbe:
httpGet:
path: /actuator/health/readiness
port: 8080
...
livenessProbe:
httpGet:
path: /actuator/health/liveness
port: 8080
我想做的是,每當 Kubernetes 調用探測器時,它的結果就會發送到一個端點,並傳遞一些附加信息,例如 pod 名稱、使用的 Docker 圖像、來自秘密的值等。
PROBE INVOKED -> RESULT COLLECTED -> INVOKE ENDPOINT (http://xxx - payload {"probe": "liveness", "result": "OK", "image" : "app:1.0.0", "key" : "VALUE_EXTRACTED_FROM_A_SECRET", ...}
你能指出實現這一目標的方法嗎?
有很多方法可以做到這一點(例如,取決於您的管道)。
如果 pod 不在所需的 state 中,您可以自己調用探測端點並做出反應。 然后您可以調用kubectl describe
、 log
等並將結果傳遞給您的端點。
您可以使用不同的方法 bash、python 等...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.