Ad Widget

Collapse

Кол-во активных хостов в подсети

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • dimugric
    Member
    • Apr 2013
    • 59

    #1

    Кол-во активных хостов в подсети

    Всем привет.
    Имеется 5 подсетей и хотелось бы переодически смотреть ск-ко хостов активны в той или иной подсети. Решил добавить такой сервис себе в заббикс. Наткнулся сразу на статью http://habrahabr.ru/post/119112/. Тут приведен пример php-скрипта. У меня так не заработало, да и php не силён. Стал свой метод изобретать. Нарисовал мини скрипт, который с помощью nmap собирает инфу из подсети и выдаёт кол-во. Вот такой он:
    Code:
    #!/bin/bash
    nmap -sP 192.168.9.0/24 > /home/root/nmap/skl2
    cat /home/root/nmap/skl2 | grep -E -o '[0-9]+ hosts? up' | cut -f 1 -d ' '
    Конечно к нему придераться можно, но он выдаёт число, причём правильное, которое мне нужно.
    Изучая документацию читаю, что в конфиг /etc/zabbix/zabbix_agentd.conf нужно добавить
    Code:
    UserParameter=network-skl2,/home/root/nmap/job
    Здесь network-skl2 - название шаблончика, job - скрипт и путь до него
    Перезапускаю агента, создаю Item по агенту, прописываю название ключа network-skl2, строю график. Пишет что Item активирован, а на предпросмотре графика тишина. Покажите куда копать. Заранее спасибо
  • yukra
    Senior Member
    • Apr 2013
    • 1359

    #2
    Я не полял зачем тебе агент. Тебе нужны внешние проверки и 5 `фэйковых` хостов с разными ip.

    Comment

    • dimugric
      Member
      • Apr 2013
      • 59

      #3
      Originally posted by yukra
      Я не полял зачем тебе агент. Тебе нужны внешние проверки и 5 `фэйковых` хостов с разными ip.
      Мне нужно, чтоб на моей серверной заббиксовой машине выполнялся с n-переодичностью скрипт и подхватывал данные и строил график. Привёл ссылку на статью как используют внешний скрипт. Поправьте, если не так.

      Comment

      • neogan
        Senior Member
        Zabbix Certified Trainer
        Zabbix Certified SpecialistZabbix Certified Professional
        • Sep 2011
        • 118

        #4
        А что в колонке ошибка у данного айтема?
        Настройки - Узлы сети - Элементы данных

        Comment

        • dimugric
          Member
          • Apr 2013
          • 59

          #5
          Originally posted by neogan
          А что в колонке ошибка у данного айтема?
          Настройки - Узлы сети - Элементы данных
          Вы правы! Чёрт, странно...переделал на внешнюю проверку, AlertScriptsPath=/home/root/zabbix/alterscripts прописал, а в Узле, в элементе данных стоял "крест" и написано было, что мой скрипт в /var/lib/zabbixsrv/alertscripts/ не обнаружен. Положил скрипт туда и всё стало ок. Интересно, почему путь не изменился к скриптам

          Comment

          • yukra
            Senior Member
            • Apr 2013
            • 1359

            #6
            Originally posted by dimugric
            Мне нужно, чтоб на моей серверной заббиксовой машине выполнялся с n-переодичностью скрипт и подхватывал данные и строил график. Привёл ссылку на статью как используют внешний скрипт. Поправьте, если не так.
            Если данный скрипт нужно выполнять с сервера заббикса, я бы сделал через внешние проверки.

            Таким образом мы:
            1) Не гоняем лишний раз данные по сети (lo - тоже сетевой интерфейс со всеми вытекающими
            2) Не плодим лишние сущности в zabbix_agentd.conf

            Хотя если Ваше решение у Вас работает и устраивает Вас, можно и не обращать внимание на мое нытье.

            Comment

            • dimugric
              Member
              • Apr 2013
              • 59

              #7
              Originally posted by yukra
              Если данный скрипт нужно выполнять с сервера заббикса, я бы сделал через внешние проверки.

              Таким образом мы:
              1) Не гоняем лишний раз данные по сети (lo - тоже сетевой интерфейс со всеми вытекающими
              2) Не плодим лишние сущности в zabbix_agentd.conf

              Хотя если Ваше решение у Вас работает и устраивает Вас, можно и не обращать внимание на мое нытье.
              Как раз в итоге через внешние проверки и сотворил. Всё норм получилось) Спасибо вам. добрые люди

              Comment

              • prostrelov
                Senior Member
                • May 2012
                • 115

                #8
                dimugric, спасибо. Не знал что nmap так умеет.

                Comment

                • andreysan
                  Member
                  • Dec 2009
                  • 34

                  #9
                  Может стоит облегчить скрипт
                  #!/bin/bash
                  nmap -sP 192.168.9.0/24 > /home/root/nmap/skl2
                  cat /home/root/nmap/skl2 | grep -E -o '[0-9]+ hosts? up' | cut -f 1 -d ' '

                  на
                  #!/bin/bash
                  nmap -sP 192.168.9.0/24 | tail -n 1 | tr -d '(' | cut -f 6 -d ' '

                  Просто grep все-же тяжеловесная хрень и проверять ей весь файл
                  ради последней строки вывода nmap не стоит

                  Comment

                  Working...