现在的水平,仅止于让它跑起来。:)
同样的环境,microk8s+istio。
步骤如下:
一,使用kubectl get pod -n istio-system查看所有istio的POD运行正常。
NAME READY STATUS RESTARTS AGE grafana-5b5bb96d6d-xsmwb / Running 7d6h istio-citadel-69694bd465-wj5pp / Running 7d6h istio-cleanup-secrets-7m87h / Completed 7d6h istio-egressgateway-6d5cfb474-ffxv6 / Running 7d6h istio-galley-6d6b7f9cdd-tbdbb / Running 7d6h istio-grafana-post-/ Completed 7d6h istio-ingressgateway-859977c87-srsrg / Running 7d6h istio-pilot-5ffcbc484f-wxdgx / Running 7d6h istio-policy-76479db9b8-vgsfv / Running 7d6h istio-security-post-/ Completed 7d6h istio-sidecar-injector-56cdcffcd8-frrmb / Running 7d6h istio-telemetry-75bd8c5898-7cs9f / Running 7d6h istio-tracing-c8b67b59c-bvls6 / Running 7d6h prometheus-578b7dcfdc-2g7c9 / Running 7d6h servicegraph-84f87799b5-hs256 / Running 7d6h
二,使用kubectl get svc -n istio-system了解istio主要的服务端口(注意jaeger-query:16686)
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE grafana ClusterIP /TCP 7d6h istio-citadel ClusterIP /TCP,/TCP 7d6h istio-egressgateway ClusterIP /TCP,/TCP 7d6h istio-galley ClusterIP /TCP,/TCP 7d6h istio-ingressgateway LoadBalancer :/TCP,:/TCP,:/TCP,:/TCP,:/TCP,:/TCP,:/TCP,:/TCP 7d6h istio-pilot ClusterIP /TCP,/TCP,/TCP,/TCP 7d6h istio-policy ClusterIP /TCP,/TCP,/TCP 7d6h istio-sidecar-injector ClusterIP /TCP 7d6h istio-telemetry ClusterIP /TCP,/TCP,/TCP,/TCP 7d6h jaeger-agent ClusterIP None <none> /UDP,/UDP,/UDP 7d6h jaeger-collector ClusterIP /TCP,/TCP 7d6h jaeger-query ClusterIP /TCP 7d6h prometheus ClusterIP /TCP 7d6h servicegraph ClusterIP /TCP 7d6h tracing ClusterIP /TCP 7d6h zipkin ClusterIP /TCP 7d6h
这时,使用查询命令
kubectl get pod -n istio-system -l app=jaeger -o jsonpath='{.items[0].metadata.name}'
输出为:istio-tracing-c8b67b59c-bvls6
三,使用kubectl port-forward命令,将default名字空间下的16686端口的数据,转到istio-system名字空间里的16686端口。( 这个端口看上面输出对应关系)
kubectl port-forward -n istio-system $(kubectl get pod -n istio-system -l app=jaeger -o jsonpath=:
如果命令不放入后台,输出如下:
Forwarding from -> Forwarding from [::]: -> Handling connection Handling connection Handling connection Handling connection
上面的输出,表示port-proxy forward命令,只能支持到127.0.0.1的本地局域网。
四,用SSH进行二次转发。
此处需要输入root密码,如果可以,更换为普通用户。
五,浏览器输入http://ip:16687即可访问到jaeger UI了。