Документация
Быстрый старт + описание функций по разделам и устройствам (постоянно дополняется)
Защита от сбоев
В этой статье описана функция «Защита от сбоев» — автоматический мониторинг памяти, CPU и диска с активным вмешательством до исчерпания ресурсов сервера, чтобы сервер не завис намертво.
Понимание в одной фразе
Для сервера страшнее всего не «ошибка в какой-то программе», а ситуация «память съедена / CPU загружен на 100%, машина настолько зависла, что даже SSH не подключается, и остаётся только жёстко перезагрузить её из панели провайдера». Защита от сбоев до того, как это произойдёт, автоматически находит процесс-«пожиратель ресурсов» и разбирается с ним, оставляя вам путь к спасению.
Краткое описание
Защита от сбоев разворачивает на целевом сервере лёгкий демон, который постоянно следит за памятью, CPU и диском. При аномалии с ресурсами он вмешивается автоматически (убивает проблемный процесс) и не даёт серверу стать полностью недоступным из-за OOM (исчерпания памяти) или «взрыва» CPU.
Зачем это нужно (что такое OOM / «взрыв» CPU)
- OOM (Out Of Memory, исчерпание памяти): у программы утечка памяти, или она разом запросила слишком много, и вся память сервера занята. Тогда система для самосохранения начинает «убивать процессы», но часто убивает вместе с ними и ключевые сервисы, вплоть до полного зависания машины.
- «Взрыв» CPU: программа попала в бесконечный цикл или аномально много считает и занимает все ядра. Тогда ни SSH, ни панель не подключаются — остаётся только жёсткая перезагрузка.
Такие сбои обычно развиваются постепенно — сначала какой-то процесс потихоньку съедает ресурсы, и только потом машина встаёт окончательно. Задача защиты от сбоев — вмешаться «до того, как станет непоправимо».
Пороги защиты (значения по умолчанию)
| Защита | Порог по умолчанию | Действие |
|---|---|---|
| Память | Доступная память < 8% | Вмешательство: убивается аномальный процесс, занимающий > 15% (кулдаун 5 минут, чтобы не убивать часто по ошибке) |
| CPU | Нагрузка > число ядер × 3 | Действие только после 3 подряд превышений порога; убивается процесс > 30% |
| Крайний CPU | Нагрузка ≥ порог × 4 | Мгновенное вмешательство без ожидания серии (при «взрыве» CPU времени на реакцию нет) |
| Диск | Использование > 92% | Только предупреждение (файлы автоматически не удаляются) |
> Это проверенные консервативные значения по умолчанию — большинству серверов ничего менять не нужно. При необходимости пороги можно изменить в панели «Защита от сбоев».
Когда пригодится
- На сервере работают программы с нестабильным потреблением памяти (например, некоторые Java-приложения, скрипты парсинга)
- Памяти на сервере мало, её легко забить под завязку
- Нужна «последняя линия обороны» на случай ночного зависания без дежурного
Как пользоваться
1. Откройте у целевого сервера «Панель управления системой → Защита от сбоев»
2. Нажмите «Развернуть в один клик» — панель развернёт демон на целевом сервере по SSH
3. После развёртывания появится «Демон запущен» и список текущих порогов защиты
4. При срабатывании защиты в «Событиях тревоги» видны время срабатывания, причина (какой процесс, сколько ресурсов занял) и выполненное действие
Способ развёртывания
- Серверы с systemd (Debian/Ubuntu/CentOS и др.): развёртывание как сервис systemd, автозапуск при загрузке + автоматический подъём после падения (показывается значок «автозапуск»)
- Серверы без systemd (Alpine и др.): откат к запуску через
nohup(мониторинг работает, но после перезагрузки не поднимается автоматически — нужно развернуть заново вручную)
Примечания
1. Нулевой след: демон — отдельный лёгкий скрипт, он потребляет минимум ресурсов и не влияет на работу целевого сервера.
2. Защита белым списком: потоки ядра и ключевые системные процессы по умолчанию не убиваются, чтобы случайное убийство не обрушило систему.
3. Диск: только предупреждение, без очистки: заполненный диск не приводит к автоматическому удалению ваших файлов (чтобы не потерять важные данные) — панель лишь напоминает разобраться вручную.
4. Удаление: нажмите «Удалить» в панели «Защита от сбоев» — демон и сервис systemd будут удалены.