Zabbix: различия между версиями
imported>Vix Нет описания правки |
Vix (обсуждение | вклад) |
||
(не показано 68 промежуточных версий 2 участников) | |||
Строка 1: | Строка 1: | ||
== Установка и настройка == | [[Файл:Zabbix2.png|60px]] | ||
- Система Debian Jessie (8) | <hr> | ||
== '''Установка и настройка''' == | |||
'''''- Система Debian Jessie (8)''''' | |||
* | * '''устанавливаем postgresql''', читать тут [[PostgreSQL]] | ||
* устанавливаем необходимые пакеты: | * '''устанавливаем необходимые пакеты:''' | ||
echo "deb-src http://repo.zabbix.com/zabbix/3.4/debian stretch main" > /etc/apt/sources.list.d/zabbix.list | |||
wget -O - "http://repo.zabbix.com/zabbix-official-repo.key" | apt-key add - | |||
wget -O - "https://repo.zabbix.com/RPM-GPG-KEY-ZABBIX-79EA5ED4" | apt-key add - | |||
wget -O - "https://repo.zabbix.com/RPM-GPG-KEY-ZABBIX-A14FE591" | apt-key add - | |||
wget -O - "https://repo.zabbix.com/RPM-GPG-KEY-ZABBIX-A14FE591-EL5" | apt-key add - | |||
* для Debian 10 | |||
apt-key adv --keyserver keys.gnupg.net --recv-keys D13D58E479EA5ED4 | |||
apt-get update | |||
apt-get install zabbix-agent zabbix-frontend-php zabbix-proxy-pgsql zabbix-server-pgsql php-fpm nginx | apt-get install zabbix-agent zabbix-frontend-php zabbix-proxy-pgsql zabbix-server-pgsql php-fpm nginx | ||
* создаем базу данных для zabbix | * '''создаем администратора базы zabbix''' | ||
CREATE USER zabbixadmin WITH PASSWORD 'mypassword'; | |||
* '''создаем базу данных для zabbix''' | |||
CREATE DATABASE "zabbix" | CREATE DATABASE "zabbix" | ||
WITH OWNER " | WITH OWNER "zabbixadmin" | ||
ENCODING 'UTF8' | ENCODING 'UTF8' | ||
LC_COLLATE = 'ru_RU.UTF-8' | LC_COLLATE = 'ru_RU.UTF-8' | ||
LC_CTYPE = 'ru_RU.UTF-8'; | LC_CTYPE = 'ru_RU.UTF-8'; | ||
* теперь необходимо в эту базу загрузить шаблоны и схему (для postgresql) | * '''даем права на базу администратору''' | ||
GRANT ALL PRIVILEGES ON DATABASE "zabbix" to zabbixadmin; | |||
* '''теперь необходимо в эту базу загрузить шаблоны и схему (для postgresql)''' | |||
zcat /usr/share/zabbix-server-pgsql/{schema,images,data}.sql.gz|psql -h 127.0.0.1 zabbix zabbixadmin | zcat /usr/share/zabbix-server-pgsql/{schema,images,data}.sql.gz|psql -h 127.0.0.1 zabbix zabbixadmin | ||
'''{!}''' - для версии 3.4: | |||
zcat /usr/share/doc/zabbix-server-pgsql/create.sql.gz|psql -h 127.0.0.1 zabbix zabbixadmin | |||
* настраиваем php-fpm | * '''настраиваем php-fpm''' | ||
cat /etc/php5/fpm/pool.d/www.conf | cat /etc/php5/fpm/pool.d/www.conf | ||
.... | .... | ||
Строка 27: | Строка 47: | ||
cat /etc/php5/fpm/php.ini | cat /etc/php5/fpm/php.ini | ||
.... | .... | ||
disable_functions = pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, | disable_functions = pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,<br>pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,<br>pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, | ||
.... | .... | ||
date.timezone = Europe/Moscow | date.timezone = Europe/Moscow | ||
Строка 38: | Строка 58: | ||
.... | .... | ||
* (!) - возможно zabbix при первом запуске еще что-то попросит, измените как будет указано. | * '''(!)''' - возможно '''zabbix''' при первом запуске еще что-то попросит, измените как будет указано. | ||
* nginx - пример | * '''nginx''' - пример наcтройки для '''zabbix''': | ||
server { | server { | ||
Строка 61: | Строка 81: | ||
} | } | ||
} | } | ||
* После успешного прохождения первичных настроек Zabbix, сохраните файл настроек в /etc/zabbix/web/zabbix.conf.php | |||
* При первичной регистрации '''login:Admin password:zabbix''' | |||
=='''Zabbix-Proxy'''== | |||
* Устновка: | |||
apt install zabbix-proxy-sqlite3 zabbix-sql-scripts | |||
* Создаем базу данных: | |||
mkdir -m u=rwx,g=rwx,o= -p /var/lib/zabbix | |||
chown zabbix:zabbix /var/lib/zabbix | |||
cat /usr/share/zabbix-sql-scripts/sqlite3/proxy.sql|sqlite3 /var/lib/zabbix/zabbix.db | |||
* Пример zabbix_proxy.conf для Sqlite3 | |||
ProxyMode=0 | |||
Server='''IP-адрес сервера zabbix (master)''' | |||
ServerPort=10051 | |||
Hostname='''Имя прокси-сервера, который был создан на сервере Zabbix, оно должно быть одинаковым''' | |||
LogFile=/var/log/zabbix/zabbix_proxy.log | |||
LogFileSize=100 | |||
DebugLevel=3 | |||
PidFile=/var/log/zabbix/zabbix_proxy.pid | |||
DBName='''/var/lib/zabbix/zabbix.db # SQLite не будет запрашивать пользователя или пароль''' | |||
DBSocket=/var/lib/mysql/mysql.sock | |||
ProxyLocalBuffer=1 | |||
ProxyOfflineBuffer=1 | |||
HeartbeatFrequency=60 | |||
ConfigFrequency=60 | |||
DataSenderFrequency=60 | |||
StartPollers=65 | |||
StartPollersUnreachable=15 | |||
StartPingers=60 | |||
StartDiscoverers=35 | |||
StartHTTPPollers=5 | |||
HousekeepingFrequency=1 | |||
CacheSize=20M | |||
StartDBSyncers=8 | |||
HistoryCacheSize=20M | |||
HistoryTextCacheSize=32M | |||
Timeout=15 | |||
UnreachablePeriod=45 | |||
UnavailableDelay=60 | |||
UnreachableDelay=15 | |||
FpingLocation=/usr/sbin/fping | |||
LogSlowQueries=2 | |||
StartIPMIPollers=0 | |||
StartJavaPollers=0 | |||
StartVMwareCollectors=0 | |||
VMwareFrequency=60 | |||
StartSNMPTrapper=0 | |||
* [https://www.vivaolinux.com.br/dica/Zabbix-Proxy-com-SQLite-3 взято тут] | |||
=='''Полезные советы'''== | |||
* '''Если zabbix server - не один:''' | |||
* '''В агенте прописать так:''' | |||
... | |||
Server=192.168.0.1,192.168.0.2 | |||
ServerActive=192.168.0.1,192.168.0.2 | |||
... | |||
* '''Проблема:''' Триггер с элементом vm.memory.size | |||
Пытаюсь мониторить переполнение RAM (если меньше 10% свободной RAM в течении 5 минут) и создаю триггер: | |||
{hostname:vm.memory.size[available].last(5m)}<10 | |||
Однако ничего не происходит. | |||
* '''Решение:''' | |||
Вам для вашей задачи лучше использовать функцию max() | |||
{hostname:vm.memory.size[pavailable].max(5m)}<10 | |||
* [https://www.zabbix.com/forum/in-russian/46020-%D0%A2%D1%80%D0%B8%D0%B3%D0%B3%D0%B5%D1%80-%D1%81-%D1%8D%D0%BB%D0%B5%D0%BC%D0%B5%D0%BD%D1%82%D0%BE%D0%BC-vm-memory-size источник] | |||
'''Пример:''' {Zabbix server:vm.memory.size[available].max(5m)}<10 | |||
<hr> | |||
* '''Проблема:''' Если постоянно выскакивает предупреждение на триггер Disk I/O is overloaded on | |||
{Zabbix server:system.cpu.util[,iowait].last(0)}>20 | |||
Получается, что ожидает операции ввода.вывода более 20 сек ? | |||
* '''Решение:''' Cоветую увеличить интервал и также путем увелечинеия памяти! | |||
[https://www.zabbix.com/forum/zabbix-help/36397-disk-i-o-is-overloaded-on-zabbix-server/page2?t=44382&highlight=Disk+I/O+overloaded&page=2 Вот здесь совет] | |||
Пример: {Zabbix server:system.cpu.util[,iowait].avg(5m)}>30 | |||
<hr> | |||
* '''Проблема:''' Zabbix discoverer processes more than 75% busy | |||
* '''Решение:''' Этот процесс используется при обнаружении устройств в сети. | |||
Проверьте и в случае необходимости, подправьте настройки правил обнаружения или увеличьте количество процессов которые | |||
занимаются обнаружением новых устройств (параметр StartDiscoverers в конфиг файле zabbix сервера). | |||
К пингу этот процесс и триггер отношения не имеют. | |||
Если не нужен, то и не запускайте обнаружения. Если нужен, то поставьте 2. Посмотрите на графике динамику изменения. | |||
Если всё равно нагрузка будет большая, поставьте 3. Ну и так далее. | |||
<hr> | |||
* Проблема: zabbix win 7 cannot make counterpath for "\\": [0xC0000BBD] Обязательный аргумент пропущен или указан неправильно. | |||
* Решение: | |||
cmd | |||
lodctr /r | |||
* взято [https://serveradmin.ru/zabbix-init_cpu_collector-cannot-make-counterpath/ тут] | |||
<hr> | |||
'''* Проблема:''' fping failed: /usr/bin/fping: can't create socket (must run as root?) : Permission denied <br> | |||
'''* Решение:''' | |||
chown root:zabbix /usr/bin/fping | |||
chmod 710 /usr/bin/fping | |||
chmod ug+s /usr/bin/fping | |||
* взято [https://ip-connection.blogspot.com/2016/11/zabbix-fping-cant-create-socket-must.html тут] | |||
<hr> | |||
'''* Проблема: : [111] Connection refused''' | |||
'''* Решение:''' commented out the line #ServerActive=127.0.0.1 from the agent configuration file /etc/zabbix/zabbix_agentd.conf. | |||
или закомментируйте строку активного сервера и укажите только просто ip сервера. | |||
* [https://bobcares.com/blog/zabbix-111-connection-refused/ источник] | |||
<hr> | |||
* [[Zabbix ping: socket: Операция не позволена Не удалось выполнить скрипт]] | |||
=='''Использование SpeedTest-Cli вместе с Zabbix'''== | |||
В этой статье я продемонстрирую, как мы можем использовать скрипты в Zabbix через UserParameter. Я буду использовать SpeedTest-cli в качестве примера, для выполнения тестов скорости загрузки интернет канала. | |||
Мы будем использовать UserParameter, он используется, когда нам нужна информация, которую сам zabbix не предоставляет, мы можем использовать команды и скрипты, не беспокоясь о том, поддерживает ли их zabbix, мы можем создавать собственные ключи. | |||
Выполнение установки SpeedTest-Cli | |||
sudo apt-get install speetest-cli | |||
Выполним простой тест, показывающий только пинг, скорость загрузки и отдачи, а также сохраним в файл TXT.<br> | |||
Для этого выполним: | |||
speedtest-cli ---bytes ---simple > /tmp/speed.txt | |||
xak@zabbix-new:~$ speedtest-cli ---bytes ---simple > /tmp/speed.txt | |||
xak@zabbix-new:~$ cat /tmp/speed.txt | |||
Ping: 1.692 ms | |||
Download: 10.56 Mbyte/s | |||
Upload: 11.46 Mbyte/s | |||
В данном примере скорость измеряется с ближайшим сервером, вызвав справку | |||
speedtest –help | |||
Вы можете сменить сервер для проверки на нужный.<br> | |||
* Создание графика выполнения скриптов:<br> | |||
Поскольку сценарий имеет довольно большую задержку, около 50 секунд для генерации результатов, мы не могли просто запустить его с zabbix и получить результаты. Zabbix имеет 30-секундный тайм-аут для внешних скриптов. Таким образом, один из способов, который я нашел, заключается в том, чтобы запланировать выполнение скрипта через Crontab. Я рекомендую прочитать немного больше о [http://help.ubuntu.ru/wiki/cron Crontab] или [https://crontab.guru/ тут]. | |||
/etc/crontab: system-wide crontab | |||
Unlike any other crontab you don’t have to run the `crontab’ | |||
command to install the new version when you edit this file | |||
and files in /etc/cron.d. These files also have username fields, | |||
that none of the other crontabs do.SHELL=/bin/sh | |||
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin# m h dom mon dow user command | |||
17 * * * * root cd / && run-parts ---report /etc/cron.hourly | |||
25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts ---report /etc/cron.daily ) | |||
47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts ---report /etc/cron.weekly ) | |||
52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts ---report /etc/cron.monthly ) | |||
*/20 * * * * root /usr/bin/speedtest-cli ---simple > /tmp/speed.txt | |||
Поскольку speedtest использует пропускную способность интернета для выполнения тестов, не стоит его запускать сильно часто, в данном примере я настроил запуск каждые 20мин. | |||
* Создание UserParameter | |||
Поскольку скрипт speedtest устанавливается на самом zabbix, нам нужно будет настроить UserParameter в собственном агенте Zabbix Server. Добавьте следующие строки в | |||
/etc/zabbix/zabbix-agentd.conf: | |||
UserParameter=upload[*],cat /tmp/speed.txt | grep «Upload:» | cut -d » » -f2 | |||
UserParameter=download[*],cat /tmp/speed.txt | grep «Download:» | cut -d » » -f2 | |||
Выполните описанную выше процедуру, перезапустите агент zabbix<br> | |||
Используйте zabbixget, чтобы проверить, работает ли ключ. | |||
xak@zabbix-new:~$ zabbix_get -s 127.0.0.1 -p 10050 -k «download» && zabbix_get -s 127.0.0.1 -p 10050 -k «upload» | |||
87.31 | |||
33.98 | |||
Наш UserParameter работает правильно. | |||
* Создание элемента данных в Zabbix | |||
В ключе определяем ключ, который мы создали в агенте.<br> | |||
В окне Интервал обновления укажите 20-30мин<br> | |||
Вы можете найти больше о пользовательских интервалах <br>[https://www.zabbix.com/documentation/3.4/ru/manual/config/items/item/custom_intervals здесь]. | |||
Повторяем действия для upload: | |||
Создание элемента данных в Zabbix | |||
В ключе определяем ключ, который мы создали в агенте. | |||
В окне Интервал обновления укажите 20-30мин | |||
Вы можете найти больше о пользовательских интервалах [https://www.zabbix.com/documentation/3.4/ru/manual/config/items/item/custom_intervals здесь].<br> | |||
[[Файл:Снимок-экрана-2017-11-27-в-10.32.53.png]] | |||
Повторяем действия для upload<br> | |||
[[Файл:Снимок-экрана-2017-11-27-в-10.33.29-370x340.png]] | |||
* Дождитесь появления запланированного обновления в Zabbix.<br> | |||
[[Файл:Снимок-экрана-2017-11-27-в-10.36.37-1024x278.png]] | |||
*[https://xakinfo.ru/os/speedtest-cli-zabbix/ взято тут] | |||
* Пример команды из консоли - получение нагрузки CPU: | |||
zabbix_get -s 10.0.0.143 -p 10050 -k "system.cpu.load[all,avg15]" | |||
=='''ИСТОЧНИКИ'''== | |||
<hr> | |||
* [http://it.rdcm.com/archives/category/monitoring Рубрика: Monitoring] | |||
* [https://serveradmin.ru/ustanovka-i-nastroyka-zabbix-3-4-na-debian-9/#_Zabbix_34_Debian_9 Установка сервера Zabbix 3.4 на Debian 9] | |||
* [https://blog.vpsville.ru/blog/pro/61.html Установка службы Zabbix - агент на Windows сервер.] | |||
* [http://jakondo.ru/ustanovka-i-nastrojka-zabbix-agentov-na-os-windows-i-linux-ubuntu-debian/ Установка и настройка Zabbix агентов на ОС Windows и Linux (Ubuntu, Debian)] | |||
* [http://www.ekzorchik.ru/2015/01/install-zabbix-agent-on-windows-7/ Установить Zabbix агент на Windows 7] | |||
* [http://www.ekzorchik.ru/2015/01/how-to-install-zabbix-agent-on-windows-xp/ Как установить Zabbix агент на Windows XP] | |||
* [http://www.suiviperf.com/zabbix/ '''ZABBIX AGENT installers'''] | |||
* [https://www.zabbix.com/documentation/3.0/ru/manual/quickstart/notification Получение оповещения о проблеме] | |||
* [https://serveradmin.ru/nastroyka-email-opoveshheniy-v-zabbix/ Отправка email уведомлений в zabbix 2.4] | |||
* [https://habrahabr.ru/company/zabbix/blog/193472/ Zabbix тюнинг] | |||
* [http://blog.files.dp.ua/zabbix-trigger Решение проблем с триггерами processes more than 75% busy] | |||
* [http://linux-notes.org/optimizatsiya-nastroek-zabbix/ Оптимизация настроек Zabbix] | |||
* [https://glaber.io/ '''Fork Zabbix - оптимизированный для снижения нагрузки CPU и повышения кластеризации'''] | |||
=='''ПОЛЕЗНОЕ'''== | |||
* [https://github.com/burner1024/zabbix-sql/blob/master/delete-old-data.pg.sql Скрипты чистки базы zabbix] | |||
* [https://habr.com/ru/post/223365/ Мониторинг транков Asterisk с помощью низкоуровнего обнаружения Zabbix] | |||
* [https://www.zabbix.com/documentation/current/manual/installation/install_from_packages/debian_ubuntu Zabbix Documentation 5.2] | |||
* [https://github.com/kvaps/zabbix-linux-container-template Zabbix: solve memory monitoring issue inside LXC containers] | |||
* [https://internet-lab.ru/zabbix_mdadm_linux Zabbix — мониторинг программных RAID массивов в Linux] | |||
* [https://habr.com/ru/companies/first/articles/681522/ Мониторинг дисков и программных RAID-массивов с помощью Zabbix] | |||
* [https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/app/haproxy_agent?at=refs%2Fheads%2Ffeature%2FZBX-23818-6.0 готовые шаблоны для разных релизов zabbix] |
Текущая версия от 19:57, 7 февраля 2024
Установка и настройка
- Система Debian Jessie (8)
- устанавливаем postgresql, читать тут PostgreSQL
- устанавливаем необходимые пакеты:
echo "deb-src http://repo.zabbix.com/zabbix/3.4/debian stretch main" > /etc/apt/sources.list.d/zabbix.list wget -O - "http://repo.zabbix.com/zabbix-official-repo.key" | apt-key add - wget -O - "https://repo.zabbix.com/RPM-GPG-KEY-ZABBIX-79EA5ED4" | apt-key add - wget -O - "https://repo.zabbix.com/RPM-GPG-KEY-ZABBIX-A14FE591" | apt-key add - wget -O - "https://repo.zabbix.com/RPM-GPG-KEY-ZABBIX-A14FE591-EL5" | apt-key add -
- для Debian 10
apt-key adv --keyserver keys.gnupg.net --recv-keys D13D58E479EA5ED4
apt-get update apt-get install zabbix-agent zabbix-frontend-php zabbix-proxy-pgsql zabbix-server-pgsql php-fpm nginx
- создаем администратора базы zabbix
CREATE USER zabbixadmin WITH PASSWORD 'mypassword';
- создаем базу данных для zabbix
CREATE DATABASE "zabbix" WITH OWNER "zabbixadmin" ENCODING 'UTF8' LC_COLLATE = 'ru_RU.UTF-8' LC_CTYPE = 'ru_RU.UTF-8';
- даем права на базу администратору
GRANT ALL PRIVILEGES ON DATABASE "zabbix" to zabbixadmin;
- теперь необходимо в эту базу загрузить шаблоны и схему (для postgresql)
zcat /usr/share/zabbix-server-pgsql/{schema,images,data}.sql.gz|psql -h 127.0.0.1 zabbix zabbixadmin
{!} - для версии 3.4:
zcat /usr/share/doc/zabbix-server-pgsql/create.sql.gz|psql -h 127.0.0.1 zabbix zabbixadmin
- настраиваем php-fpm
cat /etc/php5/fpm/pool.d/www.conf .... ;listen = /var/run/php5-fpm.sock listen = 127.0.0.1:9000 .... cat /etc/php5/fpm/php.ini .... disable_functions = pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,
pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,
pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, .... date.timezone = Europe/Moscow .... max_execution_time = 300 .... post_max_size = 16M .... always_populate_raw_post_data = -1 ....
- (!) - возможно zabbix при первом запуске еще что-то попросит, измените как будет указано.
- nginx - пример наcтройки для zabbix:
server { listen 10.0.1.40:88; server_name zabbix; root /home/www/zabbix; location / { index index.html index.php; } location ~* \.(gif|jpg|png)$ { expires 30d; } location ~ \.php$ { fastcgi_pass localhost:9000; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
- После успешного прохождения первичных настроек Zabbix, сохраните файл настроек в /etc/zabbix/web/zabbix.conf.php
- При первичной регистрации login:Admin password:zabbix
Zabbix-Proxy
- Устновка:
apt install zabbix-proxy-sqlite3 zabbix-sql-scripts
- Создаем базу данных:
mkdir -m u=rwx,g=rwx,o= -p /var/lib/zabbix chown zabbix:zabbix /var/lib/zabbix cat /usr/share/zabbix-sql-scripts/sqlite3/proxy.sql|sqlite3 /var/lib/zabbix/zabbix.db
- Пример zabbix_proxy.conf для Sqlite3
ProxyMode=0 Server=IP-адрес сервера zabbix (master) ServerPort=10051 Hostname=Имя прокси-сервера, который был создан на сервере Zabbix, оно должно быть одинаковым LogFile=/var/log/zabbix/zabbix_proxy.log LogFileSize=100 DebugLevel=3 PidFile=/var/log/zabbix/zabbix_proxy.pid DBName=/var/lib/zabbix/zabbix.db # SQLite не будет запрашивать пользователя или пароль DBSocket=/var/lib/mysql/mysql.sock ProxyLocalBuffer=1 ProxyOfflineBuffer=1 HeartbeatFrequency=60 ConfigFrequency=60 DataSenderFrequency=60 StartPollers=65 StartPollersUnreachable=15 StartPingers=60 StartDiscoverers=35 StartHTTPPollers=5 HousekeepingFrequency=1 CacheSize=20M StartDBSyncers=8 HistoryCacheSize=20M HistoryTextCacheSize=32M Timeout=15 UnreachablePeriod=45 UnavailableDelay=60 UnreachableDelay=15 FpingLocation=/usr/sbin/fping LogSlowQueries=2 StartIPMIPollers=0 StartJavaPollers=0 StartVMwareCollectors=0 VMwareFrequency=60 StartSNMPTrapper=0
Полезные советы
- Если zabbix server - не один:
- В агенте прописать так:
... Server=192.168.0.1,192.168.0.2 ServerActive=192.168.0.1,192.168.0.2 ...
- Проблема: Триггер с элементом vm.memory.size
Пытаюсь мониторить переполнение RAM (если меньше 10% свободной RAM в течении 5 минут) и создаю триггер: {hostname:vm.memory.size[available].last(5m)}<10 Однако ничего не происходит.
- Решение:
Вам для вашей задачи лучше использовать функцию max() {hostname:vm.memory.size[pavailable].max(5m)}<10
Пример: {Zabbix server:vm.memory.size[available].max(5m)}<10
- Проблема: Если постоянно выскакивает предупреждение на триггер Disk I/O is overloaded on
{Zabbix server:system.cpu.util[,iowait].last(0)}>20 Получается, что ожидает операции ввода.вывода более 20 сек ?
- Решение: Cоветую увеличить интервал и также путем увелечинеия памяти!
Вот здесь совет Пример: {Zabbix server:system.cpu.util[,iowait].avg(5m)}>30
- Проблема: Zabbix discoverer processes more than 75% busy
- Решение: Этот процесс используется при обнаружении устройств в сети.
Проверьте и в случае необходимости, подправьте настройки правил обнаружения или увеличьте количество процессов которые занимаются обнаружением новых устройств (параметр StartDiscoverers в конфиг файле zabbix сервера). К пингу этот процесс и триггер отношения не имеют. Если не нужен, то и не запускайте обнаружения. Если нужен, то поставьте 2. Посмотрите на графике динамику изменения. Если всё равно нагрузка будет большая, поставьте 3. Ну и так далее.
- Проблема: zabbix win 7 cannot make counterpath for "\\": [0xC0000BBD] Обязательный аргумент пропущен или указан неправильно.
- Решение:
cmd lodctr /r
- взято тут
* Проблема: fping failed: /usr/bin/fping: can't create socket (must run as root?) : Permission denied
* Решение:
chown root:zabbix /usr/bin/fping chmod 710 /usr/bin/fping chmod ug+s /usr/bin/fping
- взято тут
* Проблема: : [111] Connection refused * Решение: commented out the line #ServerActive=127.0.0.1 from the agent configuration file /etc/zabbix/zabbix_agentd.conf.
или закомментируйте строку активного сервера и укажите только просто ip сервера.
Использование SpeedTest-Cli вместе с Zabbix
В этой статье я продемонстрирую, как мы можем использовать скрипты в Zabbix через UserParameter. Я буду использовать SpeedTest-cli в качестве примера, для выполнения тестов скорости загрузки интернет канала. Мы будем использовать UserParameter, он используется, когда нам нужна информация, которую сам zabbix не предоставляет, мы можем использовать команды и скрипты, не беспокоясь о том, поддерживает ли их zabbix, мы можем создавать собственные ключи.
Выполнение установки SpeedTest-Cli
sudo apt-get install speetest-cli
Выполним простой тест, показывающий только пинг, скорость загрузки и отдачи, а также сохраним в файл TXT.
Для этого выполним:
speedtest-cli ---bytes ---simple > /tmp/speed.txt xak@zabbix-new:~$ speedtest-cli ---bytes ---simple > /tmp/speed.txt xak@zabbix-new:~$ cat /tmp/speed.txt Ping: 1.692 ms Download: 10.56 Mbyte/s Upload: 11.46 Mbyte/s
В данном примере скорость измеряется с ближайшим сервером, вызвав справку
speedtest –help
Вы можете сменить сервер для проверки на нужный.
- Создание графика выполнения скриптов:
Поскольку сценарий имеет довольно большую задержку, около 50 секунд для генерации результатов, мы не могли просто запустить его с zabbix и получить результаты. Zabbix имеет 30-секундный тайм-аут для внешних скриптов. Таким образом, один из способов, который я нашел, заключается в том, чтобы запланировать выполнение скрипта через Crontab. Я рекомендую прочитать немного больше о Crontab или тут.
/etc/crontab: system-wide crontab Unlike any other crontab you don’t have to run the `crontab’ command to install the new version when you edit this file and files in /etc/cron.d. These files also have username fields, that none of the other crontabs do.SHELL=/bin/sh PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin# m h dom mon dow user command 17 * * * * root cd / && run-parts ---report /etc/cron.hourly 25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts ---report /etc/cron.daily ) 47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts ---report /etc/cron.weekly ) 52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts ---report /etc/cron.monthly ) */20 * * * * root /usr/bin/speedtest-cli ---simple > /tmp/speed.txt
Поскольку speedtest использует пропускную способность интернета для выполнения тестов, не стоит его запускать сильно часто, в данном примере я настроил запуск каждые 20мин.
- Создание UserParameter
Поскольку скрипт speedtest устанавливается на самом zabbix, нам нужно будет настроить UserParameter в собственном агенте Zabbix Server. Добавьте следующие строки в
/etc/zabbix/zabbix-agentd.conf:
UserParameter=upload[*],cat /tmp/speed.txt | grep «Upload:» | cut -d » » -f2 UserParameter=download[*],cat /tmp/speed.txt | grep «Download:» | cut -d » » -f2
Выполните описанную выше процедуру, перезапустите агент zabbix
Используйте zabbixget, чтобы проверить, работает ли ключ.
xak@zabbix-new:~$ zabbix_get -s 127.0.0.1 -p 10050 -k «download» && zabbix_get -s 127.0.0.1 -p 10050 -k «upload» 87.31 33.98
Наш UserParameter работает правильно.
- Создание элемента данных в Zabbix
В ключе определяем ключ, который мы создали в агенте.
В окне Интервал обновления укажите 20-30мин
Вы можете найти больше о пользовательских интервалах
здесь.
Повторяем действия для upload:
Создание элемента данных в Zabbix
В ключе определяем ключ, который мы создали в агенте.
В окне Интервал обновления укажите 20-30мин
Вы можете найти больше о пользовательских интервалах здесь.
- Дождитесь появления запланированного обновления в Zabbix.
- взято тут
- Пример команды из консоли - получение нагрузки CPU:
zabbix_get -s 10.0.0.143 -p 10050 -k "system.cpu.load[all,avg15]"
ИСТОЧНИКИ
- Рубрика: Monitoring
- Установка сервера Zabbix 3.4 на Debian 9
- Установка службы Zabbix - агент на Windows сервер.
- Установка и настройка Zabbix агентов на ОС Windows и Linux (Ubuntu, Debian)
- Установить Zabbix агент на Windows 7
- Как установить Zabbix агент на Windows XP
- ZABBIX AGENT installers
- Получение оповещения о проблеме
- Отправка email уведомлений в zabbix 2.4
- Zabbix тюнинг
- Решение проблем с триггерами processes more than 75% busy
- Оптимизация настроек Zabbix
- Fork Zabbix - оптимизированный для снижения нагрузки CPU и повышения кластеризации
ПОЛЕЗНОЕ
- Скрипты чистки базы zabbix
- Мониторинг транков Asterisk с помощью низкоуровнего обнаружения Zabbix
- Zabbix Documentation 5.2
- Zabbix: solve memory monitoring issue inside LXC containers
- Zabbix — мониторинг программных RAID массивов в Linux
- Мониторинг дисков и программных RAID-массивов с помощью Zabbix
- готовые шаблоны для разных релизов zabbix