{"id":56218,"date":"2020-02-07T00:00:00","date_gmt":"2020-02-06T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/dark-launch-v-istio-sekretnye-sluzhby"},"modified":"2020-02-18T14:04:26","modified_gmt":"2020-02-18T11:04:26","slug":"dark-launch-v-istio-sekretnye-sluzhby","status":"publish","type":"post","link":"https:\/\/prohoster.info\/hr\/blog\/administrirovanie\/dark-launch-v-istio-sekretnye-sluzhby","title":{"rendered":"Dark Launch u Istio: tajne usluge","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>\u00abOpasnost \u2013 moje drugo ime\u00bb, govorio je Austin Powers, \u010dovjek-zagonetka me\u0111unarodnog formata. No, ono \u0161to je cijenjeno kod superagenta i tajnih slu\u017ebi, nije primjereno za IT sektore, gdje je dosada mnogo bolja od opasnosti. <\/p>\n<p><img decoding=\"async\" alt=\"Dark Launch u Istio: tajne usluge\" src=\"\/wp-content\/uploads\/2020\/02\/c29a2cabb6fca30d622401987f3e488a.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nIstio zajedno s OpenShift i Kubernetes \u010dini implementaciju mikroservisa zaista dosadnom i predvidljivom \u2013 i to je sjajno. O tome i jo\u0161 mnogo \u010demu razgovarat \u0107emo u \u010detvrtom i posljednjem postu iz serije o Istio. <br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3>Kada je dosada \u2013 to je u redu<\/h3>\n<p>\nU na\u0161em slu\u010daju dosada nastaje samo u zavr\u0161noj fazi, kada ostaje samo sjediti i promatrati proces. No, za to je potrebno prethodno sve pravilno postaviti, a ovdje vas \u010deka mnogo zanimljivog.<\/p>\n<p>Prilikom implementacije nove verzije va\u0161eg softvera trebate razmotriti sve mogu\u0107nosti minimiziranja rizika. Rad u paralelnom re\u017eimu je vrlo mo\u0107na i provjerena metoda testiranja, a Istio omogu\u0107ava kori\u0161tenje \u201etajne slu\u017ebe\u201c (skrivene od o\u010diju javnosti verzije va\u0161eg mikroservisa) bez ometanja rada produkcijskog sustava. Za to postoji \u010dak i poseban termin \u2013 \u201eTajna implementacija\u201c (Dark Launch), koja se aktivira funkcijom s jo\u0161 tajanstvenijim imenom \u201emirror traffic\u201c.<\/p>\n<p>Obratite pozornost da se u prvom re\u010denici prethodnog paragrafa koristi termin \u201eimplementacija\u201c (deploy), a ne \u201eizdavanje\u201c (release). Zaista biste trebali mo\u0107i implementirati \u2013 i, naravno, koristiti \u2013 svoj mikroservis koliko god \u017eelite. Ova usluga trebala bi biti sposobna primati i obra\u0111ivati promet, pru\u017eati rezultate, a tako\u0111er pisati u logove i biti pra\u0107ena. No, sama usluga nije nu\u017eno odobrena za produkciju. Implementacija i izdavanje softvera nisu uvijek isto. Implementaciju mo\u017eete izvr\u0161iti kad god \u017eelite, dok je izdavanje mogu\u0107e samo kada ste kona\u010dno spremni.<\/p>\n<h3>Organizacija dosade \u2013 to je zanimljivo<\/h3>\n<p>\nPogledajte sljede\u0107e pravilo usmjeravanja Istio, koje usmjerava sve HTTP zahtjeve na mikroservis recommendation v1 (svi primjeri su preuzeti iz <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/redhat-developer-demos\/istio-tutorial#mirroring-traffic-dark-launch\">Istio Tutorial GitHub repozitorija<\/a><\/noindex>), istovremeno ih zrcale\u0107i na mikroservis recommendation v2:<\/p>\n<p><img decoding=\"async\" alt=\"Dark Launch u Istio: tajne usluge\" src=\"\/wp-content\/uploads\/2020\/02\/7139950ed58f23ceb43546ec932c6b92.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nObratite pa\u017enju na oznaku <code>mirror:<\/code> na dnu ekrana \u2013 to je ono \u0161to postavlja zrcaljenje prometa. Da, tako jednostavno!<\/p>\n<p>Rezultat ovog pravila \u0107e biti taj da \u0107e va\u0161 produkcijski sustav (v1) i dalje obra\u0111ivati dolazne zahtjeve, ali \u0107e se zahtjevi asinhrono preslikavati na v2, \u0161to zna\u010di da \u0107e tamo odlaziti njihovi potpuni duplikati. Tako \u0107ete mo\u0107i testirati rad v2 u stvarnim uvjetima \u2013 na pravim podacima i prometu \u2013 bez ikakvog ometanja rada produkcijskog sustava. \u010cini li to organizaciju testiranja dosadnom? Da, svakako. Ali se to radi na zanimljiv na\u010din.<\/p>\n<h3>Dodajmo drame<\/h3>\n<p>\nObratite pa\u017enju da u kodu v2 trebate predvidjeti situacije kada dolazni zahtjevi mogu dovesti do promjene podataka. Samo se zahtjevi lako i neprimjetno preslikavaju, ali izbor na\u010dina obrade u testnoj verziji ostaje na vama \u2013 a to je ve\u0107 pomalo uzbudljivo.<\/p>\n<h3>Ponovimo va\u017enu to\u010dku <\/h3>\n<p>\nTajni launch s preslikavanjem prometa (Dark Launch\/Request Mirroring) mo\u017ee se izvesti bez ikakvog dodirivanja koda.<\/p>\n<h3>Hrana za razmi\u0161ljanje<\/h3>\n<p>\nA \u0161to ako dio zahtjeva koji preslikavate ne \u0161aljete na v1, nego na v2? Na primjer, jedan postotak svih zahtjeva ili samo zahtjeve odre\u0111ene skupine korisnika. A zatim, gledaju\u0107i kako v2 radi, postupno prebacujete sve zahtjeve na novu verziju. Ili obrnuto, vra\u0107ate sve na v1 ako ne\u0161to s v2 ne ide kako treba. \u010cini se da se to zove Canary Deployment (\"kanarinsko implementiranje\" \u2013 termin <noindex><a rel=\"nofollow\" href=\"http:\/\/miningwiki.ru\/wiki\/%D0%9A%D0%B0%D0%BD%D0%B0%D1%80%D0%B5%D0%B9%D0%BA%D0%B0_%D0%B2_%D1%88%D0%B0%D1%85%D1%82%D0%B5\">potje\u010de iz rudarstva<\/a><\/noindex>, i da je imao rusko podrijetlo, vjerojatno bi sadr\u017eavao aluziju na <noindex><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/watch?v=7yGrgwE_k4I\">ma\u010dke<\/a><\/noindex>), i za sada \u0107emo to razmotriti detaljnije.<\/p>\n<h2>Canary Deployment u Istio: pojednostavljujemo uvo\u0111enje u rad<\/h2>\n<p><\/p>\n<h3>Pa\u017eljivo i postupno<\/h3>\n<p>\nSu\u0161tina modela Canary Deployment je iznimno jednostavna: kada pokre\u0107ete novu verziju svog softvera (u na\u0161em slu\u010daju \u2013 mikroservisa), prvo omogu\u0107avate pristup maloj skupini korisnika. Ako sve ide dobro, polako pove\u0107avate tu skupinu sve dok nova verzija ne po\u010dne praviti probleme, ili \u2013 ako se to ne dogodi \u2013 na kraju prebacite sve korisnike na nju. Razra\u0111uju\u0107i i postupno uvode\u0107i novu verziju, te kontroliraju\u0107i prijelaz korisnika, mo\u017eete smanjiti rizike i maksimizirati povratne informacije.<\/p>\n<p>Naravno, Istio olak\u0161ava Canary Deployment nude\u0107i nekoliko dobrih opcija za inteligentno usmjeravanje zahtjeva. I da, sve se to mo\u017ee u\u010diniti bez dodirivanja va\u0161eg izvornih kod.<\/p>\n<h3>Filtriramo preglednik<\/h3>\n<p>\nJedan od najjednostavnijih kriterija usmjeravanja je preusmjeravanje ovisno o pregledniku. Pretpostavimo da \u017eelite da na v2 idu samo zahtjevi iz preglednika Safari. Ovako to mo\u017eete u\u010diniti:<\/p>\n<p><img decoding=\"async\" alt=\"Dark Launch u Istio: tajne usluge\" src=\"\/wp-content\/uploads\/2020\/02\/3d9b763ec32c250ba88c8e54f701c602.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nPrimijenimo ovo pravilo usmjeravanja, a zatim \u0107emo tim <code>curl<\/code> u petlji simulirati stvarne zahtjeve prema mikroservisu. Kao \u0161to mo\u017eete vidjeti na snimci zaslona, svi oni odlaze na v1:<\/p>\n<p><img decoding=\"async\" alt=\"Dark Launch u Istio: tajne usluge\" src=\"\/wp-content\/uploads\/2020\/02\/cf270c01680b6bd19045bca239bf89c6.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nA gdje je promet na v2? Budu\u0107i da su u na\u0161em primjeru svi zahtjevi dolazili samo iz na\u0161e komandne linije, jednostavno ga nema. No obratite pa\u017enju na donje retke na snimci iznad: to je odgovor na na\u0161 zahtjev iz preglednika Safari, koji je zauzvrat dao ovo:<\/p>\n<p><img decoding=\"async\" alt=\"Dark Launch u Istio: tajne usluge\" src=\"\/wp-content\/uploads\/2020\/02\/dc17ede0c2aac97284d27a2a77ce0651.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<h3>Neograni\u010dena mo\u0107<\/h3>\n<p>\nVe\u0107 smo pisali da regularni izrazi pru\u017eaju vrlo mo\u0107ne mogu\u0107nosti za usmjeravanje zahtjeva. Pogledajte sljede\u0107i primjer (mislimo da \u0107ete i sami shvatiti \u0161to radi):<\/p>\n<p><img decoding=\"async\" alt=\"Dark Launch u Istio: tajne usluge\" src=\"\/wp-content\/uploads\/2020\/02\/edf8d60651eef50af3e83aae67fde1db.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nSada vjerojatno ve\u0107 imate predstavu o tome \u0161to su sposobni regularni izrazi.<\/p>\n<h3>Djelujte pametno<\/h3>\n<p>\nPametno usmjeravanje, osobito obrada zaglavlja paketa koriste\u0107i regularne izraze, omogu\u0107ava vam da upravljate prometom onako kako \u017eelite. I to znatno pojednostavljuje uvo\u0111enje novog koda \u2013 jednostavno je, ne zahtijeva promjenu samog koda, i po potrebi se sve mo\u017ee brzo vratiti kako je bilo.<\/p>\n<h3>Zainteresirani?<\/h3>\n<p>\nJeste li se u\u017eelili eksperimentirati s Istio, Kubernetesom i OpenShiftom na svom ra\u010dunalu? Tim <noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/about\/\">Red Hat Developer Team<\/a><\/noindex> pripremio je odli\u010dan <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/redhat-developer-demos\/istio-tutorial\">vodi\u010d<\/a><\/noindex> o ovoj temi i objavio sve prate\u0107e datoteke za javno kori\u0161tenje. Pa, naprijed, i ne uskra\u0107ujte si ni\u0161ta.<br \/>\n\u2003<\/p>\n<h2>Istio Egress: izlaz kroz suvenirnicu<\/h2>\n<p>\nPrimjenom Istio-a zajedno s Red Hat OpenShiftom i Kubernetesom, mo\u017eete zna\u010dajno olak\u0161ati svoj \u017eivot s mikroservisima. Servisna mre\u017ea Istio je skrivena unutar Kubernetesovih podova, a va\u0161 kod se izvodi (ve\u0107inom) izolirano. Performanse, jednostavnost promjena, pra\u0107enje i ostalo \u2013 sve to se lako koristi zahvaljuju\u0107i primjeni sidecar kontejnera. No, \u0161to u\u010diniti ako va\u0161 mikroservis mora komunicirati s drugim servisima koji su izvan va\u0161eg OpenShift-Kubernetes sustava?<\/p>\n<p>Ovdje nastupa Istio Egress. Ukratko, on jednostavno omogu\u0107uje pristup resursima (\u010ditaj: 'uslugama') koji nisu unutar va\u0161ih Kubernetes podova. Ako ne izvr\u0161ite dodatne postavke, u Istio Egress okru\u017eenju promet se usmjerava samo unutar klastera podova i izme\u0111u takvih klastera na temelju unutarnjih IP tablica. Ovakvo zatvaranje funkcionira savr\u0161eno sve dok vam nije potreban pristup vanjskim uslugama.<\/p>\n<p>Egress omogu\u0107uje zaobila\u017eenje gore navedenih IP tablica, ili na temelju Egress pravila, ili za raspon IP adresa.<\/p>\n<p>Pretpostavimo da imamo Java program koji izvodi GET zahtjev na httpbin.org\/headers.<\/p>\n<p>(httpbin.org je jednostavno zgodan resurs za testiranje odlaznih zahtjeva usluga.)<\/p>\n<p>Ako upi\u0161emo u komandnu liniju <code>curl http:\/\/httpbin.org\/headers<\/code>, vidjet \u0107emo sljede\u0107e:<\/p>\n<p><img decoding=\"async\" alt=\"Dark Launch u Istio: tajne usluge\" src=\"\/wp-content\/uploads\/2020\/02\/df0a2e1be00da0077bdb94a4d9fa091c.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nIli mo\u017eemo otvoriti istu adresu u pregledniku:<\/p>\n<p><img decoding=\"async\" alt=\"Dark Launch u Istio: tajne usluge\" src=\"\/wp-content\/uploads\/2020\/02\/4fe04b4e888106d98b8f71cccf6ab430.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nKao \u0161to vidimo, usluga koja se nalazi tamo jednostavno vra\u0107a proslije\u0111ene joj zaglavlja.<\/p>\n<h3>Import zamjenjujemo na jednostavan na\u010din<\/h3>\n<p>\nSada uzmimo Java kod ove vanjske usluge u odnosu na na\u0161 sustav i pokrenimo ga kod nas, gdje, podsje\u0107amo, imamo Istio. (Mo\u017eete to u\u010diniti sami, pozivaju\u0107i se na <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/redhat-developer-demos\/istio-tutorial#egress\">na\u0161 vodi\u010d za Istio<\/a><\/noindex>.) Nakon \u0161to izgradimo odgovaraju\u0107i image i pokrenemo ga na OpenShift platformi, pozvat \u0107emo ovu uslugu naredbom <code>curl egresshttpbin-istioegress.$(minishift ip).nip.io<\/code>, nakon \u010dega \u0107emo na ekranu vidjeti ovo:<\/p>\n<p><img decoding=\"async\" alt=\"Dark Launch u Istio: tajne usluge\" src=\"\/wp-content\/uploads\/2020\/02\/ed71b5ba2e62415d1bbe3b54bba71eb8.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n\u0160to se dogodilo? Sve je radilo doslovno prije trenutka. \u0160to zna\u010di Not Found? Pa, sada smo upravo napravili za njega <code>curl<\/code>.<\/p>\n<h3>Pro\u0161irujemo IP tablice na cijeli internet<\/h3>\n<p>\nKriviti (ili zahvaliti) za to treba Istio. Jer Istio su jednostavno sidecar kontejneri, koji se brinu za otkrivanje i usmjeravanje (i jo\u0161 mnogo drugih stvari o kojima smo ranije pri\u010dali). Iz tog razloga IP tablice znaju samo o onome \u0161to se nalazi unutar va\u0161ih klastera. A httpbin.org je smje\u0161ten vani i stoga nije dostupan. I tu nastupa Istio Egress \u2013 bez ikakvih promjena u va\u0161em izvornoj kodu.<\/p>\n<p>U nastavku se nalazi Egress pravilo koje tjera Istio da tra\u017ei (ako je potrebno, i u cijelom svijetu internetu) potrebnu uslugu, u ovom slu\u010daju, httpbin.org. Kao \u0161to se mo\u017ee vidjeti iz ovog dokumenta (egress_httpbin.yml), funkcionalnost ovdje je prili\u010dno jednostavna:<\/p>\n<p><img decoding=\"async\" alt=\"Dark Launch u Istio: tajne usluge\" src=\"\/wp-content\/uploads\/2020\/02\/47c65b06769d077a46e456f802b32a55.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nSada je potrebno samo primijeniti ovo pravilo:<\/p>\n<pre><code class=\"plaintext\">istioctl create -f egress_httpbin.yml -n istioegress\n<\/code><\/pre>\n<p>\nPravila Egress se mogu pregledati naredbom <code>istioctl get egressrules<\/code>:<\/p>\n<p><img decoding=\"async\" alt=\"Dark Launch u Istio: tajne usluge\" src=\"\/wp-content\/uploads\/2020\/02\/dbbd11def744eacd98ce4638ea4dd30a.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nI kona\u010dno, opet pokre\u0107emo naredbu <i>curl<\/i> \u2013 i vidimo da sve radi:<\/p>\n<p><img decoding=\"async\" alt=\"Dark Launch u Istio: tajne usluge\" src=\"\/wp-content\/uploads\/2020\/02\/3ab69421969e4fdd35a4a712d22df785.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<h3>Razmi\u0161ljamo otvoreno<\/h3>\n<p>\nKao \u0161to vidite, Istio omogu\u0107ava organizaciju interakcije i s vanjskim svijetom. Drugim rije\u010dima, jo\u0161 uvijek mo\u017eete stvarati usluge OpenShift i upravljati njima putem Kubernetesa, dr\u017ee\u0107i sve u podovima koji se skaliraju gore-dolje po potrebi. I pritom se mo\u017eete slobodno obra\u0107ati vanjskim uslugama u odnosu na va\u0161e okru\u017eenje. I da, jo\u0161 jednom ponavljamo, sve to mo\u017eete raditi, a da pritom ne dodirujete svoj kod.<\/p>\n<p>Ovo je bio posljednji post iz serije o Istio. Ostanite s nama \u2013 pred nama je mnogo zanimljivog!<br \/>\n<br \/>Izvor: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/redhatrussia\/blog\/487214\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u00ab\u041e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c \u2013 \u043c\u043e\u0435 \u0432\u0442\u043e\u0440\u043e\u0435 \u0438\u043c\u044f\u00bb, \u2013 \u0433\u043e\u0432\u0430\u0440\u0438\u0432\u0430\u043b \u041e\u0441\u0442\u0438\u043d \u041f\u0430\u0443\u044d\u0440\u0441, \u0447\u0435\u043b\u043e\u0432\u0435\u043a-\u0437\u0430\u0433\u0430\u0434\u043a\u0430 \u043c\u0435\u0436\u0434\u0443\u043d\u0430\u0440\u043e\u0434\u043d\u043e\u0433\u043e \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0430. \u041d\u043e \u0442\u043e, \u0447\u0442\u043e \u0432 \u043f\u043e\u0447\u0435\u0442\u0435 \u0443 \u0441\u0443\u043f\u0435\u0440\u0430\u0433\u0435\u043d\u0442\u043e\u0432 \u0438 \u0441\u043f\u0435\u0446\u0441\u043b\u0443\u0436\u0431, \u0441\u043e\u0432\u0441\u0435\u043c \u043d\u0435 \u0433\u043e\u0434\u0438\u0442\u0441\u044f \u0434\u043b\u044f \u0441\u043b\u0443\u0436\u0431 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u044b\u0445, \u0433\u0434\u0435 \u0441\u043a\u0443\u043a\u043e\u0442\u0438\u0449\u0430 \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u043b\u0443\u0447\u0448\u0435 \u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0435\u0439. \u0418 Istio \u0432\u043c\u0435\u0441\u0442\u0435 OpenShift \u0438 Kubernetes \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0430\u044e\u0442 \u0440\u0430\u0437\u0432\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u0435 \u043c\u0438\u043a\u0440\u043e\u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 \u0432 \u0434\u0435\u043b\u043e \u043f\u043e-\u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u043c\u0443 \u0441\u043a\u0443\u0447\u043d\u043e\u0435 \u0438 \u043f\u0440\u0435\u0434\u0441\u043a\u0430\u0437\u0443\u0435\u043c\u043e\u0435 \u2013 \u0438 \u044d\u0442\u043e \u043f\u0440\u0435\u043a\u0440\u0430\u0441\u043d\u043e. \u041e\u0431 \u044d\u0442\u043e\u043c \u0438 \u043e [&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-56218","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u00ab\u041e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c \u2013 \u043c\u043e\u0435 \u0432\u0442\u043e\u0440\u043e\u0435 \u0438\u043c\u044f\u00bb, \u2013 \u0433\u043e\u0432\u0430\u0440\u0438\u0432\u0430\u043b \u041e\u0441\u0442\u0438\u043d \u041f\u0430\u0443\u044d\u0440\u0441, \u0447\u0435\u043b\u043e\u0432\u0435\u043a-\u0437\u0430\u0433\u0430\u0434\u043a\u0430 \u043c\u0435\u0436\u0434\u0443\u043d\u0430\u0440\u043e\u0434\u043d\u043e\u0433\u043e \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0430.\" \/>\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\/hr\/blog\/administrirovanie\/dark-launch-v-istio-sekretnye-sluzhby\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"hr_HR\" \/>\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\udd47Dark Launch \u0432 Istio: \u0441\u0435\u043a\u0440\u0435\u0442\u043d\u044b\u0435 \u0441\u043b\u0443\u0436\u0431\u044b | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u00ab\u041e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c \u2013 \u043c\u043e\u0435 \u0432\u0442\u043e\u0440\u043e\u0435 \u0438\u043c\u044f\u00bb, \u2013 \u0433\u043e\u0432\u0430\u0440\u0438\u0432\u0430\u043b \u041e\u0441\u0442\u0438\u043d \u041f\u0430\u0443\u044d\u0440\u0441, \u0447\u0435\u043b\u043e\u0432\u0435\u043a-\u0437\u0430\u0433\u0430\u0434\u043a\u0430 \u043c\u0435\u0436\u0434\u0443\u043d\u0430\u0440\u043e\u0434\u043d\u043e\u0433\u043e \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0430.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/hr\/blog\/administrirovanie\/dark-launch-v-istio-sekretnye-sluzhby\" \/>\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=\"2020-02-06T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:04:26+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\udd47Dark Launch u Istio: tajne usluge | ProHoster","description":"\u201eOpasnost je moje drugo ime\u201c, govorio je Austin Powers, \u010dovjek-zagonetka me\u0111unarodnog razmjera.","canonical_url":"https:\/\/prohoster.info\/hr\/blog\/administrirovanie\/dark-launch-v-istio-sekretnye-sluzhby","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"hr_HR","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\udd47Dark Launch \u0432 Istio: \u0441\u0435\u043a\u0440\u0435\u0442\u043d\u044b\u0435 \u0441\u043b\u0443\u0436\u0431\u044b | ProHoster","og:description":"\u00ab\u041e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c \u2013 \u043c\u043e\u0435 \u0432\u0442\u043e\u0440\u043e\u0435 \u0438\u043c\u044f\u00bb, \u2013 \u0433\u043e\u0432\u0430\u0440\u0438\u0432\u0430\u043b \u041e\u0441\u0442\u0438\u043d \u041f\u0430\u0443\u044d\u0440\u0441, \u0447\u0435\u043b\u043e\u0432\u0435\u043a-\u0437\u0430\u0433\u0430\u0434\u043a\u0430 \u043c\u0435\u0436\u0434\u0443\u043d\u0430\u0440\u043e\u0434\u043d\u043e\u0433\u043e \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0430.","og:url":"https:\/\/prohoster.info\/hr\/blog\/administrirovanie\/dark-launch-v-istio-sekretnye-sluzhby","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":"2020-02-06T21:00:00+00:00","article:modified_time":"2020-02-18T11:04:26+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"56218","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":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 19:28:24","updated":"2022-10-05 04:55:29","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts\/56218","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/comments?post=56218"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts\/56218\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/media?parent=56218"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/categories?post=56218"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/tags?post=56218"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}