可以使用Istio 0.8.0对TCP服务进行断路吗?

时间:2018-06-06 23:59:38

标签: istio

我正在尝试实现电路中断方案。我想知道是否可以为TCP服务完成,因为流量策略中存在最大TCP连接。

apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
  name: httpbin
  ...
spec:
  host: httpbin
  trafficPolicy:
    connectionPool:
      http:
        http1MaxPendingRequests: 1
        maxRequestsPerConnection: 1
      tcp:
        maxConnections: 100
    outlierDetection:
      http:
        baseEjectionTime: 180.000s
        consecutiveErrors: 1
        interval: 1.000s
        maxEjectionPercent: 100

此外,我尝试收集tcp服务指标并且能够。我可以在prometheus中查看指标。我对此很陌生,并试图探索。但有没有办法将指标纳入服务网格?

感谢。

1 个答案:

答案 0 :(得分:2)

我相信您对未来对TCP服务的支持的假设是正确的。如果我正确理解networking.v1alpha3 docs,那么(在撰写本文时)Istio 0.8.0似乎只支持HTTP服务的异常值检测:

  

断路器实现,用于跟踪上游服务中每个主机的状态。虽然目前仅适用于HTTP服务,但未来的版本也将支持不透明的TCP服务。