เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบเบฒเบ™เบšเปเบฅเบดเป‚เบžเบ CPU เบชเปเบฒเบฅเบฑเบš Istio เปเบฅเบฐ Linkerd

เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบเบฒเบ™เบšเปเบฅเบดเป‚เบžเบ CPU เบชเปเบฒเบฅเบฑเบš Istio เปเบฅเบฐ Linkerd

เบเบฒเบ™เบ™เปเบฒเบชเบฐเป€เบซเบ™เบต

เบžเบงเบเป€เบฎเบปเบฒเบขเบนเปˆเปƒเบ™ Shopify เป€เบฅเบตเปˆเบกเบ™เบณเปƒเบŠเป‰ Istio เป€เบ›เบฑเบ™เบ•เบฒเปœเปˆเบฒเบ‡เบšเปเบฅเบดเบเบฒเบ™. เปƒเบ™เบซเบผเบฑเบเบเบฒเบ™, เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เปเบกเปˆเบ™เบ”เบต, เบเบปเบเป€เบงเบฑเป‰เบ™เบชเบดเปˆเบ‡เบ”เบฝเบง: เบกเบฑเบ™เปเบกเปˆเบ™เบฅเบฒเบ„เบฒเปเบžเบ‡.

ะ’ เบ”เบฑเบ”เบŠเบฐเบ™เบตเบ—เบตเปˆเป€เบœเบตเบเปเบœเปˆ เบชเปเบฒเบฅเบฑเบš Istio เบกเบฑเบ™เป€เบงเบปเป‰เบฒเบงเปˆเบฒ:

เบ”เป‰เบงเบ Istio 1.1, เบ•เบปเบงเปเบ—เบ™เบˆเบฐเบšเปเบฅเบดเป‚เบžเบเบ›เบฐเบกเบฒเบ™ 0,6 vCPUs (เปเบเบ™ virtual) เบ•เปเปˆ 1000 เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ•เปเปˆเบงเบดเบ™เบฒเบ—เบต.

เบชเปเบฒเบฅเบฑเบšเบžเบฒเบเบžเบทเป‰เบ™เบ—เปเบฒเบญเบดเบ”เปƒเบ™เบ•เบฒเบซเบ™เปˆเบฒเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™ (2 proxies เปƒเบ™เปเบ•เปˆเบฅเบฐเบ”เป‰เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆ), เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบกเบต 1200 cores เบžเบฝเบ‡เปเบ•เปˆเบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเปเบ—เบ™, เปƒเบ™เบญเบฑเบ”เบ•เบฒเบซเบ™เบถเปˆเบ‡เบฅเป‰เบฒเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ•เปเปˆเบงเบดเบ™เบฒเบ—เบต. เบญเบตเบ‡โ€‹เบ•เบฒเบกโ€‹เบเบฒเบ™โ€‹เบ„เบดเบ”โ€‹เป„เบฅเปˆโ€‹เบ„เปˆเบฒโ€‹เปƒเบŠเป‰โ€‹เบˆเปˆเบฒเบโ€‹เบ‚เบญเบ‡โ€‹เบเบนโ€‹เป‚เบโ€‹, เบกเบฑเบ™โ€‹เป€เบฎเบฑเบ”โ€‹เบงเบฝเบโ€‹เบญเบญเบโ€‹เป€เบ›เบฑเบ™โ€‹เบ›เบฐโ€‹เบกเบฒเบ™ $40 / เป€เบ”เบทเบญเบ™ / เบซเบผเบฑเบโ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹เบ•เบฑเป‰เบ‡โ€‹เบ„เปˆเบฒโ€‹. n1-standard-64, เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบžเบฒเบเบžเบทเป‰เบ™เบ™เบตเป‰เบžเบฝเบ‡เปเบ•เปˆเบˆเบฐเป€เบชเบเบ„เปˆเบฒเปƒเบŠเป‰เบˆเปˆเบฒเบเบซเบผเบฒเบเบเบงเปˆเบฒ 50 เบžเบฑเบ™เป‚เบ”เบฅเบฒเบ•เปเปˆเป€เบ”เบทเบญเบ™เบชเปเบฒเบฅเบฑเบš 1 เบฅเป‰เบฒเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ•เปเปˆเบงเบดเบ™เบฒเบ—เบต.

Ivan Sim (Ivan Sim) เบ›เบฝเบšเบ—เบฝเบšเบชเบฒเบเบ•เบฒ service mesh เบŠเบฑเบเบŠเป‰เบฒเปƒเบ™เบ›เบตเบเบฒเบเบ™เบตเป‰เปเบฅเบฐเบชเบฑเบ™เบเบฒเบ”เบฝเบงเบเบฑเบ™เบชเปเบฒเบฅเบฑเบšเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเปเบฅเบฐเป‚เบ›เป€เบŠเบ”เป€เบŠเบต, เปเบ•เปˆเบกเบฑเบ™เบšเปเปˆเป„เบ”เป‰เบœเบปเบ™:

เบ›เบฒเบเบปเบ”เบ‚เบทเป‰เบ™, values-istio-test.yaml เบˆเบฐเป€เบžเบตเปˆเบกเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป CPU เบขเปˆเบฒเบ‡เบˆเบดเบ‡เบˆเบฑเบ‡. เบ–เป‰เบฒเบ‚เป‰เบญเบเป€เบฎเบฑเบ”เบ„เบฐเบ™เบดเบ”เบชเบฒเบ”เบขเปˆเบฒเบ‡เบ–เบทเบเบ•เป‰เบญเบ‡, เบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เบ›เบฐเบกเบฒเบ™ 24 CPU cores เบชเปเบฒเบฅเบฑเบšเปเบœเบ‡เบ„เบงเบšเบ„เบธเบกเปเบฅเบฐ 0,5 CPU เบชเปเบฒเบฅเบฑเบšเปเบ•เปˆเบฅเบฐเบ•เบปเบงเปเบ—เบ™. เบ‚เป‰เบญเบเบšเปเปˆเบกเบตเบซเบผเบฒเบ. เบ‚เป‰เบญเบเบˆเบฐเป€เบฎเบฑเบ”เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ„เบทเบ™เบญเบตเบเป€เบกเบทเปˆเบญเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบ–เบทเบเบˆเบฑเบ”เบชเบฑเบ™เปƒเบซเป‰เบ‚เป‰เบญเบ.

เบ‚เป‰เบญเบเบขเบฒเบเป€เบซเบฑเบ™เบ•เบปเบงเป€เบญเบ‡เบงเปˆเบฒเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบ‚เบญเบ‡ Istio เบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบเบฑเบšเบ•เบฒเปœเปˆเบฒเบ‡เบšเปเบฅเบดเบเบฒเบ™เปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”เบญเบทเปˆเบ™เปเบ™เบงเปƒเบ”: Linkerd.

เบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบ•เบฒเบซเบ™เปˆเบฒเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™

เบเปˆเบญเบ™เบญเบทเปˆเบ™ เปเบปเบ”, เบ‚เป‰เบญเบเบ•เบดเบ”เบ•เบฑเป‰เบ‡เบกเบฑเบ™เบขเบนเปˆเปƒเบ™เบเบธเปˆเบก SuperGloo:

$ supergloo init
installing supergloo version 0.3.12
using chart uri https://storage.googleapis.com/supergloo-helm/charts/supergloo-0.3.12.tgz
configmap/sidecar-injection-resources created
serviceaccount/supergloo created
serviceaccount/discovery created
serviceaccount/mesh-discovery created
clusterrole.rbac.authorization.k8s.io/discovery created
clusterrole.rbac.authorization.k8s.io/mesh-discovery created
clusterrolebinding.rbac.authorization.k8s.io/supergloo-role-binding created
clusterrolebinding.rbac.authorization.k8s.io/discovery-role-binding created
clusterrolebinding.rbac.authorization.k8s.io/mesh-discovery-role-binding created
deployment.extensions/supergloo created
deployment.extensions/discovery created
deployment.extensions/mesh-discovery created
install successful!

เบ‚เป‰เบญเบเป„เบ”เป‰เปƒเบŠเป‰ SuperGloo เป€เบžเบฒเบฐเบงเปˆเบฒเบกเบฑเบ™เป€เบฎเบฑเบ”เปƒเบซเป‰เบเบฒเบ™เป€เบ›เบตเบ”เบ•เบฒเปœเปˆเบฒเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ‡เปˆเบฒเบเบ‚เบถเป‰เบ™เบซเบผเบฒเบ. เบ‚เป‰เบญเบเบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป€เบฎเบฑเบ”เบซเบเบฑเบ‡เบซเบผเบฒเบ. เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเป„เบ”เป‰เปƒเบŠเป‰ SuperGloo เปƒเบ™เบเบฒเบ™เบœเบฐเบฅเบดเบ”, เปเบ•เปˆเบกเบฑเบ™เป€เบซเบกเบฒเบฐเบชเบปเบกเบชเปเบฒเบฅเบฑเบšเบงเบฝเบเบ‡เบฒเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบง. เบ‚เป‰เบญเบเบ•เป‰เบญเบ‡เปƒเบŠเป‰ เบ„เบณ เบชเบฑเปˆเบ‡เบชเบญเบ‡เบชเบฒเบก เบ„เบณ เบชเบณ เบฅเบฑเบšเปเบ•เปˆเบฅเบฐเบ•เบฒเบ‚เปˆเบฒเบเบšเปเบฅเบดเบเบฒเบ™. เบ‚เป‰เบญเบเปƒเบŠเป‰เบชเบญเบ‡เบเบธเปˆเบกเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป‚เบ”เบ”เบ”เปˆเบฝเบง - เปเบ•เปˆเบฅเบฐเบเบธเปˆเบกเบชเปเบฒเบฅเบฑเบš Istio เปเบฅเบฐ Linkerd.

เบเบฒเบ™เบ—เบปเบ”เบฅเบญเบ‡เป„เบ”เป‰เบ”เปเบฒเป€เบ™เบตเบ™เบขเบนเปˆเปƒเบ™ Google Kubernetes Engine. เบ‚เป‰เบญเบเปƒเบŠเป‰ Kubernetes 1.12.7-gke.7 เปเบฅเบฐเบชเบฐเบ™เบธเบเป€เบเบตเบ‚เบญเบ‡เบ‚เปเป‰ n1-standard-4 เบ”เป‰เบงเบโ€‹เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบ‚เปเป‰โ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ” (เบ•เปเบฒโ€‹เปˆโ€‹เบชเบธเบ”โ€‹เบ—เบตเปˆ 4โ€‹, เบชเบนเบ‡โ€‹เบชเบธเบ” 16โ€‹)โ€‹.

เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบ‚เป‰เบญเบเป„เบ”เป‰เบ•เบดเบ”เบ•เบฑเป‰เบ‡เปเบ–เบšเบšเปเบฅเบดเบเบฒเบ™เบ—เบฑเบ‡เบชเบญเบ‡เบˆเบฒเบเป€เบชเบฑเป‰เบ™เบ„เปเบฒเบชเบฑเปˆเบ‡.

เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบ„เบฑเป‰เบ‡เบ—เปเบฒเบญเบดเบ”:

$ supergloo install linkerd --name linkerd
+---------+--------------+---------+---------------------------+
| INSTALL |     TYPE     | STATUS  |          DETAILS          |
+---------+--------------+---------+---------------------------+
| linkerd | Linkerd Mesh | Pending | enabled: true             |
|         |              |         | version: stable-2.3.0     |
|         |              |         | namespace: linkerd        |
|         |              |         | mtls enabled: true        |
|         |              |         | auto inject enabled: true |
+---------+--------------+---------+---------------------------+

เบซเบผเบฑเบ‡โ€‹เบˆเบฒเบโ€‹เบ™เบฑเป‰เบ™โ€‹, Istioโ€‹:

$ supergloo install istio --name istio --installation-namespace istio-system --mtls=true --auto-inject=true
+---------+------------+---------+---------------------------+
| INSTALL |    TYPE    | STATUS  |          DETAILS          |
+---------+------------+---------+---------------------------+
| istio   | Istio Mesh | Pending | enabled: true             |
|         |            |         | version: 1.0.6            |
|         |            |         | namespace: istio-system   |
|         |            |         | mtls enabled: true        |
|         |            |         | auto inject enabled: true |
|         |            |         | grafana enabled: true     |
|         |            |         | prometheus enabled: true  |
|         |            |         | jaeger enabled: true      |
+---------+------------+---------+---------------------------+

เบเบฒเบ™เบ‚เบฑเบ”เบ‚เป‰เบญเบ‡เปƒเบŠเป‰เป€เบงเบฅเบฒเบชเบญเบ‡เบชเบฒเบกเบ™เบฒเบ—เบต, เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เปเบœเบ‡เบ„เบงเบšเบ„เบธเบกเป„เบ”เป‰เบชเบฐเบ–เบฝเบ™เบฅเบฐเบžเบฒเบš.

(เปเบฒเบเป€เบซเบ”: SuperGloo เบฎเบญเบ‡เบฎเบฑเบšเบชเบฐเป€เบžเบฒเบฐ Istio 1.0.x เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™. เบ‚เป‰เบญเบเป„เบ”เป‰เป€เบฎเบฑเบ”เบเบฒเบ™เบ—เบปเบ”เบฅเบญเบ‡เบญเบตเบเบ„เบฑเป‰เบ‡เบเบฑเบš Istio 1.1.3, เปเบ•เปˆเบšเปเปˆเป„เบ”เป‰เบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™เบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เบ—เบตเปˆเป€เบซเบฑเบ™เป„เบ”เป‰เบŠเบฑเบ”เป€เบˆเบ™.)

เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ Istio เบเบฒเบ™เบ™เบณเปƒเบŠเป‰เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”

เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เปƒเบซเป‰ Istio เบ•เบดเบ”เบ•เบฑเป‰เบ‡ sidecar Envoy, เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰ sidecar injector โˆ’ MutatingAdmissionWebhook. เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบšเปเปˆเป€เบงเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเบกเบฑเบ™เปƒเบ™เบšเบปเบ”เบ„เบงเบฒเบกเบ™เบตเป‰. เปƒเบซเป‰เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบžเบฝเบ‡เปเบ•เปˆเป€เบงเบปเป‰เบฒเบงเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบ•เบปเบงเบ„เบงเบšเบ„เบธเบกเบ—เบตเปˆเบ•เบดเบ”เบ•เบฒเบกเบเบงเบ”เบเบฒเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ‚เบญเบ‡เบเบฑเบเปƒเบซเบกเปˆเบ—เบฑเบ‡เบซเบกเบปเบ”เปเบฅเบฐเปเบšเบšเป€เบ„เบทเปˆเบญเบ™เป„เบซเบงเป€เบžเบตเปˆเบก sidecar เปเบฅเบฐ initContainer, เป€เบŠเบดเปˆเบ‡เบฎเบฑเบšเบœเบดเบ”เบŠเบญเบšเบชเปเบฒเบฅเบฑเบšเบงเบฝเบเบ‡เบฒเบ™. iptables.

เบžเบงเบเป€เบฎเบปเบฒเบขเบนเปˆ Shopify เป„เบ”เป‰เบ‚เบฝเบ™เบ•เบปเบงเบ„เบงเบšเบ„เบธเบกเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบญเบ‡เป€เบžเบทเปˆเบญเบ›เบฐเบ•เบดเบšเบฑเบ”เบฅเบปเบ”เบ‚เป‰เบฒเบ‡, เปเบ•เปˆเบชเปเบฒเบฅเบฑเบšเบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบ™เบตเป‰เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เปƒเบŠเป‰เบ•เบปเบงเบ„เบงเบšเบ„เบธเบกเบ—เบตเปˆเบกเบฒเบžเป‰เบญเบกเบเบฑเบš Istio. เบ•เบปเบงเบ„เบงเบšเบ„เบธเบกเบˆเบฐเปƒเบชเปˆเบฅเบปเบ” sidecars เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป€เบกเบทเปˆเบญเบกเบตเบ—เบฒเบ‡เบฅเบฑเบ”เบขเบนเปˆเปƒเบ™ namespace istio-injection: enabled:

$ kubectl label namespace irs-client-dev istio-injection=enabled
namespace/irs-client-dev labeled

$ kubectl label namespace irs-server-dev istio-injection=enabled
namespace/irs-server-dev labeled

เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡ Linkerd เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”

เป€เบžเบทเปˆเบญเบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบเบฒเบ™เบเบฑเบ‡ sidecar Linkerd, เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰เบ„เปเบฒเบšเบฑเบ™เบเบฒเบ (เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เป€เบžเบตเปˆเบกเปƒเบซเป‰เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบ”เป‰เบงเบเบ•เบปเบ™เป€เบญเบ‡เป‚เบ”เบเบœเปˆเบฒเบ™ kubectl edit):

metadata:
  annotations:
    linkerd.io/inject: enabled

$ k edit ns irs-server-dev 
namespace/irs-server-dev edited

$ k get ns irs-server-dev -o yaml
apiVersion: v1
kind: Namespace
metadata:
  annotations:
    linkerd.io/inject: enabled
  name: irs-server-dev
spec:
  finalizers:
  - kubernetes
status:
  phase: Active

Istio Fault Tolerance Simulator

เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบชเป‰เบฒเบ‡เป€เบ„เบทเปˆเบญเบ‡เบˆเบณเบฅเบญเบ‡เบ„เบงเบฒเบกเบ—เบปเบ™เบ—เบฒเบ™เบ•เปเปˆเบ„เบงเบฒเบกเบœเบดเบ”เบ—เบตเปˆเป€เบญเบตเป‰เบ™เบงเปˆเบฒ Istio เป€เบžเบทเปˆเบญเบ—เบปเบ”เบฅเบญเบ‡เบเบฑเบšเบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบ—เบตเปˆเป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฑเบเบ‚เบญเบ‡ Shopify. เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบ•เป‰เบญเบ‡โ€‹เบเบฒเบ™โ€‹เป€เบ„เบทเปˆเบญเบ‡โ€‹เบกเบทโ€‹เปƒเบ™โ€‹เบเบฒเบ™โ€‹เบชเป‰เบฒเบ‡ topology เปเบšเบšโ€‹เบเปเบฒโ€‹เบ™เบปเบ”โ€‹เป€เบญเบ‡โ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เป€เบ›เบฑเบ™โ€‹เบ•เบปเบงโ€‹เปเบ—เบ™โ€‹เบ‚เบญเบ‡โ€‹เบšเบฒเบ‡โ€‹เบชเปˆเบงเบ™โ€‹เบชเบฐโ€‹เป€เบžเบฒเบฐโ€‹เบ‚เบญเบ‡โ€‹เบโ€‹เบฃเบฒโ€‹เบŸโ€‹เบเบฒเบ™โ€‹เบšเปโ€‹เบฅเบดโ€‹เบเบฒเบ™โ€‹เบ‚เบญเบ‡โ€‹เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹, เบเบฒเบ™โ€‹เบ•เบฑเป‰เบ‡โ€‹เบ„เปˆเบฒโ€‹เปเบšเบšโ€‹เป€เบ„เบทเปˆเบญเบ™โ€‹เป„เบซเบงโ€‹เป€เบžเบทเปˆเบญโ€‹เบชเป‰เบฒเบ‡โ€‹เปเบšเบšโ€‹เบˆเปเบฒโ€‹เบฅเบญเบ‡โ€‹เบงเบฝเบโ€‹เบ‡เบฒเบ™โ€‹เบชเบฐโ€‹เป€เบžเบฒเบฐโ€‹เปƒเบ”โ€‹เบซเบ™เบถเปˆเบ‡โ€‹.

เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡ Shopify เปเบกเปˆเบ™เบขเบนเปˆเบžเบฒเบเปƒเบ•เป‰เบเบฒเบ™เป‚เบซเบผเบ”เบซเบ™เบฑเบเปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบ‚เบฒเบเปเบŸเบ”. เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™, Shopify เปเบ™เบฐเบ™เปเบฒเปƒเบซเป‰เบœเบนเป‰เบ‚เบฒเบเบ–เบทเบเบฒเบ™เบ‚เบฒเบเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเป€เบฅเบทเป‰เบญเบเป†. เบšเบฒเบ‡เบ„เบฑเป‰เบ‡เบฅเบนเบเบ„เป‰เบฒเบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเป€เบ•เบทเบญเบ™เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ‚เบฒเบเปเบŸเบ”เบ—เบตเปˆเบงเบฒเบ‡เปเบœเบ™เป„เบงเป‰. เบ„เบปเบ™เบญเบทเปˆเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบžเบงเบเบกเบฑเบ™เป‚เบ”เบเบšเปเปˆเบ„เบฒเบ”เบ„เบดเบ”เบชเปเบฒเบฅเบฑเบšเบžเบงเบเป€เบฎเบปเบฒเบ—เบธเบเป€เบงเบฅเบฒเบ‚เบญเบ‡เบกเบทเป‰เบซเบผเบทเบเบฒเบ‡เบ„เบทเบ™.

เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบ„เบทเปˆเบญเบ‡เบˆเบณเบฅเบญเบ‡เบ„เบงเบฒเบกเบขเบทเบ”เบขเบธเปˆเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เปเบšเบšเบˆเปเบฒเบฅเบญเบ‡เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ—เบตเปˆเบเบปเบ‡เบเบฑเบš topologies เปเบฅเบฐ workloads เบ—เบตเปˆ overwhelmed เป‚เบ„เบ‡เบฅเปˆเบฒเบ‡เบ‚เบญเบ‡ Shopify เปƒเบ™เป„เบฅเบเบฐเบœเปˆเบฒเบ™เบกเบฒ. เบˆเบธเบ”เบ›เบฐเบชเบปเบ‡เบ•เบปเป‰เบ™เบ•เปเบ‚เบญเบ‡เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ•เบฒเบซเบ™เปˆเบฒเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เปเบกเปˆเบ™เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบ„เบงเบฒเบกเบซเบ™เป‰เบฒเป€เบŠเบทเปˆเบญเบ–เบทเปเบฅเบฐเบ„เบงเบฒเบกเบ—เบปเบ™เบ—เบฒเบ™เบ•เปเปˆเบ„เบงเบฒเบกเบœเบดเบ”เปƒเบ™เบฅเบฐเบ”เบฑเบšเป€เบ„เบทเบญเบ‚เปˆเบฒเบ, เปเบฅเบฐเบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบชเปเบฒเบฅเบฑเบšเบžเบงเบเป€เบฎเบปเบฒเบ—เบตเปˆเบ•เบฒเบซเบ™เปˆเบฒเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบชเบฒเบกเบฒเบ”เบฎเบฑเบšเบกเบทเบเบฑเบšเบเบฒเบ™เป‚เบซเบผเบ”เบ—เบตเปˆเบ‚เบฑเบ”เบ‚เบงเบฒเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบเปˆเบญเบ™เบซเบ™เป‰เบฒเบ™เบตเป‰.

เบซเบปเบงเปƒเบˆเบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เบˆเบณเบฅเบญเบ‡เบ„เบงเบฒเบกเบ—เบปเบ™เบ—เบฒเบ™เบ•เปเปˆเบ„เบงเบฒเบกเบœเบดเบ”เปเบกเปˆเบ™เป‚เบซเบ™เบ”เบ‚เบญเบ‡เบœเบนเป‰เบญเบญเบเปเบฎเบ‡เบ‡เบฒเบ™, เป€เบŠเบดเปˆเบ‡เป€เบฎเบฑเบ”เปœเป‰เบฒเบ—เบตเปˆเป€เบ›เบฑเบ™เปเบ–เบšเบ•เบฒเปœเปˆเบฒเบ‡เบšเปเบฅเบดเบเบฒเบ™. เป‚เบ™เบ”เบœเบนเป‰เป€เบฎเบฑเบ”เบงเบฝเบเบชเบฒเบกเบฒเบ”เบ–เบทเบเบ•เบฑเป‰เบ‡เบ„เปˆเบฒเปเบšเบšเบ„เบปเบ‡เบ—เบตเปˆเปƒเบ™เบ•เบญเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ เบซเบผเบทเปเบšเบšเป€เบ„เบทเปˆเบญเบ™เป„เบซเบงเบœเปˆเบฒเบ™ REST API. เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเปเบšเบšเป€เบ„เบทเปˆเบญเบ™เป„เบซเบงเบ‚เบญเบ‡ nodes เบžเบฐเบ™เบฑเบเบ‡เบฒเบ™เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเปƒเบ™เบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบเบฒเบ™เบ–เบปเบ”เบ–เบญเบ.

เบ™เบตเป‰เปเบกเปˆเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบง:

  • เบžเบงเบเป€เบฎเบปเบฒเป€เบ›เบตเบ”เบ•เบปเบง 10 เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเป€เบ›เบฑเบ™ bar เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ—เบตเปˆเปƒเบซเป‰เบ„เปเบฒเบ•เบญเบš 200/OK เบซเบผเบฑเบ‡เบˆเบฒเบ 100 ms.
  • เบžเบงเบเป€เบฎเบปเบฒเป€เบ›เบตเบ”เบ•เบปเบงเบฅเบนเบเบ„เป‰เบฒ 10 เบ„เบปเบ™ - เปเบ•เปˆเบฅเบฐเบ„เบปเบ™เบชเบปเปˆเบ‡ 100 เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ•เปเปˆเบงเบดเบ™เบฒเบ—เบตเป„เบ›เบซเบฒ bar.
  • เบ—เบธเบเป† 10 เบงเบดเบ™เบฒเบ—เบตเบžเบงเบเป€เบฎเบปเบฒเป€เบญเบปเบฒ 1 เป€เบŠเบตเบšเป€เบงเบตเปเบฅเบฐเบเบงเบ”เบชเบญเบšเบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ” 5xx เบเปˆเบฝเบงเบเบฑเบšเบฅเบนเบเบ„เป‰เบฒ.

เปƒเบ™เบ•เบญเบ™เบ—เป‰เบฒเบเบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบ, เบžเบงเบเป€เบฎเบปเบฒเบเบงเบ”เป€เบšเบดเปˆเบ‡เบšเบฑเบ™เบ—เบถเบเปเบฅเบฐเบเบฒเบ™เบงเบฑเบ”เปเบ—เบเปเบฅเบฐเบเบงเบ”เป€เบšเบดเปˆเบ‡เบงเปˆเบฒเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบœเปˆเบฒเบ™. เบงเบดเบ—เบตเบ™เบตเป‰เบžเบงเบเป€เบฎเบปเบฒเบฎเบฝเบ™เบฎเบนเป‰เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‚เบญเบ‡เบ•เบฒเบซเบ™เปˆเบฒเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบฅเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบเบฒเบ™เบ–เบปเบ”เบ–เบญเบเป€เบžเบทเปˆเบญเบ—เบปเบ”เบชเบญเบšเบชเบปเบกเบกเบธเบ”เบ•เบดเบ–เบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบเปˆเบฝเบงเบเบฑเบšเบ„เบงเบฒเบกเบ—เบปเบ™เบ—เบฒเบ™เบ•เปเปˆเบ„เบงเบฒเบกเบœเบดเบ”.

(เปเบฒเบเป€เบซเบ”: เบžเบงเบเป€เบฎเบปเบฒเบเบณเบฅเบฑเบ‡เบ„เบดเบ”เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เป€เบ›เบตเบ”เปเบซเบผเปˆเบ‡เบ—เบตเปˆเบกเบฒเบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เบˆเบณเบฅเบญเบ‡เบ„เบงเบฒเบกเบ—เบปเบ™เบ—เบฒเบ™เบ„เบงเบฒเบกเบœเบดเบ” Istio, เปเบ•เปˆเบเบฑเบ‡เบšเปเปˆเบžเป‰เบญเบกเบ—เบตเปˆเบˆเบฐเป€เบฎเบฑเบ”เป€เบ—เบทเปˆเบญ.)

เป€เบ„เบทเปˆเบญเบ‡เบˆเบณเบฅเบญเบ‡เบ„เบงเบฒเบกเบ—เบปเบ™เบ—เบฒเบ™เบ•เปเปˆเบ„เบงเบฒเบกเบœเบดเบ” Istio เบชเปเบฒเบฅเบฑเบšเบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบ•เบฒเปœเปˆเบฒเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™

เบžเบงเบเป€เบฎเบปเบฒเบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบซเบผเบฒเบเบ‚เปเป‰เป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡ simulator:

  • irs-client-loadgen: 3 replicas เบ—เบตเปˆเบชเบปเปˆเบ‡ 100 เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ•เปเปˆเบงเบดเบ™เบฒเบ—เบตเบ•เปเปˆ irs-client.
  • irs-client: 3 replicas เบ—เบตเปˆเป„เบ”เป‰เบฎเบฑเบšเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เป, เบฅเปเบ–เป‰เบฒ 100ms เปเบฅเบฐเบชเบปเปˆเบ‡เบ•เปเปˆเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเปƒเบซเป‰ irs-server.
  • irs-server: 3 replicas เบ—เบตเปˆเบเบฑเบšเบ„เบทเบ™เบกเบฒ 200/OK เบซเบผเบฑเบ‡เบˆเบฒเบ 100 ms.

เบ”เป‰เบงเบเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ™เบตเป‰, เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบงเบฑเบ”เปเบ—เบเบเบฒเบ™เป„เบซเบผเบงเบฝเบ™เบ‚เบญเบ‡เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบ—เบตเปˆเบซเบกเบฑเป‰เบ™เบ„เบปเบ‡เบฅเบฐเบซเบงเปˆเบฒเบ‡ 9 เบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”. Sidecars เปƒเบ™ irs-client-loadgen ะธ irs-server เป„เบ”เป‰เบฎเบฑเบš 100 เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ•เปเปˆเบงเบดเบ™เบฒเบ—เบต, เปเบฅเบฐ irs-client โ€” 200 (เบ‚เบฒโ€‹เป€เบ‚เบปเป‰เบฒโ€‹เปเบฅเบฐโ€‹เบ‚เบฒโ€‹เบญเบญเบโ€‹)โ€‹.

เบžเบงเบเป€เบฎเบปเบฒเบ•เบดเบ”เบ•เบฒเบกเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เป‚เบ”เบเบœเปˆเบฒเบ™ DataDogเป€เบžเบฒเบฐเบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบกเบตเบเบธเปˆเบก Prometheus.

ะ ะตะทัƒะปัŒั‚ะฐั‚ั‹

เปเบœเบ‡เบ„เบงเบšเบ„เบธเบก

เบเปˆเบญเบ™เบญเบทเปˆเบ™ เปเบปเบ”, เบžเบงเบเป€เบฎเบปเบฒเบเบงเบ”เป€เบšเบดเปˆเบ‡เบเบฒเบ™เบšเปเบฅเบดเป‚เบžเบ CPU.

เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบเบฒเบ™เบšเปเบฅเบดเป‚เบžเบ CPU เบชเปเบฒเบฅเบฑเบš Istio เปเบฅเบฐ Linkerd
เปเบœเบ‡เบ„เบงเบšเบ„เบธเบก Linkerd ~22 millicore

เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบเบฒเบ™เบšเปเบฅเบดเป‚เบžเบ CPU เบชเปเบฒเบฅเบฑเบš Istio เปเบฅเบฐ Linkerd
เปเบœเบ‡เบ„เบงเบšเบ„เบธเบก Istio: ~750 millicore

เปเบœเบ‡เบ„เบงเบšเบ„เบธเบก Istio เปƒเบŠเป‰เบ›เบฐเบกเบฒเบ™ เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™ CPU เบซเบผเบฒเบเบเบงเปˆเบฒ 35 เป€เบ—เบปเปˆเบฒเบเปˆเบงเบฒ Linkerd. เปเบ™เปˆเบ™เบญเบ™, เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เบ–เบทเบเบ•เบดเบ”เบ•เบฑเป‰เบ‡เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เปเบฅเบฐ istio-telemetry เบšเปเบฅเบดเป‚เบžเบเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ‚เบญเบ‡เป‚เบ›เป€เบŠเบ”เป€เบŠเบตเบซเบผเบฒเบเบขเบนเปˆเบ—เบตเปˆเบ™เบตเป‰ (เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เบ›เบดเบ”เบเบฒเบ™เปƒเบŠเป‰เบ‡เบฒเบ™เป„เบ”เป‰เป‚เบ”เบเบเบฒเบ™เบ›เบดเบ”เบเบฒเบ™เบ—เปเบฒเบ‡เบฒเบ™เบšเบฒเบ‡เบขเปˆเบฒเบ‡). เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเป€เบญเบปเบฒเบญเบปเบ‡เบ›เบฐเบเบญเบšเบ™เบตเป‰เบญเบญเบ, เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เป„เบ”เป‰เบฎเบฑเบšเบซเบผเบฒเบเบเปˆเบงเบฒ 100 millicores, เบ™เบฑเป‰เบ™เปเบกเปˆเบ™ 4 เป€เบ—เบทเปˆเบญเบ‚เบทเป‰เบ™เป„เบ›เบเปˆเบงเบฒ Linkerd.

Sidecar proxy

เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเบ—เบปเบ”เบชเบญเบšเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ•เบปเบงเปเบ—เบ™. เบ„เบงเบ™เบˆเบฐเบกเบตเบ„เบงเบฒเบกเบชเปเบฒเบžเบฑเบ™เบ—เบฒเบ‡เป€เบชเบฑเป‰เบ™เบเบฑเบšเบˆเปเบฒเบ™เบงเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เป, เปเบ•เปˆเบชเปเบฒเบฅเบฑเบšเปเบ•เปˆเบฅเบฐ sidecar เบกเบตเบšเบฒเบ‡เบชเปˆเบงเบ™เป€เบเบตเบ™เบ—เบตเปˆเบกเบตเบœเบปเบ™เบเบฐเบ—เบปเบšเบ•เปเปˆเป€เบชเบฑเป‰เบ™เป‚เบ„เป‰เบ‡.

เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบเบฒเบ™เบšเปเบฅเบดเป‚เบžเบ CPU เบชเปเบฒเบฅเบฑเบš Istio เปเบฅเบฐ Linkerd
Linkerd: ~100 millicores เบชเปเบฒเบฅเบฑเบš irs-client, ~50 millicores เบชเปเบฒเบฅเบฑเบš irs-client-loadgen

เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเบกเบตเป€เบซเบ”เบœเบปเบ™, เป€เบžเบฒเบฐเบงเปˆเบฒเบ•เบปเบงเปเบ—เบ™เบฅเบนเบเบ„เป‰เบฒเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบชเบญเบ‡เป€เบ—เบปเปˆเบฒเบ‚เบญเบ‡ proxy loadgen: เบชเปเบฒเบฅเบฑเบšเบ—เบธเบเป†เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ—เบตเปˆเบญเบญเบเบกเบฒเบˆเบฒเบ loadgen, เบฅเบนเบเบ„เป‰เบฒเบกเบตเบซเบ™เบถเปˆเบ‡เบ‚เบฒเป€เบ‚เบปเป‰เบฒเปเบฅเบฐเบซเบ™เบถเปˆเบ‡เบ‚เบฒเบญเบญเบ.

เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบเบฒเบ™เบšเปเบฅเบดเป‚เบžเบ CPU เบชเปเบฒเบฅเบฑเบš Istio เปเบฅเบฐ Linkerd
Istio/Envoy: ~155 millicores เบชเปเบฒเบฅเบฑเบš irs-client, ~75 millicores เบชเปเบฒเบฅเบฑเบš irs-client-loadgen

เบžเบงเบเป€เบฎเบปเบฒเป€เบซเบฑเบ™เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบชเปเบฒเบฅเบฑเบšเบฅเบปเบ”เบ‚เป‰เบฒเบ‡ Istio.

เปเบ•เปˆเป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›, Istio/Envoy proxies เบšเปเบฅเบดเป‚เบžเบ เบ›เบฐเบกเบฒเบ™ 50% เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™ CPU เบซเบผเบฒเบเบเปˆเบงเบฒ Linkerd.

เบžเบงเบเป€เบฎเบปเบฒเป€เบซเบฑเบ™เป‚เบ„เบ‡เบเบฒเบ™เบ”เบฝเบงเบเบฑเบ™เบขเบนเปˆเบ‚เป‰เบฒเบ‡เป€เบŠเบตเบšเป€เบงเบต:

เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบเบฒเบ™เบšเปเบฅเบดเป‚เบžเบ CPU เบชเปเบฒเบฅเบฑเบš Istio เปเบฅเบฐ Linkerd
Linkerd: ~50 millicore เบชเปเบฒเบฅเบฑเบš irs-server

เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบเบฒเบ™เบšเปเบฅเบดเป‚เบžเบ CPU เบชเปเบฒเบฅเบฑเบš Istio เปเบฅเบฐ Linkerd
Istio/Envoy: ~80 millicore เบชเปเบฒเบฅเบฑเบš irs-server

เปƒเบ™เบ”เป‰เบฒเบ™เป€เบŠเบตเบšเป€เบงเบต, เบ‚เป‰เบฒเบ‡เบฅเบปเบ” Istio/Envoy เบšเปเบฅเบดเป‚เบžเบ เบ›เบฐเบกเบฒเบ™ 60% เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™ CPU เบซเบผเบฒเบเบเปˆเบงเบฒ Linkerd.

เบชเบฐเบซเบฅเบธเบš

เบ•เบปเบงเปเบ—เบ™ Istio Envoy เปƒเบŠเป‰ CPU เบซเบผเบฒเบเบเบงเปˆเบฒ Linkerd 50+% เปƒเบ™เบงเบฝเบเบ—เบตเปˆเบˆเบณเบฅเบญเบ‡เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. เปเบœเบ‡เบ„เบงเบšเบ„เบธเบก Linkerd เปƒเบŠเป‰เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบซเบ™เป‰เบญเบเบเบงเปˆเบฒ Istio, เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเบชเปเบฒเบฅเบฑเบšเบญเบปเบ‡เบ›เบฐเบเบญเบšเบซเบผเบฑเบ.

เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบ„เบดเบ”เบเปˆเบฝเบงเบเบฑเบšเบงเบดเบ—เบตเบเบฒเบ™เบซเบผเบธเบ”เบœเปˆเบญเบ™เบ„เปˆเบฒเปƒเบŠเป‰เบˆเปˆเบฒเบเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰. เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบกเบตเบ„เบงเบฒเบกเบ„เบดเบ”, เบเบฐเบฅเบธเบ™เบฒเปเบšเปˆเบ‡เบ›เบฑเบ™!

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: www.habr.com

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™