{"id":54987,"date":"2020-01-09T00:00:00","date_gmt":"2020-01-08T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/istio-circuit-breaker-otklyuchaem-neispravnye-kontejnery"},"modified":"2020-02-18T14:03:03","modified_gmt":"2020-02-18T11:03:03","slug":"istio-circuit-breaker-otklyuchaem-neispravnye-kontejnery","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/istio-circuit-breaker-otklyuchaem-neispravnye-kontejnery","title":{"rendered":"Istio Circuit Breaker: st\u00e4nger av defekta containrar","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Helgerna \u00e4r \u00f6ver, och vi \u00e5terv\u00e4nder med v\u00e5rt andra inl\u00e4gg i serien om Istio Service Mesh.<\/p>\n<p><img decoding=\"async\" alt=\"Istio Circuit Breaker: st\u00e4nger av defekta containrar\" src=\"\/wp-content\/uploads\/2020\/01\/6d65a62468d0f17570cb8b92e03ceb71.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDagens \u00e4mne \u00e4r Circuit Breaker, som p\u00e5 svenska betyder \"automats\u00e4kring\". I Istio st\u00e4nger denna automat av inte en kortsluten eller \u00f6verbelastad krets, utan defekta containrar.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3>Hur det b\u00f6r fungera i teorin<\/h3>\n<p>\nN\u00e4r mikrotj\u00e4nster hanteras av Kubernetes, till exempel inom plattformen OpenShift, skalas de automatiskt upp och ner beroende p\u00e5 belastningen. Eftersom mikrotj\u00e4nster k\u00f6rs i poddar, kan det vid en enda slutpunkt finnas flera instanser av en containeriserad mikrotj\u00e4nst, och Kubernetes hanterar f\u00f6rfr\u00e5gningar och belastningsbalansering mellan dem. Och - i teorin - borde allt detta fungera utm\u00e4rkt.<\/p>\n<p>Vi minns att mikrotj\u00e4nster \u00e4r sm\u00e5 och kortlivade. Denna kortlivade natur, som inneb\u00e4r enkelhet i b\u00e5de skapande och borttagning, underskattas ofta. Att en ny instans av en mikrotj\u00e4nst f\u00f6ds och d\u00f6r i en pod \u00e4r helt normalt, och OpenShift och Kubernetes hanterar detta bra - allt fungerar utm\u00e4rkt - men \u00e5terigen endast i teorin.<\/p>\n<h3>Hur det fungerar i praktiken<\/h3>\n<p>\nF\u00f6rest\u00e4ll dig nu att en specifik instans av en mikrotj\u00e4nst, allts\u00e5 en container, har blivit defekt: antingen svarar den inte (fel 503), eller - \u00e4nnu v\u00e4rre - den svarar, men f\u00f6r sent. Med andra ord, den h\u00e4ngt sig eller svarar inte p\u00e5 f\u00f6rfr\u00e5gningar, men tas inte automatiskt bort fr\u00e5n poolen. Vad ska g\u00f6ras i det h\u00e4r fallet? Upprepa f\u00f6rs\u00f6ket? Ta bort den fr\u00e5n ruttningen? Och vad betyder \"f\u00f6r sent\" \u2013 hur mycket tid \u00e4r det, och vem best\u00e4mmer det? Kanske helt enkelt ge den en paus och prova senare? Om ja, hur l\u00e4nge?<\/p>\n<h3>Vad \u00e4r Pool Ejection i Istio<\/h3>\n<p>\nH\u00e4r kommer Istio till unds\u00e4ttning med sina Circuit Breaker-s\u00e4kringar, som tillf\u00e4lligt tar bort defekta containrar fr\u00e5n poolen av resurser f\u00f6r ruttning och belastningsbalansering, genom att implementera Pool Ejection-processen.<\/p>\n<p>Genom att anv\u00e4nda strategin f\u00f6r avvikelsedetektering (outlier detection) detekterar Istio avvikande poddar som skiljer sig fr\u00e5n de andra, och tar bort dem fr\u00e5n resurspoolen under en angiven tid som kallas \"s\u00f6mnf\u00f6nster\" (sleep window). <\/p>\n<p>F\u00f6r att demonstrera hur detta fungerar i Kubernetes p\u00e5 OpenShift-plattformen, b\u00f6rjar vi med en sk\u00e4rmdump av normalt fungerande mikrotj\u00e4nster fr\u00e5n exemplet i repositorn. <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/redhat-developer-demos\/istio-tutorial\">Red Hat Developer Demos<\/a><\/noindex>. H\u00e4r har vi tv\u00e5 pods, v1 och v2, d\u00e4r varje pod har en container som k\u00f6rs. N\u00e4r Istios routningsregler inte anv\u00e4nds till\u00e4mpar Kubernetes som standard en j\u00e4mnt balanserad cyklisk routing:<\/p>\n<p><img decoding=\"async\" alt=\"Istio Circuit Breaker: st\u00e4nger av defekta containrar\" src=\"\/wp-content\/uploads\/2020\/01\/6bd750250a84fdbd2f3e1fcfe0c2d9fd.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<h3>F\u00f6rbereder oss f\u00f6r fel<\/h3>\n<p>\nInnan vi g\u00f6r en Pool Ejection, m\u00e5ste vi skapa en Istio-routningsregel. Anta att vi vill f\u00f6rdela f\u00f6rfr\u00e5gningar mellan pods i f\u00f6rh\u00e5llandet 50\/50. Dessutom ska vi \u00f6ka antalet containrar v2 fr\u00e5n en till tv\u00e5, s\u00e5 h\u00e4r:<\/p>\n<pre><code class=\"plaintext\">oc scale deployment recommendation-v2 --replicas=2 -n tutorial\n<\/code><\/pre>\n<p>\nNu st\u00e4ller vi in en routningsregel s\u00e5 att trafiken f\u00f6rdelas mellan pods i f\u00f6rh\u00e5llandet 50\/50.<\/p>\n<p><img decoding=\"async\" alt=\"Istio Circuit Breaker: st\u00e4nger av defekta containrar\" src=\"\/wp-content\/uploads\/2020\/01\/e40af0e8d94fc5ae0d8dcdd6105d34eb.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nOch s\u00e5 h\u00e4r ser resultatet av denna regel ut:<\/p>\n<p><img decoding=\"async\" alt=\"Istio Circuit Breaker: st\u00e4nger av defekta containrar\" src=\"\/wp-content\/uploads\/2020\/01\/70e4a251f33828b4c1ac688921e5545a.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nMan kan inv\u00e4nda att p\u00e5 denna sk\u00e4rm inte \u00e4r 50\/50 utan 14:9, men med tiden kommer situationen att r\u00e4tta till sig.<\/p>\n<h3>Skapa ett fel<\/h3>\n<p>\nNu ska vi ta ur spel en av de tv\u00e5 v2-containrarna s\u00e5 att vi har en fungerande v1-container, en fungerande v2-container och en defekt v2-container: <\/p>\n<p><img decoding=\"async\" alt=\"Istio Circuit Breaker: st\u00e4nger av defekta containrar\" src=\"\/wp-content\/uploads\/2020\/01\/c376ed242d5659c6953e8cd4821222ab.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<h3>\u00c5tg\u00e4rda felet<\/h3>\n<p>\nS\u00e5, vi har en defekt container och det \u00e4r dags f\u00f6r Pool Ejection. Med en mycket enkel konfiguration kommer vi att utesluta denna defekta container fr\u00e5n alla routningsscheman i 15 sekunder med f\u00f6rhoppningen att den kommer att \u00e5terh\u00e4mta sig (antingen genom att starta om eller \u00e5terf\u00e5 prestandan). S\u00e5 h\u00e4r ser denna konfiguration och resultaten ut:<\/p>\n<p><img decoding=\"async\" alt=\"Istio Circuit Breaker: st\u00e4nger av defekta containrar\" src=\"\/wp-content\/uploads\/2020\/01\/1f7261c7907d12002249642dbc2be054.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<img decoding=\"async\" alt=\"Istio Circuit Breaker: st\u00e4nger av defekta containrar\" src=\"\/wp-content\/uploads\/2020\/01\/cb9378b82e533d4b6dd312928294b3a1.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nSom man kan se anv\u00e4nds inte den defekta containern v2 l\u00e4ngre vid routing av f\u00f6rfr\u00e5gningar eftersom den har tagits bort fr\u00e5n poolen. Men efter 15 sekunder kommer den automatiskt att \u00e5terv\u00e4nda till poolen. Egentligen har vi just visat hur Pool Ejection fungerar.<\/p>\n<h3>B\u00f6rjar bygga arkitekturen<\/h3>\n<p>\nPool Ejection i kombination med Istios \u00f6vervakningsm\u00f6jligheter m\u00f6jligg\u00f6r att b\u00f6rja bygga ett ramverk f\u00f6r automatisk ers\u00e4ttning av defekta containrar f\u00f6r att minska eller helt eliminera driftstopp och fel.<br \/>\n\u2003<br \/>\nNASA har ett ber\u00f6mt motto \u2013 Failure Is Not an Option, som tillskrivs flygledaren <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9A%D1%80%D0%B0%D0%BD%D1%86,_%D0%94%D0%B6%D0%B8%D0%BD\">Gene Kranz<\/a><\/noindex>. P\u00e5 svenska kan det \u00f6vers\u00e4ttas som \"Motg\u00e5ng \u00e4r inte ett alternativ\", och betydelsen h\u00e4r \u00e4r att allt kan f\u00e5s att fungera, s\u00e5 l\u00e4nge man har tillr\u00e4cklig vilja. Men i verkliga livet intr\u00e4ffar fel inte bara ibland, de \u00e4r oundvikliga, \u00f6verallt och i allt. Hur ska man hantera dem i fallet med mikrotj\u00e4nster? Enligt v\u00e5r \u00e5sikt b\u00f6r man f\u00f6rlita sig mer p\u00e5 containerl\u00f6sningarnas m\u00f6jligheter \u00e4n p\u00e5 viljan. <noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/topics\/kubernetes\/\">Kubernetes<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/products\/openshift\/overview\/\">Red Hat OpenShift<\/a><\/noindex>, och <noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/topics\/service-mesh\/\">Istio<\/a><\/noindex>.<\/p>\n<p>Istio, som vi redan n\u00e4mnt ovan, implementerar ett v\u00e4l bepr\u00f6vat koncept fr\u00e5n den fysiska v\u00e4rlden \u2013 automatiska str\u00f6mbrytare. Precis som en elektrisk str\u00f6mbrytare kopplar bort en problematisk del av kretsen, s\u00e5 bryter programvaran Circuit Breaker i Istio f\u00f6rbindelsen mellan beg\u00e4rans str\u00f6m och den problematiska containern, n\u00e4r det \u00e4r n\u00e5got fel med slutpunkten, till exempel n\u00e4r servern har kraschat eller b\u00f6rjar sakta ner.<\/p>\n<p>I det andra fallet finns det dock fler problem, eftersom en containers f\u00f6rdr\u00f6jningar inte bara orsakar en kaskad av f\u00f6rdr\u00f6jningar i de tj\u00e4nster som ber om den, vilket i sin tur s\u00e4nker systemets \u00f6vergripande prestanda, utan ocks\u00e5 genererar upprepade beg\u00e4rningar till en redan l\u00e5ngsam tj\u00e4nst, vilket bara f\u00f6rv\u00e4rrar situationen.<\/p>\n<h3>Circuit Breaker i teorin<\/h3>\n<p>\nCircuit Breaker \u00e4r en proxy som kontrollerar fl\u00f6det av beg\u00e4rningar till en slutpunkt. N\u00e4r denna punkt slutar fungera eller \u2013 beroende p\u00e5 inst\u00e4llningarna \u2013 b\u00f6rjar sakta ner, bryter proxyn f\u00f6rbindelsen med containern. Trafiken omdirigeras efter detta till andra containrar, helt enkelt f\u00f6r lastbalanseringens skull. F\u00f6rbindelsen f\u00f6rblir \u00f6ppen (open) under en viss timeout-period, l\u00e5t oss s\u00e4ga tv\u00e5 minuter, och betraktas sedan som halv\u00f6ppen (half-open). Ett f\u00f6rs\u00f6k att skicka n\u00e4sta beg\u00e4ran avg\u00f6r den fortsatta statusen f\u00f6r f\u00f6rbindelsen. Om allt \u00e4r okej med tj\u00e4nsten \u00e5terst\u00e4lls f\u00f6rbindelsen till ett fungerande l\u00e4ge och blir igen st\u00e4ngd (closed). Om det dock fortfarande \u00e4r n\u00e5got fel med tj\u00e4nsten, bryts f\u00f6rbindelsen upp och timeout-perioden startar om. S\u00e5 h\u00e4r ser en f\u00f6renklad diagram \u00f6ver tillst\u00e5nds\u00f6verg\u00e5ngarna f\u00f6r Circuit Breaker ut:<\/p>\n<p><img decoding=\"async\" alt=\"Istio Circuit Breaker: st\u00e4nger av defekta containrar\" src=\"\/wp-content\/uploads\/2020\/01\/7ba3e945451cbcaf797f9706c8dacb3c.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nDet \u00e4r viktigt att notera att allt detta sker p\u00e5 en niv\u00e5 som man kan kalla systemarkitektur. D\u00e4rf\u00f6r kommer du f\u00f6rr eller senare beh\u00f6va l\u00e4ra dina applikationer att arbeta med Circuit Breaker, till exempel genom att ge ett standardv\u00e4rde som svar eller, om m\u00f6jligt, ignorera f\u00f6rekomsten av tj\u00e4nsten. F\u00f6r detta anv\u00e4nds bulkhead-m\u00f6nstret, men det g\u00e5r ut\u00f6ver denna artikel.<\/p>\n<h3>Circuit Breaker i praktiken<\/h3>\n<p>\nSom exempel kommer vi att k\u00f6ra tv\u00e5 versioner av v\u00e5r rekommendationsmikrotj\u00e4nst p\u00e5 OpenShift. Version 1 kommer att fungera normalt, medan vi i v2 kommer att inf\u00f6ra en f\u00f6rdr\u00f6jning f\u00f6r att simulera latens p\u00e5 servern. F\u00f6r att se resultaten anv\u00e4nds verktyget <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/JoeDog\/siege\">siege<\/a><\/noindex>:<\/p>\n<pre><code class=\"plaintext\">siege -r 2 -c 20 -v customer-tutorial.$(minishift ip).nip.io\n<\/code><\/pre>\n<p>\n<img decoding=\"async\" alt=\"Istio Circuit Breaker: st\u00e4nger av defekta containrar\" src=\"\/wp-content\/uploads\/2020\/01\/0660814fd5d7ebc9d9a3fa9f95fbae3c.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nAllt verkar fungera, men till vilket pris? Vid f\u00f6rsta anblicken har vi 100 % tillg\u00e4nglighet, men titta noga \u2013 den maximala transaktionstiden \u00e4r hela 12 sekunder. Detta \u00e4r uppenbarligen en flaskhals, och den m\u00e5ste \u00e5tg\u00e4rdas.<\/p>\n<p>F\u00f6r detta kommer vi med hj\u00e4lp av Istio att utesluta anrop till l\u00e5ngsamma containrar. S\u00e5 h\u00e4r ser den relevanta konfigurationen ut med anv\u00e4ndning av Circuit Breaker:<\/p>\n<p><img decoding=\"async\" alt=\"Istio Circuit Breaker: st\u00e4nger av defekta containrar\" src=\"\/wp-content\/uploads\/2020\/01\/bb7349d199dad89964d824ae1194c3fc.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nDen sista raden med parametern httpMaxRequestsPerConnection indikerar att anslutningen ska brytas vid f\u00f6rs\u00f6k att skapa en till \u2013 andra \u2013 anslutning ut\u00f6ver den som redan finns. Eftersom v\u00e5r container simulerar en l\u00e5ngsam tj\u00e4nst kommer s\u00e5dana situationer att uppst\u00e5 d\u00e5 och d\u00e5, och d\u00e5 kommer Istio att returnera ett fel 503, och vad siege visar:<\/p>\n<p><img decoding=\"async\" alt=\"Istio Circuit Breaker: st\u00e4nger av defekta containrar\" src=\"\/wp-content\/uploads\/2020\/01\/2bb6f4fb3669bd4ea6214b98bcfa22ac.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<h3>Okej, vi har en Circuit Breaker, vad h\u00e4nder nu?<\/h3>\n<p>\nS\u00e5 vi har implementerat automatisk bortkoppling utan att p\u00e5verka koden i sj\u00e4lva tj\u00e4nsterna. Genom att anv\u00e4nda Circuit Breaker och den ovan beskrivna proceduren f\u00f6r Pool Ejection kan vi ta bort l\u00e5ngsamma containrar fr\u00e5n resurspoolen tills de \u00e5terg\u00e5r till normalt och kontrollera deras status med en angiven periodicitet \u2013 i v\u00e5rt exempel \u00e4r det tv\u00e5 minuter (parameter sleepWindow).<\/p>\n<p>Observera att applikationens f\u00f6rm\u00e5ga att reagera p\u00e5 fel 503 fortfarande definieras p\u00e5 niv\u00e5 av dess k\u00e4llkod. Det finns m\u00e5nga strategier f\u00f6r att arbeta med Circuit Breaker som till\u00e4mpas beroende p\u00e5 situationen.<\/p>\n<p><b>I n\u00e4sta inl\u00e4gg:<\/b> kommer vi att prata om sp\u00e5rning och \u00f6vervakning som redan \u00e4r inbyggda eller l\u00e4tt kan l\u00e4ggas till i Istio, samt hur man avsiktligt inf\u00f6r fel i systemet.<br \/>\n<br \/>K\u00e4lla: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/redhatrussia\/blog\/483262\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0430\u0437\u0434\u043d\u0438\u043a\u0438 \u0437\u0430\u0432\u0435\u0440\u0448\u0438\u043b\u0438\u0441\u044c, \u0438 \u043c\u044b \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043c\u0441\u044f \u0441 \u043d\u0430\u0448\u0438\u043c \u0432\u0442\u043e\u0440\u044b\u043c \u043f\u043e\u0441\u0442\u043e\u043c \u0438\u0437 \u0441\u0435\u0440\u0438\u0438 \u043f\u043e Istio Service Mesh. \u0421\u0435\u0433\u043e\u0434\u043d\u044f\u0448\u043d\u044f\u044f \u0442\u0435\u043c\u0430 \u2013 Circuit Breaker, \u0447\u0442\u043e \u0432 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0435 \u043d\u0430 \u0440\u0443\u0441\u0441\u043a\u0438\u0439 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u00ab\u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0432\u044b\u043a\u043b\u044e\u0447\u0430\u0442\u0435\u043b\u044c\u00bb, \u0432 \u043f\u0440\u043e\u0441\u0442\u043e\u0440\u0435\u0447\u0438\u0438 \u2013 \u00ab\u0430\u0432\u0442\u043e\u043c\u0430\u0442 \u0437\u0430\u0449\u0438\u0442\u044b\u00bb. \u0422\u043e\u043b\u044c\u043a\u043e \u0432 Istio \u044d\u0442\u043e\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442 \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u043d\u0435 \u043a\u043e\u0440\u043e\u0442\u043d\u0443\u0432\u0448\u0443\u044e \u0438\u043b\u0438 \u043f\u0435\u0440\u0435\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u0443\u044e \u0446\u0435\u043f\u044c, \u0430 \u043d\u0435\u0438\u0441\u043f\u0440\u0430\u0432\u043d\u044b\u0435 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b. \u041a\u0430\u043a \u044d\u0442\u043e \u0434\u043e\u043b\u0436\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0432 \u0438\u0434\u0435\u0430\u043b\u0435 \u041a\u043e\u0433\u0434\u0430 [&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-54987","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=\"\u041f\u0440\u0430\u0437\u0434\u043d\u0438\u043a\u0438 \u0437\u0430\u0432\u0435\u0440\u0448\u0438\u043b\u0438\u0441\u044c, \u0438 \u043c\u044b \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043c\u0441\u044f \u0441 \u043d\u0430\u0448\u0438\u043c \u0432\u0442\u043e\u0440\u044b\u043c \u043f\u043e\u0441\u0442\u043e\u043c \u0438\u0437 \u0441\u0435\u0440\u0438\u0438 \u043f\u043e Istio Service Mesh.\" \/>\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\/sv\/blog\/administrirovanie\/istio-circuit-breaker-otklyuchaem-neispravnye-kontejnery\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sv_SE\" \/>\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\udd47Istio Circuit Breaker: \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043d\u0435\u0438\u0441\u043f\u0440\u0430\u0432\u043d\u044b\u0435 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0430\u0437\u0434\u043d\u0438\u043a\u0438 \u0437\u0430\u0432\u0435\u0440\u0448\u0438\u043b\u0438\u0441\u044c, \u0438 \u043c\u044b \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043c\u0441\u044f \u0441 \u043d\u0430\u0448\u0438\u043c \u0432\u0442\u043e\u0440\u044b\u043c \u043f\u043e\u0441\u0442\u043e\u043c \u0438\u0437 \u0441\u0435\u0440\u0438\u0438 \u043f\u043e Istio Service Mesh.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/istio-circuit-breaker-otklyuchaem-neispravnye-kontejnery\" \/>\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-01-08T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:03:03+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\udd47Istio Circuit Breaker: st\u00e4nger av defekta containrar | ProHoster","description":"Helgerna \u00e4r \u00f6ver, och vi \u00e5terv\u00e4nder med v\u00e5rt andra inl\u00e4gg i serien om Istio Service Mesh.","canonical_url":"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/istio-circuit-breaker-otklyuchaem-neispravnye-kontejnery","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sv_SE","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\udd47Istio Circuit Breaker: \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043d\u0435\u0438\u0441\u043f\u0440\u0430\u0432\u043d\u044b\u0435 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b | ProHoster","og:description":"\u041f\u0440\u0430\u0437\u0434\u043d\u0438\u043a\u0438 \u0437\u0430\u0432\u0435\u0440\u0448\u0438\u043b\u0438\u0441\u044c, \u0438 \u043c\u044b \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043c\u0441\u044f \u0441 \u043d\u0430\u0448\u0438\u043c \u0432\u0442\u043e\u0440\u044b\u043c \u043f\u043e\u0441\u0442\u043e\u043c \u0438\u0437 \u0441\u0435\u0440\u0438\u0438 \u043f\u043e Istio Service Mesh.","og:url":"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/istio-circuit-breaker-otklyuchaem-neispravnye-kontejnery","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-01-08T21:00:00+00:00","article:modified_time":"2020-02-18T11:03:03+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"54987","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-24 13:26:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 19:54:34","updated":"2026-01-24 13:26:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/54987","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/comments?post=54987"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/54987\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media?parent=54987"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/categories?post=54987"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/tags?post=54987"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}