Zabbix: различия между версиями

Материал из Tech_support
Перейти к навигации Перейти к поиску
 
Строка 184: Строка 184:
 
* [http://blog.files.dp.ua/zabbix-trigger Решение проблем с триггерами processes more than 75% busy]
 
* [http://blog.files.dp.ua/zabbix-trigger Решение проблем с триггерами processes more than 75% busy]
 
* [http://linux-notes.org/optimizatsiya-nastroek-zabbix/ Оптимизация настроек Zabbix]
 
* [http://linux-notes.org/optimizatsiya-nastroek-zabbix/ Оптимизация настроек Zabbix]
 +
* [https://glaber.io/ '''Fork Zabbix - оптимизированный для снижения нагрузки CPU и повышения кластеризации''']

Текущая версия на 11:00, 9 июля 2019

Zabbix2.png


Установка и настройка

- Система 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 -
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

  • Пример zabbix_proxy.conf для Sqlite3
ProxyMode=0
Server=IP do zabbix server (master)
ServerPort=10051
Hostname=Nome do proxy que foi criado no Zabbix server, tem quer ser igual
LogFile=/var/log/zabbix/zabbix_proxy.log
LogFileSize=100
DebugLevel=3
PidFile=/var/log/zabbix/zabbix_proxy.pid
DBName=/var/lib/sqlite/zabbix.db # SQLite não vai pedir usuário ou senha
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 

Полезные советы

  • Проблема: Триггер с элементом 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

ИСТОЧНИКИ: