Итоги H1 2015: что сделали, что сдвинулось, что прилетело сбоку
Закрываем первое полугодие 2015-го: Debian Jessie, VENOM, Logjam, ФЗ-242 и контейнеры - разбираем план против реальности и намечаем H2.
Итоги H1 2015: Debian Jessie, VENOM, ФЗ-242, активный рост контейнеризации, импортозамещение
Полгода прошло. Самое время открыть январский план, сравнить с тем, что реально произошло, и честно зафиксировать расхождения - до того как они успеют переписаться в голове в «так и планировали».
Что из плана сделано
Начнём с хорошего.
Ansible-автоматизация продвинулась заметно дальше, чем рассчитывали. В январе ставили цель - перевести на провизионинг через playbooks трёх-четырёх клиентов с ручным onboarding-ом. По факту сделали больше, причём без форсирования: несколько клиентов сами пришли с запросом после того, как видели результат у соседних проектов. Сейчас роли с Galaxy, структура репозитория, Windows через WinRM - всё это работает в проде, а не в пилоте.
Windows Server 2003 - дедлайн 14 июля уже дышит в затылок, и, что важно, большинство критичных серверов уже мигрировано или имеет чёткий план. В январе было несколько клиентов, где инвентаризация существовала только в головах у сисадминов. Сейчас - конкретные списки, конкретные даты, конкретные окна. Оставшиеся кейсы - это специализированное оборудование с вендорными ограничениями, которые обходятся изоляцией, а не миграцией.
ELK и централизованные логи - развернули ещё у нескольких клиентов, часть перешла с ELK на Graylog2 - кому что удобнее. Логирование из категории «хорошо бы» перешло в «есть и работает».
PostgreSQL как замена Oracle/MSSQL - два завершённых перехода за полгода. Это небыстрая работа, и то, что оба закрыты без откатов - хороший знак.
Что сдвинулось вправо
Ceph в продакшне - пилот был, и даже неплохой, но до промышленной эксплуатации не дошли. Не потому что плохо работает, а потому что клиентов с нужным профилем нагрузки и готовностью к операционным накладным расходам Ceph оказалось меньше, чем думали. Эта история продолжается в H2.
Мониторинг: Zabbix 3.0 - объявлен, но релиза нет. Тестируем бета-версии, внутренний стенд есть, но в продакшн не тащим.
Docker Swarm в продакшне - тут всё честно: смотрели, оценили, решили не торопиться. Swarm в нынешнем состоянии для продакшна с требованиями к uptime - это авантюра. Compose для локальных окружений - да, используем. Оркестрация кластера - нет, не сейчас.
Что прилетело сбоку
Вот тут интереснее всего. Две крупные неплановые работы плюс одна регуляторная история, которая ускорилась.
VENOM (CVE-2015-3456) в мае. Уязвимость в эмуляторе флоппи-дисковода QEMU, позволяющая выйти из виртуальной машины на гипервизор - это не повседневная история. Мы начали патчить до публичного анонса, прошлись по всем KVM-хостам клиентов, согласовали окна, перезапустили VM. Подробно писали в отдельном посте и потом - про процесс патчинга. Итого: несколько дней активной работы, которых в плане не было. Всё закрыли без инцидентов, но ресурс потратили.
Logjam (май) - ещё одна TLS-уязвимость, на этот раз атака на DH-обмен с weak export-шифрами. После FREAK в марте это уже второй раз за полгода, когда приходится массово пересматривать SSL/TLS-конфиги. Алгоритм отработан: инвентаризация -> приоритизация по открытым сервисам -> патчинг + усиление конфигов nginx/Apache. Процесс становится рутиной, что само по себе результат, но всё равно это внеплановые окна и внеплановое время.
Debian 8 Jessie - вышел в апреле, и миграция с Wheezy оказалась более активной, чем ожидали. Часть клиентов ждала именно стабильного Jessie чтобы обновиться, так что июнь прошёл с несколькими плотными миграционными сессиями. Главная история там - systemd по умолчанию, к чему часть сервисов была не готова. Писали про это отдельно.
ФЗ-242 и локализация ПДн - это не совсем «сюрприз», мы про это писали ещё в январе, но скорость с которой часть клиентов дотянула до июня без конкретных действий - неприятна. Формально дедлайн 1 сентября ещё не наступил, но у нескольких организаций вопрос «а где у нас хранятся данные граждан РФ» до сих пор не имеет документированного ответа. Это проблема, и сейчас мы активно её закрываем.
Контейнеры: отдельная строка
Контейнеризация за полгода сделала больший шаг, чем мы предполагали в январе. Не в продакшн-кластерах, но в CI/CD и dev-окружениях - плотно. Docker Compose для локальных стеков, Docker Machine для воспроизводимых сборочных окружений, первые взгляды на CoreOS и rkt. Экосистема растёт быстро - Swarm, Compose, Machine, Kubernetes на горизонте. Кто из этого выживет и в каком виде - открытый вопрос, но игнорировать направление уже нельзя.
Для клиентов на сопровождении это означает, что мы начинаем включать «готовность к контейнерам» в стандартные чеклисты новых инфраструктур: сеть, хранилище, подходы к логированию - всё это лучше выстраивать с учётом контейнерного будущего, чем переделывать потом.
Приоритеты H2
Без торжественности, просто список:
- Windows Server 2003 - дожать оставшееся до и сразу после июльского дедлайна. Нет никаких причин затягивать.
- ФЗ-242 - у каждого клиента с персональными данными должна быть карта: что, где хранится, на каком основании. До 1 сентября.
- Ansible 2.0 - анонсирован в разработке, следим за изменениями include_roles и новой архитектурой. Планируем переезд части playbooks, как только выйдет стабильный релиз.
- Zabbix 3.0 - как только выйдет стабильный релиз, начинаем миграцию тестовых окружений.
- Импортозамещение - реестр отечественного ПО для госорганов готовится, и спрос на консультации по теме реальный. Это не наш основной фокус, но игнорировать не получится.
Полгода было плотным. Две внеплановые уязвимости, один крупный релиз дистрибутива, регуляторный дедлайн и контейнерный хайп - всё одновременно. План выполнен примерно на две трети, остаток перенесён с обоснованием. Это нормальный результат для инфраструктурной команды с живыми инцидентами в расписании.