Мнение: DevOps — это раковая опухоль

в 19:30, , рубрики: chef, devops, Jenkins, jira, nexus, terrform, Серверное администрирование

Чтиво на weekend.

Представьте, что вы написали калькулятор, calc.exe. Почему бы не добавить к нему темную тему? Хотя нет, почему тему, путь будет любое количество тем. Мы их будем хранить в файлах .thm. Важно не запутаться, потому что еще мы хотим настраивать расположение клавиш. Просто переключать вид - простой/научный - это слишком просто. Надо ввести понятие layout. Который хранится в файлах *.lyt.

Так, теперь логично написать редактор layouts, который, разумеется, будет больше первоначального калькулятора. И делать bundles .thm+lyt, и... о да, конечно! Marketplace! Создаем сайт, поиск, free/paid, система обновлений... На чем бы все то писать? Что в этом месяце популярно среди front end?

К этому моменту первоначальная идея о том, что калькулятор нужен для того, чтобы считать, давно забыта. Нас утащила в облака идея ползучего улучшательства.

Конечно, по молодости каждый делал такие ошибки. Но DevOps - это то, что описано выше - только масштабировано на уровень фирмы.

Git, Nexus, Jenkins, Ansible, Octopus, Jira... Я как то писал jobs для Jenkins. Они вызывали скрипты на PowerShell. Но DevOps говорят - нет, это слишком просто! Пусть в самом начале каждой Jenkins job curl вытягивает с Nexus последнюю версию скриптов, и только потом уже ее выполняет. Мы получаем версионирование скриптов! Круто же! Никого не интересует, удобно ли это, важно, что это круто и хитро... Ну вы поняли.

Правда, все это крутилось на Linux, а отлаживать это можно было только вживую, поэтому при отладке (изменив одну строчку в скрипте) мне приходилось делать git add ., git commit и push, делать merge, потом запускать Jenkins job, которая паблишила это в Nexus, и где-то спустя пять минут ручной работы я мог проверить новую версию скрипта. Но мне не привыкать - я работал и на перфокартах c одним прогоном в день.

Но вы никогда не задумывались, что DevOps существуют для того, чтобы облегчать жизнь, а не усложнять? Что если появились инструкции на 40 пунктов и 50 yaml файлов - то значит, что что-то пошло не так? У знакомой три девелопера и три человека в отделе DevOps. Ребята, а вы точно экономите деньги?

Вы никогда не задумывались, что net effect от всех действий DevOps - это перенос файлов из одного места в другое (иногда в несколько мест). То есть команда copy (cp) с рядом условий?

Извините, я забыл про облака. Там Terraform, Chef, файлы их конфигураций, а раз файлы, то снова версионность, Git, Nexus, Jenkins... А вы думали, сколько новому человеку во всю эту кухню вникать? Сорри, я забыл, что это не плохо, а наоборот, хорошо, и называется job security.

Во всем этом обилие технологий забыт главный принцип... KISS... Мне кажетcя, современный DevOps превратился в вещь для себя, самосбывающееся пророчество, которое потребляет все больше и больше ресурсов, раскручиваясь как спираль...

P.S. Наверное, Jenkins надо поместить в Docker а сверху шлифануть Kubernetes...

Автор: Дмитрий EvilDBA

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js