Я использую monit v5.16, работающий в Debian Wheezy, чтобы проверить, работает ли сервер или нет, с помощью инструкции ping.
Вот моя конфигурация:
check host my.server.domain with address my.server.domain
mode passive
every 5 cycles
if failed ping4 count 5 then alert # IPv4 only
if failed ping6 count 5 then alert # IPv6 only
Я всегда получаю такую ошибку:
[CET Mar 1 23:28:32] error : Ping for my.server.domain -- getaddrinfo failed: Name or service not known
[CET Mar 1 23:28:32] error : 'my.server.domain' ping test failed
Если я пингую из командной строки, все работает нормально:
PING my.server.domain (yy.yyy.yyy.yyy) 56(84) bytes of data.
64 bytes from myoffice.com (xx.xxx.xx.xxx): icmp_req=1 ttl=54 time=1147 ms
Я не хочу ничего помещать в свой / etc / hosts или что-то жестко запрограммированное на сервере, где работает monit.
Что я мог сделать, чтобы решить эту проблему? Это ошибка?
Стоит ли использовать другую версию monit? Есть ли обходной путь?
Проблема здесь возникла из-за того, что я добавил ping6
инструкция.
ping4
(или ping
) в одиночку будет работать. Добавление ping6
делает эту проверку неудачной (и приводит к getaddrinfo failed
ошибка).