Ad Widget

Collapse

Weathermap

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • iks
    Member
    • Jun 2010
    • 56

    #1

    Weathermap

    Всем доброго дня.
    Хочу поделиться, как я подключил weathermap к Zabbix. Использую Zabbix 1.8.3, weathermap 0.97.
    Предположим, что фронтенд zabbix установлен в /pub/www/zabbix.
    Скачал weathermap с сайта http://www.network-weathermap.com/. Скаченный zip-архив распаковал в папку с фронтендом zabbix - получилось /pub/www/zabbix/weathermap.
    Сделал два скрипта - источника данных для weathermap:
    1. WeatherMapDataSource_zabbixhost.php - для получения состояния хоста из Zabbix
    2. WeatherMapDataSource_zabbixitem.php - для получения данных для линков между хостами

    Эти скрипты кладутся в /pub/www/zabbix/weathermap/lib/datasources.
    Сделал скрипт zab_chart.php. Это переделанный chart.php zabbix'а. Его положил в /pub/www/zabbix. Для чего нужно было переделывать, напишу ниже.
    Сделал шаблон данных для weathermap (zab_template.conf). Он кладется в /pub/www/zabbix/weathermap/configs.

    Все. Теперь на примере покажу, как это использовать.

    Пример конфиг-файла для weathermap, который лежит в /pub/www/zabbix/weathermap/configs.
    Code:
    INCLUDE configs/zab_template.conf
    # End of global section
    
    # regular NODEs:
    NODE node08757
    	TEMPLATE Zabbix_node
    	LABEL node08757
    	ICON 50 50 images/equip/128/128_g_router_{node:this:status}.png
    	POSITION 131 160
    	SET hostname {node:this:label}
    
    NODE node08959
    	TEMPLATE Zabbix_node
    	LABEL node08959
    	ICON 50 50 images/equip/128/128_g_router_{node:this:status}.png
    	POSITION 609 160
    	SET hostname {node:this:label}
    
    # regular LINKs:
    LINK node08757-node08959a
    	TEMPLATE Zabbix_link
    	NODES node08757 node08959
    	SET hostname_in node08757
    	SET itemkey_in IF_MIB__ifHCInOctets.30
    	SET hostname_out node08959
    	SET itemkey_out IF_MIB__ifHCInOctets.30
    Для каждого узла сети мы указываем переменную hostname. По этому имени определяется узел в Zabbix.
    Для линка указывается начальный и конечный узел сети и их ключи данных.

    Вот zab_template.conf:
    Code:
    HTMLSTYLE overlib
    
    SCALE DEFAULT 0 0   192 192 192
    SCALE DEFAULT 0 1   255 255 255
    SCALE DEFAULT 1 10   140 0 255
    SCALE DEFAULT 10 25   32 32 255
    SCALE DEFAULT 25 40   0 192 255
    SCALE DEFAULT 40 55   0 240 0
    SCALE DEFAULT 55 70   240 240 0
    SCALE DEFAULT 70 85   255 192 0
    SCALE DEFAULT 85 100   255 0 0
    
    SET key_hidezero_DEFAULT 1
    
    # End of global section
    
    # TEMPLATE-only NODEs:
    NODE Zabbix_node
    	USESCALE none
    	LABELBGCOLOR none
    	LABELOUTLINECOLOR none
    	OVERLIBCAPTION {node:this:label}
    	LABELOFFSET 0 -20
    	TARGET zabbixhost:{node:this:hostname}:
    
    # TEMPLATE-only LINKs:
    LINK Zabbix_link
    	WIDTH 3
    	BANDWIDTH 1000M
    	OVERLIBCAPTION {link:this:hostname_in} ({link:this:itemkey_in}) - {link:this:hostname_out} ({link:this:itemkey_out})
    #	INOVERLIBGRAPH http://zabbix.tts.loc/zab_chart.php?host={link:this:hostname_in}&item={link:this:itemkey_in}&height=50&width=300&legend=0
    #	OUTOVERLIBGRAPH http://zabbix.tts.loc/zab_chart.php?host={link:this:hostname_out}&item={link:this:itemkey_out}&height=50&width=300&legend=0
    	OVERLIBGRAPH http://zabbix.tts.loc/zab_chart.php?host[]={link:this:hostname_in}&item[]={link:this:itemkey_in}&host[]={link:this:hostname_out}&item[]={link:this:itemkey_out}&color[]=009900&color[]=000099&drawtype[]=5&drawtype[]=2&height=50&width=400&legend=1
    #	ININFOURL http://zabbix.tts.loc/zab_chart.php?host={link:this:hostname_in}&item={link:this:itemkey_in}
    #	OUTINFOURL http://zabbix.tts.loc/zab_chart.php?host={link:this:hostname_out}&item={link:this:itemkey_out}
    	INFOURL http://zabbix.tts.loc/zab_chart.php?host[]={link:this:hostname_in}&item[]={link:this:itemkey_in}&host[]={link:this:hostname_out}&item[]={link:this:itemkey_out}&color[]=009900&color[]=000099&drawtype[]=5&drawtype[]=2
    	TARGET zabbixitem:{link:this:hostname_in}:{link:this:itemkey_in}:{link:this:hostname_out}:{link:this:itemkey_out}
    В шаблоне Zabbix_node target имеет вид zabbixhost:{node:this:hostname}: . После последнего двоеточия указывается ключ элемента данных, по-умолчанию используется icmpping. Если нужно использовать другое, можно указать после двоеточия или сделать дополнительную переменную для узлов, типа hostname.

    Возвращаясь к вопросу, зачем переделал chart.php. Это сделано для того, чтобы выбирались id элементов по имени узла сети и ключа элемента.

    Все скрипты в аттаче, вопросы/пожелания/дополнения приветствуются

    P.S. Вроде бы ничего не забыл, если что еще вспомню - допишу
    P.P.S. Да, если кто не знает, как сгенерить картинку по конфигу, то используем
    Code:
    php weathermap --config configs/test --htmloutput weathermap.html
    в папке /pub/www/zabbix/weathermap.
    Attached Files
    Last edited by iks; 07-12-2010, 12:05.
  • iks
    Member
    • Jun 2010
    • 56

    #2
    Если кто уже попробовал, отпишитесь, все ли получилось... Хотя может это никому не надо, кроме меня

    Comment

    • Dusty
      Member
      • Dec 2010
      • 70

      #3
      Очень интересно, пока не попробовал - решаем стоит ли zabbix вообще в наших условиях использовать.
      Разрешите поинтересоваться: каково количество узлов (примерное) и, соответственно, какова скорость отрисовки?

      Comment

      • iks
        Member
        • Jun 2010
        • 56

        #4
        Тут дело в том, что weathermap генерирует статический html, поэтому в динамике ничего не отрисовывается и не занимает времени. Вызов weathermap происходит по крону и потом просто можно посмотреть html. А так, генерация html небольшого кольца с 11 узлами и 20 линками занимает порядка 3 секунд.

        Comment

        • Dusty
          Member
          • Dec 2010
          • 70

          #5
          Originally posted by iks
          Тут дело в том, что weathermap генерирует статический html, поэтому в динамике ничего не отрисовывается и не занимает времени. Вызов weathermap происходит по крону и потом просто можно посмотреть html. А так, генерация html небольшого кольца с 11 узлами и 20 линками занимает порядка 3 секунд.
          Интересует прогресс генерации.

          Например при количестве узлов 50, 100, 500 и 2000.

          Сколько времени займёт (понимаю, может быть вопрос не к Вам)?

          Если это 15, 25, 40 и 60 секунд, то интересно.

          Comment

          • iks
            Member
            • Jun 2010
            • 56

            #6
            Если честно, я слабо представляю себе карту, на которой отображено 100+ элементов. Как это и на каком мониторе смотреть? Максимум, что я отображал на карте, это порядка 20 узлов со связями. То есть показываю структуру сети (типа города), при нажатии на элементе отображается район города, далее по домам (если брать структуру расположения коммутаторов). Показывать большое кол-во элементов на одной карте - это по-моему затруднит просмотр.

            Comment

            • Dusty
              Member
              • Dec 2010
              • 70

              #7
              Originally posted by iks
              Показывать большое кол-во элементов на одной карте - это по-моему затруднит просмотр.
              Согласен.

              Хочется иметь что-то типа рисовалки для openview - ребята смотрели, понравилось.

              Comment

              • iks
                Member
                • Jun 2010
                • 56

                #8
                Насколько я смог быстро посмотреть на openview, я не увидел больших отличий от zabbix. Я поставил weathermap, чтобы можно было наглядно видеть нагрузку на сети.

                Comment

                • Dusty
                  Member
                  • Dec 2010
                  • 70

                  #9
                  Там рисовалка карт очень приличная.

                  Comment

                  • sersad
                    Senior Member
                    • May 2009
                    • 518

                    #10
                    Вроде получилось чуть чуть прикрутить, но настройка карт не столь проста.
                    Кста как указать для разных линков разный bandwidth?

                    За скрипты спасибо!
                    Хотелось бы более подробного разбора прикручивания данной плюшки ))

                    Comment

                    • iks
                      Member
                      • Jun 2010
                      • 56

                      #11
                      Разный bandwidth выставляется указанием у линка BANDWIDTH 100M или какой там нужен. Подробнее http://www.network-weathermap.com/ma...LINK_BANDWIDTH
                      Насчет простоты рисования - это да, есть такое дело У weathermap есть свой editor (о его настройках http://www.network-weathermap.com/ma...li-editor.html), но он подойдет только для базовых свойств. Для более красивого отображения карт пришлось читать доку (http://www.network-weathermap.com/ma...reference.html). Это не так страшно, часа на три
                      Насчет более подробного я подумаю, что и как можно добавить/расширить.

                      P.S. Кстати, будет намного лучше, если вы будете задавать вопросы, что не получается/вызывает затруднения. Так мне будет понятнее, какие моменты вызывают затруднения и решить их. Так будет быстрее разобраться
                      Last edited by iks; 20-12-2010, 12:03.

                      Comment

                      • sersad
                        Senior Member
                        • May 2009
                        • 518

                        #12
                        iks, спасибо!
                        Почитываю время от времени, просто помимо этого есть основная и доп работа, а эти карты для наглядности очень хороши, особенно цветовое кодирование для дежурных будет полезно. По мере возникновения вопросов буду описывать их.

                        Comment

                        • prina72
                          Junior Member
                          • Sep 2012
                          • 6

                          #13
                          English version

                          Hi IKS,
                          I'm interested to how configure Weathermap in Zabbix.
                          Could you please translate in english your instructions?

                          Thanks in advance

                          Comment

                          • _AlekseY_
                            Member
                            • Apr 2012
                            • 77

                            #14
                            И да не могли бы вы подсказать в чём преимущества и для чего это вообще надо???
                            Быть может пару своих скринов приложите, пожалуйста, если можно, конечно.

                            Comment

                            • iks
                              Member
                              • Jun 2010
                              • 56

                              #15
                              Originally posted by _AlekseY_
                              И да не могли бы вы подсказать в чём преимущества и для чего это вообще надо???
                              Быть может пару своих скринов приложите, пожалуйста, если можно, конечно.
                              Преимущества по-сравнению с дефолтными картами Zabbix? Посмотрите, например, на скриншот с офф. сайта: http://www.network-weathermap.com/node/9

                              Comment

                              Working...