Istio 跟踪网络请求并查找故障点



在gke上使用Istio 1.2.10-gke.3

curl -v -HHost:user.domain.com --resolve user.domain.com:443:$gatewayIP https://user.domain.com/auth -v -k

TLS 验证后返回 503

< date: Tue, 19 May 2020 20:50:29 GMT
< server: istio-envoy

现在我想通过跟踪所涉及的组件的日志来跟踪请求并确定第一个故障点并解决问题

istio-ingressgateway pod 的日志没有显示任何内容。在 pod 上获得 shell 后,我执行了top并看到一个正在运行的envoy进程,但是我没有看到特使的任何日志/var/log/

我错过了什么?我看错地方了吗?还是我需要阅读框架的代码才能使用它? 我需要找出请求处理链中的哪个环节首先中断以及原因,以便可以修复相同的问题

这里有一些有用的 istio 文档链接,用于调试错误503

特使访问日志的 Istio 文档

用于连接故障排除的 Istio 文档。

有用的特使调试工具istioctl

$ istioctl proxy-status

也存在错误 503 的一种罕见情况。

如果 envoy sidecar 代理出现问题或未将自身正确注入部署 pod,也可能会出现此错误。或者当存在mTLS错误配置时。

希望对您有所帮助。