Помогла бы машина времени пересесть с Puppet на Ansible меньше чем за 4 года? Инфраструктура как код
* Краткая предыстория *
У нас было два монолита, полтора десятка сервисов и полсотни окружений dev-qa-prod. Мы хотели бы остановиться, но, раз нырнув в SOA, приходится барахтаться.
Что болело: всё это никак не лезло в docker, постоянно требовало рефакторинга и сложно поддерживалось.
Решили, что нужно всё переделать, и в качестве целевой системы выбрали Ansible (плюсы каждый подставит сам). Нас ограничивали бизнес, чувство самосохранения и обязательства перед командой: без даунтаймов и остановки разработки.
...
Прошло 3 года.
— Ну? когда уже откажемся от Puppet'а?
— Скоро, — грустно отвечаем мы, выгребая баги после теста нового стейджинга.
* Финал *
За 4 года мы выросли втрое по ИТ (и в 6 раз по выручке) и торжественно останавливаем Puppet-сервер!
* Эпилог *
Сидя с рюмочкой шампанского у себя в квартале, легко фантазировать: "Вот была бы у нас машина времени, что я бы сам себе сказал за 45 минут лет пять назад?":
- Куда смотреть?
- Что считать?
- Сколько людей было, а сколько нужно? И, главное, как это посчитать?
- Какой план составлять на эту работу? И какие сроки обозначить?
- Как, когда и по каким точкам контролировать?
- Как это можно "продать бизнесу"?
- Когда менять план и как это объяснить?
В деле с 2001 года: поддержка проектов, CRM-системы, системное администрирование, разработка сайтов.
В Банки.ру работал PHP-разработчиком, тимлидом, руководителем техподдержки, шефом Unix-инженеров и DevOps'ом.
Два раза целиком менял платформу под ногами, приложил руку к хорошему, выпиливал плохое. Часто ошибается и редко унывает.
nikolskiy@banki.ru