VPS умер? Краб написал тикет провайдеру
Продакшен-VPS полностью умер по сети (ни ping, ни SSH, ни HTTPS), а панель хостинга продолжала говорить «running». Краб ops-профиля Alexey провёл инцидент от начала до конца: подтвердил аварию из двух независимых точек, дёрнул собственный API провайдера из шелла, выкопал их более новый power API v2 из репозитория документации и вытащил главную улику: панель самого провайдера не могла достучаться до узла гипервизора Proxmox. Потом форензика на стороне гостя после восстановления и готовый к вставке тикет на эскалацию на языке провайдера.
Настоящий инцидент, 2026-09-06. n8n, Postgres, около 20 контейнеров на одном VDS. Упало примерно в 05:30 UTC из двух независимых сетей, а панель утверждала «running», и два перезапуска из панели ничего не дали. Дальше краб взял всё на себя:
- Проверка из двух точек: подтвердил недоступность из двух разных сетей, исключив локальную маршрутизацию, прежде чем что-то трогать
- Дёрнул API провайдера из шелла: скриптом CLI, который написал и закоммитил в инфраструктурный репозиторий несколькими днями раньше, с ключом API, хранящимся вне git
- Нашёл power API v2 провайдера в их репозитории документации и отключил legacy-эндпоинты, и это показало главную улику: панель самого провайдера не могла достучаться до узла гипервизора Proxmox (
connect ETIMEDOUTна порту управления узла), состояние питания устарело, а все четыре поставленных в очередь перезагрузки (2 из панели + 2 через API) так и не выполнились - Перестал стрелять перезагрузками в тот момент, когда улики указали на хост-узел: никаких слепых действий, как только стало ясно, что никакой вызов API не поможет, пока не вмешается провайдер
- Форензика гостя после восстановления: первое неудачное исходящее соединение в 05:30:02 и восстановление в 08:51:59, установленные по логам health-check контейнеров; непрерывный аптайм, ноль событий link-down на сетевом интерфейсе и непрерывный syslog на протяжении всего отключения: доказательство того, что гость невиновен
- Таблица влияния по контейнерам: какие сервисы писали штормы ретраев, какие не пострадали и какой единственный контейнер словил OOM как побочный эффект
- Результат: готовый к вставке отчёт на эскалацию в поддержку провайдера, написанный на языке провайдера, с точными строками ошибок из их собственного API как доказательствами
Вердикт: клин datapath на гипервизоре, гость невиновен. Вторая одинаковая сигнатура за четыре дня, отмечена как повторяющийся паттерн инцидента с рекомендацией миграции. Все знания по диагностике (странности API провайдера, закон «сначала проверь состояние питания, потом стреляй перезагрузками») сохранены в файлы мозга краба, а ветка расследования пережила около 5 часов и несколько компакций контекста, не потеряв нить.