我将ingress控制器部署到了我的kubernetes集群。然而,当我试图访问pod时,我得到了HTTP503。因此,我试图通过访问入口控制器的日志来找到问题:
kubectl logs controllername-nginx-ingress-controller-6f486779b5-dnm8k -n kube-system
我感兴趣的日志文件如下:
10.244.0.1 - [10.244.0.1] - - [10/Dec/2018:16:54:12 +0000] "GET /identity HTTP/2.0" 503 599 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36" 271 0.000 [] - - - - d7f7ffd22d584e4a5da2b0fa2fae5665
正如你所看到的,我在那里完全看不到什么有趣的东西。我想知道这是否是整个日志消息,因为我在末尾看到了一堆破折号和一个guid值。
接下来我决定丰富ingress的日志文件:
kubectl edit deploy -n kube-system controllername-nginx-ingress-controller
部署文档出现了,我想在args部分添加额外的一行:
spec:
containers:
- args:
- /nginx-ingress-controller
- --v=5 < ------------ this line
- other arguments here
一旦我关闭部署文档,我就会看到以下消息:
error: deployments "misty-marmot-nginx-ingress-controller" is invalid
那么我做错了什么?日志消息真的完整吗?在当前的形式中,它一点也没有描述错误。还有为什么我不能更改日志记录级别?
该问题是由于编辑nginx-ingress-controller
Kubernetes资源时的格式问题而出现的,并且已成功修复。然而,尽管对于社区贡献者的常见研究,我还是建议查看任何相关Kubernetes集群问题的一般故障排除指南以及如何解决这些问题的步骤。