{"id":34366,"date":"2019-10-31T21:57:56","date_gmt":"2019-10-31T18:57:56","guid":{"rendered":"https:\/\/prohoster.info\/blog\/benchmark-potrebleniya-tsp-dlya-istio-i-linkerd\/"},"modified":"2019-10-31T21:57:56","modified_gmt":"2019-10-31T18:57:56","slug":"benchmark-potrebleniya-tsp-dlya-istio-i-linkerd","status":"publish","type":"post","link":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/benchmark-potrebleniya-tsp-dlya-istio-i-linkerd","title":{"rendered":"CPU-fogyaszt\u00e1si benchmark az Istio \u00e9s Linkerd sz\u00e1m\u00e1ra","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"CPU-fogyaszt\u00e1si benchmark az Istio \u00e9s Linkerd sz\u00e1m\u00e1ra\" src=\"\/wp-content\/uploads\/d176b132a69c09195803a1398df64637.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<h2 id=\"vvedenie\">Bevezet\u00e9s<\/h2>\n<p><\/p>\n<p>1cloud <noindex><a rel=\"nofollow\" href=\"https:\/\/www.shopify.ca\/\">Shopify<\/a><\/noindex> az Istio telep\u00edt\u00e9s\u00e9vel foglalkoztunk mint szolg\u00e1ltat\u00e1s h\u00e1l\u00f3zattal. Alapvet\u0151en minden rendben van, kiv\u00e9ve egy dolgot: <strong>ez dr\u00e1ga<\/strong>.<\/p>\n<p><\/p>\n<p>A <noindex><a rel=\"nofollow\" href=\"https:\/\/istio.io\/docs\/concepts\/performance-and-scalability\/#cpu-and-memory\">publik\u00e1lt benchmarkok<\/a><\/noindex> az Istior\u00f3l azt mondj\u00e1k:<\/p>\n<p><\/p>\n<blockquote><p>Az Istio 1.1 proxy k\u00f6r\u00fclbel\u00fcl 0,6 vCPU (virtu\u00e1lis processzor) ig\u00e9nyel 1000 k\u00e9relem m\u00e1sodpercenk\u00e9nt.<\/p><\/blockquote>\n<p>Az els\u0151 r\u00e9gi\u00f3ban a szolg\u00e1ltat\u00e1s h\u00e1l\u00f3zatban (mindk\u00e9t oldalon 2 proxy) k\u00f6r\u00fclbel\u00fcl 1200 processzorra lesz sz\u00fcks\u00e9g\u00fcnk, mivel 1 milli\u00f3 k\u00e9r\u00e9st sz\u00e1molunk m\u00e1sodpercenk\u00e9nt. A Google k\u00f6lts\u00e9gkalkul\u00e1l\u00f3ja alapj\u00e1n ez k\u00f6r\u00fclbel\u00fcl 40 USD\/h\u00f3nap\/processzor a konfigur\u00e1ci\u00f3ra <code>n1-standard-64<\/code>, teh\u00e1t csak ez a r\u00e9gi\u00f3 havi t\u00f6bb mint 50 000 doll\u00e1runkba ker\u00fcl 1 milli\u00f3 k\u00e9r\u00e9s m\u00e1sodpercenk\u00e9nt.<\/p>\n<p><\/p>\n<p>Ivan Sim (<noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/@ihcsim\">Ivan Sim<\/a><\/noindex>) <noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/@ihcsim\/linkerd-2-0-and-istio-performance-benchmark-df290101c2bb\">vil\u00e1gosan \u00f6sszehasonl\u00edtotta<\/a><\/noindex> a szolg\u00e1ltat\u00e1s h\u00e1l\u00f3zat k\u00e9sleked\u00e9seit tavaly, \u00e9s azt \u00edg\u00e9rte, hogy ugyanezt teszi a mem\u00f3ri\u00e1val \u00e9s a processzorral, de nem siker\u00fclt:<\/p>\n<p><\/p>\n<blockquote><p>\u00dagy t\u0171nik, hogy a values-istio-test.yaml jelent\u0151sen megn\u00f6veli a processzori ig\u00e9nyeket. Ha j\u00f3l sz\u00e1moltam, k\u00f6r\u00fclbel\u00fcl 24 processzorra van sz\u00fcks\u00e9g a vez\u00e9rl\u0151panelhez \u00e9s 0,5 CPU-ra minden proxyhoz. Nincs ennyi. Ism\u00e9tlem a teszteket, amikor t\u00f6bb er\u0151forr\u00e1st osztanak ki.<\/p><\/blockquote>\n<p>Szerettem volna megbizonyosodni r\u00f3la, hogy az Istio teljes\u00edtm\u00e9nye mennyire hasonl\u00edt egy m\u00e1sik ny\u00edlt forr\u00e1sk\u00f3d\u00fa szolg\u00e1ltat\u00e1s h\u00e1l\u00f3zatra: <noindex><a rel=\"nofollow\" href=\"https:\/\/linkerd.io\/\">Linkerd<\/a><\/noindex>.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3 id=\"ustanovka-service-mesh\">Szolg\u00e1ltat\u00e1s h\u00e1l\u00f3zat telep\u00edt\u00e9se<\/h3>\n<p><\/p>\n<p>El\u0151sz\u00f6r telep\u00edtettem a klaszterbe <noindex><a rel=\"nofollow\" href=\"https:\/\/supergloo.solo.io\/\">SuperGloo<\/a><\/noindex>:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">$ supergloo init\ninstalling supergloo version 0.3.12\nusing chart uri https:\/\/storage.googleapis.com\/supergloo-helm\/charts\/supergloo-0.3.12.tgz\nconfigmap\/sidecar-injection-resources created\nserviceaccount\/supergloo created\nserviceaccount\/discovery created\nserviceaccount\/mesh-discovery created\nclusterrole.rbac.authorization.k8s.io\/discovery created\nclusterrole.rbac.authorization.k8s.io\/mesh-discovery created\nclusterrolebinding.rbac.authorization.k8s.io\/supergloo-role-binding created\nclusterrolebinding.rbac.authorization.k8s.io\/discovery-role-binding created\nclusterrolebinding.rbac.authorization.k8s.io\/mesh-discovery-role-binding created\ndeployment.extensions\/supergloo created\ndeployment.extensions\/discovery created\ndeployment.extensions\/mesh-discovery created\ninstall successful!<\/code><\/pre>\n<p><\/p>\n<p>A SuperGloo-t haszn\u00e1ltam, mert jelent\u0151sen megk\u00f6nny\u00edti a szolg\u00e1ltat\u00e1s h\u00e1l\u00f3zat kezdeti bet\u00f6lt\u00e9s\u00e9t. Szinte semmit sem kellett tennem. A gyakorlatban nem haszn\u00e1ljuk a SuperGloo-t, de ehhez a feladathoz t\u00f6k\u00e9letesen megfelel. K\u00f6r\u00fclbel\u00fcl n\u00e9h\u00e1ny parancsot kellett alkalmaznom minden szolg\u00e1ltat\u00e1s h\u00e1l\u00f3zathoz. K\u00e9t klasztert haszn\u00e1ltam az elszigetel\u00e9shez \u2014 egyet az Istiohoz \u00e9s egyet a Linkerd-hez.<\/p>\n<p><\/p>\n<p>A k\u00eds\u00e9rletet a Google Kubernetes Engine-en v\u00e9gezt\u00fck. Kubernetes-t haszn\u00e1ltam <code>1.12.7-gke.7<\/code> \u00e9s a csom\u00f3ponttart\u00f3 <code>n1-standard-4<\/code> automatikus csom\u00f3pontsk\u00e1l\u00e1z\u00e1ssal (minimum 4, maximum 16).<\/p>\n<p><\/p>\n<p>Ezut\u00e1n a parancssorb\u00f3l telep\u00edtettem mindk\u00e9t szolg\u00e1ltat\u00e1s h\u00e1l\u00f3zatot.<\/p>\n<p><\/p>\n<p>El\u0151sz\u00f6r a Linkerd:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">$ supergloo install linkerd --name linkerd\n+---------+--------------+---------+---------------------------+\n| INSTALL |     TYPE     | STATUS  |          DETAILS          |\n+---------+--------------+---------+---------------------------+\n| linkerd | Linkerd Mesh | Pending | enabled: true             |\n|         |              |         | version: stable-2.3.0     |\n|         |              |         | namespace: linkerd        |\n|         |              |         | mtls enabled: true        |\n|         |              |         | auto inject enabled: true |\n+---------+--------------+---------+---------------------------+<\/code><\/pre>\n<p><\/p>\n<p>Azt\u00e1n Istio:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">$ supergloo install istio --name istio --installation-namespace istio-system --mtls=true --auto-inject=true\n+---------+------------+---------+---------------------------+\n| INSTALL |    TYPE    | STATUS  |          DETAILS          |\n+---------+------------+---------+---------------------------+\n| istio   | Istio Mesh | Pending | enabled: true             |\n|         |            |         | version: 1.0.6            |\n|         |            |         | namespace: istio-system   |\n|         |            |         | mtls enabled: true        |\n|         |            |         | auto inject enabled: true |\n|         |            |         | grafana enabled: true     |\n|         |            |         | prometheus enabled: true  |\n|         |            |         | jaeger enabled: true      |\n+---------+------------+---------+---------------------------+<\/code><\/pre>\n<p><\/p>\n<p>A Crash-loop n\u00e9h\u00e1ny percet vett ig\u00e9nybe, majd a vez\u00e9rl\u0151panele stabiliz\u00e1l\u00f3dott.<\/p>\n<p><\/p>\n<p><em>(Megjegyz\u00e9s: A SuperGloo jelenleg csak az Istio 1.0.x-et t\u00e1mogatja. Ism\u00e9telten megism\u00e9teltem a k\u00eds\u00e9rletet az Istio 1.1.3-mal, de nem vettem \u00e9szre \u00e9rdemi k\u00fcl\u00f6nbs\u00e9get.)<\/em><\/p>\n<p><\/p>\n<h3 id=\"nastroyka-avtomaticheskogo-vnedreniya-istio\">Az Istio automatikus injekt\u00e1l\u00e1s\u00e1nak be\u00e1ll\u00edt\u00e1sa<\/h3>\n<p><\/p>\n<p>Ahhoz, hogy az Istio telep\u00edtse a sidecar Envoy-t, a sidecar-injektort haszn\u00e1ljuk \u2014 <code>MutatingAdmissionWebhook<\/code>. Err\u0151l a cikkben nem fogunk besz\u00e9lni. Csak annyit mondok, hogy ez egy vez\u00e9rl\u0151, amely figyelemmel k\u00eds\u00e9ri az \u00f6sszes \u00faj pod hozz\u00e1f\u00e9r\u00e9s\u00e9t, \u00e9s dinamikusan hozz\u00e1adja a sidecar-t \u00e9s az initContainer-t, amely a feladatok\u00e9rt felel\u0151s <code>iptables<\/code>.<\/p>\n<p><\/p>\n<p>Mi a Shopify-n\u00e1l \u00edrtunk saj\u00e1t vez\u00e9rl\u0151nket a sidecar-ok injekt\u00e1l\u00e1s\u00e1ra, de ebben a benchmarkban az Istio-val sz\u00e1ll\u00edtott vez\u00e9rl\u0151t v\u00e1lasztottam. Az alap\u00e9rtelmezett vez\u00e9rl\u0151 sidecar-okat injekt\u00e1l, amikor a n\u00e9vt\u00e9rben egy c\u00edmk\u00e9t tal\u00e1l <code>istio-injection: enabled<\/code>:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">$ kubectl label namespace irs-client-dev istio-injection=enabled\nnamespace\/irs-client-dev labeled\n\n$ kubectl label namespace irs-server-dev istio-injection=enabled\nnamespace\/irs-server-dev labeled<\/code><\/pre>\n<p><\/p>\n<h3 id=\"nastroyka-avtomaticheskogo-vnedreniya-linkerd\">A Linkerd automatikus injekt\u00e1l\u00e1s\u00e1nak be\u00e1ll\u00edt\u00e1sa<\/h3>\n<p><\/p>\n<p>A Linkerd sidecar-jainak injekt\u00e1l\u00e1s\u00e1hoz annot\u00e1ci\u00f3kat haszn\u00e1lunk (ezeket k\u00e9zzel adtam hozz\u00e1 a k\u00f6vetkez\u0151n kereszt\u00fcl <code>kubectl edit<\/code>):<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">metadata:\n  annotations:\n    linkerd.io\/inject: enabled<\/code><\/pre>\n<p><\/p>\n<pre><code class=\"plaintext\">$ k edit ns irs-server-dev \nnamespace\/irs-server-dev edited\n\n$ k get ns irs-server-dev -o yaml\napiVersion: v1\nkind: Namespace\nmetadata:\n  annotations:\n    linkerd.io\/inject: enabled\n  name: irs-server-dev\nspec:\n  finalizers:\n  - kubernetes\nstatus:\n  phase: Active<\/code><\/pre>\n<p><\/p>\n<h3 id=\"simulyator-otkazoustoychivosti-istio\">Az Istio megb\u00edzhat\u00f3s\u00e1gi szimul\u00e1tora<\/h3>\n<p><\/p>\n<p>K\u00e9sz\u00edtett\u00fcnk egy Istio hibat\u0171r\u0151 szimul\u00e1tort, hogy k\u00eds\u00e9rletezhess\u00fcnk a Shopify-ra jellemz\u0151 forgalommal. Sz\u00fcks\u00e9g\u00fcnk volt egy eszk\u00f6zre, amely lehet\u0151v\u00e9 teszi tetsz\u0151leges topol\u00f3gi\u00e1k l\u00e9trehoz\u00e1s\u00e1t, amelyek egy adott r\u00e9sz\u00e9t k\u00e9pezik szolg\u00e1ltat\u00e1sunk grafikonj\u00e1nak, dinamikus be\u00e1ll\u00edt\u00e1ssal, hogy konkr\u00e9t munkaterhel\u00e9seket modellezhess\u00fcnk.<\/p>\n<p><\/p>\n<p>A Shopify infrastrukt\u00far\u00e1ja nagy terhel\u00e9snek van kit\u00e9ve a vill\u00e1mki\u00e1rus\u00edt\u00e1sok sor\u00e1n. Ekkor a Shopify <noindex><a rel=\"nofollow\" href=\"https:\/\/www.shopify.com\/enterprise\/flash-sale\">javasolja a keresked\u0151ket, hogy gyakrabban tartsanak ilyen ki\u00e1rus\u00edt\u00e1sokat<\/a><\/noindex>. Nagyobb \u00fcgyfelek n\u00e9ha el\u0151re \u00e9rtes\u00edtenek a tervezett vill\u00e1mki\u00e1rus\u00edt\u00e1sr\u00f3l. M\u00e1sok pedig v\u00e1ratlanul, b\u00e1rmikor, napk\u00f6zben vagy \u00e9jszaka tartanak ilyet sz\u00e1munkra.<\/p>\n<p><\/p>\n<p>Azt szerett\u00fck volna, hogy hibat\u0171r\u0151 szimul\u00e1torunk olyan munkafolyamatokat modellezzen, amelyek megfelelnek a Shopify infrastrukt\u00far\u00e1j\u00e1t a m\u00faltban t\u00falterhel\u0151 topol\u00f3gi\u00e1knak \u00e9s munkaterhel\u00e9seknek. A service mesh haszn\u00e1lat\u00e1nak alapvet\u0151 c\u00e9lja \u2014 megb\u00edzhat\u00f3s\u00e1gra \u00e9s hibat\u0171r\u00e9sre van sz\u00fcks\u00e9g\u00fcnk a h\u00e1l\u00f3zat szintj\u00e9n, \u00e9s fontos sz\u00e1munkra, hogy a service mesh hat\u00e9konyan kezelje azokat a terheket, amelyek kor\u00e1bban megzavart\u00e1k a szolg\u00e1ltat\u00e1sok m\u0171k\u00f6d\u00e9s\u00e9t.<\/p>\n<p><\/p>\n<p>A hibat\u0171r\u0151 szimul\u00e1tor alapja egy munk\u00e1nk csom\u00f3pontja, amely a service mesh csom\u00f3pontjak\u00e9nt m\u0171k\u00f6dik. A munkacsom\u00f3pont statikusan be\u00e1ll\u00edthat\u00f3 ind\u00edt\u00e1skor vagy dinamikusan a REST API-n kereszt\u00fcl. Dinamikus munkacsoport-be\u00e1ll\u00edt\u00e1st haszn\u00e1lunk, hogy munkafolyamatokat hozzunk l\u00e9tre regresszi\u00f3s tesztekk\u00e9nt.<\/p>\n<p><\/p>\n<p>\u00cdme egy p\u00e9lda egy ilyen folyamatra:<\/p>\n<p><\/p>\n<ul>\n<li>10 szervert ind\u00edtunk el mint <code>bar<\/code> szolg\u00e1ltat\u00e1s, amely <code>200\/OK<\/code> v\u00e1laszt ad 100 ms alatt.<\/li>\n<li>10 klienst ind\u00edtunk \u2014 mindegyik m\u00e1sodpercenk\u00e9nt 100 k\u00e9r\u00e9st k\u00fcld a <code>bar<\/code>.<\/li>\n<li>Minden 10 m\u00e1sodpercben elt\u00e1vol\u00edtunk egy szervert, figyelj\u00fck az \u00fcgyf\u00e9lhib\u00e1kat. <code>5xx<\/code> A folyamat v\u00e9g\u00e9n \u00e1tn\u00e9zz\u00fck a napl\u00f3kat \u00e9s metrik\u00e1kat, valamint ellen\u0151rizz\u00fck, hogy a teszt sikeres volt-e. \u00cdgy megtudjuk, hogyan teljes\u00edt a service mesh-\u00fcnk, \u00e9s v\u00e9gz\u00fcnk egy regresszi\u00f3s tesztet, hogy ellen\u0151rizz\u00fck hibat\u0171r\u00e9si felt\u00e9telez\u00e9seinket.<\/li>\n<\/ul>\n<p><\/p>\n<p>(Megjegyz\u00e9s. Gondolkodunk az Istio hibat\u0171r\u0151 szimul\u00e1tor forr\u00e1sk\u00f3dj\u00e1nak nyilv\u00e1nos k\u00f6zz\u00e9t\u00e9tel\u00e9n, de m\u00e9g nem vagyunk k\u00e9szen r\u00e1.)<\/p>\n<p><\/p>\n<p><em>Istio hibat\u0171r\u0151 szimul\u00e1tor a service mesh benchmarkhoz<\/em><\/p>\n<p><\/p>\n<h3 id=\"simulyator-otkazoustoychivosti-istio-dlya-benchmarka-service-mesh\">T\u00f6bb munkacsoportot \u00e1ll\u00edtunk be a szimul\u00e1torhoz:<\/h3>\n<p><\/p>\n<p>irs-client-loadgen<\/p>\n<p><\/p>\n<ul>\n<li><code>: 3 replik\u00e1val, amelyek m\u00e1sodpercenk\u00e9nt 100 k\u00e9r\u00e9st k\u00fcldenek az<\/code>irs-client <code>: 3 replik\u00e1val, amelyek fogadj\u00e1k a k\u00e9r\u00e9seket, v\u00e1rnak 100 ms-ot, \u00e9s \u00e1tir\u00e1ny\u00edtj\u00e1k a k\u00e9r\u00e9seket a<\/code>.<\/li>\n<li><code>: 3 replik\u00e1val, amelyek fogadj\u00e1k a k\u00e9r\u00e9seket, v\u00e1rnak 100 ms-ot, \u00e9s \u00e1tir\u00e1ny\u00edtj\u00e1k a k\u00e9r\u00e9seket a<\/code>irs-server <code>: 3 replik\u00e1val, amelyek visszat\u00e9r\u00edtik a v\u00e1laszt<\/code>.<\/li>\n<li><code>: 3 replik\u00e1val, amelyek visszat\u00e9r\u00edtik a v\u00e1laszt<\/code>: 3 replik\u00e1val, amelyek visszaadnak. <code>200\/OK<\/code> v\u00e1laszt ad 100 ms alatt.<\/li>\n<\/ul>\n<p><\/p>\n<p>Egy ilyen konfigur\u00e1ci\u00f3val stabil forgalmat m\u00e9rhet\u00fcnk 9 v\u00e9gpont k\u00f6z\u00f6tt. A Sidecar-ok <code>: 3 replik\u00e1val, amelyek m\u00e1sodpercenk\u00e9nt 100 k\u00e9r\u00e9st k\u00fcldenek az<\/code> \u00e9s <code>: 3 replik\u00e1val, amelyek visszat\u00e9r\u00edtik a v\u00e1laszt<\/code> 100 k\u00e9r\u00e9st kapnak m\u00e1sodpercenk\u00e9nt, m\u00edg <code>: 3 replik\u00e1val, amelyek fogadj\u00e1k a k\u00e9r\u00e9seket, v\u00e1rnak 100 ms-ot, \u00e9s \u00e1tir\u00e1ny\u00edtj\u00e1k a k\u00e9r\u00e9seket a<\/code> \u2014 200 (bej\u00f6v\u0151 \u00e9s kimen\u0151).<\/p>\n<p><\/p>\n<p>Az er\u0151forr\u00e1sok felhaszn\u00e1l\u00e1s\u00e1t nyomon k\u00f6vetj\u00fck a <noindex><a rel=\"nofollow\" href=\"https:\/\/www.datadoghq.com\/\">DataDog<\/a><\/noindex>, mivel nincs Prometheus klaszter\u00fcnk.<\/p>\n<p><\/p>\n<h2 id=\"rezultaty\">Eredm\u00e9nyek<\/h2>\n<p><\/p>\n<h3 id=\"paneli-upravleniya\">Vez\u00e9rl\u0151panelek<\/h3>\n<p><\/p>\n<p>El\u0151sz\u00f6r a CPU fogyaszt\u00e1st vizsg\u00e1ltuk.<\/p>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habrastorage.org\/webt\/wd\/bb\/md\/wdbbmdzr0sx8tlfhmyinyglsr0i.png\"><img decoding=\"async\" alt=\"CPU-fogyaszt\u00e1si benchmark az Istio \u00e9s Linkerd sz\u00e1m\u00e1ra\" src=\"\/wp-content\/uploads\/ff1e892762132bd49e00fb319201c92f.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><br \/>\n<em>A Linkerd vez\u00e9rl\u0151pult ~22 milli\u00e1rd<\/em><\/p>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habrastorage.org\/webt\/nr\/1p\/ag\/nr1pagqdpichos1evmok6jafn7w.png\"><img decoding=\"async\" alt=\"CPU-fogyaszt\u00e1si benchmark az Istio \u00e9s Linkerd sz\u00e1m\u00e1ra\" src=\"\/wp-content\/uploads\/dc5e80d4abd81168cd944dc183882d9d.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><br \/>\n<em>Az Istio vez\u00e9rl\u0151pult: ~750 milli\u00e1rd<\/em><\/p>\n<p><\/p>\n<p>Az Istio vez\u00e9rl\u0151pult k\u00f6r\u00fclbel\u00fcl <strong>35-sz\u00f6r t\u00f6bb CPU er\u0151forr\u00e1st haszn\u00e1l<\/strong>, mint a Linkerd. Term\u00e9szetesen minden alap\u00e9rtelmezett be\u00e1ll\u00edt\u00e1son van, \u00e9s az istio-telemetry sok CPU er\u0151forr\u00e1st fogyaszt (le lehet tiltani, ha lemondunk n\u00e9h\u00e1ny funkci\u00f3r\u00f3l). Ha ezt az \u00f6sszetev\u0151t elt\u00e1vol\u00edtjuk, akkor is t\u00f6bb mint 100 milli\u00e1rd lesz, azaz <strong>4-szer t\u00f6bb<\/strong>, mint a Linkerd.<\/p>\n<p><\/p>\n<h3 id=\"sidecar-proksi\">Sidecar proxy<\/h3>\n<p><\/p>\n<p>Ezut\u00e1n ellen\u0151rizt\u00fck a proxy haszn\u00e1lat\u00e1t. Itt line\u00e1ris \u00f6sszef\u00fcgg\u00e9snek kell lennie a k\u00e9r\u00e9sek sz\u00e1m\u00e1val, de minden sidecar eset\u00e9ben vannak bizonyos adminisztr\u00e1ci\u00f3s k\u00f6lts\u00e9gek, amelyek befoly\u00e1solj\u00e1k a g\u00f6rb\u00e9t.<\/p>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habrastorage.org\/webt\/ve\/ky\/bw\/vekybwloc_ffg8_pmrm6cf56tqq.png\"><img decoding=\"async\" alt=\"CPU-fogyaszt\u00e1si benchmark az Istio \u00e9s Linkerd sz\u00e1m\u00e1ra\" src=\"\/wp-content\/uploads\/deb802e6660b9b76da355d078b2fe88e.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><br \/>\n<em>Linkerd: ~100 milli\u00e1rd az irs-client sz\u00e1m\u00e1ra, ~50 milli\u00e1rd az irs-client-loadgen sz\u00e1m\u00e1ra<\/em><\/p>\n<p><\/p>\n<p>Az eredm\u00e9nyek logikusan n\u00e9znek ki, hiszen a client proxy k\u00e9tszer annyi forgalmat kap, mint a loadgen proxy: minden egyes kimen\u0151 k\u00e9relem ut\u00e1n a loadgen-b\u0151l a client egy bej\u00f6v\u0151 \u00e9s egy kimen\u0151 k\u00e9rd\u00e9st kap.<\/p>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habrastorage.org\/webt\/81\/wh\/lo\/81whlom3ym23hp7cisg3tsgu8qs.png\"><img decoding=\"async\" alt=\"CPU-fogyaszt\u00e1si benchmark az Istio \u00e9s Linkerd sz\u00e1m\u00e1ra\" src=\"\/wp-content\/uploads\/99705fa2396694d3314839dd3c6a39fb.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><br \/>\n<em>Istio\/Envoy: ~155 milli\u00e1rd az irs-client sz\u00e1m\u00e1ra, ~75 milli\u00e1rd az irs-client-loadgen sz\u00e1m\u00e1ra<\/em><\/p>\n<p><\/p>\n<p>Hasonl\u00f3 eredm\u00e9nyeket l\u00e1tunk az Istio sidecar-ok eset\u00e9ben is.<\/p>\n<p><\/p>\n<p>De \u00f6sszess\u00e9g\u00e9ben az Istio\/Envoy proxy k\u00f6r\u00fclbel\u00fcl <strong>50%-kal t\u00f6bb CPU er\u0151forr\u00e1st fogyaszt<\/strong>, mint a Linkerd.<\/p>\n<p><\/p>\n<p>Ugyanezt a s\u00e9m\u00e1t l\u00e1tjuk a szerver oldalon:<\/p>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habrastorage.org\/webt\/ou\/xl\/bw\/ouxlbwvtilchju4qykltpesfz58.png\"><img decoding=\"async\" alt=\"CPU-fogyaszt\u00e1si benchmark az Istio \u00e9s Linkerd sz\u00e1m\u00e1ra\" src=\"\/wp-content\/uploads\/cb235290b27fed8c24f9b9be381b3d91.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><br \/>\n<em>Linkerd: ~50 milli\u00e1rd az irs-server sz\u00e1m\u00e1ra<\/em><\/p>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habrastorage.org\/webt\/cd\/1p\/ia\/cd1pia4q2sniccgybpy-uipuubu.png\"><img decoding=\"async\" alt=\"CPU-fogyaszt\u00e1si benchmark az Istio \u00e9s Linkerd sz\u00e1m\u00e1ra\" src=\"\/wp-content\/uploads\/2a087237c7d0f13907e836849cd953b1.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><br \/>\n<em>Istio\/Envoy: ~80 milli\u00e1rd az irs-server sz\u00e1m\u00e1ra<\/em><\/p>\n<p><\/p>\n<p>A szerver oldali sidecar Istio\/Envoy k\u00f6r\u00fclbel\u00fcl <strong>60%-kal t\u00f6bb CPU er\u0151forr\u00e1st fogyaszt<\/strong>, mint a Linkerd.<\/p>\n<p><\/p>\n<h3 id=\"zaklyuchenie\">Z\u00e1r\u00e1s<\/h3>\n<p><\/p>\n<p>Az Istio Envoy proxy t\u00f6bb mint 50%-kal t\u00f6bb CPU-t fogyaszt, mint a Linkerd a modellezett munkaterhel\u00e9s\u00fcnkben. A Linkerd vez\u00e9rl\u0151pult sokkal kevesebb er\u0151forr\u00e1st fogyaszt, mint az Istio, k\u00fcl\u00f6n\u00f6sen a f\u0151 \u00f6sszetev\u0151k eset\u00e9ben.<\/p>\n<p><\/p>\n<p>M\u00e9g mindig gondolkodunk rajta, hogyan lehetne cs\u00f6kkenteni ezeket a k\u00f6lts\u00e9geket. Ha van \u00f6tleted, oszd meg vel\u00fcnk!<\/p>\n<p>Forr\u00e1s: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/southbridge\/blog\/452956\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u041c\u044b \u0432 Shopify \u0437\u0430\u043d\u044f\u043b\u0438\u0441\u044c \u0440\u0430\u0437\u0432\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u0435\u043c Istio \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 service mesh. \u0412 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0435 \u0432\u0441\u0435 \u0443\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u0442, \u043a\u0440\u043e\u043c\u0435 \u043e\u0434\u043d\u043e\u0439 \u0432\u0435\u0449\u0438: \u044d\u0442\u043e \u0434\u043e\u0440\u043e\u0433\u043e. \u0412 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0431\u0435\u043d\u0447\u043c\u0430\u0440\u043a\u0430\u0445 \u0434\u043b\u044f Istio \u0433\u043e\u0432\u043e\u0440\u0438\u0442\u0441\u044f: \u0421 Istio 1.1 \u043f\u0440\u043e\u043a\u0441\u0438 \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u044f\u0435\u0442 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e 0,6 vCPU (\u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u044f\u0434\u0435\u0440) \u043d\u0430 1000 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443. \u0414\u043b\u044f \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0440\u0435\u0433\u0438\u043e\u043d\u0430 \u0432 service mesh (\u043f\u043e 2 \u043f\u0440\u043e\u043a\u0441\u0438 \u0441 \u043a\u0430\u0436\u0434\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f) \u0443 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-34366","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u041c\u044b \u0432.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/benchmark-potrebleniya-tsp-dlya-istio-i-linkerd\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"hu_HU\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0411\u0435\u043d\u0447\u043c\u0430\u0440\u043a \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u044f \u0426\u041f \u0434\u043b\u044f Istio \u0438 Linkerd | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u041c\u044b \u0432.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/benchmark-potrebleniya-tsp-dlya-istio-i-linkerd\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:57:56+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:57:56+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47A CPU-fogyaszt\u00e1s benchmarkja az Istio \u00e9s a Linkerd sz\u00e1m\u00e1ra | ProHoster","description":"Bevezet\u00e9s Mi a.","canonical_url":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/benchmark-potrebleniya-tsp-dlya-istio-i-linkerd","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"hu_HU","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0411\u0435\u043d\u0447\u043c\u0430\u0440\u043a \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u044f \u0426\u041f \u0434\u043b\u044f Istio \u0438 Linkerd | ProHoster","og:description":"\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u041c\u044b \u0432.","og:url":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/benchmark-potrebleniya-tsp-dlya-istio-i-linkerd","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:57:56+00:00","article:modified_time":"2019-10-31T18:57:56+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"34366","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 18:56:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 02:23:16","updated":"2026-01-21 18:56:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/34366","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/comments?post=34366"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/34366\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/media?parent=34366"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/categories?post=34366"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/tags?post=34366"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}