This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
zabbix_lld_-_это_просто [2020/09/08 12:55] val [Модуль 2. Zabbix LLD на пальцах] |
zabbix_lld_-_это_просто [2020/10/09 09:46] (current) 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 | + | # 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 / |
+ | |||
+ | # df -h /boot | ||
# zabbix_agentd -p | grep vfs.fs.size | # zabbix_agentd -p | grep vfs.fs.size | ||
</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[/,free] | ||
+ | |||
+ | # zabbix_get -s 127.0.0.1 -k vfs.fs.size[/boot,free] | ||
+ | </code> | ||
+ | |||
+ | === Получение списка элементов === | ||
+ | |||
+ | <code> | ||
+ | # mount | grep ext | ||
+ | |||
+ | # 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> |