-
Notifications
You must be signed in to change notification settings - Fork 1.6k
zh-translation: docs/ops/deployment/performance and scalability/index.md #9590
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
zh-translation: docs/ops/deployment/performance and scalability/index.md #9590
Conversation
…anslation/docs/ops/deployment/performance-and-scalability/index.md
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Generally LGTM. Thanks!
| ### Istio {{< istio_release_name >}} 的延迟 {#latency-for-Istio} | ||
|
|
||
| Istio {{< istio_release_name >}} 的默认配置在 90% 的情况下使数据平面的延迟比基线增加了 6.3 ms。我们通过 `http/1.1` 协议的 [Istio 基准测试](https://github.com/istio/tools/tree/master/perf/benchmark)获得了结果,测试标准是每秒 1000 请求,负载为 1KB,使用了 16 个客户端连接和 2 个代理,双向 TLS 打开状态。 | ||
| 在网格内部,一个请求会先遍历客户端代理,然后遍历服务端代理。Istio {{< istio_release_name >}} 的默认配置(即带有遥测功能的 Istio v2),在 90% 的情况下,这两个代理在基线数据面延迟的基础上,分别增加了 2.65 毫秒和 2.91 毫秒的延迟。启用 `jitter` 后,这些数字分别减少 1.7 ms 和 2.69 ms。我们通过 `http/1.1` 协议的 [`Istio 基准测试`](https://github.com/istio/tools/tree/{{< source_branch_name >}}/perf/benchmark)获得了结果,测试标准是每秒 1000 请求,负载为 1KB,使用了 16 个客户端连接和 2 个代理,双向 TLS 打开状态。 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
即带有遥测功能的 Istio v2 -> 即带有遥测功能v2的 Istio
| - `telemetryv2-nullvm_serveronly` 使用遥测 v2 的 **server-sidecars** 模式。目标是将来执行与 "No Mixer" 相同的功能。 | ||
| - `baseline` 客户端 Pod 直接调用服务端 Pod,没有 Sidecar 参与。 | ||
| - `none_both` Istio 代理,未配置 Istio 特定的过滤器。 | ||
| - `v2-stats-wasm_both` 客户端和服务器 Sidecar 与遥测版本 v2 `v8`配置在一起。 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
客户端和服务器 Sidecar 与遥测版本 v2 v8配置在一起。
->
客户端和服务器 Sidecar 同时配置v8 js的wasm引擎的第二版遥测。
| - `baseline` 客户端 Pod 直接调用服务端 Pod,没有 Sidecar 参与。 | ||
| - `none_both` Istio 代理,未配置 Istio 特定的过滤器。 | ||
| - `v2-stats-wasm_both` 客户端和服务器 Sidecar 与遥测版本 v2 `v8`配置在一起。 | ||
| - `v2-stats-nullvm_both` 默认情况下,客户端和服务器 Sidecar 与遥测版本 v2 `nullvm` 一起提供。 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
客户端和服务器 Sidecar 同时配置nullvm的wasm引擎的第2版遥测。
| - `none_both` Istio 代理,未配置 Istio 特定的过滤器。 | ||
| - `v2-stats-wasm_both` 客户端和服务器 Sidecar 与遥测版本 v2 `v8`配置在一起。 | ||
| - `v2-stats-nullvm_both` 默认情况下,客户端和服务器 Sidecar 与遥测版本 v2 `nullvm` 一起提供。 | ||
| - `v2-sd-full-nullvm_both` 在配置了遥测 v2 `nullvm` 的情况下,导出 Stackdriver 指标、访问日志和边缘。 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
在配置了遥测 v2 nullvm 的情况下,导出 Stackdriver 指标、访问日志和边缘。
P.S 我搞不懂什么是edge
| Istiod 根据用户编写的配置文件和系统当前状态来配置 Sidecar 代理。在 Kubernetes 环境中,自定义资源定义(CRDs)和部署构成了系统的配置和状态。像网关和虚拟服务这样的 Istio 配置对象提供了用户编写配置的能力。Istiod 综合处理配置和系统状态,生成代理的配置信息,这些配置和系统状态源自 Kubernetes 环境和用户编写的配置文件。 | ||
|
|
||
| 控制平面支持数千个服务,分布在数千个 pod 上,所需的用户自有虚拟服务和其它配置对象的数量级与之类似。Pilot 的 CPU 和内存资源需求量与系统配置和可能状态的量级成正比。CPU 消耗的变化取决于以下因素: | ||
| 控制平面支持数千个服务,分布在数千个 Pod 上,所需的用户自有虚拟服务和其它配置对象的数量级与之类似。Istiod 的 CPU 和内存需求随着配置和可能的系统状态的数量量而扩展。CPU 消耗的变化取决于以下因素: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
... 可能的系统状态的数量量而扩展 ->
... 可能的系统状态的数量而增长
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Generally LGTM
| Istio 以十分便捷且对应用程序透明的方式,为已部署的服务创建网络,提供完善的网络功能,包括:路由规则、负载均衡、服务到服务的验证以及监控等。Istio 致力于用最小的资源开销实现最大的便易性,旨在支持高请求率非常大规模的网格,同时让延迟最小化。 | ||
|
|
||
| Istio 的数据平面组件 Envoy 代理用来处理通过系统的数据流。控制平面组件如 Pilot、Galley 和 Citadel 负责配置数据平面。数据平面和控制平面有不同的性能关注点。 | ||
| Istio 的数据平面组件,即 Envoy 代理,用来处理通过系统的数据流。控制平面组件 Istio 负责配置数据平面。数据平面和控制平面有不同的性能问题。 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reconsider that Istio or Istiod ?
| ## 控制平面性能 {#control-plane-performance} | ||
|
|
||
| Pilot 根据用户编写的配置文件和系统当前状态来配置 sidecar 代理。在 Kubernetes 环境中,自定义资源定义(CRDs)和部署构成了系统的配置和状态。像网关和虚拟服务这样的 Istio 配置对象提供了用户编写配置的能力。Pilot 综合处理配置和系统状态,生成代理的配置信息。这些配置和系统状态源自 Kubernetes 环境和用户编写的配置文件。 | ||
| Istiod 根据用户编写的配置文件和系统当前状态来配置 Sidecar 代理。在 Kubernetes 环境中,自定义资源定义(CRDs)和部署构成了系统的配置和状态。像网关和虚拟服务这样的 Istio 配置对象提供了用户编写配置的能力。Istiod 综合处理配置和系统状态,生成代理的配置信息,这些配置和系统状态源自 Kubernetes 环境和用户编写的配置文件。 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
像网关和虚拟服务这样的 Istio 配置对象提供了用户编写配置的能力 -> 为网关和虚拟服务这样的 Istio 配置对象提供了用户编写配置的能力
|
@orangegzx: The following test failed, say
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here. |
|
@orangegzx: PR needs rebase. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
|
/close This is outdated and the author has no any response in 15 months to the comments. |
[ ] Configuration Infrastructure
[x] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure