Двухуровневая модель конфигурации
Как глобальные шаблоны конфигурации и переопределения на уровне сервера каскадируются, чтобы изменение общего значения доходило и до хостов с локальными исключениями.
Обновлено 2026-08-26
Настраивать парк хост за хостом не масштабируется, а настраивать только глобально не выдерживает столкновения с реальностью - всегда найдётся один сервер базы данных, которому нужен другой порог по диску. Servers Sentinel решает это так же, как CSS: значения по умолчанию каскадируются, а локальное правило переопределяет один ключ, не заменяя остальные.
Как работает слияние
- Глобальный шаблон задаёт значения по умолчанию для вида конфигурации - интервалы сбора, пороги, включённые сборщики.
- У сервера может быть переопределение: патч, содержащий только отличающиеся ключи.
- Агенту отдаётся эффективная конфигурация - шаблон, глубоко слитый с переопределением.
Важно то, что происходит при правке шаблона. Поскольку переопределение - это патч, а не копия, хост, переопределивший disk.threshold, всё равно получит новый cpu.interval, который вы только что задали глобально. При копировании на переопределение - а именно так устроено большинство инструментов - такой хост тихо застыл бы на значениях, которые были в момент создания исключения.
Разобранный пример
Глобальный шаблон сборщика диска:
{
"interval": "60s",
"warn_percent": 85,
"critical_percent": 95,
"ignore_mounts": ["/snap"]
}Сервер базы данных, который по замыслу живёт с высокой занятостью диска, переопределяет один ключ:
{
"warn_percent": 92
}Что фактически получает агент на этом хосте:
{
"interval": "60s",
"warn_percent": 92,
"critical_percent": 95,
"ignore_mounts": ["/snap"]
}Поднимите позже critical_percent до 97 в шаблоне - и этот хост тоже получит 97, сохранив свои 92. В этом весь смысл.
Где проводить границу
- Всё, что описывает политику, кладите в шаблон: как часто собирать, что считать переполнением, какие сборщики включены.
- Всё, что описывает конкретную машину, кладите в переопределение: точку монтирования, которую надо игнорировать, отличающееся имя службы, порог, оправданный нагрузкой.
- Если одно и то же переопределение пишется больше чем на трёх хостах - это уже не исключение. Заведите группу серверов и сделайте для неё шаблон.