Skip to content

Commit 03335da

Browse files
committed
Sync istio#16846 add initial ambient mc perf doc into Chinese
1 parent 14def70 commit 03335da

File tree

3 files changed

+56
-0
lines changed

3 files changed

+56
-0
lines changed
72.5 KB
Loading
65.6 KB
Loading
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
---
2+
title: Ambient 多集群性能
3+
description: Ambient 多集群性能和可扩展性摘要。
4+
weight: 30
5+
keywords:
6+
- performance
7+
- scalability
8+
- scale
9+
- multicluster
10+
owner: istio/wg-environments-maintainers
11+
test: n/a
12+
---
13+
14+
使用 Ambient 模式的多集群部署,您可以以最小的开销提供真正具有全局弹性的大规模应用程序。
15+
除了常规功能外,Istio 控制平面还会在所有远程集群上创建监视点,
16+
以保持每个集群提供的全局服务列表的最新状态。
17+
Istio 数据平面可以将流量路由到这些远程全局服务,既可以作为正常流量分发的一部分,
18+
也可以在本地服务不可用时专门进行路由。
19+
20+
## 控制平面性能 {#control-plane-performance}
21+
22+
[此处](/zh/docs/ops/deployment/performance-and-scalability)所述,
23+
Istio 控制平面的扩展通常是部署变更、配置变更和连接代理数量的乘积。
24+
Ambient 多集群为控制平面的可扩展性增加了两个新维度:远程集群数量和远程服务数量。
25+
由于控制平面不为远程集群编写代理(假设采用多主部署拓扑),
26+
因此向网格中添加 10 个远程服务对控制平面性能的影响远低于添加 10 个本地服务。
27+
28+
Our multicluster control plane load test created 300 services with 4000 endpoints in each of 10 clusters, and added these clusters to the mesh one at a time. The approximate control plane impact of adding a remote cluster at this scale was **1% of a CPU core, and 180 MB of memory**. At this scale, it should be safe to scale well beyond 10 clusters in a mesh with a properly scaled control plane. One item to note is that for multicluster scalability, horizontally scaling the control plane will not help, as each control plane instance maintains a complete cache of remote services. Instead, we recommend modifying the resource requests and limits of the control plane to scale vertically to meet the needs of your multicluster mesh.
29+
我们的多集群控制平面负载测试在 10 个集群中分别创建了 300 个服务,
30+
包含 4000 个端点,并将这些集群逐个添加到网格中。
31+
以这种规模添加远程集群对控制平面的影响约为 **1% 的 CPU 核心和 180 MB 内存**
32+
在这种规模下,如果控制平面规模适当,在网格中扩展到 10 个集群以上应该是安全的。
33+
需要注意的是,对于多集群可扩展性,水平扩展控制平面无济于事,
34+
因为每个控制平面实例都维护着完整的远程服务缓存。我们建议您修改控制平面的资源请求和限制,
35+
进行垂直扩展以满足多集群网格的需求。
36+
37+
## 数据平面性能 {#data-plane-performance}
38+
39+
当流量路由到远程集群时,源数据平面会建立一条通往目标集群东西向网关的加密隧道。
40+
然后,它会在第一个隧道内部建立一条二级加密隧道,该隧道终止于目标数据平面。
41+
这种内外隧道的使用使得数据平面能够安全地与远程集群通信,
42+
而无需了解哪些 Pod IP 代表哪些服务的详细信息。
43+
44+
This double encryption does carry some overhead, however. The data plane load test measures the response latency of traffic between pods in the same cluster, versus those in two different clusters, to understand the impact of double encryption on latency. Additionally, double encryption requires double handshakes, which disproportionately affects the latency of new connections to the remote cluster. As you can see below, our initial connections observed an average of 2.2 milliseconds (346%) additional latency, while requests using existing connections observed an increase of 0.13 milliseconds (72%). While these numbers appear significant, it is expected that most multicluster traffic will cross availability zones or regions, and the observed increase in overhead latency will be minimal compared to the overall transit latency between data centers.
45+
然而,这种双重加密确实会带来一些开销。
46+
数据平面负载测试测量了同一集群内 Pod 之间以及两个不同集群之间 Pod 之间的流量响应延迟,
47+
以了解双重加密对延迟的影响。此外,双重加密需要两次握手,
48+
这会不成比例地影响到与远程集群的新连接的延迟。如下所示,
49+
我们的初始连接平均观察到 2.2 毫秒(346%)的额外延迟,
50+
而使用现有连接的请求则观察到 0.13 毫秒(72%)的增加。
51+
虽然这些数字看起来很显著,但预计大多数多集群流量将跨可用区或区域,
52+
并且与数据中心之间的整体传输延迟相比,观察到的开销延迟的增加将是微不足道的。
53+
54+
{{< image link="./ambient-mc-dataplane-reconnect.png" caption="重新连接的请求延迟" width="90%" >}}
55+
56+
{{< image link="./ambient-mc-dataplane-existing.png" caption="无需重新连接即可请求延迟" width="90%" >}}

0 commit comments

Comments
 (0)