Мониторинг порта 22 удаленного сервера ssh

У нас есть серверы Windows в AWS, у которых есть проблемы с выполнением sshget с сервера cdn, мы получаем тайм-ауты, и мы не знаем, почему.

Можем ли мы поставить проверку в naemon (сервер мониторинга) на основе nagios, чтобы NRPE на серверах выполнял telnet для удаленного хоста johndoetv.upload.cdn.com через порт 22 и становился критическим через 30 секунд в случае подключения.

Я пробовал check_tcp, но это не помогло, или я могу использовать nrpe в этом случае на удаленном сервере в Windows

eg.

define service {
  service_description            akamai_sshget
  hostgroup_name                 playready
  use                            generic-service
  check_command                  check_tcp -H ctv.upload.akamai.com -p 22 -w 15 -c 30
  contact_groups                 admins
}

person Suhail    schedule 10.10.2015    source источник
comment
На каком языке вы работаете?   -  person    schedule 10.10.2015
comment
Я не знаю, если честно, я не программист, я только устанавливаю версию nagios naemon и изменяю существующие шаблоны, чтобы использовать их для мониторинга. Кто-нибудь знает, как я могу отслеживать подключение с сервера Windows к cdn dns через порт 22 в течение недели и генерировать отчеты в случае простоя?   -  person Suhail    schedule 10.10.2015


Ответы (1)


Я определил команду, которая ssh в поле, а затем запускает check_ssh (стандартная вещь nagios) на другом сервере:

define command {
        command_name    ssh_check_ssh
        command_line    /usr/lib/nagios/plugins/check_by_ssh -H $_HOSTGATEWAY$ -C "/usr/lib/nagios/plugins/check_ssh $HOSTADDRESS$"
}

Вам нужно будет определить _gateway и address для серверов и указать адрес сервера, с которого у вас возникли проблемы с подключением:

define host{
  use                  generic-host
  host_name            ctv.upload.akamai.com
  alias                ctv.upload.akamai.com
  address              ctv.upload.akamai.com
  _gateway             server.that.is.having.connection.issus
  check_command        ssh_check_ssh
}

Очевидно, вы можете адаптировать это, чтобы заставить его работать с группами, а не с отдельными хостами.

person IBam    schedule 10.10.2015
comment
у нас есть сценарий poershell, который имитирует задачи sshget, мы хотели бы добавить эту функцию в nagios вместо зависимости от powershell, поэтому с нашего сервера nagios мы можем имитировать сценарий для cdn? - person Suhail; 10.10.2015
comment
я пробовал выше, но когда я перезапускал naemon, я получаю сообщение об ошибке, что означает неверный синтаксис, также мы используем /lib64, а не /lib - person Suhail; 11.10.2015
comment
Можете ли вы запустить команду самостоятельно, то есть /usr/lib64/nagios/plugins/check_by_ssh -H $_HOSTGATEWAY$ -C "/usr/lib64/nagios/plugins/check_ssh $HOSTADDRESS$"? (очевидно, правильно заменяя материал, окруженный $$? - person IBam; 13.10.2015
comment
Другой вариант, если все, что вам действительно нужно, это журнал успеха / неудачи, - это использовать cronjob и скрипт bash. Что-то вроде nc -q 1 -w 1 ctv.upload.akamai.com 22 - код выхода даст вам успех, тогда вы можете писать в журнал все, что хотите? - person IBam; 13.10.2015