Чтобы разрешить распределение нагрузки и отказоустойчивость, Zabbix прокси-серверы могут быть организованы в группы прокси.
Распределение нагрузки и отказоустойчивость прокси-серверов — это автоматическое перераспределение узлов сети между прокси-серверами в пределах группы прокси:
Перераспределение узлов сети работает только между прокси-серверами в группе, которая удовлетворяет следующим условиям:
Работоспособность группы прокси может отслеживаться при помощи внутренних проверок любым узлом сети, назначенным на группу прокси. Однако, для отслеживания работоспособности отдельного прокси-сервера в группе, назначьте узел сети на этот прокси; в противном случае результаты могут быть нецелостными.
Распределение нагрузки и отказоустойчивость прокси управляются Zabbix сервером через процесс proxy group manager, который постоянно отслеживает состояние всех прокси-серверов в каждой группе прокси и распределение узлов сети на них.
Отказоустойчивость прокси в пределах группы обеспечивается через переключение прокси: при останове прокси его узлы сети немедленно перераспределяются на другие прокси. Также происхоит и распределение нагрузки, поскольку узлы сети переназначаются на прокси с наименьшим числом назначенных на них узлов сети.
Кроме того, распределение нагузки прокси активируется, когда количество узлов сети прокси-сервера отличается от среднего по группе как минимум на 10 узлов сети и в 2 раза (превышение либо недостаток узлов сети). Если дисбаланс сохраняется по истечении льготного периода (10 x задержка переключения), то группа прокси ставится в очередь на перераспределение узлов сети.
Процесс proxy group manager перераспределяет узлы сети, используя следующую логику:
Примеры перераспределения узлов сети:
Узлов сети на прокси-сервере | Среднее по группе | Переназначение узлов сети |
---|---|---|
100 | 50 | Да |
60 | 50 | Нет |
40 | 50 | Нет |
25 | 50 | Да |
15 | 5 | Да |
10 | 5 | Нет |
Наличие менее чем 10 узлов сети, наблюдаемых через группу прокси, может привести к неравномерному распределению узлов сети между прокси-серверами в этой группе.
Для настройки группы прокси в веб-интерфейсе Zabbix:
Параметр | Описание |
---|---|
Имя (Name) | Имя группы прокси-серверов. |
Период аварийного переключения (Failover period) |
Период в секундах, в течение которого прокси-сервер в группе прокси должен связаться с сервером Zabbix, чтобы считаться онлайн (по умолчанию: 1m; диапазон: 10s–15m). Если прокси не связывается в течение этого периода, состояние прокси меняется на Офлайн (Offline), и его узлы сети немедленно перераспределяются по другим прокси. Распределение нагрузки прокси начинается по истечении этого 10-кратного периода. Поддерживаются суффиксы времени (например, 30s, 1m) и пользовательские макросы. |
Минимальное количество прокси (Minimum number of proxies) |
Наименьшее число онлайн прокси-серверов, требующихся для поддержания группы прокси онлайн (по умолчанию: 1; диапазон: 1–1000). Поддерживаются пользовательские макросы. Это значение должно быть меньше общего числа прокси-серверов в группе. Например, в группе из 10 прокси, настройка минимума в 10 приведёт к тому, что группа перейдёт в офлайн при сбое любого из прокси-серверов. Обратите внимание, что онлайн-прокси в офлайн-группе продолжают нормально работать, но балансировка нагрузки и отказоустойчивость функционировать не будут. |
Описание (Description) | Описание группы прокси. |
Прокси (Proxies) | При редактировании группы с прокси-серверами отображается список — до пяти прокси-серверов (в виде ссылок или обычного текста, в зависимости от прав пользователя на прокси-серверы). |
Чтобы использовать распределение нагрузки между прокси-серверами, требуется в веб-интерфейсе Zabbix настроить группу прокси (смотрите выше) и убедиться, что узлы сети наблюдаются через группу прокси, а не отдельные прокси-серверы (можно использовать массовое обновление узлов сети, чтобы переместить их от прокси-сервера в группу прокси).
При использовании Zabbix агентов также настройте их следующим образом:
Если параметр ServerActive
включает только один прокси-сервер из группы прокси (или Zabbix сервер), то агент всё ещё будет способен подключиться к правильному прокси-серверу. Когда служба агента запустится и подключится к указанному прокси-серверу, агент получит и закэширует полный список IP прокси-серверов и их текущую загрузку в группе. Затем активные проверки будут перенаправлены на правильный онлайн-прокси для этого узла сети, на основе текущего назначения «прокси-сервер — узел сети» в этой группе прокси.
Наличие только одного прокси, указанного в параметре ServerActive
Zabbix агента, может привести к потере данных мониторинга в случае, если агент запускается/перезапускается, пока указанный прокси недоступен.
При использовании утилиты Zabbix sender, запросы с данными также перенаправляются на правильный онлайн-прокси для узла сети, на основе текущего назначения «прокси-сервер — узел сети» в этой группе прокси. Однако, если вы отсылаете из одного файла значения нескольких узлов сети, используйте опцию -g
, стобы предотвратить отсылку данных на неверный прокси.
Zabbix агент также должен быть способен подключаться через брандмауэр ко всем прокси-серверам в группе прокси. В противном случае активные проверки во время перенаправления либо переключения могут подвиснуть или завершиться неудачей. Например:
Чтобы протестировать балансировку нагрузки прокси: