【问题标题】:How to hide the traffic from kube-probe in Kiali graph?如何在 Kiali 图中隐藏来自 kube-probe 的流量?
【发布时间】:2019-07-09 05:36:30
【问题描述】:

我将应用部署在 kubernetes+istio 集群中。我使用 http 探针进行准备检查。在 Kiali 的 Graph 部分中,kube-probe 流量显示为从 unkonwn 到 httpbin 的一条线。我尝试添加“x-b3-sampled”http 标头以避免记录此流量。但它不起作用。有什么方法可以隐藏 kube-probe 的流量吗?

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: httpbin
spec:
  replicas: 1
  template:
    metadata:
      labels:
        app: httpbin
        version: v1
    spec:
      containers:
      - image: docker.io/citizenstig/httpbin
        imagePullPolicy: IfNotPresent
        name: httpbin
        ports:
        - containerPort: 8000
        readinessProbe:
          httpGet:
            path: /get
            port: 8000
            httpHeaders:
            - name: 'x-b3-sampled'
              value: '0'
          initialDelaySeconds: 5
          timeoutSeconds: 1
        livenessProbe:
          tcpSocket:
            port: 8000
          initialDelaySeconds: 5
          timeoutSeconds: 1

【问题讨论】:

    标签: kubernetes istio kiali


    【解决方案1】:

    更新:这实际上将在 Istio 1.1 中得到修复,而且好的部分是您可以轻松地自己应用补丁而无需等待 1.1,因为它在 yaml 配置中:

    补丁链接:https://github.com/istio/istio/pull/10480

    所以对于 Istio 1.0.x,您基本上必须在命名空间 istio-system 中编辑类型为 Rule、名为 promhttp 的自定义资源,以设置以下 match 表达式:

      match: (context.protocol == "http" || context.protocol == "grpc") && (match((request.useragent | "-"), "kube-probe*") == false)
    

    初始响应:

    我不确定是否有“干净”的解决方案,但此文档页面底部描述了一种解决方法:https://istio.io/docs/tasks/traffic-management/app-health-check/#liveness-and-readiness-probes-with-http-request-option

    因为 Istio 代理只拦截在 containerPort 字段中明确声明的端口,所以无论是否启用 Istio 双向 TLS,到 8002 端口的流量都会绕过 Istio 代理。

    因此,您可以让您的健康端点使用您不会声明为容器端口的不同端口,这样流量就不会被特使代理拦截,因此不会在基亚利。

    这不是一个理想的解决方案,因为它迫使您以某种方式为 Istio 塑造您的应用......但它仍然有效。

    [编辑,刚刚发现:https://istio.io/help/faq/telemetry/#controlling-what-the-sidecar-reports。看起来您还可以根据源过滤掉遥测中的请求。虽然我不确定它是否会在来源“未知”的情况下工作]

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-12-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多