Просто в какой-то момент я окончательно уехал в облака.
Промежуточным этапом были gold images для Kubernetes-нод.
Да, буквально образ VM можно собрать кодом. Описать, какие пакеты там должны быть, какой runtime, kubelet, sysctl, сертификаты, агенты — собрать образ пайплайном и хранить всю его историю в Git.
Не «вот та VM, которую Вася настроил два года назад и лучше её не трогать».
А артефакт.
Сломалась нода — выкинул. Из того же описания приехала новая.
Но сейчас у меня цепочка стала ещё короче.
Мне не надо сначала заказать VM, потом зайти туда, что-то настроить, потом раскатить Kubernetes, потом идти разворачивать приложение.
Я пишу в репозиторий инфраструктуры примерно следующее:
> хочу PostgreSQL-кластер, три реплики, вот столько CPU, вот столько памяти, вот такие диски.
git commit && git push.Дальше я уже почти зритель.
GitOps-контроллер увидел изменение и начал сходиться к нему.
Не хватает capacity — Karpenter поднимает дополнительные ноды.
Нужен диск — CSI запросил volume.
Облако его создало, Cinder приаттачил к нужной ноде.
Оператор PostgreSQL поднял кластер, собрал кворум, настроил репликацию.
Через какое-то время у меня просто есть работающий PostgreSQL внутри Kubernetes.
Я даже не думал, на какой конкретно машине он должен жить.
И вот это, наверное, главное изменение.
Раньше значительная часть работы была про:
«куда поставить?»
«на какую VM зайти?»
«что там уже установлено?»
«а можно её перезагрузить?»
«а кто вообще знает пароль?»
Сейчас — описываешь, что тебе нужно получить, а нижние слои сами разбираются, где и как это разместить.
Не потому что железо исчезло.
Просто мне больше не надо каждый раз заниматься им лично.
Время сейчас такое.
От идеи до деплоя заказчик даёт ровно день.
И тот был вчера.