Kubernetes wäert d'Welt iwwerhuelen. Wéini a wéi?

An Erwaardung DevOpsConf Vitaly Khabarov interviewt Dmitry Stolyarov (distol), techneschen Direkter a Matgrënner vun der Firma Flant. Vitaly huet den Dmitry gefrot iwwer wat Flant mécht, iwwer Kubernetes, Ökosystementwécklung, Ënnerstëtzung. Mir hunn diskutéiert firwat Kubernetes gebraucht gëtt an ob et iwwerhaapt gebraucht gëtt. An och iwwer Mikroservicer, Amazon AWS, den "I'll be lucky" Approche fir DevOps, d'Zukunft vu Kubernetes selwer, firwat, wéini a wéi se d'Welt iwwerhuelen, d'Perspektiven vun DevOps a wat d'Ingenieure sech solle virbereeden an der hell an noer Zukunft mat Vereinfachung an neurale Netzwierker.

Original Interview lauschtert als Podcast op DevOps Deflop - e russeschsproochege Podcast iwwer DevOps, an hei drënner ass d'Textversioun.

Kubernetes wäert d'Welt iwwerhuelen. Wéini a wéi?

Hei an drënner stellt hie Froen Vitaly Khabarov Ingenieur aus Express42.

Iwwer "Flant"

- Moien Dima. Dir sidd den techneschen Direkter "Flant" an och säi Grënner. Sot eis w.e.g. wat d'Firma mécht a wat Dir dran sidd?

Kubernetes wäert d'Welt iwwerhuelen. Wéini a wéi?Dmitry: Vu baussen schéngt et wéi wann mir d'Jongen sinn, déi ronderëm Kubernetes fir jiddereen installéieren an eppes domat maachen. Mee dat stëmmt net. Mir hunn ugefaang als eng Firma déi mat Linux beschäftegt, awer fir eng ganz laang Zäit ass eis Haaptaktivitéit d'Produktioun an High-load schlësselfäerdeg Projeten servéiert. Normalerweis baue mir déi ganz Infrastruktur vun Null un a sinn dann laang, laang verantwortlech dofir. Dofir ass d'Haaptaarbecht déi "Flant" mécht, fir déi et Sue kritt, ass Verantwortung iwwerhuelen an schlësselfäerdeg Produktioun ëmsetzen.




Ech, als techneschen Direkter an ee vun de Grënner vun der Firma, verbréngen de ganzen Dag an Nuecht probéiert erauszefannen wéi d'Accessibilitéit vun der Produktioun ze erhéijen, seng Operatioun vereinfachen, d'Liewe vun den Administrateuren méi einfach maachen an d'Liewen vun den Entwéckler méi agreabel .

Iwwer Kubernetes

- Zënter kuerzem hunn ech vill Berichter vu Flant an Artikelen iwwer Kubernetes. Wéi bass du dozou komm?

Dmitry: Ech hu scho vill Mol driwwer geschwat, awer et ass mir egal, et guer net ze widderhuelen. Ech mengen et ass richteg dëst Thema ze widderhuelen well et Duercherneen tëscht Ursaach an Effekt ass.

Mir brauche wierklech en Tool. Mir hu vill Problemer konfrontéiert, gekämpft, si mat verschiddene Krut iwwerwonne a gefillt de Besoin fir en Tool. Mir sinn duerch vill verschidden Optiounen gaangen, eis eege Vëloen gebaut an Erfahrung gemaach. Lues a lues si mir op de Punkt komm, wou mir ugefaang hunn Docker bal soubal et erschéngt ze benotzen - ongeféier 2013. Zu der Zäit vu senger Erscheinung hu mir scho vill Erfarung mat Container, mir hu schonn en Analog vum "Docker" geschriwwen - e puer vun eisen eegene Krutchen am Python. Mat dem Advent vum Docker gouf et méiglech d'Krüchen eraus ze werfen an eng zouverlässeg a Gemeinschafts-ënnerstëtzt Léisung ze benotzen.

Mat Kubernetes ass d'Geschicht ähnlech. Wéi et ugefaang huet Dynamik ze gewannen - fir eis ass dëst d'Versioun 1.2 - hu mir schonn eng Rëtsch Krutchen op Shell a Chef, déi mir iergendwéi probéiert hunn mat Docker ze orchestréieren. Mir hunn eescht op Rancher a verschidde aner Léisunge gesicht, awer dunn koumen Kubernetes op, an deem alles genee ëmgesat gëtt wéi mir et gemaach hätten oder nach besser. Et gëtt näischt ze beschwéieren iwwer.

Jo, et gëtt eng Aart vun Imperfektioun hei, et gëtt eng Aart vun Imperfektioun do - et gi vill Onfeelegkeeten, an 1.2 ass allgemeng schrecklech, awer ... Kubernetes ass wéi e Gebai am Bau - Dir kuckt de Projet a verstitt datt et cool gëtt. Wann d'Gebai elo e Fundament an zwee Stäck huet, da verstitt Dir datt et besser ass nach net ze plënneren, awer et gi keng esou Probleemer mat der Software - Dir kënnt et scho benotzen.

Mir haten keen Moment wou mir geduecht hunn Kubernetes ze benotzen oder net. Mir waarden op et laang ier et erschéngt, a probéiert selwer Analoga ze kreéieren.

Iwwer Kubernetes

- Sidd Dir direkt un der Entwécklung vu Kubernetes selwer involvéiert?

Dmitry: Mëttelméisseg. Mir bedeelegen eis éischter un der Entwécklung vum Ökosystem. Mir schécken eng gewëssen Unzuel u Pull-Ufroen: op Prometheus, op verschidde Betreiber, op Helm - an den Ökosystem. Leider kann ech net alles verfollegen wat mir maachen an ech kéint falsch sinn, awer et ass net eng eenzeg Pool vun eis an de Kär.

- Zur selwechter Zäit entwéckelt Dir vill vun Ären Tools ronderëm Kubernetes?

Dmitry: D'Strategie ass dëst: mir ginn an zitt Ufroen un alles wat scho gëtt. Wann Pull-Ufroen do net ugeholl ginn, gi mir se einfach selwer a liewen bis se mat eise Bauten ugeholl ginn. Dann, wann et den Upstream erreecht, gi mir zréck an d'Upstream Versioun.

Zum Beispill hu mir e Prometheus Bedreiwer, mat deem mir scho wuel 5 Mol an de Upstream vun eiser Assemblée gewiesselt sinn. Mir brauchen eng Zort Feature, mir hunn eng Pull-Ufro geschéckt, mir musse se muer ausrollen, awer mir wëllen net waarden bis se upstream verëffentlecht gëtt. Deementspriechend versammele mir eis selwer, rullen eis Versammlung mat eiser Feature aus, déi mir aus irgendege Grënn brauchen, an all eis Cluster. Dann, zum Beispill, ginn se eis et am Upstream mat de Wierder: "Jongen, loosst eis et fir e méi allgemenge Fall maachen", mir, oder een aneren, maachen et fäerdeg, a mat der Zäit fusionéiert se erëm.

Mir probéieren alles z'entwéckelen wat existéiert. Vill Elementer déi nach net existéieren, nach net erfonnt ginn oder erfonnt goufen, awer keng Zäit haten fir ëmzesetzen - mir maachen et. An net well mir de Prozess oder de Vëlobau als Industrie gär hunn, mee einfach well mir dëst Tool brauchen. D'Fro gëtt dacks gestallt, firwat hu mir dat oder dat gemaach? D'Äntwert ass einfach - jo, well mir hu misse méi wäit goen, e praktesche Problem léisen, a mir hunn et mat dëser Tula geléist.

De Wee ass ëmmer esou: Mir sichen ganz virsiichteg a wa mir keng Léisung fannen fir aus engem Brout en Trolleybus ze maachen, da maache mir eis eegen Brout an eisen eegenen Trolleybus.

Flanta Tools

- Ech weess datt Flant elo Addon-Bedreiwer, Shell-Bedreiwer an Dapp/werf-Tools huet. Wéi ech et verstinn, ass dëst datselwecht Instrument a verschiddene Inkarnatiounen. Ech verstinn och datt et vill méi verschidden Tools bannent Flaunt sinn. Dat ass richteg?

Dmitry: Mir hu vill méi op GitHub. Vun deem wat ech mech elo erënneren, hu mir e Statusmap - e Panel fir Grafana, dee jidderee begéint ass. Et gëtt a bal all zweeten Artikel iwwer Kubernetes Iwwerwaachung op Medium ernimmt. Et ass onméiglech kuerz ze erklären wat e Statusmap ass - et brauch en separaten Artikel, awer et ass eng ganz nëtzlech Saach fir de Status iwwer Zäit ze iwwerwaachen, well a Kubernetes musse mir dacks de Status iwwer Zäit weisen. Mir hunn och LogHouse - dëst ass eng Saach baséiert op ClickHouse a schwaarz Magie fir Logbicher a Kubernetes ze sammelen.

Vill Utilities! An et wäerten nach méi ginn, well dëst Joer wäerten eng Rei intern Léisungen erauskommen. Vun de ganz grousse baséiert op den Addon Bedreiwer, ginn et eng Rëtsch Addons fir Kubernetes, ala wéi Dir de Sert Manager richteg installéiere wëllt - e Tool fir Certificaten ze managen, wéi Dir Prometheus korrekt mat enger Rëtsch Accessoiren installéiere wëllt - dat sinn ongeféier zwanzeg verschidde Binären déi Daten exportéieren an eppes sammelen, zu dësem Prometheus huet déi erstaunlechste Grafiken an Alarmer. All dëst ass just eng Rëtsch Addons zu Kubernetes, déi an engem Cluster installéiert sinn, an et gëtt vun einfach bis cool, raffinéiert, automatesch, an deem vill Probleemer scho geléist goufen. Jo, mir maachen vill.

Ecosystem Entwécklung

"Et schéngt mir datt dëst e ganz grousse Bäitrag zu der Entwécklung vun dësem Instrument a seng Benotzungsmethoden ass." Kënnt Dir ongeféier schätzen, wien soss dee selwechte Bäitrag zur Entwécklung vum Ökosystem géif leeschten?

Dmitry: A Russland, vun de Firmen, déi an eisem Maart operéieren, ass keen souguer no. Natierlech ass dëst eng haart Ausso, well et grouss Spiller wéi Mail an Yandex sinn - si maachen och eppes mat Kubernetes, awer och si kommen net no bei de Bäitrag vu Firmen op der ganzer Welt, déi vill méi maachen wéi eis. Et ass schwéier de Flant ze vergläichen, deen e Personal vun 80 Leit huet, a Red Hat, deen eleng 300 Ingenieuren pro Kubernetes huet, wann ech mech net falsch maachen. Et ass schwéier ze vergläichen. Mir hunn 6 Leit am Departement RnD, dorënner ech, déi all eis Tools ofgeschnidden hunn. 6 Leit géint 300 Red Hat Ingenieuren - et ass iergendwéi schwéier ze vergläichen.

- Wéi och ëmmer, wann och dës 6 Leit eppes wierklech nëtzlech an alienéierend maache kënnen, wa se mat engem praktesche Problem konfrontéiert sinn an der Gemeinschaft d'Léisung ginn - en interessante Fall. Ech verstinn datt a groussen Technologiefirmen, wou se hir eege Kubernetes Entwécklung an Ënnerstëtzungsteam hunn, am Prinzip déiselwecht Tools entwéckelt ginn. Dëst ass e Beispill fir si vu wat kann entwéckelt ginn an der Gemeinschaft ginn, wat d'ganz Gemeinschaft gëtt déi Kubernetes benotzt.

Dmitry: Dëst ass wahrscheinlech eng Feature vum Integrator, seng Besonderheet. Mir hu vill Projeten a mir gesinn vill verschidde Situatiounen. Fir eis ass den Haapt Wee fir Méiwäert ze kreéieren dës Fäll ze analyséieren, Gemeinsamkeet ze fannen an se sou bëlleg wéi méiglech fir eis ze maachen. Mir schaffen aktiv drun. Et ass schwéier fir mech iwwer Russland an d'Welt ze schwätzen, awer mir hunn ongeféier 40 DevOps Ingenieuren an der Firma déi op Kubernetes schaffen. Ech denken net, datt et vill Firmen an Russland mat enger vergläichbarer Zuel vu Spezialisten sinn, déi Kubernetes verstoen, wann iwwerhaapt.

Ech verstinn alles iwwer den Jobtitel DevOps Ingenieur, jidderee versteet alles a gëtt gewinnt DevOps Ingenieuren DevOps Ingenieuren ze nennen, mir wäerten dëst net diskutéieren. All dës 40 erstaunlech DevOps Ingenieuren konfrontéieren a léisen all Dag Probleemer, mir analyséieren just dës Erfahrung a probéieren ze generaliséieren. Mir verstinn datt wann et an eis bleift, dann an engem Joer oder zwee wäert d'Instrument nëtzlos sinn, well iergendwou an der Gemeinschaft eng fäerdeg Tula erscheint. Et ass kee Sënn dës Erfahrung intern ze sammelen - et drainéiert einfach Energie an Zäit an Dev / Null. A mir bedaueren et guer net. Mir publizéieren alles mat grousser Freed a verstinn datt et muss publizéiert, entwéckelt, gefördert, gefördert ginn, fir datt d'Leit et benotzen an hir Erfahrung addéieren - da wiisst a leeft alles. Dann no zwee Joer geet d'Instrument net an den Dreck. Et ass net schued fir weider Kraaft ze schëdden, well et ass kloer datt een Ären Tool benotzt, an no zwee Joer benotzt jiddereen et.

Dëst ass Deel vun eiser grousser Strategie mat Dapp/werf. Ech erënnere mech net wéi mir ugefaang hunn et ze maachen, et schéngt wéi virun 3 Joer. Am Ufank war et allgemeng op der Schuel. Et war e super proof of concept, mir hunn e puer vun eise besonnesche Probleemer geléist - et huet geschafft! Awer et gi Probleemer mat der Schuel, et ass onméiglech et weider auszebauen, Programméiere op der Schuel ass eng aner Aufgab. Mir haten eng Gewunnecht am Ruby ze schreiwen, deementspriechend hu mir eppes am Ruby nei gemaach, entwéckelt, entwéckelt, entwéckelt, a sinn an der Tatsaach gerannt datt d'Gemeinschaft, d'Leit déi net soen "mir wëllen et oder mir wëllen et net, " dréit d'Nues op de Ruby, wéi witzeg ass dat? Mir hu gemierkt datt mir all dës Saachen am Go sollten schreiwen just fir den éischte Punkt op der Checklëscht ze treffen: DevOps Tool soll e statesche Binär sinn. Go ze sinn oder net ass net sou wichteg, awer eng statesch binär geschriwwe an Go ass besser.

Mir hunn eis Energie verbruecht, den Dapp am Go nei geschriwwen an et werf genannt. Den Dapp gëtt net méi ënnerstëtzt, net entwéckelt, leeft an enger leschter Versioun, awer et gëtt en absolute Upgrade Wee no uewen, an Dir kënnt et verfollegen.

Firwat gouf den Dapp erstallt?

— Kënnt Dir eis kuerz soen firwat den Dapp erstallt gouf, wéi eng Problemer léist en?

Dmitry: Den éischte Grond ass an der Assemblée. Am Ufank hu mir sérieux Problemer mam Bau, wann Docker keng Multi-Stage Fäegkeeten hat, also hu mir Multi-Stage op eis selwer gemaach. Dunn hate mer nach eng ganz Rëtsch Problemer mam Bild botzen. Jiddereen deen CI/CD mécht, éischter éischter wéi spéider, steet mam Problem, datt et eng Rëtsch gesammelt Biller gëtt, et muss een iergendwéi botzen, wat net gebraucht gëtt, a loossen, wat gebraucht gëtt.

Den zweete Grond ass d'Deployment. Jo, et gëtt Helm, awer et léist nëmmen e puer vun de Problemer. Witzeg genuch ass et geschriwwen datt "Helm ass de Package Manager fir Kubernetes." Genau wat "den". Et ginn och d'Wierder "Package Manager" - wat ass déi üblech Erwaardung vun engem Package Manager? Mir soen: "Package Manager - Installéiert de Package!" a mir erwaarden datt hien eis seet: "De Pak ass geliwwert."

Et ass interessant datt mir soen: "Helm, installéiert de Package," a wann hien äntwert datt hien et installéiert huet, stellt sech eraus datt hien just d'Installatioun ugefaang huet - hien huet Kubernetes uginn: "Start dës Saach!", an ob et ugefaang huet oder net , Egal ob et funktionnéiert oder net, Helm léist dëst Thema guer net.

Et stellt sech eraus datt Helm just en Textpreprocessor ass deen Daten an Kubernetes lued.

Awer als Deel vun all Deployment wëlle mir wëssen ob d'Applikatioun fir d'Produktioun verëffentlecht gouf oder net? Ausgerullt op Prod heescht datt d'Applikatioun dohinner geplënnert ass, déi nei Versioun ass ofgesat ginn, an op d'mannst klappt se net do a reagéiert richteg. Helm léist dëse Problem op kee Fall. Fir et ze léisen, musst Dir vill Efforte verbréngen, well Dir musst Kubernetes de Kommando ginn fir auszerollen an ze iwwerwaachen wat do geschitt - egal ob et ofgesat oder ausgerullt ass. An et ginn och vill Aufgaben am Zesummenhang mam Deployment, Botzen a Montage.

Pläng

Dëst Joer wäerte mir lokal Entwécklung ufänken. Mir wëllen erreechen wat virdru am Vagrant war - mir hunn "vagrant up" getippt a mir hunn virtuell Maschinnen ofgesat. Mir wëllen op de Punkt kommen, wou et e Projet am Git ass, mir schreiwen "werf erop" do, an et bréngt eng lokal Kopie vun dësem Projet op, an engem lokalen Mini-Kub ofgesat, mat all de Verzeichnisser bequem fir Entwécklung verbonnen . Ofhängeg vun der Entwécklungssprooch gëtt dat anescht gemaach, awer trotzdem, sou datt lokal Entwécklung bequem ënner montéierte Dateien duerchgefouert ka ginn.

Den nächste Schrëtt fir eis ass investéieren am Komfort fir Entwéckler. Fir séier e Projet lokal mat engem Tool z'installéieren, entwéckelen et, dréckt et an Git, an et wäert och op d'Bühn oder Tester rullen, ofhängeg vun de Pipelines, a benotzt dann datselwecht Tool fir an d'Produktioun ze goen. Dës Eenheet, Vereenegung, Reproducibilitéit vun der Infrastruktur vum lokalen Ëmfeld bis zum Verkaf ass e ganz wichtege Punkt fir eis. Mee dat ass nach net am werf - mir plangen et just ze maachen.

Awer de Wee op dapp/werf war ëmmer déiselwecht wéi bei Kubernetes am Ufank. Mir hu Problemer begéint, se mat Léisungen geléist - mir sinn e puer Léisunge fir eis selwer op der Schuel, iwwer alles. Duerno hu se probéiert dës Léisungen iergendwéi ze riichten, ze generaliséieren a se an dësem Fall a Binären ze konsolidéieren, wat mir einfach deelen.

Et gëtt eng aner Manéier fir dës ganz Geschicht ze kucken, mat Analogien.

Kubernetes ass en Autorahmen mat engem Motor. Et gi keng Dieren, Glas, Radio, Chrëschtbeemchen - guer näischt. Just de Frame an de Motor. An et ass Helm - dat ass de Lenkrad. Cool - et gëtt e Lenkrad, awer Dir braucht och e Lenkspinn, Lenkstull, Gearbox a Rieder, an Dir kënnt net ouni si maachen.

Am Fall vu werf ass dëst en anere Bestanddeel fir Kubernetes. Eréischt elo an der Alpha Versioun vu werf, zum Beispill, gëtt Helm bannent werf kompiléiert, well mir midd sinn et selwer ze maachen. Et gi vill Grënn fir dëst ze maachen, ech wäert Iech am Detail soen firwat mir de ganzen Helm zesumme mat Tiller bannent Werf zesummegestallt hunn bei engem Bericht bei RIT++.

Elo ass werf eng méi integréiert Komponent. Mir kréien e fäerdeg Lenkrad, e Lenkspinn - ech sinn net ganz gutt bei Autoen, awer dëst ass e grousse Block, dee schonn eng zimlech breet Palette vu Probleemer léist. Mir brauchen net selwer duerch de Katalog ze goen, wielt een Deel fir en aneren, denkt un wéi se se zesummeschrauwen. Mir kréien eng fäerdeg kombinéiert déi eng grouss Zuel vu Problemer op eemol léist. Awer bannen ass et aus de selwechte Open Source Komponenten gebaut, et benotzt ëmmer nach Docker fir Assemblée, Helm fir e puer vun der Funktionalitéit, an et gi verschidde aner Bibliothéiken. Dëst ass en integréierten Tool fir cool CI / CD séier a bequem aus der Këscht ze kréien.

Ass Kubernetes schwéier ze pflegen?

- Dir schwätzt iwwer d'Erfahrung, datt Dir ugefaang huet Kubernetes ze benotzen, dëst ass e Frame fir Iech, e Motor, an datt Dir vill verschidde Saachen drop hänke kënnt: e Kierper, e Lenkrad, d'Pedalen opschrauwen, Sëtzer. D'Fro stellt sech - wéi schwéier ass Kubernetes Ënnerstëtzung fir Iech? Dir hutt vill Erfahrung, wéi vill Zäit a Ressourcen verbréngt Dir fir Kubernetes isoléiert vun alles anescht z'ënnerstëtzen?

Dmitry: Dëst ass eng ganz schwiereg Fro a fir ze beäntweren, musse mir verstoen wat Ënnerstëtzung ass a wat mir vu Kubernetes wëllen. Vläicht kënnt Dir verroden?

- Souwäit ech weess a wéi ech gesinn, wëllen elo vill Teams Kubernetes probéieren. Jidderee setzt sech dozou, setzt se op d'Knéien. Ech hunn d'Gefill, datt d'Leit net ëmmer d'Komplexitéit vun dësem System verstinn.

Dmitry: Et ass esou.

- Wéi schwéier ass et Kubernetes vun Null ze huelen an z'installéieren sou datt et fäerdeg ass fir d'Produktioun?

Dmitry: Wéi schwéier mengt Dir et ass en Häerz ze transplantéieren? Ech verstinn datt dëst eng kompromittéierend Fro ass. Eng Skalpell benotzen an net e Feeler maachen ass net sou schwéier. Wann se Iech soen, wou ze schneiden a wou se seet, dann ass d'Prozedur selwer net komplizéiert. Et ass schwéier Zäit fir Zäit ze garantéieren datt alles klappt.

Kubernetes installéieren an et ze schaffen ass einfach: Chick! - installéiert, et gi vill Installatiounsmethoden. Awer wat geschitt wann Probleemer entstinn?

Froen stellen sech ëmmer - wat hu mir nach net berücksichtegt? Wat hu mir nach net gemaach? Wéi eng Linux Kernel Parameter goufen falsch spezifizéiert? Här, hu mir se iwwerhaapt ernimmt?! Wéi eng Kubernetes Komponente hu mir geliwwert a wéi eng hu mir net? Dausende vu Froen entstinn, a fir se ze beäntweren, musst Dir 15-20 Joer an dëser Industrie verbréngen.

Ech hunn e rezent Beispill zu dësem Thema dat d'Bedeitung vum Problem "Ass Kubernetes schwéier z'erhalen?" Virun enger Zäit hu mir eis eescht iwwerluecht ob mir probéieren sollen Cilium als Netzwierk a Kubernetes ëmzesetzen.

Loosst mech erklären wat Cilium ass. Kubernetes huet vill verschidden Implementatiounen vum Netzwierk-Subsystem, an ee vun hinnen ass ganz cool - Cilium. Wat ass seng Bedeitung? Am Kernel gouf et virun enger Zäit méiglech Haken fir de Kernel ze schreiwen, déi op eng oder aner Manéier den Netzwierksubsystem a verschiddenen aneren Ënnersystemer invadéieren an Iech erlaben grouss Stécker am Kernel z'iwwergoen.

De Linux Kernel huet historesch en IP-Rout, en Iwwerfilter, Brécke a vill verschidde al Komponenten déi 15, 20, 30 Joer al sinn. Am Allgemengen funktionnéieren se, alles ass super, awer elo hu se Container opgestockt, an et gesäit aus wéi en Tuerm vu 15 Zillen openeen, an Dir stitt op engem Been - e komescht Gefill. Dëse System huet historesch mat vill Nuancen entwéckelt, wéi den Appendix am Kierper. An e puer Situatiounen et Leeschtung Problemer, zum Beispill.

Et gëtt eng wonnerbar BPF an d'Fäegkeet fir Haken fir de Kernel ze schreiwen - d'Jongen hunn hir eege Haken fir de Kernel geschriwwen. De Package kënnt an de Linux Kernel, si huelen et direkt um Input eraus, veraarbecht et selwer wéi et soll ouni Brécke, ouni TCP, ouni IP Stack - kuerz, alles ëmgoen wat am Linux Kernel geschriwwe steet, an dann späiz et eraus an de Container.

Wat ass geschitt? Ganz cool Leeschtung, cool Fonctiounen - just cool! Awer mir kucken dëst a gesinn datt et op all Maschinn e Programm gëtt deen mat der Kubernetes API verbënnt an, baséiert op den Donnéeën déi se vun dëser API kritt, C Code generéiert a Binären kompiléiert déi se an de Kernel lued, sou datt dës Haken funktionnéieren am Kärelraum.

Wat geschitt wann eppes falsch geet? Mir wëssen net. Fir dëst ze verstoen, musst Dir all dëse Code liesen, all d'Logik verstoen, an et ass erstaunlech wéi schwéier et ass. Awer op der anerer Säit ginn et dës Brécke, Netzfilter, IP Rout - ech hunn hire Quellcode net gelies, an och net déi 40 Ingenieuren déi an eiser Firma schaffen. Vläicht nëmmen e puer verstoen puer Deeler.

A wat ass den Ënnerscheed? Et stellt sech eraus datt et IP-Rout ass, de Linux-Kernel, an et gëtt en neit Tool - wat fir en Ënnerscheed mécht et, mir verstinn net deen een oder deen aneren. Awer mir fäerten eppes Neies ze benotzen - firwat? Well wann d'Tool 30 Joer al ass, da sinn an 30 Joer all Käfere fonnt ginn, all d'Fehler sinn getratt an Dir musst net alles wëssen - et funktionnéiert wéi eng schwaarz Këscht a funktionnéiert ëmmer. Jidderee weess wéi eng Diagnosschrauber op wéi enger Plaz hänke soll, wéi eng tcpdump a wéi engem Moment lafen. Jidderee kennt diagnostesch Utilities gutt a versteet wéi dës Set vu Komponenten am Linux Kernel funktionnéiert - net wéi et funktionnéiert, awer wéi et benotzt gëtt.

An de genial coolen Cilium ass net 30 Joer al, et ass nach net al. Kubernetes huet dee selwechte Problem, kopéieren. Dass Cilium perfekt installéiert ass, datt Kubernetes perfekt installéiert ass, awer wann eppes an der Produktioun schief geet, kënnt Dir séier an enger kritescher Situatioun verstoen wat falsch gaang ass?

Wa mir soen ass et schwéier Kubernetes z'erhalen - nee, et ass ganz einfach, an jo, et ass onheemlech schwéier. Kubernetes funktionnéiert super eleng, awer mat enger Milliard Nuancen.

Iwwer d'Approche "I'll be lucky".

- Ginn et Firmen, wou dës Nuancen bal garantéiert optrieden? Ugeholl datt Yandex op eemol all Servicer op Kubernetes transferéiert, et gëtt eng grouss Laascht do.

Dmitry: Nee, dëst ass net e Gespréich iwwer d'Laascht, mee iwwer déi einfachst Saachen. Zum Beispill hu mir Kubernetes, mir hunn d'Applikatioun do ofgesat. Wéi wësst Dir datt et funktionnéiert? Et gëtt einfach kee fäerdege Tool fir ze verstoen datt d'Applikatioun net klappt. Et gëtt kee fäerdege System deen Alarmer schéckt; Dir musst dës Alarmer an all Zäitplang konfiguréieren. A mir aktualiséieren Kubernetes.

Ech hunn Ubuntu 16.04. Dir kënnt soen datt dëst eng al Versioun ass, awer mir sinn nach ëmmer drun well et LTS ass. Et gëtt Systemd, d'Nuance vun deem ass datt et net C-Gruppen botzt. Kubernetes lancéiert Pods, erstellt C-Gruppen, läscht dann Pods, an iergendwéi stellt sech eraus - ech erënnere mech net un d'Detailer, sorry - datt systemd Scheiwen bleiwen. Dëst féiert zu der Tatsaach, datt mat der Zäit all Auto ufänkt staark ze bremsen. Dëst ass net emol eng Fro iwwer Highload. Wann permanent Pods lancéiert ginn, zum Beispill, wann et e Cron Job gëtt deen stänneg Pods generéiert, da fänkt d'Maschinn mat Ubuntu 16.04 no enger Woch ze luesen. Et gëtt e konstant héije Laaschtduerchschnëtt wéinst der Tatsaach datt eng Rëtsch C-Gruppen erstallt goufen. Dëst ass de Problem deen all Persoun déi einfach Ubuntu 16 a Kubernetes uewen installéiert wäert konfrontéieren.

Loosst eis soen datt hien iergendwéi Systemd oder soss eppes aktualiséiert, awer am Linux Kernel bis 4.16 ass et nach méi witzeg - wann Dir C-Gruppen läscht, lecken se am Kernel a ginn net tatsächlech geläscht. Dofir, no engem Mount vun der Aarbecht op dëser Maschinn, wäert et onméiglech sinn d'Erënnerungsstatistike fir d'Häerd ze kucken. Mir huelen e Fichier eraus, rullt en am Programm, an eng Datei rullt 15 Sekonnen, well de Kärel ganz laang dauert fir eng Millioun C-Gruppen a sech selwer ze zielen, déi schéngen geläscht ze sinn, awer nee - si lekken .

Et ginn nach vill esou kleng Saachen hei an do. Dëst ass keen Thema deen rieseg Firmen heiansdo ënner ganz schwéiere Laascht ka konfrontéieren - nee, et ass eng Saach vun alldeeglechen Saachen. D'Leit kënne sou Méint liewen - si hunn Kubernetes installéiert, d'Applikatioun ofgesat - et schéngt ze schaffen. Fir vill Leit ass dëst normal. Si wäerten net emol wëssen datt dës Applikatioun aus irgendege Grënn crasht, si kréien keng Alarm, awer fir si ass dëst d'Norm. Virdrun hu mir op virtuelle Maschinnen ouni Iwwerwaachung gelieft, elo si mir op Kubernetes geplënnert, och ouni Iwwerwaachung - wat ass den Ënnerscheed?

D'Fro ass datt wa mir op Äis goen, mir kennen seng Dicke ni ausser mir moossen et am Viraus. Vill Leit spadséiere a maach der keng Suergen, well se virdru gaangen sinn.

Aus menger Siicht ass d'Nuance an d'Komplexitéit vum Betrib vun all System ze garantéieren datt d'Dicke vum Äis genee genuch ass fir eis Problemer ze léisen. Dëst ass wat mir schwätzen.

An IT, et schéngt mir, ginn et ze vill "Ech wäert Gléck" Approche. Vill Leit installéieren Software a benotzen Softwarebibliothéiken an der Hoffnung datt se Gléck kréien. Am Allgemengen, vill Leit sinn Gléck. Dat ass wahrscheinlech firwat et funktionnéiert.

- Aus menger pessimistescher Bewäertung gesäit et esou aus: wann d'Risiken héich sinn, an d'Applikatioun muss funktionnéieren, da brauch Ënnerstëtzung vu Flaunt, vläicht vu Red Hat, oder Dir braucht Ären eegene internen Team deen speziell fir Kubernetes gewidmet ass, dat ass prett fir et ofzezéien.

Dmitry: Objektiv ass dat esou. Fir eleng an d'Kubernetes Geschicht fir e klengt Team ze kommen ass eng Rei Risiken.

Brauche mir Container?

- Kënnt Dir eis soen wéi verbreet Kubernetes a Russland ass?

Dmitry: Ech hunn dës Donnéeën net, an ech net sécher op dass een aneren et huet. Mir soen: "Kubernetes, Kubernetes", awer et gëtt eng aner Manéier fir dëst Thema ze kucken. Ech weess och net wéi verbreet Container sinn, mee ech weess eng Figur aus Berichter um Internet datt 70% vun de Container vu Kubernetes orchestréiert ginn. Et war eng zouverlässeg Quell fir eng zimlech grouss Prouf ronderëm d'Welt.

Dann eng aner Fro - brauche mir Container? Mäi perséinlecht Gefill an d'allgemeng Positioun vun der Flant Firma ass datt Kubernetes e de facto Standard ass.

Et gëtt näischt anescht wéi Kubernetes.

Dëst ass en absolute Spillwechsel am Beräich vun der Infrastrukturmanagement. Just absolut - dat ass et, net méi Ansible, Chef, virtuell Maschinnen, Terraform. Ech schwätzen net vun den alen Kollektivbaumethoden. Kubernetes ass en absolute Changer, an elo wäert et nëmmen esou sinn.

Et ass kloer, datt et fir déi eng e puer Joer dauert, fir déi aner e puer Joerzéngten, fir dat ze realiséieren. Ech hunn keen Zweiwel datt et näischt wäert sinn wéi Kubernetes an dësen neie Look: mir beschiedegen net méi de Betribssystem, awer benotzen Infrastruktur als Code, nëmmen net mat Code, mee mat yml - eng deklarativ beschriwwen Infrastruktur. Ech hunn d'Gefill datt et ëmmer esou wäert sinn.

- Dat heescht, déi Firmen, déi nach net op Kubernetes gewiesselt sinn, wäerten definitiv drop wiesselen oder am Vergiess bleiwen. Ech hunn dech richteg verstanen?

Dmitry: Dat stëmmt och net ganz. Zum Beispill, wa mir d'Aufgab hunn en DNS Server ze lafen, da kann et op FreeBSD 4.10 lafen an et kann perfekt fir 20 Joer funktionnéieren. Just schaffen an dat ass et. Vläicht muss an 20 Joer eppes eemol aktualiséiert ginn. Wa mir iwwer Software schwätzen am Format dat mir lancéiert hunn an et funktionnéiert tatsächlech fir vill Joren ouni Updates, ouni Ännerungen ze maachen, da gëtt et natierlech keng Kubernetes. Hie gëtt do net gebraucht.

Alles am Zesummenhang mat CI / CD - egal wou Kontinuéierlech Liwwerung néideg ass, wou Dir Versiounen aktualiséieren musst, aktiv Ännerungen maachen, egal wou Dir braucht fir Feeler Toleranz ze bauen - nëmmen Kubernetes.

Iwwert Mikroservicer

- Hei hunn ech eng liicht Dissonanz. Fir mat Kubernetes ze schaffen, brauch Dir extern oder intern Ënnerstëtzung - dat ass den éischte Punkt. Zweetens, wa mir just d'Entwécklung starten, si mir e klenge Startup, mir hunn nach näischt, Entwécklung fir Kubernetes oder Mikroservicearchitektur am Allgemengen kann komplex sinn an net ëmmer wirtschaftlech gerechtfäerdegt. Ech sinn an Ärer Meenung interesséiert - musse Startups direkt ufänken fir Kubernetes vun Null ze schreiwen, oder kënne se nach ëmmer e Monolith schreiwen, an dann nëmmen op Kubernetes kommen?

Dmitry: Cool Fro. Ech hunn e Gespréich iwwer Mikroservicer "Mikroservicer: Gréisst Matters." Vill Mol hunn ech Leit begéint, déi probéiert Neel mat engem Mikroskop ze hammeren. D'Approche selwer ass richteg; mir selwer designen eis intern Software esou. Awer wann Dir dëst maacht, musst Dir kloer verstoen wat Dir maacht. D'Wuert dat ech am meeschten iwwer Mikroservicer haassen ass "Mikro." Historesch ass dëst Wuert do entstanen, a fir e puer Grënn mengen d'Leit datt de Mikro ganz kleng ass, manner wéi e Millimeter, wéi e Mikrometer. Dëst ass falsch.

Zum Beispill gëtt et e Monolith dee vun 300 Leit geschriwwe gëtt, a jidderee deen un der Entwécklung deelgeholl huet versteet datt et Problemer do ass, an et soll a Mikro-Stécker opgedeelt ginn - ongeféier 10 Stécker, jidderee vun deenen 30 Leit geschriwwe sinn. an engem Minimum Versioun. Dëst ass wichteg, néideg a cool. Awer wann e Startup bei eis kënnt, wou 3 ganz cool an talentéiert Kärelen 60 Mikroservicer op de Knéien geschriwwen hunn, all Kéier wann ech no Corvalol sichen.

Et schéngt mir datt dëst schonn Dausende vu Mol geschwat gouf - mir hunn e verdeelt Monolith an enger oder anerer Form kritt. Dëst ass net wirtschaftlech gerechtfäerdegt, et ass ganz schwéier am Allgemengen an allem. Ech hu just dat esou oft gesinn, datt et mech wierklech wéideet, also ech weider doriwwer ze schwätzen.

Zu der éischter Fro gëtt et e Konflikt tëscht der Tatsaach datt Kubernetes engersäits grujeleg ass ze benotzen, well et net kloer ass wat do briechen oder net funktionnéiert, op der anerer Säit ass et kloer datt alles dohinner geet an näischt wéi Kubernetes wäert existéieren. Äntwert - weien d'Quantitéit vum Benefice deen kommt, d'Quantitéit vun Aufgaben déi Dir léise kënnt. Dëst ass op enger Säit vun der Skala. Op der anerer Säit ginn et Risiken verbonne mat Ausdauer oder mat enger Ofsenkung vun der Äntwertzäit, Niveau vun der Disponibilitéit - mat enger Ofsenkung vun de Leeschtungsindikatoren.

Hei ass et - entweder mir plënneren séier, a Kubernetes erlaabt eis vill Saache vill méi séier a besser ze maachen, oder mir benotzen zouverlässeg, Zäit-getest Léisungen, mä Plënneren vill méi lues. Dëst ass e Choix all Firma muss maachen. Dir kënnt et als e Wee am Dschungel denken - wann Dir fir d'éischte Kéier trëppelt, kënnt Dir eng Schlaang, en Tiger oder e verréckten Dachs begéinen, a wann Dir 10 Mol gefuer sidd, hutt Dir de Wee getrëppelt, ewechgeholl d'Branchen a méi einfach ze goen. All Kéiers gëtt de Wee méi breet. Dann ass et eng Asphaltstrooss, a spéider e schéine Boulevard.

Kubernetes steet net roueg. Fro nach eng Kéier: Kubernetes, engersäits, ass 4-5 Binären, op der anerer Säit ass et de ganzen Ökosystem. Dëst ass de Betribssystem dee mir op eise Maschinnen hunn. Wat ass dat? Ubuntu oder Curios? Dëst ass de Linux Kernel, eng Rëtsch zousätzlech Komponenten. All déi Saachen hei, eng gëfteg Schlaang gouf aus der Strooss geheit, do gouf en Zait opgeriicht. Kubernetes entwéckelt sech ganz séier an dynamesch, an de Volume vun de Risiken, de Volume vun der Onbekannt hëlt all Mount erof an deementspriechend sinn dës Skalen nei balancéieren.

D'Äntwert op d'Fro wat e Startup soll maachen, géif ech soen - kommt op Flaunt, bezuelt 150 Tausend Rubel a kritt e schlësselfäerdegen DevOps einfache Service. Wann Dir e klenge Startup mat e puer Entwéckler sidd, funktionnéiert dëst. Amplaz Ären eegenen DevOps ze astellen, déi musse léieren wéi Dir Är Probleemer léist an eng Pai zu dëser Zäit bezuelt, kritt Dir eng schlësselfäerdeg Léisung fir all Themen. Jo, et ginn e puer Nodeeler. Mir kënnen als Outsourcer net esou involvéiert sinn a séier op Ännerungen reagéieren. Awer mir hu vill Expertise a fäerdeg Praktiken. Mir garantéieren datt mir an all Situatioun et definitiv séier erausfannen an all Kubernetes aus den Doudegen operstoen.

Ech recommandéieren staark Outsourcing un Startups an etabléiert Geschäfter bis zu enger Gréisst wou Dir en Team vun 10 Leit un d'Operatiounen widmen kann, well soss kee Sënn huet. Et mécht definitiv Sënn dëst ze outsource.

Iwwer Amazon a Google

- Kann e Host vun enger Léisung vun Amazon oder Google als Outsource ugesi ginn?

Dmitry: Jo, natierlech, dëst léist eng Rei vun Themen. Awer erëm ginn et Nuancen. Dir musst nach ëmmer verstoen wéi Dir et benotzt. Zum Beispill ginn et dausend kleng Saachen an der Aarbecht vun Amazon AWS: de Load Balancer muss opgewiermt ginn oder eng Ufro muss am Viraus geschriwwe ginn datt "Jongen, mir kréien Traffic, waarm de Load Balancer fir eis op!" Dir musst dës Nuancen wëssen.

Wann een sech bei Leit wendt, déi sech dorunner spezialiséiert hunn, kritt een bal all déi typesch Saachen zou. Mir hunn elo 40 Ingenieuren, bis Enn des Joers wäerten et der wuel der 60 sinn - mir sinn op alle Fall op all déi Saache begéint. Och wa mir op engem Projet erëm dëse Problem stousse, froe mir eis séier géigesäiteg a wësse wéi een et soll léisen.

Wahrscheinlech ass d'Äntwert - natierlech, eng gehost Geschicht mécht en Deel méi einfach. D'Fro ass ob Dir prett sidd fir dës Hoster ze vertrauen an ob se Är Probleemer léisen. Amazon a Google hunn et gutt gemaach. Fir all eis Fäll - genee. Mir hu keng positiv Erfahrungen méi. All déi aner Wolleken, mat deenen mir probéiert hunn ze schaffen, kreéieren vill Probleemer - Ager, an alles wat a Russland ass, an all Zort OpenStack a verschiddenen Implementatiounen: Headster, Overage - wat Dir wëllt. Si kreéieren all Probleemer déi Dir net wëllt léisen.

Dofir ass d'Äntwert jo, awer tatsächlech ginn et net ganz vill reife gehost Léisungen.

Wien brauch Kubernetes?

- An awer, wien brauch Kubernetes? Wien soll schonn op Kubernetes wiesselen, wien ass den typesche Flaunt Client dee speziell fir Kubernetes kënnt?

Dmitry: Dëst ass eng interessant Fro, well grad elo, am Laf vu Kubernetes, komme vill Leit bei eis: "Jongen, mir wëssen datt Dir Kubernetes maacht, maacht et fir eis!" Mir äntweren hinnen: "Hären, mir maachen keng Kubernetes, mir prodéieren an alles wat domat verbonnen ass." Well et ass de Moment einfach onméiglech e Produit ze maachen ouni all CI/CD an déi ganz Geschicht ze maachen. Jiddereen ass ewech vun der Divisioun geplënnert datt mir Entwécklung duerch Entwécklung hunn, an dann Ausbeutung duerch Ausbeutung.

Eis Clientë erwaarden verschidde Saachen, awer jidderee waart op e gudde Wonner datt si verschidde Probleemer hunn, an elo - Hop! - Kubernetes wäert se léisen. D'Leit gleewen un Wonner. An hirem Geescht verstinn se datt et kee Wonner gëtt, awer an hirer Séil hoffen se - wat wann dës Kubernetes elo alles fir eis léisen, si schwätzen esou vill doriwwer! Op eemol huet hien elo - Nëss! - an eng Sëlwerkugel, niess! - a mir hunn 100% Uptime, all Entwéckler kënnen alles fräiginn wat 50 Mol an d'Produktioun kënnt, an et crasht net. Am Allgemengen, e Wonner!

Wann esou Leit bei eis kommen, soen mir: "Entschëllegt, awer et gëtt net sou eppes wéi e Wonner." Fir gesond ze sinn, musst Dir gutt iessen an trainéieren. Fir en zouverlässeg Produkt ze hunn, muss et zouverlässeg gemaach ginn. Fir e prakteschen CI / CD ze hunn, musst Dir et esou maachen. Dat ass vill Aarbecht déi muss gemaach ginn.

D'Äntwert op d'Fro wien Kubernetes brauch - kee brauch Kubernetes.

E puer Leit hunn de Mëssverständnis datt se Kubernetes brauchen. D'Leit brauchen, si hunn en déiwe Bedierfnes fir opzehalen ze denken, ze studéieren an un all d'Problemer vun der Infrastruktur an d'Problemer fir hir Uwendungen ze lafen. Si wëllen d'Applikatioune just funktionnéieren a just ofsetzen. Fir si ass Kubernetes d'Hoffnung datt se ophalen d'Geschicht ze héieren datt "mir louchen do", oder "mir kënnen net ausrollen", oder soss eppes.

Den techneschen Direkter kënnt normalerweis bei eis. Si froen him zwou Saachen: Engersäits, gitt eis Features, op der anerer Säit Stabilitéit. Mir proposéieren Iech et op Iech selwer ze huelen an et ze maachen. D'Sëlwer Kugel, oder éischter sëlwer-plated, ass, datt Dir wäert ophalen iwwer dës Problemer ze denken an Zäit verschwenden. Dir wäert speziell Leit hunn, déi dëst Thema zoumaachen.

D'Formuléierung datt mir oder soss een Kubernetes brauch ass falsch.

D'Administrateure brauche wierklech Kubernetes, well et ass e ganz interessant Spillsaachen mat deem Dir spille kënnt a matmaachen. Loosst eis éierlech sinn - jiddereen huet Spillsaachen gär. Mir sinn all Kanner iergendwou, a wa mir en neien gesinn, wëlle mir et spillen. Fir e puer gouf dat decouragéiert, zum Beispill an der Administratioun, well se scho genuch gespillt hunn a schonn esou midd sinn, datt se einfach net wëllen. Mä dëst ass fir jiddereen net komplett verluer. Zum Beispill, wann ech laang Zäit vu Spillsaachen am Beräich vun der Systemadministratioun an DevOps midd sinn, dann hunn ech d'Spillsaachen nach ëmmer gär, ech kafen nach ëmmer e puer nei. All Leit, déi eng oder aner Manéier, wëllen nach ëmmer eng Zort Spillsaachen.

Kee Grond fir mat der Produktioun ze spillen. Wat och ëmmer ech kategoresch recommandéieren net ze maachen a wat ech elo masseg gesinn: "Oh, en neit Spillsaach!" - si si gelaf fir et ze kafen, et kaaft an: "Komm mir huelen et elo an d'Schoul a weisen et all eise Frënn." Maacht dat net. Ech entschëllege mech, meng Kanner ginn nëmme grouss, ech gesinn ëmmer eppes bei Kanner, bemierken et a mir selwer, an generaliséieren et dann op anerer.

Déi lescht Äntwert ass: Dir braucht keng Kubernetes. Dir musst Är Problemer léisen.

Wat Dir kënnt erreechen ass:

  • Prod fällt net;
  • och wann e probéiert ze falen, mir wëssen et am Viraus, a mir kënnen eppes dran setzen;
  • mir kënnen et mat der Geschwindegkeet änneren, mat där eise Geschäft et erfuerdert, a mir kënnen et bequem maachen; et verursaacht eis keng Problemer.

Et ginn zwee reell Bedierfnesser: Zouverlässegkeet an Dynamik / Flexibilitéit vun der Rollout. Jiddereen deen am Moment eng Zort IT-Projete mécht, egal a wéi engem Geschäft - mëll fir d'Welt z'erliichteren, an deen dat versteet, muss dës Bedierfnesser léisen. Kubernetes mat der richteger Approche, mat dem richtege Verständnis a mat genuch Erfahrung erlaabt Iech se ze léisen.

Iwwer serverless

- Wann Dir e bësse méi an d'Zukunft kuckt, da probéiert de Problem vun der Verontreiung vu Kappwéi mat Infrastruktur ze léisen, mat der Geschwindegkeet vun der Rollout an der Geschwindegkeet vun der Applikatioun Ännerungen, erschéngen nei Léisungen, zum Beispill, ouni Server. Fillt Dir e Potenzial an dëser Richtung an, loosst eis soen, eng Gefor fir Kubernetes an ähnlech Léisungen?

Dmitry: Hei musse mer nach eng Kéier eng Bemierkung maachen, datt ech kee Seer sinn, deen no vir kuckt a seet - et wäert esou sinn! Obwuel ech just déi selwecht Saach gemaach. Ech kucken op meng Féiss a gesinn do eng Rëtsch Problemer, zum Beispill, wéi Transistoren an engem Computer funktionnéieren. Et ass witzeg, richteg? Mir begéinen e puer Bugs an der CPU.

Maacht Serverlos zimlech zouverlässeg, bëlleg, effizient a praktesch, léist all Ökosystemprobleemer. Hei sinn ech averstanen mam Elon Musk datt en zweete Planéit gebraucht gëtt fir Feeler Toleranz fir d'Mënschheet ze kreéieren. Obwuel ech weess net wat hie seet, Ech verstinn, datt ech net prett sinn op Mars selwer ze fléien an et wäert net muer geschéien.

Mat Serverlos ass et kloer kloer datt dëst eng ideologesch korrekt Saach ass, wéi Feeler Toleranz fir d'Mënschheet - zwee Planéiten ze hunn ass besser wéi een. Awer wéi maachen ech et elo? Eng Expeditioun ze schécken ass kee Problem wann Dir Är Efforten drop konzentréiert. E puer Expeditioune schécken an e puer dausend Leit do ze settelen, mengen ech, ass och realistesch. Mä fir et komplett Feeler-tolerant ze maachen, datt d'Halschent vun der Mënschheet do wunnt, et schéngt mir elo onméiglech, net considéréiert ginn.

Mat Serverlosen een op een: d'Saach ass cool, awer et ass wäit vun de Probleemer vun 2019. Méi no bei 2030 - loosst eis liewen et ze gesinn. Ech hu keen Zweiwel datt mir wäerte liewen, mir wäerten definitiv liewen (widderhuelen ier Dir an d'Bett geet), awer elo musse mir aner Problemer léisen. Et ass wéi un de Mäerchen Pony Rainbow ze gleewen. Jo, e puer Prozent vu Fäll sinn geléist, a si sinn perfekt geléist, awer subjektiv ass Serverlos e Regenbogen ... Fir mech ass dëst Thema ze wäit an ze onverständlech. Ech sinn net prett ze schwätzen. Am Joer 2019 kënnt Dir net eng eenzeg Applikatioun mat Serverlos schreiwen.

Wéi Kubernetes wäert entwéckelen

- Wéi mir an dës potenziell wonnerbar wäit Zukunft bewegen, wéi mengt Dir, datt de Kubernetes an den Ökosystem ronderëm et sech entwéckelen?

Dmitry: Ech hu vill iwwer dëst geduecht an ech hunn eng kloer Äntwert. Déi éischt ass statefull - schliisslech ass stateless méi einfach ze maachen. Kubernetes huet am Ufank méi an dëst investéiert, et huet alles ugefaang. Stateless funktionéiert bal perfekt zu Kubernetes, et gëtt just näischt ze beschwéieren. Et ginn nach vill Problemer, oder éischter, Nuancen. Alles do funktionnéiert scho super fir eis, awer dat sinn eis. Et wäert op d'mannst e puer Joer daueren bis dëst fir jiddereen funktionnéiert. Dëst ass net e berechent Indikator, mee mäi Gefill vu mengem Kapp.

Kuerz gesot, statefull soll - a wäert - ganz staark entwéckelen, well all eis Applikatiounen Store Status; et gi keng stateless Applikatiounen. Dëst ass eng Illusioun; Dir braucht ëmmer eng Zort Datebank an eppes anescht. Statefull geet et drëm, alles ze riichten wat méiglech ass, all Bugs ze fixéieren, all d'Problemer ze verbesseren déi de Moment konfrontéiert sinn - loosst eis et Adoptioun nennen.

Den Niveau vum Onbekannte, den Niveau vun ongeléiste Probleemer, den Niveau vun der Wahrscheinlechkeet fir eppes ze begéinen wäert wesentlech erofgoen. Dëst ass eng wichteg Geschicht. An d'Bedreiwer - alles am Zesummenhang mat der Kodifikatioun vun der Administratiounslogik, Kontrolllogik fir en einfachen Service ze kréien: MySQL Easy Service, RabbitMQ Easy Service, Memcache easy Service - am Allgemengen, all dës Komponenten déi mir musse garantéiert sinn auszeschaffen d'Këscht. Dëst léist just de Péng datt mir eng Datebank wëllen, awer mir wëllen et net verwalten, oder mir wëllen Kubernetes, awer mir wëllen et net verwalten.

Dës Geschicht vun der Bedreiwerentwécklung an enger oder anerer Form wäert an den nächste Joren wichteg sinn.

Ech denken, datt d'Benotzungsfäegkeet staark soll eropgoen - d'Këscht gëtt ëmmer méi schwaarz, ëmmer méi zouverlässeg, mat ëmmer méi einfache Knäppercher.

Ech hunn emol en alen Interview mam Isaac Asimov aus den 80er op YouTube um Saturday Night Live nogelauschtert - e Programm wéi Urgant, nëmmen interessant. Si gefrot him iwwer d'Zukunft vun Computeren. Hien huet gesot datt d'Zukunft an der Einfachheet ass, grad wéi de Radio. De Radioempfänger war ursprénglech eng komplex Saach. Fir eng Welle ze fangen, musst Dir d'Knäppercher fir 15 Minuten dréien, d'Spiessen dréinen an allgemeng wëssen wéi alles funktionnéiert, d'Physik vun der Radiowelleniwwerdroung verstoen. Als Resultat war et nëmmen ee Knäppche am Radio iwwreg.

Elo am Joer 2019 wat Radio? Am Auto fënnt de Radioempfänger all Wellen an d'Nimm vun de Statiounen. D'Physik vum Prozess huet net an 100 Joer geännert, awer d'Benotzungsfäegkeet huet. Elo, an net nëmmen elo, schonn am Joer 1980, wéi et en Interview mam Azimov war, huet jiddereen de Radio benotzt a keen huet geduecht wéi et funktionnéiert. Et huet ëmmer geschafft - dat ass eng gewëssen.

Den Azimov huet dunn gesot datt et d'selwecht wier mat Computeren - d'Benotzungsfrëndlechkeet wäert eropgoen. Wärend een 1980 muss trainéiert ginn fir Knäppercher um Computer ze drécken, dat wäert an Zukunft net de Fall sinn.

Ech hunn d'Gefill, datt mat Kubernetes a mat der Infrastruktur och eng rieseg Erhéijung vun der Benotzungsfrëndlechkeet gëtt. Dëst, menger Meenung no, ass evident - et läit op der Uewerfläch.

Wat maache mat Ingenieuren?

- Wat geschitt dann mat den Ingenieuren a Systemadministratoren déi Kubernetes ënnerstëtzen?

Dmitry: Wat ass mam Comptabel nom Advent vun 1C geschitt? Ongeféier d'selwecht. Virdrun hu si op Pabeier gezielt - elo am Programm. D'Aarbechtsproduktivitéit ass mat Uerderen vun der Gréisst eropgaang, awer d'Aarbecht selwer ass net verschwonnen. Wann et virdru 10 Ingenieuren gedauert huet fir eng Glühbir anzeschrauwen, elo geet een duer.

D'Quantitéit u Software an d'Zuel vun Aufgaben, et schéngt mir, wiisst elo méi séier wéi nei DevOps erschéngen an d'Effizienz geet erop. Et gëtt e spezifesche Mangel um Maart elo an et wäert eng laang Zäit daueren. Méi spéit gëtt alles zréck an eng Zort Normalitéit, an där d'Effizienz vun der Aarbecht eropgeet, et gëtt ëmmer méi Serverlos, e Neuron gëtt op Kubernetes befestegt, deen all d'Ressourcen genau wéi néideg auswielen, an allgemeng wäert alles selwer maachen, wéi et soll - d'Persoun trëtt just ewech a stéiert net.

Awer een muss nach ëmmer Entscheedungen treffen. Et ass kloer, datt den Niveau vun Qualifikatiounen an Spezialisatioun vun dëser Persoun méi héich ass. Haut brauch een an der Comptabilitéit net 10 Mataarbechter déi Bicher halen, fir datt hir Hänn net midd ginn. Et ass einfach net néideg. Vill Dokumenter ginn automatesch gescannt an unerkannt vum elektroneschen Dokumentmanagementsystem. Ee schlau Chef Comptabel ass genuch, scho mat vill méi Fäegkeeten, mat guddem Verständnis.

Am Allgemengen ass dëst de Wee fir an all Branchen ze goen. Et ass d'selwecht mat Autoen: virdrun koum en Auto mat engem Mecanicien an dräi Chauffeuren. Hautdesdaags ass Autofueren en einfache Prozess un deem mir all all Dag matmaachen. Keen denkt datt en Auto eppes komplizéiert ass.

DevOps oder Systemtechnik wäerten net fortgoen - Héichniveau Aarbecht an Effizienz wäert eropgoen.

- Ech hunn och eng interessant Iddi héieren, datt d'Aarbecht tatsächlech eropgeet.

Dmitry: Natierlech honnert Prozent! Well d'Quantitéit u Software déi mir schreiwen ass konstant wuessen. D'Zuel vun den Themen déi mir mat Software léisen ass stänneg wuessen. D'Quantitéit vun der Aarbecht wiisst. Elo ass den DevOps Maart schrecklech iwwerhëtzt. Dëst kann an der Pai Erwaardungen gesi ginn. Op eng gutt Manéier, ouni an d'Detailer ze goen, sollten et Junioren ginn déi X wëllen, Mëttleren déi 1,5X wëllen, an Senioren déi 2X wëllen. An elo, wann Dir de Moskauer DevOps Gehaltmaart kuckt, wëll e Junior vun X op 3X an e Senior vun X op 3X.

Kee weess wéi vill et kascht. De Gehaltsniveau gëtt vun Ärem Vertrauen gemooss - e komplett Wahnhaus, fir éierlech ze sinn, e schrecklechen iwwerhëtzten Maart.

Natierlech wäert dës Situatioun ganz séier änneren - e bësse Sättigung sollt optrieden. Dëst ass net de Fall mat Softwareentwécklung - trotz der Tatsaach datt jiddereen Entwéckler brauch, a jidderee brauch gutt Entwéckler, de Maart versteet wien et wäert ass - d'Industrie huet sech niddergelooss. Dat ass net de Fall mat DevOps dës Deeg.

- Vun deem wat ech héieren hunn, hunn ech ofgeschloss datt den aktuellen Systemadministrator net ze vill Suerge sollt maachen, awer et ass Zäit seng Fäegkeeten ze upgraden an op d'Tatsaach virzebereeden datt muer méi Aarbecht gëtt, awer et wäert méi héichqualifizéiert sinn.

Dmitry: Honnert Prozent. Am Allgemengen liewen mir am Joer 2019 an d'Regel vum Liewen ass dëst: Liewensdauer Léieren - mir léiere während eisem Liewen. Et schéngt mir datt elo jidderee weess a fillt dëst, awer et ass net genuch ze wëssen - Dir musst et maachen. All Dag musse mir änneren. Wa mir dat net maachen, da gi mir fréier oder spéider op der Säit vum Beruff gefall.

Bereet Iech fir scharf 180-Grad Wendungen. Ech ausschléissen net eng Situatioun wou eppes radikal ännert, eppes Neies erfonnt gëtt - et geschitt. Hop! - a mir handelen elo anescht. Et ass wichteg fir dëst virzebereeden an keng Suergen ze maachen. Et ka geschéien, datt muer alles wat ech maachen onnéideg ass - näischt, ech hunn mäi ganzt Liewen studéiert a si prett eppes anescht ze léieren. Et ass kee Problem. Et brauch een keng Angscht virun der Aarbechtssécherheet ze hunn, mä Dir musst bereet sinn stänneg eppes Neies ze léieren.

Wënsch an eng Minutt vun Reklammen

- Hutt Dir e Wonsch?

Dmitry: Jo, ech hunn e puer Wënsch.

Éischt an mercantile - abonnéieren op YouTube. Léif Lieser, gitt op YouTube an abonnéiert Iech op eise Kanal. A ronn engem Mount wäerte mir eng aktiv Erweiderung vum Video Service ufänken.Mir wäerten vill pädagogesch Inhalter iwwer Kubernetes hunn, oppen a variéiert: vu praktesche Saachen, bis zu Laboratoiren, bis déif fundamental theoretesch Saachen a wéi Dir Kubernetes an der Niveau vu Prinzipien a Mustere.

Déi zweet mercantile Wonsch - goen op GitHub a setzen d'Stären, well mir se iessen. Wann Dir eis keng Stäre gitt, hu mir näischt ze iessen. Et ass wéi Mana an engem Computerspill. Mir maachen eppes, mir maachen, mir probéieren, een seet datt dat schrecklech Veloen sinn, een datt alles komplett falsch ass, awer mir fuere weider an handelen absolut éierlech. Mir gesinn e Problem, léisen et an deelen eis Erfahrung. Dofir, gitt eis e Stär, et wäert net vun Iech fort goen, awer et wäert bei eis kommen, well mir si mat hinnen ernähren.

Drëtten, wichteg, an net méi merkantile Wonsch - op Mäerchen ze gleewen. Dir sidd professionell. DevOps ass e ganz seriöse a verantwortleche Beruff. Stop op der Aarbechtsplaz spillen. Loosst et fir Iech klickt an Dir wäert et verstoen. Stellt Iech vir datt Dir an d'Spidol kommt, an do experimentéiert den Dokter op Iech. Ech verstinn datt dëst fir een beleidegend kann sinn, awer, héchstwahrscheinlech, ass dëst net iwwer Iech, mee iwwer een aneren. Sot anerer och opzehalen. Dëst ruinéiert wierklech d'Liewen fir eis all - vill fänken un Operatiounen, Administrateuren an DevOps als Dudes ze behandelen, déi erëm eppes gebrach hunn. Dëst war meeschtens "gebrach" wéinst der Tatsaach, datt mir spillen gaangen sinn, an net mat engem kale Bewosstsinn gekuckt hunn, datt dat ass wéi et ass, an dat ass wéi et ass.

Dëst bedeit net datt Dir net experimentéiere sollt. Mir mussen experimentéieren, mir maachen et selwer. Fir éierlech ze sinn, spille mir selwer heiansdo Spiller - dat ass natierlech ganz schlecht, awer näischt mënschlecht ass eis friem. Loosst eis 2019 e Joer vu seriösen, gutt iwwerluechten Experimenter erklären, an net Spiller op Produktioun. Wahrscheinlech esou.

- Villmools Merci!

Dmitry: Merci, Vitaly, souwuel fir d'Zäit wéi och fir den Interview. Léif Lieser, villmools Merci wann Dir op eemol op dësem Punkt erreecht hutt. Ech hoffen, datt mir Iech op d'mannst e puer Gedanken bruecht hunn.

Am Interview huet den Dmitry d'Thema vun der werf beréiert. Elo ass dëst en universellt Schwäizer Messer, dee bal all Probleemer léist. Mä et war net ëmmer esou. Op DevOpsConf  um Festival RIT++ Den Dmitry Stolyarov wäert Iech iwwer dëst Tool am Detail soen. am Rapport "werf ass eisen Tool fir CI/CD zu Kubernetes" et gëtt alles: Problemer a verstoppt Nuancen vun Kubernetes, Optiounen fir dës Schwieregkeeten ze léisen an déi aktuell Ëmsetzung vun werf am Detail. Maacht mat de 27. an 28. Mee, mir kreéieren déi perfekt Tools.

Source: will.com

Setzt e Commentaire