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 [2025/05/19 10:21]
val [Элементы типа trapper]
сервис_zabbix [2026/02/11 11:58] (current)
val [Вычисляемые элементы]
Line 151: Line 151:
 # cat /​etc/​zabbix/​zabbix_proxy.conf # cat /​etc/​zabbix/​zabbix_proxy.conf
 </​code><​code>​ </​code><​code>​
-...+#...
 Hostname=gate Hostname=gate
-ConfigFrequency=60+ 
 +#v6 
 +#ConfigFrequency=60 
 +#v7 
 +#​ProxyConfigFrequency=60 
 +  ​
 Server=server Server=server
 DBName=/​var/​lib/​zabbix/​zabbix.db DBName=/​var/​lib/​zabbix/​zabbix.db
 +</​code>​
 +=== zabbix-proxy docker-compose ===
 +
 +  * [[https://​github.com/​kpod13/​docker-compose-zabbix-proxy]]
 +
 +<​code>​
 +lan:​~/​zabbix-proxy#​ cat docker-compose.yml
 +</​code><​code>​
 +services:
 +  zabbix-proxy:​
 +    environment:​
 +      ZBX_CONFIGFREQUENCY:​ '​60'​
 +      ZBX_HOSTNAME:​ lan
 +      ZBX_PROXYCONFIGFREQUENCY:​ '​60'​
 +      ZBX_SERVER_HOST:​ server.corpX.un
 +      ZBX_TLSCONNECT:​ psk
 +      ZBX_TLSPSK: aa.............................................................7c
 +      ZBX_TLSPSKIDENTITY:​ lan
 +    image: zabbix/​zabbix-proxy-sqlite3:​ubuntu-7.0-latest
 +    ports:
 +    - published: 10051
 +      target: 10051
 +    restart: always
 +    stop_grace_period:​ 1m
 </​code>​ </​code>​
  
Line 634: Line 663:
 #​MY_RES=`speedtest -f csv` #​MY_RES=`speedtest -f csv`
 #​MY_DOWNLOAD=`echo $MY_RES | cut -d','​ -f6` #​MY_DOWNLOAD=`echo $MY_RES | cut -d','​ -f6`
-#Y_UPLOAD=`echo $MY_RES | cut -d','​ -f7`+#MY_UPLOAD=`echo $MY_RES | cut -d','​ -f7`
  
 zabbix_sender -z 127.0.0.1 -p 10051 -s server.corpX.un -k speedtest.download -o $MY_DOWNLOAD zabbix_sender -z 127.0.0.1 -p 10051 -s server.corpX.un -k speedtest.download -o $MY_DOWNLOAD
Line 666: Line 695:
 </​code>​ </​code>​
 ==== Вычисляемые элементы ==== ==== Вычисляемые элементы ====
 +
 +  * [[https://​www.zabbix.com/​documentation/​current/​en/​manual/​config/​items/​itemtypes/​calculated/​aggregate]]
  
 <​code>​ <​code>​
Line 694: Line 725:
  
 last(openvpn1:​openvpn.server.clients)+last(openvpn2:​openvpn.server.clients)+last(openvpn3:​openvpn.server.clients) last(openvpn1:​openvpn.server.clients)+last(openvpn2:​openvpn.server.clients)+last(openvpn3:​openvpn.server.clients)
 +#​---------------------
 +
 +sum(last_foreach(/​*/​active_meetings.sh["​{HOST.CONN}"​]?​[group="​webinars"​]))
 </​code>​ </​code>​
 +
 +
 +
 ==== Web сценарии ==== ==== Web сценарии ====
  
Line 979: Line 1016:
  
 <​code>​ <​code>​
-Configuration - Actions - Auto registration ​+Alerts|Configuration - Actions - Auto registration ​
   Name: Add Windows clients ​                                         # or Add Linux clients   Name: Add Windows clients ​                                         # or Add Linux clients
   Conditions: Host name contains CLIENT ​                             # or client (lowercase) for linux   Conditions: Host name contains CLIENT ​                             # or client (lowercase) for linux
Line 1072: Line 1109:
  
 <​code>​ <​code>​
-Configuration->​Discovery+Data collection/Configuration->​Discovery
 Discovery rules Discovery rules
   Name: Local network ​   или ​   Cisco Router Discovery   Name: Local network ​   или ​   Cisco Router Discovery
Line 1089: Line 1126:
   Enabled: yes   Enabled: yes
  
-Configuration->​Actions+Alert/Configuration->​Actions
   Event source: Discovery   Event source: Discovery
-    Name: Action add snmp device to zabbix+    Name: Action add Cisco device to zabbix
     Conditions: ​     Conditions: ​
       Received value: like или contains router       Received value: like или contains router
Line 1103: Line 1140:
              4.XX Template Module Interfaces Simple SNMPv2              4.XX Template Module Interfaces Simple SNMPv2
              5.XX Template Net Cisco IOS SNMP       !!! Уменьшить период Network interfaces discovery !!!              5.XX Template Net Cisco IOS SNMP       !!! Уменьшить период Network interfaces discovery !!!
-             6.XX Cisco IOS by SNMP+        ​6.XX 7.XX Cisco IOS by SNMP
       Set host inventory mode: Automatic       Set host inventory mode: Automatic
     Add     Add
Line 1166: Line 1203:
  
 ==== Создание своих шаблонов ==== ==== Создание своих шаблонов ====
 +
 +  * Лучше, поискать готовые:​
 +  * [[https://​git.zabbix.com/​projects/​ZBX/​repos/​zabbix/​browse/​templates]]
 +  * [[https://​github.com/​zabbix/​community-templates]]
  
   * Пример с использованием макроса   * Пример с использованием макроса
Line 1262: Line 1303:
  
   * Пример разработки собственного скрипта для LLD   * Пример разработки собственного скрипта для LLD
 +
 +  * Сервис DHCP [[Сервис DHCP#​Статистика DHCP сервера]]
   * [[Обработка XML файлов]]   * [[Обработка XML файлов]]
   * [[https://​stackoverflow.com/​questions/​12524437/​output-json-from-bash-script|Output JSON from Bash script]]   * [[https://​stackoverflow.com/​questions/​12524437/​output-json-from-bash-script|Output JSON from Bash script]]
 +
 +  * Язык программирования Python [[Язык программирования Python#​Zabbix LLD приложение]]
  
 <​code>​ <​code>​
Line 1270: Line 1315:
 #!/bin/bash #!/bin/bash
  
-echo -n '{"​data":​['+echo -n '​['​
  
 str=`/​usr/​bin/​dhcpd-pools -c /​etc/​dhcp/​dhcpd.conf -f x | \ str=`/​usr/​bin/​dhcpd-pools -c /​etc/​dhcp/​dhcpd.conf -f x | \
Line 1278: Line 1323:
 echo -n ${str::-1} echo -n ${str::-1}
  
-echo -n ']}'+echo -n '​]'​
 </​code><​code>​ </​code><​code>​
 gate# /​etc/​zabbix/​dhcp-pools-discovery.sh | jq gate# /​etc/​zabbix/​dhcp-pools-discovery.sh | jq
Line 1367: Line 1412:
 ===== API ===== ===== API =====
  
 +  * [[https://​www.zabbix.com/​documentation/​current/​en/​manual/​api]]
   * [[Формат JSON]]   * [[Формат JSON]]
   * [[https://​www.zabbix.com/​documentation/​1.8/​ru/​api/​getting_started|Zabbix Documentation Начало работы с Zabbix API]]   * [[https://​www.zabbix.com/​documentation/​1.8/​ru/​api/​getting_started|Zabbix Documentation Начало работы с Zabbix API]]
Line 1373: Line 1419:
  
   * [[https://​www.zabbix.com/​forum/​zabbix-troubleshooting-and-problems/​36900-api-key-lifetime|api key lifetime]]   * [[https://​www.zabbix.com/​forum/​zabbix-troubleshooting-and-problems/​36900-api-key-lifetime|api key lifetime]]
 +  * Для и до 6-й версии "​user":​ "​Admin",​
 <​code>​ <​code>​
 server:~# apt install curl server:~# apt install curl
Line 1382: Line 1428:
    "​method":​ "​user.login",​    "​method":​ "​user.login",​
    "​params":​ {    "​params":​ {
-      "user": "​Admin",​+      "username": "​Admin",​
       "​password":​ "​zabbix"​       "​password":​ "​zabbix"​
    },    },
Line 1400: Line 1446:
   * Получение списка узлов и шаблонов из Zabbix   * Получение списка узлов и шаблонов из Zabbix
  
 +До 7-й версии,​ включительно
 <​code>​ <​code>​
 server:~# curl -s -k -X POST -H '​Content-Type:​ application/​json-rpc'​ -d ' server:~# curl -s -k -X POST -H '​Content-Type:​ application/​json-rpc'​ -d '
Line 1411: Line 1458:
 ... ...
 </​code>​ </​code>​
 +От 7-й и старше
 <​code>​ <​code>​
-... +curl -s -k -X POST -H '​Content-Type:​ application/​json-rpc'​ -H '​Authorization:​ Bearer xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'​ -d '{ 
-    "​method":​ "template.get",​ +    "​jsonrpc":​ "2.0", 
-...+    "​method":​ "host.get",​ 
 +    "​params":​ {}, 
 +    "​id":​ 2 
 +}' http://​127.0.0.1/​zabbix/​api_jsonrpc.php | jq
 </​code>​ </​code>​
  
Line 1496: Line 1547:
 </​code>​ </​code>​
 ==== Пример изменения конфигурации через Zabbix API ==== ==== Пример изменения конфигурации через Zabbix API ====
 +
 +  * Язык программирования Python [[Язык программирования Python#​Zabbix API приложение]]
 +
 <​code>​ <​code>​
 server.corp1.un:​~#​ cat /​root/​zab_set_map_name.sh server.corp1.un:​~#​ cat /​root/​zab_set_map_name.sh
Line 1516: Line 1570:
 } " http://​127.0.0.1/​zabbix/​api_jsonrpc.php } " http://​127.0.0.1/​zabbix/​api_jsonrpc.php
 </​code><​code>​ </​code><​code>​
-server.corp1.un:​~#​ /​root/​zab_set_map_name.sh 2 "ISP1"+server.corp1.un:​~#​ /​root/​zab_set_map_name.sh 2 "ISP 1"
 </​code>​ </​code>​
сервис_zabbix.1747639262.txt.gz · Last modified: 2025/05/19 10:21 by val