Мы рекомендуем создать пользователя zabbix как системного, то есть, без возможности входа в систему. Некоторые пользователи игнорируют эту рекомендацию и используют ту же самую учётную запись для входа в систему (например, используя SSH) на хост с работающим Zabbix. Это может привести к аварийному останову демона Zabbix при выходе из системы. В этом случае в журнале Zabbix сервера вы получите что-то наподобие следующего:
zabbix_server [27730]: [file:'selfmon.c',line:375] lock failed: [22] Invalid argument
zabbix_server [27716]: [file:'dbconfig.c',line:5266] lock failed: [22] Invalid argument
zabbix_server [27706]: [file:'log.c',line:238] lock failed: [22] Invalid argument
и в журнале Zabbix агента:
Это происходит из-за того, что по умолчанию настройка systemd в файле /etc/systemd/logind.conf
равна RemoveIPC=yes
. Когда вы выполняете выход из системы, ранее созданные компонентами Zabbix семафоры удаляются, что приводит к сбою.
Выдержка из документации по systemd:
RemoveIPC=
Controls whether System V and POSIX IPC objects belonging to the user shall be removed when the
user fully logs out. Takes a boolean argument. If enabled, the user may not consume IPC resources
after the last of the user's sessions terminated. This covers System V semaphores, shared memory
and message queues, as well as POSIX shared memory and message queues. Note that IPC objects of the
root user and other system users are excluded from the effect of this setting. Defaults to "yes".
Имеется 2 способа решения этой проблемы:
RemoveIPC=no
в /etc/systemd/logind.conf
и перезагрузите систему. Обратите внимание, что RemoveIPC является общесистемным параметром, его изменение повлияет на всю систему.Если веб-интерфейс Zabbix работает за прокси-сервером, cookie path (путь cookie) в файле конфигурации прокси необходимо переписать, чтобы он соответствовал reverse-proxied path (обратному пути прокси). См. примеры ниже. Если путь cookie не переписан, пользователи могут столкнуться с проблемами авторизации при попытке войти в веб-интерфейс Zabbix.