Zabbix Agent nie działa? Usługa agent nie startuje? A może pojawia się jeden z poniższych komunikatów?

  • Failed to start Zabbix Agent.
  • Zabbix server is running: no

Pora się tym zająć! Poniżej znajdziesz skrypt rozwiązywania problemów z Zabbixem. Od razu dodam, że nie bawiłem się w szczegółowe opisywanie kolejnych komend. Liczę, że znasz przynajmniej w podstawowym stopniu Linuxa. A jeżeli nie to zapraszam na Kurs Administracji Linux mojego autorstwa.

Zanim jednak rozwinę temat dalej to jedna informacja na początek. Prowadzę regularny, cotygodniowy newsletter z poradami związanymi z Zabbixem, monitoringiem oraz dobrymi praktykami w IT. Jeżeli nie chcesz przegapić kolejnych części oraz zaproszeń na nasze darmowe szkolenia to zapraszam do zapisu. Wystarczy pobrać mój poradnik. Monitoring IT – Dobre Praktyki. Wystarczy wejść klikając na obrazek:

Zabbix Agent nie działa…

Dla przykładu weźmiemy następującą konfigurację Agenta (plik /etc/zabbix/zabbix_agentd.conf) :

Server=192.168.0.100
Hostname=Zabbix server
ListenPort=10051

Jeżeli pojawił się u Ciebie jeden z powyższych problemów to w pierwszej kolejności zawsze warto sprawdzić status usługi Agenta Zabbix. Polecenie może się różnić w zależności od posiadanego systemu operacyjnego. Przykładowo, na CentOS wygląda to następująco:

sudo systemctl status zabbix-agent

Spróbujmy wykonać restart usługi Agenta:

sudo systemctl restart zabbix-agent

Ruszyło? Jeżeli dalej Zabbix Agent nie działa to kombinujemy dalej. Sprawdźmy logi:

journalctl -xe

Jeżeli zauważysz taki komunikat:

SELinux is preventing /usr/sbin/zabbix_agentd from name_bind access on the tcp_socket

to oznacza, że Selinux się czepia. Ewidentnie Selinux blokuj połączenie. Jeżeli znasz dobrze to narzędzie to już wiesz, że chodzi o port. Sprawdzamy jakie porty w naszym systemie “wspiera” Selinux:

sudo semanage port -l | grep zabbix

Rezultat:

Zabbix Agent nie działa...

Jeżeli nic wcześniej nie modyfikowałeś to otrzymasz informację, że Agent powinien pracować na porcie 10050. A my (zgodnie z konfiguracją podaną wyżej) ustawiliśmy na 10051. Co oznacza, że jest całkowicie poprawnym zachowaniem, że Zabbix Agent nie działa. W teorii możemy ustawić Selinuxa tak, by akceptował agenta na 10051. Ale widzisz też, że serwer pracuje na tym porcie. A nie chcemy chyba, by również serwer się rozjechał?

Możemy zmienić zatem port całkowicie. Np. na 10052. Wchodzimy w konfigurację Agenta Zabbix:

vi /etc/zabbix/zabbix_agentd.conf

Zmień port na
ListenPort=10052

Zmodyfikuj Selinuxa, by akceptował agenta Zabbix na porcie 10052:

sudo semanage port --add --type zabbix_agent_port_t --proto tcp 10052

Możesz od razu zerknąć czy nowy port został dodany:
sudo semanage port -l | grep zabbix

Restart:

sudo systemctl restart zabbix-agent

Uff, tym razem poszło gładko. Zmień jeszcze w panelu na port na 10052 i adres:

Ustawienia panelu web Zabbixa

Kliknij disable, następnie enable i odczekaj chwilę

Gdy dalej jest problem

Powyższe to jeden z najbardziej standardowych problemów z działaniem Zabbixa. Naturalnie, jest jeszcze opcja, że Agenta blokuje firewall. I tu rozwiązanie jest proste.

1) Jeżeli skonfigurowałeś Zabbix Agent na porcie 10052 to sprawdź na serwerze czy aplikacja nasłuchuje na tym porcie:

netstat -nl | grep 10052

Jeżeli nic się nie dzieje to dodajemy wymaganą regułę na firewallu:

iptables -A INPUT -p tcp –dport 10052 -j ACCEPT
service iptables save
service iptables restart

Poza tym , oczywiście pamiętaj o sprawdzaniu logów, poprawności działania bazy danych i samej konfiguracji w panelu web Zabbixa. A jeżeli dalej Zabbix Agent nie działa i powyższe czynności nie pomogły to napisz o tym w komentarzu. Opisz co dokładnie nie działa i pomogę 🙂

Chcesz więcej?

Oczywiście, jeżeli nie chcesz przegapić tego typu materiałów to zapisz się na mój newsletter i przy okazji odbierz darmowe bonusy. Prowadzę regularny, cotygodniowy newsletter z poradami związanymi z automatyzacją, monitoringiem oraz dobrymi praktykami w IT. LINK =>> blog.askomputer.pl/news Raz na tydzień wysyłam unikatowe materiały, których nie znajdziesz na blogu.