Заблуждения, связанные с инструментами
Многие ошибочные представления, связанные с использованием инструментов в devops-процессах, сводятся к важности конкретных инструментов в devops-решениях.
Мы используем технологию X, тогда как другие используют технологию Y; мы должны любой ценой перейти к использованию технологии Y
Как упоминалось в части I, devops является культурным движением. Культура включает в себя набор технологий и крупномасштабных изменений. Все это, особенно в случае санкционирования со стороны менеджмента, ведет к замедлению развития организации в целом. Прежде чем отказаться от используемой технологии, нужно распознать в среде инструменты, являющиеся частью существующей культуры, узнать все об опыте взаимодействия людей с этими инструментами, о сходствах и различиях в использовании. В результате выполнения подобной проверки и оценки вы сможете определить, какие изменения должны быть выполнены и следует ли их выполнять прямо сейчас.
Единственное исключение из вышеописанной ситуации – обновления. Модернизация технологии необходима. Чем дольше вы будете откладывать обновление, тем больше вы будете накапливать «долгов», связанных с надежностью и тестированием совместимых способов обновления. В случае слишком раннего обновления может понадобиться внедрить систему контроля качества для продукта. Если же обновление выполняется слишком поздно, возможно, вам придется использовать «технологию вчерашнего дня».
Заимствование инструментов, используемых в успешных компаниях, не обязательно обернется успехом для вашей организации. Сосредоточьтесь на процессе, а не на результате. Если технология X успешно используется в вашей среде, не отказывайтесь от нее.
Наличие конкретного инструмента или технологии не означает, что вы не можете развернуть успешную инициативу devops. Использование каналов IRC вместо Slack или Hipchat, запуск и выполнение серверов на физическом сервере вместо «облака» либо использование монолита PHP вместо микросервисов Go не исключает использования идей devops. Суть движения devops заключается в культуре производства и в организации совместной работы, а не в применении самых современных инструментов. Качество общения не зависит от того, какую программу чата вы используете, – современную или двадцатилетней давности.
Использование технологии X эквивалентно внедрению devops
Существуют определенные группы или типы инструментов и технологий, которые могут существенно помочь с внедрением инициатив devops. В качестве основных примеров приводились система контроля версий и автоматизация инфраструктуры. Важно понять, почему эти примеры столь ценны и каким образом эта ценность влияет на человеческий фактор при создании программного обеспечения.
Например, автоматизация инфраструктуры позволяет сотрудникам вносить изменения более непосредственным и надежным способом, уменьшая риск и «трения», связанные с изменениями.
Без учета воздействия вышеописанных факторов на «человеческий аспект» воздействие технологий будет в значительной степени нивелировано. Если вы, например, начнете использовать автоматизацию инфраструктуры, но при этом продолжите поддерживать прежние процессы контроля изменений, которые являлись «болевыми точками» для разработчиков, вряд ли вы ощутите реальные преимущества от автоматизации инфраструктуры. Ни один инструмент сам по себе не способен исправить разрушенную культуру. Чтобы использовать инструменты более эффективно, нужно обратить внимание на то, как и почему люди используют инструменты, что они пытаются сделать и как инструменты могут помочь или помешать им в этом.
Простое добавление в среду Chef, Docker, Slack или любого другого инструмента, часто упоминаемого в связи с devops, вовсе не означает, что вы «сделали devops». На самом деле набор инструментов – это лишь одно из условий организации совместной работы. Не наличие или отсутствие инструмента приводит к формированию или разрушению инициативы devops. Инструменты могут лишь помогать или мешать формированию культуры, основанной на devops.
Мы должны убедиться в том, что не выбрали некорректный инструмент
Некоторые люди опасаются, что выбор «некорректного» инструмента будет иметь пагубные последствия как для проекта, так и для организации в целом. Эти опасения могут еще больше раздуваться поставщиками, утверждающими, что вы «должны» использовать именно их продукты и решения, чтобы внедрить devops. Естественно, сначала нужно убедиться в том, что ваши решения не приведут к серьезным негативным последствиям.
Читать дальше
Конец ознакомительного отрывка
Купить книгу