3 Zabbix agent (UNIX)

Przegląd

Ta sekcja zawiera listę parametrów obsługiwanych w pliku konfiguracyjnym agenta Zabbix (zabbix_agentd.conf).

Należy pamiętać, że:

  • Wartości domyślne odzwierciedlają domyślne ustawienia demona, a nie wartości w dostarczonych plikach konfiguracyjnych;
  • Zabbix obsługuje pliki konfiguracyjne tylko w kodowaniu UTF-8 bez BOM;
  • Komentarze rozpoczynające się od "#" są obsługiwane tylko na początku linii.

Parametry

Parametr Obowiązkowy Zakres Domyślnie Opis
Alias nie Ustawia alias dla klucza pozycji. Może być używany do zastąpienia długiego i skomplikowanego klucza pozycji krótszym i prostszym.
Może być obecnych wiele parametrów Alias. Nie są dozwolone wielokrotne parametry z tym samym kluczem Alias.
Różne klucze Alias mogą odnosić się do tego samego klucza pozycji.
Aliasów można używać w parametrach HostMetadataItem, ale nie w parametrach HostnameItem.

Przykłady:

1. Pobieranie identyfikatora użytkownika 'zabbix'.
Alias=zabbix.userid:vfs.file.regexp[/etc/passwd,"^zabbix:.:([0-9]+)",,,,\1]
Teraz skrócony klucz zabbix.userid może być użyty do pobrania danych.

2. Uzyskiwanie wykorzystania CPU z domyślnymi i niestandardowymi parametrami.
Alias=cpu.util:system.cpu.util
Alias=cpu.util[*]:system.cpu.util[*]
To pozwala używać klucza cpu.util do uzyskania procentowego wykorzystania CPU z domyślnymi parametrami oraz używać cpu.util[all, idle, avg15] do uzyskania szczegółowych danych dotyczących wykorzystania CPU.

3. Uruchamianie wielu reguł wykrywania niskopoziomowego przetwarzających te same pozycje wykrywania.
Alias=vfs.fs.discovery[*]:vfs.fs.discovery
Teraz możliwe jest ustawienie kilku reguł wykrywania używających vfs.fs.discovery z różnymi parametrami dla każdej reguły, np. vfs.fs.discovery[foo], vfs.fs.discovery[bar], itp.
AllowKey nie Zezwalaj na wykonywanie tych kluczy pozycji, które pasują do wzorca. Wzorzec klucza to wyrażenie wildcard, które obsługuje znak "*", aby dopasować dowolną liczbę dowolnych znaków.
Można zdefiniować wiele reguł dopasowania kluczy w połączeniu z DenyKey. Parametry są przetwarzane jeden po drugim według kolejności ich pojawienia się.
Ten parametr jest obsługiwany od Zabbix 5.0.0.
Zobacz także: Ograniczanie sprawdzeń agenta.
AllowRoot nie 0 Pozwól agentowi działać jako 'root'. Jeśli wyłączone i agent jest uruchamiany przez 'root', agent spróbuje przełączyć się na użytkownika 'zabbix'. Nie ma wpływu, jeśli jest uruchamiany przez zwykłego użytkownika.
0 - nie pozwalaj
1 - pozwalaj
BufferSend nie 1-3600 5 Nie przechowuj danych w buforze dłużej niż N sekund.
BufferSize nie 2-65535 100 Maksymalna liczba wartości w buforze pamięci. Agent wyśle
wszystkie zebrane dane do serwera lub proxy Zabbix, jeśli bufor jest pełny.
DebugLevel nie 0-5 3 Określa poziom debugowania:
0 - podstawowe informacje o uruchamianiu i zatrzymywaniu procesów Zabbix
1 - krytyczne informacje
2 - informacje o błędach
3 - ostrzeżenia
4 - dla debugowania (generuje dużo informacji)
5 - rozszerzone debugowanie (generuje jeszcze więcej informacji)
DenyKey nie Odmów wykonania tych kluczy pozycji, które pasują do wzorca. Wzorzec klucza to wyrażenie wildcard, które obsługuje znak "*", aby dopasować dowolną liczbę dowolnych znaków.
Można zdefiniować wiele reguł dopasowania kluczy w połączeniu z AllowKey. Parametry są przetwarzane jeden po drugim według kolejności ich pojawienia się.
Ten parametr jest obsługiwany od Zabbix 5.0.0.
Zobacz także: Ograniczanie sprawdzeń agenta.
EnableRemoteCommands nie 0 Czy zezwolić na zdalne polecenia z serwera Zabbix. Ten parametr jest przestarzały, zamiast tego użyj AllowKey=system.run[*] lub DenyKey=system.run[*]
To wewnętrzny alias dla parametrów AllowKey/DenyKey w zależności od wartości: 0 - DenyKey=system.run[*]
1 - AllowKey=system.run[*]
HostInterface nie 0-255 znaków Opcjonalny parametr, który definiuje interfejs hosta.
Interfejs hosta jest używany w procesie autorejestracji hosta.
Agent wyświetli błąd i nie uruchomi się, jeśli wartość przekroczy limit 255 znaków.
Jeśli nie zdefiniowano, wartość zostanie pobrana z HostInterfaceItem.
Obsługiwane od Zabbix 4.4.0.
HostInterfaceItem nie Opcjonalny parametr, który definiuje pozycję używaną do pobierania interfejsu hosta.
Interfejs hosta jest używany w procesie autorejestracji hosta.
W trakcie żądania autorejestracji agentzapisze log poziomu ostrzeżenie, jeśli wartość zwrócona przez określoną pozycję przekroczy limit 255 znaków.
Pozycja system.run[] jest obsługiwana niezależnie od wartości AllowKey/DenyKey.
Opcja ta jest używana tylko wtedy, gdy HostInterface nie jest zdefiniowany.
Obsługiwane od Zabbix 4.4.0.
HostMetadata nie 0-255 znaków Opcjonalny parametr, który definiuje metadane hosta. Metadane hosta są używane tylko w procesie autorejestracji hosta (aktywny agent).
Jeśli nie zdefiniowano, wartość zostanie pobrana z HostMetadataItem.
Agent wyświetli błąd i nie uruchomi się, jeśli określona wartość przekroczy limit lub będzie niezgodna z ciągiem UTF-8.
HostMetadataItem nie Opcjonalny parametr, który definiuje pozycję agenta Zabbix używaną do pobierania metadanych hosta. Ta opcja jest używana tylko wtedy, gdy HostMetadata nie jest zdefiniowany.
Obsługuje Parametry Użytkownika i aliasy. Obsługuje system.run[] bez względu na wartości AllowKey/DenyKey.
Wartość HostMetadataItem jest pobierana przy każdej próbie autorejestracji i jest używana tylko w procesie autorejestracji hosta (aktywny agent).
W trakcie żądania autorejestracji agent zapisze log poziomu ostrzeżenie, jeśli wartość zwrócona przez określoną pozycję przekroczy limit 255 znaków.
Zwracana przez pozycję wartość musi być ciągiem UTF-8, w przeciwnym razie zostanie zignorowana.
Hostname nie Ustawiane przez HostnameItem Lista unikalnych, rozróżniających wielkość liter, oddzielonych przecinkami nazw hostów.
Wymagane dla aktywnych sprawdzeń i musi odpowiadać nazwom hostów skonfigurowanym na serwerze. Wartość jest pobierana z HostnameItem, jeśli niezdefiniowana.
Dopuszczone znaki: alfanumeryczne, '.', ' ', '_' i '-'.
Maksymalna długość: 128 znaków na nazwę hosta, 2048 znaków dla całej linii.
HostnameItem nie system.hostname Opcjonalny parametr, który definiuje pozycję agenta Zabbix używaną do pobierania nazwy hosta. Ta opcja jest używana tylko wtedy, gdy Hostname nie jest zdefiniowany.
Nie obsługuje Parametrów Użytkownika ani aliasów, ale obsługuje system.run[] niezależnie od wartości AllowKey/DenyKey.
Include nie Możesz dołączyć pojedyncze pliki lub wszystkie pliki w katalogu do pliku konfiguracyjnego.
Aby dołączyć tylko odpowiednie pliki w określonym katalogu, obsługiwany jest znak wildcard * (gwiazdka) do dopasowywania wzorców. Na przykład: /scieżka/absolutna/do/plików/konfiguracyjnych/*.conf.
Zobacz specjalne uwagi dotyczące ograniczeń.
ListenBacklog nie 0 - INT_MAX SOMAXCONN Maksymalna liczba oczekujących połączeń w kolejce TCP.
Domyślna wartość to stała wartość, która zależy od systemu.
Maksymalna obsługiwana wartość zależy również od systemu, zbyt wysokie wartości mogą być cicho uciete do "maksimum określonego przez implementację".
ListenIP nie 0.0.0.0 Lista unikalnych, oddzielonych przecinkami adresów IP, na których agent powinien nasłuchiwać.
Wersja 1.8.3 i wyższe obsługują wiele adresów IP.
ListenPort nie 1024-32767 10050 Agent będzie nasłuchiwał na tym porcie na połączenia z serwera.
LoadModule nie Moduł do załadowania podczas uruchamiania agenta. Moduły są używane do rozszerzania funkcjonalności agenta.
Formaty:
LoadModule=<moduł.so>
LoadModule=<ścieżka/moduł.so>
LoadModule=</abs_scieżka/moduł.so>
Moduł musi być albo znajdować się w katalogu określonym przez LoadModulePath, albo ścieżka musi poprzedzać nazwę modułu. Jeśli podana ścieżka jest bezwzględna (zaczyna się od '/'), to LoadModulePath jest ignorowany.
Dozwolone jest dołączenie wielu parametrów LoadModule.
LoadModulePath nie Pełna ścieżka do lokalizacji modułów agenta.
Domyślna zależy od opcji kompilacji.
LogFile tak, jeśli LogType jest ustawiony na file, w przeciwnym razie
nie
Nazwa pliku logu.
LogFileSize nie 0-1024 1 Maksymalny rozmiar pliku logu w MB.
0 - wyłącza automatyczną rotację logu.
Uwaga: Jeśli limit rozmiaru pliku logu zostanie osiągnięty, a rotacja pliku nie powiedzie się z jakiegokolwiek powodu, istniejący plik logu zostanie ucięty i rozpocznie się na nowo.
LogType nie file Typ wyjścia logu:
plik - zapisz dziennik logu do pliku określonego przez parametr LogFile,
system - zapisz log do syslog,
konsola - zapisz log do standardowego wyjścia.
Ten parametr jest obsługiwany od wersji Zabbix 3.0.0.
LogRemoteCommands nie 0 Włącz logowanie wykonanych poleceń powłoki jako ostrzeżeń.
0 - wyłączone
1 - włączone
Polecenia będą rejestrowane tylko w przypadku ich zdalnego wykonania. Wpisy logu nie będą tworzone, jeśli system.run[] jest uruchamiany lokalnie przez parametry HostMetadataItem, HostInterfaceItem lub HostnameItem.
MaxLinesPerSecond nie 1-1000 20 Maksymalna liczba nowych linii na sekundę , które agent wyśle do serwera Zabbix lub proxy podczas przetwarzania aktywnych sprawdzeń "log" i "eventlog".
Podana wartość zostanie nadpisana przez parametr 'maxlines',
podany w kluczu pozycji "log" lub "eventlog".
Uwaga: Zabbix przetworzy 10 razy więcej nowych linii niż ustawione w MaxLinesPerSecond, aby znaleźć wymagany ciąg znaków w pozycjach typu log.
PidFile nie /tmp/zabbix_agentd.pid Nazwa pliku PID.
RefreshActiveChecks nie 60-3600 120 Jak często lista aktywnych sprawdzeń jest odświeżana, w sekundach.
Należy zauważyć, że po niepowodzeniu w odświeżeniu aktywnych sprawdzeń następne odświeżenie zostanie podjęte po 60 sekundach.
Server tak, jeśli StartAgents nie jest jawnie ustawione na 0 Lista adresów IP oddzielonych przecinkami, opcjonalnie w notacji CIDR, lub nazwy DNS serwerów Zabbix i proxy Zabbix.
Połączenia przychodzące będą akceptowane tylko z hostów wymienionych tutaj.
Jeśli obsługa IPv6 jest włączona, to '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' są traktowane równoznacznie, a '::/0' pozwoli na dowolny adres IPv4 lub IPv6.
'0.0.0.0/0' można użyć, aby zezwolić na dowolny adres IPv4.
Należy pamiętać, że "adresy IPv6 zgodne z IPv4" (prefiks 0000::/96) są obsługiwane, ale są przestarzałe wg RFC4291.
Przykład: Server=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.example.com
Spacje są dozwolone.
ServerActive nie Adres serwera/proxy Zabbix lub konfiguracja klastra do pobierania aktywnych sprawdzeń.
Adres serwera/proxy to adres IP lub nazwa DNS i opcjonalny port oddzielone dwukropkiem.
Konfiguracja klastra to jeden lub więcej adresów serwera oddzielonych średnikiem.
Można określić wiele serwerów/proxy Zabbix i klastrów oraz wiele adresów serwera Zabbix oddzielonych przecinkiem.
Nie powinno się określać więcej niż jednego proxy Zabbix z każdego serwera/klastra Zabbix.
Jeśli określono proxy Zabbix, to nie powinien być określony serwer/klaster Zabbix dla tego proxy.
Można podać wiele adresów oddzielonych przecinkiem, aby równolegle używać kilku niezależnych serwerów Zabbix. Spacje są dozwolone.
Jeśli port nie jest określony, używany jest port domyślny.
Adresy IPv6 muszą być umieszczone w nawiasach kwadratowych, jeśli określono port dla tego hosta.
Jeśli port nie jest określony, nawiasy kwadratowe dla adresów IPv6 są opcjonalne.
Jeśli ten parametr nie jest określony, aktywne sprawdzenia są wyłączone.
Przykład dla proxy Zabbix:
ServerActive=127.0.0.1:10051
Przykład dla wielu serwerów:
ServerActive=127.0.0.1:20051,zabbix.domain,[::1]:30051,::1,[12fc::1]
Przykład dla wysokiej dostępności:
ServerActive=zabbix.cluster.node1;zabbix.cluster.node2:20051;zabbix.cluster.node3
Przykład dla wysokiej dostępności z dwoma klastrami i jednym serwerem:
ServerActive=zabbix.cluster.node1;zabbix.cluster.node2:20051,zabbix.cluster2.node1;zabbix.cluster2.node2,zabbix.domain
SourceIP nie Adres IP źródłowy dla:
- wychodzących połączeń do serwera Zabbix lub proxy Zabbix;
- nawiązywania połączeń podczas wykonywania niektórych pozycji (web.page.get, net.tcp.port, itp.)
StartAgents nie 0-100 3 Liczba wstępnie rozgałęzionych instancji zabbix_agentd, które przetwarzają pasywne sprawdzenia.
Ustawienie tego parametru na 0 wyłącza sprawdzenia pasywne, a agent nie będzie nasłuchiwał na żadnym porcie TCP.
Timeout nie 1-30 3 Nie spędzaj więcej niż Timeout sekund na przetwarzaniu.
TLSAccept tak, jeśli parametry certyfikatu TLS lub PSK są zdefiniowane (nawet dla połączenia niezaszyfrowanego), w przeciwnym razie nie Jakie przyjmować przychodzące połączenia. Używane dla sprawdzeń pasywnych. Można podać wiele wartości, oddzielonych przecinkiem:
unencrypted - akceptuj połączenia bez szyfrowania (domyślnie)
psk - akceptuj połączenia z TLS i kluczem współdzielonym (PSK)
cert - akceptuj połączenia z TLS i certyfikatem
Ten parametr jest obsługiwany od Zabbix 3.0.0.
TLSCAFile nie Pełna ścieżka do pliku zawierającego certyfikaty CA najwyższego poziomu do weryfikacji certyfikatu peer, używane do szyfrowanych komunikacji między składnikami Zabbix.
Ten parametr jest obsługiwany od Zabbix 3.0.0.
TLSCertFile nie Pełna ścieżka do pliku zawierającego certyfikat agenta lub łańcuch certyfikatów, używane do szyfrowanych komunikacji z komponentami Zabbix.
Ten parametr jest obsługiwany od Zabbix 3.0.0.
TLSCipherAll nie Łańcuch priorytetowy GnuTLS lub łańcuch szyfrów OpenSSL (TLS 1.2). Nadpisuje domyślne kryteria wyboru zestawu szyfrów dla szyfrowania opartego na certyfikacie i PSK.
Przykład: TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256
Ten parametr jest obsługiwany od Zabbix 4.4.7.
TLSCipherAll13 nie Łańcuch szyfrów dla OpenSSL 1.1.1 lub nowszy w TLS 1.3. Nadpisuje domyślne kryteria wyboru zestawu szyfrów dla szyfrowania opartego na certyfikacie i PSK.
Przykład dla GnuTLS: NONE:+VERS-TLS1.2:+ECDHE-RSA:+RSA:+ECDHE-PSK:+PSK:+AES-128-GCM:+AES-128-CBC:+AEAD:+SHA256:+SHA1:+CURVE-ALL:+COMP-NULL::+SIGN-ALL:+CTYPE-X.509
Przykład dla OpenSSL: EECDH+aRSA+AES128:RSA+aRSA+AES128:kECDHEPSK+AES128:kPSK+AES128
Ten parametr jest obsługiwany od Zabbix 4.4.7.
TLSCipherCert nie Łańcuch priorytetowy GnuTLS lub łańcuch szyfrów OpenSSL (TLS 1.2). Nadpisuje domyślne kryteria wyboru zestawu szyfrów dla szyfrowania opartego na certyfikacie.
Przykład dla GnuTLS: NONE:+VERS-TLS1.2:+ECDHE-RSA:+RSA:+AES-128-GCM:+AES-128-CBC:+AEAD:+SHA256:+SHA1:+CURVE-ALL:+COMP-NULL:+SIGN-ALL:+CTYPE-X.509
Przykład dla OpenSSL: EECDH+aRSA+AES128:RSA+aRSA+AES128
Ten parametr jest obsługiwany od Zabbix 4.4.7.
TLSCipherCert13 nie Łańcuch szyfrów dla OpenSSL 1.1.1 lub nowszy w TLS 1.3. Nadpisuje domyślne kryteria wyboru zestawu szyfrów dla szyfrowania opartego na certyfikacie.
Ten parametr jest obsługiwany od Zabbix 4.4.7.
TLSCipherPSK nie Łańcuch priorytetowy GnuTLS lub łańcuch szyfrów OpenSSL (TLS 1.2). Nadpisuje domyślne kryteria wyboru zestawu szyfrów dla szyfrowania opartego na PSK.
Przykład dla GnuTLS: NONE:+VERS-TLS1.2:+ECDHE-PSK:+PSK:+AES-128-GCM:+AES-128-CBC:+AEAD:+SHA256:+SHA1:+CURVE-ALL:+COMP-NULL:+SIGN-ALL
Przykład dla OpenSSL: kECDHEPSK+AES128:kPSK+AES128
Ten parametr jest obsługiwany od Zabbix 4.4.7.
TLSCipherPSK13 nie Łańcuch szyfrów dla OpenSSL 1.1.1 lub nowszy w TLS 1.3. Nadpisuje domyślne kryteria wyboru zestawu szyfrów dla szyfrowania opartego na PSK.
Przykład: TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256
Ten parametr jest obsługiwany od Zabbix 4.4.7.
TLSConnect tak, jeśli parametry certyfikatu TLS lub PSK są zdefiniowane (nawet dla połączenia niezaszyfrowanego), w przeciwnym razie nie Sposób, w jaki agent powinien połączyć się z serwerem Zabbix lub proxy. Używane dla sprawdzeń aktywnych. Można podać tylko jedną wartość:
unencrypted - połącz bez szyfrowania (domyślnie)
psk - połącz używając TLS i klucza współdzielonego (PSK)
cert - połącz używając TLS i certyfikatu
Ten parametr jest obsługiwany od Zabbix 3.0.0.
TLSCRLFile nie Pełna ścieżka do pliku zawierającego odwołane certyfikaty. Ten parametr jest używany dla szyfrowanych komunikacji z komponentami Zabbix.
Ten parametr jest obsługiwany od Zabbix 3.0.0.
TLSKeyFile nie Pełna ścieżka do pliku zawierającego prywatny klucz agenta używany do szyfrowanych komunikacji z komponentami Zabbix.
Ten parametr jest obsługiwany od Zabbix 3.0.0.
TLSPSKFile nie Pełna ścieżka do pliku zawierającego klucz współdzielony agenta używany do szyfrowanych komunikacji z komponentami Zabbix.
Ten parametr jest obsługiwany od Zabbix 3.0.0.
TLSPSKIdentity nie Ciąg identyfikujący klucz współdzielony, używany do szyfrowanych komunikacji z serwerem Zabbix.
Ten parametr jest obsługiwany od Zabbix 3.0.0.
TLSServerCertIssuer nie Dozwolony wydawca certyfikatu serwera (proxy).
Ten parametr jest obsługiwany od Zabbix 3.0.0.
TLSServerCertSubject nie Dozwolony podmiot certyfikatu serwera (proxy).
Ten parametr jest obsługiwany od Zabbix 3.0.0.
UnsafeUserParameters nie 0,1 0 Zezwalaj na przekazywanie wszystkich znaków w argumentach do parametrów zdefiniowanych przez użytkownika.
0 - nie zezwalaj
1 - zezwalaj
Następujące znaki nie są dozwolone:
\ ' " ` * ? [ ] { } ~ $ ! & ; ( ) < > | # @
Ponadto niedozwolone są znaki nowej linii.
User nie zabbix Ogranicz uprawnienia do określonego, istniejącego użytkownika w systemie.
Ma zastosowanie tylko wtedy, gdy uruchamiane jest jako 'root', a AllowRoot jest wyłączone.
UserParameter nie Parametr zdefiniowany przez użytkownika do monitorowania. Może być kilka takich parametrów zdefiniowanych przez użytkownika.
Format: UserParameter=<klucz>,<polecenie powłoki>
Należy pamiętać, że polecenie powłoki nie może zwracać pustego ciągu znaków ani tylko znaku końca linii (EOL).
Polecenia powłoki mogą zawierać ścieżki względne, jeśli parametr UserParameterDir jest określony.
Przykłady:
UserParameter=system.test,who|wc -l
UserParameter=check_cpu,./custom_script.sh
UserParameterDir nie Domyślna ścieżka wyszukiwania poleceń UserParameter. Jeśli jest używana, agent zmieni swoją bieżącą ścieżkę na określoną tutaj przed wykonaniem polecenia. Dzięki temu polecenia UserParameter mogą mieć względny prefiks ./ zamiast pełnej ścieżki.
Dozwolony jest tylko jeden wpis.
Przykład: UserParameterDir=/opt/myscripts

Zobacz również

  1. Różnice w konfiguracji agenta Zabbix dla aktywnych i pasywnych sprawdzeń począwszy od wersji 2.0.0