Kubernetes nginx入口间歇性故障
nginx入口间歇性故障Kubernetes nginx入口间歇性故障,kubernetes,kubernetes-helm,nginx-ingress,Kubernetes,Kubernetes Helm,Nginx Ingress,nginx入口间歇性故障 NGINX入口控制器版本:0.22.0 图像:码头io/kubernetes入口控制器/nginx入口控制器:0.22.0 图像ID:docker-pullable://quay.io/kubernetes-ingress-controller/nginx-ingress-controller@sha256:47ef793dc8dfcbf73c9dee4abfb87afa3aa8554c35461635f6539c6cc5073b2c quay.io/kubernet
NGINX入口控制器版本:0.22.0 图像:码头io/kubernetes入口控制器/nginx入口控制器:0.22.0 图像ID:docker-pullable://quay.io/kubernetes-ingress-controller/nginx-ingress-controller@sha256:47ef793dc8dfcbf73c9dee4abfb87afa3aa8554c35461635f6539c6cc5073b2c quay.io/kubernetes-ingres-controller/nginx-ingres-controller Kubernetes版本(使用kubectl版本):v1.15.3
环境: 云提供商或硬件配置:Vcenter中的虚拟机 OS(例如从/etc/OS发布):VERSION=“16.04.6 LTS(Xenial Xerus)” 内核(例如uname-a):Linux-appsec-ana01 4.4.0-143-generic\169 Ubuntu SMP-Thu Feb 7:07:56:38 UTC 2019 x86\u 64 x86\u 64 GNU/Linux 安装工具: 其他: 发生的情况:我的nginx入口控制器出现故障,重新启动不一致 您预期会发生什么:不会重新启动 如何复制它(尽可能少且精确):应该出现相同的版本问题
curl -I http://10.244.10.48:10254/healthz
HTTP/1.1 200 OK
Date: Wed, 11 Sep 2019 11:15:56 GMT
Content-Length: 2
Content-Type: text/plain; charset=utf-8
我们还需要知道什么:
kubectl获得以下事件结果
2m Warning Unhealthy pod/nginx-ingress-controller-7cfb747d6c-4n4nz Liveness probe failed: Get http://10.244.10.48:10254/healthz: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
30s Warning Unhealthy pod/nginx-ingress-controller-7cfb747d6c-4n4nz Liveness probe failed: Get http://10.244.10.48:10254/healthz: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
6m5s Warning Unhealthy pod/nginx-ingress-controller-7cfb747d6c-4n4nz Readiness probe failed: Get http://10.244.10.48:10254/healthz: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
35m Warning Unhealthy pod/nginx-ingress-controller-7cfb747d6c-4n4nz Readiness probe failed: Get http://10.244.10.48:10254/healthz: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
curl -I http://10.244.10.48:10254/healthz
HTTP/1.1 200 OK
Date: Wed, 11 Sep 2019 11:15:56 GMT
Content-Length: 2
Content-Type: text/plain; charset=utf-8
日志中的错误清楚地说明了特定
nginx入口控制器*
Pod的健康检查问题。由于就绪性和活跃性完全由节点代理管理,因此我会仔细检查kubelet
服务,以获取任何相关错误或可疑事件:
$sudo systemctl status kubelet-l
$sudo journalctl-u kubelet
因此,尽管您成功地测试了针对/health
端点的curl
请求,但从kubelet
节点到K8s API服务器的连接可能会出现问题
同时,您可以检查控制器Pod中的日志并检查引导事件:
kubectl日志$(kubectl get po-l app=nginx-ingres-o jsonpath='{.items[0].metadata.name}')
我还将检查originnginx ingress controller*
Pod所在的K8s容量,并观察集群中分配对象的总体资源利用率
我建议您查看官方的Nginx入口控制器故障排除,以获得更多的调查方法 我想说它不是与Nginx控制器相连,而是与Kubernetes节点相连。你看到这个了吗
这个问题无法阅读。请格式化您的帖子: