Istio断路器会跳闸吗?

时间:2020-06-05 09:32:09

标签: istio circuit-breaker

我目前正在研究1.6版中的服务网格Istio。数据平面(Envoy代理)由受控平面配置。

  1. 当我通过创建目标规则来配置断路器并且断路器打开时,客户端sidecar代理是否已经返回503或服务器端sidecar代理?
  2. 客户端Sidecar代理是自动将请求路由到服务的另一个可用实例,还是只是将503返回到应用程序容器?

谢谢!

1 个答案:

答案 0 :(得分:1)

  1. 在日志条目中,您可以检查它们以找出断路器停止的连接的两端。 src\App.svelte容器的日志消息中显示了连接双方的IP地址。
istio-proxy

该消息来自运行Envoy的 { insertId: "..." labels: { k8s-pod/app: "circuitbreaker-jdwa8424" k8s-pod/pod-template-hash: "..." } logName: ".../logs/stdout" receiveTimestamp: "2020-06-09T05:59:30.209882320Z" resource: { labels: { cluster_name: "..." container_name: "istio-proxy" location: "..." namespace_name: "circuit" pod_name: "circuit-service-a31cb334d-66qeq" project_id: "..." } type: "k8s_container" } severity: "INFO" textPayload: "[2020-06-09T05:59:27.854Z] UO 0 0 0 "-" - - 172.207.3.243:443 10.1.13.216:36774 " timestamp: "2020-06-09TT05:59:28.071001549Z" } 容器,该容器受请求发送到的istio-proxy策略的影响。还有被中断的连接的源和目标的IP地址。

  1. 它将返回503。可以选择配置retries,但是我没有测试它与CircuitBreaker的协同作用,并且如果以前的操作返回了错误,则重试实际上将转到其他pod。
  2. li>

还查看了我设法找到的CircuitBreaker的最详细说明。

希望有帮助。