Банковское обозрение

Финансовая сфера


22.04.2020 Аналитика
NoOps как антикризисная мера

Суть перемен такова: грядут времена, когда быть «просто программистом» или «просто администратором» будет уже маловато. Что думают по этому поводу цифровые банки?


Исключительно философские трения между сторонниками DevOps и NoOps, начатые лет семь назад, в преддверии неизбежной оптимизации расходов банкирами перестают быть теоретическими. Вопрос выходит в практическую плоскость. Из сундуков достают пыльные инструменты, протирают начисто, расставляют в ряд на каминной полке, подобно фарфоровым статаэткам слонов, и начинают заново изучать все плюсы и минусы, казалось бы, забытых технологий управления IT.

NoOps (No Operations) — не новая концепция из плеяды KnowIT (NoDev, NoOps, NoIT). Возрождение интереса к ней происходит циклически вслед за прорывами в сегментах Big Data, машинного обучения (ML), контейнеризации и облачных вычислений (прежде всего SaaS и PaaS), а также во времена кризисов, когда содержание дорогостоящих инженеров DevOps становится неподъемным.

Поэтому весной 2020 года банкиры, ранее решившие во что бы то ни стало стать IT-гигантами, снова решают чисто инженерный вопрос: как трансформировать и удешевить ставшую уже традиционной модель обслуживания корпоративной IT-инфраструктуры, построенную в духе Agile?

Культура vs автоматизация

DevOps родился тогда, когда в целях уменьшения time to market Google, Amazon, Microsoft и т.д. стали менять свою внутреннюю культуру ради повышения гибкости и скорости. Поэтому DevOps — это прежде всего люди. Культура DevOps важнее любого конкретного инструмента или технологии, и созрела она в тот момент, когда различные люди из IT начали делиться своими лучшими практиками для достижения общей задачи. Дальнейшей вехой в развитии стало включение в команды разработчиков представителей ИБ, маркетинга, продаж, финансистов и т.д. Самих команд становилось все больше, и они стали формировать плоские организационные структуры в противовес традиционным для банкинга иерархическим оргстуктурам. Резко возросла роль Open Source…

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

В условиях турбулентности DevOps иногда сталкивается с проблемой человеческого фактора

Инженеры, как правило, не интересуются диалектическим материализмом и его законами, поэтому порой всеми силами пытаются сохранить текущее положение вещей. Зато антикризисные менеджеры прекрасно осведомлены о том, что периодические бизнес-трансформации и технологические трансформации просто необходимы, особенно в периоды смены технологических укладов. Остается только ответить на два основных вопроса: как обеспечить преемственность и какие инструменты необходимы?

В этом контексте интересна возможная роль KnowIT, в частности NoOps, причем не в режиме противостояния с DevOps, а как звена в эволюционной спирали развития технологий и финансов. Причем никто не отрицает при этом саму парадигму Agile, хотя, наверное, в «военной» или «антикризисной» своей реинкарнации она была бы нынче полезней. Но эти вопросы находятся в компетенции стратегического менеджмента, в данном анализе задача стоит просто напомнить о тактических инструментах.

NoOps не является и платформой

Напомним, сущность NoOps заключается в том, что программная среда может быть полностью автоматизирована, и потребность в операционной команде, которая должна управлять всем этим, просто отпадет. Это не какая-то отдельно взятая технология, а целый стек. Но при этом NoOps не является платформой, которую можно купить.

Концепция предполагает перестройку процессов. В отличие, скажем, от роботизации бизнес-процессов (RPA), также предполагающей активное использование ML и AI в целях замены человека на рутинных и повторяющихся операциях, фокус NoOps направлен на автоматизацию операций более высокого уровня, выполняемых сегодня высококвалифицированными инженерами и менеджерами.

Конечно, надо отдавать себе отчет в том, что при текущем уровне развития AI NoOps невозможно использовать в полном объеме и заменить людей на всех этапах цикла «восьмерки» DevOps. Зато, как для японских самураев, для NoOps не важна не столько цель, сколько направление самого движения. Но это пока. Десять лет назад трудно было предположить, что выбранное тогда направление развития концепции заведет так далеко. Путь определялся по значимым вехам. Например, в 2015 году случился бум Heroku-программистов. Согласно Википедии, Heroku — облачная PaaS-платформа, поддерживающая ряд языков программирования. С 2010 года является дочерней компанией интернет-гиганта Salesforce.com. Heroku считается «платформой-полиглотом»: на данный момент в список поддерживаемых языков входят Java, Node.js, Scala, Clojure, Python, Go, C# и PHP. Главная особенность состояла в том, что программистам не требовалось заботиться о настройке и масштабировании. Платформа делала все сама, если приложение было написано на одном из поддерживаемых ею языков. Оплата осуществлялась только за фактическую нагрузку и потребляемые ресурсы. Вот и случился бум.

NoOps предусматривает автоматизацию разработки, развертывания и поддержки ПО с полным исключением человека из процесса

2017 год запомнился выходом в промышленную эксплуатацию в полном соответствии с идеологией NoOps «беcсерверной архитектуры» (Serverless Computing). Википедия дает такое определение: это модель Cloud Computing, в которой платформа динамично руководит выделением машинных ресурсов. Иногда бессерверные вычисления также называют «Функция как услуга» (Function as a Service, FaaS), потому что единицей кода является функция, которая выполняется платформой. По сути, для выполнения каждого запроса создается отдельный контейнер, который уничтожается после выполнения.

Пользователям такой платформы не надо иметь дело с настройкой серверов для запуска кода: все серверные настройки и планирование вычислительных ресурсов скрыты от пользователей и управляются платформой. Бессерверный код может быть частью приложений, построенных на традиционной архитектуре, например на микросервисах. А Microsoft уже предлагает «бессерверные» базы данных, что резко расширяет модель serverless.

Продолжать приводить примеры можно долго, но пора сделать некоторые выводы. Один из них, сформулированный в исследовании «Tech Trends 2019» от Deloitte, заключается в том, что в случае с NoOps разработчики (Dev) и операционный персонал (Ops) никогда не контактируют друг с другом при выполнении своих задач. Концепция DevOps, напротив, предполагает их взаимодействие на протяжении всего жизненного цикла.

В идеальном случае NoOps предусматривает автоматизацию разработки, развертывания и поддержки с полным исключением человека из процесса. IT выходят на новый этап, в котором облачное ПО и программно-конфигурируемые аппаратные средства предоставляются динамически, способствуя переводу специалистов на решение других задач и достижение новых результатов в бизнесе.

Но опять же NoOps — это инструмент, а они бывают разные. Какой сейчас нужнее, решать менеджменту.






Читайте также

Сейчас на главной