Какие технологии характерны для Инфраструктуры 3.0?
За счет чего новый подход может быть выгоднее имеющейся инфраструктуры?
Как хождение по граблям решает кадровый вопрос?
Во всем «виноваты» контейнеры
Исторически крупные российские компании строили инфраструктуру под конкретные приложения. Биллинг в телекоме, банковский процессинг — под задачу подбирался определенный набор оборудования, формировалась замкнутая система. Подход был популярен в середине нулевых, но однажды стало понятно, что он неэффективен. Каждая система подразумевала отдельный набор оборудования, а значит, невозможно «расшаривать» использование СХД или других компонентов. Такое монопольное использование «железа» — очень дорого.
Как нельзя кстати появились технологии виртуализации — основа Инфраструктуры 2.0. Первые шаги на этом пути касались СХД: компании стали покупать одну систему хранения данных для разных задач. Потом возникли дешевые способы виртуализации для процессоров на архитектуре х86, с начала десятых годов подобные технологии захватили ИТ-инфраструктуру. Теперь она должна была предоставлять единую среду для всех приложений.
В последние несколько лет мир корпоративных ИТ в очередной раз начал радикально меняться. Сейчас недостаточно среды виртуализации. Все больше современных приложений используют контейнерные технологии. Это следующий уровень абстракции, когда каждое микроприложение — обособленная система, которую развивает отдельная команда. Это позволяет придерживаться минимального Time-to-Market. Разработка совершила скоростной прорыв: изменения в сервисы теперь можно вносить за несколько недель или даже дней, хотя раньше это занимало месяцы. Но для реализации такого подхода нужно существенно изменить инфраструктуру компании.
Мы в «Инфосистемы Джет» называем новый подход «Инфраструктура 3.0». Аналитики Gartner считают, что доходы от ПО и услуг по управлению контейнерами к 2024 г. увеличатся в два раза — до 944 млн долл. Я уверен, что количество приложений в контейнерах будет расти. Мы проводили исследование проникновения контейнеров в ландшафт крупных российских компаний. Это поразительно: в нашей стране контейнеры начали использовать не так давно, но уже сейчас 56% опрошенных крупных компаний применяют их при разработке приложений. Для этого нужна новая ИТ-инфраструктура, она строится по другим принципам, значительно отличающимся от принятых на рынке.
Хотят компании или нет, но они научатся управлять контейнерами и оркестрировать их в своей среде. У наших заказчиков переход на новую инфраструктуру проходит по-разному. Когда бизнес на определенном участке получает большую гибкость и лучшие показатели Time-to-Market, возникает вопрос: «А почему так нельзя на всех направлениях?» Когда у одной команды на релиз уходит 1–2 недели, а другая может целый месяц потратить только на тестирование, заказчик начинает пересматривать работу классических приложений. И вот тут возникают первые «но». Есть масса примеров того, как крупная компания развивает небольшое приложение на базе контейнеров, потом приходит время выпускать его в продакшн, а это оказывается совсем другим миром. Все работает иначе, взять хотя бы кластеризацию баз данных, которая в контейнерах устроена принципиально иным образом. Недавно один СIO мне рассказывал, как прекрасно шел проект, пока команда не уперлась в невозможность стандартными средствами сделать бэкап приложения, построенного на микросервисах.
Инфраструктура 3.0 требует новых средств, потому что прежние не дадут необходимой эффективности. Существенным образом изменилась архитектура приложений — от монолита к микросервисам. Каждое микроприложение не зависит от остальных, а значит, у него свое хранение данных и API, поэтому технологии, которые использовались ранее, уже неактуальны.
Не бойтесь дышать
За последние несколько лет мы сформировали минимальный фреймворк — что должно входить в новый ИТ-ландшафт: от базового оркестратора для контейнеров до сложных решений по управлению persistent storage (постоянное хранилище данных), организации непрерывной интеграции и доставки (CI/CD). Как мы управляем базами данных, как обеспечиваем доступность контейнеров, БД и сетевых элементов — все уже предусмотрено и проверено в нескольких десятках проектов. Плюс, конечно же, технологии для обеспечения безопасности кода и защиты решения в продуктиве. Все это будет необходимо при разработке приложения, если вы хотите, чтобы оно обеспечивало высокую скорость Time-to-Market.
Open Source — безусловный тренд нового подхода. Почти все технологии, которые активно используются в Инфраструктуре 3.0, пришли, если можно так выразиться, из мира интернета. Исторически enterprise и небольшие интернет-компании развивались разными путями. Последние не имели бюджетов, позволяющих использовать дорогие коммерческие продукты, поэтому брали Open Source. В то же время интернет-компании всегда жили по принципу «быть постоянно онлайн, быстро меняться». Когда эта парадигма добралась до enterprise-сегмента, традиционный бизнес тоже начал пользоваться инструментами, которые создало сообщество.
Бояться Open Source поздно, с таким же успехом можно бояться дышать. Некоторые мои коллеги опасаются решений с открытым кодом, у них еще не наступила стадия принятия. Но для целого спектра задач промышленных решений нет, а многие коробочные продукты представляют собой тот же Open Source, только упакованный. Однако считать, что Open Source существенно дешевле коммерческих продуктов, — заблуждение. Развитием и поддержкой решения должны заниматься квалифицированные, дорогие кадры.
Бояться Open Source поздно, с таким же успехом можно бояться дышать.
Облака — неотъемлемая часть нового подхода, потому что компании больше не могут полагаться только на свои ресурсы. Облачные технологии позволяют использовать инфраструктуру по запросу. Если у компании наступает высокий сезон, запускается новая логика бизнес-приложения или происходит резкий всплеск активности покупателей, облака помогут быстро масштабировать приложение и справиться с растущей нагрузкой. Когда пик спадет, мощности можно будет перенаправить под другие задачи. Крупные компании уже давно реализовали частные облака. Многие используют гибридную модель: сочетают локальные облака с публичными. Проще разместить среду разработки там, чем ждать, когда приедут необходимые серверы.
Еще один ключевой элемент новой инфраструктуры касается мониторинга. Теперь важна не работоспособность конкретного сервера, а скорость работы бизнес-процесса. Если пользователь трижды нажмет кнопку «Заказать» и ничего не произойдет, он уйдет в другой магазин. Мониторинг должен показывать, как работают бизнес-процессы, для этого мы в том числе внедряем в него возможности AI.
В нашем понимании разработка должна быть безопасной, а значит, DevOps обязан уступить место DevSecOps. В противном случае в продакшн попадут компоненты, безопасность которых никто не может гарантировать. В нынешних условиях, когда угрозы экспоненциально растут изо дня в день, а различные взломы стали привычным новостным фоном, так себя вести — безответственно. В какой-то момент это приведет к серьезным потерям. В начале XXI века информационная безопасность была бумажной, но сейчас этот подход неприменим. ИБ-решения нужно с самого начала встраивать в стек технологий.
Турбоскорость благодаря пандемии
Технологии Инфраструктуры 3.0 были готовы уже за год-полтора до пандемии, просто они ждали своей очереди. И тут мир поменялся в один момент: бизнес массово пошел в онлайн, продукты и товары стали чаще заказывать через приложения, банковские отделения переехали в смартфоны. Мы оказались в среде, в которой до этого жили разве что некоторые гики. Число клиентов, взаимодействующих с бизнесом в онлайне, в прошлом году выросло многократно. При этом еще пару лет назад в банковской среде часто дискутировали о том, насколько нужны физические отделения. А в ритейле разве что «Утконос ОНЛАЙН» верил, что можно продавать продукты не в магазинах.
Accenture сравнивает трансформацию мира в 2020 г. с великим переселением народов в IV–VII вв. Теперь многим компаниям предстоит осознать тот факт, что клиенты, которых они так хорошо знали, изменились, — пишут эксперты в своем исследовании.
Компании, которые были готовы к новой реальности, извлекли мощные дивиденды. Например, OZON на IPO прошлой осенью привлек 990 млн долл., а его капитализация превысила 7,1 млрд долл. В 2019 г. представить такие показатели было сложно. «Петрович» организовал онлайн-доставку строительных материалов, и в итоге оборот сети в 2020 г. вырос год к году на 22% — до 60 млрд руб. В X5 Retail Group ожидают, что по итогам 2021 г. доход от цифровых бизнесов должен составить не менее 2% от общей выручки компании. У «Северстали» появилась возможность заказать арматуру онлайн.
Надеюсь, что пандемия вскоре закончится, но пользовательские привычки останутся. Коронавирус стал импульсом свершения «цифровой» революции. Если компания готова дать потребителям удобный онлайн-канал взаимодействия, в офлайн они не вернутся. Здесь второго мнения быть не может.
И даже госы
Построить с нуля всегда проще, но это не всегда правильно. Не нужно сразу «сбрасывать с парохода современности» все то, что компания разработала ранее. Монолитные приложения, созданные в рамках Инфраструктуры 1.0, много где остались и успешно работают. Если бизнес-логику можно реализовать с их помощью, нет смысла от них отказываться. Как и отказываться от виртуализации с набором приложений, если это устраивает.
Лидеры нового подхода — финансовая отрасль и ритейл. Люди переходят в онлайн. Первыми это заметили банки еще несколько лет назад, поэтому теперь это ИТ-компании, которые общаются с клиентами через мобильные приложения. Приложения стали лицом компаний: нужно максимально быстро предоставлять новые услуги, сервисы, выкатывать обновления. Поэтому в 2021 г. крупные банки пишут ДБО на базе контейнеров. В ритейле происходит нечто подобное: мобильные приложения тоже должны стать более гибкими.
Банки — это новые ИТ-компании, которые общаются с клиентами через мобильные приложения.
В промышленности переход заметен не так ярко, но и там используют новый тип приложений. Все, что касается искусственного интеллекта и превентивных моделей, в том числе предиктивную аналитику, эффективнее реализовывать на новом стеке технологий. Этот подход уместен везде, где нужно быстро вносить изменения.
Это может удивить, но госсектору тоже необходима Инфраструктура 3.0. Государственные услуги предоставляются онлайн. Портал «Госуслуги», система ЕГАИС, московский портал mos.ru — все это витрины, за которыми стоят серьезные изменения в информационных системах. Целый спектр государственных сервисов сейчас реализуется на базе контейнеров.
Несколько лет назад ИТ были сервисной функцией. Это была удобная позиция: «Вы скажите, что делать, а мы сделаем». Сейчас грань между ИТ и бизнесом стерлась, компании формируют кросс-функциональные команды, куда входят представители бизнеса, аналитики, разработчики. Такова новая реальность, в которой наши заказчики оказались или окажутся в ближайшее время.
Люди, вы где?
Кадры — это всегда болезненный вопрос, когда говоришь о новых явлениях. Почему появилась мода на DevOps и все, что с ним связано? Потому что разработчики, которые могут глубоко продумать архитектуру приложения, все его компоненты, стоят дорого и их очень мало. DevOps же позволяет использовать мидл- или джуниор-разработчиков, то есть решает ту самую кадровую проблему. В инфраструктуре ситуация сложнее. Как это обычно бывает при переменах, сначала специалисты будут отрицать или игнорировать новую реальность, а когда через 1–2 года станет понятно, что это бессмысленно, быстро во всем разберутся. Нынешняя острая нехватка специалистов — явление временное, уже скоро проблема будет решена имеющимися ресурсами.
Мой коллега недавно сказал: «Инфраструктурщик, который сегодня не умеет писать код, — человек с устаревшими компетенциями». Специалисты по инфраструктуре и 20 лет назад писали скрипты, но тогда это был акт энтузиазма, а сейчас — must have профессии.
Мы тоже работаем на фоне нехватки кадров, но начали делать проекты и оказалось, что ничего страшного в этом нет. Все команды, идущие в тему Инфраструктуры 3.0., начинали свой путь примерно с одной точки отсчета. Здесь важен опыт: трижды наступили на грабли, в четвертый раз вы их уже обойдете. Поскольку Инфраструктура 3.0 — горячее направление и мало у кого есть экспертиза, мы по этим граблям вволю побегали. Зато теперь у нас есть нужные компетенции и опыт реализации классных проектов.
Один наш заказчик построил Software Defined Storage и хотел, чтобы мы доработали сеть. Мы раньше не сталкивались с решением, которое они использовали для SDS, но ребята у нас дотошные. Они построили лабораторный макет, чтобы не тренироваться на заказчике, начали тестирование и, мягко говоря, обалдели от результатов. От простого извлечения диска, а в наше время это норма инфраструктуры, сеть рушилась без возможности восстановления. Показали заказчику, он тоже был поражен: «Ничего себе, а мы завтра собирались это в продакшн выводить». Это те самые грабли, с которыми можно встретиться только на практике.