LINUX.ORG.RU
ФорумAdmin

Zabbix: first network error, wait for 15 seconds

 


0

2

Здравствуйте!

В логах Zabbix-сервера (6.0 LTS + all updates) постоянные ошибки вида:

144795:20240430:133828.657 Zabbix agent item "system.cpu.util[,guest_nice]" on host "dns4" failed: first network error, wait for 15 seconds
144799:20240430:133843.956 resuming Zabbix agent checks on host "dns4": connection restored
144798:20240430:133950.653 Zabbix agent item "system.cpu.util[,interrupt]" on host "dns4" failed: first network error, wait for 15 seconds
144799:20240430:134005.397 resuming Zabbix agent checks on host "dns4": connection restored
144798:20240430:134024.622 Zabbix agent item "system.cpu.load[all,avg15]" on host "dns4" failed: first network error, wait for 15 seconds
144799:20240430:134039.675 resuming Zabbix agent checks on host "dns4": connection restored
144796:20240430:134110.180 Zabbix agent item "vm.memory.size[available]" on host "dns4" failed: first network error, wait for 15 seconds
144799:20240430:134126.097 resuming Zabbix agent checks on host "dns4": connection restored
144798:20240430:134223.468 Zabbix agent item "system.cpu.util[,iowait]" on host "dns4" failed: first network error, wait for 15 seconds
144799:20240430:134238.508 resuming Zabbix agent checks on host "dns4": connection restored
144796:20240430:134314.216 Zabbix agent item "vfs.file.contents[/sys/block/vda/stat]" on host "dns4" failed: first network error, wait for 15 seconds
144799:20240430:134329.808 resuming Zabbix agent checks on host "dns4": connection restored
144796:20240430:134425.552 Zabbix agent item "vfs.fs.size[/tmp,pused]" on host "dns4" failed: first network error, wait for 15 seconds
144799:20240430:134441.127 resuming Zabbix agent checks on host "dns4": connection restored
144787:20240430:134522.016 Zabbix agent item "system.cpu.load[all,avg5]" on host "dns4" failed: first network error, wait for 15 seconds
144799:20240430:134537.415 resuming Zabbix agent checks on host "dns4": connection restored
144795:20240430:134553.756 Zabbix agent item "system.swap.size[,free]" on host "dns4" failed: first network error, wait for 15 seconds
144799:20240430:134608.687 resuming Zabbix agent checks on host "dns4": connection restored
144797:20240430:134809.778 Zabbix agent item "vfs.file.contents["/sys/class/net/ens3/operstate"]" on host "dns4" failed: first network error, wait for 15 seconds
144799:20240430:134825.066 resuming Zabbix agent checks on host "dns4": connection restored

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

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

Хотя может быть от подключается и быстро отваливается - проверь что заббикс-агент не падает постоянно. Ещё можно tcpdump-ом посмотреть их обмен пакетами.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)
Ответ на: комментарий от firkax

Проверь что агент запущен, слушает нужный порт

Вот:

[root@dns4 ~]# systemctl status zabbix-agent2
● zabbix-agent2.service - Zabbix Agent 2
   Loaded: loaded (/usr/lib/systemd/system/zabbix-agent2.service; enabled; vendor preset: disabled)
   Active: active (running) since Tue 2024-04-30 14:41:31 +05; 25min ago
  Process: 368437 ExecStop=/bin/kill -SIGTERM $MAINPID (code=exited, status=0/SUCCESS)
 Main PID: 368439 (zabbix_agent2)
    Tasks: 10 (limit: 24789)
   Memory: 15.2M
   CGroup: /system.slice/zabbix-agent2.service
           └─368439 /usr/sbin/zabbix_agent2 -c /etc/zabbix/zabbix_agent2.conf

апр 30 14:41:31 dns4.myhostname systemd[1]: Started Zabbix Agent 2.
апр 30 14:41:31 dns4.myhostname zabbix_agent2[368439]: Starting Zabbix Agent 2 (6.0.29)
апр 30 14:41:31 dns4.myhostname zabbix_agent2[368439]: Zabbix Agent2 hostname: [Zabbix server]
апр 30 14:41:31 dns4.myhostname zabbix_agent2[368439]: Press Ctrl+C to exit.
[root@dns4 ~]# netstat -tulpn | grep zabbix
tcp6       0      0 :::10050                :::*                    LISTEN      368439/zabbix_agent 

Aleksandra
() автор топика
Ответ на: комментарий от firkax

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

root@zabbix:/home/aleksa# zabbix_get -s dns4.myhostname -k agent.ping
1
Aleksandra
() автор топика
Ответ на: комментарий от firkax

Хотя может быть от подключается и быстро отваливается - проверь что заббикс-агент не падает постоянно.

Нет, не отваливается.

Aleksandra
() автор топика
Ответ на: комментарий от Aleksandra

А что с доступностью портов?

С zabbix сервера / zabbix agent`а:

telnet dns4 10050
telnet dns4 10051

С машины:

telnet zabbix-agent-host 10050
telnet zabbix-agent-host 10051
telnet zabbix-server-host 10050
telnet zabbix-server-host 10051
anonymous
()
Ответ на: комментарий от anonymous

Покажи содержимое /ec/nsswitch.conf с этой машины.

Вот:

[root@dns4 ~]# egrep -v '(#|$^)' /etc/nsswitch.conf
passwd:      files sss systemd
shadow:     files sss
group:       files sss systemd
hosts:      files dns myhostname
services:   files sss
netgroup:   sss
automount:  files sss
aliases:    files
ethers:     files
gshadow:    files
networks:   files dns
protocols:  files
publickey:  files
rpc:        files
Aleksandra
() автор топика
Ответ на: комментарий от Aleksandra

Это я мельком прочитав лог и увидел имя dns4, поэтому попросил файл.

Потом более вдумчиво посмотрел, читайте второй комментарий, про тест доступности портов.

И проверьте, что zabbix-agent запущен на машине. Если используется zabbix-proxy, то проверьте доступность портов до него и с него до машины.

Вот пример удачного коннекта до доменного имени ya.ru по 80 порту:

telnet ya.ru 80
Trying 5.255.255.242...
Connected to ya.ru.
Escape character is '^]'.
^]
telnet> quit
Connection closed.

‘^]’ - это нажатие комбинации Ctrl + ].

anonymous
()

Из той же сети пни этот хост arping’ом. Если конфликт ip, в выводе будет два разных mac’а

Наверное, это конфликт и в логи свитчей попадет, но тут не уверен

router ★★★★★
()
Ответ на: комментарий от router

Хм, про дубль IP адресов не подумал, ну либо дубль MAC, хотя второе менее вероятно, если только это не клонированная виртуалка или виртуалка с backup в какой-нибудь среде виртуализации.

anonymous
()
Ответ на: комментарий от router

Ещё подобная ошибка может быть, если в конфигурационном файле Zabbix-agent на самой машине не изменён hostname на имя, под которым машина занесена в Zabbix.

Точный текст ошибки не помню, но может быть тоже.

anonymous
()
Ответ на: комментарий от anonymous

Вот:

root@zabbix:/home/aleksa# telnet dns4.myhostname 10050
Trying ip...
Connected to dns4.myhostname
Escape character is '^]'.
Connection closed by foreign host.

[root@dns4 ~]# telnet zabbix.myhostname 10051
Trying ip...
Connected to zabbix.myhostname
Escape character is '^]'.
Connection closed by foreign host.

Порт 10050 на сервере закрыт, а на машине соответственно 10051. Они вроде бы и не должны торчать наружу? И вроде даже на сервере можно прикрыть 10051.

Aleksandra
() автор топика
Ответ на: комментарий от anonymous

Если используется zabbix-proxy, то проверьте доступность портов до него и с него до машины.

Не использую прокси.

Aleksandra
() автор топика
Ответ на: комментарий от router

Из той же сети пни этот хост arping’ом.

Из той же это из какой? На стороне машины не получится, эту VM мы арендуем.

Aleksandra
() автор топика
Ответ на: комментарий от anonymous

Ещё подобная ошибка может быть, если в конфигурационном файле Zabbix-agent на самой машине не изменён hostname на имя, под которым машина занесена в Zabbix.

Речь про HostnameItem?

Aleksandra
() автор топика
Ответ на: комментарий от anonymous

Попробовала сменить и Hostname в конфиге. Полезли дополнительные ошибки.

p.s. Другие сервера с аналогичной конфигурацией работают. Проблем с ними нет.

Aleksandra
() автор топика
Ответ на: комментарий от Aleksandra

Речь про параметр hostname.

Hostname=

Удостоверился, в конфигурационном файле zabbix_agent2.conf значение параметра Hostname равняется DNS записи в зоне DNS.

В конфигурации zabbix-server имя узла другое, но в конфигурации интерфейса указано подключение по DNS и там указано короткое DNS имя во внутренней DNS зоне компании и оно соответствует тому же имени, что указано в параметре Hostname.

Параметр HostnameItem не определён.

anonymous
()
Ответ на: комментарий от Aleksandra

Проверил, с машины, где установлен zabbix_agent2 есть подключение на порт 10051 на zabbix-server, с zabbix-server есть подключение на порт 10050 на zabbix_agent2.

В параметре Server= нужно указать DNS или IP адрес zabbix-server.

Используемыми шаблонами для корректной работы должен быть «Zabbix agent» в свойствах узла.

Применение данных настроек срабатывает не сразу, а через некоторое время.

Я уже все перепробовала

Всё - это что? Это слишком абстрактное понятие. Иногда когда человек говорит, что готов всё сделать для кого-то иногда это просто слова, ничего не стоящие. Лучше конкретика.

anonymous
()
Ответ на: комментарий от anonymous

Проверил, с машины, где установлен zabbix_agent2 есть подключение на порт 10051 на zabbix-server, с zabbix-server есть подключение на порт 10050 на zabbix_agent2.

У меня аналогично.

В параметре Server= нужно указать DNS или IP адрес zabbix-server.

Указан ip адрес сервера.

Используемыми шаблонами для корректной работы должен быть «Zabbix agent» в свойствах узла.

Да, он и используется.

Aleksandra
() автор топика
Ответ на: комментарий от Aleksandra

Погуглил такая ошибка редко встречается, но поиск решения как правило останавливается, когда и задающего вопрос просят повысить уровень логов.

Вот вам тоже советую изменить loglevel в конфигурации zabbix-serve и zabbix-agent.

Вы используете zabbix-agent или zabbix-agent2?

Советую установить zabbix-agent2 вместо просто zabbix-agent и использовать его. zabbix-agent работает хуже.

anonymous
()
Ответ на: комментарий от Aleksandra

Повышайте уровень логирования, запросите, чтобы открыли порты 10050 на стороне сервера, который вы арендуете.

Мне сказать больше нечего, вы не предоставили чётких ответов:

  • я проверила доступность порта 10051 с сервера zabbix_agent2 до IP адреса zabbix-server и он есть.
  • я проверила доступность порта 10050 с zabbix сервер до сервера с zabbix_agent2 и он есть.
anonymous
()
Ответ на: комментарий от Aleksandra

Zabbix-agent может работать в двух режимах. Активном и пассивном.

В случае пассивного режиме возможность подключения со стороны zabbix-server на порт zabbix_agent2 не обязательна.

zabbix_agent2 должен мочь подключаться на порт 10051 zabbix-server`а. Он просто с некоторым интервалом отправляет метрики на сервер, а сервер их записывает на основе подключенных шаблонов.

В случае активного режима работы zabbix_agent2 он может принимать со стороны zabbix-server команды для выполнения, вот тут zabbix-server должен мочь подключиться на порт zabbix_agent2.

Проверяйте доступность портов и режим работы zabbix_agent2.

anonymous
()
Ответ на: комментарий от anonymous

я проверила доступность порта 10051 с сервера zabbix_agent2 до IP адреса zabbix-server и он есть.

[root@dns4 ~]# nc -zv zabbix.myhostname 10051
Ncat: Version 7.92 ( https://nmap.org/ncat )
Ncat: Connected to ip:10051.
Ncat: 0 bytes sent, 0 bytes received in 0.07 seconds.

я проверила доступность порта 10050 с zabbix сервер до сервера с zabbix_agent2 и он есть.

root@zabbix:/home/aleksa# nc -zv dns4.myhostname 10050
Connection to dns4.myhostname (ip) 10050 port [tcp/zabbix-agent] succeeded!

Aleksandra
() автор топика
Ответ на: комментарий от anonymous

Повышайте уровень логирования

Какой уровень выставить?

Aleksandra
() автор топика
Ответ на: комментарий от Aleksandra

В конфигурационном файле zabbix_agent2.conf в параметра Server= правильно указан IP адрес или доменное имя zabbix-server`а.

И вы перезапускали сервис zabbix-agent2.service после правки конфигурационного файла zabbix_agent2.conf?

systemctl restart zabbix-agent2.service

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

А так же в конфигурационном файле zabbix_agent2.conf случайно в двух местах не определён параметр Hostname или параметр Server?

Используется последнее определение параметра.

Или в конфигурационных файлах директории /etc/zabbix/zabbix_agent2.conf.d/* ?

Выполните на сервере с zabbix_agent2:

grep -v '^#\|^$' /etc/zabbix/zabbix_agent2* -R

Удостоверьтесь, что определение Hostname и Server встречается один раз и перезапустите сервис.

А потом, если проблема останется - можно повышать уровень логирования. До того уровня, на котором станет понятно в чём проблема.

anonymous
()
Ответ на: комментарий от anonymous

Zabbix-agent может работать в двух режимах. Активном и пассивном.

Работает в пассивном режиме.

Aleksandra
() автор топика
Ответ на: комментарий от anonymous

Вот:

[root@dns4 ~]# grep -v '^#\|^$' /etc/zabbix/zabbix_agent2* -R
/etc/zabbix/zabbix_agent2.conf:PidFile=/run/zabbix/zabbix_agent2.pid
/etc/zabbix/zabbix_agent2.conf:LogFile=/var/log/zabbix/zabbix_agent2.log
/etc/zabbix/zabbix_agent2.conf:LogFileSize=0
/etc/zabbix/zabbix_agent2.conf:Server=ip_zabbix-server
/etc/zabbix/zabbix_agent2.conf:ServerActive=ip_zabbix-server
/etc/zabbix/zabbix_agent2.conf:Hostname=Zabbix server
/etc/zabbix/zabbix_agent2.conf:Include=/etc/zabbix/zabbix_agent2.d/*.conf
/etc/zabbix/zabbix_agent2.conf:PluginSocket=/run/zabbix/agent.plugin.sock
/etc/zabbix/zabbix_agent2.conf:ControlSocket=/run/zabbix/agent.sock
/etc/zabbix/zabbix_agent2.conf:Include=./zabbix_agent2.d/plugins.d/*.conf
/etc/zabbix/zabbix_agent2.d/plugins.d/mongodb.conf:Plugins.MongoDB.System.Path=/usr/sbin/zabbix-agent2-plugin/zabbix-agent2-plugin-mongodb
/etc/zabbix/zabbix_agent2.d/plugins.d/postgresql.conf:Plugins.PostgreSQL.System.Path=/usr/sbin/zabbix-agent2-plugin/zabbix-agent2-plugin-postgresql
Aleksandra
() автор топика
Ответ на: комментарий от anonymous

И вы перезапускали сервис zabbix-agent2.service после правки конфигурационного файла zabbix_agent2.conf?

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

Aleksandra
() автор топика
Ответ на: комментарий от Aleksandra
/etc/zabbix/zabbix_agent2.conf:Hostname=Zabbix server

Здесь должен быть указан тот hostname, который указан в конфигурации интерфейса подключения по DNS в настройках узла zabbix-server.

anonymous
()
Ответ на: комментарий от Aleksandra

То, что указано в настройках интерфейса подключения в свойствах узла в zabbix-сервер в разделе «Мониторинг» -> «Узлы сети», нужный узел, кликаете по нему, переходите в настройки и смотрите.

В zabbix_agent2.conf в параметре Hostname может быть указано как имя узла в zabbix, под которым он заведён в мониторинг, так и значение, указанное в настройках интерфейса подключения по DNS.

|    Интерфейсы    | Тип      |  IP адрес      |   DNS имя         |  Подключение через  Порт   |          По умолчанию |
|------------------|:---------|:--------------:|------------------:|---------------------------:|----------------------:|
|                  | Агент    | 192.168.100.10 | dns4              |     IP/DNS                 |  10050                |

Вот то, что указано в параметре DNS имя в настройках узла и укажите в конфигурационном файле zabbix_agent2.conf в параметре Hostname. Но подключение должно быть активно по DNS.

anonymous
()
Ответ на: комментарий от Aleksandra

С zabbix сервер по имени dns4 пинг идёт?

Это имя должно разрешаться в IP адрес и пинговаться, а переключатель подключения интерфейса должен быть переключен в DNS.

anonymous
()
Ответ на: комментарий от anonymous

Либо подождите, как правило доступность узла обновляется спустя несколько 5-10 минут.

Прошло уже 10 минут, даже больше.

Меняйте debug level

Хорошо, завтра попробую.

Aleksandra
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.