0
- 22.10.2015 - 09:58
|
Помнится, как-то уже поднимал тему, но ничего толкового так и не нашел. Вопрос касается zabbix. Есть два равноценных сервера на freebsd, на обоих есть sendmail. Действия на обоих серверах одинаковые - слать почту с адреса peppa_pig@mail.ru. Когда срабатывает alert - приходит 2 одинаковых сообщения. Как сделать так, чтобы два сервера проверяли друг друга (можно и обычным пингом, можно и агентом) и когда сосед перестал отвечать - переключали роли кому слать почту а кому молчать? Я пробовал тупо прибивать руками sendmail а потом башем его включать - не помогает, он запускается почему-то раньше, чем отрабатывает скрипт. Кто что подскажет? П.С. кластер собирать не предлагайте, в силу обстоятельств сделать это не возможно. | |
1
- 22.10.2015 - 11:57
| Вопрос в следующем: что шлет через них уведомление zabbix server? Думаю надо его учить слать через нужный сервер, а не городить костыли вокруг серверов. Или я не понял задачи. | |
2
- 22.10.2015 - 16:23
|
"Вопрос в следующем: что шлет через них уведомление zabbix server?" - я ничего не понял :-) Он шлет что на таком-то узле случилось то-то (например служба остановилась). "Думаю надо его учить слать через нужный сервер" - есть только 1 почтовый сервер, он же нужный. Еще раз задача - есть два абсолютно идентичный сервера и у обоих в настройках заббиска указан один и тот же почтовый ящик. Когда что-либо происходит - приходят два идентичных письма. А мне хочется чтобы мониторили оба, а слал только один (а другой молчал в этом время) | |
3
- 22.10.2015 - 17:38
|
У вас два заббикс сервера идентичных и без кластера на freebsd? Думаю вам надо смотреть в сторону кастомной нотификации. там в заббиксе можно дернуть скрипт на событие, т.е. двасервера дергаю скрипт, происходит магия, и уходит одно письмо. Магия - возможно выделить отельный сервер который принимает запрос на отправку сообщения, проверяет что такого еще не было и отправляет сообщение. | |
4
- 22.10.2015 - 18:02
| Да просто добавить в событие ещё один триггер доступности другого сервера, делов-то =) Договориться только, что первый, например, при срабатывании основного события и доступности второго шлёт письмо, а второй в этом случае шлёт только при недоступности первого. | |
5
- 23.10.2015 - 08:25
|
droidman - я тоже думал об этом и делал так. Но, чтобы это работало - надо, чтобы было такое условие: если недоступен агент на другом сервере (или пропал пинг), то включать отправку сообщений (а такого действия я не нашел). Стандартное условие - если что-то произошло - выполнить скрипт, или отправить одно письмо, но не включить подсистему отправки писем целиком. to 40KHYTbIU - я магию воспринимаю только со стороны кода, если умеете колдовать - предложите, а я доработаю )))) | |
| Интернет-форум Краснодарского края и Краснодара |