Loading
close

访问跨命名空间的服务没有度量和链路信息

time 更新时间:2024-02-05 14:41:14

描述

在某个命名空间a的客户端应用,访问另一个命名空间b的服务端应用后,通过kiali等页面查看时,发现没有度量信息和链路信息。

解决办法

为了减少服务网格下发到envoy sidecar的服务配置数量,在istio层面默认做了命名空间隔离,只能看到当前命名空间和指定的服务kubernetes和tracing-oap,可通过以下命令查看:

kubectl -nservicemesh get sidecar default -oyaml
apiVersion: networking.istio.io/v1beta1
kind: Sidecar
metadata:
  name: default
  namespace: servicemesh
spec:
  egress:
  - hosts:
    - ./*
    - default/kubernetes.default.svc.cluster.local
    - servicemesh/tracing-oap.servicemesh.svc.cluster.local

此时如果不在a命名空间设置sidecar资源,a空间下的客户端服务是没有经过sidecar的,因此没有度量和链路信息。需要在a命名空间下设置sidecar资源,让a空间下的sidecar能够访问b空间的服务端应用,示例设置如下,a空间默认可以访问b空间的服务b:

apiVersion: networking.istio.io/v1beta1
kind: Sidecar
metadata:
  name: default
  namespace: a
spec:
  egress:
  - hosts:
    - "b/svcb"
此篇文章对你是否有帮助?
没帮助
locked-file

您暂无权限访问该产品