所以我在GCE入口背后暴露了部署。在部署中,在工作路径上实现了一个简单的readinessProbe,如下所示:
readinessProbe:
failureThreshold: 3
httpGet:
path: /claim/maif/login/?next=/claim/maif
port: 8888
scheme: HTTP
initialDelaySeconds: 20
periodSeconds: 60
successThreshold: 1
timeoutSeconds: 1
一切运作良好,第一次健康检查在20秒后出现,回答200:
{address space usage: 521670656 bytes/497MB} {rss usage: 107593728 bytes/102MB} [pid: 92|app: 0|req: 1/1] 10.108.37.1 () {26 vars in 377 bytes} [Tue Nov 6 15:13:41 2018] GET /claim/maif/login/?next=/claim/maif => generated 4043 bytes in 619 msecs (HTTP/1.1 200) 7 headers in 381 bytes (1 switches on core 0)
但是,就在那之后,我得到了来自其他健康检查的大量其他请求,/:
{address space usage: 523993088 bytes/499MB} {rss usage: 109850624 bytes/104MB} [pid: 92|app: 0|req: 2/2] 10.132.0.14 () {24 vars in 277 bytes} [Tue Nov 6 15:13:56 2018] GET / => generated 6743 bytes in 53 msecs (HTTP/1.1 200) 4 headers in 124 bytes (1 switches on core 0)
{address space usage: 515702784 bytes/491MB} {rss usage: 100917248 bytes/96MB} [pid: 93|app: 0|req: 1/3] 10.132.0.20 () {24 vars in 277 bytes} [Tue Nov 6 15:13:56 2018] GET / => generated 1339 bytes in 301 msecs (HTTP/1.1 200) 4 headers in 124 bytes (1 switches on core 0)
{address space usage: 518287360 bytes/494MB} {rss usage: 103759872 bytes/98MB} [pid: 93|app: 0|req: 2/4] 10.132.0.14 () {24 vars in 277 bytes} [Tue Nov 6 15:13:58 2018] GET / => generated 6743 bytes in 52 msecs (HTTP/1.1 200) 4 headers in 124 bytes (1 switches on core 0)
{address space usage: 518287360 bytes/494MB} {rss usage: 103837696 bytes/99MB} [pid: 93|app: 0|req: 3/5] 10.132.0.21 () {24 vars in 277 bytes} [Tue Nov 6 15:13:58 2018] GET / => generated 6743 bytes in 50 msecs (HTTP/1.1 200) 4 headers in 124 bytes (1 switches on core 0)
{address space usage: 523993088 bytes/499MB} {rss usage: 109875200 bytes/104MB} [pid: 92|app: 0|req: 3/6] 10.132.0.4 () {24 vars in 275 bytes} [Tue Nov 6 15:13:58 2018] GET / => generated 6743 bytes in 50 msecs (HTTP/1.1 200) 4 headers in 124 bytes (1 switches on core 0)
据我所知,文件说明了这一点
Ingress控制器首先查找兼容的就绪探测,如果找到,则将其作为GCE负载均衡器的HTTP(S)运行状况检查。如果没有就绪探测器,或者就绪探测器需要特殊的HTTP头,则Ingress控制器将GCE负载均衡器的HTTP运行状况检查指向“/”。这是一个Ingress的示例,它采用来自端点的就绪探测作为其健康检查。
但我不明白这种行为。如何将healthchecks限制为我在部署中定义的健康检查?
谢谢,
好的,所以这很好可能不起作用。我遇到了类似的问题,我的准备情况探测我们没有得到尊重。我能够从GCP控制台GUI界面编辑它。搜索“healthcheck”,然后查找GKE为该服务创建的运行状况检查。
我能够将我的改为TCP,这使得它因某些原因而起作用。
值得一试。我个人在运行多区域入口时碰到它,所以我的设置可能不同但仍然依赖于GCE-Ingress。