Zabbix не запускается

Zabbix не запускается Хостинг

1-го октября 2018 года вышла новая версия бесплатной системы мониторинга, которую я постоянно использую. Я подробно расскажу об установке и начальной настройке Zabbix 4.0 на примере систем CentOS, Debian, Ubuntu со скриншотами и пояснениями. В этой версии много интересных и полезных нововведений, так что посмотреть на неё однозначно стоит.

Если у вас есть желание научиться администрировать системы на базе Linux, рекомендую познакомиться с онлайн-курсом «Linux для начинающих»
в OTUS. Курс для новичков, для тех, кто с Linux не знаком. Подробная информация
.

Guardian


Присоединился: 3 года назад

Коллеги, всем добрый день.


Такой вопрос, вдруг кто сталкивался.


Имеется Zabbix на ESXI, который успешно работает, с него делается снапшот.


Снапшот разворачивается на другом ESXI с другим именем виртуальной машины и на другом IP.


Соответственно, ничего не меняется, кроме самого IP виртуальной машины и имени (по сути).


Все настройки .conf, база данных, все остальное — неизменно.


Zabbix-agent успешно стартует

Zabbix-server — нет.

zabbix-server.service — LSB: Start zabbix-server daemon


Loaded: loaded (/etc/init.d/zabbix-server; generated; vendor preset: enabled)


Active: active (exited) since Mon 2020-11-30 17:45:32 MSK; 16h ago

Process: 842 ExecStop=/etc/init.d/zabbix-server stop (code=exited, status=0/SUCCESS)


Process: 880 ExecStart=/etc/init.d/zabbix-server start (code=exited, status=0/SUCCESS)


Tasks: 0 (limit: 4915)

В лог файл информация не пишется, PID не создаётся.

Кто-то сталкивался с подобным? Есть какие-либо мысли?

Zabbix не запускается


Присоединился: 10 лет назад

Попробуй сделать reinstall пакета zabbix-server-mysql. Такое ощущение, что я уже видел что-то подобное и помогла перестановка. Именно после клона не стартовал сервер. 

STALKER_SLX


Присоединился: 5 лет назад

Если вы установили серверную часть системы мониторинга Zabbix на системах RHEL (Oracle Linux, RedHat, CentOS) и вроде бы всё правильно, но в веб-интерфейсе вылазит ошибка

Zabbix server is not running: the information displayed may not be current

Zabbix не запускается

то, здесь обычно 2 варианта:

  • самый простой — не запущен или не корректно сконфигурирован демон zabbix-server. Проверьте, совпадают ли номера портов в конфигах zabbix-server ( /etc/zabbix/zabbix_server.conf
    ) и zabbix-web ( /etc/zabbix/web/zabbix.conf.php
    ), а так же правильно ли настроено подключение к БД.
  • если всё в конфигурационных файлах правильно и демон запущен, это скорее всего значит, что вам надо или отключить систему защиты SeLinux совсем или — что будет корректнее — изменить политику доступа к портам системы для демона httpd.

1. Проверим, что проблема действительно в настройках SeLinux:

Должны периодически добавляться в лог строки вроде этой:

должна в таком случае дать результат:

zabbix_can_network —> off

Изменим политику для httpd:

setsebool -P httpd_can_network_connect on

Результат должен быть следующий:

httpd_can_network_connect —> on

Теперь веб-интерфейс Zabbix должен нормально подключаться к серверу через порт 10051 (по-умолчанию) и ошибка исчезнет.

Не знаю из за чего но сервер zabbix вроде бы запушен но на панели показывает

Zabbix сервер запущен: Нет

 1758:20161027:104829.756 Starting Zabbix Server. Zabbix 3.0.5 (revision 62889). 1758:20161027:104829.756 ****** Enabled features ****** 1758:20161027:104829.756 SNMP monitoring: YES 1758:20161027:104829.756 IPMI monitoring: YES 1758:20161027:104829.756 Web monitoring: YES 1758:20161027:104829.756 VMware monitoring: YES 1758:20161027:104829.757 SMTP authentication: YES 1758:20161027:104829.757 Jabber notifications: YES 1758:20161027:104829.757 Ez Texting notifications: YES 1758:20161027:104829.757 ODBC: YES 1758:20161027:104829.757 SSH2 support: YES 1758:20161027:104829.757 IPv6 support: YES 1758:20161027:104829.757 TLS support: YES 1758:20161027:104829.757 ****************************** 1758:20161027:104829.757 using configuration file: /etc/zabbix/zabbix_server.conf 1758:20161027:104829.765 current database version (mandatory/optional): 03000000/03000000 1758:20161027:104829.765 required mandatory version: 03000000 1758:20161027:104829.985 __mem_malloc: skipped 0 asked 32 skip_min 4294967295 skip_max 0 1758:20161027:104829.985 [file:strpool.c,line:53] zbx_mem_malloc(): out of memory (requested 30 bytes) 1758:20161027:104829.985 [file:strpool.c,line:53] zbx_mem_malloc(): please increase CacheSize configuration parameter 

Но при перезагрузки сервиса выдает ошибку:

 root@Zabbix:/# service zabbix-server restart * Stopping Zabbix server zabbix_server
No process in pidfile '/var/run/zabbix/zabbix_server.pid' found running; none killed. ...done. * Starting Zabbix server zabbix_server ...done. 
Содержание
  1. Введение
  2. Минуточку внимания
  3. Установка сервера Zabbix 4. 0 в CentOS
  4. Настройка SELinux с zabbix
  5. Подготовка сервера CentOS к установке
  6. Centos 7
  7. Centos 8
  8. Установка Zabbix Agent на Linux
  9. Установка zabbix агент на Windows
  10. Настройка Zabbix Server
  11. Создание учетной записи и смена пароля
  12. Настройка email оповещений
  13. Все, отправку уведомлений мы настроили, осталось подождать срабатывания триггера, чтобы проверить. Сделаем это позже, когда подключим хост к мониторингу. Если вам нужны оповещения в telegram , то читайте отдельную статью на эту тему. Так же рекомендую ознакомиться с материалом на тему настройки повторяющихся уведомлений в заббиксе . Для многих триггеров может оказаться очень полезной возможностью. Например, можно каждый день напоминать об окончании времени делегирования домена , пока он не будет продлен. Так же zabbix умеет звонить через asterisk для оповещения о событиях. Изменение шаблона стандартных оповещений Я вношу следующие изменения. Меняю шаблон темы письма при проблеме и восстановлении. В стандартном шаблоне в теме письма нет информации об имени хоста. В некоторых шаблонах триггера указано имя хоста, но есть и такие, где нет этой информации. В итоге в оповещении сразу не видно, о каком хосте идет речь. В моем же шаблоне сразу в теме будет указано имя хоста далее статус, а потом все остальное. Вот пример старого и нового оповещения: Мне мой вид кажется более наглядным. Шаблон меняет на следующий: {HOST. NAME} - {TRIGGER. STATUS}: {TRIGGER. NAME} Он одинаковый и для проблемы, и для восстановления. Изменение стандартных шаблонов мониторинга На своих серверах мониторинга я изменяю некоторые параметры стандартных шаблонов, чтобы было меньше бесполезных и неинформативных срабатываний. Вот список того, что я делаю. В шаблоне  Template App Zabbix Agent отключаю триггер  Version of zabbix_agent(d) was changed on {HOST. NAME} . Если его оставить, то после каждого обновления zabbix агента вы будете получать уведомление. Лично мне эта информация не нужна. В шаблоне  Template OS Linux меняю в триггере  Disk I/O is overloaded on {HOST. NAME} значение со стандартных 20% до 50%. Я считаю, что начинать беспокоиться и смотреть на машину надо при этом значении. Но вы можете подобрать под свои нужды. В этом же шаблоне в правиле обнаружения  Mounted filesystem discovery добавляю еще один прототип триггера, скопировав  Free disk space is less than 20% on volume {#FSNAME} . Новый шаблон полностью идентичен скопированному, только вместо 20% указываю 5% и ставлю важность с "Предупреждение" на "Высокая". Я добавляю еще одно оповещение, если свободного места на дисках остается меньше 5%. Стандартные 20% очень высокий порог, особенно если большой диск. Оперативное решение проблемы не требуется. Из-за этого часто откладываешь чистку диска на потом и забываешь о ней. Теперь будет еще один страховочный триггер, после которого точно надо идти и прямо сейчас разбираться с местом. В триггере на 20% свободного места ставлю разрешение на закрытие триггера вручную. В этом же шаблоне в триггере  Lack of free swap space on {HOST. NAME} меняю порог срабатывания с 50% до 20%, либо вообще отключаю его. Сейчас много серверов работают без swap. Хотя лично я всегда его создаю и подключаю. В шаблоне  Template OS Windows отключаю Правило обнаружения  Windows service discovery . В дефолтном варианте оно генерирует очень много ненужных итемов и оповещений. Если нужен мониторинг какой-то службы windows, я делаю для этого отдельный шаблон. Общие настройки В общих настройках zabbix server, которые располагаются в разделе Администрирование -> Общие я меняю следующие параметры: В разделе Рабочее время выставляю актуальные рабочие часы. В разделе Опции отображения триггеров меняю значения  Отображать триггеры в состоянии ОК в течении и  Мигание триггеров при изменении состояния на 1 минуту. Это просто мои предпочтения. Мне не нравится, когда триггеры долго мигают, либо висят уже закрытые. В разделе Прочее меняю  Обновление неподдерживаемых элементов данных на 1 минуту. Это актуально во время отладки новых шаблонов. Установка сервера Zabbix 4. 0 в Ubuntu, Debian С установкой Zabbix на сервер с Ubuntu или Debian попроще, так как в стандартных репозиториях посвежее версии софта, можно использовать их. Подключаем репозитории zabbix 4.0. # wget https://repo.zabbix.com/zabbix/4.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.0-3+bionic_all.deb # dpkg -i zabbix-release_4.0-3+bionic_all.deb # wget https://repo.zabbix.com/zabbix/4.0/debian/pool/main/z/zabbix-release/zabbix-release_4.0-3+stretch_all.deb # dpkg -i zabbix-release_4.0-3+stretch_all.deb # wget https://repo.zabbix.com/zabbix/4.0/debian/pool/main/z/zabbix-release/zabbix-release_4.0-3+buster_all.deb # dpkg -i zabbix-release_4.0-3+buster_all.deb Если у вас другие версии систем, то простой найдите ссылки пакетов под свою версию в официальном репозитории — https://repo.zabbix.com/zabbix/4.0/ Дальнейшая установка не будет отличаться от текущей. Обновляем информацию о репозиториях, а заодно и последние обновления поставим: # apt update && apt upgrade Устанавливаем zabbix сервер: # apt install zabbix-server-mysql zabbix-frontend-php Он по-умолчанию ставится с apache, который сразу же запускается. Остановим его и отключим: # systemctl stop apache2 # systemctl disable apache2 Ставим отдельно nginx и php-fpm: # apt install nginx php-fpm Запускаем скрипт начальной конфигурации mysql и задаем пароль для root. Все остальное можно оставить по-умолчанию. # /usr/bin/mysql_secure_installation # mcedit /etc/mysql/mariadb.conf.d/50-server.cnf innodb_file_per_table=1 innodb_buffer_pool_size = 768M # внимание на параметр! установить примерно в 2 раза меньше объема оперативной памяти сервера innodb_buffer_pool_instances=1 # увеличивать на 1 каждый GB innodb_buffer_pool_size innodb_flush_log_at_trx_commit = 0 innodb_log_file_size = 512M innodb_log_files_in_group = 3 Перезапустите mariadb и убедитесь, что она запустилась. # systemctl restart mariadb # netstat -tulnp | grep mysqld tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 16753/mysqld Cоздадим базу данных, пользователя zabbix, и заполним базу. # mysql -uroot -p Enter password: > create database zabbix character set utf8 collate utf8_bin; > grant all privileges on zabbix.* to zabbix@localhost identified by 'zabpassword'; exit # zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix Теперь редактируем файл конфигурации сервера заббикс. Прописываем данные для подключения к БД, отключаем ipv6 и увеличиваем стандартный timeout. # mcedit /etc/zabbix/zabbix_server.conf Изменяем указанные строки, остальные не трогаем: DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=zabpassword ListenIP=0.0.0.0 Timeout=10 Этих минимальных настроек достаточно, для работы сервера. Я рекомендую увеличивать параметр Timeout, так как он отвечает за время ожидания ответа от агента, snmp устройства или внешней проверки. Иногда стандартного значения в 4 секунды бывает недостаточно. В частности, когда используется какой-то скрипт, который долго выполняется, для получения метрики. Поставьте секунд 10. Запускаем zabbix и добавляем в автозагрузку. # systemctl start zabbix-server # systemctl enable zabbix-server Проверяем запустился ли. # netstat -tulnp | grep zabbix_server tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 16847/zabbix_server Все в порядке. Запускаем nginx, который у нас будет выступать в качестве web сервера. # systemctl start nginx # systemctl enable nginx Убедимся, что в качестве web сервера работает nginx. # netstat -tulnp | grep 80 tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 17075/nginx: master tcp6 0 0 :::80 :::* LISTEN 17075/nginx: master Нам нужно сделать конфиг nginx для работы web интерфейса zabbix. Если у вас nginx работает на том же сервере, где сам zabbix, и других виртуальных хостов нет и не будет, то правьте сразу дефолтный — /etc/nginx/sites-available/default.conf . Приводим его к следующему виду: # mcedit /etc/nginx/sites-available/default.conf server { listen 80; server_name localhost; root /usr/share/zabbix; location / { index index.php index.html index.htm; } location ~ \.php$ { fastcgi_pass unix: /run/php/php7.2-fpm.sock ; # проверьте этот путь, для разных версий php он будет разный fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; fastcgi_param PHP_VALUE " max_execution_time = 300 memory_limit = 128M post_max_size = 16M upload_max_filesize = 2M max_input_time = 300 date.timezone = Europe/Moscow always_populate_raw_post_data = -1 "; fastcgi_buffers 8 256k; fastcgi_buffer_size 128k; fastcgi_intercept_errors on; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; } } Проверим конфиг на ошибки и если все в порядке, перезапустим nginx. # nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful # nginx -s reload С серверной частью закончили. Для продолжения установки zabbix сервера переходим к настройке Zabbix Frontend. Заключение На этом установка и базовая настройка сервера мониторинга zabbix 4.0 завершена. Советы, замечания, исправления прошу оставлять в комментариях. Команда заббикс внимательно следит за обратной совместимостью своих продуктов. Благодаря этому переход на новые версии проходит безболезненно. Нет необходимости перенастраивать или исправлять старые наработки. В новых версиях только добавляется функционал, старый чаще всего не претерпевает изменений, им можно дальше пользоваться. Бывают, конечно, исключения, но редко. Материалы по настройке мониторинга различных систем и сервисов не устаревают и остаются актуальным для самых новых релизов. Вот пример мониторинга различных служб и сервисов, приведенных на моем сайте. Возможно, что-то из этого вам будет интересно и полезно. Мониторинг в Zabbix: Помогла статья? Подписывайся на telegram канал автора Анонсы всех статей, плюс много другой полезной и интересной информации, которая не попадает на сайт. Настройка Zabbix Frontend Идем в браузер и открываем адрес http://192.168.13.117. Вы должны увидеть установщик Zabbix 4.0. Нажимаем  и начинаем настройку web интерфейса. На следующей странице будет проверка требований. У вас должны быть выполнены все требования. В зависимости от системы и версии php, информация будет в каждом случае разниться. На следующем этапе указываем параметры доступа к базе данных, потом Zabbix server details. Там можно ничего не указывать, а оставить дефолтные параметры. Потом будет страница с проверкой введенных данных. Если все в порядке, то заканчивайте установку. В конце увидите сообщение: Congratulations! You have successfully installed Zabbix frontend. После нажатия на  увидите окно авторизации Zabbix сервера. Стандартная учетная запись для входа в web интерфейс zabbix следующая: Пользователь Admin Пароль zabbix На этом установка бесплатного сервера мониторинга zabbix окончена. Можно приступать к настройке.
  14. Изменение шаблона стандартных оповещений
  15. Изменение стандартных шаблонов мониторинга
  16. Общие настройки
  17. Установка сервера Zabbix 4. 0 в Ubuntu, Debian
  18. Заключение
  19. Помогла статья? Подписывайся на telegram канал автора
  20. Настройка Zabbix Frontend
Читайте также:  US Hosting | 2022's FASTEST & BEST American Web Hosting

Введение

На сегодняшний день, по моему мнению, из бесплатных систем мониторинга именно Zabbix самая популярная и функциональная. Упоминания о ней я постоянно встречаю в технических статьях специалистов различного масштаба и организаций. К примеру, СберТех
использует Zabbix как единую платформу мониторинга. И Т отдел сети магазинов Магнит так же использует zabbix как основную систему мониторинга. Пару лет назад я смотрел выступление представителя ИТ отдела Магнита, где он подробно описывал структуру системы. На тот момент это была самая крупная инсталляция заббикса с тысячами прокси серверов для сбора данных из магазинов по всей стране. Упоминания о мониторинге заббикс я встречал у специалистов компаний 1С, Крок, Яндекс. Деньги и других. Перечислил только то, что запомнилось.

Нужно понимать, что Zabbix — система мониторинга общего назначения. У нее нет специализации в микросервисы, сеть, железо и т.д. В связи с этим, всегда может найтись инструмент, который сможет выполнять ту или иную задачу удобнее и эффективнее, чем zabbix. Но это не умоляет остальных достоинств системы. Я их вижу в первую очередь в том, что в ней можно настроить мониторинг всего, что угодно. Главное научиться подавать значения в систему. А для этого есть масса инструментов — как самих агентов, так и скриптов, которые можно подключать к сбору данных.

Система мониторинга Zabbix позволяет так или иначе завести на нее все обслуживаемые сервисы. Где-то это может быть не очень просто, но в любом случае, один универсальный инструмент удобнее, чем несколько. Мне всегда удавалось настроить желаемый мониторинг с помощью заббикса. Если не было готовых шаблонов или подходящих агентов для сбора, писал скрипты и передавал ими данные агенту. С моими (и не только) решениями по мониторингу можете познакомиться в отдельном разделе zabbix
.

Чем меня еще подкупает zabbix — хорошая документация и большое комьюнити. Много выступлений от различных специалистов с описанием внедрений. Все это облегчает работу с системой. Проще принять решение как поступить в той или иной ситуации. Сами разработчики постоянно проводят встречи, приглашают выступающих, потом выкладывают видео. В общем, система со всех сторон оставляет благоприятное впечатление.

Я буду устанавливать и настраивать работу сервера zabbix на nginx, что несколько отличается от дефолтной установки, которая включает в себя веб сервер apache. В связи с этим, нам необходимо будет подготовиться.

Zabbix не запускается

Присоединился: 7 месяцев назад

 


На Debian 11 поднял mySQL , установил Zabbix-server-mysql, но при запуске возникает ошибка, не создаётся log файл. Один раз переустановил, но проблема не решилась. Помогите где еще поискать проблему.

# systemctl status zabbix-server

● zabbix-server.service — Zabbix Server (MySQL/MariaDB)

Loaded: loaded ( ; enabled; vendor preset: enabled)

Active: failed (Result: exit-code) since Wed 2023-01-18 17:54:56 MSK; 12s ago

Docs: man:zabbix_server

Process: 28573 ExecStart=/usr/sbin/zabbix_server —foreground (code=exited, status=1/FAILURE)

Main PID: 28573 (code=exited, status=1/FAILURE)

CPU: 14ms

Zabbix не запускается

Присоединился: 10 лет назад

 unknown parameter "DBpassword" 

Параметр называется DB P
assword. Регистр букв в Linux имеет значение.

Zabbix не запускается

Присоединился: 7 месяцев назад

 


# systemctl status zabbix-server

● zabbix-server.service — Zabbix Server (MySQL/MariaDB)

Loaded: loaded ( ; enabled; vendor preset: enabled)

Active: failed (Result: exit-code) since Thu 2023-01-19 00:07:58 MSK; 10min ago

Docs: man:zabbix_server

Process: 31071 ExecStart=/usr/sbin/zabbix_server —foreground (code=exited, status=1/FAILURE)

Main PID: 31071 (code=exited, status=1/FAILURE)

CPU: 13ms

Started Zabbix Server (MySQL/MariaDB).

Starting Zabbix Server. Zabbix 5.0.8 (revision d3c78f993a).

Press Ctrl+C to exit.

Main process exited, code=exited, status=1/FAILURE

Failed with result ‘exit-code’.

Zabbix не запускается

Присоединился: 10 лет назад

Zabbix не запускается

Присоединился: 7 месяцев назад

 


Не могу понять, он должен создаваться при установке или его необходимо создать или перенести.

Zabbix не запускается

Присоединился: 10 лет назад

Zabbix не запускается

Присоединился: 7 месяцев назад

 


Zabbix не запускается

Присоединился: 10 лет назад

Zabbix не запускается

Присоединился: 7 месяцев назад

 


pcp-export-zabbix-agent/stable 5.2.6-1 amd64

Module for exporting PCP metrics to Zabbix agent

python3-protobix/stable 1.0.2-8 all

Implementation of Zabbix Sender protocol (Python 3)

python3-pyzabbix/stable 0.8.2-1 all

Zabbix API Python interface.

resource-agents/stable 1:4.7.0-1 amd64

Cluster Resource Agents

uwsgi-core/stable 2.0.19.1-7.1 amd64

fast, self-healing application container server (core)

zabbix-java-gateway/stable 1:5.0.8+dfsg-1 all

network monitoring solution — Java gateway

zabbix-proxy-mysql/stable 1:5.0.8+dfsg-1 amd64

network monitoring solution — proxy (using MySQL)

zabbix-proxy-pgsql/stable 1:5.0.8+dfsg-1 amd64

network monitoring solution — proxy (using PostgreSQL)

zabbix-proxy-sqlite3/stable 1:5.0.8+dfsg-1 amd64

network monitoring solution — proxy (using SQLite3)

zabbix-server-pgsql/stable 1:5.0.8+dfsg-1 amd64

network monitoring solution — server (using PostgreSQL)

Zabbix не запускается

Присоединился: 7 месяцев назад

Zabbix не запускается

Присоединился: 7 месяцев назад

 


Я начал вводить команды passwd -u потом задавал пароль но менял оболочку на /bin/bash но всё четно, не хватало пермишенов. Далее нужда в этом резко отпала но zabbix перестал работать. Вернул настройки назад, удалил пароль заблочил аккаунт. и Всёравно.

Вот логи

AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2400.0 Iron/45.0.2400.0 Safari/537.36″

10.180.2.74 — — [03/Oct/2016:10:43:36 +0300] «POST /zabbix/jsrpc.php?output=json-rpc HTTP/1.1″ 403 511 » zbx/zabbix/hosts.php?ddreset=1
» «Mozilla/5.0 (Windows NT 6.1; WOW64)

[Mon Oct 03 10:44:06.630108 2016] [core:error] [pid 26893]
Permission denied: [client 10.180.2.74:32335] AH00035: access to /zabbix/jsrpc.php denied (filesystem path ‘/usr’) because search permissions are missing on a component of the path, referer: zbx/zabbix/hosts.php?ddreset=1

systemctl status zabbix-server.service

● zabbix-server.service — Zabbix Server

Loaded: loaded (/lib/systemd/system/zabbix-server.service; disabled)

Active: activating (auto-restart) (Result: resources) since Пн 2016-10-03 10:29:59 MSK; 6s ago

Process: 27098 ExecStop=/bin/kill -SIGTERM $MAINPID (code=exited, status=0/SUCCESS)

Process: 28234 ExecStart=/usr/sbin/zabbix_server -c $CONFFILE (code=exited, status=0/SUCCESS)

Main PID: 911 (code=exited, status=1/FAILURE)

journalctl -xn

— Logs begin at Сб 2016-08-06 18:32:40 MSK, end at Пн 2016-10-03 10:45:41 MSK. —

окт 03 10:45:32 zbx systemd[1]: Starting Zabbix Server.

— Subject: Начинается запуск юнита zabbix-server.service

— Defined-By: systemd

— Support: lists.freedesktop.org/mailman/listinfo/systemd-devel

— Начат процесс запуска юнита zabbix-server.service.

окт 03 10:45:32 zbx zabbix_server[28727]: zabbix_server: daemon.c:372: daemon_start: Assertion `0′ failed.

окт 03 10:45:32 zbx systemd[1]: PID file /run/zabbix/zabbix_server.pid not readable (yet?) after start.

окт 03 10:45:32 zbx systemd[1]: zabbix-server.service never wrote its PID file. Failing.

окт 03 10:45:32 zbx systemd[1]: Failed to start Zabbix Server.

— Subject: Ошибка юнита zabbix-server.service

— Defined-By: systemd

— Support: lists.freedesktop.org/mailman/listinfo/systemd-devel

— Произошел сбой юнита zabbix-server.service.

— Результат: failed.

окт 03 10:45:32 zbx systemd[1]: Unit zabbix-server.service entered failed state.

окт 03 10:45:36 zbx snmpd[669]: /proc/partitions: Permission denied

окт 03 10:45:36 zbx snmpd[669]: /proc/stat: Permission denied

окт 03 10:45:41 zbx snmpd[669]: /proc/partitions: Permission denied

окт 03 10:45:41 zbx snmpd[669]: /proc/stat: Permission denied

ТУт наверно легде удалить пользователя и создать заного, с необходимыми правами. Кто подскажет что му нужно?

Читайте также:  Аренда сервера в Москве |

Установил Centos 8, после все что нужно для Zabbix.

Но не запускается Zabbix-Server.

 апр 29 16:19:24 localhost.localdomain setroubleshoot[7451]: AnalyzeThread.run(): Set alarm timeout to 10
апр 29 16:19:27 localhost.localdomain systemd[1]: zabbix-server.service: Service RestartSec=10s expired, scheduling restart.
апр 29 16:19:27 localhost.localdomain systemd[1]: zabbix-server.service: Scheduled restart job, restart counter is at 647.
-- Subject: Назначен автоматический перезапуск юнита
-- Defined-By: systemd
-- Support: https://access.redhat.com/support
--
-- Назначен автоматический перезапуск юнита zabbix-server.service, так как для него был задан
-- параметр Restart=.
апр 29 16:19:27 localhost.localdomain systemd[1]: Stopped Zabbix Server.
-- Subject: Завершена остановка юнита zabbix-server.service.
-- Defined-By: systemd
-- Support: https://access.redhat.com/support
--
-- Процесс остановки юнита zabbix-server.service был завершен.
апр 29 16:19:27 localhost.localdomain systemd[1]: Starting Zabbix Server...
-- Subject: Начинается запуск юнита zabbix-server.service
-- Defined-By: systemd
-- Support: https://access.redhat.com/support
--
-- Начат процесс запуска юнита zabbix-server.service.
апр 29 16:19:27 localhost.localdomain setroubleshoot[7451]: AnalyzeThread.run(): Cancel pending alarm
апр 29 16:19:27 localhost.localdomain zabbix_server[26672]: zabbix_server [26672]: Cannot initialize IPC services: Cannot access path "/var/run/zabbix": [13] Permission denied.
апр 29 16:19:27 localhost.localdomain systemd[1]: zabbix-server.service: Control process exited, code=exited status=1
апр 29 16:19:27 localhost.localdomain systemd[1]: zabbix-server.service: Failed with result 'exit-code'.
-- Subject: Unit failed
-- Defined-By: systemd
-- Support: https://access.redhat.com/support
--
-- The unit zabbix-server.service has entered the 'failed' state with result 'exit-code'.
апр 29 16:19:27 localhost.localdomain systemd[1]: Failed to start Zabbix Server.
-- Subject: Ошибка юнита zabbix-server.service
-- Defined-By: systemd
-- Support: https://access.redhat.com/support
--
-- Произошел сбой юнита zabbix-server.service.
--
-- Результат: failed.
апр 29 16:19:27 localhost.localdomain xrdp-chansrv[16616]: [ERROR] clipboard_event_selection_request: unknown target text/plain;charset=utf-8 

Скрин панели Zabbix, пишет что Zabbix сервер запущен — нет

608a8952b36b3277801396.jpeg


  • Вопрос задан

    более двух лет назад

Cannot access path «/var/run/zabbix»: [13] Permission denied.

Тут не с заббиксом проблема, а с английским.

Белым по черному написано, что доступ запрещен. Проверяйте разрешения на указанные папки.

Привет! У меня схожая проблема.

Только она заключается в том, что заббикс не может подключиться к базе.

в логах:

 connection to database 'zabbix' failed: [1045] Access denied for user 'zabbix'@'localhost' (using password: YES)
database is down: reconnecting in 10 seconds 

14 авг. 2023, в 23:59

5000 руб./за проект

14 авг. 2023, в 23:09

500 руб./за проект

14 авг. 2023, в 23:05

50000 руб./за проект

Минуточку внимания

Установка сервера Zabbix 4. 0 в CentOS

Для того, чтобы установить Zabbix Server 4.0 на Centos 7 нужно подключить репозиторий актуальной версии.

 # rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm 
 Retrieving https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
warning: /var/tmp/rpm-tmp.fCWryx: Header V4 RSA/SHA512 Signature, key ID a14fe591: NOKEY
Preparing. ################################# [100%]
Updating / installing. 1:zabbix-release-4.0-1.el7 ################################# [100%] 

То же самое делаем для Centos 8.

 # rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/8/x86_64/zabbix-release-4.0-2.el8.noarch.rpm 

Устанавливаем сам сервер заббикса.

 # yum install zabbix-server-mysql zabbix-web-mysql 

В зависимостях пакетов будет httpd, который нам не нужен, так как у нас будет nginx и php7.1, но я не разбирался, как поставить без него. После установки пакетов, создадим базу данных, пользователя zabbix и заполним базу.

 # mysql -uroot -p
Enter password:
> create database zabbix character set utf8 collate utf8_bin;
> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabpassword';
exit
# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix 

Теперь редактируем файл конфигурации сервера заббикс. Прописываем данные для подключения к БД, отключаем ipv6 и увеличиваем стандартный timeout.

 # mcedit /etc/zabbix/zabbix_server.conf 

Изменяем указанные строки, остальные не трогаем:

 DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabpassword
ListenIP=0.0.0.0
Timeout=10 

Этих минимальных настроек достаточно, для работы сервера. Я рекомендую увеличивать параметр Timeout
, так как он отвечает за время ожидания ответа от агента, snmp устройства или внешней проверки. Иногда стандартного значения в 4 секунды бывает недостаточно. В частности, когда используется какой-то скрипт, который долго выполняется для получения метрики. Поставьте секунд 10.

Запускаем zabbix и добавляем в автозагрузку.

 # systemctl start zabbix-server
# systemctl enable zabbix-server 

Проверяем лог файл на наличие ошибок.

 # cat /var/log/zabbix/zabbix_server.log 
Лог запуска Zabbix Server

Настройка SELinux с zabbix

Если у вас включен SELinux, получите ошибку.

 cannot start preprocessing service: Cannot bind socket to "/var/run/zabbix/zabbix_server_preprocessing.sock": [13] Permission denied. 

Это нормально, сейчас настроим SELinux для нормальной работы Zabbix. Для этого устанавливаем пакет policycoreutils-python, скачиваем готовый модуль для SELinux и применяем его.

 # yum install policycoreutils-python
# cd ~
# curl https://support.zabbix.com/secure/attachment/53320/zabbix_server_add.te > zabbix_server_add.te
# checkmodule -M -m -o zabbix_server_add.mod zabbix_server_add.te
# semodule_package -m zabbix_server_add.mod -o zabbix_server_add.pp
# semodule -i zabbix_server_add.pp 

Теперь нам надо перезапустить zabbix-server.

 # systemctl restart zabbix-server 

Если у вас это не получится сделать через systemctl, значит служба зависла. Завершаем ее принудительно и запускаем снова.

 # kill -9 `pidof zabbix_server`
# systemctl start zabbix-server 

Снова проверяйте log файл. Теперь ошибок быть не должно. Как я уже сказал, если у вас отключен SELinux, то делать описанные выше манипуляции с модулем не надо.

С серверной частью закончили. Нам нужно сделать конфиг nginx для работы web интерфейса zabbix на сервере с Centos 7
. Если у вас nginx работает на том же сервере, где сам zabbix, и других виртуальных хостов нет и не будет, то правьте сразу дефолтный — /etc/nginx/conf.d/default.conf
. Приводим его к следующему виду:

 # mcedit /etc/nginx/conf.d/default.conf 
 server { listen 80; server_name localhost; root /usr/share/zabbix; location / {	index index.php index.html index.htm; } location ~ \.php$ {	fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;	fastcgi_index index.php;	fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;	include fastcgi_params;	fastcgi_param PHP_VALUE "	max_execution_time = 300	memory_limit = 128M	post_max_size = 16M	upload_max_filesize = 2M	max_input_time = 300	date.timezone = Europe/Moscow	always_populate_raw_post_data = -1	";	fastcgi_buffers 8 256k;	fastcgi_buffer_size 128k;	fastcgi_intercept_errors on;	fastcgi_busy_buffers_size 256k;	fastcgi_temp_file_write_size 256k; }
} 

Для Centos 8 конфиг будет другой
, так как из репозитория zabbix прилетает готовый конфиг для php-fpm. Он находится тут — /etc/php-fpm.d/zabbix.conf
. Там указан другой сокет — /run/php-fpm/zabbix.sock, который мы будем использовать. Поменяем в этом конфиге пользователя с apache на nginx и укажем свой часовой пояс.

 user = nginx
group = nginx
php_value[date.timezone] = Europe/Moscow 

После этого php-fpm надо перезапустить.

 # systemctl restart php-fpm 

Конфиг nginx default.conf
для centos 8 будет таким:

 server { listen 80; server_name localhost; root /usr/share/zabbix; location / { index index.php index.html index.htm; } location ~ \.php$ { fastcgi_pass unix:/run/php-fpm/zabbix.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; fastcgi_buffers 8 256k; fastcgi_buffer_size 128k; fastcgi_intercept_errors on; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; }
} 

Проверим конфиг на ошибки и если все в порядке, перезапустим nginx.

 # nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
# nginx -s reload 

Маленький, но важный нюанс. Нам надо изменить права доступа на некоторые папки. Назначить владельца nginx.

 # chown -R nginx:nginx /var/lib/php/session
# chown -R nginx:nginx /etc/zabbix/web 

Этот шаг нужно будет проделывать после каждого обновления php или zabbix. Связано с тем, что по-умолчанию zabbix идет в комплекте с apache и рассчитан на работу с ним. Поэтому после установки или обновления, он делает его владельцем директории  /etc/zabbix/web
.

Даем разрешения SELinux для работы заббикса с web сервером и базой данных.

 # setsebool -P httpd_can_connect_zabbix on
# setsebool -P httpd_can_network_connect_db on 

Я не знаю, насколько последняя настройка актуальна, если подключение к БД локальное. У разработчиков в инструкции сказано, что в случае с postgresql даже если подключаетесь через 127.0.0.1, разрешение выдавать нужно. Насчет mysql нет комментариев.

С серверной частью закончили. Для продолжения установки zabbix сервера переходим к настройке Zabbix Frontend
.

Подготовка сервера CentOS к установке

Centos 7

Первым делом вам необходимо  установить
 и  настроить
 сервер CentOS 7. Перед установкой сервера Zabbix нам также нужно подготовить Web сервер. У меня есть отдельная статья по настройке web сервера на centos
. Там все подробно описано. Сейчас же я кратко и без лишних комментариев выполню минимум необходимых действий для работы заббикса. Так же я не буду останавливаться на  настройке iptables
. Эта отдельная тема и мне не хочется ее касаться в этой статье. Либо настройте сами по моим инструкциям, либо просто отключите firewall:

 # systemctl stop firewalld
# systemctl disable firewalld 

Подключаем репозиторий nginx и устанавливаем его:

 # rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
# yum install nginx 

Запускаем nginx и добавляем в автозагрузку.

 # systemctl start nginx
# systemctl enable nginx 

Проверяем, работает ли он. Для этого открываем в браузере ссылку http://192.168.13.117/, где 192.168.13.117 — ip адрес настраиваемого сервера.

Стартовая страница Nginx

Если у вас не работает nginx, разберитесь с ним, прежде чем двигаться дальше. В первую очередь проверьте настройки фаервола. Более детально о настройке nginx
у меня рассказано отдельно.

Дальше устанавливаем php-fpm. Для этого подключаем репозиторий remi и epel-release.

 # yum install epel-release
# rpm -Uhv http://rpms.remirepo.net/enterprise/remi-release-7.rpm 

Активируем репу remi-php71, для этого выполняем команды:

 # yum install yum-utils
# yum-config-manager --enable remi-php71 

Устанавливаем php 7.1 и модули к нему.

 # yum install php71 php-fpm php-cli php-mysql php-gd php-ldap php-odbc php-pdo php-pecl-memcache php-pear php-xml php-xmlrpc php-mbstring php-snmp php-soap php-bcmath 

Запускаем php-fpm и добавляем в автозагрузку.

 # systemctl start php-fpm
# systemctl enable php-fpm 

Проверяем, запустился ли он.

 # netstat -tulpn | grep php-fpm
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 13261/php-fpm: mast 

Все в порядке, запустился на порту 9000. Запустим его через unix сокет. Для этого открываем конфиг /etc/php-fpm.d/www.conf
и комментируем строку:

 # mcedit /etc/php-fpm.d/www.conf 
 ;listen = 127.0.0.1:9000 

Вместо нее добавляем несколько других:

 listen = /var/run/php-fpm/php-fpm.sock
listen.mode = 0660
listen.owner = nginx
listen.group = nginx 

Заодно измените пользователя, от которого будет работать php-fpm. Вместо apache укажите nginx, отредактировав соответствующие параметры.

 user = nginx
group = nginx 
 # systemctl restart php-fpm 

Проверяем, стартовал ли указанный сокет.

 # ll /var/run/php-fpm/php-fpm.sock
srw-rw----. 1 nginx nginx 0 Oct 4 15:08 /var/run/php-fpm/php-fpm.sock 

На текущий момент с настройкой php-fpm закончили. Продолжаем подготовку сервера к установке zabbix.

Устанавливаем свежую версию MariaDB. Подключаем репозиторий. Для этого создаем файл  /etc/yum.repos.d/mariadb.repo
 следующего содержания.

 # mcedit /etc/yum.repos.d/mariadb.repo 
 # MariaDB 10.3 CentOS repository list - created 2018-10-04 12:10 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.3/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1 

Устанавливаем последнюю версию mariadb на centos.

 # yum install MariaDB-server MariaDB-client 

Запускаем mariadb и добавляем в автозагрузку.

 # systemctl start mariadb
# systemctl enable mariadb 

Запускаем скрипт начальной конфигурации mysql и задаем пароль для root. Все остальное можно оставить по-умолчанию.

 # /usr/bin/mysql_secure_installation 

Внесем некоторые изменения в стандартный конфиг mariadb, чтобы потом не заниматься очисткой и оптимизацией базы для zabbix
. Для этого открываем конфиг mysql  /etc/my.cnf.d/server.cnf
и приводим его к следующему виду.

 # mcedit /etc/my.cnf.d/server.cnf 
 [client]
port	= 3306
socket	= /var/lib/mysql/mysql.sock
default-character-set=utf8 
[mysqld] character_set_server=utf8 collation-server=utf8_bin
init_connect="SET NAMES utf8 collate utf8_bin" port = 3306 socket = /var/lib/mysql/mysql.sock innodb_file_per_table=1 innodb_buffer_pool_size = 768M # внимание на параметр! установить примерно в 2 раза меньше объема оперативной памяти сервера innodb_buffer_pool_instances=1 # увеличивать на 1 каждый GB innodb_buffer_pool_size innodb_flush_log_at_trx_commit = 0 innodb_log_file_size = 512M innodb_log_files_in_group = 3 innodb-strict-mode = OFF [server] [galera] [embedded] [mariadb] [mariadb-10.3]

Я добавил минимум настроек, отличных от дефолта. В статье про оптимизацию mysql их приведено гораздо больше, но со временем я понял, что зря это сделал. Реально у меня нет большого опыта в тонкой настройке mysql. Никаких тестов и проверок я не делал, а данные брал на основе других статей в интернете. Не факт, что там не было ошибок. В итоге сейчас тут только заданы некоторые важные параметры по innodb, в частности указание хранить каждую таблицу в отдельном файле, задан размер и количество бинарных логов и еще пару настроек, которые явно будут к месту (innodb_buffer_pool_size, innodb_buffer_pool_instances и innodb_flush_log_at_trx_commit). При желании, вы можете сами заняться тюнингом mysql. В общем случае, достаточно будет текущих настроек.

Перезапустите mariadb и убедитесь, что она запустилась.

 # systemctl restart mariadb
# systemctl status mariadb.service 

Сервер баз данных mysql для нашего zabbix сервера готов. На этом предварительные настройки сервера закончены. Можно приступать к установке.

Centos 8

Как установить Centos 8
читайте в отдельной статье. Его подготовка к установке zabbix будет проще, так как в базовых репозиториях более свежий софт, который нам подходит. Вначале либо отключите firewalld, либо выполните его настройку. Я не буду на этом останавливаться, так как это тема отдельной статьи.

 # systemctl stop firewalld
# systemctl disable firewalld 

То же самое касается SELinux. В Centos 8 я еще не разбирался, как его корректно настроить для работы с zabbix-server. Пока отключите, либо сами поищите информацию по настройке. Когда найдете, буду рад, если поделитесь в комментариях.

 # mcedit /etc/sysconfig/selinux 
 SELINUX=disabled 
 

Дальше подключаем репозиторий epel.

 # dnf install epel-release 

Теперь подключим репозиторий nginx. Для этого создаем файл /etc/yum.repos.d/nginx.repo
следующего содержания.

 [nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true 

Устанавливаем nginx, запускаем и добавляем в автозагрузку.

 # dnf install nginx
# systemctl start nginx
# systemctl enable nginx 

Зайдите по адресу http://ip-сервера/
и убедитесь, что nginx запустился. Теперь отдельно установим php и модули к нему, которые понадобятся.

 # dnf install php php-fpm php-cli php-mysqlnd php-gd php-ldap php-odbc php-pdo php-pear php-xml php-xmlrpc php-mbstring php-snmp php-soap php-bcmath 

Запускаем php-fpm и добавляем в автозагрузку.

 # systemctl start php-fpm
# systemctl enable php-fpm 

Проверяем, стартовал ли указанный в конфиге сокет.

 # ll /run/php-fpm/www.sock
srw-rw----+ 1 root root 0 Oct 4 13:14 /run/php-fpm/www.sock 

На текущий момент с настройкой php-fpm закончили. Продолжаем подготовку сервера к установке zabbix.

Устанавливаем сервер баз данных Mariadb.

 # dnf install mariadb-server mariadb 

Запускаем mariadb и добавляем в автозагрузку.

 # systemctl start mariadb
# systemctl enable mariadb 

Запускаем скрипт начальной конфигурации mysql и задаем пароль для root. Все остальное можно оставить по-умолчанию.

 # /usr/bin/mysql_secure_installation 

Внесем некоторые изменения в стандартный конфиг mariadb, чтобы потом не заниматься очисткой и оптимизацией базы для zabbix
. Для этого открываем конфиг mysql  /etc/my.cnf.d/server.cnf
и приводим его к следующему виду.

 # mcedit /etc/my.cnf.d/mariadb-server.cnf 
 [client]
port	= 3306
socket	= /var/lib/mysql/mysql.sock
default-character-set=utf8
[mysqld]
character_set_server=utf8
collation-server=utf8_bin
init_connect="SET NAMES utf8 collate utf8_bin"
port = 3306 socket = /var/lib/mysql/mysql.sock
innodb_file_per_table=1
innodb_buffer_pool_size = 768M # внимание на параметр! установить примерно в 2 раза меньше объема оперативной памяти сервера
innodb_buffer_pool_instances=1 # увеличивать на 1 каждый GB
innodb_buffer_pool_size
innodb_flush_log_at_trx_commit = 0
innodb_log_file_size = 512M
innodb_log_files_in_group = 3
innodb-strict-mode = OFF 

Тут заданы некоторые важные параметры по innodb, в частности указание хранить каждую таблицу в отдельном файле, задан размер и количество бинарных логов и еще пару настроек, которые явно будут к месту (innodb_buffer_pool_size, innodb_buffer_pool_instances и innodb_flush_log_at_trx_commit). При желании, вы можете сами заняться тюнингом mysql. В общем случае, достаточно будет текущих настроек.

Перезапустите mariadb и убедитесь, что она запустилась.

 # systemctl restart mariadb
# systemctl status mariadb.service 

Сервер баз данных mysql для нашего zabbix сервера готов. На этом предварительные настройки сервера закончены. Можно приступать к установке.

Установка Zabbix Agent на Linux

Если вы хотите установить zabbix-agent на сам сервер мониторинга, то ничего делать не надо, кроме самой установки. Для других систем необходимо подключить репозитории заббикса, которые мы использовали во время установки сервера. Можете посмотреть их в соответствующих разделах для своей системы.

Установка zabbix agent в Centos:

 # yum install zabbix-agent 

Тоже самое в Ubuntu/Debian:

 # apt install zabbix-agent 

Для работы с сервером, который установлен локально на этой же машине, больше никаких настроек не надо делать. Если же вы будете устанавливать zabbix agent на другую машину, то в файле конфигурации агента /etc/zabbix/zabbix_agentd.conf
нужно будет задать следующие параметры:

 # mcedit /etc/zabbix/zabbix_agentd.conf 
 Server=192.168.13.117
ServerActive=192.168.13.117
Hostname=srv10 # имя вашего узла мониторинга, которое будет указано на сервере zabbix, Zabbix server если это сам сервер заббикса 

Запускаем агент и добавляем в автозагрузку:

 # systemctl start zabbix-agent
# systemctl enable zabbix-agent 

Проверяем лог файл.

 # cat /var/log/zabbix/zabbix_agentd.log 14154:20181004:201307.800 Starting Zabbix Agent [Zabbix server]. Zabbix 4.0.0 (revision 85308). 14154:20181004:201307.800 **** Enabled features **** 14154:20181004:201307.800 IPv6 support: YES 14154:20181004:201307.800 TLS support: YES 14154:20181004:201307.800 ************************** 14154:20181004:201307.800 using configuration file: /etc/zabbix/zabbix_agentd.conf 14154:20181004:201307.800 agent #0 started [main process] 14157:20181004:201307.801 agent #3 started [listener #2] 14159:20181004:201307.802 agent #5 started [active checks #1] 14155:20181004:201307.804 agent #1 started [collector] 14158:20181004:201307.806 agent #4 started [listener #3] 14156:20181004:201307.810 agent #2 started [listener #1] 

Все в порядке. Идем в веб интерфейс и проверяем поступление данных. Для этого идем в раздел Мониторинг -> Последние данные
. Указываем в разделе Узлы сети
Zabbix Server
и ждем поступления первых данных. Они должны пойти через 2-3 минуты после запуска агента.

Просмотр поступающих данных

Теперь попробуем остановить агент и проверить, придет ли уведомление на почту. Идем в консоль и выключаем агента:

 # systemctl stop zabbix-agent 

Ждем минимум 5 минут. Именно такой интервал указан по-умолчанию для срабатывания триггера на недоступность агента. После этого проверяем главную панель, виджет Проблемы
.

Проверка отправки уведомлений о проблемах

Проверяйте email ящик. Туда должно прийти уведомление от заббикс сервера.

Установка zabbix агент на Windows

Для полноты картины добавим к серверу один агент, установленный на windows машину и настроим ее мониторинг. Для этого идем на страницу загрузок https://www.zabbix.com/download_agents
и скачиваем самую последнюю версию агента для Windows.

Распаковываем архив. Создаем на диске С: папку zabbix и купируем туда следующие файлы:

  • zabbix_agentd.exe
  • zabbix_get.exe
  • zabbix_sender.exe
  • zabbix_agentd.win.conf

Исполняемые файлы берете той разрядности, какая у вас в системе. В исходном архиве есть как x32 так и x64. Дальше открываем командную строку с правами администратора и выполняем следующую команду для установки zabbix agent на windows:

 c:/zabbix/zabbix_agentd.exe --config c:/zabbix/zabbix_agentd.win.conf --install 
Установка zabbix agent на Windows

Открываем файл zabbix_agentd.win.conf
любым текстовым редактором и изменяем следующие параметры:

 LogFile=c:\zabbix\zabbix_agentd.log
LogFileSize=1
Server=192.168.13.117
ServerActive=192.168.13.117
Hostname=win10-01 

Открываем оснастку со службами, ищем службу с именем Zabbix agent и запускаем ее.

Запуск службы Zabbix Agent в Windows

Не забываем создать разрешающее правило в Брандмауэр, если он у вас включен. Для этого идем в Панель управления\Система и безопасность\Брандмауэр Windows — Дополнительные параметры — Правило для входящих подключений — Создать правило.

  • Тип правила: Для порта;
  • Протоколы и порты: Протокол TCP; Определенные локальные порты: 10050;
  • Действие: Разрешить подключение;
  • Профиль (ставим галочки): Доменный, Частный, Публичный;
  • Имя: Zabbix Agent;

Чтобы работал мониторинг windows машины, нужно добавить на сервер мониторинга host с таким же hostname, что мы указали в конфиге агента. Для этого идем в web панель, открываем раздел Настройка -> Узлы сети
и жмем .

Добавление нового хоста Windows в Zabbix

На первой вкладке указываем имя хоста, такое же, как на клиенте, добавляем в любую существующую группу и задаем ip адрес компьютера.

Параметры хоста

Потом переходим на вкладку Шаблоны и нажимаем Выбрать. Выбираем шаблон Template OS Windows и жмем маленькую ссылку Добавить, затем большую .

Подключение шаблона к хосту

Новый host мониторинга добавлен, осталось подождать несколько минут свежих данных. Проверить их можно там, где и раньше, в Последних данных, выбрав новый хост.

Поступление данных с windows машины

На этом установка и настройка мониторинга windows с помощью zabbix agent закончена. Можно добавлять новые компьютеры с разными версиями windows. Одна и та же версия агента подходит для всех, и десктопных, и серверных систем.

Настройка Zabbix Server

Создание учетной записи и смена пароля

Добавление нового пользователя в Zabbix

  • карты сети — Local Network
  • комплексного экрана Zabbix server
  • панелей Global view и Zabbix server health

Они создаются автоматически при установке заббикса. Вам нужно сменить у них владельца на нового пользователя. После этого стандартного админа можно будет удалить.

Настройка email оповещений

Дальше нужно настроить очень важную часть системы мониторинга — уведомления на email. Без нее система мониторинга не выглядит целостной и полноценной. Zabbix сервер поддерживает отправку почты через сторонние smtp серверы. Настроим один из них. Для этого идем в раздел Администрирование -> Способы оповещений
и нажимаем на .

Настройка email оповещений в zabbix

Покажу на примере настроек ящика в Яндексе.

Параметры ящика Яндекс для отправки уведомлений

Это мы настроили адрес отправки. Теперь нужно пользователю добавить адрес для получения оповещений. Для этого идем в Администрирование -> Пользователи
, выбираем своего пользователя. Идем во вкладку Оповещения и жмем . Добавляйте свой ящик и нажимайте .


Зайдите еще раз в учетную запись и убедитесь, что ящик добавили.

Проверка отправки уведомлений о проблемах

Дальше нужно активировать отправку уведомлений по событиям. Для этого идем в

Настройка -> Действия

и жмем на , чтобы стало .

Все, отправку уведомлений мы настроили, осталось подождать срабатывания триггера, чтобы проверить. Сделаем это позже, когда подключим хост к мониторингу.

 

Если вам нужны

оповещения в telegram , то читайте отдельную статью на эту тему. Так же рекомендую ознакомиться с материалом на тему настройки повторяющихся уведомлений в заббиксе . Для многих триггеров может оказаться очень полезной возможностью. Например, можно каждый день напоминать об окончании времени делегирования домена , пока он не будет продлен.

Так же zabbix умеет звонить через asterisk для оповещения о событиях.

Изменение шаблона стандартных оповещений

Настройка шаблона почтовых сообщений

Я вношу следующие изменения. Меняю шаблон темы письма при проблеме и восстановлении. В стандартном шаблоне в теме письма нет информации об имени хоста. В некоторых шаблонах триггера указано имя хоста, но есть и такие, где нет этой информации. В итоге в оповещении сразу не видно, о каком хосте идет речь. В моем же шаблоне сразу в теме будет указано имя хоста далее статус, а потом все остальное. Вот пример старого и нового оповещения:

Разница в шаблонах писем-уведомлений

Мне мой вид кажется более наглядным. Шаблон меняет на следующий:

 {HOST. NAME} - {TRIGGER. STATUS}: {TRIGGER. NAME} 
Настройка темы в письмах zabbix

Он одинаковый и для проблемы, и для восстановления.

Изменение стандартных шаблонов мониторинга

На своих серверах мониторинга я изменяю некоторые параметры стандартных шаблонов, чтобы было меньше бесполезных и неинформативных срабатываний. Вот список того, что я делаю.

  1. В шаблоне  Template App Zabbix Agent
    отключаю триггер  Version of zabbix_agent(d) was changed on {HOST. NAME}
    . Если его оставить, то после каждого обновления zabbix агента вы будете получать уведомление. Лично мне эта информация не нужна.
  2. В шаблоне  Template OS Linux
    меняю в триггере  Disk I/O is overloaded on {HOST. NAME}
    значение со стандартных 20% до 50%. Я считаю, что начинать беспокоиться и смотреть на машину надо при этом значении. Но вы можете подобрать под свои нужды.
  3. В этом же шаблоне в правиле обнаружения  Mounted filesystem discovery
    добавляю еще один прототип триггера, скопировав  Free disk space is less than 20% on volume {#FSNAME}
    . Новый шаблон полностью идентичен скопированному, только вместо 20% указываю 5% и ставлю важность с "Предупреждение" на "Высокая". Я добавляю еще одно оповещение, если свободного места на дисках остается меньше 5%. Стандартные 20% очень высокий порог, особенно если большой диск. Оперативное решение проблемы не требуется. Из-за этого часто откладываешь чистку диска на потом и забываешь о ней. Теперь будет еще один страховочный триггер, после которого точно надо идти и прямо сейчас разбираться с местом. В триггере на 20% свободного места ставлю разрешение на закрытие триггера вручную.
  4. В этом же шаблоне в триггере  Lack of free swap space on {HOST. NAME}
    меняю порог срабатывания с 50% до 20%, либо вообще отключаю его. Сейчас много серверов работают без swap. Хотя лично я всегда его создаю и подключаю.
  5. В шаблоне  Template OS Windows
    отключаю Правило обнаружения  Windows service discovery
    . В дефолтном варианте оно генерирует очень много ненужных итемов и оповещений. Если нужен мониторинг какой-то службы windows, я делаю для этого отдельный шаблон.

Общие настройки

В общих настройках zabbix server, которые располагаются в разделе Администрирование -> Общие
я меняю следующие параметры:

  1. В разделе Рабочее время
    выставляю актуальные рабочие часы.
  2. В разделе Опции отображения триггеров
    меняю значения  Отображать триггеры в состоянии ОК в течении
    и  Мигание триггеров при изменении состояния
    на 1 минуту. Это просто мои предпочтения. Мне не нравится, когда триггеры долго мигают, либо висят уже закрытые.
  3. В разделе Прочее
    меняю  Обновление неподдерживаемых элементов данных
    на 1 минуту. Это актуально во время отладки новых шаблонов.

Установка сервера Zabbix 4. 0 в Ubuntu, Debian

С установкой Zabbix на сервер с Ubuntu или Debian попроще, так как в стандартных репозиториях посвежее версии софта, можно использовать их. Подключаем репозитории zabbix 4.0.

 # wget https://repo.zabbix.com/zabbix/4.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.0-3+bionic_all.deb
# dpkg -i zabbix-release_4.0-3+bionic_all.deb 
 # wget https://repo.zabbix.com/zabbix/4.0/debian/pool/main/z/zabbix-release/zabbix-release_4.0-3+stretch_all.deb
# dpkg -i zabbix-release_4.0-3+stretch_all.deb 
 # wget https://repo.zabbix.com/zabbix/4.0/debian/pool/main/z/zabbix-release/zabbix-release_4.0-3+buster_all.deb
# dpkg -i zabbix-release_4.0-3+buster_all.deb 

Если у вас другие версии систем, то простой найдите ссылки пакетов под свою версию в официальном репозитории — https://repo.zabbix.com/zabbix/4.0/
Дальнейшая установка не будет отличаться от текущей.

Обновляем информацию о репозиториях, а заодно и последние обновления поставим:

 # apt update && apt upgrade 

Устанавливаем zabbix сервер:

 # apt install zabbix-server-mysql zabbix-frontend-php 

Он по-умолчанию ставится с apache, который сразу же запускается. Остановим его и отключим:

 # systemctl stop apache2
# systemctl disable apache2 

Ставим отдельно nginx и php-fpm:

 # apt install nginx php-fpm 

Запускаем скрипт начальной конфигурации mysql и задаем пароль для root. Все остальное можно оставить по-умолчанию.

 # /usr/bin/mysql_secure_installation 
 # mcedit /etc/mysql/mariadb.conf.d/50-server.cnf 
 innodb_file_per_table=1
innodb_buffer_pool_size = 768M # внимание на параметр! установить примерно в 2 раза меньше объема оперативной памяти сервера
innodb_buffer_pool_instances=1 # увеличивать на 1 каждый GB innodb_buffer_pool_size
innodb_flush_log_at_trx_commit = 0
innodb_log_file_size = 512M
innodb_log_files_in_group = 3 

Перезапустите mariadb и убедитесь, что она запустилась.

 # systemctl restart mariadb
# netstat -tulnp | grep mysqld
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 16753/mysqld 

Cоздадим базу данных, пользователя zabbix, и заполним базу.

 # mysql -uroot -p
Enter password:
> create database zabbix character set utf8 collate utf8_bin;
> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabpassword';
exit
# zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix 

Теперь редактируем файл конфигурации сервера заббикс. Прописываем данные для подключения к БД, отключаем ipv6 и увеличиваем стандартный timeout.

 # mcedit /etc/zabbix/zabbix_server.conf 

Изменяем указанные строки, остальные не трогаем:

 DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabpassword
ListenIP=0.0.0.0
Timeout=10 

Этих минимальных настроек достаточно, для работы сервера. Я рекомендую увеличивать параметр Timeout, так как он отвечает за время ожидания ответа от агента, snmp устройства или внешней проверки. Иногда стандартного значения в 4 секунды бывает недостаточно. В частности, когда используется какой-то скрипт, который долго выполняется, для получения метрики. Поставьте секунд 10.

Запускаем zabbix и добавляем в автозагрузку.

 # systemctl start zabbix-server
# systemctl enable zabbix-server 

Проверяем запустился ли.

 # netstat -tulnp | grep zabbix_server
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 16847/zabbix_server 

Все в порядке. Запускаем nginx, который у нас будет выступать в качестве web сервера.

 # systemctl start nginx
# systemctl enable nginx 

Убедимся, что в качестве web сервера работает nginx.

 # netstat -tulnp | grep 80
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 17075/nginx: master
tcp6 0 0 :::80 :::* LISTEN 17075/nginx: master 

Нам нужно сделать конфиг nginx для работы web интерфейса zabbix. Если у вас nginx работает на том же сервере, где сам zabbix, и других виртуальных хостов нет и не будет, то правьте сразу дефолтный — /etc/nginx/sites-available/default.conf
. Приводим его к следующему виду:

 # mcedit /etc/nginx/sites-available/default.conf 
 server { listen 80; server_name localhost; root /usr/share/zabbix; location / { index index.php index.html index.htm; } location ~ \.php$ { fastcgi_pass unix:  /run/php/php7.2-fpm.sock 
; # проверьте этот путь, для разных версий php он будет разный fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; fastcgi_param PHP_VALUE " max_execution_time = 300 memory_limit = 128M post_max_size = 16M upload_max_filesize = 2M max_input_time = 300 date.timezone = Europe/Moscow always_populate_raw_post_data = -1 "; fastcgi_buffers 8 256k; fastcgi_buffer_size 128k; fastcgi_intercept_errors on; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; }
} 

Проверим конфиг на ошибки и если все в порядке, перезапустим nginx.

 # nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
# nginx -s reload 

С серверной частью закончили. Для продолжения установки zabbix сервера переходим к настройке Zabbix Frontend.

Заключение

На этом установка и базовая настройка сервера мониторинга zabbix 4.0 завершена. Советы, замечания, исправления прошу оставлять в комментариях.

Команда заббикс внимательно следит за обратной совместимостью своих продуктов. Благодаря этому переход на новые версии проходит безболезненно. Нет необходимости перенастраивать или исправлять старые наработки. В новых версиях только добавляется функционал, старый чаще всего не претерпевает изменений, им можно дальше пользоваться. Бывают, конечно, исключения, но редко.

Материалы по настройке мониторинга различных систем и сервисов не устаревают и остаются актуальным для самых новых релизов. Вот пример мониторинга различных служб и сервисов, приведенных на моем сайте. Возможно, что-то из этого вам будет интересно и полезно.

Мониторинг в Zabbix:

Помогла статья? Подписывайся на telegram канал
автора

Анонсы всех статей, плюс много другой полезной и интересной информации, которая не попадает на сайт.

Настройка Zabbix Frontend

Идем в браузер и открываем адрес http://192.168.13.117. Вы должны увидеть установщик Zabbix 4.0.

Установка Zabbix сервера

Нажимаем  и начинаем настройку web интерфейса. На следующей странице будет проверка требований. У вас должны быть выполнены все требования. В зависимости от системы и версии php, информация будет в каждом случае разниться.

Проверка системных требований к web интерфейсу заббикса

На следующем этапе указываем параметры доступа к базе данных, потом Zabbix server details. Там можно ничего не указывать, а оставить дефолтные параметры. Потом будет страница с проверкой введенных данных. Если все в порядке, то заканчивайте установку. В конце увидите сообщение: Congratulations! You have successfully installed Zabbix frontend.

Завершение установки zabbix server

После нажатия на  увидите окно авторизации Zabbix сервера.

Авторизация в Zabbix

Стандартная учетная запись для входа в web интерфейс zabbix следующая:

  • Пользователь Admin
  • Пароль zabbix
Начальный экран мониторинга Zabbix

На этом установка бесплатного сервера мониторинга zabbix окончена. Можно приступать к настройке.

Оцените статью
Хостинги