
Shkurtim:
Azat Khadiyev: Mirë se vini. Unë quhem Azat Khadiyev. Jam zhvillues në departamentin PaaS të Mail.ru Cloud Solutions. Më i pranishëm këtu është Pavel Selivanov nga kompania Southbridge. Jemi në konferencën DevOpsDays. Ai do të bëjë një referat mbi mundësitë e ndërtimit të DevOps me Kubernetes, por ndoshta nuk do të funksionojë për ju. Pse një temë kaq pesimiste?
Pavel Selivanov: Në fakt, ajo nuk është kaq pesimiste. Ajo flet për problemet që përpiqemi t'i zgjidhim në komunitetin tonë përmes teknologjive. Dhe ne përpiqemi t'i zgjidhim ato në mënyrë mjaft njëanshme. Kubernetes, po ashtu, është një sistem që është përgjegjës, mund të thuash, për Ops. Por kemi një koncept të shkëlqyer: Inxhinier DevOps. Këtu përgjegjës për Kubernetes është inxhinieri DevOps. Ndërsa… Tipikisht ju krijoni Kubernetes, ndërsa djemtë e Dev nuk janë në dijeni për të gjitha këto kubernetes, nuk e dinë se çfarë lejon të bësh — dhe gjithçka për ta jeton në të njëjtën mënyrë. Dhe këtë pavarësisht se Kubernetes përmban zgjidhje të gatshme, mjete të gatshme për të përdorur këtë teknologji për të shpërndarë këtë qasje DevOps, komunikimin midis Dev dhe Ops. Ne përdorim shumë pak këtë mundësi. Pavarësisht se struktura aktuale përkthehet mbi të gjitha këto mjete DevOps — Docker, Kubernetes, cloud etj. — ne e përkeqësojmë edhe më shumë këtë situatë. Dhe fillojmë të përdorim mjete që nuk janë menduar për mënyrën si po i përdorim. Rreth të gjitha këtyre teknologjive janë ndërtuar thjesht mbështetje të frikshme.
Azat Khadiyev: E qartë. Ndjehet se tema është e gjerë. Si mendon, cila është problemi më i zakonshëm që kanë kompanitë tani? Me Kubernetes.
Pavel Selivanov: Problemi më i zakonshëm me Kubernetes është mungesa e kompetencave. Në IT kjo është një problem i zakonshëm. Mungojnë gjithmonë specialistët. Mungojnë gjithmonë kompetencat. Dhe tani me Kubernetes shumë kompetenca mungojnë. Përveç kësaj, ka shumë pak zgjidhje 100% të gatshme në treg që mundësojnë që të kesh Kubernetes pa pasur kompetencat e nevojshme. Dhe ato që ekzistojnë, ngjallin shumë pyetje. Vazhdimisht jemi në kërkim të njerëzve që kuptojnë Kubernetes. Po përpiqemi të tërheqim zhvillimin për këtë.
Azat Khadiyev: Considering the current staff shortage in IT, which has always existed and is still present, how do you think one can navigate these conditions? What are some life hacks?
Pavel Selivanov: Life hacks. Firstly, from the perspective of the cloud, a life hack looks like this—why don't you transfer part of your competencies to us? We'll take them and manage them internally. And that's all good. Except for the fact that it's important for those who use this... It's actually a great moment... But it's crucial to understand that by giving away part of your competencies to the cloud or provider, we receive a universal solution in return. To put it bluntly, we may have a database that performs very specific tasks, and it was configured very specifically. By moving this database to the cloud, we can certainly let go of the admin who used to manage the database clusters—Amazon or Google will do it for us. However, the same Amazon or Google won’t allow us to configure our database precisely. Large projects, large companies eventually find themselves using cloud solutions at some stage of their existence and then inevitably return to reclaim their competencies because more specificity is needed.
Azat Khadiyev: Are universal solutions bad, or can more be built on their foundation?
Pavel Selivanov: No, universal solutions are certainly not bad. Universal solutions are good. They are just universal. It's important to understand this. It's like taking a general script… If you can build the entire operational logic of a company around this general script and its common applications—then that’s great. But if the logic is different, and you take this universal solution, this universal script, and start to force it into a different context, that’s bad. There’s nothing inherently wrong with universalism.
Azat Khadiyev: If this admin is already working for you, the issue is not his dismissal. He will simply be able to accomplish more.
Pavel Selivanov: Yes, taking away the routine from him to hand it over to someone else, so that it can be done elsewhere, is undoubtedly a good approach. An important point here is whether this standard solution fits the specific case.
Azat Khadiev: Simple based on my experience, I see that many companies are engaged in the same activities. They set up a Kubernetes cluster, thinking about its scaling. And all these operations are very repetitive.
Pavel Selivanov: Yes, absolutely. Especially since if we take Kubernetes specifically, there is a point that deep, good knowledge of Kubernetes is currently really scarce in the market. And Kubernetes is such a gigantic constructor that if you bring it into a company, be ready to also bring in an engineer who will work full-time on it. And that’s expensive. And that engineer can be hard to find. If I talk about myself, I don’t really like cloud solutions because I understand very well and deeply how Kubernetes works. And often, in the clouds, I lack certain functionalities that I request — and I’m told "No, that’s not possible." Well, in that case, sorry, but I can do better than the cloud. But at the same time, if you don’t have a full-time engineer, and you don’t want to pay for the engineer who manages Kubernetes, and you’re constantly paying him a lot just for experimentation, then the cloud is simply a great solution. Because at least there are guys there whom the provider has already recruited. And they know what they are doing. And the basic things you need on a daily basis are there.
Azat Khadiev: What do you think about the current state of Kubernetes? What will happen to it in five and ten years?
Pavel Selivanov: Kjo është një pyetje e mirë. Thjesht e di se çfarë po ndodh në komunitet për këtë çështje. Disa njerëz besojnë se, përveç Kubernetes, nuk do të mbetet gjë tjetër. Situata që ndodhi prej kohësh me Linux. Pra, jashtë Linuxit ka njerëz që jetojnë në BSD, të cilët ka shumë të ngjarë të kenë detyra mjaft specifike. Ka njerëz që punojnë nën Windows — serverë Windows — të cilët gjithashtu ka shumë të ngjarë të kenë detyra specifike, ose thjesht kanë kompetencën në këtë fushë dhe nuk janë të gatshëm të largohen nga aty. Në çdo rast, standardi në fushën tonë është Linux. Ka mendime që Kubernetes do të bëhet një standard de facto, dhe përveç Kubernetes nuk do të ketë asgjë tjetër. Kubernetes do të menaxhojë jo vetëm aplikacionet, por edhe shpërndarjen, implementimin, shkallëzimin. Në fakt, tani po pyesin: "A është e mundur që në Kubernetes të futet një bazë të dhënash?" Unë zakonisht them se këtu nuk është çështja në Kubernetes, por në Docker. Nëse jeni të gatshëm që baza juaj e të dhënave të punojë në kontejnerë, si do të punojë ajo. Më përgjigjen: "Jo-jo-jo, prisni. Në kontejnerë nuk është e nevojshme. Duhet në Kubernetes. Ne do ta lidhim atë me nodin. Pra, gjithçka do të jetë siç është tani, veçse do të menaxhohet nga Kubernetes." Dhe në të vërtetë, kjo është një ide e mirë. Pra, Kubernetes është një gjë e tillë, kur mund të shkosh në kompani, nëse në kompani ka Kubernetes dhe procese të ndërtuara mbi të, atëherë një person që e njeh këtë do të mjaftonte të shikonte për disa ditë për të thënë: "Jam i gatshëm t'ju mbështes. Në tërësi. Plotësisht. E kuptova se si funksionon çfarë keni këtu." Në krahasim me qasjet pa Kubernetes — këtu janë disa mbështetje të shtyra, këtu janë disa mbështetje të tjera. Këtu është Ansible, këtu është Terraform. Disa i kanë shkruar këto, dhe duhet gjashtë muaj për t'u kuptuar. Pra, nëse Kubernetes do të bëhet standardi de facto, nuk e di. Në ditën e sotme, ai duket shumë më ambicioz dhe i sigurt se zgjidhjet që janë përreth tij.
Azat Khadiyev: Po, krahasimi me Linux është mjaft guximshëm. Ai funksionon në një makinë — dhe kaq. Ndërsa Kubernetes funksionon në shumë makina. Menjëherë lindin milion variacione, arsye. Po, kjo është guximshme. Thjesht nëse merret parasysh se ka konkurrentë për këtë paradigmë. Për shembull, Serverless. A është Kubernetes në rrezik përballë këtyre konkurentëve?
Pavel Selivanov: Nga Serverless… (qesh) Serverless — ne kemi gjithmonë një kuptim se сервера ndoshta ekziston. Kam dëgjuar kohët e fundit një prezantim në lidhje me këtë. Diku, një njeri tha se serverët ndihmonin me të vërtetë — dhe kjo është cloud. Por gjithmonë duhet të kuptojmë se në cloud — ka gjithashtu serverë. Ka serverë realë metalik, rafte, dhe ato janë diku të vendosura. Kjo është cloud. Mbi të, ekziston Serverless, ku serverësh nuk ka. Prandaj, a do të dalë fitues Kubernetes Serverless? Më duket se Serverless do të zhvendoset në Kubernetes. Për ofruesit që ofrojnë Serverless, Kubernetes është një platformë shumë praktike për ta ofruar këtë. Po, ndoshta, në një moment, ne do të ndalojmë së foli për Kubernetes në përgjithësi, si për zhvillimin normal të aplikacioneve biznesore. Por diku thellë, për ofruesit dhe inxhinierët, Kubernetes do të jetë aty, ku gjithçka do të realizohet.
Azat Khadiev: Një temë pak ndryshe. Ka një koncept të tillë si inxhinier fullstack. Çfarë mendon për ta? A ekzistojnë në të vërtetë?
Pavel Selivanov: Em… Inxhinier fullstack… Më duket se duhet të ndarim këto gjëra në lidhje me... E di, ka një gjë, si njerëz me formë T. A janë të nevojshëm këta njerëz në industrinë e sotme? Po, pa dyshim, na nevojiten njerëz që kanë një horizont të gjerë, por për më tepër janë specialistë në një fushë të ngushtë. Dhe këtu inxhinieri fullstack është të njëjtën gjë — një person që bën gjithçka. Duke filluar nga zhvillimi i frontend-it, testimi, backend, serverët dhe gjithçka tjetër. Nuk besoj se në një kompani të madhe një person mund ta bëjë këtë pa specializime të ngushta në secilin nga këta parametra. Por po ashtu, thjesht duke pasur një specializim të ngushtë, siç ndodh rreth kësaj gjëje, nuk di asgjë — kjo gjithashtu nuk funksionon në botën moderne. Pra, këtu do të thosha... do ta lija fjalën Fullstack. Na nevojiten inxhinierë shumë. Na duhen DevOps. Kam ndjesinë se së shpejti do ta rishikojmë këtë moment. Dhe ata do të bëhen të panevojshëm.
Azat Khadiev: A mund të shpjegosh më shumë?
Pavel Selivanov: Më duket se industria jonë do të arrijë në atë pikë që këto role Dev dhe Ops do të zhduken së shpejti. Nëse na duhen specialistë dhe ne jemi duke kërkuar... Duhet një programues i tillë, na duhen administratorë të tillë, na duhen inxhinierë DevOps — tani i kemi, do të shfaqen edhe inxhinierët e prodhimit, inxhinierët SRE. Sidoqoftë, ajo që na nevojitet në të vërtetë janë inxhinierët që duam të punësojmë. Pasuria e tyre nuk është aq e rëndësishme. Sepse... Për shembull, SRE thotë se problemet e infrastrukturës gjithmonë janë softuerike. Dhe çfarë... Le t'i marrim programuesit — nga pikëpamja që programuesi është inxhinier — t'i vendosim ata në departamentin e mbështetjes dhe ata do të zgjidhin këto probleme ashtu siç zgjidhin problemet e biznesit me anë të kodit, me anë të inxhinierisë, si të tillë.
Azat Khadiev: Dhe nga ky këndvështrim... Si të intervistojmë këta inxhinierë?
Pavel Selivanov: Oh, that’s a good question. It is probably beyond what I understand in this life. But I can give an example. It doesn't relate to the interview. It's about our education system in Russia. In IT, we know that our education system in Russia is very outdated for the IT world; it's not what it should be. I’m talking generally about vast Russia — and what happens there. People graduate who are completely unprepared to go into web development or a tech company right after graduation. And that's a problem. We teach them some strange things, whereas we should be teaching them to develop for Android, for iOS, and how to use Git and all these things. In reality, it seems like we don’t. College is a time when your parents mostly pay for you. For your entire life. And you can spend five years of your life studying in depth. And learning all this T-shaped stuff. When you can study in college what a version control system is, what development patterns there are, how to test all of this, what databases and load balancers exist. And when you start working, you begin to delve into a specific area. And in this way, we get engineers. And our education system in Russia is much closer to this truth than we think. We get good mathematical training, good algorithmic training, and some understanding of programming languages. And regarding the interview, it seems to me something close to this. We need to interview engineers. We need the upper part of the T-shaped. Because the vertical line of the T will be acquired.
Azat Khadiyev: Yes, interesting. For five years after college, I thought my education was somewhat strange and inadequate. But then, as I worked and the tasks became deeper and projects bigger, I realized that no, I was taught very important things. Pavel, thank you. It was very interesting to hear your answers. We will listen to your presentation.
Pavel Selivanov: Thank you.
Burimi: habr.com
