Феномен CI/CD: как минимизировать риски и ускорить разработку
Мнение экспертов

Феномен CI/CD: как минимизировать риски и ускорить разработку

835
4 минуты

Методология CI/CD стала трендом последних лет, хотя многие сейчас относятся к ней с некоторым скепсисом. Ниже мы более детально расскажем, что собой представляет данная методология, как именно и в каких случаях она используется.

Под влиянием гаджетов

CI/CD — это методика непрерывной интеграции и доставки контента. Она, как видно из определения, включает два процесса: CI — Continuous Integration и CD — Continuous Delivery.

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

Активно использовать методологию начали параллельно повсеместному распространению гаджетов, когда существенно увеличилось и количество всевозможного программного обеспечения для них. Ежедневно, если не сказать — ежечасно, создаются различные клиентские приложения. Достаточно посмотреть на динамику магазинов приложений за последние несколько лет. Так, в 2018 г. количество приложений в Google Play увеличилось на треть, составив 3,6 млн. Всё это не могло не привести к изменению глобальных критериев скорости создания ПО как такового. При этом совершенно очевидно, что одно дело — написать приложение для смартфона, и совсем другое — разработать систему операционного банковского дня под вполне конкретную кредитную организацию. Процессы создания, внедрения и отладки такой системы раньше занимали у команды программистов месяцы, если не годы. Но заказчик хочет кардинальных изменений в своём бизнесе здесь и сейчас, точно так же, как это происходит с приложениями в его личном гаджете. Если попытаться ускорить этот процесс линейным образом, то система банковского дня попросту будет «сырой» настолько, что в зоне риска окажутся сами банковские операции, то есть core-бизнес.

Понятно, что такое несоответствие ожиданий и реальности не могло продолжаться вечно. Рано или поздно эта ситуация достигла бы критической точки. Поэтому рынок как бы сам подтолкнул ИТ-отрасль к появлению CI/CD — методологии, благодаря которой сейчас удается исключить множественные ошибки в процессе создания ПО. Суть её заключается в полной автоматизации: продуктовые команды независимо друг от друга пишут код, отправляют в систему контроля версий, после чего код автоматически собирается в сборки, инсталлируется на тестовом стенде и затем тестируется. Результаты в удобном виде попадают тестировщику. Аналогичный алгоритм работы, построенный на автоматизации, применяется и во время внедрения системы в промышленную эксплуатацию (production). В данном случае речь идет о CI — Continuous Integration.

Возможность автоматизированного разворачивания

CD — Continuous Delivery, в свою очередь, помогает найти баги и автоматизировать развертывание. В результате новые релизы доставляются автоматически без необходимости ручной установки. Такой подход позволяет значительно сокращать время выхода продукта на рынок (time-to-market) и важен для тех, кто предоставляет сервисы тысячам и даже миллионам пользователей. Иными словами, в распоряжении разработчиков появляется набор инструментов, которые помогают выкладывать обновления не вручную, а с помощью специально выстроенных процессов. При этом имеется и возможность быстро «откатить» всё обратно в случае обнаружения ошибки. Особым звеном в данном процессе являются DevOps-инженеры, отвечающие за организацию и выстраивание процессов доставки новых релизов до продуктива. Они работают на той самой тонкой грани эксплуатации и разработки и, как правило, обладают опытом в обеих этих сферах.

Уже сегодня под влиянием CI/CD изменилась не только программная архитектура, но и подход к организации ИТ-разработки как таковой, ее идеология. Производители становятся быстрее и лучше. То, что раньше делалось месяцами, теперь делается за считанные дни, без потери качества продукта. Поэтому речь идет вовсе не о хайпе, а именно о принципиально новой реальности.

По материалам публикации itWeek.

15 октября 2024
Как подступиться к большим данным: технологии, инфраструктура и экономическое обоснование проектов

Недавно в подкасте «Откровенно об ИТ-инфраструктуре» состоялось обсуждение экономики больших данных. Как сейчас работает самая обсуждаемая ИТ-ниша? Разбирались с ведущим подкаста директором K2 Cloud Сергеем Зинкевичем и приглашенными гостями: Андреем Жуковым — коммерческим директором Arenadata, и Дмитрием Зуевым — ex-руководителем отдела Data-инфраструктуры в «Т-Банке».

1 минута
134
19 июня 2023
Семь трендов на рынке облачных услуг в 2023 году
До 2022 года на рынке облаков в России главенствовали мировые тренды, но сейчас наша страна пошла своим путем. О том, для чего сейчас компании используют облачные технологии и как меняется рынок, рассказал директор бизнес-юнита K2 Cloud Сергей Зинкевич.
1 минута
854
26 декабря 2022
Что выгоднее — использовать готовую платформу для управления контейнерами или разрабатывать своими силами?
Совсем недавно мы провели опрос среди ИТ-руководителей, чтобы выяснить, насколько они знакомы с технологией Kubernetes и используют ли ее в ИТ-инфраструктуре своей компании, личных проектах и т.д. Результаты показали, что 63% опрошенных уже работает с Kubernetes прямо сейчас, 23% пока не дошли и 14% участников планируют в ближайшее время.
1 минута
477
22 декабря 2022
Как сэкономить с помощью аутсорсинга: ИТ-процессы, которые можно делегировать
Есть ряд процессов, которые можно безболезненно передать на аутсорс и разом решить несколько задач: снять с себя вопрос поиска кадров, получить необходимый уровень экспертизы и, как правило, сэкономить время и деньги.
1 минута
578
15 ноября 2022
OpenShift остался без поддержки – как решить проблему российским клиентам
Интерес к семейству ПО для контейнеризации OpenShift был довольно высоким в корпоративном сегменте в прежние годы. По данным мониторинговой службы Datadog, только за прошлый год во всем мире количество пользователей платформ от RedHat увеличилось на 28%. Весной IBM объявил об уходе из России и прекращении поддержки всех программных продуктов для текущих клиентов. Разберемся, насколько критичной оказалась данная ситуация для заказчиков, и какие варианты действий существуют, чтобы минимизировать возможные риски отключения от сервиса.
0 минут
623
scrollup