{"id":34450,"date":"2019-10-31T21:58:24","date_gmt":"2019-10-31T18:58:24","guid":{"rendered":"https:\/\/prohoster.info\/blog\/kubernetes-zahvatit-mir-kogda-i-kak\/"},"modified":"2019-10-31T21:58:24","modified_gmt":"2019-10-31T18:58:24","slug":"kubernetes-zahvatit-mir-kogda-i-kak","status":"publish","type":"post","link":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/kubernetes-zahvatit-mir-kogda-i-kak","title":{"rendered":"Kubernetes vil erobre verden. Hvorn\u00e5r og hvordan?","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>I takt med <noindex><a rel=\"nofollow\" href=\"http:\/\/devopsconf.io\/moscow-rit\/2019\">DevOpsConf<\/a><\/noindex> <b>Vitaliy Khabarov<\/b> har interviewet\u00a0<b>Dmitry Stolyarov<\/b> (<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/users\/distol\/\" class=\"user_link\">distol<\/a><\/noindex>), teknisk direkt\u00f8r og medstifter af firmaet \u00abFlant\u00bb. Vitaliy spurgte Dmitry om, hvad \u00abFlant\u00bb arbejder med, om Kubernetes, udvikling af \u00f8kosystemet, st\u00f8tte. De diskuterede, hvorfor Kubernetes er n\u00f8dvendigt, og om det overhovedet er n\u00f8dvendigt. Og ogs\u00e5 om mikrotjenester, Amazon AWS, tilgang til \u00abJeg er heldig\u00bb i DevOps, fremtiden for Kubernetes, hvorfor, hvorn\u00e5r og hvordan det vil overtage verden, perspektiverne for DevOps og hvad ingeni\u00f8rer skal forberede sig p\u00e5 i en lys og n\u00e6r fremtid med forenkling og neurale netv\u00e6rk.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/devopsdeflope.ru\/posts\/2019\/047.html\">Originalen af interviewet<\/a><\/noindex> i form af et podcast kan du lytte til p\u00e5 DevOps Deflope \u2014 en russisk podcast om DevOps, og nedenfor er den tekstlige version. <\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes vil erobre verden. Hvorn\u00e5r og hvordan?\" src=\"\/wp-content\/uploads\/6341673ac500424dcaccce28967be5a5.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nHer stiller <noindex><a rel=\"nofollow\" href=\"https:\/\/twitter.com\/vitkhab\">Vitaliy Khabarov<\/a><\/noindex> ingeni\u00f8ren fra Express42.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>Om \u00abFlant\u00bb<\/h2>\n<p>\n<b>\u2014 Dima, hej. Du er teknisk direkt\u00f8r for \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/\">Flant<\/a><\/noindex>\u00bb og ogs\u00e5 dens grundl\u00e6gger. Fort\u00e6l venligst, hvad firmaet laver, og hvad du laver i det?<\/b><\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes vil erobre verden. Hvorn\u00e5r og hvordan?\" src=\"\/wp-content\/uploads\/5bec6fcb38b142cc13f75f8eb4dfd834.jpg\" style=\"display:block;margin: 0 auto;\" \/><b>Dmitry<\/b>: Udefra ser det ud til, at vi er s\u00e5dan nogle fyre, der g\u00e5r rundt, s\u00e6tter Kubernetes op og laver noget med det. Men s\u00e5dan er det ikke. Vi startede som et firma, der arbejder med Linux, men allerede for l\u00e6nge siden blev vores hovedaktivitet at servicere produktions- og highload-projekter fra bunden. Normalt bygger vi hele infrastrukturen fra bunden og tager derefter ansvar for den i lang tid. Derfor er det prim\u00e6re arbejde, som \u00abFlant\u00bb udf\u00f8rer, hvad de f\u00e5r penge for \u2014 det er <b>at p\u00e5tage sig ansvar og implementere produktion fra bunden<\/b>.<br \/>\n<br clear=\"left\"><br \/>\n<br clear=\"left\"><br \/>\nSom teknisk direkt\u00f8r og en af medstifterne af firmaet bruger jeg hele dagen p\u00e5 at finde ud af, hvordan jeg kan \u00f8ge tilg\u00e6ngeligheden af produktionen, forenkle driften, g\u00f8re livet lettere for administratorerne, og g\u00f8re livet mere behageligt for udviklerne.<\/p>\n<h2>Om Kubernetes<\/h2>\n<p>\n<b>\u2014 P\u00e5 det seneste har jeg set mange foredrag fra \u00abFlant\u00bb og\u00a0<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/431500\/\">artikler<\/a><\/noindex> om Kubernetes. Hvordan kom I til det?<\/b><\/p>\n<p><b>Dmitry<\/b>: Jeg har allerede fortalt om dette mange gange, men jeg har slet ikke noget imod at gentage det. Jeg mener, det er korrekt at gentage dette emne, fordi der opst\u00e5r forvirring mellem \u00e5rsag og virkning.<\/p>\n<p>Vi havde virkelig brug for et v\u00e6rkt\u00f8j. Vi stod over for en masse problemer, k\u00e6mpede, overvandt dem med forskellige hacks og ledte efter et v\u00e6rkt\u00f8j. Vi gennemgik mange forskellige muligheder, byggede vores egne l\u00f8sninger og akkumulerede erfaring. Gradvist n\u00e5ede vi til det punkt, hvor vi begyndte at bruge Docker n\u00e6sten lige efter, det blev lanceret \u2013 omkring 2013. P\u00e5 tidspunktet for dets introduktion havde vi allerede meget erfaring med containere, og vi havde allerede skrevet vores egen version af 'Docker' \u2013 nogle hacks i Python. Med introduktionen af Docker fik vi muligheden for at kaste vores l\u00f8sninger v\u00e6k og bruge en p\u00e5lidelig og f\u00e6llesskabsunderst\u00f8ttet l\u00f8sning.<\/p>\n<p>Historien med Kubernetes er tilsvarende. P\u00e5 det tidspunkt, hvor det begyndte at tage fart \u2013 for os var det version 1.2 \u2013 havde vi allerede en masse hacks b\u00e5de i Shell og i Chef, som vi fors\u00f8gte at orkestrere Docker med. Vi kiggede seri\u00f8st p\u00e5 Rancher og forskellige andre l\u00f8sninger, men s\u00e5 kom Kubernetes, som er designet pr\u00e6cist som vi ville have gjort det \u2013 eller endda bedre. Der er ingen kritik her.<\/p>\n<p>Ja, der er nogle ufuldst\u00e6ndigheder her, der er nogle ufuldst\u00e6ndigheder der \u2014 mange ufuldst\u00e6ndigheder, og 1.2 er virkelig skr\u00e6mmende, men... Kubernetes er som en bygning under opf\u00f8relse \u2014 du kigger p\u00e5 projektet og forst\u00e5r, at det bliver rigtig fedt. Hvis bygningen lige nu har fundament og to etager, s\u00e5 forst\u00e5r man, at det er bedre ikke at flytte ind endnu, men med softwaren er der ikke s\u00e5danne problemer \u2014 den kan allerede bruges.<\/p>\n<blockquote><p>Vi havde ikke et \u00f8jeblik, hvor vi overvejede, om vi skulle bruge Kubernetes eller ej. Vi ventede p\u00e5 det l\u00e6nge f\u00f8r det blev lanceret og fors\u00f8gte selv at bygge analoger.<\/p><\/blockquote>\n<p><\/p>\n<h2>Om Kubernetes<\/h2>\n<p>\n<b>\u2014 Deltager I direkte i udviklingen af Kubernetes?<\/b><\/p>\n<p><b>Dmitry<\/b>: Midt imellem. Vi deltager snarere i udviklingen af \u00f8kosystemet. Vi sender et vist antal pull requests: i Prometheus, i forskellige operat\u00f8rer, i Helm \u2013 ind i \u00f8kosystemet. Desv\u00e6rre kan jeg ikke holde styr p\u00e5 alt, hvad vi g\u00f8r, og jeg kan tage fejl, men der er ikke \u00e9n eneste pull request fra os til kernen.<\/p>\n<p><b>\u2014 Samtidig udvikler I ogs\u00e5 mange egne v\u00e6rkt\u00f8jer omkring Kubernetes?<\/b><\/p>\n<p><b>Dmitry<\/b>: Strategien er s\u00e5dan: Vi g\u00e5r og laver pull requests til alt, hvad der allerede findes. Hvis der ikke accepteres pull requests der, s\u00e5 fork'er vi dem bare til os selv og lever, indtil de bliver accepteret med vores builds. Derefter, n\u00e5r det n\u00e5r upstream, vender vi tilbage til den upstream-version.<\/p>\n<p>For eksempel har vi Prometheus-operatoren, som vi har skiftet frem og tilbage mellem i vores upstream-implementering allerede omkring fem gange, tror jeg. Vi har brug for en funktion, vi har sendt en pull request, vi skal have den implementeret i morgen, og vi \u00f8nsker ikke at vente p\u00e5, at den bliver udgivet i upstream. S\u00e5ledes samler vi vores egen version og ruller vores opbygning med den funktion, vi har brug for, ud til alle vores klynger. S\u00e5 omdanner de det for os i upstream og siger: \"Hey, lad os g\u00f8re det for en mere generel anvendelse\", s\u00e5 f\u00e6rdigg\u00f8r vi det, eller nogen andre, og p\u00e5 et tidspunkt bliver det igen flettet tilbage.<\/p>\n<p><b>Alt, hvad der eksisterer, fors\u00f8ger vi at udvikle.<\/b>. Mange elementer, som endnu ikke findes, enten ikke er blevet opfundet, eller som er blevet opfundet, men ikke implementeret \u2013 det skaber vi. Og ikke fordi vi elsker selve processen eller at konstruere cykler som en branche, men simpelthen fordi vi har brug for dette v\u00e6rkt\u00f8j. Ofte bliver sp\u00f8rgsm\u00e5let stillet, hvorfor vi har lavet den eller den funktion? Svaret er enkelt \u2013 fordi vi m\u00e5tte komme videre, l\u00f8se et praktisk problem, som vi har l\u00f8st med dette v\u00e6rkt\u00f8j.<\/p>\n<blockquote><p>Vejen er altid s\u00e5dan: vi s\u00f8ger meget grundigt, og hvis vi ikke finder nogen l\u00f8sning p\u00e5, hvordan man laver en trolleybus ud af et br\u00f8d, s\u00e5 laver vi vores egen br\u00f8d og vores egen trolleybus.<\/p><\/blockquote>\n<p><\/p>\n<h2>Flanta-v\u00e6rkt\u00f8jer<\/h2>\n<p>\n<b>\u2014 Jeg er klar over, at Flanta i \u00f8jeblikket har addon-operat\u00f8rer, shell-operat\u00f8rer, dapp\/werf v\u00e6rkt\u00f8jer. Som jeg forst\u00e5r det, er dette det samme v\u00e6rkt\u00f8j i forskellige inkarnationer. Jeg forst\u00e5r ogs\u00e5, at der inden for Flanta er mange forskellige v\u00e6rkt\u00f8jer. Er det korrekt?<\/b><\/p>\n<p><b>Dmitry<\/b>: Vi har meget mere p\u00e5 GitHub. Af det jeg kan huske nu, har vi statusmap \u2013 et panel til Grafana, som alle kan lide. Det n\u00e6vnes n\u00e6sten i hver anden artikel om overv\u00e5gning af Kubernetes p\u00e5 Medium. Det er umuligt at forklare kort, hvad statusmap er \u2013 det kr\u00e6ver en separat artikel, men det er et meget nyttigt v\u00e6rkt\u00f8j til overv\u00e5gning af status over tid, da vi ofte har brug for at vise status over tid i Kubernetes. Vi har ogs\u00e5 LogHouse \u2013 det er en l\u00f8sning baseret p\u00e5 ClickHouse og lidt magi til indsamling af logs i Kubernetes.<\/p>\n<p>Mange nyttige v\u00e6rkt\u00f8jer! Og der vil komme endnu flere, da en r\u00e6kke interne l\u00f8sninger vil blive udgivet i \u00e5r. Blandt de store p\u00e5 addon-operationsniveauet er der en masse addons til Kubernetes, s\u00e5som hvordan man korrekt installerer sert manager \u2013 et v\u00e6rkt\u00f8j til h\u00e5ndtering af certifikater, hvordan man s\u00e6tter Prometheus op med en masse tilknyttede v\u00e6rkt\u00f8jer \u2013 der er omkring tyve forskellige bin\u00e6re filer, der eksporterer data og samler information; til dette er der en fantastisk grafik og alarmer i Prometheus. Alt dette er blot en m\u00e6ngde addons til Kubernetes, der installeres i klyngen, og som forvandler den fra simpel til en avanceret, automatiseret l\u00f8sning, hvor mange problemer allerede er blevet l\u00f8st. Ja, vi laver meget.<\/p>\n<h2>Udviklingen af \u00f8kosystemet<\/h2>\n<p>\n<b>\u2014 Jeg mener, at dette er et stort bidrag til udviklingen af dette v\u00e6rkt\u00f8j og dets anvendelsesmetoder. Kan du ansl\u00e5, hvem der ellers ville kunne bidrage p\u00e5 samme m\u00e5de til udviklingen af \u00f8kosystemet?<\/b><\/p>\n<p><b>Dmitry<\/b>: <b>Ingeni\u00f8rerne i Rusland, blandt de virksomheder, der opererer p\u00e5 vores marked \u2013 ingen er i n\u00e6rheden.<\/b>. Selvf\u00f8lgelig er dette en dristig p\u00e5stand, fordi der er store spillere som Mail og Yandex \u2013 de laver ogs\u00e5 noget med Kubernetes, men selv de er ikke i n\u00e6rheden af det bidrag, som virksomheder g\u00f8r globalt, der laver meget mere end os. Det er sv\u00e6rt at sammenligne \u00abFlant\u00bb med en stab p\u00e5 80 personer og Red Hat, hvor der kun til \u00e9n Kubernetes er 300 ingeni\u00f8rer, hvis jeg ikke tager fejl. Det er sv\u00e6rt at sammenligne. I vores RnD-afdeling er der 6 personer, inklusive mig, der arbejder p\u00e5 alle vores v\u00e6rkt\u00f8jer. 6 personer mod 300 ingeni\u00f8rer i Red Hat \u2013 det er lidt sv\u00e6rt at sammenligne.<\/p>\n<p><b>\u2014 Ikke desto mindre, n\u00e5r selv disse 6 personer kan skabe noget virkelig nyttigt og delbart, n\u00e5r de st\u00e5r over for en praktisk opgave og giver l\u00f8sningen til f\u00e6llesskabet \u2013 det er en interessant sag. Jeg forst\u00e5r, at i store teknologiselskaber, hvor der er egen udvikling og et team, der st\u00f8tter Kubernetes, kan der i princippet ogs\u00e5 udvikles tilsvarende v\u00e6rkt\u00f8jer. Dette er et eksempel for dem p\u00e5, at det er muligt at udvikle og give det videre til f\u00e6llesskabet og give et skub til hele f\u00e6llesskabet, der bruger Kubernetes.<\/b><\/p>\n<p><b>Dmitry<\/b>: Det er sikkert en integratorfunktion, en s\u00e6rlig egenskab ved ham. Vi har mange projekter, og vi ser mange forskellige situationer. Den prim\u00e6re m\u00e5de, vi skaber merv\u00e6rdi p\u00e5, er ved at analysere disse cases, finde f\u00e6lles tr\u00e6k og maksimalt reducere omkostningerne for os. Det arbejder vi aktivt med. Det er sv\u00e6rt for mig at sige noget om Rusland og verden, men vi har cirka 40 DevOps-ingeni\u00f8rer i firmaet, der arbejder med Kubernetes. Jeg tror ikke, der er mange virksomheder i Rusland med et sammenligneligt antal specialister, der kender til Kubernetes, hvis de overhovedet findes.<\/p>\n<p>Jeg forst\u00e5r alt om titlen DevOps-ingeni\u00f8r, alle forst\u00e5r det, og det er blevet en vane at kalde DevOps-ingeni\u00f8rer for DevOps-ingeni\u00f8rer, s\u00e5 det beh\u00f8ver vi ikke at diskutere. Alle de 40 fantastiske DevOps-ingeni\u00f8rer st\u00e5r hver dag over for problemer og l\u00f8ser dem. Vi analyserer blot denne erfaring og pr\u00f8ver at generalisere den. Vi ved, at hvis vi holder denne viden indad, vil v\u00e6rkt\u00f8jet v\u00e6re v\u00e6rdil\u00f8st om et \u00e5r eller to, fordi et f\u00e6rdigt v\u00e6rkt\u00f8j vil dukke op et eller andet sted i communityen. Der er ikke nogen mening i at akkumulere denne erfaring internt \u2013 det er kun spild af kr\u00e6fter og tid i dev\/null. Men s\u00e5 er vi slet ikke kede af at dele. Vi publicerer med stor gl\u00e6de alt dette og forst\u00e5r, at det skal publiceres, udvikles, promoveres, s\u00e5 folk kan bruge det og tilf\u00f8je deres erfaring \u2013 s\u00e5 vokser og lever alt. S\u00e5 om to \u00e5r ender v\u00e6rkt\u00f8jet ikke i skraldespanden. Det er ikke kedeligt at forts\u00e6tte med at investere kr\u00e6fter, fordi det er tydeligt, at nogen bruger dit v\u00e6rkt\u00f8j, og om to \u00e5r bruger alle det.<\/p>\n<p><b>Dette er en del af vores store strategi med dapp\/werf<\/b>. Jeg kan ikke huske, hvorn\u00e5r vi begyndte at udvikle det, men det virker som om, det var for tre \u00e5r siden. Oprindeligt var det helt p\u00e5 shell. Det var en super proof of concept, vi l\u00f8ste nogle af vores specifikke opgaver \u2013 det lykkedes! Men der er problemer med shell, det er umuligt at skalere det op, at programmere p\u00e5 shell er en sv\u00e6r opgave. Vi havde en vane med at skrive i Ruby, s\u00e5 vi \u00e6ndrede og udviklede noget i Ruby, men s\u00e5 st\u00f8dte vi ind i, at communityen, den gruppe, der ikke siger \u201cvi \u00f8nsker eller ikke \u00f8nsker\u201d, vender n\u00e6sen v\u00e6k fra Ruby, som det er m\u00e6rkeligt. Vi inds\u00e5, at vi skulle skrive alt dette i Go for simpelthen at opfylde det f\u00f8rste punkt p\u00e5 tjeklisten: <b>DevOps-v\u00e6rkt\u00f8jet skal v\u00e6re en statisk bin\u00e6rfil<\/b>. Uanset om det er Go eller ej, er det ikke s\u00e5 vigtigt, men det er bedre med en statisk bin\u00e6rfil skrevet i Go.<\/p>\n<p>Vi har brugt kr\u00e6fter p\u00e5 at omskrive dapp'en til Go og kaldt den werf. Dapp'en er ikke l\u00e6ngere vedligeholdt, den udvikles ikke, den fungerer i en eller anden sidste version, men der er en absolut opgraderingsvej opad, som kan f\u00f8lges.<\/p>\n<h2>Hvorfor blev dapp'en oprettet<\/h2>\n<p>\n<b>\u2014 Kan du kort fort\u00e6lle, hvorfor dapp'en blev oprettet, hvilke problemer den l\u00f8ser?<\/b><\/p>\n<p><b>Dmitry<\/b>: Den f\u00f8rste grund er bygning. Oprindeligt havde vi store problemer med bygning, da Docker ikke kunne multi-stage, og vi lavede multi-stage selv. S\u00e5 havde vi en masse andre sp\u00f8rgsm\u00e5l om oprydning af billeder. Alle, der laver CI\/CD, st\u00f8der f\u00f8r eller senere p\u00e5 problemet med en masse opbyggede billeder, der kr\u00e6ver oprydning af det, der ikke er n\u00f8dvendigt, og at bevare det, der er n\u00f8dvendigt.<\/p>\n<p>Den anden grund er deployment. Ja, der er Helm, men det l\u00f8ser kun en del af problemerne. Uden at skulle joke, st\u00e5r der, at \"Helm er Package Manager for Kubernetes\". Pr\u00e6cis, \"the\". Der er ogs\u00e5 ordene \"Package Manager\" - hvad forventes der typisk af en Package Manager? Vi siger: \"Package Manager - installer pakken!\" og forventer, at den siger: \"Pakken er installeret.\" <\/p>\n<p>Det er interessant, at vi siger: \"Helm, installer pakken\", men n\u00e5r den svarer, at den har installeret, viser det sig, at den kun har startet installationen - den sagde til Kubernetes: \"Start denne ting!\", og om den er startet eller fungerer, l\u00f8ser Helm slet ikke det sp\u00f8rgsm\u00e5l.<\/p>\n<blockquote><p>Det viser sig, at Helm blot er en tekstbehandler, der indl\u00e6ser data i Kubernetes.<\/p><\/blockquote>\n<p>\nMen inden for enhver deployment \u00f8nsker vi at vide - er applikationen rullet ud til produktion eller ej? At v\u00e6re rullet ud til produktion betyder, at applikationen er sendt derud, den nye version er udrullet, og den faller ikke og svarer korrekt. Helm l\u00f8ser slet ikke denne opgave. For at l\u00f8se den skal der bruges meget kraft, for det kr\u00e6ver, at du giver Kubernetes en kommando om at rulle ud og overv\u00e5ge, hvad der sker - om det er blevet udrullet, om det er rullet ud. Der er ogs\u00e5 mange opgaver relateret til deployment, oprydning, bygning.<\/p>\n<h2>Planer<\/h2>\n<p>\nAllerede i \u00e5r vil vi g\u00e5 over til lokal udvikling. Vi \u00f8nsker at n\u00e5 det niveau, som tidligere blev gjort i Vagrant \u2014 vi skriver \"vagrant up\", og vores virtuelle maskiner bliver oprettet. Vi vil til det punkt, hvor der er et projekt i Git, og vi skriver \"werf up\", som starter en lokal kopi af dette projekt, der k\u00f8rer i et lokalt mini-Kub, med alle mapper tilsluttet, s\u00e5 det er nemt at udvikle. Afh\u00e6ngig af programmeringssproget udf\u00f8res dette p\u00e5 forskellige m\u00e5der, men vi \u00f8nsker, at det skal v\u00e6re nemt at drive lokal udvikling med monterede filer.<\/p>\n<p>N\u00e6ste skridt for os er at investere kraftigt <b>i udviklerens bekvemmelighed.<\/b>. For hurtigt at kunne starte et projekt lokalt med \u00e9t v\u00e6rkt\u00f8j, udvikle, pushe til Git, og det skal derefter ogs\u00e5 kunne deployes til staging eller tests afh\u00e6ngigt af pipelines, og s\u00e5 til produktion med det samme v\u00e6rkt\u00f8j. Dette sammenh\u00e6ng, ensartethed, reproducerbarhed af infrastrukturen fra lokal milj\u00f8 til produktion er meget vigtig for os. Men det findes endnu ikke i werf \u2014 vi planl\u00e6gger stadig at g\u00f8re det.<\/p>\n<p>Men vejen til dapp\/werf har altid v\u00e6ret den samme som med Kubernetes i begyndelsen. Vi st\u00f8dte p\u00e5 problemer, l\u00f8ste dem med omveje \u2014 fandt p\u00e5 nogle l\u00f8sninger i shell eller hvad som helst. Derefter fors\u00f8gte vi at g\u00f8re disse omveje mere lige, generalisere og konsolidere dem i bin\u00e6re filer, som vi blot deler.<\/p>\n<p>Der er ogs\u00e5 et andet syn p\u00e5 hele denne historie, med analogier. <\/p>\n<blockquote><p>Kubernetes er som en bilramme med motor. Der er ingen d\u00f8re, vinduer, radio, luftfrisker \u2014 slet ikke noget. Kun rammen og motoren. Og der er Helm \u2014 det er rettet. Det er dejligt at have et rat, men vi har ogs\u00e5 brug for styrestift, styret\u00f8j, gearkasse og hjul; ellers fungerer det ikke.<\/p><\/blockquote>\n<p>\nI tilf\u00e6ldet med werf er det endnu en komponent til Kubernetes. Men lige nu har vi i alfa-versionen af werf for eksempel, at Helm er kompileret inden i werf, fordi vi blev tr\u00e6tte af at g\u00f8re det selv. Der er mange grunde til at g\u00f8re det s\u00e5dan, jeg vil grundigt forklare, hvorfor vi har kompilere helm helt sammen med tiller ind i werf <noindex><a rel=\"nofollow\" href=\"http:\/\/devopsconf.io\/moscow-rit\/2019\/abstracts\/5136\">p\u00e5 foredraget ved RIT++.<\/a><\/noindex>.<\/p>\n<p>Nu er werf et mere integreret komponent. Vi f\u00e5r et f\u00e6rdigt styr, styrstang - jeg er ikke s\u00e6rlig god til biler, men det er en stor blok, der l\u00f8ser et ret stort spektrum af opgaver. Vi beh\u00f8ver ikke selv at lede i kataloget, finde en del til en anden, og t\u00e6nke over, hvordan de skal skrues sammen. Vi f\u00e5r en f\u00e6rdig kombination, der straks l\u00f8ser mange opgaver. Men indeni er den lavet af de samme open source-komponenter, bruger stadig Docker til bygning, Helm til dele af funktionaliteten, og der er ogs\u00e5 et par andre biblioteker. Det er et integreret v\u00e6rkt\u00f8j til hurtigt og nemt at f\u00e5 en fantastisk CI\/CD ud af boksen.<\/p>\n<h2>Er det sv\u00e6rt at vedligeholde Kubernetes?<\/h2>\n<p>\n<b>\u2014 Du taler om erfaringen med at begynde at bruge Kubernetes, det fungerer som ramme, motor, og at du kan tilf\u00f8je meget forskelligt: karrosseri, styret\u00f8j, s\u00e6tte pedaler og s\u00e6der p\u00e5. Sp\u00f8rgsm\u00e5let opst\u00e5r - hvor sv\u00e6rt er det for dig at vedligeholde Kubernetes? I har stor erfaring, hvor meget tid og ressourcer bruger I specifikt p\u00e5 at vedligeholde Kubernetes adskilt fra resten?<\/b><\/p>\n<p><b>Dmitry<\/b>: Det er et meget komplekst sp\u00f8rgsm\u00e5l, og for at svare p\u00e5 det, skal vi forst\u00e5, hvad vedligeholdelse er, og hvad vi \u00f8nsker fra Kubernetes. M\u00e5ske kan du uddybe?<\/p>\n<p><b>\u2014 Efter hvad jeg ved, og som jeg ser det, \u00f8nsker mange teams nu at pr\u00f8ve Kubernetes. Alle hopper ind i det, s\u00e6tter det op p\u00e5 egen h\u00e5nd. Jeg har en fornemmelse af, at folk ikke altid forst\u00e5r kompleksiteten af dette system.<\/b><\/p>\n<p><b>Dmitry<\/b>: Det er korrekt.<\/p>\n<p><b>\u2014 Hvor sv\u00e6rt er det at tage og installere Kubernetes fra bunden, s\u00e5 det er produktionsklar?<\/b><\/p>\n<p><b>Dmitry<\/b>: Hvad tror du, hvor sv\u00e6rt er det at transplantere et hjerte? Jeg forst\u00e5r, det er et kompromitterende sp\u00f8rgsm\u00e5l. At h\u00e5ndtere en skalpel og ikke lave fejl \u2013 det er ikke s\u00e5 sv\u00e6rt. Hvis de fort\u00e6ller dig, hvor du skal sk\u00e6re og hvor du skal sy, s\u00e5 selve proceduren er ikke kompliceret. Det er sv\u00e6rt at garantere, at det lykkes hver gang.<\/p>\n<blockquote><p>At installere Kubernetes og f\u00e5 det til at fungere er let: klik! \u2013 det er installeret, der er mange installationsmetoder. Men hvad sker der, n\u00e5r problemer opst\u00e5r?<\/p><\/blockquote>\n<p>\nDer opst\u00e5r altid sp\u00f8rgsm\u00e5l - hvad har vi ikke taget h\u00f8jde for? Hvad har vi ikke gjort? Hvilke Linux-kernparametre angav vi forkert? Herregud, angav vi dem overhovedet?! Hvilke Kubernetes-komponenter installerede vi, og hvilke gjorde vi ikke? Tusind sp\u00f8rgsm\u00e5l opst\u00e5r, og for at besvare dem kr\u00e6ver det 15-20 \u00e5rs erfaring i denne branche.<\/p>\n<p>Jeg har et friskt eksempel p\u00e5 dette emne, som kan belyse sp\u00f8rgsm\u00e5let \"Er det sv\u00e6rt at vedligeholde Kubernetes?\" For nogle tid siden overvejede vi seri\u00f8st, om vi skulle fors\u00f8ge at implementere Cilium som netv\u00e6rket i Kubernetes.<\/p>\n<p>Lad mig forklare, hvad Cilium er. I Kubernetes er der mange forskellige implementeringer af netv\u00e6rkssystemet, og en af dem er virkelig fed - det er Cilium. Hvad g\u00e5r det ud p\u00e5? For nogle tid siden blev der i kernen introduceret muligheden for at skrive hooks til kernen, der p\u00e5 en eller anden m\u00e5de blander sig i netv\u00e6rkssystemet og forskellige andre systemer, og som tillader at omg\u00e5 store dele af kernen.<\/p>\n<p>I Linux-kernen er der historisk ip rout, netfilter, broere og mange forskellige gamle komponenter, som har eksisteret i 15, 20, 30 \u00e5r. Generelt fungerer de, det er alt godt, men nu har vi fyldt med containere, og det ligner et t\u00e5rn af 15 mursten oven p\u00e5 hinanden, mens du st\u00e5r p\u00e5 det p\u00e5 \u00e9t ben - en underlig f\u00f8lelse. Dette system er historisk udviklet med mange nuancer, ligesom et appendix i kroppen. I nogle situationer er der problemer med performance, for eksempel.<\/p>\n<p>Der er fremragende BPF og muligheden for at skrive hooks til kernen - folkene har skrevet deres egne hooks til kernen. Pakken kommer ind i Linux-kernen, de tager den lige ved indgangen, behandler den, som de vil uden broer, uden TCP, uden IP-stak - kort sagt, forbi alt, hvad der er skrevet i Linux-kernen, og spytter den lige ud i containeren.<\/p>\n<p>Hvad har vi opn\u00e5et? Meget flot performance, fantastiske features - simpelthen klasse! Men vi ser p\u00e5 det og ser, at der p\u00e5 hver maskine k\u00f8rer et program, der tilslutter sig Kubernetes API'et, og baseret p\u00e5 de data, det f\u00e5r fra denne API, genererer det C-kode og kompilerer bin\u00e6re filer, som det loader ind i kernen, s\u00e5 disse hooks fungerer i kernelspace.<\/p>\n<p>Hvad sker der, hvis noget g\u00e5r galt? Vi ved det ikke. For at finde ud af det skal man l\u00e6se hele denne kode, forst\u00e5 hele logikken, og det er virkelig sv\u00e6rt. Men p\u00e5 den anden side er der disse broer, netfiltre, ip rout - jeg har ikke l\u00e6st deres kildekoder, og 40 ingeni\u00f8rer, der arbejder i vores virksomhed, har det heller ikke. M\u00e5ske er der nogle stykker, der forst\u00e5r visse dele.<\/p>\n<p>Og hvad g\u00f8r det? Det viser sig, at der er en ip-rout, Linux-kernen, og der er et nyt v\u00e6rkt\u00f8j - hvad g\u00f8r det, vi forst\u00e5r hverken den ene eller den anden. Men vi er bange for at bruge det nye - hvorfor? Fordi hvis v\u00e6rkt\u00f8jet har 30 \u00e5r p\u00e5 bagen, s\u00e5 har man fundet alle fejlene, og man er kommet til at st\u00f8de p\u00e5 alle faldgruberne, s\u00e5 man beh\u00f8ver ikke at vide om alt - det fungerer som en sort boks, og det g\u00f8r det altid. Alle ved, hvilken diagnostisk skrue der skal bruges, og hvilket tcpdump der skal k\u00f8res p\u00e5 hvilket tidspunkt. Alle kender godt diagnostiske v\u00e6rkt\u00f8jer og forst\u00e5r, hvordan dette s\u00e6t komponenter fungerer i Linux-kernen - ikke hvordan det er bygget op, men hvordan man bruger det.<\/p>\n<p>Men den fantastiske Cilium er ikke 30 \u00e5r gammel, den er ikke engang modnet. Der er det samme problem med Kubernetes, det er en kopi. B\u00e5de Cilium og Kubernetes kan installeres uden problemer, men hvis noget g\u00e5r galt i produktionen, vil I s\u00e5 v\u00e6re i stand til hurtigt at forst\u00e5, hvad der gik galt i en kritisk situation? <\/p>\n<blockquote><p>N\u00e5r vi taler om, hvor sv\u00e6rt det er at vedligeholde Kubernetes - nej, det er meget enkelt, og ja, det er utroligt sv\u00e6rt. Kubernetes fungerer fint for sig selv, men med milliarder af nuancer.<\/p><\/blockquote>\n<p><\/p>\n<h2>Om tilgangen \"Jeg er heldig\"<\/h2>\n<p>\n<b>\u2014 Er der virksomheder, hvor disse nuancer n\u00e6sten garanteret vil dukke op? Lad os antage, at Yandex pludselig flytter alle deres tjenester til Kubernetes, s\u00e5 vil der v\u00e6re en betydelig belastning.<\/b><\/p>\n<p><b>Dmitry<\/b>: Nej, det handler ikke om belastningen, men om de mest simple ting. For eksempel, vi har Kubernetes, og vi har deployet en applikation der. Hvordan forst\u00e5r vi, at den fungerer? Der er simpelthen ikke et klar v\u00e6rkt\u00f8j til at forst\u00e5, at applikationen ikke falder. Der er ikke et f\u00e6rdigt system, der sender alarmer - man skal ops\u00e6tte disse alarmer og hver graf. Og vi opdaterer Kubernetes.<\/p>\n<p>Der er Ubuntu 16.04. Man kan sige, at det er en gammel version, men vi bruger stadig den, fordi der er LTS. Den har systemd, hvis detalje er, at den ikke renser C-grupperne. Kubernetes starter pods, opretter C-grupper, fjerner derefter pods, og p\u00e5 en eller anden m\u00e5de sker det - jeg kan ikke huske detaljerne, undskyld - at der forbliver systemd-slices. Dette f\u00f8rer til, at enhver maskine over tid begynder at bremse betydeligt. Det handler ikke engang om highload. Hvis der k\u00f8res vedvarende pods, f.eks. hvis der er et Cron Job, der konstant genererer pods, s\u00e5 vil en maskine med Ubuntu 16.04 begynde at bremse efter en uge. Der vil hele tiden v\u00e6re et h\u00f8jt load average p\u00e5 grund af det store antal C-grupper, der er oprettet. Dette er et problem, som enhver person, der bare installerer Ubuntu 16 og derp\u00e5 Kubernetes, st\u00e5r over for.<\/p>\n<p>Lad os sige, at han p\u00e5 en eller anden m\u00e5de opdaterer systemd eller noget andet, men i Linux-kernen op til 4.16 er det endnu sjovere - n\u00e5r C-grupperne bliver fjernet, l\u00e6kker de i kernen og bliver faktiske ikke slettet. Derfor vil det efter en m\u00e5neds arbejde p\u00e5 denne maskine v\u00e6re umuligt at se statistikkerne om hukommelsen for pods. Vi henter en fil, k\u00f8rer den i programmet, og den ene fil tager 15 sekunder at k\u00f8re, fordi kernen bruger lang tid p\u00e5 at gennemg\u00e5 millioner af C-grupper, som tilsyneladende er fjernet, men nej - de l\u00e6kker.<\/p>\n<p>Der er stadig mange s\u00e5danne sm\u00e5 detaljer her og der. Det er ikke noget, som gigantiske virksomheder kun nogle gange kan st\u00f8de p\u00e5 under meget store belastninger - nej, det er et sp\u00f8rgsm\u00e5l om daglige ting. Folk kan leve s\u00e5dan i flere m\u00e5neder - installerede Kubernetes, deployede applikationen - det ser ud til at fungere. Mange har det fint med det. De aner ikke, at applikationen p\u00e5 et tidspunkt vil falde ud af en eller anden grund, alarmerne kommer ikke, men for dem er det normalt. Tidligere levede de p\u00e5 virtuelle maskiner uden overv\u00e5gning, nu er de g\u00e5et over til Kubernetes ogs\u00e5 uden overv\u00e5gning - hvad er forskellen?<\/p>\n<p>Sp\u00f8rgsm\u00e5let er, at n\u00e5r vi g\u00e5r p\u00e5 isen, ved vi aldrig dens tykkelse, medmindre vi har m\u00e5lt den p\u00e5 forh\u00e5nd. Mange g\u00e5r rundt og bekymrer sig ikke, fordi de ogs\u00e5 gik f\u00f8r.<\/p>\n<blockquote><p>Fra mit synspunkt er detaljen og kompleksiteten ved at drifte ethvert system i at garantere, at isens tykkelse helt sikkert er tilstr\u00e6kkelig til at l\u00f8se vores opgaver. Det handler om det.<\/p><\/blockquote>\n<p>\nI IT-branchen synes jeg, der er for mange tilgange til \"Jeg er heldig.\" Mange installerer software og bruger biblioteker i h\u00e5bet om, at de vil have held. Generelt har mange held. M\u00e5ske er det derfor, det fungerer.<\/p>\n<p><b>\u2014 I min pessimistiske vurdering ser det s\u00e5ledes ud: N\u00e5r risikoen er h\u00f8j, og applikationen skal fungere, er der brug for st\u00f8tte fra \"Flant\", muligvis fra Red Hat, eller der kr\u00e6ves et internt team, der er dedikeret til Kubernetes og klar til at h\u00e5ndtere det.<\/b><\/p>\n<p><b>Dmitry<\/b>: Objektivt set er det s\u00e5dan. At dykke selv ind i Kubernetes-historien for et lille team er en vis m\u00e6ngde risiko.<\/p>\n<h2>Har vi brug for containere?<\/h2>\n<p>\n<b>\u2014 Kan du fort\u00e6lle, hvor udbredt Kubernetes faktisk er i Rusland?<\/b><\/p>\n<p><b>Dmitry<\/b>: Jeg har ikke disse data, og jeg er ikke sikker p\u00e5, om nogen overhovedet har dem. Vi siger: \"Kubernetes, Kubernetes\", men der er ogs\u00e5 et andet synspunkt p\u00e5 dette sp\u00f8rgsm\u00e5l. Hvor udbredte containere er, ved jeg heller ikke, men jeg kender et tal fra rapporter p\u00e5 internettet, der siger, at 70% af containerne orkestreres af Kubernetes. Det var en p\u00e5lidelig kilde baseret p\u00e5 et ganske stort datas\u00e6t globalt.<\/p>\n<p><b>Et andet sp\u00f8rgsm\u00e5l er \u2013 har vi brug for containere?<\/b> Min personlige f\u00f8lelse og generelt positionen for virksomheden \"Flant\" er s\u00e5dan, at Kubernetes er de facto-standarden.<\/p>\n<blockquote><p>Ingenting andet end Kubernetes vil v\u00e6re der.<\/p><\/blockquote>\n<p>\nDet er en absolut game-changer inden for infrastrukturadministration. Absolut \u2013 alt, ikke mere Ansible, Chef, virtuelle maskiner, Terraform. Jeg n\u00e6vner endda ikke de gamle landsbymetoder. <b>Kubernetes er en absolut changer<\/b>, og nu vil det kun v\u00e6re s\u00e5dan.<\/p>\n<p>Det er klart, at nogle har brug for et par \u00e5r, mens andre har brug for et par \u00e5rtier for at indse dette. Jeg har ingen tvivl om, at der ikke vil v\u00e6re noget andet end Kubernetes og denne nye tilgang: vi g\u00e5r ikke l\u00e6ngere ind i operativsystemet, men bruger <b>infrastruktur som kode<\/b>, bare ikke med kode, men med yml \u2013 en deklarativt beskreven infrastruktur. Jeg har en f\u00f8lelse af, at det altid vil v\u00e6re s\u00e5dan.<\/p>\n<p><b>\u2014 S\u00e5 de virksomheder, der endnu ikke er g\u00e5et over til Kubernetes, vil uundg\u00e5eligt komme til at g\u00f8re det eller forsvinde i glemsel. Forstod jeg dig korrekt?<\/b><\/p>\n<p><b>Dmitry<\/b>: Det er heller ikke helt rigtigt. For eksempel, hvis vi har til opgave at starte en dns-server, kan den startes p\u00e5 FreeBSD 4.10 og kan fungere fint i 20 \u00e5r. Bare fungere og det er det. M\u00e5ske skal der opdateres noget \u00e9n gang i l\u00f8bet af de 20 \u00e5r. Hvis vi taler om software i formatet, hvor vi har startet det og det faktisk fungerer i mange \u00e5r uden opdateringer, uden \u00e6ndringer, s\u00e5 vil der selvf\u00f8lgelig ikke v\u00e6re Kubernetes. Det er ikke n\u00f8dvendigt der.<\/p>\n<blockquote><p>Alt der ang\u00e5r CI\/CD - hvor som helst der er brug for Continuous Delivery, hvor versioner skal opdateres, hvor aktive \u00e6ndringer er n\u00f8dvendige, hvor det er n\u00f8dvendigt at opbygge fejltolerance - kun Kubernetes.<\/p><\/blockquote>\n<p><\/p>\n<h2>Om mikrotjenester<\/h2>\n<p>\n<b>\u2014 Her har jeg en lille diskrepans. For at arbejde med Kubernetes kr\u00e6ves der ekstern eller intern support - det er det f\u00f8rste punkt. Det andet - n\u00e5r vi lige er begyndt at udvikle, er vi en lille startup, vi har stadig ikke noget, udvikling til Kubernetes eller overhovedet til mikrotjenestearkitektur kan v\u00e6re besv\u00e6rlig, og det er ikke altid \u00f8konomisk forsvarligt. Jeg er interesseret i din mening - skal startups helt fra bunden begynde at skrive til Kubernetes, eller kan de stadig skrive en monolit, og s\u00e5 derefter komme til Kubernetes?<\/b><\/p>\n<p><b>Dmitry<\/b>: Godt sp\u00f8rgsm\u00e5l. Jeg har en pr\u00e6sentation om mikrotjenester. <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/424531\/\">\u00abMikrotjenester: st\u00f8rrelse betyder noget\u00bb.<\/a><\/noindex> Jeg har mange gange st\u00f8dt p\u00e5, at mennesker pr\u00f8ver at sl\u00e5 s\u00f8m i med en mikroskop. Selve tilgangen er rigtig, vi designer selv vores interne software p\u00e5 denne m\u00e5de. Men n\u00e5r man g\u00f8r det, skal man klart forst\u00e5, hvad man g\u00f8r. Det jeg hader mest ved mikrotjenester er ordet \u00abmikro\u00bb. Historisk set er ordet opst\u00e5et, og af en eller anden grund mener folk, at mikro er meget lille, mindre end en millimeter, som en mikrometer. Det er ikke s\u00e5dan.<\/p>\n<p>For eksempel er der en monolit, som 300 personer arbejder p\u00e5, og alle der deltager i udviklingen forst\u00e5r, at der er problemer, og den skal deles op i mikro-stykker - omkring 10 stykker, som hver skrives af 30 personer i minimum. Det er vigtigt, n\u00f8dvendigt og fantastisk. Men n\u00e5r en startup kommer til os, hvor 3 helt fantastiske og talentfulde fyre har skrevet 60 mikrotjenester p\u00e5 kn\u00e6et, s\u00f8ger jeg altid efter corvalol.<\/p>\n<p>Jeg synes, dette er blevet sagt tusind gange f\u00f8r - vi har f\u00e5et en distribueret monolit i en eller anden form. Det er \u00f8konomisk uholdbart og meget sv\u00e6rt generelt. Jeg har set det s\u00e5 mange gange, at det g\u00f8r mig ondt, derfor forts\u00e6tter jeg med at tale om det.<\/p>\n<p>Til det oprindelige sp\u00f8rgsm\u00e5l, at der er en konflikt mellem, at Kubernetes er skr\u00e6mmende at bruge, fordi det er uklart, hvad der kan g\u00e5 galt eller ikke fungerer, og p\u00e5 den anden side, at det er klart, at alt g\u00e5r den vej, og at der ikke vil v\u00e6re noget andet end Kubernetes. Svaret er - <b>at veje m\u00e6ngden af \u200b\u200bnytte, der kommer, og m\u00e6ngden af \u200b\u200bopgaver, du kan l\u00f8se.<\/b>. Dette er den ene side af v\u00e6gten. P\u00e5 den anden side er der risici, der er forbundet med nedetid eller neds\u00e6ttelse af svartid, tilg\u00e6ngelighedsniveau - neds\u00e6ttelse af pr\u00e6stationsmetrikker.<\/p>\n<p>Det er s\u00e5dan - enten skal vi bev\u00e6ge os hurtigt, og Kubernetes g\u00f8r mange ting meget hurtigere og bedre, eller bruge p\u00e5lidelige, tidstestede l\u00f8sninger, men bev\u00e6ge os meget langsommere. Dette valg skal hver virksomhed tr\u00e6ffe. Man kan betragte det som en sti i junglen - f\u00f8rste gang man g\u00e5r, kan man m\u00f8de en slange, en tiger eller en sindssyg surikat, men efter du har v\u00e6ret der 10 gange - har du sl\u00e5et en sti, ryddet grene, og det bliver lettere at g\u00e5. Hver gang bliver stien bredere. Senere bliver det en asfalteret vej, og senere en smuk boulevard.<\/p>\n<p>Kubernetes st\u00e5r ikke stille. Igen sp\u00f8rgsm\u00e5let: Kubernetes, p\u00e5 den ene side, er det 4-5 bin\u00e6re filer, p\u00e5 den anden side er det hele \u00f8kosystemet. Dette er styresystemet, der k\u00f8rer p\u00e5 vores maskiner. Hvad er det? Ubuntu eller Curios? Det er Linux-kernen, en masse ekstra komponenter. Alle disse ting her, en giftig slange er blevet fjernet fra vejen, der er blevet sat et hegn op der. Kubernetes udvikler sig meget hurtigt og dynamisk, og m\u00e6ngden af \u200b\u200brisici, m\u00e6ngden af \u200b\u200bdet ukendte falder hver m\u00e5ned, og dermed ombalanceres disse v\u00e6gte.<\/p>\n<p>N\u00e5r det kommer til sp\u00f8rgsm\u00e5let om, hvad en startup skal g\u00f8re, ville jeg sige \u2013 kom til \"Flant\", betal 150.000 rubler og f\u00e5 DevOps easy service leveret n\u00f8glef\u00e6rdigt. Hvis du er en lille startup med et par udviklere \u2013 s\u00e5 fungerer det. I stedet for at ans\u00e6tte din egen DevOps, som skal l\u00e6re at l\u00f8se dine problemer og f\u00e5 l\u00f8n i mellemtiden, f\u00e5r du l\u00f8sning p\u00e5 alle sp\u00f8rgsm\u00e5l n\u00f8glef\u00e6rdigt. Ja, der er nogle ulemper. Som en outsourcer kan vi ikke v\u00e6re s\u00e5 involverede og reagere hurtigt p\u00e5 \u00e6ndringer. Men til geng\u00e6ld har vi masser af ekspertise og klare praktiske l\u00f8sninger. Vi garanterer, at vi i enhver situation hurtigt vil finde ud af det og tage fat om enhver Kubernetes fra det d\u00f8de. <\/p>\n<blockquote><p>Jeg anbefaler kategorisk outsourcing til startups og etablerede virksomheder, indtil du kan allokere et driftsteam p\u00e5 10 personer, for ellers giver det ikke mening. Det giver kategorisk mening at outsource.<\/p><\/blockquote>\n<p><\/p>\n<h2>Om Amazon og Google<\/h2>\n<p>\n<b>\u2014 Kan outsourcing fra Amazon eller Google betragtes som en l\u00f8sning?<\/b><\/p>\n<p><b>Dmitry<\/b>: Ja, selvf\u00f8lgelig l\u00f8ser det et antal sp\u00f8rgsm\u00e5l. Men igen er der nuancer. Man skal stadig forst\u00e5, hvordan man bruger det. For eksempel er der tusind sm\u00e5ting ved arbejdet med Amazon AWS: Load Balanceren skal opvarmes eller man skal p\u00e5 forh\u00e5nd skrive en foresp\u00f8rgsel om, at \"drengene, vi f\u00e5r trafik, opvarm vores Load Balancer!\" Man skal kende til disse nuancer.<\/p>\n<p>N\u00e5r du henvender dig til folk, der specialiserer sig i dette, f\u00e5r du n\u00e6sten alle standardtingene d\u00e6kket. Vi har nu 40 ingeni\u00f8rer, ved udgangen af \u00e5ret vil der nok v\u00e6re 60 \u2013 vi har helt sikkert st\u00f8dt p\u00e5 alle disse ting. Selv hvis vi igen st\u00f8der p\u00e5 dette problem i et projekt, sp\u00f8rger vi hurtigt hinanden og ved, hvordan vi l\u00f8ser det.<\/p>\n<p>Svaret er formentlig s\u00e5dan \u2013 selvf\u00f8lgelig letter en hosted-l\u00f8sning en del. Sp\u00f8rgsm\u00e5let er, om du er klar til at stole p\u00e5 disse hostingudbydere, og om de l\u00f8ser dine problemer. Amazon og Google har bevist deres v\u00e6rd. For alle vores sager \u2013 helt sikkert. Vi har ikke haft nogen positive erfaringer andre steder. Alle andre cloud-l\u00f8sninger, vi har pr\u00f8vet at arbejde med, skaber mange problemer \u2013 b\u00e5de Ager og alt, hvad der findes i Rusland, samt forskellige implementeringer af OpenStack: Headster, Overage \u2013 hvad som helst. De skaber alle problemer, som man ikke gider at l\u00f8se.<\/p>\n<p>Derfor er svaret \u2013 ja, men i praksis er der ikke mange modne hosted-l\u00f8sninger.<\/p>\n<h2>Hvem har brug for Kubernetes?<\/h2>\n<p>\n<b>\u2014 Og alligevel, hvem har brug for Kubernetes? Hvem skal allerede skifte til Kubernetes, hvem er den typiske kunde hos \"Flant\", som kommer netop for Kubernetes?<\/b><\/p>\n<p><b>Dmitry<\/b>: Det er et interessant sp\u00f8rgsm\u00e5l, for lige nu, i b\u00f8lgen af Kubernetes, kommer der mange til os: \"Vi ved, at I laver Kubernetes, g\u00f8r det for os!\" Vi svarer: \"Mine damer og herrer, vi laver ikke Kubernetes, vi laver produktion og alt hvad der har med det at g\u00f8re.\" Fordi det er i \u00f8jeblikket umuligt at lave produktion uden at lave hele CI\/CD og hele den historie. Alle er g\u00e5et v\u00e6k fra at adskille udvikling fra drift.<\/p>\n<p>Vores kunder forventer forskellige ting, men alle venter p\u00e5 et eller andet godt mirakel, der siger, at de har nogle problemer, og nu \u2014 hop! \u2014 Kubernetes vil l\u00f8se dem. Folk tror p\u00e5 mirakler. De forst\u00e5r fornuftigt, at der ikke vil v\u00e6re noget mirakel, men i deres hjerte h\u00e5ber de \u2014 hvad nu hvis dette Kubernetes lige vil l\u00f8se alt for os, der tales s\u00e5 meget om det! Hvad nu hvis det lige \u2014 nip! \u2014 er s\u00f8lvkuglen, nip! \u2014 og vi har 100% oppetid, alle udviklere kan udgive hvad som helst til produktion 50 gange, og det falder ikke. Generelt, et mirakel!<\/p>\n<p>N\u00e5r s\u00e5danne mennesker kommer til os, siger vi: \"Undskyld, men der findes ikke noget mirakel.\" For at v\u00e6re sund, skal man spise godt og dyrke sport. For at have en p\u00e5lidelig produktion, skal den laves p\u00e5lideligt. For at have en bekvem CI\/CD, skal den laves s\u00e5dan. Det er meget arbejde, der skal g\u00f8res.<\/p>\n<blockquote><p>N\u00e5r man svarer p\u00e5 sp\u00f8rgsm\u00e5let om, hvem der har brug for Kubernetes \u2014 Kubernetes er ikke n\u00f8dvendigt for nogen.<\/p><\/blockquote>\n<p>\nNogle mennesker har den fejlagtige opfattelse, at de har brug for Kubernetes. Folk \u00f8nsker at slippe for at t\u00e6nke p\u00e5, bes\u00e6tte sig med, eller interessere sig for alle problemer med infrastruktur og problemer med at starte deres applikationer. De vil have, at applikationerne bare skal fungere og blive deployeret simpelthen. For dem er Kubernetes h\u00e5bet om, at de ikke l\u00e6ngere vil h\u00f8re historier som \"vi l\u00e5 der\" eller \"kan ikke udgive\", eller noget andet.<\/p>\n<p>Normalt kommer den tekniske direkt\u00f8r til os. Der bliver spurgt to ting: p\u00e5 den ene side, giv os funktioner, p\u00e5 den anden side \u2014 stabilitet. Vi foresl\u00e5r at tage dette p\u00e5 os og g\u00f8re det. Den s\u00f8lvkugle, eller rettere sagt, den s\u00f8lvbelagte, er, at du vil stoppe med at t\u00e6nke p\u00e5 disse problemer og spilde tid. Du vil have specialiserede folk, der vil tage sig af dette.<\/p>\n<blockquote><p>Formuleringen om, at vi eller nogen har brug for Kubernetes, er forkert.<\/p><\/blockquote>\n<p>\nKubernetes er meget n\u00f8dvendigt for administratorer, fordi det er en meget interessant legeplads, man kan eksperimentere med. Lad os v\u00e6re \u00e6rlige \u2013 alle elsker legesager. Vi er alle b\u00f8rn et eller andet sted, og n\u00e5r vi ser noget nyt, vil vi lege med det. For nogle er det blevet kedeligt i administrationen, fordi de allerede har leget nok. Men ingen har fuldst\u00e6ndig mistet interessen. For eksempel, selvom jeg er blevet tr\u00e6t af leget\u00f8j inden for systemadministration og DevOps, elsker jeg stadig leget\u00f8j og k\u00f8ber stadig noget nyt.<\/p>\n<p>Man skal ikke lege med produktionen. Hvad jeg kategorisk ikke anbefaler at g\u00f8re, og hvad jeg ser sker massivt: \"\u00c5h, et nyt leget\u00f8j!\" \u2013 s\u00e5 l\u00f8ber man for at k\u00f8be det, man har k\u00f8bt det og: \"Lad os tage det med i skolen og vise det til alle vennerne.\" G\u00f8r ikke s\u00e5dan. Undskyld, men jeg har bare b\u00f8rn, der vokser op, og jeg ser hele tiden noget i dem, bem\u00e6rker det i mig selv, og s\u00e5 generaliserer jeg det til andre.<\/p>\n<blockquote><p>Det endelige svar er: du har ikke brug for Kubernetes. Du skal l\u00f8se dine problemer.<\/p><\/blockquote>\n<p>\nDet, man kan opn\u00e5, er:<\/p>\n<ul>\n<li>at produktionen ikke falder;\n<\/li>\n<li>selv hvis den fors\u00f8ger at falde, ved vi det p\u00e5 forh\u00e5nd, og vi kan g\u00f8re noget ved det;\n<\/li>\n<li>vi kan \u00e6ndre det med den hastighed, vi har brug for i vores forretning, og g\u00f8re det nemt, det giver os ikke problemer.\n<\/li>\n<\/ul>\n<p>\nDe reelle behov er to: p\u00e5lidelighed og dynamik\/fleksibilitet i deployment. Alle, der i \u00f8jeblikket laver IT-projekter, uanset hvilken branche de er i \u2013 software for at lette verden, og dem der forst\u00e5r dette, skal opfylde disse behov. Kubernetes tillader, med den rigtige tilgang, den rette forst\u00e5else og tilstr\u00e6kkelig erfaring, at disse behov l\u00f8ses.<\/p>\n<h2>Om serverless<\/h2>\n<p>\n<b>\u2013 Hvis man ser lidt l\u00e6ngere frem i fremtiden, s\u00e5 opst\u00e5r der nye l\u00f8sninger, som f.eks. serverless, n\u00e5r man fors\u00f8ger at l\u00f8se problemet med hovedpiner ved infrastrukturen, hastigheden af deployment og hastigheden af \u00e6ndringer i applikationen. F\u00f8ler du noget potentiale i denne retning og, lad os sige, en trussel mod Kubernetes og lignende l\u00f8sninger?<\/b><\/p>\n<p><b>Dmitry<\/b>: Her skal jeg igen bem\u00e6rke, at jeg ikke er en sp\u00e5mand, der ser fremad og siger - det bliver s\u00e5dan her! Selvom jeg netop har gjort det samme. Jeg kigger ned og ser en bunke problemer, for eksempel hvordan transistorer fungerer i computeren. Komisk, ikke? Vi st\u00e5r med nogle bugs i CPU'en.<\/p>\n<p>At g\u00f8re serverless p\u00e5lideligt, billigt, effektivt og bekvemt, mens man l\u00f8ser alle \u00f8kosystemm\u00e6ssige udfordringer, er muligt. Her er jeg enig med Elon Musk i, at vi har brug for en anden planet for at sikre menneskehedens redundans. Selvom jeg ikke ved, hvad han siger, forst\u00e5r jeg, at jeg ikke er klar til selv at flyve til Mars, og det er ikke noget, der sker i morgen.<\/p>\n<p>Med serverless er det klart, at det ideologisk er den rigtige vej, da det er bedre at have to planeter end \u00e9n for menneskehedens redundans. Men hvordan g\u00f8r vi det nu? At sende en ekspedition ud - det er ikke et problem, hvis vi fokuserer kr\u00e6fterne. At sende flere ekspeditioner og kolonisere med flere tusinde mennesker virker for mig ogs\u00e5 realistisk. Men at skabe fuld redundans, s\u00e5 halvdelen af menneskeheden bor der, virker umuligt og ikke overkommeligt lige nu.<\/p>\n<p>Med serverless er det det samme: det er en fantastisk ting, men det er langt fra problemerne i 2019. T\u00e6ttere p\u00e5 2030 - lad os leve til den tid. Jeg er ikke i tvivl om, at vi vil leve, vi vil helt sikkert leve (gentag det, f\u00f8r du g\u00e5r i seng), men lige nu skal vi tackle andre problemer. Det er som at tro p\u00e5 den magiske pony Rainbow. Ja, et par procent af sagerne l\u00f8ses, og de l\u00f8ses fantastisk, men subjektivt set er serverless en regnbue\u2026 For mig er dette emne for fjernet og for ukendt. Jeg er ikke klar til at tale om det. I 2019 kunne man ikke skrive en eneste applikation med serverless.<\/p>\n<h2>Hvordan vil Kubernetes udvikle sig?<\/h2>\n<p>\n<b>\u2014 Mens vi bev\u00e6ger os mod denne potentielt str\u00e5lende fjerne fremtid, hvad mener du om, hvordan Kubernetes og \u00f8kosystemet omkring det vil udvikle sig?<\/b><\/p>\n<p><b>Dmitry<\/b>: Jeg har t\u00e6nkt meget over dette, og jeg har et klart svar. Det f\u00f8rste er, at stateful er lettere at g\u00f8re stateless. Kubernetes har oprindeligt investeret mere i dette; det var her det hele begyndte. Stateless fungerer n\u00e6rmest perfekt i Kubernetes, der er simpelthen ikke noget at p\u00e5pege. Der er stadig en hel del problemer, eller rettere sagt, nuancer med stateful. Vi har det hele til at fungere fantastisk der, men det er os. For at det skal fungere for alle, kr\u00e6ver det mindst et par \u00e5r mere. Det er ikke en m\u00e5lelig indikator, men mit indtryk fra hovedet.<\/p>\n<p>Kort sagt, stateful skal udvikles enormt meget \u2013 og vil ogs\u00e5 g\u00f8re det \u2013 fordi alle vores applikationer gemmer status, der findes ikke stateless-applikationer. Det er en illusion, man har altid brug for en eller anden database og noget andet. Stateful handler om at str\u00f8mligne alt, hvad der er muligt, rette alle fejl og forbedre alle problemer, som vi i \u00f8jeblikket st\u00e5r overfor \u2013 lad os kalde det adoption.<\/p>\n<p>Niveauet af det ukendte, niveauet af ul\u00f8ste problemer, niveauet af sandsynlighed for at st\u00f8de p\u00e5 noget vil falde markant. Det er en vigtig historie. Og operat\u00f8rer \u2013 alt hvad der har med kodificering af administrationslogik, styringslogik at g\u00f8re for at f\u00e5 en nem service: MySQL nem service, RabbitMQ nem service, Memcache nem service \u2013 alle disse komponenter, som vi har brug for for at f\u00e5 det til at fungere ud af boksen, er pr\u00e6cis det, der l\u00f8ser de problemer, hvor vi \u00f8nsker en database, men ikke vil administrere den, eller \u00f8nsker Kubernetes, men ikke vil administrere det.<\/p>\n<p>Denne udvikling af operat\u00f8rer i en eller anden form vil v\u00e6re vigtig i de kommende par \u00e5r.<\/p>\n<blockquote><p>Jeg tror, at enkelheden i drift skal stige kraftigt \u2013 kassen vil blive mere og mere sort, mere og mere p\u00e5lidelig, med mere og mere enkle nitter.<\/p><\/blockquote>\n<p>\nJeg h\u00f8rte engang et gammelt interview med Isaac Asimov fra 80'erne p\u00e5 YouTube i showet Saturday Night Live \u2013 et program som Urgant, bare interessant. De spurgte ham om fremtiden for computere. Han sagde, at fremtiden ligger i enkelheden, ligesom det var med radiosendere. Radioen var oprindeligt en kompliceret ting. For at fange en b\u00f8lge skulle man dreje p\u00e5 knapperne i 15 minutter, b\u00f8je og dreje og overhovedet vide, hvordan alt fungerede, forst\u00e5 fysikken bag radiob\u00f8lger. I sidste ende blev der kun tilbage en knap p\u00e5 radioen.<\/p>\n<p>Hvad er radioen nu i 2019? Bilens radiomodtager finder alle b\u00f8lger og navne p\u00e5 stationer. Den fysiske proces har ikke \u00e6ndret sig i 100 \u00e5r, men brugervenligheden er blevet lettere. I dag, og ikke kun i dag, allerede i 1980, da der blev lavet et interview med Asimov, brugte alle radio, og ingen t\u00e6nkte over, hvordan det fungerar. Det har altid fungeret \u2013 det er en kendsgerning.<\/p>\n<p>Asimov sagde dengang, at det ville v\u00e6re p\u00e5 samme m\u00e5de med computere \u2013 <b>brugerbetjeningen vil stige.<\/b>Hvis man i 1980 skulle have en s\u00e6rlig uddannelse for at kunne trykke p\u00e5 knapperne p\u00e5 en computer, vil dette ikke l\u00e6ngere v\u00e6re n\u00f8dvendigt i fremtiden.<\/p>\n<p>Jeg har en fornemmelse af, at med Kubernetes og infrastrukturen ogs\u00e5 vil brugervenligheden stige kraftigt. Det er, efter min mening, indlysende \u2013 det ligger lige foran os.<\/p>\n<h2>Hvad med ingeni\u00f8rerne?<\/h2>\n<p>\n<b>\u2014 Men hvad vil der s\u00e5 ske med ingeni\u00f8rerne og systemadministratorerne, der underst\u00f8tter Kubernetes?<\/b><\/p>\n<p><b>Dmitry<\/b>: Hvad skete der med bogholderen efter fremkomsten af 1C? N\u00f8jagtig det samme. F\u00f8r blev der regnet p\u00e5 papir \u2013 nu er det i programmet. Produktiviteten er steget mange gange, men arbejdet er ikke forsvundet af den grund. Hvis man f\u00f8r havde brug for 10 ingeni\u00f8rer til at skrue en p\u00e6re i, s\u00e5 vil \u00e9n nu v\u00e6re tilstr\u00e6kkelig.<\/p>\n<p>M\u00e6ngden af software og opgaver vokser, efter min mening, nu hurtigere, end nye DevOps'er dukker op og effektiviteten stiger. Der er konkret mangel p\u00e5 markedet, og det vil vare l\u00e6nge. Senere vil alt falde ind i en vis normalitet, hvor effektiviteten i arbejdet vil stige, der vil komme mere serverless, en neural netv\u00e6rk vil blive tilkoblet Kubernetes, som selv finder de n\u00f8dvendige ressourcer, og alt g\u00f8r sig selv, som det skal \u2013 mennesket skal tr\u00e6kke sig tilbage og ikke blande sig.<\/p>\n<p>Men beslutningerne skal stadig tages af nogen. Det st\u00e5r klart, at den kvalifikationsniveau og specialisering, denne person har, er h\u00f8jere. I dag i regnskabsafdelingen har du ikke brug for 10 medarbejdere, der f\u00f8rer regnskab, for at deres h\u00e6nder ikke skal blive tr\u00e6tte. Det er simpelthen ikke n\u00f8dvendigt. Mange dokumenter scannes automatisk, og genkendes af det elektroniske dokumenth\u00e5ndteringssystem. Det er tilstr\u00e6kkeligt med \u00e9n dygtig hovedbogholder, der allerede har langt st\u00f8rre f\u00e6rdigheder og en god forst\u00e5else.<\/p>\n<p>Generelt er denne udvikling til stede i alle industrier. Med biler er det det samme: f\u00f8r var der en mekaniker og tre chauff\u00f8rer til hver bil. Nu er det at k\u00f8re bil en simpel proces, som vi alle deltager i hver dag. Ingen t\u00e6nker over, at en bil er noget komplekst.<\/p>\n<blockquote><p>DevOps eller systemingeni\u00f8rarbejde vil ikke forsvinde \u2013 h\u00f8jere niveau og effektivitet vil stige.<\/p><\/blockquote>\n<p>\n<b>\u2014 Jeg har ogs\u00e5 h\u00f8rt en interessant id\u00e9 om, at arbejdet faktisk vil stige.<\/b><\/p>\n<p><b>Dmitry<\/b>: Selvf\u00f8lgelig, hundrede procent! Fordi m\u00e6ngden af software, vi skriver, konstant vokser. Antallet af problemer, vi l\u00f8ser med software, vokser konstant. M\u00e6ngden af arbejde stiger. Lige nu er DevOps-markedet ekstremt overophedet. Det kan ses i l\u00f8nforventningerne. Rent hypotetisk, uden at g\u00e5 ind i detaljer, burde der v\u00e6re juniorer, der \u00f8nsker X, mid-level som \u00f8nsker 1,5X, og seniorer der \u00f8nsker 2X. Men nu, hvis vi ser p\u00e5 l\u00f8nmarkedet for DevOps i Moskva, \u00f8nsker junioren fra X til 3X, og senioren \u00f8nsker fra X til 3X.<\/p>\n<blockquote><p>Ingen ved, hvad det koster. L\u00f8nnen m\u00e5les ud fra din selvsikkerhed - det er ren galskab, hvis jeg skal v\u00e6re \u00e6rlig, et ekstremt overophedet marked.<\/p><\/blockquote>\n<p>\nSelvf\u00f8lgelig vil denne situation \u00e6ndre sig meget snart - der skal komme en vis m\u00e6tning. Med softwareudvikling er det ikke s\u00e5dan - p\u00e5 trods af at udviklere er eftertragtede, og gode udviklere er n\u00f8dvendige, forst\u00e5r markedet, hvad folk er v\u00e6rd - branchen har stabiliseret sig. S\u00e5dan er det ikke med DevOps lige nu.<\/p>\n<p><b>\u2014 Ud fra hvad jeg har h\u00f8rt, har jeg konkluderet, at den nuv\u00e6rende systemadministrator ikke skal bekymre sig, men at tiden er inde til at opgradere sine f\u00e6rdigheder og forberede sig p\u00e5, at der i morgen vil v\u00e6re mere arbejde, og det vil v\u00e6re mere kvalificeret.<\/b><\/p>\n<p><b>Dmitry<\/b>: Helt sikkert. Generelt lever vi i 2019, og livsreglen er s\u00e5dan: <b>livslang l\u00e6ring - vi l\u00e6rer hele livet<\/b>. Jeg tror, at folk nu allerede ved og f\u00f8ler dette, men det er ikke nok bare at vide \u2013 vi skal handle. Hver dag skal vi \u00e6ndre os. Hvis vi ikke g\u00f8r det, vil vi f\u00f8r eller senere blive sat af p\u00e5 professionens kant. <\/p>\n<p>V\u00e6r forberedt p\u00e5 pludselige drejninger p\u00e5 180 grader. Jeg udelukker ikke situationer, hvor noget radikalt \u00e6ndrer sig, og der findes noget nyt \u2013 s\u00e5dan sker det nogle gange. Hov! \u2013 og nu handler vi p\u00e5 en anden m\u00e5de. Det er vigtigt at v\u00e6re klar til dette og ikke stresse over det. Det kan ske, at alt, hvad jeg g\u00f8r i morgen, viser sig at v\u00e6re un\u00f8dvendigt \u2013 det er fint, jeg har l\u00e6rt hele mit liv og er klar til at l\u00e6re noget andet. Det er ikke et problem. Det er ikke v\u00e6rd at frygte jobusikkerhed, men man skal v\u00e6re klar til konstant at l\u00e6re noget nyt.<\/p>\n<h2>\u00d8nsker og et \u00f8jeblik med reklame<\/h2>\n<p>\n<b>\u2013 Har du et \u00f8nske?<\/b><\/p>\n<p><b>Dmitry<\/b>: Ja, jeg har et par \u00f8nsker.<\/p>\n<p>Det f\u00f8rste og mere forretningsm\u00e6ssige \u2013 tilmeld dig\u00a0<noindex><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/channel\/UCjmwHCZ-qh3ro7hHTQhqYQg\">YouTube<\/a><\/noindex>. K\u00e6re l\u00e6sere, g\u00e5 ind p\u00e5 YouTube og tilmeld dig vores kanal. Om cirka en m\u00e5ned vil vi starte en aktiv ekspansion p\u00e5 video-platformen, vi vil have en masse undervisningsindhold om Kubernetes, b\u00e5de \u00e5bent og forskelligt: fra praktiske emner til laboratorier og dybe, principielle teoretiske emner og hvordan man anvender Kubernetes p\u00e5 niveau med principper og m\u00f8nstre.<\/p>\n<p>Det andet forretningsm\u00e6ssige \u00f8nske \u2013 g\u00e5 ind p\u00e5\u00a0<noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/flant\">GitHub<\/a><\/noindex> og giv os stjerner, for vi lever af dem. Hvis I ikke giver os stjerner, vil vi ikke have noget at spise. Det er som manna i et computerspil. Vi g\u00f8r noget, g\u00f8r noget, pr\u00f8ver, nogle siger, det er grimme cykler, andre siger, at alt overhovedet er forkert, men vi forts\u00e6tter og handler helt \u00e6rligt. Vi ser problemet, l\u00f8ser det og deler erfaringen. Derfor bedes I give os en stjerne, det koster ikke noget for jer, men vi f\u00e5r noget mere, for vi lever af dem.<\/p>\n<p>Det tredje, vigtige, og allerede ikke-mercantile \u00f8nske \u2013 <b>stop med at tro p\u00e5 eventyr<\/b>. I er professionelle. DevOps er en meget seri\u00f8s og ansvarlig profession. Stop med at lege p\u00e5 arbejdspladsen. Lad det ramme jer, og I vil forst\u00e5 det. Forestil jer, at I kommer ind p\u00e5 et hospital, og der eksperimenterer l\u00e6gen med jer. Jeg forst\u00e5r, at det kan s\u00e5re nogen, men det er sandsynligvis ikke om jer, men om nogen andre. Fort\u00e6l de andre, at de ogs\u00e5 skal stoppe. Det \u00f8del\u00e6gger virkelig livet for os alle \u2013 mange begynder at se p\u00e5 driftsfolk, administratorer og DevOps\u2019ere som fyre, der igen har noget g\u00e5et galt. Det 'g\u00e5et galt' sker oftest, fordi vi er g\u00e5et i gang med at lege i stedet for at se klart og forst\u00e5, hvordan tingene h\u00e6nger sammen.<\/p>\n<p>Det betyder ikke, at man ikke skal eksperimentere. Man skal eksperimentere, vi g\u00f8r det selv. Hvis vi skal v\u00e6re \u00e6rlige, leger vi ogs\u00e5 nogle gange \u2014 det er selvf\u00f8lgelig meget d\u00e5rligt, men intet menneskeligt er os fremmed. Lad os erkl\u00e6re 2019 som \u00e5ret for seri\u00f8se, gennemt\u00e6nkte eksperimenter, ikke for lege i produktion. M\u00e5ske er det s\u00e5dan.<\/p>\n<p><b>\u2014 Mange tak!<\/b><\/p>\n<p><b>Dmitry<\/b>: Tak til dig, Vitaly, b\u00e5de for tiden og interviewet. K\u00e6re l\u00e6sere, mange tak til jer, hvis I er n\u00e5et hertil. Jeg h\u00e5ber, vi har givet jer nogle tankev\u00e6kkende indspark.<\/p>\n<blockquote><p>I interviewet ber\u00f8rte Dmitry sp\u00f8rgsm\u00e5let om werf. Det er nu en universel schweizerkniv, der l\u00f8ser n\u00e6sten alle opgaver. Men det har ikke altid v\u00e6ret s\u00e5dan.\u00a0<noindex><a rel=\"nofollow\" href=\"https:\/\/devopsconf.io\/moscow-rit\/2019\">DevOpsConf <\/a><\/noindex>\u00a0p\u00e5 festivalen <noindex><a rel=\"nofollow\" href=\"https:\/\/ritfest.ru\/2019\">RIT++<\/a><\/noindex> Dmitry Stolyarov vil detaljeret fort\u00e6lle om dette v\u00e6rkt\u00f8j. I foredraget <noindex><a rel=\"nofollow\" href=\"http:\/\/devopsconf.io\/moscow-rit\/2019\/abstracts\/5136\">\u00abwerf \u2014 vores v\u00e6rkt\u00f8j til CI\/CD i Kubernetes\u00bb<\/a><\/noindex> vil der v\u00e6re alt: problemer og skjulte nuancer i Kubernetes, l\u00f8sninger p\u00e5 disse udfordringer og den nuv\u00e6rende implementering af werf i detaljer. Deltag den 27. og 28. maj, vi skal skabe ideelle v\u00e6rkt\u00f8jer.<\/p><\/blockquote>\n<p>Kilde: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/oleg-bunin\/blog\/453306\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u00a0\u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 DevOpsConf \u0412\u0438\u0442\u0430\u043b\u0438\u0439 \u0425\u0430\u0431\u0430\u0440\u043e\u0432 \u0432\u0437\u044f\u043b \u0438\u043d\u0442\u0435\u0440\u0432\u044c\u044e \u0443\u00a0\u0414\u043c\u0438\u0442\u0440\u0438\u044f \u0421\u0442\u043e\u043b\u044f\u0440\u043e\u0432\u0430 (distol), \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0430 \u0438\u00a0\u0441\u043e\u0443\u0447\u0440\u0435\u0434\u0438\u0442\u0435\u043b\u044f \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u00ab\u0424\u043b\u0430\u043d\u0442\u00bb. \u0412\u0438\u0442\u0430\u043b\u0438\u0439 \u0440\u0430\u0441\u0441\u043f\u0440\u043e\u0441\u0438\u043b \u0414\u043c\u0438\u0442\u0440\u0438\u044f \u043f\u0440\u043e\u00a0\u0442\u043e, \u0447\u0435\u043c \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442\u0441\u044f \u00ab\u0424\u043b\u0430\u043d\u0442\u00bb, \u043f\u0440\u043e Kubernetes, \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u0435 \u044d\u043a\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u044b, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443. \u041e\u0431\u0441\u0443\u0434\u0438\u043b\u0438, \u0437\u0430\u0447\u0435\u043c \u043d\u0443\u0436\u0435\u043d Kubernetes \u0438\u00a0\u043d\u0443\u0436\u0435\u043d\u00a0\u043b\u0438 \u0432\u043e\u043e\u0431\u0449\u0435. \u0410\u00a0\u0435\u0449\u0435 \u043f\u0440\u043e \u043c\u0438\u043a\u0440\u043e\u0441\u0435\u0440\u0432\u0438\u0441\u044b, Amazon AWS, \u043f\u043e\u0434\u0445\u043e\u0434 \u00ab\u041c\u043d\u0435 \u043f\u043e\u0432\u0435\u0437\u0435\u0442\u00bb \u0432\u00a0DevOps, \u0431\u0443\u0434\u0443\u0449\u0435\u0435 \u0441\u0430\u043c\u043e\u0433\u043e Kubernetes, \u043f\u043e\u0447\u0435\u043c\u0443, \u043a\u043e\u0433\u0434\u0430 \u0438\u00a0\u043a\u0430\u043a \u043e\u043d\u00a0\u0437\u0430\u0445\u0432\u0430\u0442\u0438\u0442 \u043c\u0438\u0440, \u043f\u0435\u0440\u0441\u043f\u0435\u043a\u0442\u0438\u0432\u044b DevOps \u0438\u00a0\u043a\u00a0\u0447\u0435\u043c\u0443 \u0433\u043e\u0442\u043e\u0432\u0438\u0442\u044c\u0441\u044f \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u0430\u043c \u0432\u00a0\u0441\u0432\u0435\u0442\u043b\u043e\u043c [&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-34450","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 DevOpsConf \u0412\u0438\u0442\u0430\u043b\u0438\u0439 \u0425\u0430\u0431\u0430\u0440\u043e\u0432 \u0432\u0437\u044f\u043b \u0438\u043d\u0442\u0435\u0440\u0432\u044c\u044e \u0443 \u0414\u043c\u0438\u0442\u0440\u0438\u044f \u0421\u0442\u043e\u043b\u044f\u0440\u043e\u0432\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\/da\/blog\/administrirovanie\/kubernetes-zahvatit-mir-kogda-i-kak\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"da_DK\" \/>\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\udd47Kubernetes \u0437\u0430\u0445\u0432\u0430\u0442\u0438\u0442 \u043c\u0438\u0440. \u041a\u043e\u0433\u0434\u0430 \u0438 \u043a\u0430\u043a? | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 DevOpsConf \u0412\u0438\u0442\u0430\u043b\u0438\u0439 \u0425\u0430\u0431\u0430\u0440\u043e\u0432 \u0432\u0437\u044f\u043b \u0438\u043d\u0442\u0435\u0440\u0432\u044c\u044e \u0443 \u0414\u043c\u0438\u0442\u0440\u0438\u044f \u0421\u0442\u043e\u043b\u044f\u0440\u043e\u0432\u0430 (\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/kubernetes-zahvatit-mir-kogda-i-kak\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:58:24+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:58:24+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\udd47Kubernetes vil erobre verden. Hvorn\u00e5r og hvordan? | ProHoster","description":"Foran DevOpsConf interviewede Vitaly Khabarov Dmitry Stolyarov (","canonical_url":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/kubernetes-zahvatit-mir-kogda-i-kak","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"da_DK","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\udd47Kubernetes \u0437\u0430\u0445\u0432\u0430\u0442\u0438\u0442 \u043c\u0438\u0440. \u041a\u043e\u0433\u0434\u0430 \u0438 \u043a\u0430\u043a? | ProHoster","og:description":"\u0412 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 DevOpsConf \u0412\u0438\u0442\u0430\u043b\u0438\u0439 \u0425\u0430\u0431\u0430\u0440\u043e\u0432 \u0432\u0437\u044f\u043b \u0438\u043d\u0442\u0435\u0440\u0432\u044c\u044e \u0443 \u0414\u043c\u0438\u0442\u0440\u0438\u044f \u0421\u0442\u043e\u043b\u044f\u0440\u043e\u0432\u0430 (","og:url":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/kubernetes-zahvatit-mir-kogda-i-kak","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:58:24+00:00","article:modified_time":"2019-10-31T18:58:24+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"34450","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 19:20:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 02:20:56","updated":"2026-01-21 19:20:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/34450","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/comments?post=34450"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/34450\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=34450"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=34450"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=34450"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}