99.5% аптайма. Не AWS. Не Azure. Никакого managed-облака с миллиардным SLA за спиной. Просто Proxmox в домашней лаборатории, которую я собрал с нуля: три ноды тихо гудят в квартире и делают ровно ту работу, для которой, как принято думать, нужен настоящий дата-центр и контракт на поддержку.

Я собирал это не ради экономии и уж точно не ради спокойной жизни. Я собирал это ради одной конкретной вещи, которой не научит ни один туториал: что происходит, когда железо падает, а позвонить некому.

Почему домашняя лаборатория оказалась полезнее ещё одного сертификата

Годами я коллекционировал стандартный набор. Курсы. Облачные песочницы. Сертификаты, которые протухают в ту же секунду, когда закончился экзамен. Всё это неплохо. Но каждая из этих штук живёт внутри страховочной сетки, которую натянул кто-то другой. Поднял VM, сломал, удалил — и единственное последствие это счёт.

Домашняя лаборатория убирает сетку. Когда диск умирает в два часа ночи, это твой диск. Когда сеть начинает моргать, это твоя проводка. Нет тикета, нет эскалации, нет инженера на другом конце света, который уже сто раз чинил ровно эту проблему. Есть только ты, документация и проблема. Вот это давление и есть весь смысл.

Архитектура

Вот что реально крутится:

  • Кластер Proxmox VE с high availability на нескольких нодах, чтобы ни одна машина не была единой точкой отказа.
  • Общее хранилище через Ceph и NFS — именно оно позволяет живую миграцию VM между хостами без простоя.
  • Сетевая инфраструктура с VLAN, bonding и резервированием, заложенным с самого начала, а не прикрученным потом.
  • UPS на всё это хозяйство, потому что питание в квартире — это не ввод дата-центра.

И часть, которая мне важнее всего: ничего не создаётся кликами. Провижининг идёт через Terraform. Конфигурация — через Ansible. Никаких кликов в веб-интерфейсе, ничего не делается руками дважды. Если нода умрёт и её надо пересобрать, я пересобираю её из кода, а не из памяти и старого скриншота.

Тест, который реально имеет значение

Про high availability можно читать годами. Читать — это не то же самое, что доверять. Поэтому я провёл единственный тест, который что-то значит.

Я выдернул кабель питания из живой, работающей ноды.

А потом смотрел. VM с этой ноды автоматически мигрировали на здоровые хосты. Сработал fencing и изолировал мёртвую ноду, чтобы она не испортила общее состояние. Сервисы вернулись за минуты, а не за часы. Ноль потерянных данных.

Этот один момент научил меня HA лучше, чем любой сертификат. Не потому что теория была новой, а потому что я наконец в неё поверил. Я своими глазами видел, как мой кластер держит удар и едет дальше.

«Работает» против «работает надёжно»

Главный урок из всей этой затеи — пропасть между «работает» и «работает надёжно». Пропасть огромная, и именно там тихо останавливается большинство домашних лабораторий и начинается настоящая инженерия.

Несколько привычек, которые закрыли для меня этот разрыв:

  • Мониторь всё. Prometheus и Grafana на каждой ноде, чтобы видеть проблему до того, как она станет аварией, а не после.
  • Проверяй восстановление, а не только бэкапы. Бэкап, который ты ни разу не восстанавливал, — это надежда, а не бэкап. Я восстанавливаю по расписанию и убеждаюсь, что данные реально на месте.
  • Пиши документацию так, будто её будет поддерживать кто-то другой в три часа ночи. Часто этот кто-то — я сам, через несколько месяцев, без единого куска сегодняшнего контекста.

Именно такой подход — относиться к домашнему кластеру как к продакшену — и отличает проект выходного дня от настоящей инженерии. И он напрямую переносится в энтерпрайз, потому что дисциплина одинаковая, взорвётся ли моя гостиная или платформа клиента.

Облако — это чужой компьютер

Я по-прежнему каждый день работаю с AWS и Azure и не собираюсь уговаривать вас их бросить. Managed-облако — правильный ответ для большинства компаний в большинстве случаев. Но оно ещё и прячет механику. Прячет режимы отказа. Позволяет годами катить в прод, ни разу по-настоящему не увидев, что происходит, когда падает нода.

Домашняя лаборатория мне это показывает. Каждый Terraform-модуль, который я пишу, сначала обкатывается здесь. Каждый паттерн мониторинга. Каждая стратегия бэкапов. Инженерия уровня продакшена на домашнем железе — и это железо честно со мной так, как консоль облака не бывает честной никогда.

Облако — это чужой компьютер. Иногда лучший учитель — твой собственный.

Чему тебя научила твоя домашняя лаборатория из того, чему продакшен так и не смог?