{"id":54208,"date":"2019-12-20T00:00:00","date_gmt":"2019-12-19T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/seriya-postov-po-istio-service-mesh"},"modified":"2020-02-18T14:02:12","modified_gmt":"2020-02-18T11:02:12","slug":"seriya-postov-po-istio-service-mesh","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/seriya-postov-po-istio-service-mesh","title":{"rendered":"Serie av inl\u00e4gg om Istio Service Mesh","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Vi inleder en serie inl\u00e4gg d\u00e4r vi kommer att demonstrera n\u00e5gra av de m\u00e5nga funktionerna i Istio Service Mesh i kombination med Red Hat OpenShift och Kubernetes.<\/p>\n<p><img decoding=\"async\" alt=\"Serie av inl\u00e4gg om Istio Service Mesh\" src=\"\/wp-content\/uploads\/2019\/12\/b7cc06e1451763db78fdf84764af4b69.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDel ett, idag: <\/p>\n<ul>\n<li>Vi f\u00f6rklarar konceptet med sidecar-containrar i Kubernetes och formulerar temat f\u00f6r denna serie inl\u00e4gg: <b>\u00abdu beh\u00f6ver inte \u00e4ndra n\u00e5got i din kod\u00bb<\/b>.<\/li>\n<li>L\u00e5t oss presentera den grundl\u00e4ggande funktionen i Istio \u2013 routingregler. Dessa utg\u00f6r basen f\u00f6r alla andra funktioner i Istio, eftersom det \u00e4r reglerna som g\u00f6r det m\u00f6jligt att dirigera trafik till mikroservicer med hj\u00e4lp av externa YAML-filer. Vi kommer ocks\u00e5 att titta p\u00e5 implementeringen av Canary Deployment. Ny\u00e5rsbonus: 10 interaktiva lektioner om Istio.<\/li>\n<\/ul>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nDel tv\u00e5, som snart kommer att publiceras, kommer att ber\u00e4tta f\u00f6r dig: <\/p>\n<ul>\n<li>Hur Istio implementerar Pool Ejection i kombination med Circuit Breaker och demonstrerar hur Istio till\u00e5ter oss att ta bort en icke-fungerande eller d\u00e5ligt fungerande pod fr\u00e5n lastbalanseringen.<\/li>\n<li>Vi kommer ocks\u00e5 att titta p\u00e5 Circuit Breaker-temat fr\u00e5n f\u00f6rsta inl\u00e4gget f\u00f6r att se hur Istio kan anv\u00e4ndas h\u00e4r. Vi kommer att visa hur man dirigerar trafik och hanterar n\u00e4tverksfel utan att g\u00f6ra n\u00e5gra f\u00f6r\u00e4ndringar i tj\u00e4nsternas kod, med hj\u00e4lp av YAML-konfigurationsfiler och terminalkommandon.<\/li>\n<\/ul>\n<p>\nDel tre: <\/p>\n<ul>\n<li>Ber\u00e4ttelsen om sp\u00e5rning och \u00f6vervakning som redan \u00e4r inbyggda eller enkelt kan l\u00e4ggas till i Istio. Vi kommer att visa hur man anv\u00e4nder verktyg som Prometheus, Jaeger och Grafana i kombination med OpenShifts skalbarhet f\u00f6r att effektivt hantera en mikroservicearkitektur.<\/li>\n<li>Vi g\u00e5r fr\u00e5n \u00f6vervakning och felhantering till att medvetet introducera fel i systemet. Med andra ord, vi l\u00e4r oss att g\u00f6ra fault injection utan att \u00e4ndra koden, vilket \u00e4r mycket viktigt ur ett testperspektiv \u2013 eftersom riskerna f\u00f6r att inf\u00f6ra ytterligare fel \u00f6kar om vi \u00e4ndrar koden.<\/li>\n<\/ul>\n<p>\nTill slut, i det avslutande inl\u00e4gget om Istio Service Mesh:<\/p>\n<ul>\n<li>Vi g\u00e5r \u00f6ver till den M\u00f6rka Sidan. N\u00e4rmare best\u00e4mt kommer vi att l\u00e4ra oss att anv\u00e4nda Dark Launch-konceptet, d\u00e4r koden deployeras och testas direkt p\u00e5 produktionsdata utan att p\u00e5verka systemets funktion. H\u00e4r blir Istios trafikdelningsf\u00f6rm\u00e5ga mycket anv\u00e4ndbar. Att kunna testa p\u00e5 levande produktionsdata utan att p\u00e5verka det aktiva systemet \u00e4r det mest \u00f6vertygande s\u00e4ttet att verifiera.<\/li>\n<li>Med utg\u00e5ngspunkt fr\u00e5n Dark Launch visar vi hur man anv\u00e4nder modellen Canary Deployment f\u00f6r att minska riskerna och f\u00f6renkla inf\u00f6randet av ny kod. Sj\u00e4lva Canary Deployment \u00e4r ingen nyhet, men Istio m\u00f6jligg\u00f6r denna metod med hj\u00e4lp av enkla YAML-filer.<\/li>\n<li>Till sist visar vi hur man med Istio Egress ger \u00e5tkomst till tj\u00e4nster f\u00f6r dem som befinner sig utanf\u00f6r dina kluster, f\u00f6r att utnyttja Istios m\u00f6jligheter vid arbete med internet.<\/li>\n<\/ul>\n<p>\nS\u00e5, l\u00e5t oss b\u00f6rja\u2026<\/p>\n<p><b>Istios \u00f6vervaknings- och hanteringsverktyg \u2013 allt som beh\u00f6vs f\u00f6r att samordna mikrotj\u00e4nster i en tj\u00e4nsten\u00e4tverk. <noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/topics\/service-mesh\/\">service mesh<\/a><\/noindex>.<\/b><\/p>\n<h3>Vad \u00e4r Istio tj\u00e4nsten\u00e4tverk?<\/h3>\n<p>\nTj\u00e4nsten\u00e4tverket implementerar funktioner som \u00f6vervakning av trafik, \u00e5tkomstkontroll, uppt\u00e4ckte, s\u00e4kerhet, felresistens och andra anv\u00e4ndbara saker f\u00f6r en grupp av tj\u00e4nster. Istio g\u00f6r allt detta utan minsta \u00e4ndring i sj\u00e4lva tj\u00e4nsternas kod. Vad \u00e4r hemligheten? Istio kopplar varje tj\u00e4nst med sin egen proxy i form av en sidecar-container, och d\u00e4refter g\u00e5r all trafik till denna tj\u00e4nst genom proxyn, som baserat p\u00e5 angivna policyer avg\u00f6r hur, n\u00e4r och om trafiken ska n\u00e5 tj\u00e4nsten. Istio ger ocks\u00e5 m\u00f6jligheter att implementera avancerade DevOps-tekniker, s\u00e5som canary deployments, circuit breakers, felinjektion och m\u00e5nga fler.<\/p>\n<h3>Hur fungerar Istio med containrar och Kubernetes?<\/h3>\n<p>\nIstios tj\u00e4nsten\u00e4tverk \u00e4r en sidecar-implementering av allt som beh\u00f6vs f\u00f6r att skapa och hantera mikrotj\u00e4nster: \u00f6vervakning, sp\u00e5rning, circuit breakers, routing, lastbalansering, felinjektion, omf\u00f6rs\u00f6k, tidsgr\u00e4nser, spegling, \u00e5tkomstkontroll, hastighetsbegr\u00e4nsning och mycket mer. Och \u00e4ven om det idag finns m\u00e5nga bibliotek f\u00f6r att implementera dessa funktioner direkt i koden, kan du med Istio f\u00e5 allt detta utan att \u00e4ndra din kod.<\/p>\n<p>Enligt sidecar-modellen k\u00f6rs Istio i en Linux-container som finns i samma <noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/topics\/kubernetes\/\">Kubernetes<\/a><\/noindex>-pod som den kontrollerade tj\u00e4nsten och injicerar (inject) och extraherar (extract) funktionalitet och information enligt angiven konfiguration. Vi betonar att det \u00e4r din egen konfiguration, och den lever utanf\u00f6r din kod. D\u00e4rf\u00f6r blir koden mycket enklare och kortare.<\/p>\n<p>Vad som ocks\u00e5 \u00e4r viktigt \u00e4r att den operativa komponenten av mikrotj\u00e4nster inte \u00e4r kopplad till sj\u00e4lva koden, vilket inneb\u00e4r att deras drift kan \u00f6verl\u00e4mnas till IT-specialister. Faktiskt, varf\u00f6r ska utvecklaren ansvara f\u00f6r circuit breakers och fault injection? Att reagera \u2013 ja, men att hantera och skapa dem? Om allt detta tas bort fr\u00e5n koden kan programmerarna helt fokusera p\u00e5 applikationsfunktionalitet. Dessutom blir sj\u00e4lva koden kortare och enklare.<\/p>\n<h3>Tj\u00e4nsten\u00e4tverk<\/h3>\n<p>\nIstio, som implementerar funktioner f\u00f6r att hantera mikrotj\u00e4nster utanf\u00f6r deras kod \u2013 det \u00e4r konceptet f\u00f6r tj\u00e4nsten\u00e4tverk, Service Mesh. Med andra ord \u00e4r det en koordinerad grupp av en eller flera bin\u00e4rfiler som bildar ett n\u00e4tverksfunktionernas n\u00e4tverk.<\/p>\n<h3>Hur Istio fungerar med mikrotj\u00e4nster<\/h3>\n<p>\nS\u00e5 h\u00e4r ser arbetet med sidecar-containrar ut i samverkan med <noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/topics\/kubernetes\/\">Kubernetes<\/a><\/noindex> och <noindex><a rel=\"nofollow\" href=\"https:\/\/www.openshift.org\/minishift\/\">Minishift<\/a><\/noindex> fr\u00e5n f\u00e5gelperspektiv: du startar en instans av Minishift, skapar ett projekt f\u00f6r Istio (l\u00e5t oss kalla det \"istio-system\"), installerar och startar alla relaterade komponenter till Istio. Sedan, i takt med att du skapar projekt och pods, l\u00e4gger du till konfigurationsinformation i dina deploymentar, och dina pods b\u00f6rjar anv\u00e4nda Istio. F\u00f6renklat ser diagrammet ut s\u00e5 h\u00e4r:<\/p>\n<p><img decoding=\"async\" alt=\"Serie av inl\u00e4gg om Istio Service Mesh\" src=\"\/wp-content\/uploads\/2019\/12\/feb36ba35442307a8136c395ccae4fd2.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Nu kan du \u00e4ndra inst\u00e4llningarna i Istio f\u00f6r att, till exempel, organisera fault injection, st\u00f6dja <noindex><a rel=\"nofollow\" href=\"https:\/\/istio.io\/blog\/2017\/0.1-canary.html\">Canary-deployment<\/a><\/noindex> eller andra funktioner i Istio \u2013 och allt detta utan att r\u00f6ra koden i sj\u00e4lva applikationerna. Anta att du vill omdirigera all webbtrafik fr\u00e5n anv\u00e4ndarna av din st\u00f6rsta kund (Foo Corporation) till den nya versionen av webbplatsen. F\u00f6r detta r\u00e4cker det med att skapa en Istio-routingregel som s\u00f6ker efter @foocorporation.com i anv\u00e4ndaridentifieraren och utf\u00f6r den motsvarande omdirigeringen. F\u00f6r alla andra anv\u00e4ndare f\u00f6r\u00e4ndras ingenting. Under tiden kan du lugnt testa den nya versionen av webbplatsen. Och m\u00e4rk, f\u00f6r detta beh\u00f6ver du inte involvera utvecklarna.<\/p>\n<h3>Och kommer det att kosta mycket?<\/h3>\n<p>\nInte alls. Istio fungerar ganska snabbt, det \u00e4r skrivet p\u00e5 <noindex><a rel=\"nofollow\" href=\"https:\/\/golang.org\/\">Go<\/a><\/noindex> och skapar en mycket liten overhead. Dessutom kompenseras den potentiella f\u00f6rlusten i onlineprestanda med en \u00f6kning av utvecklarnas produktivitet. \u00c5tminstone i teorin: kom ih\u00e5g att utvecklarnas tid \u00e4r dyr. N\u00e4r det g\u00e4ller kostnader f\u00f6r programvara \u00e4r Istio en mjukvara med \u00f6ppen k\u00e4llkod, s\u00e5 den kan f\u00e5s och anv\u00e4ndas gratis.<\/p>\n<h3>L\u00e4r dig sj\u00e4lv<\/h3>\n<p>\nRed Hat Developer Experience Team har utvecklat en djupg\u00e5ende praktisk <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/redhat-developer-demos\/istio-tutorial\">en guide<\/a><\/noindex> om Istio (p\u00e5 engelska). Den fungerar p\u00e5 Linux, MacOS och Windows, och koden finns i versioner f\u00f6r Java och Node.js.<\/p>\n<h3>10 interaktiva lektioner om Istio<\/h3>\n<p><\/p>\n<h4>Block 1 \u2013 F\u00f6r Nyb\u00f6rjare<\/h4>\n<p>\n<b>Introduktion till Istio<\/b><br \/>\n30 minuter <br \/>\nL\u00e5t oss bekanta oss med Service Mesh, l\u00e4r oss att installera Istio i Kubernetes-klustret OpenShift.<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/courses\/service-mesh\/istio-introduction\/\">B\u00f6rja<\/a><\/noindex> <\/p>\n<p><b>Distribuering av mikrotj\u00e4nster i Istio<\/b><br \/>\n30 minuter<br \/>\nVi anv\u00e4nder Istio f\u00f6r att distribuera tre mikrotj\u00e4nster med Spring Boot och Vert.x.<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/courses\/service-mesh\/deploy-microservices\/\">B\u00f6rja<\/a><\/noindex> <\/p>\n<h4>Block 2 \u2013 Medelniv\u00e5 <\/h4>\n<p>\n<b>\u00d6vervakning och sp\u00e5rning i Istio<\/b><br \/>\n60 minuter <br \/>\nVi studerar de inbyggda \u00f6vervakningsverktygen i Istio, anpassningsbara metrik, samt OpenTracing via Prometheus och Grafana.<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/courses\/service-mesh\/monitoring-tracing\/\">B\u00f6rja<\/a><\/noindex> <\/p>\n<p><b>Enkel routning i Istio<\/b><br \/>\n60 minuter <br \/>\nVi l\u00e4r oss att hantera routning i Istio med hj\u00e4lp av enkla regler.<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/courses\/service-mesh\/simple-route-rules\/\">B\u00f6rja <\/a><\/noindex><\/p>\n<p><b>Avancerade regler f\u00f6r routning<\/b><br \/>\n60 minuter <br \/>\nVi bekantar oss med smart routning i Istio, \u00e5tkomsthantering, lastbalansering och hastighetsbegr\u00e4nsning.<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/courses\/service-mesh\/advanced-routerules\/\">B\u00f6rja<\/a><\/noindex> <\/p>\n<h4>Block 3 \u2013 Expertanv\u00e4ndare<\/h4>\n<p>\n<b>Felinjektion i Istio<\/b><br \/>\n60 minuter <br \/>\nVi studerar felhanteringsscenarier i distribuerade applikationer, skapar HTTP-fel och n\u00e4tverksf\u00f6rseningar, och l\u00e4r oss att till\u00e4mpa kaosteori f\u00f6r att \u00e5terh\u00e4mta milj\u00f6n.<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/courses\/service-mesh\/fault-injection\/\">B\u00f6rja<\/a><\/noindex> <\/p>\n<p><b>Circuit Breaker i Istio<\/b><br \/>\n30 minuter <br \/>\nVi installerar Siege f\u00f6r stresstestning av webbplatser och l\u00e4r oss att s\u00e4kerst\u00e4lla backendens motst\u00e5ndskraft med hj\u00e4lp av upprepningar, circuit breaker och poolutsl\u00e4pp.<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/courses\/service-mesh\/circuit-breaker\/\">B\u00f6rja<\/a><\/noindex> <\/p>\n<p><b>Egress och Istio<\/b><br \/>\n10 minuter <br \/>\nVi anv\u00e4nder Egress-rutter f\u00f6r att skapa regler f\u00f6r hur interna tj\u00e4nster interagerar med externa API:er och tj\u00e4nster.<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/courses\/service-mesh\/egress\/\">B\u00f6rja<\/a><\/noindex> <\/p>\n<p><b>Istio och Kiali<\/b><br \/>\n15 minuter <br \/>\nVi l\u00e4r oss att anv\u00e4nda Kiali f\u00f6r att f\u00e5 en helhetsbild av tj\u00e4nstemodellen samt att unders\u00f6ka fl\u00f6den av f\u00f6rfr\u00e5gningar och data.<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/courses\/service-mesh\/observe-kiali\/\">B\u00f6rja<\/a><\/noindex> <\/p>\n<p>Mutual TLS i Istio<br \/>\n15 minuter <br \/>\nVi skapar Istio Gateway och VirtualService, och unders\u00f6ker sedan noggrant mutual TLS (mTLS) och dess konfigurationer.<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/courses\/service-mesh\/mtls\/\">B\u00f6rja<\/a><\/noindex> <\/p>\n<h4>Block 3.1 \u2013 Djupdykning: Istio Service Mesh f\u00f6r mikrotj\u00e4nster<\/h4>\n<p>\n<img decoding=\"async\" alt=\"Serie av inl\u00e4gg om Istio Service Mesh\" src=\"\/wp-content\/uploads\/2019\/12\/1a2bb62b0bbd46fa9b42be1ccbfddfa6.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nVad handlar boken om:<\/p>\n<ul>\n<li>Vad \u00e4r en service mesh.<\/li>\n<li>Systemet Istio och dess roll i mikrotj\u00e4nstarkitektur.<\/li>\n<li>Anv\u00e4ndning av Istio f\u00f6r att l\u00f6sa f\u00f6ljande uppgifter:\n<ul>\n<li>Fels\u00e4kerhet;<\/li>\n<li>Routning;<\/li>\n<li>Kaostestning;<\/li>\n<li>S\u00e4kerhet;<\/li>\n<li>Insamling av telemetri med hj\u00e4lp av sp\u00e5rning, metrik och Grafana.<\/li>\n<\/ul>\n<p>\n <\/li>\n<\/ul>\n<p>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/books\/introducing-istio-service-mesh-microservices\/\">Ladda ner boken<\/a><\/noindex><\/p>\n<h3>Serie av artiklar om tj\u00e4nsten\u00e4tverk och Istio<\/h3>\n<p><\/p>\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/blog\/2018\/03\/13\/istio-route-rules-service-requests\/\">Routingregler f\u00f6r Istio: vi dirigerar tj\u00e4nstf\u00f6rfr\u00e5gningar dit de beh\u00f6vs<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/blog\/2018\/03\/20\/istio-circuit-breaker-pool-ejection\/\">Circuit Breakers i Istio: hantering av Pool Ejection<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/blog\/2018\/03\/27\/istio-circuit-breaker-when-failure-is-an-option\/\">Circuit Breaker i Istio: n\u00e4r ett avbrott \u00e4r ett alternativ<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/blog\/2018\/04\/03\/istio-tracing-monitoring\/\">Tracing och \u00f6vervakning i Istio: vart allt \u00e4r p\u00e5 v\u00e4g och hur snabbt<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/blog\/2018\/04\/10\/istio-chaos-engineering\/\">Kaosengineering i Istio: s\u00e5 var det t\u00e4nkt<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/blog\/2018\/04\/17\/istio-dark-launch-secret-services\/\">Dark Launch i Istio: hemliga tj\u00e4nster<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/blog\/2018\/04\/24\/istio-smart-canary-launch\/\">Canary Deployment i Istio: F\u00f6renkla lanseringen<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/blog\/2018\/05\/01\/istio-egress-exit-through-the-gift-shop\/\">Istio Egress: utg\u00e5ng genom souvenirbutiken<\/a><\/noindex><\/li>\n<\/ul>\n<p><\/p>\n<h3>Prova sj\u00e4lv<\/h3>\n<p>\nDenna serie inl\u00e4gg syftar inte till att ge en djupg\u00e5ende f\u00f6rst\u00e5else f\u00f6r Istio. Vi vill bara introducera dig till sj\u00e4lva konceptet och kanske inspirera dig att sj\u00e4lv prova Istio. Det kan g\u00f6ras helt gratis, och Red Hat tillhandah\u00e5ller alla n\u00f6dv\u00e4ndiga verktyg f\u00f6r att b\u00f6rja bem\u00e4stra OpenShift, Kubernetes, Linux-containrar och Istio, n\u00e4mligen: <noindex><a rel=\"nofollow\" href=\"https:\/\/www.openshift.com\/products\/container-platform\/trial\/\">Red Hat Developer OpenShift Container Platform<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/redhat-developer-demos\/istio-tutorial\">v\u00e5r guide till Istio<\/a><\/noindex> och andra resurser p\u00e5 v\u00e5r <noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/topics\/service-mesh\/\">mikrosajt om Service Mesh<\/a><\/noindex>. V\u00e4nta inte, b\u00f6rja redan idag!<\/p>\n<h3>Routingregler f\u00f6r Istio: vi dirigerar tj\u00e4nstf\u00f6rfr\u00e5gningar dit de beh\u00f6vs<\/h3>\n<p>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/products\/openshift\/overview\/\">OpenShift<\/a><\/noindex> och <noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/topics\/kubernetes\/\">Kubernetes<\/a><\/noindex> hanterar utm\u00e4rkt att dirigera f\u00f6rfr\u00e5gningar till <noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/topics\/microservices\/\">mikrotj\u00e4nster<\/a><\/noindex> och dirigeras till r\u00e4tt poddar. Detta \u00e4r en av huvudm\u00e5len med Kubernetes \u2013 routing och lastbalansering. Men vad h\u00e4nder om du beh\u00f6ver mer finjusterad och sofistikerad routing? Till exempel, f\u00f6r att samtidigt anv\u00e4nda tv\u00e5 versioner av en mikrotj\u00e4nst. Hur kan Istios routingregler hj\u00e4lpa h\u00e4r?<\/p>\n<p>Routingregler \u00e4r de regler som fastst\u00e4ller valet av rutt. Oavsett systemets komplexitetsniv\u00e5 f\u00f6rblir den \u00f6vergripande principen f\u00f6r dessa regler enkel: f\u00f6rfr\u00e5gningar dirigeras baserat p\u00e5 specifika parametrar och v\u00e4rden i HTTP-huvuden. <br \/>\nL\u00e5t oss titta p\u00e5 exempel: <\/p>\n<h3>Kubernetes standard: trivial \"50-50\"<\/h3>\n<p>\nI v\u00e5rt exempel visar vi hur man anonymt anv\u00e4nder tv\u00e5 versioner av en mikrotj\u00e4nst i OpenShift, som vi kallar v1 och v2. Varje version k\u00f6rs i sin egen Kubernetes-podd, och som standard anv\u00e4nds en j\u00e4mnt balanserad rond robin-routing. Varje pod f\u00e5r sin andel av f\u00f6rfr\u00e5gningarna baserat p\u00e5 antalet instanser av sin mikrotj\u00e4nst, med andra ord, repliker. Istio till\u00e5ter dock att manuellt \u00e4ndra denna balans.<\/p>\n<p>Antag att vi har distribuerat tv\u00e5 versioner av v\u00e5r rekommendationstj\u00e4nst p\u00e5 OpenShift, recommendation-v1 och recommendation-v2.<br \/>\nI figur 1 kan vi se att n\u00e4r varje tj\u00e4nst representeras av ett enda exempel, s\u00e5 alternerar f\u00f6rfr\u00e5gningarna j\u00e4mnt mellan dem: 1-2-1-2-\u2026 Detta \u00e4r hur Kubernetes-routing fungerar som standard:<\/p>\n<p><img decoding=\"async\" alt=\"Serie av inl\u00e4gg om Istio Service Mesh\" src=\"\/wp-content\/uploads\/2019\/12\/93b00e4845ba930ca4d718b59629377e.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<h3>Viktat f\u00f6rdelning mellan versionerna<\/h3>\n<p>\nI fig. 2 visas hur det kommer att se ut om antalet repliker av tj\u00e4nsten v2 \u00f6kas fr\u00e5n en till tv\u00e5 (detta g\u00f6rs med kommandot oc scale \u2014replicas=2 deployment\/recommendation-v2). Som vi ser delas f\u00f6rfr\u00e5gningarna mellan v1 och v2 nu i f\u00f6rh\u00e5llandet \"ett till tre\": 1-2-2-1-2-2-\u2026:<\/p>\n<p><img decoding=\"async\" alt=\"Serie av inl\u00e4gg om Istio Service Mesh\" src=\"\/wp-content\/uploads\/2019\/12\/a432b1cea0e297c99b041137d33fc107.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<h3>Ignorera versionen med Istio<\/h3>\n<p>\nIstio g\u00f6r det enkelt att \u00e4ndra f\u00f6rdelningen av f\u00f6rfr\u00e5gningar p\u00e5 det s\u00e4tt vi \u00f6nskar. Till exempel f\u00f6r att skicka all trafik enbart till recommendation-v1 med f\u00f6ljande yaml-fil i Istio:<\/p>\n<p><img decoding=\"async\" alt=\"Serie av inl\u00e4gg om Istio Service Mesh\" src=\"\/wp-content\/uploads\/2019\/12\/db4190d495fb6dcc7c50cb8d28a7ef58.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>H\u00e4r m\u00e5ste vi l\u00e4gga m\u00e4rke till f\u00f6ljande: poddar v\u00e4ljs enligt etiketter. I v\u00e5rt exempel anv\u00e4nds etiketten v1. Parametern \"weight: 100\" inneb\u00e4r att 100 % av trafiken kommer att dirigeras till alla poddar av tj\u00e4nsten som har etiketten v1.<\/p>\n<h3>Direktiv f\u00f6rdelning mellan versioner (Canary Deployment)<\/h3>\n<p>\nVidare kan vi anv\u00e4nda parameter weight f\u00f6r att styra trafiken till b\u00e5da poddarna, oavsett antalet instanser av mikrotj\u00e4nster som k\u00f6rs i var och en av dem. H\u00e4r dirigerar vi till exempel 90 % av trafiken till v1 och 10 % till v2:<\/p>\n<p><img decoding=\"async\" alt=\"Serie av inl\u00e4gg om Istio Service Mesh\" src=\"\/wp-content\/uploads\/2019\/12\/1a28e76ea7d8306fbefecefaad34c931.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<h3>Separat dirigering av mobilanv\u00e4ndare<\/h3>\n<p>\nAvslutningsvis visar vi hur man tvingar att dirigera trafik fr\u00e5n mobilanv\u00e4ndare till tj\u00e4nst v2, medan alla andra g\u00e5r till v1. F\u00f6r detta analyserar vi med hj\u00e4lp av regulj\u00e4ra uttryck v\u00e4rdet av user-agent i f\u00f6rfr\u00e5gans header:<\/p>\n<p><img decoding=\"async\" alt=\"Serie av inl\u00e4gg om Istio Service Mesh\" src=\"\/wp-content\/uploads\/2019\/12\/efab7f92a1bcfc7e23ae279de57c738e.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<h3>Nu \u00e4r det din tur<\/h3>\n<p>\nExemplet med regulj\u00e4ra uttryck f\u00f6r analys av headers b\u00f6r motivera dig att s\u00f6ka efter egna alternativ f\u00f6r till\u00e4mpning av Istios riktlinjer f\u00f6r dirigering. \u00c4n mer eftersom m\u00f6jligheterna \u00e4r ganska omfattande, f\u00f6r hela header-v\u00e4rden kan formas i applikationens k\u00e4llkod.<\/p>\n<h3>Och kom ih\u00e5g, det handlar om Ops, inte Dev<\/h3>\n<p>\nAllt vi har visat i de ovanst\u00e5ende exemplen kan g\u00f6ras utan minsta \u00e4ndringar i k\u00e4llkoden, f\u00f6rutom i de fall d\u00e4r s\u00e4rskilda headers m\u00e5ste skapas. Istio kommer att vara till nytta f\u00f6r b\u00e5de utvecklare som till exempel kan anv\u00e4nda det under testningen, samt IT-driftspecialister som mycket kommer att dra nytta av det i produktionen.<\/p>\n<p>S\u00e5 vi upprepar huvudmotivet i denna serie av inl\u00e4gg: <b>du beh\u00f6ver inte \u00e4ndra n\u00e5got i din kod<\/b>. Du beh\u00f6ver inte bygga nya bilder eller starta nya containrar. Allt detta implementeras utanf\u00f6r koden.<\/p>\n<h3>Sl\u00e4pp l\u00f6s din fantasi<\/h3>\n<p>\nT\u00e4nk dig vilket potential analysen av rubriker med hj\u00e4lp av regulj\u00e4ra uttryck kan \u00f6ppna. Vill du omdirigera din st\u00f6rsta kund till en specialversion av din <noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/topics\/microservices\/\">mikrotj\u00e4nster<\/a><\/noindex>? \u041b\u0435\u0433\u043a\u043e! \u041d\u0443\u0436\u043d\u0430 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0434\u043b\u044f \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430 Chrome? \u041d\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430! \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0442\u0440\u0430\u0444\u0438\u043a \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u043e \u043b\u044e\u0431\u043e\u0439 \u0435\u0433\u043e \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0435.<\/p>\n<h3>Prova sj\u00e4lv<\/h3>\n<p>\nAtt l\u00e4sa om Istio, Kubernetes och OpenShift \u00e4r en sak, men varf\u00f6r inte prova alla sj\u00e4lv? Teamet <noindex><a rel=\"nofollow\" href=\"https:\/\/developers.redhat.com\/\">Red Hat Developer Program<\/a><\/noindex> har f\u00f6rberett en detaljerad guide (p\u00e5 engelska) som hj\u00e4lper dig att snabbt f\u00e5 en djup f\u00f6rst\u00e5else f\u00f6r dessa teknologier. Guiden \u00e4r ocks\u00e5 100% open source, s\u00e5 den \u00e4r tillg\u00e4nglig f\u00f6r allm\u00e4nheten. Filen fungerar p\u00e5 macOS, Linux och Windows, och k\u00e4llkoden finns i versioner f\u00f6r Java och node.js (snart kommer det versioner f\u00f6r andra spr\u00e5k). \u00d6ppna bara den aktuella git-repositoriet i din webbl\u00e4sare <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/redhat-developer-demos\/istio-tutorial\">Red Hat Developer Demo<\/a><\/noindex>.<\/p>\n<h3>I n\u00e4sta inl\u00e4gg: Vi l\u00f6ser problem p\u00e5 ett snyggt s\u00e4tt<\/h3>\n<p>\nIdag har du sett vad Istios routingregler kan \u00e5stadkomma. T\u00e4nk nu dig samma sak, men applicerat p\u00e5 felhantering. Det \u00e4r just det vi kommer att ber\u00e4tta om i n\u00e4sta inl\u00e4gg.<br \/>\n<br \/>K\u00e4lla: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/redhatrussia\/blog\/481182\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041c\u044b \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u043c \u0441\u0435\u0440\u0438\u044e \u043f\u043e\u0441\u0442\u043e\u0432, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u0440\u043e\u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u0443\u0435\u043c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0437 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u0441\u0435\u0440\u0432\u0438\u0441\u043d\u043e\u0439 \u0441\u0435\u0442\u043a\u0438 Istio Service Mesh \u0432 \u0441\u043e\u0447\u0435\u0442\u0430\u043d\u0438\u0438 \u0441 Red Hat OpenShift \u0438 Kubernetes. \u0427\u0430\u0441\u0442\u044c \u043f\u0435\u0440\u0432\u0430\u044f, \u0441\u0435\u0433\u043e\u0434\u043d\u044f\u0448\u043d\u044f\u044f: \u041e\u0431\u044a\u044f\u0441\u043d\u0438\u043c \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044e sidecar-\u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 Kubernetes \u0438 \u0441\u0444\u043e\u0440\u043c\u0443\u043b\u0438\u0440\u0443\u0435\u043c \u043b\u0435\u0439\u0442\u043c\u043e\u0442\u0438\u0432 \u044d\u0442\u043e\u0439 \u0441\u0435\u0440\u0438\u0438 \u043f\u043e\u0441\u0442\u043e\u0432: \u00ab\u0432\u0430\u043c \u043d\u0435 \u043d\u0430\u0434\u043e \u043d\u0438\u0447\u0435\u0433\u043e \u043c\u0435\u043d\u044f\u0442\u044c \u0432 \u0441\u0432\u043e\u0435\u043c \u043a\u043e\u0434\u0435\u00bb. \u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043c \u043e\u0441\u043d\u043e\u0432\u043e\u043f\u043e\u043b\u0430\u0433\u0430\u044e\u0449\u0443\u044e \u0432\u0435\u0449\u044c Istio \u2013 \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0438\u0437\u0430\u0446\u0438\u0438. \u041d\u0430 \u043d\u0438\u0445 \u0441\u0442\u0440\u043e\u044f\u0442\u0441\u044f [&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-54208","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=\"\u041c\u044b \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u043c \u0441\u0435\u0440\u0438\u044e \u043f\u043e\u0441\u0442\u043e\u0432, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u0440\u043e\u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u0443\u0435\u043c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0437 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u0441\u0435\u0440\u0432\u0438\u0441\u043d\u043e\u0439 \u0441\u0435\u0442\u043a\u0438 Istio Service Mesh \u0432 \u0441\u043e\u0447\u0435\u0442\u0430\u043d\u0438\u0438 \u0441 Red Hat OpenShift \u0438 Kubernetes.\" \/>\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\/seriya-postov-po-istio-service-mesh\" \/>\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\udd47\u0421\u0435\u0440\u0438\u044f \u043f\u043e\u0441\u0442\u043e\u0432 \u043f\u043e Istio Service Mesh | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041c\u044b \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u043c \u0441\u0435\u0440\u0438\u044e \u043f\u043e\u0441\u0442\u043e\u0432, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u0440\u043e\u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u0443\u0435\u043c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0437 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u0441\u0435\u0440\u0432\u0438\u0441\u043d\u043e\u0439 \u0441\u0435\u0442\u043a\u0438 Istio Service Mesh \u0432 \u0441\u043e\u0447\u0435\u0442\u0430\u043d\u0438\u0438 \u0441 Red Hat OpenShift \u0438 Kubernetes.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/seriya-postov-po-istio-service-mesh\" \/>\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-12-19T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:02:12+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\udd47Serie av inl\u00e4gg om Istio Service Mesh | ProHoster","description":"Vi inleder en serie inl\u00e4gg d\u00e4r vi kommer att demonstrera n\u00e5gra av de m\u00e5nga funktionerna i Istio Service Mesh i kombination med Red Hat OpenShift och Kubernetes.","canonical_url":"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/seriya-postov-po-istio-service-mesh","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\udd47\u0421\u0435\u0440\u0438\u044f \u043f\u043e\u0441\u0442\u043e\u0432 \u043f\u043e Istio Service Mesh | ProHoster","og:description":"\u041c\u044b \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u043c \u0441\u0435\u0440\u0438\u044e \u043f\u043e\u0441\u0442\u043e\u0432, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u0440\u043e\u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u0443\u0435\u043c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0437 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u0441\u0435\u0440\u0432\u0438\u0441\u043d\u043e\u0439 \u0441\u0435\u0442\u043a\u0438 Istio Service Mesh \u0432 \u0441\u043e\u0447\u0435\u0442\u0430\u043d\u0438\u0438 \u0441 Red Hat OpenShift \u0438 Kubernetes.","og:url":"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/seriya-postov-po-istio-service-mesh","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-12-19T21:00:00+00:00","article:modified_time":"2020-02-18T11:02:12+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"54208","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 10:27:27","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 20:10:32","updated":"2026-01-24 10:27:27","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\/54208","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=54208"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/54208\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media?parent=54208"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/categories?post=54208"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/tags?post=54208"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}