L'un des serveurs surveillés par Zabbix n'est pas accessible. Je ne sais pas pourquoi cela fonctionne normalement avec d'autres serveurs.
/etc/zabbix/zabbix_agentd.conf
Je ne vois aucune différence entre ce serveur problématique et une autre qui fonctionne normalement.http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-release-2.2-1.el6.noarch.rpm
Agent journal après le redémarrage de Zabbix-Agent Service
10939:20151127:093938.268 Starting Zabbix Agent [agent-server.test]. Zabbix 2.2.11 (revision 56693).
10939:20151127:093938.268 using configuration file: /etc/zabbix/zabbix_agentd.conf
10942:20151127:093938.269 agent #1 started [listener #1]
10945:20151127:093938.269 agent #4 started [active checks #1]
10941:20151127:093938.270 agent #0 started [collector]
10944:20151127:093938.270 agent #3 started [listener #3]
10943:20151127:093938.271 agent #2 started [listener #2]
10945:20151127:141742.930 active check configuration update from [zabbix-server-ip:10051] started to fail
(cannot connect to [[zabbix-server-ip]:10051]: [4] Interrupted system call)
Lorsque j'ai Telnet sur le serveur d'agent, entrez agent.version
, il retourne: ZBXD2.2.11
Contenu de /etc/zabbix/zabbix_server.conf
(serveur):
ListenPort=10051
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_server.pid
DBName=zabbix
DBUser=zabbix
DBPassword=******
DBSocket=/var/lib/mysql/mysql.sock
SNMPTrapperFile=/var/log/snmptt/snmptt.log
AlertScriptsPath=/usr/lib/zabbix/alertscripts
ExternalScripts=/usr/lib/zabbix/externalscripts
Contenu de /etc/zabbix/zabbix_agentd.conf
(agent)
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
EnableRemoteCommands=1
Server=zabbix-server-ip
ListenPort=10050
StartAgents=3
# ServerActive=zabbix-server-ip # commented out
Hostname=server.test
Timeout=3
AllowRoot=1
Include=/etc/zabbix/zabbix_agentd.d/
Netstat sur Zabbix Server
$ Sudo netstat -lpn | grep zabbix
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 7624/zabbix_server
tcp 0 0 :::10051 :::* LISTEN 7624/zabbix_server
NetStat sur l'agent problématique
$ Sudo netstat -lpn | grep zabbix
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 3248/zabbix_agentd
tcp 0 0 :::10050 :::* LISTEN 3248/zabbix_agentd
NetStat sur l'agent de travail
$ Sudo netstat -lpn | grep zabbix
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 24242/zabbix_agentd
tcp 0 0 :::10050 :::* LISTEN 24242/zabbix_agentd
Agent VS Passif
ActiveServer
avec la valeur zabbix-serveur-IP en tant que valeur. Le mesage d'erreur est parti dans le journal après le redémarrage de l'agent.Ensuite, essayez:
ActiveServer
est défini avec le zabbix-Server-IP, l'agent est redémarréStartAgents
est défini sur 0, pour forcer à l'aide de l'agent actif.Dans l'ensemble, le mode actif a peut-être été défini dans la configuration de l'agent sur plusieurs serveurs, elle n'a jamais fonctionné. Tous les rapports proviennent d'agents passifs.
Interfaces d'agent
Je ne sais pas pourquoi cela se produit, mais cela semble étrange.
Que peut causer ce problème de connexion? Comment puis-je reconnecter le serveur avec l'agent?
Il s'avère que l'adresse IP définie dans la configuration hôte (via l'interface Web) était celle du zabbix-serveur lui-même. Cela devrait bien sûr être l'adresse de l'agent-serveur.
Il s'avère que l'adresse IP définie dans la configuration hôte (via l'interface Web) était celle du zabbix-serveur lui-même. Cela devrait bien sûr être l'adresse de l'agent-serveur.
Je pense que vous devez comprendre le mode de connexion actif et passif de Zabbix pour résoudre le problème. Ici de Zabbix Documentation :
Vérifications passives et actives
Les agents Zabbix peuvent effectuer des chèques passives et actifs.
Dans un contrôle passif, l'agent répond à une demande de données. Zabbix Server (ou proxy) demande des données, par exemple, la charge de la CPU et l'agent Zabbix renvoie le résultat.
Les chèques actifs nécessitent un traitement plus complexe. L'agent doit d'abord récupérer une liste d'éléments de Zabbix Server pour un traitement indépendant. Ensuite, cela envoie périodiquement de nouvelles valeurs au serveur.
Maintenant, le mode actif de fonctionnement, vous devez disposer de Port 10051 ouvert sur Zabbix Server, de sorte que les agents des clients puissent se connecter à celui-ci. De l'erreur ce que vous obtenez, c'est le problème:
10945: 20151127: 141742.930 Vérification active Mise à jour de la configuration de [ZABBIX-Server-IP: 10051] a commencé à échouer (Impossible de se connecter à [[[Zabbix-Server-IP]: 10051]: [4] Appel de système interrompu)
Les tests que vous avez faites concernent la connexion du serveur Zabbix au client et semble fonctionner sans problème. Mais ce n'est pas assez pour le mode actif pour fonctionner. La connexion de l'agent client au serveur sur le port 10051 ne fonctionne pas dans votre cas et vous devez vous concentrer sur cela.
Les informations que vous avez fournies sont trompeuses:
Le Zabbix-Server possède un groupe de sécurité différent et aucune règle définie pour les ports 10050 et 10051, ils doivent donc être bloqués. Iptables ne renvoie aucune règle.
Ce qui précède sur le port ne peut pas être vrai, car vous utilisez le mode actif. Le serveur doit avoir le port 10051 ouvert pour que les clients se connectent ou vous devez utiliser le mode passif.
Donc, veuillez vérifier les règles de pare-feu nécessaires entre les deux et assurez-vous que le client/agent peut atteindre le serveur sur ce port. Je suis sûr que l'autre agent (sur l'autre serveur de travail) peut atteindre le serveur Zabbix sur le port 10051.