Nagios: не Мог разрешить имя хоста

Моя установка:

hosts.cfg - содержит определения для каждого хоста при контроле, например:

define host{
        use                     linux-server
        host_name               rdss-vpn
        display_name            VPN
        address                 54.***.***.176
        }

hosts_groups.cfg - определите группы:

define hostgroup{
        hostgroup_name   rdss-service-server
        alias            RDSS services
        members          [...],  rdss-vpn
        }

services.cfg:

define service{
        use                             local-service
        hostgroup_name                  rdss-web-server, rdss-service-server
        service_description             Memory usage
        check_command                   check_linux_memory!50!80
        notifications_enabled           1
        }

И check_linux_memory в commands.cfg:

define command{
        command_name    check_linux_memory
        command_line    $USER1$/check_nrpe -H $HOSTNAME$ -c check_linux_memory -a '-f -w $ARG1$ -c $ARG2$'
        }

Вот пример хоста, где check_linux_memory работы:

define host{
        use                     linux-server
        host_name               www.dev.domain.com
        display_name            DEV
        address                 54.***.***.136
        }

Это - группа:

define hostgroup{
        hostgroup_name   rdss-web-server
        alias            RDSS web servers
        members          www.dev.domain.com, www.qa.domain.com, www.staging.domain.com
        }

Проблема с немногими новыми добавленными хостами, как rdss-vpn - Nagios не доберется, это - IP от хостов (отметьте - у меня есть немного других серверов (также в группах) в check_linux_memory - все работы).

Вместо этого - у меня есть ошибка в nagios.log:

[1437473407] СЕРВИСНОЕ ПРЕДУПРЕЖДЕНИЕ: rdss-vpn; Использование памяти; ПРЕДУПРЕЖДЕНИЕ; ТРУДНО; 4; (Никакой вывод на stdout) stderr: не Мог разрешить имя хоста rdss-vpn: Имя или сервис, не известный

2
задан 21 July 2015 в 13:42
1 ответ

Ваша проблема в том, что вы написали свою команду проверки для использования $ HOSTNAME $ вместо $ HOSTADDRESS $ .

Это работает для других ваших хостов,потому что они названы с использованием полных доменных имен (например, www.dev.domain.com). Это не работает для rdss-vpn , потому что это недопустимое имя хоста с точки зрения вашего компьютера Nagios.

В проверках следует использовать адрес, а не имя хоста. Это удаляет DNS как зависимость для проверок Nagios. Если вам действительно нужно использовать имя хоста вместо IP, введите имя хоста в качестве адреса хоста.

Кроме того, традиционно можно просто передать проверку в check_nrpe как ARG, например check_nrpe! check_memory или check_nrpe! check_memory! 50 80 . Но в конечном итоге решать вам.

3
ответ дан 3 December 2019 в 10:42

Теги

Похожие вопросы