Kubernetes o le a pulea le lalolagi. O afea ma e faapefea?

I le fa'atalitali DevOpsConf Vitaly Khabarov fa'atalanoaina Dmitry Stolyarov (distol), faʻatonu faʻapitoa ma le faʻavae o le kamupani Flant. Na fesili Vitaly ia Dmitry e uiga i mea e fai e Flant, e uiga i Kubernetes, atinaʻeina o meaola faanatura, lagolago. Na matou talanoaina pe aisea e manaʻomia ai Kubernetes ma pe manaʻomia uma. Ma e uiga foi i microservices, Amazon AWS, le "O le a ou laki" auala i DevOps, le lumanaʻi o Kubernetes lava ia, aisea, o afea ma pe faʻafefea ona pulea le lalolagi, faʻamoemoe o DevOps ma mea e tatau ona saunia e inisinia i le pupula ma lata mai i le lumana'i fa'afaigofie ma feso'ota'iga neural.

Uluai faatalanoaga fa'alogo pei o se podcast i luga o DevOps Deflop - o le gagana Rusia podcast e uiga i DevOps, ma o loʻo i lalo le faʻasologa o tusitusiga.

Kubernetes o le a pulea le lalolagi. O afea ma e faapefea?

O iinei ma lalo ifo na te fesili ai Vitaly Khabarov inisinia mai Express42.

E uiga i le "Flant"

- Talofa Dima. O oe o le fa'atonu fa'apitoa"Fa'alilo" ma lona faavaeina. Fa'amolemole ta'u mai po'o le a le mea e fai e le kamupani ma le mea o lo'o e iai?

Kubernetes o le a pulea le lalolagi. O afea ma e faapefea?Dmitry: Mai fafo e foliga mai oi matou o tama o loʻo feoai faʻapipiʻi Kubernetes mo tagata uma ma faia se mea i ai. Ae e le moni lena mea. Na matou amataina o se kamupani e feagai ma Linux, ae mo se taimi umi o la matou galuega autu o le tautuaina o le gaosiga ma le maualuga o uta turnkey poloketi. E masani lava tatou te fausia le atinaʻe atoa mai le amataga ona nafa lea mo se taimi umi, umi. O le mea lea, o le galuega autu e faia e "Flant", lea e maua ai tupe, o tauaveina o matafaioi ma le faatinoina o le gaosiga turnkey.




O aʻu, i le avea ai ma faatonu faʻapitoa ma o se tasi o faʻavae o le kamupani, faʻaalu i le ao ma le po atoa e taumafai e mafaufau pe faʻafefea ona faʻateleina le avanoa o le gaosiga, faʻafaigofie lana gaioiga, faʻafaigofie le olaga o pule, ma sili atu le fiafia o le olaga o tagata atiae. .

E uiga i Kubernetes

— Talu ai nei sa ou vaaia ai le tele o lipoti mai ia Flant ma tusiga e uiga i Kubernetes. Na faapefea ona e oo i ai?

Dmitry: Ua uma ona ou talanoa e uiga i lenei mea i le tele o taimi, ae ou te le mafaufau e toe fai. Ou te manatu e sa'o le toe faia o lenei autu ona o lo'o i ai le fenumiai i le va o le mafuaaga ma le taunuuga.

Sa matou matua manaomia lava se meafaigaluega. Sa matou feagai ma le tele o faafitauli, tauivi, faatoilaloina i latou i tootoo eseese ma lagona le manaomia o se meafaigaluega. Sa matou uia le tele o filifiliga eseese, fausia a matou lava uila, ma maua le poto masani. Na faasolosolo malie lava ona matou oʻo i le tulaga na matou amata faʻaaoga ai Docker toetoe lava a aliali mai - e tusa ma le 2013. I le taimi o lona foliga mai, ua uma ona matou maua le tele o le poto masani i koneteina, ua uma ona matou tusia se tala tutusa o le "Docker" - o nisi o matou lava tootoo i le Python. Faatasi ai ma le oʻo mai o Docker, na mafai ai ona togi i fafo tootoo ma faʻaoga se tali faʻalagolago ma lagolagoina e le nuʻu.

Faatasi ai ma Kubernetes e tutusa le tala. E oo atu i le taimi na amata ai ona maua le malosi - mo i matou o le version 1.2 lea - ua uma ona i ai le tele o tootoo i luga o Shell ma Chef, lea na matou taumafai e faʻatautaia ma Docker. Sa matou vaʻavaʻai totoʻa i le Rancher ma isi fofo, ae na faʻaalia Kubernetes, lea e faʻatino ai mea uma e pei ona matou faia pe sili atu foi. E leai se mea e faitio ai.

Ioe, o loʻo i ai se ituaiga o le atoatoa iinei, o loʻo i ai se ituaiga o le atoatoa iina - e tele le le atoatoa, ma 1.2 e masani lava ona mataʻutia, ae ... Kubernetes e pei o se fale o loʻo fausia - e te vaʻai i le poloketi ma malamalama. o le a malu. Afai o le fale o loʻo i ai nei se faavae ma lua fogafale, ona e malamalama lea e sili atu le aua le alu i totonu, ae leai ni faʻafitauli faʻapea i le polokalama - e mafai ona e faʻaaogaina.

E leai se matou taimi na matou mafaufau ai e faʻaaoga Kubernetes pe leai. Sa matou faʻatali mo se taimi umi aʻo leʻi faʻaalia, ma taumafai e fai ni analogues ia i matou lava.

E uiga i Kubernetes

— O e auai sa'o i le atina'eina o Kubernetes lava ia?

Dmitry: Manaia. Ae, tatou te auai i le atinaʻeina o le siʻosiʻomaga. Matou te auina atu se numera o talosaga toso: i Prometheus, i faʻalapotopotoga eseese, i Helm - i le faʻalapotopotoga. Ae paga lea, e le mafai ona ou siakiina mea uma tatou te faia ma e mafai ona ou sese, ae e leai se vaitaele e tasi mai ia i tatou i totonu.

— I le taimi lava e tasi, e te atiina ae le tele o au mea faigaluega ile Kubernetes?

Dmitry: O le fuafuaga lenei: matou te o ma toso talosaga i mea uma ua uma ona i ai. Afai e le taliaina iina talosaga toso, matou te tu'u lava i latou ma ola seia taliaina ma a matou faufale. Ma, a o'o i le pito i luga, matou te toe fo'i i le fa'aliliuga i luga.

Mo se faʻataʻitaʻiga, o loʻo i ai le matou Prometheus operator, lea matou te fesuiaʻi i tua ma luma i luga o le matou faʻapotopotoga atonu ua 5 taimi. Matou te manaʻomia se ituaiga o faʻaaliga, matou te lafoina se talosaga toso, matou te manaʻomia le taʻavale a taeao, ae matou te le manaʻo e faʻatali seʻi tatalaina i luga. E tusa ai, matou te faʻapotopoto mo i matou lava, faʻasalalau la matou faʻapotopotoga ma la matou vaega, lea matou te manaʻomia mo nisi mafuaaga, i a matou fuifui uma. Ona, mo se faʻataʻitaʻiga, latou te tuʻuina mai ia i matou i le pito i luga ma upu: "Alii, seʻi o tatou faia mo se mataupu lautele," tatou, poʻo se isi, faʻamaeʻa, ma i le aluga o taimi e toe faʻatasi ai.

Matou te taumafai e atiina ae mea uma o loʻo i ai. Le tele o elemene e leʻi i ai, e leʻi faia, pe na faʻatulagaina, ae leai se taimi e faʻatino ai - o loʻo matou faia. Ma e le ona tatou te fiafia i le faagasologa poʻo le fausiaina o uila o se pisinisi, ae ona tatou te manaʻomia lenei meafaigaluega. O le fesili e masani ona fesiligia, aisea na tatou faia ai lea mea po o lena mea? O le tali e faigofie - ioe, aua e tatau ona matou agai i luma, foia se faafitauli aoga, ma na matou foia i lenei tula.

O le ala e masani lava e pei o lenei: matou te suʻesuʻe ma le totoa ma, afai matou te le maua se fofo i le auala e fai ai se taavale toso mai se falaoa, ona matou faia lea o a matou lava falaoa ma a matou lava taavale toso.

Meafaigaluega Flanta

- Ou te iloa o Flant o loʻo i ai nei mea faʻapipiʻi, faʻaoga atigi, ma mea faigaluega dapp/werf. E pei ona ou malamalama i ai, o le meafaigaluega lava lea e tasi i ni tino eseese. Ou te malamalama foi e tele isi mea faigaluega eseese i totonu o Flaunt. E moni lenei mea?

Dmitry: E tele a matou mea i luga ole GitHub. Mai mea ou te manatua i le taimi nei, o loʻo i ai le matou faʻafanua - o se laulau mo Grafana ua oʻo i ai tagata uma. O loʻo taʻua i le toetoe lava o tala lona lua e uiga i le mataʻituina o Kubernetes i luga ole Medium. E le mafai ona fa'amatala fa'apuupuu po'o le a le statusmap - e mana'omia se isi tusitusiga, ae o se mea aoga tele mo le mata'ituina o tulaga i le aluga o taimi, talu ai i Kubernetes e masani ona tatou mana'omia le fa'aalia o le tulaga i le taimi. E iai foʻi a matou LogHouse - o se mea lea e faʻavae i luga o ClickHouse ma faʻataulāitu uliuli mo le aoina o ogalaau i Kubernetes.

Tele mea aoga! Ma o le a sili atu foi, ona o le tele o fofo i totonu o le a faʻalauiloa i lenei tausaga. Mai le tele tele e faʻavae i luga o le addon operator, o loʻo i ai le tele o faʻaopoopoga mo Kubernetes, ala pe faʻafefea ona faʻapipiʻi lelei le pule o le sert - o se meafaigaluega mo le puleaina o tusi faamaonia, pe faʻafefea ona faʻapipiʻi saʻo Prometheus ma le tele o mea faʻaoga - e tusa ma le luasefulu eseese. binaries e auina atu faʻamatalaga ma aoina se mea, i lenei Prometheus o loʻo i ai ata sili ona ofoofogia ma mataala. O nei mea uma ua naʻo se faʻaopoopoga o faʻaopoopoga i Kubernetes, o loʻo faʻapipiʻiina i se fuifui, ma e liliu mai le faigofie i le malulu, faʻapitoa, otometi, lea e tele mataupu ua uma ona foia. Ioe, e tele mea tatou te faia.

Atina'e fa'anatura

"E foliga mai ia te aʻu o se sao tele lea i le atinaʻeina o lenei meafaigaluega ma ona auala e faʻaoga ai." E mafai ona e fa'atatauina po'o ai se isi e faia le sao tutusa i le atina'eina o le si'osi'omaga?

Dmitry: I Rusia, o kamupani o loʻo faʻagaoioia i la tatou maketi, e leai se tasi e latalata. O le mea moni, o se faʻamatalaga leotele lea, ona o loʻo i ai tagata taʻalo tetele e pei o Meli ma Yandex - o loʻo latou faia foi se mea ma Kubernetes, ae e oʻo lava latou te le latalata atu i le sao o kamupani i le lalolagi atoa e sili atu mea latou te faia nai lo i tatou. E faigata ona faʻatusatusa Flant, lea e 80 tagata faigaluega, ma Red Hat, lea e 300 inisinia mo Kubernetes naʻo ia, pe a ou le sese. E faigata ona faatusatusa. E toa 6 a matou tagata i le matagaluega o le RnD, e aofia ai ma aʻu, o loʻo tipi uma a matou mea faigaluega. 6 tagata ma le 300 Red Hat inisinia - e faigata tele ona faʻatusatusa.

- Ae ui i lea, pe a oʻo lava i nei tagata e 6 e mafai ona faia se mea e sili ona aoga ma faʻafefe, pe a latou feagai ma se faʻafitauli aoga ma tuʻuina atu le fofo i le alalafaga - o se mataupu manaia. Ou te malamalama i totonu o kamupani tekonolosi tetele, o loʻo i ai a latou lava Kubernetes atinaʻe ma lagolago lagolago, i le mataupu faavae, o meafaigaluega tutusa e mafai ona atiaʻe. O se faʻataʻitaʻiga lea mo i latou o mea e mafai ona atiaʻe ma tuʻuina atu i le nuʻu, e tuʻuina atu ai le malosi i le lautele o loʻo faʻaaogaina Kubernetes.

Dmitry: Masalo o se vaega lenei o le integrator, lona uiga ese. E tele a matou poloketi ma matou vaʻaia le tele o tulaga eseese. Mo i matou, o le auala autu e fatuina ai le tau faʻaopoopo o le suʻeina lea o nei mataupu, saili mea masani ma faʻataugofie mo i matou. O loʻo matou galulue malosi i lenei mea. E faigata ia te aʻu ona talanoa e uiga ia Rusia ma le lalolagi, ae e tusa ma le 40 DevOps inisinia i le kamupani o loʻo galulue i Kubernetes. Ou te le manatu e tele kamupani i Rusia ma se numera tutusa o tagata tomai faapitoa e malamalama i Kubernetes, pe a iai.

Ou te malamalama i mea uma e uiga i le igoa galuega DevOps engineer, e malamalama tagata uma i mea uma ma faʻaaogaina e valaʻau DevOps inisinia DevOps inisinia, matou te le talanoaina lenei mea. O nei 40 mataʻina enisinia DevOps o loʻo feagai ma foia faʻafitauli i aso uma, matou te suʻesuʻeina lenei aafiaga ma taumafai e faʻasalalau. Matou te malamalama afai e tumau i totonu ia i matou, ona i ai lea o le tausaga pe lua o le a le aoga le meafaigaluega, aua o se mea i totonu o le nuu o le a aliali mai ai se Tula ua saunia. E leai se aoga o le faʻaputuina o lenei poto masani i totonu - e naʻo le faʻaitiitia o le malosi ma le taimi ile dev/null. Ma matou te le lagona lava le faanoanoa i ai. Matou te faʻasalalau mea uma ma le fiafia tele ma malamalama e manaʻomia ona faʻasalalau, atiina ae, faʻalauiloaina, faʻalauiloaina, ina ia faʻaaogaina e tagata ma faʻaopoopoina o latou poto masani - ona tupu ai lea o mea uma ma ola. A maeʻa le lua tausaga e le alu le mea faigaluega i le lapisi. E le o se faʻanoanoa le faʻaauau pea ona sasaa i le malosi, aua e manino lava o loʻo faʻaaogaina e se tasi lau meafaigaluega, ma a maeʻa le lua tausaga o loʻo faʻaaogaina e tagata uma.

Ole vaega lea ole matou fuafuaga tele ma dapp/werf. Ou te le manatua le taimi na amata ai ona matou faia, e foliga mai o le 3 tausaga talu ai. I le taimi muamua, sa masani lava i luga o le atigi. O se faʻamaoniga sili o le manatu, na matou foia nisi o matou faʻafitauli faʻapitoa - na aoga! Ae o loʻo i ai faʻafitauli i le atigi, e le mafai ona faʻalautele atili, polokalame i luga o le atigi o se isi galuega. Sa i ai se matou masani o le tusitusi i Ruby, e tusa ai, matou toe faia se mea i Ruby, atiina ae, atiina ae, atiina ae, ma taufetuli i le mea moni o le nuu, le motu o tagata e le faapea mai "matou te mananao i ai pe matou te le mananao i ai, ” liliu atu lona isu ia Ruby, e ese le malie? Na matou iloa e tatau ona matou tusia uma nei mea i le Go naʻo le faʻafeiloaʻi o le mea muamua i luga o le lisi siaki: DevOps meafaigaluega e tatau ona avea ma se static binary. O le alu pe leai e le taua tele, ae o se static binary tusia i le Go e sili atu.

Na matou faʻaalu lo matou malosi, toe tusi le dapp i le Go ma faʻaigoaina werf. O le Dapp e le o toe lagolagoina, e le o atinaʻe, o loʻo tamoʻe i nisi faʻamatalaga lata mai, ae o loʻo i ai se auala faʻaleleia atoatoa i le pito i luga, ma e mafai ona e mulimuli i ai.

Aisea na faia ai le dapp?

— E mafai ona e faamatala puupuu mai pe aisea na faia ai le dapp, o ā faafitauli e foʻia?

Dmitry: O le mafuaaga muamua e i totonu o le faapotopotoga. I le taimi muamua, sa i ai a matou faʻafitauli ogaoga i le fausiaina ina ua le maua e Docker le tele o tulaga gafatia, o lea na matou faia ai le tele-tulaga na o matou. Ona i ai lea o le tele o isi faafitauli i le faamamaina o le ata. O tagata uma e faia CI / CD, vave nai lo le taimi mulimuli ane, o loʻo feagai ma le faʻafitauli o loʻo i ai le tele o ata aoina, e tatau ona e faʻamamaina mea e le manaʻomia ma tuʻu mea e manaʻomia.

O le mafuaaga lona lua o le faʻapipiʻiina. Ioe, o loʻo i ai Helm, ae naʻo nisi o faʻafitauli e foia ai. O le mea malie, o loʻo tusia e faapea "O le Helm o le Pule o le Paketi mo Kubernetes." O le a tonu lava le "le". E iai fo'i upu “Package Manager” - o le a le fa'amoemoe masani mai le Package Manager? Matou te fai atu: "Package Manager - faʻapipiʻi le afifi!" ma e matou te faatalitalia o ia e taʻu mai iā i matou: “Ua avatu le afifi.”

E manaia le matou fai atu: "Helm, faʻapipiʻi le afifi," ma ina ua ia tali mai na ia faʻapipiʻiina, e foliga mai na faatoa amata le faʻapipiʻiina - na ia faʻaalia Kubernetes: "Faʻalauiloa lenei mea!", ma pe na amata pe leai. , pe aoga pe leai, E le foia e Helm lenei mataupu.

E aliali mai o Helm ua na'o se tusitusiga muamua e fa'apipi'i fa'amaumauga i totonu o Kubernetes.

Ae i le avea ai o se vaega o soʻo se faʻapipiʻiina, matou te fia iloa pe ua tuʻuina atu le talosaga mo le gaosiga pe leai? O lo'o fa'asolo i fafo o lona uiga o le talosaga ua fa'agasolo iina, o le fa'afou fou ua fa'apipi'iina, ma o le mea sili e le pa'u iina ma tali sa'o. E le foia e le foe lenei faafitauli i soo se auala. Ina ia foia, e tatau ona e faʻaaluina le tele o taumafaiga, aua e tatau ona e tuʻuina atu ia Kubernetes le faʻatonuga e taʻavale ma mataʻituina mea o loʻo tupu iina - pe faʻapipiʻiina pe taʻavale. Ma e tele foʻi galuega e fesoʻotaʻi ma le faʻapipiʻiina, faʻamamaina, ma le faʻapotopotoga.

Fuafuaga

O le tausaga nei o le a tatou amata ai le atinaʻeina o le lotoifale. Matou te mananaʻo e ausia le mea sa i ai muamua i Vagrant - matou te taina le "vagrant up" ma matou faʻaogaina masini masini. Matou te mananaʻo e oʻo i le tulaga o loʻo i ai se poloketi i Git, matou te tusia "werf up" iina, ma e aumaia ai se kopi faʻapitonuʻu o lenei poloketi, faʻapipiʻiina i totonu o le mini-Kub i le lotoifale, faʻatasi ai ma lisi uma e faigofie mo atinaʻe fesoʻotaʻi. . Fa'alagolago i le gagana fa'atupuina, e ese le faia o lenei mea, ae ui i lea, ina ia mafai ona fa'atinoina le atina'e fa'apitonu'u i lalo o faila fa'apipi'i.

O le isi laasaga mo i tatou o le teu fa'afaigaluega i le fa'aogagofie mo tagata atia'e. Ina ia vave faʻapipiʻi se poloketi i le lotoifale ma se meafaigaluega e tasi, atiina ae, tulei i totonu o Git, ma o le a taʻavale foi i luga o le tulaga poʻo suʻega, faʻalagolago i paipa, ona faʻaaoga lea o le meafaigaluega tutusa e alu i le gaosiga. O lenei lotogatasi, tuʻufaʻatasia, toe faʻaleleia o atinaʻe mai le siosiomaga faʻapitonuʻu i le faʻatau atu o se mea taua tele mo i matou. Ae e le'i i ai lenei mea i le taimi nei - o loʻo matou fuafua e fai.

Ae o le ala i dapp/werf e tutusa lava ma Kubernetes i le amataga. Na matou fetaiaʻi ma faʻafitauli, foʻia i latou i fofo - na matou maua ni fofo mo i matou lava i luga o le atigi, i soʻo se mea. Ona latou taumafai lea e faʻasaʻo nei mea faʻaoga, faʻasalalau ma tuʻufaʻatasia i latou i binaries i lenei tulaga, lea matou te faʻasoa.

E i ai se isi auala e tilotilo ai i lenei tala atoa, faatasi ai ma talafaatusa.

Kubernetes ose fa'avaa ta'avale ma se afi. E leai ni faitotoa, tioata, leitio, laau Kerisimasi - leai se mea. Na'o le faavaa ma le afi. Ma o loʻo i ai le Helm - o le uili lea. Cool - o loʻo i ai se uili, ae e te manaʻomia foʻi se pine faʻataʻitaʻi, fata taʻavale, pusa uila ma uili, ma e le mafai ona e faia e aunoa ma ia.

I le tulaga o werf, o le isi lea vaega i Kubernetes. Na'o le taimi nei i le alpha version of werf, mo se fa'ata'ita'iga, ua tu'ufa'atasia le Helm i totonu o le werf, ona ua tatou fiu e fai e i tatou lava. E tele mafuaʻaga e fai ai lenei mea, o le a ou taʻu atu ia te oe faʻamatalaga pe aisea na matou tuufaatasia ai le foeuli atoa faʻatasi ma le tiller inside werf i se lipoti i le RIT++.

O le taimi nei o le werf o se vaega sili atu ona tuʻufaʻatasia. Matou te maua se uili maeʻa, se pine faʻamau - Ou te le lelei tele i taavale, ae o se poloka tele lea ua uma ona foia le tele o faʻafitauli. E le manaʻomia ona tatou oʻo i le lisi o tatou lava, filifili se tasi vaega mo le isi, mafaufau pe faʻafefea ona faʻapipiʻi faʻatasi. Matou te maua se tuʻufaʻatasiga saunia e foia ai le tele o faʻafitauli i le taimi e tasi. Ae o totonu o loʻo fausia mai i vaega tutusa matala, o loʻo faʻaaogaina pea Docker mo le faʻapotopotoga, Helm mo nisi o galuega, ma e tele isi faletusi. Ole mea faigaluega tu'ufa'atasia lea e maua mai ai le malu CI/CD mai le pusa vave ma faigofie.

E faigata ona tausia Kubernetes?

— E te talanoa e uiga i le poto masani na e amata faʻaaogaina Kubernetes, o se faʻavaa mo oe, se afi, ma e mafai ona e tautau i ai le tele o mea eseese: o se tino, o se uili, faʻavili i luga o pedals, nofoa. O le fesili e tulaʻi mai - o le a le faigata o le lagolago a Kubernetes mo oe? E tele ou poto masani, o le a le tele o le taimi ma punaoa e te faʻaaluina i le lagolagoina o Kubernetes i le vavae ese mai mea uma?

Dmitry: O se fesili faigata tele lea ma tali, e tatau ona tatou malamalama poʻo le a le lagolago ma le mea tatou te manaʻo ai mai Kubernetes. Atonu e mafai ona e faʻaalia?

— E pei ona ou iloa ma e pei ona ou vaai i ai, o lea ua toatele au e fia faataitai i le Kubernetes. E fa'aoga tagata uma i ai, fa'ae'e i luga o latou tulivae. E i ai lo'u lagona e le o taimi uma e malamalama ai tagata i le lavelave o lenei faiga.

Dmitry: E faapena.

- O le a le faigata o le ave ma faʻapipiʻi Kubernetes mai le amataga ina ia saunia le gaosiga?

Dmitry: O le a sou manatu o le a le faigata o le suia o se fatu? Ou te malamalama o se fesili fetuutuunai lea. O le faʻaaogaina o se scalpel ma le le faia o se mea sese e le faigata tele. Afai latou te taʻu atu ia te oe le mea e tipi ma le mea e suisui ai, o le faiga lava ia e le faigata. E faigata ona mautinoa mai lea taimi i lea taimi o le a lelei mea uma.

E faigofie le fa'apipi'iina o Kubernetes ma fa'agaoioi: tama! - faʻapipiʻi, e tele naua auala faʻapipiʻi. Ae o le ā e tupu pe a tulaʻi mai faafitauli?

O fesili e tula’i mai i taimi uma – o le a le mea tatou te le’i manatu i ai? O le a se mea tatou te le'i faia? O a fa'asologa o le fatu Linux na fa'ailoa sese? Le Alii e, na matou ta'ua ea i latou?! O a vaega Kubernetes na matou tuʻuina atu ae o fea e leʻi matou? E afe ma afe fesili e tulaʻi mai, ma tali i latou, e tatau ona e faʻaalu 15-20 tausaga i lenei pisinisi.

E i ai sau faʻataʻitaʻiga lata mai i lenei autu e ono faʻaalia ai le uiga o le faʻafitauli "E faigata ona tausia Kubernetes?" I se taimi ua mavae sa matou mafaufau loloto pe tatau ona matou taumafai e faʻatino Cilium o se fesoʻotaʻiga i Kubernetes.

Se'i ou faamatala atu le uiga o le Cilium. Kubernetes e tele faʻatinoga eseese o le upega tafaʻilagi, ma o se tasi oi latou e manaia tele - Cilium. O le a lona uiga? I totonu o le fatu, i se taimi ua mavae na mafai ai ona tusia ni matau mo le fatu, lea i se tasi auala poʻo se isi osofaʻia le subsystem network ma isi subsystems eseese, ma faʻatagaina oe e pasia ni pusi tetele i totonu o le fatu.

O le fatu Linux i le talafaasolopito o loʻo i ai se faʻaogaina o le ip, o le overfilter, alalaupapa ma le tele o vaega tuai eseese e 15, 20, 30 tausaga. I se tulaga lautele, latou te galulue, e lelei mea uma, ae o lea ua latou faaputuputu pusa, ma e foliga mai o se olo o piliki 15 i luga o le tasi ma le isi, ma e te tu i luga o le tasi vae - o se lagona uiga ese. O lenei faiga ua leva ona atiina ae ma le tele o nuances, e pei o le appendix i le tino. I nisi tulaga o loʻo i ai faʻafitauli faʻatinoga, mo se faʻataʻitaʻiga.

O loʻo i ai se BPF matagofie ma le mafai ona tusi matau mo le fatu - na tusia e tama a latou lava matau mo le fatu. O le afifi e oʻo mai i totonu o le fatu Linux, latou te ave saʻo i le mea e tuʻuina atu ai, faʻatautaia i latou lava e pei ona tatau ai e aunoa ma ni alalaupapa, e aunoa ma le TCP, e aunoa ma se faʻaputu IP - i se faapuupuuga, faʻafefe mea uma o loʻo tusia i le fatu Linux, ona feanu lea. i fafo i totonu o le koneteina.

O le a le mea ua tupu? Manaia le faatinoga, manaia foliga - na'o le manaia! Ae matou te vaʻavaʻai i lenei mea ma vaʻai i luga o masini taʻitasi o loʻo i ai se polokalame e fesoʻotaʻi i le Kubernetes API ma, e faʻavae i luga o faʻamatalaga na te mauaina mai lenei API, faʻatupuina le C code ma faʻapipiʻi binaries e utaina i totonu o le fatu ina ia galue nei matau. i totonu o le kernel space.

O le a le mea e tupu pe a tupu se mea? Matou te le iloa. Ina ia malamalama i lenei mea, e tatau ona e faitau uma i lenei tulafono, malamalama i manatu uma, ma e ofoofogia le faigata. Ae, i le isi itu, o loʻo i ai nei alalaupapa, net filters, ip rout - Ou te leʻi faitauina le latou faʻailoga, ma e leai foi ma le 40 inisinia o loʻo galulue i la matou kamupani. Atonu e na o ni nai vaega e malamalama i ai.

Ae o le a le eseesega? E foliga mai o loʻo i ai le ip rout, le fatu Linux, ma o loʻo i ai se meafaigaluega fou - o le a le eseesega e faia, matou te le malamalama i le tasi poʻo le isi. Ae matou te fefefe e faʻaaoga se mea fou - aisea? Aua afai o le meafaigaluega e 30 tausaga, ona i ai lea i le 30 tausaga na maua uma ai mea sese, o mea sese uma ua laa i luga ma e te le manaʻomia le iloa e uiga i mea uma - e galue e pei o se pusa uliuli ma e galue pea. E iloa e tagata uma po'o fea le sikulati fa'ama'i e pipi'i i le fea nofoaga, o le tcpdump e tamoe i le a le taimi. E iloa lelei e tagata uma mea aoga faʻamaonia ma malamalama pe faʻafefea ona galue lenei seti o vaega i le fatu Linux - e le o le auala e galue ai, ae faʻafefea ona faʻaogaina.

Ma o le Cilium mataʻina e leʻo 30 tausaga, e leʻi matua. Kubernetes ei ai le faʻafitauli tutusa, kopi. O lena Cilium ua faʻapipiʻiina lelei, o Kubernetes ua faʻapipiʻi atoatoa, ae a iai se mea e faaletonu i le gaosiga, e mafai ona e vave malamalama i se tulaga ogaoga le mea na tupu?

A matou fai atu e faigata ona tausia Kubernetes - leai, e matua faigofie lava, ma ioe, e matua faigata lava. Kubernetes galue lelei na o ia, ae faʻatasi ma le piliona nuances.

E uiga i le auala "O le a ou laki".

- E i ai ni kamupani e toetoe lava a mautinoa e aliali mai nei nuances? Faʻapea e faʻafuaseʻi ona faʻafeiloaʻi e Yandex auaunaga uma i Kubernetes, o le ai ai se uta tele iina.

Dmitry: Leai, e le o se talanoaga e uiga i le uta, ae e uiga i mea sili ona faigofie. Mo se faʻataʻitaʻiga, o loʻo i ai a matou Kubernetes, matou te faʻaogaina le talosaga iina. E fa'afefea ona e iloa o lo'o aoga? E leai lava se meafaigaluega ua saunia e malamalama ai o le talosaga e le o paʻu. E leai se faiga ua saunia e tuʻuina atu faʻasalalauga; e tatau ona e faʻatulagaina nei faʻasalalauga ma faʻasologa taʻitasi. Ma o loʻo matou faʻafouina Kubernetes.

O loʻo ia te aʻu le Ubuntu 16.04. E mafai ona e fai mai o se lomiga tuai lea, ae o loʻo matou i ai pea ona o le LTS. O loʻo i ai le systemd, o lona uiga e le faʻamamāina vaega C. Kubernetes fa'alauiloa pods, faia C-groups, ona tapeina lea o pods, ma i se isi itu e foliga mai - Ou te le manatua auiliiliga, fa'amalie atu - o lo'o tumau pea vaega. O lenei mea e tau atu i le mea moni e faapea i le aluga o taimi, soʻo se taavale e amata ona faʻagesegese malosi. E le o se fesili foi lea e uiga i le maualuga. Afai e faʻalauiloa pusa tumau, mo se faʻataʻitaʻiga, afai o loʻo i ai se Cron Job e faʻatupuina pea pods, ona amata loa lea ona faʻagesegese le masini ma le Ubuntu 16.04 pe a uma le vaiaso. O le ai ai se averesi maualuga maualuga i taimi uma ona o le mea moni o se vaega o C-vaega ua faia. O le faʻafitauli lea e feagai ma soʻo se tagata e faʻapipiʻi Ubuntu 16 ma Kubernetes i luga.

Seʻi tatou fai atu na te faʻafouina le systemd poʻo se isi mea, ae i le Linux kernel e oʻo atu i le 4.16 e sili atu le malie - pe a e tape C-vaega, latou te tafe i totonu o le fatu ma e le o tapeina moni. O le mea lea, a maeʻa le masina o galue i luga o lenei masini, o le a le mafai ona vaʻavaʻai i faʻamaumauga o mafaufauga mo le afi. Matou te ave i fafo se faila, taʻavale i totonu o le polokalama, ma tasi le faila e taʻavale mo le 15 sekone, aua o le fatu e umi se taimi e faitau ai le miliona C-vaega i totonu ia te ia lava, lea e foliga mai e tape, ae leai - o loʻo tafe. .

O lo'o i ai pea le tele o mea laiti fa'apenei i lea mea ma lea mea. E le o se fa'afitauli lea e ono feagai ma kamupani tetele i nisi taimi i lalo o le mamafa tele o uta - leai, o se mataupu o mea masani. E mafai e tagata ona ola faʻapenei mo masina - na latou faʻapipiʻi Kubernetes, faʻapipiʻi le talosaga - e foliga mai e aoga. Mo le tele o tagata o se mea masani lea. Latou te le iloa foi o lenei talosaga o le a paʻu mo nisi mafuaaga, latou te le maua se mataala, ae mo i latou o le masani lea. I le taimi muamua, sa matou ola i masini komepiuta e aunoa ma le mataituina, o lea ua matou siitia atu i Kubernetes, e aunoa ma le mataʻituina - o le a le eseesega?

O le fesili pe a tatou savavali i luga o le aisa, tatou te le iloa lona mafiafia sei vagana ua tatou fuaina muamua. E toatele tagata e savavali ma e le popole, aua sa latou savavali muamua.

Mai loʻu manatu, o le nuance ma le lavelave o le faʻaogaina o soʻo se faiga o le faʻamautinoaina o le mafiafia o le aisa e lava tonu e foia ai o tatou faafitauli. O le mea lea tatou te talanoa ai.

I le IT, e foliga mai ia te aʻu, e tele naua "O le a ou laki" auala. E to'atele tagata fa'apipi'i polokalame ma fa'aoga faletusi fa'akomepiuta i le fa'amoemoe o le a latou laki. I se tulaga lautele, e tele tagata e laki. Atonu o le mafuaaga lena e aoga ai.

- Mai laʻu iloiloga le mautonu, e pei o lenei: pe a maualuga le lamatiaga, ma e tatau ona galue le talosaga, ona manaʻomia lea o le lagolago mai Flaunt, atonu mai le Red Hat, pe e te manaʻomia lau lava 'au i totonu e faʻapitoa mo Kubernetes, lea ua saunia. e toso ese.

Dmitry: O le fa'amoemoe, e fa'apea. O le ulufale atu i le tala Kubernetes mo se 'au to'aitiiti e aofia ai le tele o tulaga lamatia.

Tatou te mana'omia ni koneteina?

- E mafai ona e taʻu mai ia i matou le lautele o Kubernetes i Rusia?

Dmitry: E leai sau faʻamatalaga, ma ou te le mautinoa o loʻo i ai i se isi. Matou te fai atu: "Kubernetes, Kubernetes," ae o loʻo i ai se isi auala e vaʻai ai i lenei mataupu. Ou te le iloa foi pe o le a le lautele o pusa, ae ou te iloa se fuainumera mai lipoti i luga o le Initaneti o le 70% o pusa o loʻo faʻatulagaina e Kubernetes. O se puna faʻatuatuaina mo se faʻataʻitaʻiga tele i le lalolagi atoa.

O le isi fesili - tatou te manaʻomia ni pusa? O loʻu lagona patino ma le tulaga atoa o le kamupani Flant o le Kubernetes o se tulaga moni.

O le a leai se mea ae na o Kubernetes.

Ole mea lea e matua'i suia ai le ta'aloga ile vaega ole pulega ole atina'e. Na'o le fa'amaoni - o le mea lena, leai se Ansible, Chef, masini masini, Terraform. Ou te le o talanoa i auala tuai o faatoaga tuufaatasi. O Kubernetes o se suiga atoatoa, ma o lenei o le a na o lenei.

E manino lava o nisi e manaʻomia ni nai tausaga, ae mo isi e lua sefulu tausaga, e iloa ai lenei mea. E leai soʻu masalosalo o le a leai se mea ae naʻo Kubernetes ma lenei foliga fou: matou te le toe faʻaleagaina le faiga faʻaoga, ae faʻaaoga aseta e fai ma tulafono, e le gata i le code, ae faʻatasi ma le yml - o se faʻamatalaga faʻamatalaga faʻapitoa. E i ai lo'u lagona o le a faapea lava.

- O lona uiga, o na kamupani e leʻi suia i Kubernetes e mautinoa lava e sui i ai pe tumau pea i le galo. Na ou malamalama lelei ia te oe?

Dmitry: E le sa'o atoatoa foi lenei mea. Mo se faʻataʻitaʻiga, afai o loʻo ia i matou le galuega o le faʻaogaina o se DNS server, ona mafai lea ona faʻatautaia i luga ole FreeBSD 4.10 ma e mafai ona galue lelei mo le 20 tausaga. Na'o le galue ma o lena lava. Masalo i le 20 tausaga e manaʻomia ona toe faʻafouina se mea. Afai o loʻo matou talanoa e uiga i polokalama faʻapipiʻi i le faatulagaga na matou faʻalauiloaina ma e galue moni mo le tele o tausaga e aunoa ma ni faʻafouga, e aunoa ma le faia o suiga, o lona uiga, o le a leai se Kubernetes. E le manaomia o ia iina.

O mea uma e feso'ota'i ma le CI/CD - so'o se mea e mana'omia le Fa'aauauina o Fa'asalalauga, o mea e te mana'omia e fa'afou ai fa'aliliuga, fai suiga malosi, so'o se mea e te mana'omia e fausia ai le fa'apalepale fa'aletonu - na'o Kubernetes.

E uiga i microservices

- O lo'o i ai la'u fa'aletonu la'ititi. Ina ia galulue ma Kubernetes, e te manaʻomia le lagolago mai fafo poʻo totonu - o le mea muamua lea. Lona lua, a o matou faatoa amataina le atinaʻe, matou o se amataga laʻititi, matou te leʻi maua se mea, atinaʻe mo Kubernetes poʻo microservice architecture i le lautele e mafai ona faigata ma e le o taimi uma e faʻamaonia ai le tamaoaiga. Ou te fiafia i lou manatu - e tatau ona amata vave ona tusitusi mo Kubernetes mai le amataga, pe mafai ona latou tusia se monolith, ona oʻo mai lea i Kubernetes?

Dmitry: Fesili manaia. E i ai sau tautalaga e uiga i microservices "Microservices: Tele e Taua." O le tele o taimi ou te fetaiai ai ma tagata o taumafai e samala fao i se microscope. O le auala lava ia e saʻo; matou te mamanuina a matou polokalama i totonu i lenei auala. Ae a e faia lenei mea, e tatau ona e malamalama lelei i mea o loʻo e faia. O le upu e sili ona ou inoino i ai e uiga i microservices o le "micro." I tala faasolopito, o lenei upu na afua mai iina, ma mo nisi mafuaaga e manatu tagata o le micro e matua laʻititi, itiiti ifo i le millimita, pei o le micrometer. E sese lenei mea.

Mo se faʻataʻitaʻiga, o loʻo i ai se monolith na tusia e le 300 tagata, ma o tagata uma na auai i le atinaʻe e malamalama o loʻo i ai faʻafitauli iina, ma e tatau ona talepeina i ni vaega laiti - e tusa ma le 10 vaega, e tusia uma e le 30 tagata. i se fa'asologa la'ititi. E taua lenei, e manaʻomia ma malulu. Ae a oʻo mai se amataga ia i matou, lea na tusia ai e 3 tagata sili ona manaia ma talenia 60 microservices i luga o latou tulivae, i taimi uma ou te suʻe ai Corvalol.

E foliga mai ia te aʻu ua uma ona talanoa e uiga i le faitau afe o taimi - matou te maua se monolith tufatufaina i se tasi ituaiga poʻo se isi. O lenei mea e le faʻamaonia le tamaoaiga, e matua faigata lava i le lautele i mea uma. Faatoa ou vaai i lenei mea i le tele o taimi e matua tiga ai lava ia te au, o lea ou te faaauau ai ona talanoa i ai.

I le fesili muamua, o loʻo i ai se feteʻenaʻiga i le va o le mea moni e faapea, i le tasi itu, Kubernetes e mataʻu e faʻaaoga, aua e le o manino le mea e ono malepe ai pe leai foi, i le isi itu, e manino lava o mea uma e alu i ai. ma e leai se mea na o Kubernetes o le a iai . Tali - fua le aofaʻi o faʻamanuiaga e oʻo mai, le aofaʻi o galuega e mafai ona e foia. Ole mea lea ile tasi itu ole fua. I le isi itu, o loʻo i ai aʻafiaga e fesoʻotaʻi ma le taʻavale poʻo le faʻaitiitia o le taimi tali, tulaga o avanoa - faʻatasi ai ma le faʻaitiitia o faʻailoga faʻatinoga.

O le mea lea - a le o le tatou gaoioi vave, ma Kubernetes e faʻatagaina i tatou e fai le tele o mea e sili atu le vave ma sili atu, pe tatou te faʻaogaina fofo faʻatuatuaina, faʻataʻitaʻi taimi, ae sili atu le lemu. Ole filifiliga lea e tatau ona faia e kamupani uma. E mafai ona e mafaufau i ai o se ala i le vaomatua - pe a e savali mo le taimi muamua, e mafai ona e fetaui ma se gata, se taika poʻo se lua, ma pe a e savali faʻa 10, ua e savalia le ala, aveese. lala ma savali faigofie. O taimi uma e lautele ai le ala. Ona avea ai lea o se auala asphalt, ma mulimuli ane o se auala matagofie.

E le tu pea Kubernetes. Toe fesili: Kubernetes, i le tasi itu, o le 4-5 binaries, i le isi itu, o le siʻosiʻomaga atoa. O le faiga fa'aoga lea o lo'o i luga oa tatou masini. O le a lea? Ubuntu po'o le Curios? O le fatu Linux lea, o le tele o vaega faaopoopo. O nei mea uma iinei, o le gata uogo e tasi na lafoina i fafo o le auala, na fausia ai se pa iina. Kubernetes o loʻo atinaʻe vave ma faʻamalosi, ma o le tele o lamatiaga, le tele o le le iloa o loʻo faʻaitiitia i masina uma ma, e tusa ai, o nei fua ua toe faʻaleleia.

Taliina o le fesili pe o le a le mea e tatau ona fai e le amataga, ou te fai atu - sau i Flaunt, totogi 150 afe rubles ma maua se turnkey DevOps auaunaga faigofie. Afai o oe o se tamaʻi amataga ma ni nai atinaʻe, e aoga lenei mea. Nai lo le faʻafaigaluegaina o au lava DevOps, o ai o le a manaʻomia ona aʻoaʻoina pe faʻafefea ona foia ou faʻafitauli ma totogi se totogi i le taimi nei, o le ae mauaina se tali faʻaoga i mataupu uma. Ioe, e iai ni mea le lelei. O i matou, i le avea ai ma tagata e fa'atau mai fafo, e le mafai ona fa'aaofia ma vave tali atu i suiga. Ae e tele a matou tomai ma faiga masani. Matou te faʻamautinoa i soʻo se tulaga o le a matou mautinoa vave ona iloa ma faʻatūina soʻo se Kubernetes mai le oti.

Ou te fautuaina malosi le outsourcing i amataga ma pisinisi faʻavae e oʻo atu i se tele e mafai ai ona e tuʻuina atu se 'au o le 10 tagata i gaioiga, aua a leai e leai se mea. E mautinoa lava e talafeagai le outsource lenei.

E uiga ia Amazon ma Google

- E mafai e se talimalo mai se fofo mai Amazon poʻo Google ona manatu o se outsource?

Dmitry: Ioe, ioe, o lenei mea e foia ai le tele o mataupu. Ae toe iai foi nuances. E manaʻomia pea ona e malamalama i le faʻaaogaina. Mo se faʻataʻitaʻiga, o loʻo i ai le afe o mea laiti i le galuega a le Amazon AWS: e tatau ona faʻamafanafanaina le Load Balancer poʻo se talosaga e tatau ona tusia muamua e faapea "sole, o le a matou maua fefaʻatauaiga, faʻamafanafana le Load Balancer mo i matou!" E tatau ona e iloa nei nuances.

A e liliu atu i tagata e faʻapitoa i lenei mea, e toetoe lava a tapunia mea masani uma. O lea ua 40 a matou inisinia, e oo atu i le faaiuga o le tausaga masalo e 60 - ua mautinoa ua matou fetaiai ma nei mea uma. E tusa lava pe tatou te toe fetaiaʻi ma lenei faʻafitauli i nisi o poloketi, e vave ona tatou fesili le tasi i le isi ma iloa le auala e foia ai.

Masalo o le tali - o le mea moni, o se tala talimalo e faafaigofieina ai se vaega. O le fesili pe ua e sauni e faʻalagolago i nei tagata talimalo ma pe o le a latou foia ou faʻafitauli. Amazon ma Google ua lelei. Mo a tatou mataupu uma - tonu. E le o toe maua ni a matou aafiaga lelei. O isi ao uma na matou taumafai e galulue faʻatasi ma le tele o faʻafitauli - Ager, ma mea uma o loʻo i Rusia, ma ituaiga uma o OpenStack i faʻatinoga eseese: Headster, Overage - soʻo se mea e te manaʻo ai. E fa'atupu uma fa'afitauli e te le mana'o e fo'ia.

O le mea lea, o le tali o le ioe, ae, o le mea moni, e le tele ni fofo faʻafeiloaʻi matutua.

O ai e mana'omia Kubernetes?

— Ae ui i lea, o ai e manaʻomia Kubernetes? O ai ua tatau ona sui i Kubernetes, o ai le tagata fa'atau Flaunt e sau fa'apitoa mo Kubernetes?

Dmitry: O se fesili manaia lenei, aua i le taimi nei, i le taimi o Kubernetes, e toatele tagata e o mai ia i matou: "Alii, matou te iloa o loʻo e faia Kubernetes, fai mo i matou!" Matou te tali atu ia i latou: "Alii, matou te le faia Kubernetes, matou te faʻamalosia ma mea uma e fesoʻotaʻi ma ia." Aua o le taimi nei e le mafai ona faia se oloa e aunoa ma le faia uma o le CI / CD ma lenei tala atoa. Ua o ese tagata uma mai le vaeluaga lea e i ai le tatou atinae e ala i le atiina ae, ona faʻaaogaina lea e ala i le faʻaaogaina.

O loʻo faʻamoemoeina e a matou tagata faʻatau mea eseese, ae o loʻo faʻatali tagata uma mo se vavega lelei e iai a latou faʻafitauli, ma o lenei - oso! — Kubernetes o le a foia i latou. E talitonu tagata i vavega. I o latou mafaufau latou te malamalama o le a leai se vavega, ae i totonu o latou agaga latou te faamoemoe - e a pe afai o lenei Kubernetes o le a foia nei mea uma mo i tatou, latou te talanoa tele i ai! Na faafuasei lava ona ia - mafatua! - ma se pulu siliva, mafatua! - ma o loʻo i ai le matou 100% uptime, e mafai e le au atinaʻe uma ona tuʻuina atu soʻo se mea e maua i le gaosiga 50 taimi, ma e le paʻu. I se tulaga lautele, o se vavega!

Pe a ō mai na tagata iā i tatou, tatou te faapea atu: “Faamalie atu, ae e leai se mea e taʻua o se vavega.” Ina ia ola maloloina, e tatau ona e 'ai lelei ma faamalositino. Ina ia maua se oloa faʻalagolago, e manaʻomia ona faʻatuatuaina. Ina ia maua se CI/CD faigofie, e tatau ona e faia faapea. E tele naua galuega e tatau ona fai.

Taliina o le fesili o ai e manaʻomia Kubernetes - e leai se tasi e manaʻomia Kubernetes.

O nisi tagata e iai le manatu sese latou te manaʻomia Kubernetes. E manaʻomia e tagata, e iai so latou manaʻoga loloto e taofi le mafaufau, suʻesuʻe, ma le fiafia i faʻafitauli uma o atinaʻe ma faʻafitauli o le faʻatinoina oa latou talosaga. Latou te mananaʻo ia naʻo le galue ma faʻapipiʻi talosaga. Mo i latou, o Kubernetes o le faʻamoemoe o le a latou taofi le faʻalogo i le tala "sa matou taoto ai iina," poʻo le "e le mafai ona taʻavale i fafo," poʻo se isi mea.

E masani ona sau le faatonu faʻapitoa ia i matou. Latou te fesili ia te ia i mea e lua: i le tasi itu, tuʻu mai ia i tatou foliga, i le isi itu, mautu. Matou te fautua atu ia e ave i ou luga ma fai. O le pulu siliva, poʻo le faʻapipiʻi siliva, o le ae le toe mafaufau i nei faʻafitauli ma faʻaumatia taimi. O le a iai ni au tagata fa'apitoa e tapunia lenei mataupu.

E le sa'o le fa'aupuga e mana'omia e i matou po'o se isi lava Kubernetes.

E matua mana'omia lava e le au pulega Kubernetes, aua ose meata'alo manaia tele e mafai ona e ta'alo ma ta'alo ai. Tatou fa'amaoni - e fiafia tagata uma i meataalo. O i matou uma o tamaiti i se mea, ma a matou vaʻai i se mea fou, matou te mananaʻo e taʻalo. Mo nisi, ua faʻavaivaia lenei mea, mo se faʻataʻitaʻiga, i le pulega, ona ua uma ona latou taʻalo ma ua uma ona vaivai i le tulaga latou te le manaʻo ai. Ae e le o matua leiloa atoa i se tasi. Mo se faʻataʻitaʻiga, afai ua ou vaivai i meataalo i le vaega o le pulega o le polokalama ma DevOps mo se taimi umi, ona ou fiafia ai lea i meataalo, ou te faʻatau pea ni mea fou. O tagata uma, i se tasi itu poʻo se isi, o loʻo manaʻo pea i se ituaiga meataalo.

E le manaʻomia le taʻalo ma le gaosiga. Po o le a lava le mea ou te fautuaina malosi e aua le faia ma le mea ua ou vaʻaia i le taimi nei: "Oi, se meataalo fou!" — na latou taufetuli e faatau, faatau ma: “Ta ave nei i le aoga ma faaali atu i a tatou uo uma.” Aua le faia lenei mea. Ou te faamalulu atu, o laʻu fanau o loʻo tutupu aʻe, ou te vaʻaia pea se mea i tamaiti, matauina ia te aʻu lava, ona faʻasalalau atu lea i isi.

O le tali mulimuli o le: e te le manaʻomia Kubernetes. E tatau ona e foia ou faafitauli.

O mea e mafai ona e ausia o le:

  • e le pa'u le tui;
  • e tusa lava pe taumafai o ia e paʻu, ua tatou iloa muamua, ma e mafai ona tatou tuu i ai se mea;
  • e mafai ona tatou suia i le saoasaoa e manaʻomia ai e la tatou pisinisi, ma e mafai ona tatou faia ma le faigofie; e le mafua ai ni faʻafitauli.

E lua mana'oga moni: fa'atuatuaina ma le fa'aolaola/fetuuna'i ole ta'avale. O tagata uma o loʻo faia i le taimi nei se ituaiga o poloketi IT, e tusa lava po o le a le ituaiga pisinisi - vaivai mo le faʻamalieina o le lalolagi, ma o ai e malamalama i lenei mea, e manaʻomia ona foia nei manaʻoga. Kubernetes ma le auala saʻo, ma le malamalama saʻo ma le lava le poto masani e mafai ai ona e foia.

E uiga i serverless

- Afai e te vaʻavaʻai atili i le lumanaʻi, ona taumafai lea e foia le faʻafitauli o le leai o se ulu ulu ma atinaʻe, faʻatasi ai ma le saoasaoa o le taʻavale ma le saoasaoa o suiga o talosaga, o fofo fou e aliali mai, mo se faʻataʻitaʻiga, serverless. E te lagona soʻo se mea e mafai ai i lenei itu ma, seʻi tatou fai atu, o se lamatiaga mo Kubernetes ma tali tutusa?

Dmitry: O lea e tatau ona tatou toe fai se faamatalaga e le o a’u o se tagatavaai e tepa i luma ma faapea atu-o le a faapea! E ui lava na ou faia le mea lava e tasi. Ou te tilotilo i oʻu vae ma vaʻai i le tele o faʻafitauli iina, mo se faʻataʻitaʻiga, pe faʻafefea ona galue transistors i se komepiuta. E malie, sa'o? O loʻo matou fetaiaʻi ma ni faʻalavelave i le PPU.

Fai le serverless e matua fa'atuatuaina, taugofie, lelei ma faigofie, foia uma fa'afitauli fa'anatura. O iinei ou te ioe ai ma Elon Musk e manaʻomia se paneta lona lua e fausia ai le faapalepale masei mo tagata. E ui lava ou te le iloa le mea o loʻo ia fai mai ai, ou te malamalama ou te leʻi sauni e lele i Mars aʻu lava ia ma o le a le tupu taeao.

Faatasi ai ma le leai o se server e manino lava o se mea sa'o fa'ale-aganu'u, e pei o le fa'apalepale masei mo tagata soifua - e lua paneta e sili atu nai lo le tasi. Ae fa'afefea ona fai nei? O le auina atu o se malaga se tasi e le o se faafitauli pe afai e te taulai atu i ai au taumafaiga. O le auina atu o le tele o malaga ma nofoia le faitau afe o tagata iina, ou te manatu, e moni foi. Ae o le faia atoatoa o le faapalepale ma sese ina ia nonofo ai iina le afa o tagata soifua, e foliga mai ia te au e le mafai, e le o mafaufauina.

Faatasi ai ma le serverless tasi i le tasi: o le mea e manaia, ae e mamao mai faafitauli o le 2019. Latalata i le 2030 - tatou ola e va'ai i ai. E leai soʻu masalosalo o le a tatou ola, o le a mautinoa lava tatou te ola (toe fai aʻo leʻi momoe), ae o lea e manaʻomia ona tatou foia isi faʻafitauli. E pei o le talitonu i le tala faafagogo pony Rainbow. Ioe, o le lua pasene o mataupu e foia, ma e foia atoatoa, ae o le mea moni, serverless o se nuanua ... Mo aʻu, o lenei autu e mamao tele ma e le mafai ona malamalama i ai. Ou te le o sauni e tautala. I le 2019, e le mafai ona e tusia se talosaga se tasi e leai se server.

E faʻafefea ona tupu Kubernetes

— A o tatou aga'i atu i lenei lumana'i mamao e ono matagofie, o le a sou manatu e fa'apefea ona atina'e Kubernetes ma le si'osi'omaga?

Dmitry: Ua ou mafaufau tele i lenei mea ma e iai laʻu tali manino. Muamua o le statefull - pe a uma, e leai se setete e faigofie ona fai. Kubernetes muamua na faʻafaigaluegaina atili i lenei mea, na amata uma i ai. Stateless galue toetoe lava atoatoa i Kubernetes, e leai se mea e faitio ai. O loʻo i ai pea le tele o faʻafitauli, pe sili atu, nuances. O mea uma iina ua uma ona aoga tele mo i tatou, ae o tatou lava. E le itiiti ifo ma le lua isi tausaga e galue ai mo tagata uma. E le o se faʻailoga fuafuaina, ae o loʻu lagona mai loʻu ulu.

I se faapuupuuga, e tatau ona - ma o le a - atiina ae malosi, aua oa tatou talosaga uma e teuina tulaga; e leai ni talosaga e leai ni setete. O se faʻasesega lea; e te manaʻomia i taimi uma se ituaiga o faʻamaumauga ma se isi mea. Statefull e uiga i le faʻasaʻoina o mea uma e mafai, faʻaleleia uma mea leaga, faʻaleleia uma faʻafitauli o loʻo feagai nei - taʻu o le vaetamaina.

O le maualuga o le le iloa, o le maualuga o faafitauli e leʻi foia, o le maualuga o le avanoa e fetaiai ai ma se mea o le a pa'ū tele. O se tala taua lenei. Ma tagata faʻatautaia - mea uma e fesoʻotaʻi ma le faʻavasegaina o le faʻatonuga o le pulega, pulea le faʻatonuga ina ia maua ai se auaunaga faigofie: MySQL faigofie auaunaga, RabbitMQ faigofie auaunaga, Memcache faigofie auaunaga - i se tulaga lautele, o nei vaega uma tatou te manaʻomia e faʻamautinoa e galue i fafo. le pusa. E na'o le fofoina o le tiga matou te manana'o i se fa'amaumauga, ae matou te le mana'o e fa'atonuina, pe matou te manana'o i Kubernetes, ae matou te le mana'o e fa'atonuina.

O lenei tala o le atina'eina o le aufaipisinisi i se tasi po'o se isi o le a taua i le isi lua tausaga.

Ou te manatu o le faigofie o le faʻaogaina e tatau ona faʻateleina - o le pusa o le a sili atu ma sili atu le uliuli, sili atu ma sili atu ona faʻatuatuaina, faʻatasi ai ma le sili atu ma sili atu le faigofie knobs.

Na ou faalogo muamua i se faatalanoaga tuai ma Isaac Asimov mai le 80s i luga o le YouTube i le Aso Toʻonaʻi Night Live - o se polokalama e pei o Urgant, na o le manaia. Sa latou fesili atu ia te ia e uiga i le lumanai o komepiuta. Na ia fai mai o le lumanaʻi e faigofie, e pei o le leitio. O le leitio e talia muamua o se mea lavelave. Ina ia pu'eina se galu, e tatau ona e liliu le ki mo le 15 minute, liliu le skewers ma masani ona iloa le auala e galue ai mea uma, malamalama i le fisiki o le leitio faasalalau. O le i'uga, e na'o le tasi le kipo na totoe i le leitio.

I le 2019 nei o le a le leitio? I totonu o le taavale, e maua ai e le leitio uma galu ma igoa o nofoaga. O le fisiki o le faagasologa e leʻi suia i le 100 tausaga, ae o le faigofie o le faʻaaogaina. O le taimi nei, ma e le gata i le taimi nei, i le 1980, ina ua i ai se faatalanoaga ma Azimov, sa faaaoga e tagata uma le leitio ma e leai se tasi na mafaufau pe faapefea ona galue. Sa aoga i taimi uma - o se tu'u mai.

Ona fai mai lea o Azimov o le a tutusa ma komepiuta - faigofie o le faʻaaogaina o le a faʻateleina. A'o i le 1980 sa tatau ona a'oa'oina oe e oomi fa'amau i luga o se komepiuta, e le o le tulaga lena i le lumana'i.

E i ai loʻu lagona e faʻatasi ai ma Kubernetes ma faʻatasi ai ma atinaʻe o le ai ai foi se faʻaopoopoga tele i le faigofie o le faʻaaogaina. O lenei, i loʻu manatu, e manino - o loʻo taoto i luga.

O le a le mea e fai i inisinia?

— O le a la le mea o le a tupu i inisinia ma pulega o faiga e lagolagoina Kubernetes?

Dmitry: O le a le mea na tupu i le tausitusi ina ua mavae le oʻo mai o le 1C? E tutusa lava. A'o le'i faia lenei mea, sa latou faitauina i luga o pepa - lea ua i ai nei i le polokalama. Ua fa'atupula'ia le fa'atupuina o tagata faigaluega, ae e le'i mou atu lava le galuega. Afai sa i ai muamua e 10 inisinia e viliina se matauila, o lea ua lava le tasi.

O le aofaʻi o polokalama ma le numera o galuega, e foliga mai ia te aʻu, o loʻo faʻatupulaia nei i se saoasaoa vave nai lo DevOps fou o loʻo faʻaalia ma faʻateleina le lelei. O loʻo i ai se faʻaletonu faʻapitoa i le maketi i le taimi nei ma o le a umi se taimi. Mulimuli ane, o mea uma o le a toe foʻi i se ituaiga masani, lea o le a faʻateleina ai le lelei o le galuega, o le a sili atu ma sili atu le leai o se server, o le neuron o le a faʻapipiʻiina i Kubernetes, lea o le a filifilia uma lava punaoa pe a manaʻomia, ma i se tulaga lautele o le a. fai mea uma lava, e pei ona tatau ai - na'o le la'a ese o le tagata ma aua le fa'alavelave.

Ae o le a manaomia pea e se tasi ona faia filifiliga. E manino lava o le maualuga o agavaa ma faʻapitoa o lenei tagata e maualuga. I aso nei, i le matagaluega o tausitusi, e te le manaʻomia le 10 tagata faigaluega e teu tusi ina ia le vaivai o latou lima. E matua le manaomia lava. O le tele o pepa e otometi lava ona su'eina ma iloa e le faiga fa'aeletoroni o le fa'atonutonuina o pepa. E lava le tasi suetusi sili atamai, ua uma ona i ai ni tomai sili atu, ma le malamalama lelei.

I se tulaga lautele, o le auala lea e alu ai i pisinisi uma. E tutusa lava ma taavale: muamua, sa sau se taavale ma se inisinia ma ni avetaavale se toatolu. I aso nei, o le aveina o se taavale o se faiga faigofie lea tatou te auai uma i aso uma. E leai se tasi e manatu o se taavale o se mea faigata.

DevOps poʻo faiga faʻainisinia o le a le alu ese - maualuga maualuga galuega ma le lelei o le a faʻateleina.

— Na ou faalogo foi i se manatu manaia o le a faateleina moni lava le galuega.

Dmitry: Ioe, selau pasene! Ona o le aofaʻi o polokalama matou te tusia o loʻo faʻatupulaia pea. Ole numera o fa'afitauli tatou te fo'ia i polokalame o lo'o fa'atupulaia pea. O loʻo faʻatupulaia le aofaʻi o galuega. Ole taimi nei ole maketi DevOps ua matua vevela tele. E mafai ona iloa lea i faʻamoemoega totogi. I se auala lelei, e aunoa ma le alu i auiliiliga, e tatau ona i ai le au laiti e mananao i le X, ogatotonu e mananao i le 1,5X, ma le au matutua e mananao i le 2X. Ma o lenei, afai e te vaʻai i le maketi o totogi Moscow DevOps, e manaʻo se tamaititi mai le X i le 3X ma le tagata sinia e manaʻo mai le X i le 3X.

E leai se tasi na te iloa pe fia le tau. O le maualuga o totogi e fuaina i lou talitonuina - o se fale valea atoatoa, e faʻamaoni, o se maketi matua vevela tele.

Ioe, o lenei tulaga o le a vave ona suia - e tatau ona tupu se saturation. E le o le tulaga lea i le atinaʻeina o polokalama - e ui lava i le mea moni e manaʻomia e tagata uma ni tagata atinaʻe, ma e manaʻomia e tagata uma ni atinaʻe lelei, o loʻo malamalama le maketi poʻo ai e aoga - ua nofo i lalo le pisinisi. E le o le tulaga lena i DevOps i nei aso.

— Mai mea na ou faalogo i ai, na ou manatu ai e le tatau ona popole tele le pulega o loo i ai nei, ae ua oo i le taimi e faaleleia ai ona tomai ma saunia ai mo le mea moni o taeao o le a tele atu galuega, ae o le a sili atu ona agavaa.

Dmitry: E selau pasene. I se tulaga lautele, tatou te ola i le 2019 ma o le tulafono o le olaga o lenei: aʻoaʻoga i le olaga atoa - tatou te aʻoaʻoina i o tatou olaga atoa. E foliga mai ia te aʻu o lea ua uma ona iloa ma lagona e tagata uma lenei mea, ae e le lava le iloa - e tatau ona e faia. O aso uma e tatau ona tatou sui. Afai tatou te le faia lenei mea, o le a vave pe mulimuli ane o le a tatou pa'u i tua o le galuega.

Ia saunia mo le feliuliua'i 180-tikeri. Ou te le taofiofia se tulaga e suia ai se mea, o se mea fou ua faia - e tupu. oso! - ma o lea ua tatou amio ese. E taua le nofo sauni mo lenei mea ma aua le popole. Atonu e tupu a taeao mea uma ou te faia o le a le aoga - leai se mea, ua ou suʻesuʻeina i loʻu olaga atoa ma ua ou sauni e aʻoaʻo se isi mea. E le o se faafitauli. E leai se mea e te fefe ai i le saogalemu o galuega, ae e tatau ona e saunia e aʻoaʻo i taimi uma se mea fou.

Mana'oga ma se minute o fa'asalalauga

- E i ai sou mana'oga?

Dmitry: Ioe, e tele ou mana'oga.

Muamua ma fa'atauloa - fa'asoa i YouTube. Le au faitau pele, alu i le YouTube ma lesitala i la matou auala. Pe a ma le masina o le a amata ai le faʻalauteleina o le auaunaga vitio. O le a tele a matou mataupu faʻaaoaoga e uiga i Kubernetes, tatala ma eseese: mai mea faʻatino, saʻo i lalo i fale suʻesuʻe, i mea loloto faʻavae faʻavae ma le faʻaogaina o Kubernetes i le tulaga o mataupu faavae ma mamanu.

O le mana'oga fa'atauloa lona lua - alu i GitHub ma tuu fetu aua tatou te aai ai. Afai e te le tuuina mai ia i matou fetu, o le a leai se matou mea e aai ai. E pei o le mana i se taaloga komepiuta. Matou te faia se mea, matou te faia, matou te taumafai, fai mai se tasi o nei mea o ni uila mataʻutia, o se tasi e matua sese mea uma, ae matou te faʻaauau pea ma amio faʻamaoni. Matou te vaʻai i se faʻafitauli, foia ma fefaasoaaʻi o matou poto masani. O le mea lea, aumai ia i matou se fetu, e le alu ese mai ia te oe, ae o le a oo mai ia i matou, aua matou te fafagaina i latou.

Lona tolu, taua, ma le mana'o fa'atau - soia le talitonu i tala fagogo. O outou o tagata tomai faapitoa. DevOps o se galuega e sili ona ogaoga ma faʻamoemoeina. Taofi le taalo i le fale faigaluega. Tuu atu e kiliki mo oe ma o le ae malamalama ai. Vaai faalemafaufau ua e sau i le falemai, ma o iina o loo faataitai ai oe e le fomai. Ou te malamalama o lenei mea e ono afaina ai se tasi, ae, e foliga mai, e le o oe, ae o se isi tagata. Fai atu i isi e taofi foi. O lenei mea e matua fa'aleagaina ai le olaga mo i tatou uma - e to'atele ua amata ona fai fa'agaioiga, pulega ma DevOps e pei o ni tama ua toe solia se mea. O lenei mea na "gausia" i le tele o taimi ona o le mea moni na matou o e taʻalo, ma e leʻi vaʻavaʻai ma se lagona malulu o le mea lea, ma o le mea lena.

E le faapea e le tatau ona e faataitai. E tatau ona tatou faataitai, tatou te faia e i tatou lava. O le mea moni, o nisi taimi tatou te taaalo ai i taaloga - o le mea moni, e matua leaga lava, ae leai se tagata e ese mai ia i tatou. Sei o tatou folafola atu le 2019 o se tausaga o suʻega ogaoga, mafaufau lelei, ae le o taʻaloga i le gaosiga. Masalo o lea.

- Faafetai lava!

Dmitry: Faafetai Vitaly, mo le taimi ma le faatalanoaga. Le au faitau pele, faafetai tele pe afai ua e oo faafuaseʻi i lenei tulaga. Ou te faʻamoemoe na matou aumaia ia oe ni nai manatu.

I le faatalanoaga, na paʻi atu Dmitry i le mataupu o le werf. Ole taimi nei ole naifi Swiss lautele lea e foia toetoe lava o faafitauli uma. Ae sa le faapea i taimi uma. luga DevOpsConf  i le tausamiga RIT++ Dmitry Stolyarov o le a taʻu atu ia te oe e uiga i lenei meafaigaluega i auiliiliga. i le lipoti "werf o la matou meafaigaluega mo CI / CD i Kubernetes" o le ai ai mea uma: faʻafitauli ma nuances natia o Kubernetes, filifiliga mo le foia o nei faigata ma le faʻatinoga o loʻo i ai nei o le werf i auiliiliga. Auai ma matou i le aso 27 ma le 28 o Me, matou te fatuina meafaigaluega atoatoa.

puna: www.habr.com

Faaopoopo i ai se faamatalaga