Knigionline.co » Наука, Образование » Философия DevOps. Искусство управления IT

Философия DevOps. Искусство управления IT - Дженнифер Дэвис, Кэтрин Дэниелс (2016)

Философия DevOps. Искусство управления IT
IT-принцип «agile» стал настоящей мантрой цифровых времён. С подъемом планов, переходом от цельных приложений к системе микросервисов, наращиванием и скоплением товаров появляются вопросы, которые настоятельно просят абсолютно другого расклада. Ныне больший внимание вызывает оказавшаяся на стыке разработки и операционного управления методология DevOps.
DevOps – это не элементарно комплект техник, это философия. Создатели, зацикленные на юзерах, обязаны уделять забота помощи и ее запросам. Сисадмины обязаны говорить о дилеммах продукта и заносить личный лепта в совершенствование процесса работы. Но налаживание связей изнутри фирмы – это только 1-ый шаг. Дабы продукт стал обычным и комфортным, будет необходимо вложить время и ресурсы в его доработку. Форма сквозь центральную службу, внедрение обычным копированием, недоступность наружных зависимостей, продуманные метрики взамен мусора в логах – вот только доля задач, которые будет необходимо улаживать на данном пути.
Книжка «Философия DevOps» познакомит вас с техническими, культурными и управленческими качествами devops-культуры и дозволит осуществить работу так, дабы вы получали наслаждение от разработки, помощи и применения программного обеспечения.

Философия DevOps. Искусство управления IT - Дженнифер Дэвис, Кэтрин Дэниелс читать онлайн бесплатно полную версию книги

Процесс развертывания кода настолько хорошо оптимизирован, что на его выполнение тратится около 10 минут в среднем (от начала до завершения), и инженерный персонал Etsy проделывает эту операцию до 60 раз в день. Благодаря наличию документации и наставничеству опытных сотрудников, объясняющих подробности процесса, начинающий инженер запускает код в производство за один день. Даже сотрудники, не относящиеся к инженерному персоналу, поощряются к участию в процессе в рамках программы First Push Program. Под руководством инженеров они развертывают небольшие изменения, такие как публикация фотографий на странице персонала веб-сайта. Помимо использования для регулярного развертывания ПО, процессы тестирования и Deployinator могут применяться для развертывания чего угодно – от инструментов, применяемых разработчиками для построения виртуальных машин, до панелей Kibana, применяемых для поиска журналов, от проверок программы мониторинга Nagios до самого процесса Deployinator.

Эволюция культуры развертывания ПО

История с компанией Etsy резко контрастирует с практикой, которая имела место еще несколько лет назад. В те времена применялся менее прозрачный и более подверженный ошибкам процесс развертывания, который занимал до четырех часов. Разработчики вместо виртуальных машин использовали физические блейд-серверы. Но эти серверы были недостаточно мощными для выполнения полного набора автоматизированных тестов. Для полного прогона тестов, выполняемого в рабочей среде, требовалась пара часов, и даже это не гарантировало хорошего результата.

Группы, сформированные в инженерной организации, были разрознены. Многие разработчики имели склонность «перебрасывать» код через «метафорические стены» эксплуатационной группе, которая несла исключительную ответственность за мониторинг и поддержку этого кода. В результате появлялась склонность к слишком частому изменению кода. Разработчики создавали код, вызывали на выполнение вручную написанные сценарии, чтобы создать новую SVN-ветвь. При этом развертывание выполнялось с помощью средства svn merge. Этот довольно сложный в применении инструмент применялся для слияния всех изменений, выполненных разработчиками, в одной ветви развертывания. Затем разработчики сообщали об используемой ветви инженеру из службы эксплуатации, наделенному полномочиями по выполнению развертывания ПО. Как видите, процесс развертывания был весьма кропотливым и занимал много часов (рис. 1.1). По причине сложности этот процесс выполнялся раз в две-три недели.

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

Образно говоря, инженер из эксплуатационной службы передал «ключи от царства развертывания» двум разработчикам, которым было предоставлено время и ресурсы на внесение нужных изменений в процесс развертывания. Как говорится, если есть молоток, то все, что нас окружает, может исполнять роль гвоздей, ну а если в вашей организации работает разработчик веб-приложений, возникает острая необходимость в создании таких приложений. Именно таким образом и появилось первое приложение Deployinator (рис. 1.2). Изначально это приложение представляло собой веб-оболочку, в которую заключался сценарий оболочки. Со временем благодаря усилиям многих пользователей это приложение было серьезно улучшено. Причем интерфейс остался практически без изменений, значительным изменениям подверглись внутренние механизмы.

Рис. 1.1. До появления среды Deployinator процесс развертывания был сложным и полным ошибок

Перейти
Наш сайт автоматически запоминает страницу, где вы остановились, вы можете продолжить чтение в любой момент
Оставить комментарий