Файл: Дэвис Дженнифер, Дэниелс КэтринД94 Философия DevOps. Искусство управления it. Спб. Питер, 2017. 416 с. ил. Серия Бестселлеры OReilly.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 07.11.2023
Просмотров: 361
Скачиваний: 25
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Предисловие
29
Использование примеров кода
У книги есть сайт, где можно найти список опечаток, дополнительные истории и другой сопутствующий материал. Все это доступно по следующему адресу:
http://effectivedevops.net.
Эта книга призвана помочь вам в решении задач. По большей части вы можете использовать код из книги в своих программах и документации. Вам не нужно связываться с нами по поводу получения разрешения на это, если только вы не начнете копировать достаточно существенные фрагменты кода. Например, на- писание программы, в которой используется несколько фрагментов кода из этой книги, не требует разрешения. А вот продажа или распространение компакт-дис- ков с примерами из книг издательства O’Reilly требует разрешения. Ответы на во- просы с использованием цитат из этой книги и приведением примеров не требуют получения разрешения. А вставка существенных объемов кода примеров из этой книги в документацию потребует разрешения.
Мы приветствуем, но не требуем добавлять ссылку на первоисточник при цити- ровании. Под ссылкой на первоисточник мы подразумеваем указание названия, автора, издательства и ISBN. Например: «Философия DevOps. Искусство управ- ления ИТ», Дженнифер Дэвис и Кэтрин Дэниелс (O’Reilly), 978-1-491-92630-7».
За получением разрешения на использование значительных объемов программ- ного кода примеров из этой книги обращайтесь по адресу permissions@oreilly.com.
Safari® Books Online
Safari Books Online — это виртуальная библиотека, содержащая авторитетную ин- формацию в виде книг и видеоматериалов, созданных ведущими специалистами в области технологий и бизнеса.
Профессионалы в области технологий, разработчики программного обеспечения, веб-дизайнеры, а также бизнесмены и творческие работники используют Safari Books
Online как основной источник информации для проведения исследований, решения проблем, обучения и подготовки к сертификационным испытаниям.
Библиотека Safari Books Online предлагает широкий выбор продуктов и тарифов для организаций, правительственных и учебных учреждений, а также физических лиц.
Подписчики имеют доступ к поисковой базе данных, содержащей информацию о тысячах книг, видеоматериалов и рукописей от таких издателей, как O’Reilly
Media, Prentice Hall Professional, Addison-Wesly Professional, Microsoft Press,
Sams, Que, Peachpit Press, Focal Press, Cisco Press, John Wiley & Sons, Syngress,
Morgan Kaufmann, IBM Redbooks, Packt, Adobe Press, FT Press, Apress, Manning,
New Riders, McGraw-Hill, Jones & Bartlett, Course Technology, и сотен других. За подробной информацией о Safari Books Online обращайтесь по адресу: http://www.
safaribooksonline.com/.
30
Предисловие
Благодарности
Написание книги Философия DevOps. Искусство управления ИТ было бы невоз- можным без помощи и содействия со стороны многих друзей, коллег и членов семьи. Мы хотели бы выразить благодарность всей команде издательства О’Reilly, особенно Кортни Нэшу (Courtney Nash), который всячески стимулировал нас на написание книги. Мы благодарны нашему редактору, Брайану Андерсону (Brian
Anderson), оказавшему нам безусловную поддержку. Мы также благодарны со- трудникам издательства, которые помогли выбрать тотемных животных для книги и которые благословили нас на использование изображения волосатого яка в ка- честве символа книги. Мы также благодарны всем тем, кто помог нам написать эту книгу. Мы также признательны Джону Оллспоу (John Allspaw), Ларе Хоган (Lara
Hogan) и Джону Кови (Jon Cowie) из Etsy; Николь Форсгрен (Nicole Forsgren) и Ивонн Лам (Yvonne Lam) из Chef; Бриджит Кромхаут (Bridget Kromhout) из
Pivotal; Тому Лимончелли (Tom Limoncelli) из Stack Exchange за помощь, поддер- жку и вдохновение.
Спасибо участникам наших тематических исследований: Алексу Ноберту (Alex
Nobert), Бриджит Кромхаут (Bridget Kromhout), Тиму Гроссу (Tim Gross,) Тине
Донбек (Tina Donbeck) и Федре Маршалл (Phaedra Marshall).
Спасибо всем, кто поделился своими историями, в том числе Давиде Марион
(Davida Marion), Линде Лаубенхаймер (Linda Laubenheimer), Холли Кей (Hollie
Kay), Николь Джонсон (Nicole Johnson) и Элис Голдфасс (Alice Goldfuss).
Спасибо нашим техническим рецензентам, которые помогли довести текст кни- ги до совершенства: Элис Голдфасс (Alice Goldfuss), Дастину Коллинзу (Dustin
Collins), Эрнсту Мюллеру (Ernest Mueller), Мэтью Скэлтону (Matthew Skelton),
Оливье Жаку (Olivier Jacques), Бриджит Кромхаут (Bridget Kromhout), Ивонн
Лам (Yvonne Lam) и Питеру Нилону (Peter Nealon).
Спасибо Энди Парофф за Эда, нашего великолепного яка, изображение которого красуется на сайте и на обложке.
Благодарности от Кэтрин
Спасибо руководству Etsy за предоставленную мне возможность работать над кни- гой, выступать на множестве конференций и за великолепное место для работы.
Дополнительные благодарности хочу выразить команде веб-поддержки за помощь и проявленное во время осуществления проекта терпение. Благодаря работе с вами я никогда не забывала о том, за что я люблю эту работу. Я хочу выразить особую благодарность Майку Римбетси (Mike Rembetsy), который ни разу мне не сказал
«нет» в ответ на мои вопросы, Джону Оллспоу (John Allspaw) за вдохновение и веру в мои силы, а также Лори Диннесс (Laurie Denness) и Джону Кови (Jon Cowie) за предоставленную поддержку и информацию, которые помогли мне повысить ква- лификацию как инженеру службы поддержки.
Предисловие
31
Спасибо Лоре Хоган (Lara Hogan), Бриджит Кромхаут (Bridget Kromhout), Хэйт
Хьюстон (Cate Huston) и Меллисе Сантос (Melissa Santos) за то, что они отлич- ные друзья, великолепные ролевые модели и просто веселые девушки. Благодаря знакомству и беседам с вами я черпала силы даже в безнадежных ситуациях. Ваша поддержка просто бесценна.
Спасибо Джеймсу Тернбуллу (James Turnbull) за общение в Твиттере все эти годы, благодаря которому я попала в сообщество профессионалов в области технической поддержки. Я ценю знакомство с вами, вашу поддержку, мудрость и вдохновение на писательский труд.
Спасибо Джейсону Диксону (Jason Dixon) за высланное мне первое приглашение на конференцию. Он был убежден, что мне есть что сказать на конференции, хотя я тогда совсем не была уверена в этом.
Спасибо сообществу профессионалов в области техподдержки и devops-сообще- ству в целом, и особенно сообществу профессионалов в области техподдержки из Нью-Йорка за предоставленную помощь, новые возможности и друзей, вместе с которыми можно наслаждаться великолепным пивом Sysdrink.
Спасибо Дженнифер Дэвис, моему лучшему другу, напарнику на конференциях и соавтору. Мозговой штурм, написание книги, общение, обучение и редактиро- вание вместе с тобой стало удивительным приключением для меня. Я очень рада, что довелось поработать с тобой.
И наконец, спасибо моей маме за поддержку, поощрение и веру в мои силы. На- писание этой книги было бы невозможным без преданной любви и поддержки моих кошек, которые мурлыкали и грели меня в процессе написания книги.
Благодарности от Дженнифер
Спасибо Chef за предоставленные возможности многому научиться у различных организаций, а также за поддержку совместного обучения в форме бесед и тре- нингов.
Спасибо всем женщинам, работающим в данной области, которые изменяют спо- собы работы путем внедрения новых подходов, а также приемлемых форм и норм поведения. Ваш голос непременно будет услышан. Продолжайте обмениваться опытом и обращаться за необходимой поддержкой.
Спасибо devops-сообществу в целом, которое вновь пробудило во мне желание стать его частью. Члены этого сообщества разработали систему поддержки и по- ощряют устойчивые практики на рабочих местах. Спасибо всем людям, которые поделились своими личными историями и опытом.
Спасибо Ивонн Лам (Yvonne Lam), Бриджит Кромхаут (Bridget Kromhout), До- минике Де Грандис (Dominica DeGrandis), Мэри Грейс Ченгволл (Mary Grace
Thengvall), Эми Скаварда (Amye Scavarda), Николь Форсгрен (Nicole Forsgren)
32
Предисловие и Шери Элджин (Sheri Elgin) за проявление поистине бесценных дружеских чувств. Ваше мнение и поддержка помогли мне многое понять и выработать свою собственную точку зрения на разные вещи. Благодаря вашей помощи я стала ак- тивнее и сильнее.
Спасибо Кэтрин Дэниелс (Katherine Daniels), моей подруге и соавтору, за вдумчи- вые и вдохновляющие часы, проведенные в размышлениях. Она постоянно вдох- новляла меня на писательский труд и редактирование ранее написанного текста.
Мы прошли вместе все этапы этого проекта, иллюстрируя на практике мысли по поводу devops. Для меня было большой честью работать с тобой над книгой, по- священной devops.
Спасибо моей бабушке, учителю начальной школы Frances Wadsworth Hayes, которая вдохновляла меня делиться своими историями и учиться на протяжении всей жизни. Эта книга никогда бы не появилась на свет, если бы не любовь и под- держка моей семьи, Брайана Бреннана и Джорджа.
От издательства
Ваши замечания, предложения и вопросы отправляйте по адресу электронной почты comp@piter.com (издательство «Питер», компьютерная редакция).
Мы будем рады узнать ваше мнение!
Подробную информацию о наших книгах вы найдете на веб-сайте издательства:
http://www.piter.com.
Часть I
ОСНОВЫ DEVOPS
1 2 3 4 5 6 7 8 9 ... 39
ГЛАВА 1
Первое знакомство
По сути devops — это способ мышления и работы. Это своего рода каркас, слу- жащий для того, чтобы делиться историями и развивать эмпатию. Благодаря devops отдельные люди и группы могут эффективно и непрерывно развивать свои навыки. Это часть культурной «ткани», которая формирует способы выполнения работы, а также создает мотивацию для этой работы. Многие представляют devops как некий набор специфических инструментов, таких как Chef или Docker, но на самом деле devops не ограничивается ими. Инструменты превращаются в «devops» благодаря способу их применения, а не в силу характеристик самих инструментов.
Помимо используемых на практике инструментов, не менее важную часть куль- туры devops составляют ценности, нормы и знания. Благодаря исследованию ра- бочего процесса, технологий, применяемых в работе, и влияния этих технологий на работу в целом облегчается принятие специальных решений, относящихся как к ландшафту наших организаций, так и к ландшафту сектора экономики в целом.
Обратите внимание, что devops — это не просто еще одна методология разработки
ПО. Несмотря на то что devops связан и даже в какой-то мере зависит от таких методик разработки ПО, как Agile или XP, а devops-практики могут включать способы разработки или такие средства, как автоматизация инфраструктуры или непрерывная доставка, на самом деле devops — это нечто большее, чем просто сум- ма составных компонентов. Хотя вышеупомянутые концепции связаны и часто реализуются в devops-средах, сосредоточение исключительно на них приведет к тому, что вы пропустите самое главное — культурные и межличностные аспекты, которые придают devops его мощь.
Культура развертывания ПО
Что же нужно для формирования успешной культуры развертывания ПО? Чтобы продемонстрировать факторы, влияющие на успех культуры, рассмотрим совокуп- ность людей, процессов и инструментов, сформированную в Etsy. Эта компания
Глава 1. Первое знакомство
35
представляет интерактивный глобальный рынок товаров ручной работы, а так- же винтажных товаров. Мы выбрали в качестве примера Etsy не только потому, что этот бренд хорошо известен в отрасли своими техническими и культурными практиками. Основная причина выбора этой компании заключается в том, что
Кэтрин — опытный сотрудник компании Etsy, который может компетентно судить о сформированной в этой компании культуре.
Инженер, принятый на работу в Etsy, начинает свой первый рабочий день за ноутбуком, на котором установлена подготовленная виртуальная машина для ведения разработки. Для него уже созданы соответствующие учетные записи, по- зволяющие подключиться к этой машине и пройти авторизацию. Склонированы наиболее популярные репозитории GitHub, предварительно созданы системные ссылки и указатели для соответствующих инструментов. Также на рабочем столе новоиспеченного инженера имеется руководство, включающее ссылки на другие корпоративные ресурсы. Благодаря стандартизации инструментов и применяемых практик для различных групп облегчается подключение к процессу новых людей, независимо от того, в состав какой группы они входят. Каждая команда также мо- жет настроить применяемые инструменты и практики на свое усмотрение.
К новому сотруднику прикрепляется опытный специалист, который знакомит новичка с процессами разработки и тестирования ПО, ежедневно применяемыми в организации. Новый сотрудник начинает создавать код на локальной вирту- альной машине, предназначенной для разработки программ. С помощью модуля управления конфигурацией среда виртуальной машины настраивается таким образом, что становится практически идентичной реальной производственной сре- де. В результате можно выполнять и тестировать код локально. Это дает возмож- ность быстро выполнять работу и вносить необходимые изменения, не привлекая опытных специалистов из группы разработчиков в качестве консультантов.
Путем запуска набора локальных модулей и функциональных тестов инженеры
Etsy могут с большой долей вероятности гарантировать работоспособность вне- сенных в ПО изменений на локальном уровне. Также они могут протестировать из- менения на отладочном сервере. При этом используется Jenkins-кластер, который практически идентичен производственному кластеру непрерывной интеграции
(CI). К тому же Jenkins-кластер обладает дополнительным преимуществом: для перехода к мастер-ветви не нужен дополнительный код. После успешного прого- на тестов инженеры получают дополнительные гарантии того, что изменения не приводят к нарушению работоспособности тестов.
В зависимости от масштаба и сложности изменений новый инженер может от- править запрос на принятие изменений кода или попросить кого-либо из коллег просмотреть код. Эта процедура не является обязательной для каждого изме- нения и зачастую осуществляется на усмотрение сотрудника. В среде Etsy, ко- торой присуща высокая степень доверия и где отсутствует практика напрасных обвинений, сотрудникам предоставляется право принимать решение о необхо- димости про смотра кода. Новым или менее опытным сотрудникам предлагаются