Добавить в корзинуПозвонить
Найти в Дзене
infra_notes

Почему ручные изменения на серверах ломают автоматизацию

Почти в любой инфраструктуре есть момент, когда автоматизация уже работает, но иногда всё равно приходится «зайти на сервер и быстро поправить».
Это кажется безобидным.
Нужно всего лишь:
И система снова работает.
Оглавление

Почти в любой инфраструктуре есть момент, когда автоматизация уже работает, но иногда всё равно приходится «зайти на сервер и быстро поправить».

Это кажется безобидным.

Нужно всего лишь:

  • изменить один параметр
  • установить пакет
  • поправить конфигурацию

И система снова работает.

Проблема в том, что такие изменения редко остаются единичными.

Почему ручные изменения появляются

Причины почти всегда одинаковые:

  • нужно быстро исправить проблему
  • автоматизация ещё не покрывает этот случай
  • проще «сделать руками», чем менять сценарий

В моменте это выглядит как рациональное решение.

Но со временем такие изменения начинают накапливаться.

Что происходит потом

Через какое-то время появляются знакомые симптомы:

  • конфигурации начинают отличаться
  • автоматизация перестаёт давать ожидаемый результат
  • новые серверы выглядят иначе
  • часть изменений существует только в памяти администратора

И постепенно инфраструктура снова начинает расползаться.

Почему автоматизация этого не любит

Автоматизация предполагает, что система находится в известном состоянии.

Когда в конфигурацию вмешиваются вручную:

  • реальное состояние перестаёт совпадать с ожидаемым
  • сценарии начинают работать непредсказуемо
  • появляются новые исключения

Каждое такое исключение делает систему сложнее.

Самая неприятная часть

Иногда ручные изменения не ломают автоматизацию сразу.

Они проявляются позже:

  • при обновлении
  • при масштабировании
  • при восстановлении системы

И тогда становится сложно понять,

почему результат отличается от ожидаемого.

Почему это происходит даже у опытных администраторов

Ручные изменения — не признак плохой дисциплины.

Чаще это результат давления:

  • инциденты
  • нехватка времени
  • срочные задачи

В таких условиях проще исправить проблему напрямую.

Но если изменения не возвращаются обратно в автоматизацию,

они начинают жить своей жизнью.

Что помогает избежать этой проблемы

Есть простое правило:

если изменение было сделано вручную — его нужно зафиксировать в системе управления конфигурацией

Даже если кажется, что это «разовый случай».

Так инфраструктура остаётся предсказуемой.

Ручные изменения почти всегда начинаются как удобство.

Но со временем они превращаются в источник расхождений между тем,

как система должна работать,

и тем, как она работает на самом деле.

Автоматизация работает только тогда,

когда инфраструктура остаётся воспроизводимой.