Ad Widget

Collapse

zabbix user parameter

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • prostrelov
    Senior Member
    • May 2012
    • 115

    #16
    Тот же вопрос с синтаксисом UserParametr
    Code:
    nano /etc/iperf/iperf.sh
    #!/bin/bash
    /usr/bin/iperf -c 192.168.0.1 -d | sed -n '12,13p' | awk '{ print$5 $6 }'
    
    nano /etc/zabbix_agentd.conf
    UserParameter=speedtest01,sudo /etc/iperf/iperf.sh
    nano /etc/sudoers
    zabbix ALL=(ALL) NOPASSWD: /usr/bin/nmap -O *
    zabbix ALL=(ALL) NOPASSWD: /usr/bin/iperf/, /etc/iperf/

    zabbix_get -s 127.0.0.1 -k speedtest01
    ZBX_NOTSUPPORTED

    сам скрипт отрабатывает где-то секунд 30 может нужен какой-то таймаут в пайпе или параметре или zabbix в любом случае дожидается завершения скрипта

    Посмотрел логи
    tail -F /var/log/zabbix/zabbix_agentd.log
    ... failed to kill [sudo /etc/iperf/iperf.sh]: [1] Operation not permitted
    но права вроде стоят ALL или я в sudoers ошибся
    Last edited by prostrelov; 28-03-2013, 11:38.

    Comment

    • dima_dm
      Senior Member
      • Dec 2009
      • 2697

      #17
      Originally posted by prostrelov

      сам скрипт отрабатывает где-то секунд 30 может нужен какой-то таймаут в пайпе или параметре или zabbix в любом случае дожидается завершения скрипта
      Максимальный возможный Timeout для zabbix_agentd и zabbix_server 30 секунд.
      /etc/zabbix/zabbix_agentd.conf
      Timeout=30
      /etc/zabbix/zabbix_server.conf
      Code:
      ### Option: Timeout
      #       Specifies how long we wait for agent, SNMP device or external check (in seconds).
      #
      # Mandatory: no
      # Range: 1-30
      # Default:
      Timeout=30
      И рестартовать zabbix_agent и zabbix_server
      Его можно увеличить, исправив исходный код

      Comment

      • dima_dm
        Senior Member
        • Dec 2009
        • 2697

        #18
        Originally posted by prostrelov
        nano /etc/sudoers
        zabbix ALL=(ALL) NOPASSWD: /usr/bin/nmap -O *
        zabbix ALL=(ALL) NOPASSWD: /usr/bin/iperf/, /etc/iperf/
        И c sudo похоже накосячили, там полные пути к программам должны быть, а не к директориям.

        Comment

        • prostrelov
          Senior Member
          • May 2012
          • 115

          #19
          полные пути уже поправил.
          Ещё раз спасибо огромное, Timeout в агенте помог.
          Last edited by prostrelov; 28-03-2013, 12:24.

          Comment

          • dima_dm
            Senior Member
            • Dec 2009
            • 2697

            #20
            Originally posted by prostrelov
            полные пути уже поправил.
            Ещё раз спасибо огромное, Timeout в агенте помог.

            Оказывается можно указывать и директории
            Command Aliases

            Command aliases are lists of commands and directories. You can use this to specify a group of commands. If you specify a directory it will include any file within that directory but not in any subdirectories.

            Comment

            • prostrelov
              Senior Member
              • May 2012
              • 115

              #21
              Не получается передать параметр исполняемому скрипту через zabbix_agentd.conf
              Code:
              nano /etc/zabbix_agent.conf
               UserParameter=speedtest01[192.168.0.1],sudo /usr/bin/iperf.sh $1
              
              nano /usr/bin/iperf.sh
               #!/bin/bash									
               FROMHOSTIP=$1
               /usr/bin/iperf -c $FROMHOSTIP -d | sed -n '12,13p' | awk '{ print$5 $6 }'
              zabbix_get -s 127.0.0.1 -k speedtest01
              ZBX_NOTSUPPORTED

              Comment

              • dima_dm
                Senior Member
                • Dec 2009
                • 2697

                #22
                Неправильный синтаксис
                Правильно так
                /etc/zabbix_agent.conf
                Code:
                UserParameter=speedtest01[*],sudo /usr/bin/iperf.sh $1
                Тестируем так
                zabbix_get -s 127.0.0.1 -k speedtest01[192.168.0.1]

                Comment

                Working...