Bago ang Kubernetes LinuxPanayam kay Pavel Selivanov

Play na video

Pag-decode:
Azat Khadiev: Hello. Ang pangalan ko ay Azat Khadiev. Isa akong developer ng PaaS sa Mail.ru Cloud Solutions. Kasama ko dito si Pavel Selivanov mula sa Southbridge. Nasa DevOpsDays conference kami. Magsasalita siya tungkol sa kung paano ka makakagawa ng DevOps sa Kubernetes, ngunit malamang na mabigo ka. Bakit ganito ang mabangis na paksa?

Pavel Selivanov: Hindi naman talaga madilim. Ito ay tungkol sa katotohanan na sinusubukan naming lutasin ang maraming problema sa aming komunidad gamit ang teknolohiya. At sinusubukan naming lutasin ang mga ito sa medyo isang panig na paraan. Kubenetes, halimbawa, ay ang parehong bagay-ito ay isang bagay na Ops ay responsable para sa, maaari mong sabihin. Ngunit mayroon kaming ganitong kahanga-hangang konsepto ng isang DevOps engineer. Ang isang DevOps engineer ay responsable para sa Kubernetes. At gayon pa man... Parang, bumuo ka ng mga Kubernetes, at hindi alam ng mga Dev guys ang lahat ng bagay na ito ng Kubernetes, hindi nila alam kung ano ang pinapayagan nitong gawin mo—at lahat ay gumagana nang eksakto sa kanila. At ito ay sa kabila ng katotohanan na ang Kubernetes ay naglalaman ng mga handa na solusyon, mga handa na tool para sa paggamit ng teknolohiyang ito upang mapalawak ang DevOps na diskarte, komunikasyon sa pagitan ng Dev at Ops. Napakakaunti lang nating ginagamit ang pagkakataong ito. Sa pamamagitan ng paglipat kahit sa aming mga kasalukuyang istruktura sa lahat ng tool na ito ng DevOps—Docker, Kubernetes, clouds, at iba pa—pinalala pa namin ang sitwasyong ito. At nagsisimula na kaming gumamit ng mga tool sa mga paraan na hindi nila nilayon na gamitin. At ang lahat ng mga teknolohiyang ito ay binuo sa paligid ng ilang tunay na nakakatakot na saklay.

Azat Khadiev: Nakikita ko. Parang malawak na paksa. Ano sa palagay mo ang pinakakaraniwang problemang kinakaharap ng mga kumpanya ngayon? Sa Kubernetes.

Pavel Selivanov: Ang pinakakaraniwang problema sa Kubernetes ay kakulangan ng kadalubhasaan. Ito ay isang karaniwang problema sa IT. Palaging may kakulangan ng mga espesyalista. Palaging may kakulangan sa kadalubhasaan. At sa ngayon, sa Kubernetes, may kakulangan sa mga kasanayan. Samantala, may kakaunting handa na solusyon sa merkado na magbibigay-daan sa isang tao na makakuha ng Kubernetes nang walang kinakailangang kadalubhasaan. At ang mga umiiral, lahat sila ay nagtataas ng ilang mga katanungan. Sa Kubernetes, patuloy kaming naghahanap ng mga taong nakakaunawa nito. Sinusubukan naming pagbutihin ang aming pag-unlad upang mapaunlakan ito.

Azat Khadiyev: At dahil sa kasalukuyang kakulangan ng talento sa IT. Na laging umiiral at umiiral pa rin. Sa palagay mo, paano tayo mabubuhay sa ganitong mga kondisyon? Ano ang ilang mga hack sa buhay?

Pavel Selivanov: Lifehacks. Una, mula sa isang cloud perspective, ganito ang hitsura ng isang lifehack: bigyan natin kami ng ilan sa iyong mga kakayahan. At kukunin natin sila para sa ating sarili. At haharapin natin ito sa loob. At iyon ay mabuti at mabuti. Maliban sa mahalagang maunawaan para sa mga gumagamit nito... Sa totoo lang, ito ay isang kahanga-hangang punto... Ngunit mahalagang maunawaan na sa pamamagitan ng pagbibigay ng ilan sa iyong mga kakayahan sa isang cloud o isang provider, nakakakuha kami ng pangkalahatang layunin na solusyon bilang kapalit. Sa halos pagsasalita, mayroon kaming isang database na gumagawa ng mga partikular na bagay, at ito ay napaka partikular na na-configure. Sa pamamagitan ng paglilipat ng database na ito sa cloud, maaari naming, siyempre, paalisin ang administrator na dating namamahala sa mga cluster ng database—Gagawin ito ng Amazon o Google para sa amin. Ngunit sa parehong oras, hindi kami papayagan ng Amazon o Google na tumpak na i-configure ang aming database. Malalaking proyekto, malalaking kumpanya—hindi maiiwasang gumamit sila ng mga solusyon sa ulap sa isang punto ng kanilang buhay, at pagkatapos ay hindi maiiwasang bumalik sa pagkuha ng mga kakayahan pabalik sa loob ng bahay dahil kailangan ang mas tiyak na mga kasanayan.

Azat Khadiev: Ang mga unibersal na solusyon ba ay masama, o maaari ba silang magamit upang bumuo ng higit pa?

Pavel Selivanov: Hindi, ang mga unibersal na solusyon ay tiyak na hindi masama. Ang mga unibersal na solusyon ay mabuti. Ang mga unibersal na solusyon lang... unibersal. Mahalagang maunawaan ito. Ito ay tulad ng pagkuha ng isang pangkalahatang script... Kung maaari mong buuin ang operating logic ng buong kumpanya sa paligid ng pangkalahatang script na ito, ang pangkalahatang application na ito, kung gayon iyon ay mahusay. Ngunit kung ang operating logic ay iba, ngunit kinuha mo ang unibersal na solusyon na ito, ang unibersal na script na ito, at simulang subukang ibagay ang lahat ng ito sa iisang globo, masama iyon. At walang mali sa unibersalismo sa sarili nito.

Azat Khadiev: Kung ang admin na ito ay nagtatrabaho na para sa iyo, hindi isang bagay na sibakin siya. Mas marami pa siyang magagawa.

Pavel Selivanov: Oo, alisin ang nakagawian at ibigay ito sa ibang tao upang gawin sa ibang lugar. Tiyak na magandang diskarte iyon. Ang mahalagang bagay dito ay kung ang karaniwang solusyon na ito ay angkop para sa isang partikular na kaso.

Azat Khadiev: Batay sa aking karanasan, nakikita ko na maraming kumpanya ang gumagawa ng parehong bagay. Nagse-set up sila ng Kubernetes cluster at nag-iisip tungkol sa pag-scale nito. At lahat ng mga operasyong ito ay paulit-ulit.

Pavel Selivanov: Oo, talagang. Lalo na dahil, kung partikular na gagamitin natin ang Kubernetes, mayroong isang tunay na kakulangan ng malalim, mahusay na kaalaman tungkol sa Kubernetes sa merkado sa ngayon. Ang Kubernetes ay isang napakalaking software package na kung kukuha ka nito, maging handa na kumuha ng full-time na inhinyero para magtrabaho dito. At mahal iyon. At mahirap maghanap ng ganyang engineer. Sa pagsasalita para sa aking sarili, hindi ako isang malaking tagahanga ng mga cloud-based na solusyon dahil mayroon akong medyo mahusay at malalim na pag-unawa sa kung paano gumagana ang Kubernetes. At madalas kong nalaman na ang mga cloud-based na solusyon ay kulang sa functionality na hinihiling ko, at sinasabi nila sa akin, "Hindi, hindi ito posible." Well, sa kasong iyon, pasensya na, ngunit mas magagawa ko kaysa sa cloud-based na mga solusyon. Ngunit sa parehong oras, kung wala kang isang full-time na engineer at ayaw mong magbayad para sa isa upang mahawakan ang Kubernetes, at patuloy kang nagbabayad sa kanila ng maraming pera para lamang mag-eksperimento, kung gayon ang cloud ay isang mahusay na solusyon. Kasi at least yung mga nagtatrabaho doon ay na-hire na ng provider. At alam nila ang kanilang ginagawa. At ang mga pangunahing bagay na kailangan mo sa araw-araw ay naroon.

Azat Khadiev: Ano sa palagay mo ang kasalukuyang estado ng Kubernetes? Ano ang magiging hitsura nito sa loob ng lima o sampung taon?

Pavel Selivanov: Magandang tanong. Alam ko lang kung ano ang nangyayari sa ating komunidad tungkol dito. Naniniwala ang ilang tao na wala nang matitira maliban sa Kubernetes. Ang sitwasyon na nangyari sa Linux noong unang panahon. Iyon ay, sa labas Linux May mga taong nakatira sa BSD, malamang na mayroon silang mga partikular na gawain. May mga taong nagtatrabaho sa ilalim ng Windows — Mga Windows server — malamang na mayroon din silang mga partikular na gawain, o sadyang may kadalubhasaan lang sila sa larangang ito at hindi pa handang umalis doon. Sa anumang kaso, ang pamantayan sa ating industriya ay LinuxMay persepsyon na ang Kubernetes ang magiging de facto standard, at wala nang iba pang iiral. Pamamahalaan ng Kubernetes hindi lamang ang mga application, ang kanilang deployment, deployment, at scaling. Pamamahalaan nito ang lahat. Nagtatanong na ngayon ang mga tao, "Posible bang maglagay ng database sa Kubernetes?" Karaniwan kong sinasabi na ang isyu rito ay hindi ang Kubernetes, kundi ang Docker. Kung handa ka nang patakbuhin ang iyong database sa mga container, paano ito gagana? Sinasabi nila sa akin, "Hindi, hindi, hindi, sandali. Hindi mo kailangan ng mga container. Kailangan mo ng Kubernetes. Ikakabit namin ito sa node. Kaya ang lahat ay magiging katulad ng mayroon tayo ngayon, tanging ang Kubernetes lamang ang mamamahala sa lahat ng ito." At isa itong magandang ideya. Kaya, ang Kubernetes ay yung tipong bagay na nagbibigay-daan sa iyong pumunta sa isang kumpanya, kung ang kumpanya ay may Kubernetes at mga proseso nito na nakabatay dito, kung gayon ang isang taong nakakaintindi nito ay maaaring gumugol ng ilang araw sa pagtatrabaho dito at sabihing, "Handa akong suportahan ka. Lubos. Sa lahat ng paraan. Naiintindihan ko kung paano gumagana ang lahat para sa iyo." Hindi tulad ng mga pamamaraang walang Kubernetes—nagsagawa sila ng isang hack, pagkatapos ay isa pa. Narito ang Ansible, narito ang Terraform. May sumulat ng lahat ng ito, at inaabot ng anim na buwan para malaman ito. Kaya, hindi ko alam kung ang Kubernetes ay magiging de facto na pamantayan. Sa kasalukuyan, mukhang mas ambisyoso at mas may kumpiyansa ito kaysa sa mga solusyon sa paligid nito.

Azat Khadiev: Bueno, paghahambing sa Linux Medyo matapang ito. Tumatakbo ito sa iisang makina—iyon lang. Ngunit ang Kubernetes ay tumatakbo sa maraming makina. Isang milyong baryasyon at dahilan ang agad na lumilitaw. Oo, matapang ito. Ngunit isipin na ang paradigma na ito ay may mga kakumpitensya. Halimbawa, Serverless. Nasa panganib ba ang Kubernetes laban sa mga ganitong kakumpitensya?

Pavel Selivanov: Mula sa Serverless... (tawa) Serverless - naiintindihan pa rin namin iyan server Mayroon nga naman. Kamakailan lang ay may narinig akong ulat tungkol dito. Sabi ng lalaki roon, may mga server nga raw—at iyon ang cloud. Pero dapat nating laging intindihin na mayroon ding mga server ang cloud. May mga totoong hardware server, isang rack, at naka-install ang mga ito sa kung saan. Iyon ang cloud. Bukod pa riyan, mayroon ding Serverless, kung saan mga server "Hindi." Kaya ang tanong ay, mananalo kaya ang Serverless laban sa Kubernetes? Sa tingin ko, lilipat ang Serverless sa Kubernetes. Para sa mga provider na nag-aalok ng Serverless, ang Kubernetes ay isang napaka-kombenyenteng plataporma para dito. Oo, marahil sa isang punto ay titigil na tayo sa pag-uusap tungkol sa Kubernetes bilang isang karaniwang tool sa pagbuo ng aplikasyon sa negosyo. Ngunit sa kaibuturan ng mundo, magkakaroon na ng Kubernetes ang mga provider at engineer, kung saan ipapatupad ang lahat ng ito.

Azat Khadiev: Sa isang bahagyang naiibang paksa. Mayroong ganitong konsepto ng isang full-stack engineer. Ano ang tingin mo sa kanila? Nag-e-exist din ba sila?

Pavel Selivanov: Um... Isang fullstack na inhinyero... Well, sa tingin ko sulit na makilala ang mga bagay na ito... Alam mo, mayroong isang bagay bilang mga taong hugis T. Kailangan ba ang mga ganitong tao sa industriya ngayon? Oo, talagang kailangan sila. Kailangan natin ng mga taong may malawak na pananaw, ngunit mga espesyalista rin sa isang makitid na larangan. At ang isang fullstack engineer ay ang parehong bagay dito-isang taong gumagawa ng lahat. Mula sa front-end na pag-unlad, sa pagsubok, sa backend, sa mga server, at lahat ng iba pa. Hindi ako naniniwala na sa isang malaking kumpanya, magagawa ng isang tao ang lahat ng ito nang walang makitid na espesyalisasyon sa bawat parameter. Ngunit sa parehong oras, ang pagkakaroon lamang ng isang makitid na espesyalisasyon, tulad ng, "Wala akong alam tungkol sa kung ano ang nangyayari sa paligid dito," ay hindi rin gumagana sa modernong mundo. Kaya dito ko sasabihin... Itatapon ko ang salitang "fullstack." Kailangan talaga namin ng mga engineer. Kailangan namin ng DevOps. May pakiramdam ako na malapit na nating muling isaalang-alang ang puntong ito. At hindi na sila kakailanganin.

Azat Khadiev: Maaari mo bang ibunyag ito?

Pavel Selivanov: Sa palagay ko ay aabot tayo sa isang punto sa industriya kung saan ang mga tungkulin ng Dev at Ops na ito ay malapit nang maging lipas. Kung kailangan namin ng mga espesyalista at kami ay nangangaso... Kailangan namin ng ganitong uri ng developer, kailangan namin ng ganoong uri ng administrator, kailangan namin ng mga DevOps engineer—mayroon na kami ngayon, at sa lalong madaling panahon magkakaroon din kami ng mga production engineer at SRE engineer. Bagaman, sa katotohanan, ang kailangan natin ay mga inhinyero na gusto nating kunin. Ang background ay higit na hindi mahalaga. Dahil... Halimbawa, sinasabi ng mga SRE na ang mga problema sa imprastraktura ay palaging nauugnay sa software. Kaya... Mag-hire tayo ng mga developer—mula sa pananaw na ang isang developer ay isang engineer—at ilagay sila sa departamento ng suporta, at lulutasin nila ang mga problemang ito sa parehong paraan kung paano nila nireresolba ang mga problema sa negosyo gamit ang code, na may engineering per se.

Azat Khadiev: At mula sa puntong ito ng pananaw... Paano pakikipanayam ang mga naturang inhinyero?

Pavel Selivanov: Ah, magandang tanong iyan. Malamang ay lampas na ito sa aking pagkaunawa sa mundong ito. Pero magbibigay lang ako ng isang halimbawa. Wala itong kinalaman sa panayam. Tungkol ito sa ating sistema ng edukasyon sa Russia. Sa IT, alam natin na ang ating sistema ng edukasyon sa Russia ay napakaluma na para sa mundo ng IT; hindi ito ang dapat na maging ganito. Ang tinutukoy ko ay ang malawak na Russia, sa karaniwan, at kung ano ang nangyayari doon. May mga taong nagtatapos na talagang hindi pa handang pumasok sa web development o isang tech company kinabukasan pagkatapos ng graduation. At iniisip nila na masama iyon. Tinuturuan natin sila ng ilang kakaibang bagay, kahit na dapat ay tinuturuan natin silang paunlarin ang mga ito para sa Android, para sa iOS, kung paano gamitin ang Git at lahat ng bagay na iyon. Sa totoo lang, parang hindi. Ang kolehiyo ay isang panahon kung saan ang iyong mga magulang ay halos nagbabayad para sa iyo. Sa buong buhay mo. At maaari mong ilaan ang limang taon ng iyong buhay sa malalim na pag-aaral. At sa pag-aaral ng buong bagay na hugis-T na ito. Kapag maaari kang mag-aral sa kolehiyo kung ano ang isang version control system, kung ano ang mga pattern ng pag-unlad, kung paano subukan ang lahat ng bagay na ito, kung ano ang mga database at load balancer. At kapag pumasok ka sa trabaho, nagsisimula kang sumisid nang mas malalim sa isang partikular na lugar. At ganoon tayo nakakakuha ng mga inhinyero. At ang ating sistema ng edukasyon sa Russia ay mas malapit sa katotohanang ito kaysa sa iniisip natin. Binibigyan tayo ng mahusay na pagsasanay sa matematika, mahusay na pagsasanay sa algorithm, binibigyan tayo ng ilang pag-unawa sa mga programming language. At tungkol sa mga panayam, sa palagay ko ay may katulad nito. Kailangan nating kapanayamin ang mga inhinyero. Kailangan natin ang itaas na bahagi ng T sa isang estudyanteng hugis-T. Dahil makukuha nito ang patayong linya ng T.

Azat Khadiev: Oo, ito ay kawili-wili. Sa loob ng limang taon pagkatapos ng kolehiyo, naisip ko na ang aking pag-aaral ay kakaiba at hindi sapat. Ngunit nang maglaon, habang umuunlad ang aking trabaho, nang ang mga gawain ay naging mas kumplikado at ang mga proyekto ay mas malaki, natanto ko na, hindi, ako ay tinuruan ng mga napakahalagang bagay. Pavel, salamat. Napaka-interesante na marinig ang iyong mga sagot. Makinig tayo sa iyong ulat.

Pavel Selivanov: Salamat.

Pinagmulan: www.habr.com

Bumili ng maaasahang pagho-host para sa mga site na may proteksyon ng DDoS, mga server ng VPS VDS 🔥 Bumili ng maaasahang website hosting na may proteksyon ng DDoS, VPS VDS servers | ProHoster