Kiali在Graph视图中看不到我的服务的任何拓扑

时间:2018-12-12 05:56:13

标签: kubernetes istio

我正在运行kubernetes v1.7.10和Istio 1.0.4,还运行了与istio 1.0.4捆绑在一起的kiali v0.9。

然后,我将bookinfo示例部署到命名空间中,网关指向bookinfo服务,并从浏览器访问产品页面首页,一切都很好。

但是,从kiali的“图形”视图中,仅显示带有标签“未知”的钻石图标。怎么了?

我可以在Kiali上看到所有服务,工作负载,istio配置,只是没有拓扑。

最后,我追溯到普罗米修斯度量标准,例如:

istio_requests_total{connection_security_policy="none",destination_app="unknown",destination_principal="unknown",destination_service="details.test.svc.cluster.local",destination_service_name="details",destination_service_namespace="test",destination_version="unknown",destination_workload="unknown",destination_workload_namespace="unknown",instance="172.22.178.111:42422",job="istio-mesh",reporter="destination",request_protocol="http",response_code="200",source_app="unknown",source_principal="unknown",source_version="unknown",source_workload="unknown",source_workload_namespace="unknown"}

我注意到它们都是“未知的”,destination_app,destination_version,source_app,source_version ...,我相信这就是为什么没有显示topo。

还有http://istio-telemetry:42422/metrics中的指标:

istio_requests_total{connection_security_policy="none",destination_app="unknown",destination_principal="unknown",destination_service="details.test.svc.cluster.local",destination_service_name="details",destination_service_namespace="test",destination_version="unknown",destination_workload="unknown",destination_workload_namespace="unknown",reporter="destination",request_protocol="http",response_code="200",source_app="unknown",source_principal="unknown",source_version="unknown",source_workload="unknown",source_workload_namespace="unknown"} 32

然后我进行了另一个测试,我安装了一个kubernetes v1.10.3集群,并在其中安装了istio 1.0.4,部署了bookinfo示例,一切都很好,并带有漂亮的拓扑图。

因此,我怀疑打破kiali图形视图的kubernetes版本之间是否存在任何区别?

有人可以提示吗?

谢谢。

likun

1 个答案:

答案 0 :(得分:1)

我在Istio网站上找不到清晰的信息,但是我认为不支持1.9以下的kubernetes。在Minikube的安装页面中,建议这样做:https://istio.io/docs/setup/kubernetes/platform-setup/minikube/

也许您可以尝试使用较旧版本的Istio,但我也不保证它也能正常工作。您还必须选择旧版本的Kiali。

Kiali通过istio遥测中的标签构建其图形,因此您正确地与在Prometheus中看到的相关联。特别是Kiali使用source_appsource_workloaddestination_appdestination_workload来检测图形关系。