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
Last revision Both sides next revision
zabbix_lld_-_это_просто [2020/09/08 13:22]
val
zabbix_lld_-_это_просто [2020/09/11 12:11]
val [Модуль 3. Использование LLD для решения новой задачи]
Line 2: Line 2:
  
   * Мониторинг дисковой активности множества распределенных систем могут стать головной болью DevOps-инженера. Поручите эти задачу Zabbix, пусть он потревожит Вас тиолько когда это действительно нужно!   * Мониторинг дисковой активности множества распределенных систем могут стать головной болью DevOps-инженера. Поручите эти задачу Zabbix, пусть он потревожит Вас тиолько когда это действительно нужно!
-  * Технология ​Zabbix ​LLD, про которую все слышали,​ не так сложна в настройке,​ как кажется на первый вгляд. Перед Вами самый простой,​ но очень ​полезный пример использования низкоуровнего обнаружения в Zabbix+  * Технология LLD, про которую все слышали,​ не так сложна в настройке,​ как кажется на первый вгляд. Перед Вами самый простой,​ но полезный пример использования низкоуровнего обнаружения в Zabbix.
  
-===== Модуль 1. Самый простой способ установки 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 22:
 # 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 105:
 </​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 114:
  
 <​code>​ <​code>​
 +# df -h /
 +
 # df -h /boot # df -h /boot
  
Line 114: Line 121:
 </​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>​ </​code>​
  
Line 137: Line 144:
             {#FSTYPE} matches @File systems for discovery             {#FSTYPE} matches @File systems for discovery
           Item prototypes           Item prototypes
-            Free disk space on {#FSNAME}+            ​Name 
 +              ​Free disk space on {#FSNAME} 
 +            Key 
 +              vfs.fs.size[{#​FSNAME},​free]
  
 Administration Administration
   Regular expressions   Regular expressions
     File systems for discovery: ^(btrfs|ext2|ext3|ext4|reiser|xfs|ffs|ufs|jfs|jfs2|vxfs|hfs|refs|ntfs|fat32|zfs)$     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