14 Otros problemas
Inicio de sesión y systemd
Recomendamos crear un usuario zabbix como usuario del sistema, es decir, sin capacidad para iniciar sesión. Algunos usuarios ignoran esta recomendación y usan la misma cuenta para iniciar sesión (p. ej., mediante SSH) en el host que ejecuta Zabbix. Esto puede provocar el fallo del daemon de Zabbix al cerrar sesión. En este caso verá algo como lo siguiente en el log del server de 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
y en el log de Zabbix agent:
zabbix_agentd [27796]: [file:'log.c',line:238] lock failed: [22] Invalid argument
Esto ocurre debido a la configuración predeterminada de systemd RemoveIPC=yes
establecida en /etc/systemd/logind.conf. Cuando cierra sesión en el sistema,
los semáforos creados previamente por Zabbix se eliminan, lo que provoca el
fallo.
Una cita de la documentación de systemd:
RemoveIPC=
Controla si los objetos IPC System V y POSIX que pertenecen al usuario deben eliminarse cuando el
usuario cierra completamente la sesión. Acepta un argumento booleano. Si está habilitado, el usuario no podrá consumir recursos IPC
después de que termine la última de las sesiones del usuario. Esto incluye semáforos System V, memoria compartida
y colas de mensajes, así como memoria compartida POSIX y colas de mensajes. Tenga en cuenta que los objetos IPC del
usuario root y de otros usuarios del sistema están excluidos del efecto de esta configuración. El valor predeterminado es "yes".
Hay 2 soluciones para este problema:
- (recomendado) Deje de usar la cuenta zabbix para cualquier otra cosa que no sean los procesos de Zabbix; cree una cuenta dedicada para otras tareas.
- (no recomendado) Establezca
RemoveIPC=noen/etc/systemd/logind.confy reinicie el sistema. Tenga en cuenta queRemoveIPCes un parámetro de todo el sistema; cambiarlo afectará a todo el sistema.
Usar la interfaz de Zabbix detrás de un proxy
Si la interfaz de Zabbix se ejecuta detrás de un servidor proxy, la ruta de la cookie en el archivo de configuración del proxy debe ser reescrita para que coincida con la ruta del proxy inverso. Vea los ejemplos a continuación. Si la ruta de la cookie no se reescribe, los usuarios pueden experimentar problemas de autorización al intentar iniciar sesión en la interfaz de Zabbix.
Ejemplo de configuración para nginx
# ..
location / {
# ..
proxy_cookie_path /zabbix /;
proxy_pass http://192.168.0.94/zabbix/;
# ..
Ejemplo de configuración para Apache
# ..
ProxyPass "/" http://equipo/zabbix/
ProxyPassReverse "/" http://equipo/zabbix/
ProxyPassReverseCookiePath /zabbix /
ProxyPassReverseCookieDomain equipo zabbix.ejemplo.com
# ..