Kubernetes中是否有关闭探测器或压井吊舱前探测器?
是否有一种方法可以触发关机,这样我们就可以在关机之前优雅地关闭所有连接,并且在该探测之后不进行任何操作,并保持该探测随时准备终止 这包括刷新日志、在移交给新pod之前保存应用程序的任何状态以及更多用例。您有两个选项:Kubernetes中是否有关闭探测器或压井吊舱前探测器?,kubernetes,Kubernetes,是否有一种方法可以触发关机,这样我们就可以在关机之前优雅地关闭所有连接,并且在该探测之后不进行任何操作,并保持该探测随时准备终止 这包括刷新日志、在移交给新pod之前保存应用程序的任何状态以及更多用例。您有两个选项: 容器(PID 1)在移除容器(和pod)之前接收SIGTERM。你可以抓住这个机会,然后采取行动 你可以使用 以下是重要的实施细节: httpGet示例 在此文件上执行kubectl apply-f后,在另一个终端上执行kubectl delete pod prestop pod时
kubectl apply-f
后,在另一个终端上执行kubectl delete pod prestop pod
时运行kubectl log-f prestop pod
。您应该看到如下内容:
$ kubectl apply -f prestop.yaml
pod/prestop-pod created
$ kubectl logs -f prestop-pod
10.244.0.1 - - [21/Mar/2019:09:15:20 +0000] "GET /?preStop HTTP/1.1" 200 612 "-" "Go-http-client/1.1" "-"
谢谢你的回答。您可以为http预停止钩子添加一个示例吗。我在该链接上找不到http GET的示例。添加的示例:)
$ kubectl apply -f prestop.yaml
pod/prestop-pod created
$ kubectl logs -f prestop-pod
10.244.0.1 - - [21/Mar/2019:09:15:20 +0000] "GET /?preStop HTTP/1.1" 200 612 "-" "Go-http-client/1.1" "-"