User Tools

Site Tools


zabbix_lld_-_это_просто

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_lld_-_это_просто [2020/09/08 13:15]
val [Модуль 1. Самый простой способ установки Zabbix]
zabbix_lld_-_это_просто [2020/10/09 09:46]
val
Line 2: Line 2:
  
   * Мониторинг дисковой активности множества распределенных систем могут стать головной болью DevOps-инженера. Поручите эти задачу Zabbix, пусть он потревожит Вас тиолько когда это действительно нужно!   * Мониторинг дисковой активности множества распределенных систем могут стать головной болью DevOps-инженера. Поручите эти задачу Zabbix, пусть он потревожит Вас тиолько когда это действительно нужно!
-  * Технология ​Zabbix ​LLD, про которую все слышали,​ не так сложна в настройке,​ как кажется на первый вгляд. Перед Вами самый простой,​ но очень ​полезный пример использования низкоуровнего обнаружения в Zabbix+  * Технология LLD, про которую все слышали,​ не так сложна в настройке,​ как кажется на первый вгляд. Перед Вами самый простой,​ но полезный пример использования низкоуровнего обнаружения в Zabbix.
  
-===== Модуль 1. Самый простой способ установки Zabbix =====+===== Запись вебинара ===== 
 + 
 +  * [[https://​youtu.be/​MEdVvZU18ek|Самый простой, но очень полезный пример использования низкоуровнего обнаружения (LLD) в Zabbix]] 
 + 
 +===== Модуль 1. Штатный способ установки Zabbix ​в Debian 10 =====
  
   * [[http://​val.bmstu.ru/​unix/​img/​My%20Documents/​debian_10.0_64_01.ova|OVA образ Debian 10]]   * [[http://​val.bmstu.ru/​unix/​img/​My%20Documents/​debian_10.0_64_01.ova|OVA образ Debian 10]]
Line 22: Line 26:
 # apt update # apt update
  
-# apt install zabbix-server-mysql zabbix-frontend-php php-mysql zabbix-agent jq+# apt install zabbix-server-mysql zabbix-frontend-php php-mysql zabbix-agent jq sysstat
  
-# /​etc/​mysql/​conf.d/​my-custom-settings.cnf+dpkg -l | grep zabbix 
 +... 
 +...4.0.4... 
 +... 
 + 
 +# cat /​etc/​mysql/​conf.d/​my-custom-settings.cnf
 </​code><​code>​ </​code><​code>​
 [mysqld] [mysqld]
Line 100: Line 109:
 </​code>​ </​code>​
  
-  * [[https://​www.zabbix.com/​documentation/​current/​ru/​manual/​appendix/​items/​vm.memory.size_params|ПАРАМЕТРЫ VM.MEMORY.SIZE]]+  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​appendix/​items/​vm.memory.size_params|Zabbix Documentation 4.0/ПАРАМЕТРЫ VM.MEMORY.SIZE]]
  
 <​code>​ <​code>​
Line 109: Line 118:
  
 <​code>​ <​code>​
 +# df -h /
 +
 # df -h /boot # df -h /boot
  
Line 114: Line 125:
 </​code>​ </​code>​
  
-  * [[https://​www.zabbix.com/​documentation/​current/​ru/​manual/​config/​items/​itemtypes/​zabbix_agent|ZABBIX АГЕНТ]]+  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​config/​items/​itemtypes/​zabbix_agent|Zabbix Documentation 4.0/ZABBIX АГЕНТ]]
  
 <​code>​ <​code>​
-# zabbix_get -s 127.0.0.1 -k vfs.fs.size[/​boot,​free] 
- 
 # zabbix_get -s 127.0.0.1 -k vfs.fs.size[/,​free] # zabbix_get -s 127.0.0.1 -k vfs.fs.size[/,​free]
 +
 +# zabbix_get -s 127.0.0.1 -k vfs.fs.size[/​boot,​free]
 +</​code>​
  
 === Получение списка элементов === === Получение списка элементов ===
Line 126: Line 138:
 # mount | grep ext # mount | grep ext
  
-# zabbix_agentd -p | grep vfs.fs.discovery+# zabbix_get -s 127.0.0.1 -k vfs.fs.discovery | jq 
 + 
 +Configuration 
 +  Hosts 
 +    Zabbix server 
 +      Discovery rules 
 +        Mounted filesystem discovery 
 +          Filters 
 +            {#FSTYPE} matches @File systems for discovery 
 +          Item prototypes 
 +            Name 
 +              Free disk space on {#FSNAME} 
 +            Key 
 +              vfs.fs.size[{#​FSNAME},​free] 
 + 
 +Administration 
 +  Regular expressions 
 +    File systems for discovery: ^(btrfs|ext2|ext3|ext4|reiser|xfs|ffs|ufs|jfs|jfs2|vxfs|hfs|refs|ntfs|fat32|zfs)$ 
 +</​code>​ 
 + 
 +===== Модуль 3. Использование LLD для решения новой задачи ===== 
 + 
 +<​code>​ 
 +# iostat 
 + 
 +# zabbix_agentd -p | grep vfs.dev 
 +</​code>​ 
 + 
 +  * [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​config/​items/​itemtypes/​zabbix_agent|Zabbix Documentation 4.0/ZABBIX АГЕНТ]] 
 +  * [[https://​www.zabbix.com/​documentation/​4.4/​ru/​manual/​config/​items/​itemtypes/​zabbix_agent|Zabbix Documentation 4.4/ZABBIX АГЕНТ]] 
 + 
 +<​code>​ 
 +# lsblk 
 + 
 +# lsblk -dJ | jq 
 + 
 +# lsblk -dJ | sed -e '​s/​blockdevices/​data/'​ -e '​s/​name/​{#​DEVNAME}/​g'​ -e '​s/​type/​{#​DEVTYPE}/​g'​ | jq 
 + 
 +# cat /​etc/​zabbix/​zabbix_agentd.conf.d/​vfs.dev.discovery.conf 
 +</​code><​code>​ 
 +UserParameter=vfs.dev.discovery,/​bin/​lsblk -dJ | /bin/sed -e '​s/​blockdevices/​data/'​ -e '​s/​name/​{#​DEVNAME}/​g'​ -e '​s/​type/​{#​DEVTYPE}/​g'​ 
 +</​code><​code>​ 
 +# service zabbix-agent restart 
 + 
 +# zabbix_agentd -p | grep vfs.dev 
 + 
 +# zabbix_get -s 127.0.0.1 -k vfs.dev.discovery | jq 
 +</​code><​code>​ 
 +Configuration->​Templates->​Template OS Linux 
 +  Discovery rules->​Create discovery rule 
 +    Name: Block devices discovery 
 +    Key: vfs.dev.discovery 
 +  Filters->​ 
 +    {#DEVTYPE} matches disk 
 + 
 +  Block devices discovery 
 +    Item prototypes->​ 
 +      Name: {#DEVNAME}: Disk read rate 
 +      Key: vfs.dev.read[{#​DEVNAME},​sps] 
 +      Type of information:​ Numeric (float) 
 +      Units: Байт 
 +      Applications:​ Filesystem 
 +      Preprocessing->​ 
 +        Preprocessing steps 
 +        Custom multiplier 512 
 + 
 +Clone 
 + 
 +      Name: disk {#NAME} write bytes 
 +      Key: vfs.dev.write[{#​DEVNAME},​sps] 
 +      ...   
 + 
 +</​code><​code>​ 
 +# mkfs.ext4 /dev/sdb 
 + 
 +# mount /dev/sdb /mnt 
 + 
 +# while true; do head -c 1G </​dev/​urandom >​myfile;​done
  
 +# while true; do grep `openssl rand -base64 12` myfile; done
 </​code>​ </​code>​
zabbix_lld_-_это_просто.txt · Last modified: 2020/10/09 09:46 by val