User Tools

Site Tools


zabbix_-_построение_топологии_сети

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
zabbix_-_построение_топологии_сети [2018/09/10 13:54]
val [Zabbix API]
zabbix_-_построение_топологии_сети [2019/06/10 14:32] (current)
val [Zabbix API]
Line 1: Line 1:
 ====== Zabbix - построение топологии сети ====== ====== Zabbix - построение топологии сети ======
 +
 +===== Запись =====
 +
 +  * [[https://​youtu.be/​ZrNScBG9TnU|Zabbix:​ топология сети наглядно и автоматически]]
  
 ===== История вопроса ===== ===== История вопроса =====
Line 74: Line 78:
  
 copy running-config startup-config copy running-config startup-config
 +
 +
 </​code>​ </​code>​
  
Line 81: Line 87:
   * Настройка коммутаторов   * Настройка коммутаторов
 <​code>​ <​code>​
 +conf t
 snmp-server community public RO snmp-server community public RO
 +end
 +wr
 +
 +
 </​code>​ </​code>​
  
   * [[Сервис SNMP#​Установка snmp консоли]]   * [[Сервис SNMP#​Установка snmp консоли]]
   * [[Сервис SNMP#​Варианты использования snmp консоли в режиме чтения]]   * [[Сервис SNMP#​Варианты использования snmp консоли в режиме чтения]]
 +
 +<​code>​
 +# service zabbix-server restart
 +</​code>​
 +
   * [[Сервис Zabbix#​Автоматическое добавление]] устройств в Zabbix   * [[Сервис Zabbix#​Автоматическое добавление]] устройств в Zabbix
 ===== Модуль 5. Создание карты сети ===== ===== Модуль 5. Создание карты сети =====
Line 91: Line 107:
   * [[https://​www.zabbix.com/​documentation/​3.0/​ru/​manual/​config/​visualisation/​maps/​map|Zabbix Documentation Настройка карты сети]]   * [[https://​www.zabbix.com/​documentation/​3.0/​ru/​manual/​config/​visualisation/​maps/​map|Zabbix Documentation Настройка карты сети]]
  
-!!! Без линий связи+!!! Можно, для примера, добавить одну ​линию связи
  
 <​code>​ <​code>​
Line 127: Line 143:
   * Настройка коммутаторов   * Настройка коммутаторов
 <​code>​ <​code>​
 +conf t
 ip host server 192.168.1.100 ip host server 192.168.1.100
 ip rcmd rsh-enable ip rcmd rsh-enable
 ip rcmd remote-host root server root enable ip rcmd remote-host root server root enable
 +end
 +wr
 +
 +
 </​code>​ </​code>​
  
Line 141: Line 162:
  
 server.corp1.un:​~#​ rsh switch1 -n show cdp nei | dos2unix | grep switch | tr -s " " | cut -d " " -f1,​2,​3,​9,​10 server.corp1.un:​~#​ rsh switch1 -n show cdp nei | dos2unix | grep switch | tr -s " " | cut -d " " -f1,​2,​3,​9,​10
 +  или
 +server.corp1.un:​~#​ rsh switch1 -n show cdp nei | dos2unix | tr '​\n'​ ' ' | sed '​s/​switch/​\nswitch/​g'​ | grep switch | tr -s " " | cut -d " " -f1,​2,​3,​9,​10
 </​code>​ </​code>​
  
Line 232: Line 255:
 server.corp1.un:​~#​ /​root/​zab_get_hosts.sh | jq '​.result | .[] | {hostid: .hostid, host: .host} | tostring'​ | grep switch | tr -d '​{}\\'​ | tr '"'​ ' ' | cut -d ' ' -f5,9  server.corp1.un:​~#​ /​root/​zab_get_hosts.sh | jq '​.result | .[] | {hostid: .hostid, host: .host} | tostring'​ | grep switch | tr -d '​{}\\'​ | tr '"'​ ' ' | cut -d ' ' -f5,9 
 </​code>​ </​code>​
-Добавляем конвеер в конец скрипта и записываем результат в файл:+Добавляем конвейер в конец скрипта и записываем результат в файл:
 <​code>​ <​code>​
 server.corp1.un:​~#​ /​root/​zab_get_hosts.sh | tee list_hostid_host.txt server.corp1.un:​~#​ /​root/​zab_get_hosts.sh | tee list_hostid_host.txt
Line 253: Line 276:
     \"​method\":​ \"​map.get\",​     \"​method\":​ \"​map.get\",​
     \"​params\":​ {     \"​params\":​ {
 +        \"​selectLinks\":​ \"​extend\",​
         \"​selectSelements\":​ \"​extend\"​         \"​selectSelements\":​ \"​extend\"​
     },     },
Line 259: Line 283:
 } " http://​127.0.0.1/​zabbix/​api_jsonrpc.php | \ } " http://​127.0.0.1/​zabbix/​api_jsonrpc.php | \
 #jq #jq
 +###zabbix3
 jq '​.result | .[] | .selements | .[] | {elementid: .elementid, selementid: .selementid} | tostring'​ | tr -d '​{}\\'​ | tr '"'​ ' ' | cut -d ' ' -f5,9 jq '​.result | .[] | .selements | .[] | {elementid: .elementid, selementid: .selementid} | tostring'​ | tr -d '​{}\\'​ | tr '"'​ ' ' | cut -d ' ' -f5,9
 +###zabbix4
 +#jq '​.result[1].selements[] | {elements, selementid} | tostring'​ | tr -d '​{}\\'​ | tr '"'​ ' ' | cut -d ' ' -f7,11
 </​code><​code>​ </​code><​code>​
 server.corp1.un:​~#​ /​root/​zab_get_maps.sh | tee list_hostid_selementid.txt server.corp1.un:​~#​ /​root/​zab_get_maps.sh | tee list_hostid_selementid.txt
Line 272: Line 299:
  
 <​code>​ <​code>​
-server.corp1.un:​~#​ cat rsh_get_links.sh+server.corp1.un:​~#​ cat /root/rsh_get_links.sh
 </​code><​code>​ </​code><​code>​
 #!/bin/sh #!/bin/sh
Line 306: Line 333:
 Простой пример изменения конфигурации через Zabbix API Простой пример изменения конфигурации через Zabbix API
 <​code>​ <​code>​
-server.corp1.un:​~#​ cat zab_set_map_name.sh+server.corp1.un:​~#​ cat /root/zab_set_map_name.sh
 </​code><​code>​ </​code><​code>​
 #!/bin/sh #!/bin/sh
Line 327: Line 354:
 server.corp1.un:​~#​ /​root/​zab_set_map_name.sh 2 "Super MAP" server.corp1.un:​~#​ /​root/​zab_set_map_name.sh 2 "Super MAP"
 </​code><​code>​ </​code><​code>​
-server.corp1.un:​~#​ cat zab_set_link_name.sh+server.corp1.un:​~#​ cat /root/zab_set_link_name.sh
 </​code><​code>​ </​code><​code>​
 #!/bin/sh #!/bin/sh
Line 346: Line 373:
 done < $SELEMENTS_LABEL done < $SELEMENTS_LABEL
  
-LINKS=`echo $LINKS | rev | cut -c 2- | rev`+#LINKS=`echo $LINKS | rev | cut -c 2- | rev
 +#​LINKS=`echo -n ${LINKS::​-1}`
  
 JSON=" JSON="
zabbix_-_построение_топологии_сети.1536576882.txt.gz · Last modified: 2018/09/10 13:54 by val