Як ми проґавили ідею DevОps як методології, та яким нині має бути DevOps-інженер

💡 Усі статті, обговорення, новини про DevOps — в одному місці. Приєднуйтесь до DevOps спільноти!

DevOps — це не професія. Це методологія, яка... бла-бла-бла-бла....

Давайте будемо відвертими, за більш ніж 15 років з того часу як відбулась доповідь «Agile Infrastructure» в Торонто та перша конференція DevOpsDays у Генті (Бельгія), термін «DevOps» де-факто так і не став методологією чи філософією, як того бажали б його ідеологи чи філософи. І можна скільки завгодно з піною у рота сперечатись що це не так, що не існує такої професії, але сотні тисяч вакансій з назвою «DevOps engineer» по всьому світу доводять нам протилежне. Тож, давайте спробуємо розібратись, чому ми все ж таки «програли» (поки що) цю битву, і чим в ідеалі, на мою думку, має займатись DevOps engineer.

Для початку, згадаємо з чого все починалось, якою була ідея, і які проблеми мала б вирішувати DevOps методологія.
Уявімо типову компанію 2008 року. Ми маємо кілька відділів (Dev, QA, Ops...), де кожен відділ займається своєю справою. Девелопери додають нові фічі, віддають їх на тестування QA, а потім Ops команда копіює файли, редагує конфіги, додає змінні, ранить скрипти, перезапускає сервери, і тому подібне.

Але в тому були проблеми: девелопери запевняли, що локально в них все працює (нічого не змінилось до сьогодні), QA жалілись що все потрібно переробити (аналогічно і зараз), а Ops команда взагалі не розуміла в який бубен потрібно вдарити, адже «продакшн оточення зовсім інше» (нічого не нагадує?). І от для вирішення цих проблем вигадали DevOps ідеологію:

  • DevOps має на меті зменшити «розрив» між командами «Dev» та «Ops», зробити їх наче одним цілим
  • Ті, хто створюють програму, повинні нести відповідальність і за її роботу в production
  • «Я написав код. Далі це проблема Ops.» змінюється на «Тепер це наша спільна відповідальність»
  • Необхідно автоматизувати все, що тільки можна автоматизувати, щоб зменшити час на розгортання і кількість помилок під час мануальної роботи

Але, натомість, після 15 років спроб покращити ситуацію концептуально нічого не змінилось — кожна команда просто «футболить м’яча» на протилежну сторону поля, перекладаючи відповідальність на інших. За ці роки команда «Ops», по суті, просто трансформувалась зі звичайних адміністраторів в адміністраторів, які все автоматизують. Треба віддати належне, що рівень такої автоматизації дійсно змінився. ЇЇ стало значно більше, як і інструментів для неї (Terraform, Ansible, Docker, K8s, Helm, Jenkins....). Це значною мірою пришвидшило time to market, але не вирішило основної проблеми — зменшення «розриву» між командами.

Чому так вийшло? Ну, по-перше, ролі людей і сфери відповідальності залишились такими ж. Хто писав код — продовжив писати код. Хто займався інфраструктурою і конфігураціями — продовжив займатись тим же. Тобто, спеціалізація і розподілення обов’язків майже не змінились (стіна між командами залишилась).


Так, існують кейси, коли в компаніях типу Google є позиція SRE engineer, де людина займається автоматизацією, бере участь в on-call чергуваннях, вміє писати код, та відповідає за роботу цього коду на продакшені. Але чи багато таких компаній? І чи багато є людей, які в змозі тримати весь цей багаж знань і зоопарк технологій в голові, одночасно виконуючи роботу декількох ролей?

Основною причиною «провалу» DevOps як методології, на мою думку, стало те, що ми зациклились на інструментах і технологіях, замість того, щоб сфокусуватись на найголовнішому — механізмах взаємодії людей та команд. Ми забули, що складна координація, залежності, та очікування іншої команди часто займає більше часу, ніж сама розробка. В гонитві за вивченням і впровадженням нових технологій та «best-practice» підходів, ми забули про те, що насправді робить команду по-справжньому сильною.

«Критикуєш — пропонуй!» ©

Щоб змінити нинішню ситуацію нам потрібно переосмислити саму суть позиції DevOps інженера (і доведеться вже визнати, що така де-факто існує).
Чим займається DevOps інженер зараз: опис і розгортання інфраструктури, налаштування конфігурацій, розробка та підтримка CI/CD, мейтененс та моніторинг цього всього.... Тобто, займається всим тим, чим НЕ займаються девелопери. А, коли у останніх все працює локально, але не працює на серверах — вони біжать до DevOps інженера, щоб той глянув/додав/змінив/пофіксив. І дуже часто буває, що в цьому болоті додавання/фіксання грузнеш настільки, що не вистачає часу на будь-які «покращення», розробку, чи технічний борг. А девелопери тим часом чекають тебе....

І от головною ідеєю цієї статті є те, що DevOps не повинен нічого дивитись/додавати/змінювати/фіксати. Натомість, його основною задачею має стати створення механізмів, за допомогою яких девелопери без труднощів можуть виконувати свою роботу. Ключ для цього — делегування та Runbook-и.

Давайте розбирати на прикладах:

Поганий кейс: девелопери приходять до тебе з проханням створити базу даних на PSQL сервері — ти кидаєш свою поточну таску, і йдеш створювати для них базу. Контекст задачі, над якою ти щойно працював — втрачений, концентрація втрачена, 10-15 хвилин на створення бази втрачено, девелопери чекають....

Хороший кейс: ти відокремив Terraform модуль (чи скрипт) для створення баз даних в окремий CI/CD pipeline/terraform-infrastructure-layer, де просто вказуєш назви баз та їх конфіги в окремому config.tfvars файлі. Потім налаштовуєш правила для цієї пайплайни по типу: «не можна мерджати код в «main», чи запускати пайплайну на прод, якщо немає хоча б одного «Approve» від Eligible users. Після надання девелоперам прав на цю пайплайну, описуєш покроково Runbook під назвою «Як додати базу даних на PSQL сервер» — тебе ніхто не відволікає, девелопери створюють все самі (просто за допомогою натискання клавіші «Run»), таски робляться, ніхто нікого не чекає.

Поганий кейс: ти йдеш додавати змінну оточення в якесь місце, щоб вона потім «магічно» з’явилась всередині K8s як secret/змінна в контейнері.

Хороший кейс: девелопери самі можуть «прокинути» назву і значення нової змінної всередину K8s за допомогою скриптів або централізованого місця управління секретами/конфігураціями (по типу Hashicorp Vault, Azure KeyVault, CloudTruth, Spring Cloud Config...), та нативними K8s операторами, які будуть автоматично стягувати будь-які нові змінні/секрети.

Поганий кейс: насетапити OpenVPN сервер мануально та піти у відпустку. А потім сердитись, що VM, на якій він хоститься, впала, і тобі треба терміново брати комп’ютер в руки поки інші засмагають на пляжі

Хороший кейс: автоматизувати створення OpenVPN сервера (щось на грані задротства), або, як мінімум, створити Runbook, де детально (зі скриншотами) будуть описані всі кроки для його створення. Дуже важлива деталь: цей Runbook має бути таким, щоб навіть ваш HR при необхідності міг по ньому все зробити. Хороший Runbook — це коли його може зрозуміти навіть 7-річна дитина.

Поганий кейс: створювати Git репозиторій і всі правила/RBAC для нього, коли в цьому з’являється необхідність

Хороший кейс: написати за допомогою АІ скрипт, який створюватиме новий репозиторій разом з усіма необхідними налаштуваннями, варто лиш вказати назву цього репозиторію при запуску. Нехай деви самі все створюють!

І таких прикладів можна вигадати безліч. Потрібно лише змінити сприйняття своєї роботи з «треба зробити/пофіксити/додати Х» на «я створюю механізми для девелоперів». Тоді ніхто нікого не чекатиме, зникне залежність на конкретну людину/команду, і кожен зможе виконувати свої таски без перебивання м’яча на сторону «противника». Тепер ви — одна команда!

Зручність і простота використання — основні вимоги для таких механізмів. Задача DevOps інженера — придумати, як полегшити команді життя. А не ускладнювати його «незрозумілими» технологіями та інструкціями до них. Адже погодьтесь, якось не «по-православному» делегувати девелоперам дебагінг додатку всередині K8’s, якщо з механізмів у них лише «kubectl logs» замість нормальної системи логування з хорошою візуалізацією. Тож, питайте тих, для кого ви робите, яким має бути результат вашої роботи, збирайте фідбеки, і не бійтесь переробляти допоки всі не будуть задоволені.

Додатки роблять для юзерів, щоб отримати від них гроші. Для DevOps інженера такими юзерами є девелопери, а їхнє схвалення — валютою.

👍ПодобаєтьсяСподобалось11
До обраногоВ обраному2
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

>> не по-православному
це запитувати в дівчини фулстека на співбесіді знання Kubernetes, бо це значить, що вона крім фулстек-розробки ще й девопсом має бути. Тобто команду кодерів та девопсів можна відразу "на мороз’

А от люди в коментарях іншої думки, хочуть щоб ви знали все ))

Хороший девопс вміє перетворювати час на гроші та гроші на час. Це база, яка потрібна бізнесу.

Вся ця концепція DevOps в форматі «кожен з нас президент адміністратор-програміст» розбивається об складність та постійну мінливість стеку технологій при обмежених можливостях людського мозку. Розділення праці виникло в ІТ не від хорошого життя, тому це від початку звучало утопічно і фінал вийшов дещо передбачуваний)

Що маємо, то маємо....

Велкам ту платформ інженірінг )

Задача DevOps інженера — придумати, як полегшити команді життя.

З якого дива? Життя девелоперів має бути максимально складним щоб думали головами, не створювали х..ні. Щоб нарешті взяли відповідальність за свій код, який не працює, або погано працює на проді. Якщо хочуть собі полегшити життя, то мають собі зробити це самі.
Інакше ніколи не візьмуть відповідальність на себе і будуть незрілими підлітками, яким мамка все життя його полегшує.
Девопс це енікейщик 90-х на новому рівні. Людина оркестр, який має зробити бізнесу, компанії добре. Щоб всі інші продовжували займатись тим, що і раніше так само погано.
Якщо ваш вибір підтирати сраки, розгрібати гівно, автоматизувати гівно, то це вибір і його слід поважати. Це ваша відповідальність і ваше життя.

Не хотів би потрапити в команду з такою філософією.

Неможливо змінити систему, яка придумала devops, зсередини. Індустрія потребує змін на вищому рівні. Devops це костилі для старої системи без відповідальності, яка знайшла на кого цю відповідальність перекласти щоб CEO, CIO, Dev, власники та інвестори були і далі «в шоколаді». В революцію, яка змінить економічну систему, наявні правила в індустрії вірите?

Ні, не вірю. Думаю, що все відбувається хаотично, без чіткого плану або розуміння куди це приведе. Наявні правила індустрії формуються самі по собі, нікого про це не питаючи. По типу як створювався YouTube — робили сайт знайомств, а вийшла платформа для хостингу відео. Це все просто реакція на зміни оточуючого середовища, які мають на меті, як ви вірно зауважили, щоб СЕО, СІО, DEV, власники та інвестори були і далі «в шоколаді».

Devops це костилі для старої системи без відповідальності

Мені здається, що будь-яке рішення для ВЖЕ працюючого проекту/системи — це апріорі костиль. Саме через те, що система/проект вже працюють. А раз працюють — не чіпай! Тому такі речі можна спробувати видозмінити тільки зсередини. Бо, якщо робити зміни «на вищому рівні» — це вже треба будувати з нуля. Інакше перестане працювати те, що раніше працювало.
Саме тому, що я не вірю в революцію, яка щось кардинально змінить, я і пропоную якісь свої напрацювання та ідеї (які вже протестував на практиці), щоб хоча б трохи покращити те, що ми наразі маємо.

Спробуйте prompt «Є ІТ компанії, які придумали щось краще за DevOps методологію для вирішення проблем з якими має справитись DevOps?»
У відповідях є
Platform Engineering, AI-driven infrastructure/operations та багато іншого.

Platform Engineering, AI-driven infrastructure/operations

Це все і є DevOps, тільки по-іншому називається. Або можете сказати, що воно слідує DevOps практикам, як вам зручніше (від назви суть не зміниться). Я брав участь як в побудові «one-click-deployment» платформи, так і АІ-driven infrastructure проектах.... І всі ці проекти роблять одні й ті ж самі люди, яких рекрутери називають DevOps інженерами. Тому ваш коментар не зовсім валідний.

ну не скажу прям так категорично про максимально складним, полегшувати потрібно, але в мене те саме враження що автор бере на себе роль мами й папи по відношенню до розробників

Вам здалось.
Моя ідея: делегувати розробникам все, що тільки можна делегувати, щоб вони все робили самостійно. Але при цьому їм потрібно дати механізми такі, щоб вони робили це швидко, ненапряжно, з мінімальними зусиллями. Вони не мають чекати створення чогось тиждень бо Девопс зараз зайнятий. Але і пів дня розбиратись в тому, як це створити, вони теж не повинні. Натиснув кнопку — з’явилось.
Time to market — наше все.

Ті, хто створюють програму, повинні нести відповідальність і за її роботу в production

Тоді девопси не будуть потрібні.
є проекти де так і є, деви самі сетаплять енви.
Написати кілька скриптів чи пайплайнів це відносно просто (особливо в часи АІ), тому лише для цього фулл тайм людину брати не будуть.

«Ops», по суті, просто трансформувалась зі звичайних адміністраторів в адміністраторів, які все автоматизують
займається всим тим, чим НЕ займаються девелопери.

Ну от і відповідь хто такий девопс і нащо він потрібен — щоб деви фокусувались на створенні продукту. А інфру віддати девопсам.

тебе ніхто не відволікає, девелопери створюють все самі

Тоді дивись пункт 1 — девопси не потрібні.
Вся ідея мати отого опса/девопса щоб не відволікати девелоперів а його.
Тому девопс це завжди онколл, канбан, сетап тулів, розгрібання чому щось не працює.

Не хотів би потрапити в команду з такою філософією

Не хотів би потрапити в команду з такою філософією

Та це і з поста було зрозуміло, що ви думаєте девопс має вайбкодити внутрішні тулзи для девів а не вирішувати проблеми.
І щоб вас не відволікали

вони й так непотрібні, оригінальний девопс помер і все що робив колись девопс купляється за 5 баксів/місяць/юзер

від девопса залишились тома книг і статей які цікаві хіба що менеджерам позмагатись на резінових мечах в культуру яку вони часто навіть самі не розуміють акі аджайл

Тому девопс це завжди онколл, канбан, сетап тулів, розгрібання чому щось не працює

платформ інжинірінг

вони й так непотрібні, оригінальний девопс помер

Чому тоді в епоху «кризи в ІТ» ми маємо найменшу просадку по зп, і найкоротший проміжок часу на пошук нової роботи?)
Певно, бо статистика — це найбільша брехня в світі ))

ви кажете про devops titles
я кажу про devops responsibilities

it’s not the same

5 баксів це ще для підписок, те саме отримуєш на гітхаб.ком взагалі безкоштовно — все те чим займався девопс у 2000х-2010х

а те що ви вкладаєте в функції девопс зараз і на що не просідає статистика, ето вже platform/sre

ніякої брехні, просто світ змінюється

Людина, якій ви відповіли на коментар

вони й так непотрібні

мала на увазі аж ніяк не «devops responsibilities», вона якраз таки писала про тих, кого ви називаєте «platform/sre». І згідно назв вакансій на різних платформах їх вже де-факто можна називати DevOps інженерами.
SRE/Platform/DevOps — як не назви, але responsibilities в вакансіях одні й ті ж.
То ви вже визначіться, чи потрібні люди, які пишуть скрипти, налаштовують пайплайни, підіймають інфру, сетаплять енви, і впроваджують технології щоб полегшити і пришвидшити роботу девелоперам, чи не потрібні.
А то у вас виходить що одночасно і так, і ні.

мабуть я хотів йому донести ту саму думку, що і вам, бо він мав на увазі те що й ви, називаючи це девопс при цьомки, як це робите й ви

чи потрібні люди, які пишуть скрипти, налаштовують пайплайни, підіймають інфру, сетаплять енви

потрібні, але це далеко від того щоб робити девелоперам добре

робити девелоперам добре зараз зветься DX

www.atlassian.com/developer-experience

пайплайни в людських командах всі девелопери давним давно пишуть самі прямо в репах, і свідомість від цього ніхто не втрачає, хто взагалі буде чекати на якогось івана-девопса поки він пайплайни налаштує сорі? єсі вас так досі роблять, мені вас щиро шкода

велкам ту 2026

Створити пайплайн чи описати інфраструктуру Тераформом — це якраз найочевидніші приклади того, як зробити девелоперам добре.

То ви вже визначіться, чи потрібні люди, які пишуть скрипти, налаштовують пайплайни, підіймають інфру, сетаплять енви, і впроваджують технології щоб полегшити і пришвидшити роботу девелоперам, чи не потрібні.

Девелопери теж можуть скрипти писати, як і пайплайни створювати. І тераформом свою лямбду на амазон заливають.

А от розгрібати чого vpn не працює, оновлення сертифікатів, dns, сетап всяких кібани, джири, кафки і т.п. — для цього і є девопс.

Так він це і робить, і я не збираюсь в нього цей «хліб» відбирати.
Але те, що стосується безпосередньо додатків, енвів, сікретів, баз, і варок — будь, ласка, хай девелопери теж за це відповідають.
Приклад: сетап Кафки і його автоматизація — відповідальність Девопса. Але додавання нового топіку в Кафку — ні. Зайшов в відповідну папку, додав ямл з описом топіку, запустив пайплайн — вуаля, все створилось. Для цього Девопс не потрібен. Так само як і для того, щоб додати чи перевірити значення сікрету в K8s поді.
Інфраструктура та автоматизація — девопсам
Все, що стосується аплікейшену і конфігів — девелоперам

ну все так і все не зовсім так

devops це development operations — суть робити розробникам добре, дев енвайронменти, ci/cd, з цього пойнта статя коректна — девелопери це юзери

але за останні 20 років це вже шо хош — від енікейщіка до десятирукого шиви. Спитай 10 людей що таке девопс, отримаєш 10 відповідей

оригінальний devops здається вже й помер, бо купа інструментів вже або легко сетапляться або менеджед або розробники можуть самі писати свої пайплайни. Є ейяй теж який це все напише тож. Раніше в серйозній команді лиш тільки ci/cd займав повний робочий день

якось не «по-православному» делегувати девелоперам дебагінг додатку всередині K8

отето от нє, ну чи є дві точки зору скажем так. Одна що платформа це сервіс для розробників, типу абстракція, а інша що девелопери мають вміти в лоу левел розуміння й операції платформи на пристойному рівні щоб розробка велася з врахуванням її аспектів

я от другого табору — девелопери не балєріни, розробляють для кубернетіса — мають вміти дебажити в кубернетісі, розробляють для постгрес — мають знати і шо таке вакуум і шо таке індекси і що буде якщо їх паршивий запит раптом робитиме фулскан паралельно з вакуум — і встати на дзвінок о третій ночі й могти члєнораздєльно вирішувати проблеми

Вміння напечатати «kubectl logs» в терміналі це не «лоу левел розуміння платформи», це просто зайві декілька хвилин витрачених на те, що мало б мати пристойний вигляд відразу, і відкривалося б натисканням кнопки в UI.
Дуже сумніваюсь, що ви користуєтеся пластиковими платіжними картками, а не своїм телефоном при оплаті в магазині.
В обох випадках форма того, як ви це робите, не міняє суті того, що ви робите. Дивитись логи — це завжди дивитись логи, але в першому варіанті — це зручно.

я не спорю, але дивитись логи в красивому інтерфейсі коштує грошей, а зручність не підміняє знання

можна посперечатись про зручність ще, бо tui набагато зручніший в багатьох ситуаціях але то такоє, звісно не в усіх

якщо девелопер не вміє в кубернетіс на концептуальному рівні і при цьому пише під кубернетіс — йому жодні інтерфейси не допоможуть сорі, це баласт для команди де кубернетіс основна платформа, як мінімум його треба буде вчити

я користуюся кешем в магазині, я старомодний, але картки в мене є не сумнівайтесь, і навіть смартфон :)
я дійшов парадоксального висновку що кеш це найшвидший і найанонімніший спосіб оплати p2p

собсно ви з того першого табору, це очевидно.

просто зайві декілька хвилин витрачених на те,

нічого страшного не станеться, якщо тендітний девелопер під час розробки свого тендітного мікросервіса дивитиметься в логи в некрасивому інтерфейсі kubectl на своєму локальному лептопі чи дев енвайронменті, може разок подивиться і щось спіймає і навіть може напише кілька тестів, задовго до того як це вилізе на прод і потім логи будуть в красивому інтерфейсі в три ночі

я не кажу про лоу левел в сенсі детальних знань. Я кажу лоу левел в сенсі глибше за «кубернетіс це така махіна, де магічноавтоматично запускаються мої контейнери і потім я читаю логи в красівому інтерфейсі, а коли щось ламається я просто пишу девопсам і йду пить чай»

якщо вже філософствувати про devops культуру то це про боротьбу з silo і walled gardens. А це працює в обидва боки сорі. Так само як платформ інженер має бути трошки розробником, так і девелопер має бути трошки платформ інженером. Коли ви ізолюєте розробників від платформи для якої вони пишуть — ви самі будуєте черговий silo.

1. Щодо зручності — термінал ніколи не дасть вам такої можливості фільтрувати логи, та і не всі логи туди вмістяться. Дивитись логи збережені в файлі (знову ж таки без фільтрів) — така собі продуктивність. А це вже time to market — тому так, на мою думку, станеться щось страшне, якщо девелопери матимуть можливість дивитись логи ЛИШЕ через «kubectl logs», без альтернатив.
2.

дивитись логи в красивому інтерфейсі коштує грошей

Для цього є безкоштовна Grafana.
3. Я не закликаю «ізолювати розробників від платформи». З чого ви це взяли? Чи де я написав, що я проти того щоб девелопери вивчали K8’s та користувались «kubectl logs» ? З якого речення статті ви робите такий висновок?
Я кажу про те, що ви маєте зробити їх роботу зручною, і

не бійтесь переробляти допоки всі не будуть задоволені.
ніколи не дасть вам такої можливості фільтрувати логи

бггг, ой як категорично, бачие я от не такий категоричний

Дивитись логи збережені в файлі

ну я ж не про таку жуть, але куди по вашому писатиме логи розробник що не знає про клауднейтів розробку?

безкоштовна

«безкоштовна», в світі нема нічого безкоштовного

ЛИШЕ
Я не закликаю «ізолювати розробників від платформи». З чого ви це взяли? Чи де я написав, що я проти того щоб девелопери вивчали K8’s та користувались «kubectl logs» ? З якого речення статті ви робите такий висновок?
Я кажу про те, що ви маєте зробити їх роботу зручною, і

а з чого ви взяли що я кажу що вони мають читати логи ЛИШЕ через kubectl?

то про що ми взагалі балакаємо?

якось не «по-православному» делегувати девелоперам дебагінг додатку всередині K8

це ви написали, не я, а ми сперечаємось про якісь польоти в космос, безкоштовну графану і красиві інтерфейси

дуже по православному делегувати девелоперам дебагінг додатку всередині k8s.

Якщо є красивий інтерфейс це просто чудово, але це ніяк не звільняє від необхідності знати як дебажити додатки в k8s, знати як деплоїти, знати як працюють основні ресурси й вміти розбиратись з неосновними. Знати в кінці кінців що аплікейшен може бути прибитий без запитань й запуститись десь на іншому континенті як ні вчому не бувало в оточенні яке рекавериться і враховувати це в розробці. І нічого неправославного в цьому нема — весь мій пойнт.

Адже погодьтесь, якось не «по-православному»

Імхо звісно. Але не погоджуся

Якщо вже на то пошло то графана як і весь monitoring&observability stack — інструмент для платформ інженерів насамперед, а потім вже для розробників.

То що ви бачите свою місію в полегшенні життя розробників це дуже похвально. Але це не односторонній сервіс, це командна робота і розробники теж мають walk their walk і бачити СВОЮ місію в полегшенні роботи ВАМ, це роль колег профі, які так само зацікавлені в стабільності платформи як і ви, які не вернуть носом від некрасивих інтерфейсів, якщо раптом з красивими щось не так, і це не роль дитини яку потрібно оберігати від незручностей й класти їй всі логи в ротик ложечкою. В цьому і є зен девопса. В статті ви описали лише половину цього зен

В кінці кінців ви це й написали

DevOps має на меті зменшити «розрив» між командами «Dev» та «Ops», зробити їх наче одним цілим
Ті, хто створюють програму, повинні нести відповідальність і за її роботу в production

тому навіть не знаю чому ви не хочете бачити мою точку зору

Адже погодьтесь, якось не «по-православному» делегувати девелоперам дебагінг додатку всередині K8’s, якщо з механізмів у них лише «kubectl logs» замість нормальної системи логування

Дочитайте, будь ласка, речення ДО КІНЦЯ, і зрозумійте його суть. Не треба видирати частину речення з контексту, і перекручувати його як вам зручно. Ви наразі сперечаєтесь проти тези, яку самі придумали, але якої немає в цій статті. Ніхто ніде не казав, що розробники не мають знати як дебажити та деплоїти в K8s. Навпаки, стаття якраз про те, що їм це все ПОТРІБНО делегувати, а не кормити з ложечки, фіксаючи все замість них. Але для цього потрібно надати їм зручні інструменти, а не «kubectl logs» з терміналом.
Перечитайте статтю ще раз. Дякую.

я не знаю чо ви такий агресівний постійно, і постійно залупаєтесь

я і дочитав ДО КІНЦЯ і нічого не видирав.

ви наче не розумієте про що я

ви що хочете сказати що на кожен лептоп і кожен дев енв ви будете ставити графану й зберігати всі логи щоб вашим девелоперам жить було красіво?

а попка у ваших девелоперів не злипнеться? може у вас там бюджет і резіновий, хто його вас знає, тоді вітаю, але в більшості випадків це гра в компроміс. Може у вас тих логів кіт наплакав, хтозна, то канєш тоді робіть, збирайте й зберігайте.

потрібно надати їм зручні інструменти, а не «kubectl logs» з терміналом.

непотрібно

Графана й логи потрібні не для того щоб девелоперам було зручно дебажити свої мікросервіси, зручність для розробників це побічний бонус, а не основна функція. Це для того щоб коли щось звалиться можна було в чомусь розібратись в три ночі і потім було що обговорювати на постмортем, а не для того щоб балєріни дебажили свої мікросєрвіси в стерильних умовах

Ніхто ніде не казав, що розробники не мають знати як дебажити та деплоїти в K8s

раз не казали, то немає нічого неправославного подебажити в к8s

Нема сенсу далі. Робіть далі своїм девелоперам добре.

Перечитайте статтю ще раз. Дякую

Не хочу

Підписатись на коментарі