Istio (版本1.0.6)官方文件说:
我们可以通过以下操作访问Jaeger UI:
-n istio系统$(kubectl获取pod -n istio-system -l app=jaeger -o jsonpath=‘{.items.metadata.name}’) 16686:16686 &
然后我们可以使用http://localhost:16686
。但是本地主机是Linux机器,它没有浏览器。我必须在远程机器上打开浏览器。我该怎么做?谢谢。
发布于 2019-04-03 00:33:16
有几种方法可以做到这一点。port-forward
在Google上运行得很好。如果您正在使用GKE,那么我强烈建议使用Cloud和port-forward
,因为这是最简单的方法。在其他云上,我不知道。
暗示斯特凡会起作用。您可以使用kubectl edit svc jaeger-query
编辑jaeger服务,然后将服务的类型从ClusterIP
更改为NodePort
。最后,您可以使用NODE_IP:PORT
(任何节点)访问服务。如果您执行kubectl get svc
,您将看到分配给服务的新端口。注意:您可能需要为该端口打开防火墙规则。
如果您有一个设置外部IP地址的控制平面,也可以使服务类型为LoadBalancer
。这将是一个更昂贵的解决方案,但您将有一个专用的外部IP地址为您的服务。
有更多的方法,但我想说,这些是适当的方法。
发布于 2019-03-19 04:53:31
您可以使用NodePort选择器创建一个app: jaeger
服务,以在集群之外公开UI。
发布于 2019-04-02 20:54:28
kubectl port-forward
命令默认值仅公开给localhost
网络,请尝试添加--address 0.0.0.0
$ kubectl port-forward -n istio-system \
$(kubectl get pod -n istio-system -l app=jaeger -o jsonpath=’{.items[0].metadata.name}’) \
--address 0.0.0.0 16686:16686 &
请参阅kubectl命令引用
https://stackoverflow.com/questions/55236000
复制