Kubernetes ли е новият Linux? Интервю на Павел Селиванов


Декодирането:
Азат Хадиев: Здравейте. Казвам се Азат Хадиев. Аз съм PaaS разработчик за Mail.ru Cloud Solutions. С мен тук е Павел Селиванов от Southbridge. Ние сме на конференцията DevOpsDays. Той ще говори тук за това как можете да изградите DevOps с Kubernetes, но най-вероятно няма да успеете. Защо такава тъмна тема?

Павел Селиванов: Всъщност не е мрачно. Става дума за факта, че се опитваме да разрешим много проблеми в нашата общност с помощта на технологиите. И ние се опитваме да решим нещата с помощта на технологиите по доста едностранен начин. Kubenetes е същото - това е нещото, за което отговарят, може да се каже, че Ops. Но ние имаме страхотна концепция за DevOps инженер. Инженер DevOps отговаря за Kubernetes. В същото време... Като правите Kubernetes, но момчетата от Dev изобщо не са наясно с всички тези Kubernetes, те не са наясно какво ви позволява да правите - и всичко живее абсолютно същото за тях. И това е въпреки факта, че Kubernetes съдържа готови решения, готови инструменти, за да се използва тази технология за разширяване на този DevOps подход, комуникация между Dev и Ops. Много малко използваме тази възможност. Поради факта, че дори прехвърляме текущи структури към всички тези DevOps инструменти - Docker, Kubernetes, облаци и така нататък - ние утежняваме тази ситуация още повече. И започваме да използваме инструментите по различен начин от предназначението им. И просто ужасни патерици се изграждат около всички тези технологии.

Азат Хадиев: Разбирам. Усеща се като обширна тема. Кой според вас е най-честият проблем, който компаниите имат в момента? С Kubernetes.

Павел Селиванов: Най-честият проблем при Kubernetes е липсата на компетенции. Това е често срещан проблем в ИТ. Винаги има недостиг на специалисти. Винаги липсват компетенции. И сега с Kubernetes няма достатъчно компетенции. И в същото време на пазара все още има XNUMX% готови решения, които биха ви позволили да получите Kubernetes, но в същото време нямате необходимите компетенции, има откровено малко от тях на пазара. И тези, които съществуват, всички повдигат някои въпроси. С Kubernetes непрекъснато търсим хора, които разбират това. Опитваме се да адаптираме развитието към това.

Азат Хадиев: И предвид сегашния дефицит на кадри в ИТ. Която винаги е била там. И сега има. Как мислите как да живеете при тези условия? Какви лайфхакове има?

Павел Селиванов: Lifehacks. Първо, от гледна точка на облаците, лайфхакът изглежда така - нека ни дадете някои от вашите компетенции. И ние ще ги вземем за себе си. И ние ще направим това в себе си. И всичко това е добре. Освен че е важно да се разбере за тези, които го използват... Всъщност страхотен момент... Но е важно да се разбере, че ако дадем част от компетенциите си някъде на облака или доставчика, в замяна получаваме универсално решение . Грубо казано, имаме база данни, която прави много специфични неща и е конфигурирана по много специфичен начин. Предоставяйки тази база данни в облака, ние, разбира се, можем да уволним администратора, който се занимаваше с клъстери от бази данни - същият Amazon или Google ще направят това за нас. Но в същото време Amazon или Google няма да ни позволят ясно да конфигурираме нашата база данни. Големи проекти, големи компании – така или иначе се стига до там, че в някакъв етап от живота си използват облачни решения, а след това при всички случаи се връщат към връщане на компетенциите, защото се иска нещо по-конкретно .

Азат Хадиев: Лоши ли са универсалните решения или на тяхна база могат да се градят повече?

Павел Селиванов: Не, универсалните решения определено не са лоши. Универсалните решения са добри. Просто универсални решения... универсални. Тук е важно да се разбере. Това е като да вземете общ скрипт... Ако можете да изградите цялата логика на работата на компанията около този общ скрипт, общо приложение, тогава това е страхотно. И ако логиката на работата е друга, но вземете това универсално решение, универсален сценарий - и започнете като бухал да дърпате глобус, това е лошо. И няма нищо лошо в самия универсализъм.

Азат Хадиев: Ако този админ вече работи за вас, смисълът не е в неговото уволнение. Той просто ще може да направи повече.

Павел Селиванов: Да, махнете му рутината и ги дайте някъде на някого да ги прави някъде там. Това определено е добър подход. Важен момент тук е дали това стандартно решение е подходящо за конкретен случай.

Азат Хадиев: Само въз основа на моя опит виждам, че много компании правят същото. Те създават клъстер на Kubernetes и мислят да го мащабират. И всички тези операции са много повторими.

Павел Селиванов: Да, определено. Освен това, ако вземем конкретно Kubernetes, има такъв момент, че има наистина малко задълбочени, добри познания за Kubernetes на пазара в момента. А Kubernetes е толкова гигантски конструктор, че ако го наемете за компания, бъдете готови да вземете със себе си инженер, който ще направи всичко това на пълен работен ден. И е скъпо. И пак се опитайте да намерите такъв инженер. Ако говоря за себе си, всъщност не харесвам облачни решения, защото имам доста добро и дълбоко разбиране за това как работи Kubernetes. И често в облаците просто ми липсва някаква функционалност, която поискам – но те ми казват „Не, не можеш“. Е, в такъв случай съжалявам, но мога да се справя по-добре от Cloud. Но в същото време, ако нямате инженер на пълен работен ден, не искате да плащате за този инженер, който управлява Kubernetes, и постоянно му плащате много пари само за да експериментира, тогава облакът е просто добро, страхотно решение. Защото там поне седят момчета, които доставчикът вече е наел. И знаят какво правят. И тези основни неща, от които се нуждаете всеки ден, са там.

Азат Хадиев: Какво мислите за текущото състояние на Kubernetes? Какво ще стане с него след пет и десет години?

Павел Селиванов: Добър въпрос. Просто знам какво се случва в нашата общност по този въпрос. Някои хора вярват, че няма да остане нищо освен Kubernetes. Ситуацията, която се случи с Linux преди много време. Тоест извън Linux има хора, които живеят на BSD, най-вероятно имат много специфични задачи. Има хора, които работят под Windows - Windows сървъри - най-вероятно те също имат конкретни задачи или просто имат компетентност по този въпрос и не са готови да си тръгнат оттам. Във всеки случай стандартът в нашата област е Linux. Има мнение, че Kubernetes ще стане същият де факто стандарт и няма да има нищо освен Kubernetes. Kubernetes ще управлява не само приложенията, тяхното внедряване, разгръщане и мащабиране. Като цяло управлявайте всичко. Сега те вече питат: „Възможно ли е да вкарате база данни в Kubernetes?“ Обикновено казвам, че проблемът тук не е в Kubernetes, а в Docker. Ако сте готови вашата база данни да работи в контейнери, ето как ще работи. Отговарят ми: „Не, не, не, чакай. Няма нужда от контейнери. Имате нужда от Kubernetes. Ще го присадим на възела. Тоест, всичко ще бъде както го имаме сега, само Kubernetes ще управлява всичко.” И това всъщност е добра идея. Тоест, Kubernetes е такова нещо, когато можете да дойдете в компания, ако компанията има Kubernetes и процеси, изградени върху него, тогава човек, който разбира това - той трябва само да го погледне за няколко дни, за да каже: “ Готов съм да те подкрепя. Напълно. Изцяло. Разбирам как работят нещата за вас. За разлика от подходите без Kubernetes - тук бяха набутани едни патерици, тук други патерици. Ansible тук, Terraform тук. Някой е написал всичко това и са необходими шест месеца, за да го разберем. Тук. Така че дали Kubernetes ще стане де факто стандарт, не знам. Днес той изглежда много по-амбициозен и уверен от решенията, които съществуват около него.

Азат Хадиев: Е, сравнението с Linux е доста смело. Работи на една машина - това е всичко. И Kubernetes работи на много машини. Веднага възникват милион вариации и причини. Да, смело е. Само ако вземете предвид, че има конкуренти на тази парадигма. Например без сървър. В опасност ли е Kubernetes с такива конкуренти?

Павел Селиванов: От Serverless... (смях) Serverless - все пак разбираме, че все пак има сървъри. Наскоро чух доклад по този въпрос. Там човекът каза, че все още има сървъри - и това е облак. Но винаги трябва да разбираме, че облакът също има сървъри. Има истински хардуерни сървъри, стелаж и някъде са инсталирани. Това е облакът. Освен това има сървър без сървър, където няма „никакви“ сървъри. Така че въпросът е: ще спечели ли Serverless над Kubernetes? Струва ми се, че Serverless ще се премести в Kubernetes. За доставчици, които предоставят Serverless, Kubernetes е много удобна платформа за предоставяне на това. Да, може би в един момент ще спрем да говорим за Kubernetes по принцип, като за обикновено разработване на бизнес приложения. Но някъде в дълбините доставчиците и инженерите ще имат Kubernetes, където всичко това ще бъде внедрено.

Азат Хадиев: Една малко по-различна тема. Има такова нещо като инженер с пълен стек. Какво мислите за тях? Те изобщо съществуват ли?

Павел Селиванов: Хм... Fullstack инженер... Е, струва ми се, че си струва да правим разлика между тези неща, които... Знаете ли, има такова нещо като Т-образни хора. Нужни ли са такива хора в днешната индустрия? Да, определено имаме нужда от него. Имаме нужда от хора, които имат широк кръгозор, но в същото време са специалисти в някаква тясна област. И тук инженерът на Fullstack е същият – човек, който прави всичко. Започвайки от front-end разработка, тестване, back-end, сървъри и всичко останало. Не вярвам, че в голяма компания един човек може да направи това, без да има тесни специализации по всеки от параметрите. Но в същото време, просто имайки тясна специализация, като това, което се случва около това, не знам нищо - това също не работи в съвременния свят. Тоест, тук бих казал... бих изхвърлил думата Fullstack. Наистина имаме нужда от инженери. Имаме нужда от DevOps. Имам чувството, че скоро ще преосмислим този момент. И няма да са необходими.

Азат Хадиев: Можете ли да разкриете?

Павел Селиванов: Струва ми се, че ние в индустрията ще стигнем до извода, че тези Dev и Ops роли скоро ще изчезнат. Ако имаме нужда от специалисти и търсим... Имаме нужда от такъв и такъв разработчик, имаме нужда от такива и такива администратори, имаме нужда от DevOps инженери - сега ги имаме, сега ще имаме и производствени инженери, SRE инженери. Въпреки че всъщност имаме нужда от инженери, които искаме да наемем. Предисторията като цяло не е важна. Защото... Например SRE казва, че инфраструктурните проблеми винаги са софтуерни проблеми. И така... Нека вземем разработчиците - от гледна точка, че разработчикът е инженер - сложете ги в отдела за поддръжка и те ще решат тези проблеми по същия начин, както решават бизнес проблеми с помощта на код, с помощта на инженерството като такова.

Азат Хадиев: И от тази гледна точка... Как да интервюираме такива инженери?

Павел Селиванов: О, добър въпрос. Той вероятно вече е отвъд това, което разбирам в този живот. Но бих дал само един пример. Няма нищо общо с интервюто. Става въпрос за нашата образователна система в Русия. В ИТ знаем, че нашата образователна система в Русия е много остаряла за света на ИТ, не е това, което трябва да бъде. Говоря средно за огромна Русия - и какво се случва там. Завършват хора, които абсолютно не са готови да се занимават с уеб разработка или технологична компания още на следващия ден след дипломирането. И е някак лошо. Ние ги учим на някои странни неща, въпреки че трябва да ги учим как да разработват за Android, iOS, как да използват Git и всички тези неща. Всъщност изглежда, че не. Колежът е време, когато родителите ви плащат предимно за вас. За целия си живот. И можете да посветите пет години от живота си на задълбочено изучаване. И изучавайте всичко това Т-образно. Когато можете да изучавате в института какво е система за контрол на версиите, какви модели на развитие има, как да тествате цялото нещо, какви видове бази данни и балансьори има. И когато отидете на работа, започвате да навлизате по-дълбоко в конкретна област. И така получаваме инженери. И нашата образователна система в Русия е много по-близо до тази истина, отколкото си мислим. Дадено ни е добро математическо обучение, дадено ни е добро алгоритмично обучение, дадено ни е известно разбиране на езиците за програмиране. А относно интервюто ми се струва нещо близко до това. Трябва да интервюираме инженери. Нуждаем се от горната част на Т за Т-образната форма. Защото ще придобие вертикалната линия на буквата Т.

Азат Хадиев: Да, интересно. Пет години след колежа ми се стори, че образованието ми е някак си странно и неадекватно. И след това, с напредването на работата, когато задачите станаха по-дълбоки, проектите станаха по-големи, осъзнах, че не, научиха ме на много важни неща. Павел, благодаря ти. Беше много интересно да слушам отговорите ви. Нека да чуем доклада ви.

Павел Селиванов: Благодаря.

Източник: www.habr.com

Добавяне на нов коментар