Ad Widget

Collapse

Создание элемента данных

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • lpetr2
    Member
    • Aug 2015
    • 58

    #1

    Создание элемента данных

    Требуется создать такой элемент данных с ключем fping[] . Собственно необходимо именно fping обращаться с узлу и брать значение "alive" или "unreachable"

    В идеале нужна проверка fping host | grep -c unreachable . Результат выводит 0 или 1.

    В простых проверка именно fping нету. Версия zabbix 2.4.5.

    Как можно реализовать?
  • Zentarim
    Senior Member
    • Mar 2012
    • 526

    #2
    Originally posted by lpetr2
    Требуется создать такой элемент данных с ключем fping[] . Собственно необходимо именно fping обращаться с узлу и брать значение "alive" или "unreachable"

    В идеале нужна проверка fping host | grep -c unreachable . Результат выводит 0 или 1.

    В простых проверка именно fping нету. Версия zabbix 2.4.5.

    Как можно реализовать?
    А чем вас icmpping не устраивает?

    Comment

    • lpetr2
      Member
      • Aug 2015
      • 58

      #3
      Есть 2 тригера: DOWN, unreachable.Нужно чтобы unreachable срабатывал если сработал DOWN. Если кто в курсе как сделать. Был бы признателен. Полагаю лучше использовать отдельный элемент данных под это дело вот и возник вопрос по fping.

      Вот и перебираю все возможные варианты. Видимо fping все равно не получится. По факту это тот же icmpping.

      Comment

      • sadman
        Senior Member
        • Dec 2010
        • 1611

        #4
        Что такое "DOWN", что такое "unreachable"... Зачем делать срабатывание триггера по триггеру... Сплошные загадки.

        Если очень нужно использовать fping - почитайте про https://www.zabbix.com/documentation...types/external. А если хотите узнать, как что-то делают другие - опишите, что, зачем и почем.

        Comment

        • lpetr2
          Member
          • Aug 2015
          • 58

          #5
          Есть узел host1, host2,host3, host4, host5.
          host2, host3 работают через host1
          host4 работает через host3
          host5 работает через host4

          Триггер "DOWN" осуществляет проверку всех узлов через icmping. Если узел не доступен то триггер срабатывает.
          Триггер "unreachable" должен будет показывать что узел недоступен по причине недоступности узла через который он работает. Его то я и хочу понять как правильнее настроить.

          К примеру, если host3 недоступен. Тогда host4 и host5 тоже будут недоступны. Мне нужно чтобы у host3 сработал триггер "DOWN". А у host4 и host5 должен сработать триггер "unreachable".

          Так надеюсь понятно.

          Comment

          • sadman
            Senior Member
            • Dec 2010
            • 1611

            #6
            Вот это не подойдет?

            Comment

            • lpetr2
              Member
              • Aug 2015
              • 58

              #7
              Нет. Мне нужно не только видеть какой узел недоступен, но и какие узлы недоступны по причине недоступности ведущего узла. При этом я явно мог видеть что они не ведущие, а зависимые.

              Comment

              • rough-84
                Senior Member
                • Oct 2014
                • 198

                #8
                Ну почему же, зависимость вам подойдет.
                Вы можете создать 2 icmp тригера:
                1. Условием срабатывания является отсутствие пингов как до самого сервера, так и до его ведущего узла, назвав его "unreachable"
                2. "DOWN" Условием будет отсутсвие пинга до сервера и он будет зависеть от "unreachable", т.е если сработал "unreachable", "DOWN" не сработает, зато если "unreachable" не сработал, то это будет означать что дело не в ведущем узле и он сработает.

                Comment

                • zmdpc
                  Senior Member
                  • Oct 2014
                  • 484

                  #9
                  Причитайте еще раз внимательно ссылку про зависимости.

                  Comment

                  • lpetr2
                    Member
                    • Aug 2015
                    • 58

                    #10
                    Схематичном виде проще понимать. https://www.zabbix.com/forum/attachm...1&d=1441187597

                    d1,d2,d3 это триггер down
                    u1,u2,u3 это триггер unreachable


                    Правильно ли я понимаю:
                    Если сработал триггер d2 то сработает u1?
                    и если сработает d3 то сработает u1,u2?
                    Last edited by lpetr2; 13-09-2015, 13:16.

                    Comment

                    • rough-84
                      Senior Member
                      • Oct 2014
                      • 198

                      #11
                      Не вобще не так всё. Это всего лиш мой пример, организовать наверное можно и иначе я лиш дал свой вариант, который можно сделать и он будет рабочим для вас.
                      На основном сервере через который подключены другие пк не нужно делать 2й триггер.

                      Простой пример:
                      host1 - основной хост
                      host2 - подключен через host1
                      host3 - подключен через host1

                      Для хост host1 создаём 1 обычный триггер, например
                      {host1:agent.ping.nodata(60)}=1
                      Сработает если нет пингов до host1 минуту, назовём его Down

                      Для хост host2 (и host3)сначала создадим триггер
                      {host2(3):agent.ping.nodata(60)}=1
                      and
                      {host1:agent.ping.nodata(60)}=1
                      Сработает если нет пингов до host1 и host2(3) минуту, назовём его "unreachable"

                      Дополнительно для host2 и host3 создаём тригер
                      {host2(3):agent.ping.nodata(60)}=1
                      и ставим ему зависимость от первого тригера ({host2(3):agent.ping.nodata(60)}=1
                      and
                      {host1:agent.ping.nodata(60)}=1)
                      Сработает если на host2(3) нет пинга минуту а так же если не запущен триггер "unreachable", и назовём его "Down".

                      Из всего это получается: Если у вас падает основной хост, вы получите собщения что Host1 - down, host2 b host3- unreachable". С другой стороны, если просто упал host 1 или host2 - получите host2(3) Down

                      Чёт я подумал и решил что нафик вобще эту зависемость. Сделайте просто 2 тригера с условиями на зависимых хостах.
                      1."unreachable"
                      {host2(3):agent.ping.nodata(60)}=1
                      and
                      {host1:agent.ping.nodata(60)}=1
                      и host2(3) и host1 не пингуются

                      2. Down
                      {host2(3):agent.ping.nodata(60)}=1
                      and
                      {host1:agent.ping.nodata(60)}=0
                      host2(3) не пингуется а host1 пингуется
                      Last edited by rough-84; 02-09-2015, 12:27.

                      Comment

                      • lpetr2
                        Member
                        • Aug 2015
                        • 58

                        #12
                        1."unreachable"
                        {host2(3):agent.ping.nodata(60)}=1
                        and
                        {host1:agent.ping.nodata(60)}=1
                        и host2(3) и host1 не пингуются

                        2. Down
                        {host2(3):agent.ping.nodata(60)}=1
                        and
                        {host1:agent.ping.nodata(60)}=0
                        host2(3) не пингуется а host1 пингуется
                        Пытаюсь по этому способу. Есть host1 зависимый от host2, host2 от host3.

                        Эти 2 триггера добавляю в host1. Как только их добавляю к host2, то в узле host1 появляются триггеры от host2. Не могу понять почему. Триггеры добавляю именно к узлам, не к шаблонам. Почему не знаешь?

                        Comment

                        • rough-84
                          Senior Member
                          • Oct 2014
                          • 198

                          #13
                          ХЗ, может только если вы копируете условия триггеров из одного в другой, у меня такое было, но я не знаю причину.
                          Думаю если вы через конструктор, каждый тригер создадите указав правильные элементы данных то должно быть ок.

                          Comment

                          • lpetr2
                            Member
                            • Aug 2015
                            • 58

                            #14
                            Не помогло. Походу если присутствует схожий параметр у другого хоста то добавляется и в текущий. Не понятно почему.

                            Comment

                            • lpetr2
                              Member
                              • Aug 2015
                              • 58

                              #15
                              В общем если создаётся триггер в host1 в параметре которого указан узел host2, то этот тригер ещё и в host2 добавляется.

                              Так должно быть или это баг zabbix 2.4.5?

                              Comment

                              Working...