Помогла бы машина времени пересесть с Puppet на Ansible меньше чем за 4 года? Инфраструктура как код

Доклад принят в программу конференции
Андрей Никольский
Банки.ру

Работает с вебом с 2001 года: фриланс, поддержка проектов, CRM-системы, системное администрирование.
В Банки.ру работал PHP-разработчиком, тимлидом, руководителем техподдержки, шефом Unix-инженеров и DevOps'ом.
Сейчас делает примерно всё это в разных пропорциях, эксплуатируя всю инфраструктуру всех порталов.

Telegram @Andrewus
nikolskiy@banki.ru
Тезисы

* Краткая предыстория *
У нас было два монолита, полтора десятка сервисов и полсотни окружений dev-qa-prod. Мы хотели бы остановиться, но, раз нырнув в SOA, приходится барахтаться.

Что болело: всё это никак не лезло в docker, постоянно требовало рефакторинга и сложно поддерживалось.

Решили, что нужно всё переделать, и в качестве целевой системы выбрали Ansible (плюсы каждый подставит сам). Нас ограничивали бизнес, чувство самосохранения и обязательства перед командой: без даунтаймов и остановки разработки.

...
Прошло 3 года.
— Ну? когда уже откажемся от Puppet'а?
— Скоро, — грустно отвечаем мы, выгребая баги после теста нового стейджинга.

* Финал *
За 4 года мы выросли втрое по ИТ (и в 6 раз по выручке) и торжественно останавливаем Puppet-сервер!

* Эпилог *
Сидя с рюмочкой шампанского у себя в квартале, легко фантазировать: "Вот была бы у нас машина времени, что я бы сам себе сказал за 45 минут лет пять назад?":
- Куда смотреть?
- Что считать?
- Сколько людей было, а сколько нужно? И, главное, как это посчитать?
- Какой план составлять на эту работу? И какие сроки обозначить?
- Как, когда и по каким точкам контролировать?
- Как это можно "продать бизнесу"?
- Когда менять план и как это объяснить?

Другие доклады секции Инфраструктура как код