{"id":37030,"date":"2019-10-31T22:15:23","date_gmt":"2019-10-31T19:15:23","guid":{"rendered":"https:\/\/prohoster.info\/blog\/servisnaya-set-ploskost-dannyh-i-ploskosti-upravleniya-service-mesh-data-plane-vs-control-plane\/"},"modified":"2019-10-31T22:15:23","modified_gmt":"2019-10-31T19:15:23","slug":"servisnaya-set-ploskost-dannyh-i-ploskosti-upravleniya-service-mesh-data-plane-vs-control-plane","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/servisnaya-set-ploskost-dannyh-i-ploskosti-upravleniya-service-mesh-data-plane-vs-control-plane","title":{"rendered":"Rrjeti i sh\u00ebrbimit, \u00abData Plane\u00bb dhe \u00abControl Plane\u00bb (Service mesh data plane vs. control plane)","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>P\u00ebrsh\u00ebndetje, Habr! Po ju prezantoj nj\u00eb p\u00ebrkthim t\u00eb artikullit <noindex><a rel=\"nofollow\" href=\"https:\/\/blog.envoyproxy.io\/service-mesh-data-plane-vs-control-plane-2774e720f7fc\">\u00abPlani i t\u00eb dh\u00ebnave t\u00eb rrjetit t\u00eb sh\u00ebrbimeve vs plani kontrollues\u00bb<\/a><\/noindex> autori <b>Matt Klein<\/b>.<\/p>\n<p><img decoding=\"async\" alt=\"Rrjeti i sh\u00ebrbimit, \u00abData Plane\u00bb dhe \u00abControl Plane\u00bb (Service mesh data plane vs. control plane)\" src=\"\/wp-content\/uploads\/2019\/08\/487456689eb832f9e3845966cb0d85d4.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nK\u00ebt\u00eb her\u00eb, kam \u00abv\u00ebrejtur dhe p\u00ebrkthyer\u00bb p\u00ebrshkrimin e t\u00eb dy componenteve t\u00eb rrjetit t\u00eb sh\u00ebrbimeve, plani i t\u00eb dh\u00ebnave dhe plani kontrollues. Ky p\u00ebrshkrim m\u00eb dukej m\u00eb i qart\u00eb dhe interesant, dhe m\u00eb e r\u00ebnd\u00ebsishmja, e \u00e7on drejt kuptimit \u00abA \u00ebsht\u00eb e nevojshme \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e?\u00bb<\/p>\n<p>Duke qen\u00eb se ideja e \u00abRrjetit t\u00eb sh\u00ebrbimeve\u00bb po b\u00ebhet gjithnj\u00eb e m\u00eb popullore gjat\u00eb dy viteve t\u00eb fundit (artikulli origjinal nga 10 tetori 2017), dhe numri i pjes\u00ebmarr\u00ebsve n\u00eb k\u00ebt\u00eb hap\u00ebsir\u00eb \u00ebsht\u00eb rritur, kam v\u00ebrejtur nj\u00eb rritje proporcionale t\u00eb konfuzionit n\u00eb mesin e gjith\u00eb komunitetit teknik n\u00eb lidhje me m\u00ebnyr\u00ebn se si t\u00eb krahasohen dhe p\u00ebrballen zgjidhjet e ndryshme.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nSituat\u00ebn e p\u00ebrshkruan m\u00eb s\u00eb miri seria e m\u00ebposhtme e tweets q\u00eb kam shkruar n\u00eb korrik:<\/p>\n<blockquote><p>Konfuzioni me rrjetin e sh\u00ebrbimeve nr. 1: Linkerd ~ = Nginx ~ = Haproxy ~ = Envoy. Asnj\u00eb prej tyre nuk \u00ebsht\u00eb i barabart\u00eb me Istio. Istio \u00ebsht\u00eb di\u00e7ka krejt\u00ebsisht tjet\u00ebr. 1 \/<\/p><\/blockquote>\n<blockquote><p>T\u00eb parat jan\u00eb thjesht plane t\u00eb dh\u00ebnash. Ato vet\u00eb nuk b\u00ebjn\u00eb asgj\u00eb. Ato duhet t\u00eb konfigurohen p\u00ebr di\u00e7ka m\u00eb t\u00eb madhe. 2 \/<\/p><\/blockquote>\n<blockquote><p>Istio \u00ebsht\u00eb nj\u00eb shembull i nj\u00eb plani kontrollues q\u00eb lidh pjes\u00ebt s\u00eb bashku. \u00cbsht\u00eb nj\u00eb shtres\u00eb tjet\u00ebr. \/fund<\/p><\/blockquote>\n<p>N\u00eb tweets e m\u00ebparshme p\u00ebrmenden disa projekte t\u00eb ndryshme (Linkerd, NGINX, HAProxy, Envoy dhe Istio), por, m\u00eb e r\u00ebnd\u00ebsishmja, prezantohen konceptet e zakonshme t\u00eb planeve t\u00eb dh\u00ebnash, rrjetit t\u00eb sh\u00ebrbimeve dhe planeve kontrolluese. N\u00eb k\u00ebt\u00eb post, do t\u00eb b\u00ebj nj\u00eb hap prapa dhe do t\u00eb shpjegoj se \u00e7far\u00eb kam parasysh me termat \u00abplani i t\u00eb dh\u00ebnave\u00bb dhe \u00abplani kontrollues\u00bb n\u00eb nj\u00eb nivel shum\u00eb t\u00eb lart\u00eb, dhe pastaj do t\u00eb diskutoj se si k\u00ebto terma lidhen me projektet e p\u00ebrmendura n\u00eb tweets.<\/p>\n<h1>\u00c7far\u00eb \u00ebsht\u00eb n\u00eb t\u00eb v\u00ebrtet\u00eb nj\u00eb rrjet sh\u00ebrbimesh?<\/h1>\n<p>\n<img decoding=\"async\" alt=\"Rrjeti i sh\u00ebrbimit, \u00abData Plane\u00bb dhe \u00abControl Plane\u00bb (Service mesh data plane vs. control plane)\" src=\"\/wp-content\/uploads\/2019\/08\/63c195aa9bcb7080f6924cecbff0fbc1.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<b>Figura 1: Pasqyr\u00eb e rrjetit t\u00eb sh\u00ebrbimeve<\/b><\/p>\n<p><b>Figura 1<\/b> ilustron konceptin e rrjetit t\u00eb sh\u00ebrbimeve n\u00eb nivelin m\u00eb bazik. Ka kat\u00ebr klaster\u00eb sh\u00ebrbimesh (A-D). \u00c7do instanc\u00eb sh\u00ebrbimi \u00ebsht\u00eb e lidhur me nj\u00eb server proxy lokal. I gjith\u00eb trafiku rrjetor (HTTP, REST, gRPC, Redis etj.) nga nj\u00eb instanc\u00eb e ve\u00e7ant\u00eb e aplikacionit kalon p\u00ebrmes serverit proxy lokal n\u00eb klaster\u00ebt sh\u00ebrbimesh p\u00ebrkat\u00ebs. N\u00eb k\u00ebt\u00eb m\u00ebnyr\u00eb, instanca e aplikacionit nuk e di p\u00ebr rrjetin n\u00eb t\u00ebr\u00ebsi dhe di vet\u00ebn p\u00ebr serverin e saj lokal proxy. N\u00eb fakt, rrjeti i sistemit t\u00eb shp\u00ebrndar\u00eb \u00ebsht\u00eb hequr nga sh\u00ebrbimi.<\/p>\n<h1>Plani i t\u00eb dh\u00ebnave<\/h1>\n<p>\nN\u00eb rrjetin e sh\u00ebrbimeve, serveri proxy lokal p\u00ebr aplikacionin kryen detyrat e m\u00ebposhtme:<\/p>\n<ul>\n<li> <b>Zbulimi i sh\u00ebrbimeve (Service discovery)<\/b>. Cilat sh\u00ebrbime\/faqe\/aplikacione jan\u00eb t\u00eb disponueshme p\u00ebr aplikacionin tuaj?<\/li>\n<li><b>Kontrolli i sh\u00ebndetit (Health checking)<\/b>. A jan\u00eb instancat e sh\u00ebrbimeve, t\u00eb kthyera nga zbulimi i sh\u00ebrbimeve (service discovery), t\u00eb sh\u00ebndetshme dhe t\u00eb gatshme p\u00ebr t\u00eb pranuar trafik rrjeti? Kjo mund t\u00eb p\u00ebrfshij\u00eb si kontrolle aktive (p.sh., kontroll ndaj p\u00ebrgjigjes \/ healthcheck), ashtu edhe kontrolle pasive (p.sh., duke p\u00ebrdorur 3 gabime 5xx radhazi si nj\u00eb tregues t\u00eb nj\u00eb gjendjeje t\u00eb pap\u00ebrshtatshme t\u00eb sh\u00ebrbimit). <\/li>\n<li><b>Rruga (Routing)<\/b>. Pasi e mori nj\u00eb k\u00ebrkes\u00eb REST n\u00eb &#171;\\\/foo&#187;, n\u00eb cilin grup sh\u00ebrbimesh duhet t\u00eb d\u00ebrgohet k\u00ebrkesa? <\/li>\n<li> <b>Balancimi i ngarkes\u00ebs (Load balancing)<\/b>. Pasi t\u00eb jet\u00eb zgjedhur nj\u00eb grup sh\u00ebrbimesh gjat\u00eb rrug\u00ebs, n\u00eb cilin instanc\u00eb t\u00eb sh\u00ebrbimit duhet t\u00eb d\u00ebrgohet k\u00ebrkesa? Me \u00e7far\u00eb periudhe pritjeje? Me \u00e7far\u00eb cil\u00ebsimesh p\u00ebr ndalimin e lidhjes (circuit breaking)? N\u00ebse k\u00ebrkesa d\u00ebshton, a duhet t\u00eb p\u00ebrs\u00ebritet?<\/li>\n<li> <b>Autentikimi dhe autorizimi (Authentication and authorization)<\/b>. P\u00ebr k\u00ebrkesat hyr\u00ebse, mund t\u00eb identifikohet\/autorizohet sh\u00ebrbimi thirr\u00ebs n\u00eb m\u00ebnyr\u00eb kriptografike me mTLS ose ndonj\u00eb mekaniz\u00ebm tjet\u00ebr? N\u00ebse ai identifikohet\/autorizohet, a i lejohet atij t\u00eb th\u00ebrras\u00eb operacionin e k\u00ebrkuar (endpoint) n\u00eb sh\u00ebrbim, ose duhet kthyer nj\u00eb p\u00ebrgjigje jo t\u00eb autentikuar?<\/li>\n<li> <b>V\u00ebzhgueshm\u00ebria (Observability)<\/b>. P\u00ebr \u00e7do k\u00ebrkes\u00eb duhet t\u00eb gjenerohen t\u00eb dh\u00ebna t\u00eb detajuara statistikore, regjistrime\/loge dhe t\u00eb dh\u00ebna t\u00eb gjurmimit t\u00eb shp\u00ebrndar\u00eb, n\u00eb m\u00ebnyr\u00eb q\u00eb operator\u00ebt t\u00eb mund t\u00eb kuptojn\u00eb fluksin e shp\u00ebrndar\u00eb t\u00eb trafikut dhe problemet e krijuara gjat\u00eb zhvillimit t\u00eb tyre.<\/li>\n<\/ul>\n<p>\nP\u00ebr t\u00eb gjitha pikat e m\u00ebsip\u00ebrme n\u00eb rrjetin e sh\u00ebrbimeve (service mesh), p\u00ebrgjigjet plani i t\u00eb dh\u00ebnave (data plane). N\u00eb thelb, proxy lokal p\u00ebr sh\u00ebrbimin (sidecar) \u00ebsht\u00eb plani i t\u00eb dh\u00ebnave (data plane). N\u00eb fjal\u00eb t\u00eb tjera, plani i t\u00eb dh\u00ebnave (data plane) \u00ebsht\u00eb p\u00ebrgjegj\u00ebs p\u00ebr transaksionin, d\u00ebrgimin dhe v\u00ebzhgimin e \u00e7do pakete rrjeti q\u00eb d\u00ebrgohet n\u00eb sh\u00ebrbim ose d\u00ebrgohet nga ai.<\/p>\n<h1>Plani i kontrollit (The control plane)<\/h1>\n<p>\nAbstraksioni rrjetor q\u00eb ofron nj\u00eb proxy lokal n\u00eb nivelin e t\u00eb dh\u00ebnave (data plane) \u00ebsht\u00eb magjik (?). Megjithat\u00eb, si e di realisht serveri proxy rrug\u00ebn &#171;\\\/foo&#187; drejt sh\u00ebrbimit B? Si mund t\u00eb p\u00ebrdoren t\u00eb dh\u00ebnat e zbuluara t\u00eb sh\u00ebrbimeve (service discovery), t\u00eb cilat plot\u00ebsohen me k\u00ebrkesat e proxy-it? Si jan\u00eb t\u00eb konfiguruara parametrat e balancimit t\u00eb ngarkes\u00ebs, koh\u00ebzgjatjes (timeout), prishjes s\u00eb zinxhirit (circuit breaking) etj.? Si b\u00ebhet shp\u00ebrndarja e aplikacionit duke p\u00ebrdorur metod\u00ebn blu\/jeshile (blue\/green) ose metod\u00ebn e kalimit t\u00eb ngadalsh\u00ebm t\u00eb trafikut? Kush konfiguron parametrat e autentifikimit dhe autorizimit n\u00eb nivelin e sistemit?<\/p>\n<p>T\u00eb gjitha piketat e lartp\u00ebrmendura jan\u00eb n\u00ebn menaxhimin e planit t\u00eb kontrollit (control plane) t\u00eb rrjetit t\u00eb sh\u00ebrbimeve (service mesh). <i>Plani i kontrollit (control plane) merr nj\u00eb grup proksi t\u00eb izoluar<a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/sq\/server\/\"   title=\"server\u00ebsh\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"1348\">server\u00ebsh<\/a> pa gjendje dhe i shnd\u00ebrron n\u00eb nj\u00eb sistem t\u00eb shp\u00ebrndar\u00eb.<\/i>.<\/p>\n<p>Mendoj se arsyeja pse shum\u00eb teknolog\u00eb e gjejn\u00eb t\u00eb komplikuar ndarjen e koncepteve t\u00eb planit t\u00eb t\u00eb dh\u00ebnave (data plane) dhe planit t\u00eb kontrollit (control plane) \u00ebsht\u00eb se p\u00ebr shumic\u00ebn e njer\u00ebzve plani i t\u00eb dh\u00ebnave \u00ebsht\u00eb i njohur, nd\u00ebrsa plani i kontrollit \u00ebsht\u00eb i huaj\/jo i kuptuesh\u00ebm. Ne kemi punuar me kalim shum\u00eb koh\u00eb me router-a dhe switch-a fizik\u00eb t\u00eb rrjetit. Ne e kuptojm\u00eb se paketat\/k\u00ebrkesat duhet t\u00eb shkojn\u00eb nga pika A n\u00eb pik\u00ebn B dhe se \u00e7far\u00eb mund t\u00eb p\u00ebrdorim p\u00ebr k\u00ebt\u00eb, hardware dhe software. Brezi i ri i proksi-ve softuerike \u00ebsht\u00eb thjesht versione moderne t\u00eb mjeteve q\u00eb kemi p\u00ebrdorur p\u00ebr nj\u00eb koh\u00eb t\u00eb gjat\u00eb.<\/p>\n<p><img decoding=\"async\" alt=\"Rrjeti i sh\u00ebrbimit, \u00abData Plane\u00bb dhe \u00abControl Plane\u00bb (Service mesh data plane vs. control plane)\" src=\"\/wp-content\/uploads\/2019\/08\/1b512802777cbf1853c5c4f7f2f81d99.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<b>Figur 2: Plani i kontrollit njer\u00ebzor (Human control plane)<\/b><\/p>\n<p>Megjithat\u00eb, ne kemi p\u00ebrdorur prej koh\u00ebsh plane kontrolli (control plane), edhe pse shumica e operator\u00ebve t\u00eb rrjetit mund t\u00eb mos e lidhin k\u00ebt\u00eb pjes\u00eb t\u00eb sistemit me ndonj\u00eb komponent teknologjik. Arsyeja \u00ebsht\u00eb e thjesht\u00eb:<br \/>\n<b>Shumica e planeve t\u00eb kontrollit (control plane) q\u00eb p\u00ebrdoren sot jan\u00eb\u2026 ne<\/b>.<\/p>\n<p>N\u00eb <b>n\u00eb figur\u00ebn 2.<\/b> shfaqet ajo q\u00eb e quaj \u00abNiveli i kontrollit njer\u00ebzor (Human control plane)\u00bb. N\u00eb k\u00ebt\u00eb lloj implementimi, i cili ende ndodh shpesh, operatori njeri, ndoshta nervoz, krijon konfiguracione statike \u2014 potencialisht me ndihm\u00ebn e skriptave \u2014 dhe i implementon ato p\u00ebrmes nj\u00eb procesi t\u00eb caktuar n\u00eb t\u00eb gjitha serverat proxy. Pastaj, proxy fillojn\u00eb t\u00eb p\u00ebrdorin k\u00ebt\u00eb konfiguracion dhe fillojn\u00eb t\u00eb p\u00ebrpunojn\u00eb nivelin e t\u00eb dh\u00ebnave (data plane) duke p\u00ebrdorur parametrat e rinj.<\/p>\n<p><img decoding=\"async\" alt=\"Rrjeti i sh\u00ebrbimit, \u00abData Plane\u00bb dhe \u00abControl Plane\u00bb (Service mesh data plane vs. control plane)\" src=\"\/wp-content\/uploads\/2019\/08\/6b12429611475e0fc4dfa9f980704e16.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<b>Figura 3: Niveli i avancuar i kontrollit t\u00eb rrjetit t\u00eb sh\u00ebrbimeve (Advanced service mesh control plane)<\/b><\/p>\n<p>N\u00eb <b>figura 3<\/b> tregon \u00abniveli i avancuar\u00bb i kontrollit (control plane) t\u00eb rrjetit t\u00eb sh\u00ebrbimeve (service mesh). Ai p\u00ebrb\u00ebhet nga k\u00ebto pjes\u00eb:<\/p>\n<ul>\n<li> <b>Njeriu (The human)<\/b>: Akoma ka nj\u00eb njeri (shpresoj, m\u00eb pak i m\u00ebrzitur), i cili merr vendime n\u00eb nivel t\u00eb lart\u00eb n\u00eb lidhje me t\u00eb gjith\u00eb sistemin si nj\u00eb t\u00ebr\u00ebsi.<\/li>\n<li><b>Interfejsi i p\u00ebrdoruesit t\u00eb nivelit t\u00eb kontrollit (Control plane UI)<\/b>: Njeriu nd\u00ebrvepron me nj\u00eb lloj interfejsi p\u00ebrdoruesi p\u00ebr t\u00eb menaxhuar sistemin. Kjo mund t\u00eb jet\u00eb nj\u00eb portal web, nj\u00eb aplikacion p\u00ebr linj\u00eb komandimi (CLI) ose nj\u00eb interfejs tjet\u00ebr. Me an\u00eb t\u00eb interfejsit t\u00eb p\u00ebrdoruesit, operatori ka qasje n\u00eb parametrat global\u00eb t\u00eb konfigurimit t\u00eb sistemit, si:\n<ul>\n<li>Menaxhimi i implementimit, blue\/green dhe\/o gradual i kalimit t\u00eb trafikut <\/li>\n<li>Parametrat e autentifikimit dhe autorizimit <\/li>\n<li>Specifikimet e tabel\u00ebs s\u00eb rrug\u00ebve, p\u00ebr shembull, kur aplikacioni A k\u00ebrkon informacion n\u00eb lidhje me &#171;\\\/foo&#187;, \u00e7far\u00eb ndodh <\/li>\n<li>Cil\u00ebsimet e balancuesit t\u00eb ngarkes\u00ebs, p.sh., koh\u00eb t\u00eb skadimit (timeouts), rip\u00ebrpjekje (retries), parametrat e ndalimit t\u00eb qarkut (circuit breaking) etj. <\/li>\n<\/ul>\n<\/li>\n<li> <b>Planifikuesi i ngarkesave (Workload scheduler)<\/b>: Sh\u00ebrbimet nisin n\u00eb infrastruktur\u00eb p\u00ebrmes nj\u00eb sistemi planifikimi\/orchestrimi t\u00eb caktuar, si Kubernetes ose Nomad. Planifikuesi \u00ebsht\u00eb p\u00ebrgjegj\u00ebs p\u00ebr ngarkimin e sh\u00ebrbimit me serverin e tij lokal proxy.<\/li>\n<li> <b>Zbulimi i sh\u00ebrbimit (Service discovery)<\/b>. Kur planifikuesi nis dhe ndalon ekzemplar\u00ebt e sh\u00ebrbimit, ai raporton gjendjen e pun\u00ebs n\u00eb sistemin e zbulimit t\u00eb sh\u00ebrbimit.<\/li>\n<li> <b>API-t\u00eb e konfigurimit t\u00eb serverit proxy lokal (Sidecar proxy configuration APIs) <\/b>: Serverat lokale proxy nxjerrin dinamikin\u00eb nga komponent\u00eb t\u00eb ndrysh\u00ebm t\u00eb sistemit sipas modelit t\u00eb \"konsistenc\u00ebs n\u00eb fund\" (eventually consistent) pa nd\u00ebrhyrjen e operatorit. E gjith\u00eb sistemi, e p\u00ebrb\u00ebr\u00eb nga t\u00eb gjith\u00eb instancat aktive t\u00eb sh\u00ebrbimeve dhe serverave lokal\u00eb proxy, p\u00ebrfundimisht bashkohet n\u00eb nj\u00eb ekosistem. API e planit t\u00eb t\u00eb dh\u00ebnave (data plane) n\u00eb Envoy \u00ebsht\u00eb nj\u00eb nga shembujt se si funksionon n\u00eb praktik\u00eb.<\/li>\n<\/ul>\n<p>\nN\u00eb thelb, q\u00ebllimi i planit t\u00eb kontrollit (control plane) \u00ebsht\u00eb t\u00eb vendos\u00eb politik\u00ebn q\u00eb p\u00ebrfundimisht do t\u00eb njihet nga plani i t\u00eb dh\u00ebnave (data plane). Plan\u00ebt m\u00eb t\u00eb avancuar t\u00eb kontrollit (control plane) do t\u00eb largojn\u00eb m\u00eb shum\u00eb detaje nga operatori t\u00eb disa sistemeve dhe do t\u00eb k\u00ebrkojn\u00eb m\u00eb pak ndihm\u00eb manuale, p\u00ebr sa koh\u00eb q\u00eb funksionojn\u00eb si\u00e7 duhet!..<\/p>\n<h1>Plani i t\u00eb dh\u00ebnave dhe plani i kontrollit. P\u00ebrmbledhje (Data plane vs. control plane summary)<\/h1>\n<p><\/p>\n<ul>\n<li> <b>Plani i t\u00eb dh\u00ebnave t\u00eb rrjetit t\u00eb sh\u00ebrbimeve (Service mesh data plane)<\/b>: prek \u00e7do paket\u00eb \/ k\u00ebrkes\u00eb n\u00eb sistem. \u00cbsht\u00eb p\u00ebrgjegj\u00ebs p\u00ebr zbulimin e aplikacioneve \/ sh\u00ebrbimeve, kontrollin e funksionit, routing, shp\u00ebrndarjen e ngarkes\u00ebs, autentifikimin \/ autorizimin dhe v\u00ebzhgimin.<\/li>\n<li> <b>Plani i kontrollit t\u00eb rrjetit t\u00eb sh\u00ebrbimeve (Service mesh control plane)<\/b>: ofron politik\u00ebn dhe konfigurimin p\u00ebr t\u00eb gjitha planet e pun\u00ebs t\u00eb t\u00eb dh\u00ebnave brenda rrjetit t\u00eb sh\u00ebrbimeve. Nuk prek asnj\u00eb paket\u00eb \/ k\u00ebrkes\u00eb n\u00eb sistem. Plani i kontrollit e kthen t\u00eb gjith\u00eb planet e t\u00eb dh\u00ebnave n\u00eb nj\u00eb sistem t\u00eb shp\u00ebrndar\u00eb.<\/li>\n<\/ul>\n<p><\/p>\n<h1>Gjendja aktuale e projektit (Current project landscape)<\/h1>\n<p>\nPas shpjegimit t\u00eb m\u00ebsip\u00ebrm, le t\u00eb shikojm\u00eb gjendjen aktuale t\u00eb projektit \"rrjeti i sh\u00ebrbimeve (service mesh)\".<\/p>\n<ul>\n<li> <b>Planet e t\u00eb dh\u00ebnave (Data planes)<\/b>: Linkerd, NGINX, HAProxy, Envoy, Traefik<\/li>\n<li><b>Planet e kontrollit (Control planes)<\/b>: Istio, Nelson, SmartStack <\/li>\n<\/ul>\n<p>\nN\u00eb vend q\u00eb t\u00eb b\u00ebj nj\u00eb analiz\u00eb t\u00eb thell\u00eb t\u00eb secilit nga zgjidhjet e m\u00ebsip\u00ebrme, do t\u00eb ndalem shkurtimisht n\u00eb disa pika q\u00eb, sipas mendimit tim, shkaktojn\u00eb shumic\u00ebn e konfuzionit n\u00eb ekosistem tani p\u00ebr tani.<\/p>\n<p>N\u00eb fillim t\u00eb vitit 2016, Linkerd ishte nj\u00eb nga server\u00ebt proxy t\u00eb par\u00eb t\u00eb planit t\u00eb dh\u00ebnave p\u00ebr rrjetin e sh\u00ebrbimeve dhe kreu nj\u00eb pun\u00eb fantastike n\u00eb rritjen e nd\u00ebrgjegjshm\u00ebris\u00eb dhe t\u00ebrheqjes ndaj modelit t\u00eb projektimit 'rrjeti i sh\u00ebrbimeve'. Rreth 6 muaj pas k\u00ebsaj, Envoy iu bashkua Linkerd, ndon\u00ebse kishte punuar n\u00eb Lyft q\u00eb nga fundi i vitit 2015. Linkerd dhe Envoy jan\u00eb dy projektet q\u00eb p\u00ebrmenden m\u00eb shpesh kur diskutohet p\u00ebr rrjetet e sh\u00ebrbimeve.<\/p>\n<p>Istio u shpall n\u00eb maj 2017. Objektivat e projektit Istio jan\u00eb shum\u00eb t\u00eb ngjashme me planin e avancuar t\u00eb menaxhimit t\u00eb treguar n\u00eb <b>figura 3<\/b>. Envoy p\u00ebr Istio \u00ebsht\u00eb serveri proxy 'ngjash\u00ebm'. K\u00ebshtu q\u00eb Istio \u00ebsht\u00eb plani i menaxhimit dhe Envoy \u00ebsht\u00eb plani i dh\u00ebnave. N\u00eb nj\u00eb koh\u00eb t\u00eb shkurt\u00ebr, Istio shkaktoi shum\u00eb entuziaz\u00ebm, dhe plane t\u00eb tjera t\u00eb dh\u00ebnash filluan integrimin si z\u00ebvend\u00ebsues t\u00eb Envoy (si Linkerd ashtu edhe NGINX demonstruan integrimin me Istio). Fakti q\u00eb n\u00eb nj\u00eb plan menaxhimi mund t\u00eb p\u00ebrdoren plane t\u00eb ndryshme t\u00eb dh\u00ebnash do t\u00eb thot\u00eb se plani i menaxhimit dhe plani i dh\u00ebnave nuk jan\u00eb domosdoshm\u00ebrisht t\u00eb lidhur ngusht\u00ebsisht. Nj\u00eb API si API universale i planit t\u00eb dh\u00ebnave Envoy mund t\u00eb formoj\u00eb nj\u00eb ur\u00eb midis dy pjes\u00ebve t\u00eb sistemit.<\/p>\n<p>Nelson dhe SmartStack ndihmojn\u00eb p\u00ebr t\u00eb ilustruar m\u00eb tej ndarjen e planit t\u00eb menaxhimit dhe planit t\u00eb dh\u00ebnave. Nelson p\u00ebrdor Envoy si proxy dhe nd\u00ebrton nj\u00eb plan t\u00eb besuesh\u00ebm menaxhimi t\u00eb rrjetit t\u00eb sh\u00ebrbimeve mbi stek HashiCorp, dmth. Nomad etj. SmartStack \u00ebsht\u00eb ndoshta i pari i nj\u00eb vale t\u00eb re t\u00eb rrjeteve t\u00eb sh\u00ebrbimeve. SmartStack formon planin e menaxhimit p\u00ebrreth HAProxy ose NGINX, duke demonstruar mund\u00ebsin\u00eb e ndarjes s\u00eb planit t\u00eb menaxhimit t\u00eb rrjetit t\u00eb sh\u00ebrbimeve me planin e dh\u00ebnave.<\/p>\n<p>Arkitektura mikroservisave me rrjetin e sh\u00ebrbimeve (service mesh) po t\u00ebrheq gjithnj\u00eb e m\u00eb shum\u00eb v\u00ebmendje (si duhet!), dhe gjithnj\u00eb e m\u00eb shum\u00eb projekte dhe ofrues po fillojn\u00eb t\u00eb punojn\u00eb n\u00eb k\u00ebt\u00eb drejtim. Gjat\u00eb viteve t\u00eb ardhshme do t\u00eb shohim shum\u00eb innovacione si n\u00eb fushat e t\u00eb dh\u00ebnave (data plane) ashtu edhe n\u00eb fushat e menaxhimit (control plane), si dhe nj\u00eb p\u00ebrzierje t\u00eb m\u00ebtejshme t\u00eb komponent\u00ebve t\u00eb ndrysh\u00ebm. N\u00eb fund t\u00eb fundit, arkitektura mikroservisave duhet t\u00eb b\u00ebhet m\u00eb e qart\u00eb dhe m\u00eb magjike (?) p\u00ebr operatorin.<br \/>\nShpresoj p\u00ebr m\u00eb pak e m\u00eb pak irritim.<\/p>\n<h1>Pikat ky\u00e7e (Key takeaways)<\/h1>\n<p><\/p>\n<ul>\n<li> Rrjeti i sh\u00ebrbimeve (service mesh) p\u00ebrb\u00ebhet nga dy pjes\u00eb t\u00eb ndryshme: fushata e t\u00eb dh\u00ebnave (data plane) dhe fushata e menaxhimit (control plane). T\u00eb dy komponent\u00ebt jan\u00eb t\u00eb domosdosh\u00ebm, dhe pa ta, sistemi nuk do t\u00eb funksiononte.<\/li>\n<li>T\u00eb gjith\u00eb jan\u00eb t\u00eb njohur me fushat\u00ebn e menaxhimit (control plane), dhe p\u00ebr momentin, fushata e menaxhimit (control plane) mund t\u00eb jeni ju! <\/li>\n<li>T\u00eb gjitha fushat e t\u00eb dh\u00ebnave (data plane) konkurrojn\u00eb me nj\u00ebra-tjetr\u00ebn p\u00ebr funksione, performanc\u00eb, konfiguroshm\u00ebri dhe zgjerueshm\u00ebri. <\/li>\n<li> T\u00eb gjitha fushat e menaxhimit (control plane) konkurrojn\u00eb me nj\u00ebra-tjetr\u00ebn p\u00ebr funksione, konfiguroshm\u00ebri, zgjerueshm\u00ebri dhe p\u00ebrdorshm\u00ebri.<\/li>\n<li>Nj\u00eb fushat\u00eb e menaxhimit (control plane) mund t\u00eb p\u00ebrmbaj\u00eb abstraksione dhe API t\u00eb p\u00ebrshtatshme q\u00eb lejojn\u00eb p\u00ebrdorimin e disa fushave t\u00eb t\u00eb dh\u00ebnave (data plane). <\/li>\n<\/ul>\n<p>Burimi: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/462699\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0438\u0432\u0435\u0442, \u0425\u0430\u0431\u0440! \u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e \u0432\u0430\u0448\u0435\u043c\u0443 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u044e \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 \u00abService mesh data plane vs control plane\u00bb \u0430\u0432\u0442\u043e\u0440\u0430 Matt Klein. \u0412 \u044d\u0442\u043e\u0442 \u0440\u0430\u0437 \u00ab\u0437\u0430\u0445\u043e\u0442\u0435\u043b\u043e\u0441\u044c \u0438 \u043f\u0435\u0440\u0435\u0432\u0435\u043b\u043e\u0441\u044c\u00bb \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043e\u0431\u043e\u0438\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 service mesh, data plane \u0438 control plane. \u042d\u0442\u043e \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043c\u043d\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u0441\u0430\u043c\u044b\u043c \u043f\u043e\u043d\u044f\u0442\u043d\u044b\u043c \u0438 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u043c, \u0430 \u0433\u043b\u0430\u0432\u043d\u043e\u0435 \u043f\u043e\u0434\u0432\u043e\u0434\u044f\u0449\u0438\u043c \u043a \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044e \u00ab\u0410 \u043d\u0443\u0436\u043d\u043e \u043b\u0438 \u043e\u043d\u043e \u0432\u043e\u043e\u0431\u0449\u0435?\u00bb. \u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0438\u0434\u0435\u044f \u00ab\u0421\u0435\u0440\u0432\u0438\u0441\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":27757,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-37030","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0440\u0438\u0432\u0435\u0442, \u0425\u0430\u0431\u0440!\" \/>\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\/sq\/blog\/administrirovanie\/servisnaya-set-ploskost-dannyh-i-ploskosti-upravleniya-service-mesh-data-plane-vs-control-plane\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"sq_AL\" \/>\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\u0421\u0435\u0440\u0432\u0438\u0441\u043d\u0430\u044f \u0441\u0435\u0442\u044c, \u00ab\u041f\u043b\u043e\u0441\u043a\u043e\u0441\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0445\u00bb \u0438 \u00ab\u041f\u043b\u043e\u0441\u043a\u043e\u0441\u0442\u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f\u00bb (Service mesh data plane vs. control plane) | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0438\u0432\u0435\u0442, \u0425\u0430\u0431\u0440!\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/servisnaya-set-ploskost-dannyh-i-ploskosti-upravleniya-service-mesh-data-plane-vs-control-plane\" \/>\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-31T19:15:23+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:15:23+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\udd47Rrjeti i sh\u00ebrbimeve, \u00abFushata e t\u00eb dh\u00ebnave\u00bb dhe \u00abFushatat e menaxhimit\u00bb (Service mesh data plane vs. control plane) | ProHoster","description":"P\u00ebrsh\u00ebndetje, Habr!","canonical_url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/servisnaya-set-ploskost-dannyh-i-ploskosti-upravleniya-service-mesh-data-plane-vs-control-plane","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sq_AL","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\u0421\u0435\u0440\u0432\u0438\u0441\u043d\u0430\u044f \u0441\u0435\u0442\u044c, \u00ab\u041f\u043b\u043e\u0441\u043a\u043e\u0441\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0445\u00bb \u0438 \u00ab\u041f\u043b\u043e\u0441\u043a\u043e\u0441\u0442\u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f\u00bb (Service mesh data plane vs. control plane) | ProHoster","og:description":"\u041f\u0440\u0438\u0432\u0435\u0442, \u0425\u0430\u0431\u0440!","og:url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/servisnaya-set-ploskost-dannyh-i-ploskosti-upravleniya-service-mesh-data-plane-vs-control-plane","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-31T19:15:23+00:00","article:modified_time":"2019-10-31T19:15:23+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"37030","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-02-09 17:07:03","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:34:25","updated":"2026-02-09 17:07:03","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/37030","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/comments?post=37030"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/37030\/revisions"}],"predecessor-version":[{"id":158592,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/37030\/revisions\/158592"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media\/27757"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media?parent=37030"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/categories?post=37030"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/tags?post=37030"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}