我是评估Istio在我们项目中使用的高级工程师。我是Istio的新手。我正在从Docker for Mac(Edge版本)运行Kubernetes。图书清单应用程序部署完美,我已经确认该服务正在响应。但是我根本无法从外部访问它。根据文档,我首先检查是否有负载平衡器,并看到localhost是IP地址。我根据文档将其分配为主机。我也发现端口是80。(在启动Kubernetes之前,我没有在Docker Edge上看到任何打开端口80的选项)。不确定是什么问题。它没有说连接被拒绝,所以似乎端口是开放的。 https://istio.io/docs/examples/bookinfo/。端口80是从
生成的 export INGRESS_PORT=$(kubectl -n istio-system get service istio- ingressgateway -o jsonpath='{.spec.ports[?(@.name=="http2")].port}')
我已将Istio文档放在三通上,但无论尝试如何,都无法通过浏览器或curl从外部访问该服务。
我真的很想继续使用该产品的其他功能,但我对此一无所知。我想念什么? Consul上有关于Docker的文档,但与Docker Edge不同,后者只是在Mac上集成了Kubernetes的Docker应用程序的一个版本。
curl -v -s http://127.0.0.1:80/productpage | grep -o "<title>.* </title>"
正在尝试127.0.0.1…
设置了TCP_NODELAY
已连接到127.0.0.1(127.0.0.1)端口80(#0)
GET / productpage HTTP / 1.1 主持人:127.0.0.1 用户代理:curl / 7.54.0 接受:/ 来自服务器的空回复
与主机127.0.0.1的连接#0保持不变
除了我在这个问题上花费了一个工作日这一事实之外,我还担心一个人通常如何解决与Istio的连接问题。我端口转发了lstio网关,但实际上看不到与我发送的请求有关的任何日志。如何在每个阶段都了解请求处理,以查看在这些情况下到底出了什么问题。如果我正在生产中,但没有收到对服务的请求的响应,该怎么办。有什么步骤可以解决此问题?