Envoy 默认值由 App Mesh 设置 - AWS App Mesh

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Envoy 默认值由 App Mesh 设置

以下各节提供了有关 App Mesh 设置的路由重试策略和断路器的 Envoy 默认值的信息。

默认路由重试策略

如果在 2020 年 7 月 29 日之前你的账户中没有网格,App Mesh 会在 2020 年 7 月 29 日当天或之后自动为你账户中任何网格中的所有HTTP、HTTP /2 和 g RPC 请求创建默认的 Envoy 路由重试策略。如果您的账户在 2020 年 7 月 29 日之前有任何网格,则不会为 2020 年 7 月 29 日之前、当天或之后存在的任何 Envoy 路线创建默认策略。除非你在AWS 支持下开票。支持部门处理票证后,将为 App Mesh 在处理票证之日或之后创建的任何 future Envoy 路线创建默认策略。有关 Envoy 路由重试策略的更多信息,请参阅 config.route.v3。 RetryPolicy在特使文档中。

当您创建 App Mesh 路由或为 App Mesh 虚拟服务定义虚拟节点提供者时,App Mesh 会创建 Envoy 路由。尽管您可以创建 App Mesh 路由重试策略,但无法为虚拟节点提供商创建 App Mesh 重试策略。

在 App Mesh 中无法看到默认策略API。默认策略只能通过 Envoy 查看。要查看配置,请启用管理界面并向 Envoy 发送请求config_dump。此默认策略包含以下设置:

  • 最大重试次数2

  • g RPC 重试事件 — UNAVAILABLE

  • HTTP重试事件 — 503

    注意

    无法创建用于查找特定HTTP错误代码的 App Mesh 路由重试策略。但是,App Mesh 路由重试策略可以查找 server-errorgateway-error。这两者都包含 503 错误。有关更多信息,请参阅 路由

  • TCP重试事件 — 以及 connect-failure refused-stream

    注意

    不可能创建用于查找这两个事件的 App Mesh 路由重试策略。但是,App Mesh 路由重试策略可以查找 connection-error,这等同于 connect-failure。有关更多信息,请参阅 路由

  • 重置 — 如果上游服务器根本没有响应(断开连接/重置/读取超时),Envoy 会尝试重试。

默认断路器

当您在 App Mesh 中部署 Envoy 时,某些断路器设置会设置 Envoy 的默认值。有关更多信息,请参阅集群。 CircuitBreakers.Envoy 文档中的阈值。这些设置在 App Mesh 中不可见API。这些设置只能通过 Envoy 看到。要查看配置,请启用管理界面并向 Envoy 发送请求config_dump

如果在 2020 年 7 月 29 日之前您的账户中没有网格,那么对于您在 2020 年 7 月 29 日当天或之后创建的网格中部署的每个 Envoy,App Mesh 都会通过更改以下设置的 Envoy 默认值来有效地禁用断路器。如果你的账户在 2020 年 7 月 29 日之前有任何网格,则除非你在AWS 支持下开票,否则将为你在 2020 年 7 月 29 日当天或之后在 App Mesh 中部署的任何 Envoy 设置默认值。支持人员处理完工单后,App Mesh 将为处理工单之日之后部署的所有 Envoy 设置的 App Mesh 默认值设置为:

  • max_requests2147483647

  • max_pending_requests2147483647

  • max_connections2147483647

  • max_retries2147483647

注意

无论您的 Envoy 是 Envoy 还是 App Mesh 的默认断路器值,您都无法修改这些值。