Путь devops в «parallels» / Константин Назаров (parallels)

45
Путь DevOps в Parallels Константин Назаров @racktear

Upload: ontico

Post on 16-Apr-2017

812 views

Category:

Engineering


3 download

TRANSCRIPT

Page 1: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Путь DevOps в ParallelsКонстантин Назаров

@racktear

Page 2: Путь DevOps в «Parallels» / Константин Назаров (Parallels)
Page 3: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Сборка

Page 4: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Сборка

ToolsSDK GUI

Aux

Page 5: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Сборка

SDK GUIAux

Tools

Page 6: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Сборка

Page 7: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Сборка

• ? компонентов • ? сборок в год • 8 часов на билд • 1 билд в день

• 20 компонентов • 10 Тб сборок в год • 1.5 часа на билд • 2-3 билда в день

Было Стало

Page 8: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Сборка

• Единая “точка входа” • Понятная структура • Простое управление

Page 9: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Управление Серверами

Page 10: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

С чего начиналось

Page 11: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

• Гора билд серверов • Ручное управление • Нет повторяемости • Боязнь сломать

Этап 1

Page 12: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

• Виртуальные машины • Распределенная ФС • Клонирование • Vagrant

Этап 2

Page 13: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

• Управление конфигурацией • Деплой “одной кнопкой” • Интеграция со сборкой

Этап 3

Page 14: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

• Единая “точка входа” • Тестируемое знание • Общая ответственность

Результат

Page 15: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Система Контроля Версий

Page 16: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Система Контроля Версий

SVN

Page 17: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Система Контроля Версий

GIT

Page 18: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

`

• Единая “точка входа” • Понятная структура • Документация • Быстрое “ревью” кода

Почему?

Page 19: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Пока вы не смотрите…

Page 20: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Пока вы не смотрите…

• Коллеги “срезают углы” • Деградируют процессы • Времени не хватает

Page 21: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

“Операционные” фичи

Page 22: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

“Операционные” фичи

• Сложно объяснить • Выгода не ясна • Приоритет - низкий

Page 23: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

“Операционные” фичи

В итоге у вас нет контроля

Page 24: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Помогаем себе сами

Page 25: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Помогаем себе сами

• людей не изменить • разные цели • разные привычки • инерция

Page 26: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Культура

Page 27: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Культура

• Меняется “сверху” • Довольно устойчива • Вне нашего влияния

Page 28: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Если б я был Голдратт…

The Goal

Page 29: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Или Билл Палмер

The Phoenix Project

Page 30: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

сила воли

Но в реальности…

Page 31: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

сила воли

Но в реальности…

Page 32: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

сила воли

Но в реальности…

Page 33: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

сила воли

Но в реальности…

Page 34: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Сложные системы

Page 35: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Сложные системы

• Хаотичная структура • Непонятные связи • Постоянный “дрифт”

Page 36: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Сложные системы

Что делать?

Page 37: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Сложные системы

Ввести ограничения

Page 38: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Нет контроля - нет решения

Page 39: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Нет контроля - нет решения

• культуру • коллег • руководство

Поэтому не трогаем:

Page 40: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Меняем то, что достижимо

Page 41: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

• Находим хаотическое поведение • Ищем средство “локализации” • Убираем человека из “контроля”

Меняем то, что достижимо

Page 42: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

А как же карго-культ?

Page 43: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

А как же карго-культ?

Говорят что это плохо…

Page 44: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

А как же карго-культ?

• Решает проблему • Уменьшает сложность • Создает модульность

Не так плохо, если:

Page 45: Путь DevOps в «Parallels» / Константин Назаров (Parallels)

Путь DevOps в ParallelsКонстантин Назаров

@racktear http://hangops.ru

Спасибо!