2 Równoważenie obciążenia proxy i wysoka dostępność
Przegląd
proxy Zabbix można organizować w grupy proxy, aby umożliwić równoważenie obciążenia proxy i wysoką dostępność.
Równoważenie obciążenia proxy i wysoka dostępność oznaczają automatyczną redystrybucję hostów między proxy w ramach grupy proxy:
- Jeśli proxy przejdzie w tryb offline, jego hosty zostaną przeniesione do innych proxy, co pozwoli utrzymać wysoką dostępność proxy.
- Jeśli proxy ma znacznie większą/mniejszą liczbę hostów niż inne proxy, jego hosty zostaną przeniesione do innych proxy w celu zrównoważenia obciążenia proxy.
Redystrybucja hostów działa tylko między proxy w grupie, które spełniają następujące warunki:
- Proxy korzystają z Zabbix 7.0 lub nowszego.
- Wersja proxy odpowiada wersji serwera Zabbix. Jeśli używany jest Zabbix agent (pasywny), wersja proxy musi odpowiadać wersji agenta. Aktywne agenty wymagają jedynie Zabbix 7.0 lub nowszego.
- Grupa proxy ma stan online.
- Hosty są skonfigurowane tak, aby były monitorowane przez grupę proxy, a nie przez poszczególne proxy.
Stan grupy proxy można monitorować za pomocą kontroli wewnętrznych z dowolnego hosta przypisanego do grupy proxy. Aby jednak monitorować stan pojedynczego proxy w grupie, przypisz hosta do tego proxy; w przeciwnym razie wyniki mogą być niespójne.
Redystrybucja hostów
Równoważenie obciążenia proxy i wysoka dostępność są zarządzane przez serwer Zabbix za pomocą menedżera grup proxy, który stale monitoruje stan wszystkich proxy w każdej grupie proxy oraz rozkład ich hostów.
Wysoka dostępność proxy w obrębie grupy jest zapewniana przez mechanizm przełączania awaryjnego proxy: gdy proxy przechodzi w tryb offline, jego hosty są natychmiast redystrybuowane do innych proxy. Równoważenie obciążenia proxy również ma miejsce, ponieważ hosty są ponownie przypisywane do proxy z najmniejszą liczbą przypisanych hostów.
Dodatkowo równoważenie obciążenia proxy jest uruchamiane, gdy liczba hostów na proxy różni się od średniej grupowej o co najmniej 10 hostów oraz współczynnik 2 (nadmiar hostów lub niedobór hostów). Jeśli nierównowaga utrzymuje się po okresie karencji (10 x opóźnienie przełączenia awaryjnego), grupa proxy jest umieszczana w kolejce do redystrybucji hostów.
Menedżer grup proxy redystrybuuje hosty zgodnie z następującą logiką:
- Oblicz średnią liczbę hostów na proxy.
- Dla proxy z nadmiarem hostów — przenieś nadmiarowe hosty do nieprzypisanej puli proxy.
- Dla proxy z niedoborem hostów — oblicz, ile hostów jest potrzebnych do osiągnięcia równowagi.
- Usuń wymaganą liczbę hostów z proxy mających najwięcej hostów.
- Przenieś nieprzypisane hosty do proxy mających najmniej hostów.
Przykłady redystrybucji hostów:
| Hosty na proxy | Średnia grupowa | Ponowne przypisanie hostów |
|---|---|---|
| 100 | 50 | Tak |
| 60 | 50 | Nie |
| 40 | 50 | Nie |
| 25 | 50 | Tak |
| 15 | 5 | Tak |
| 10 | 5 | Nie |
Posiadanie mniej niż 10 hostów monitorowanych przez grupę proxy może prowadzić do nierównomiernego rozkładu hostów między proxy w grupie.
Konfigurowanie grupy proxy
Aby skonfigurować grupę proxy w frontend Zabbix:
- Przejdź do Administracja > Grupy proxy
- Kliknij Utwórz grupę proxy

| Parametr | Opis |
|---|---|
| Nazwa | Nazwa grupy proxy. |
| Okres przełączania awaryjnego | Okres w sekundach, w którym proxy w grupie proxy musi komunikować się z serwerem Zabbix, aby zostać uznane za dostępne (domyślnie: 1m; zakres: 10s-15m). Jeśli proxy nie skomunikuje się w tym okresie, jego stan zostanie zmieniony na Niedostępne, a jego hosty zostaną natychmiast rozdzielone między inne proxy. Równoważenie obciążenia proxy rozpoczyna się po upływie 10 x tego okresu. Obsługuje przyrostki czasu (np. 30s, 1m) oraz makra użytkownika. |
| Minimalna liczba proxy | Minimalna liczba dostępnych proxy wymagana do utrzymania dostępności grupy proxy (domyślnie: 1; zakres: 1-1000). Obsługuje makra użytkownika. Ta wartość powinna być mniejsza niż łączna liczba proxy w grupie. Na przykład w grupie składającej się z 10 proxy ustawienie minimalnej liczby na 10 spowoduje przejście grupy w stan niedostępny w przypadku awarii dowolnego proxy. Należy pamiętać, że dostępne proxy w niedostępnej grupie nadal działają normalnie, ale równoważenie obciążenia/wysoka dostępność nie będą realizowane. |
| Opis | Opis grupy proxy. |
| Proxy | Podczas edytowania grupy zawierającej proxy wyświetla listę maksymalnie pięciu proxy (jako łącza lub zwykły tekst, w zależności od uprawnień użytkownika do proxy). |
Konfigurowanie równoważenia obciążenia proxy
Aby korzystać z równoważenia obciążenia proxy, należy skonfigurować grupę proxy w frontendzie Zabbix (zobacz powyżej) i upewnić się, że hosty są monitorowane przez grupę proxy, a nie przez poszczególne proxy (można użyć funkcji masowej aktualizacji hostów, aby przenieść hosty z proxy do grupy proxy).
Jeśli używasz Zabbix agent, skonfiguruj go również w następujący sposób:
- W przypadku pasywnych kontroli wymień wszystkie proxy należące do grupy proxy w parametrze Server.
- W przypadku aktywnych kontroli zaleca się wymienienie wszystkich proxy należących do grupy proxy lub serwera Zabbix w parametrze ServerActive. Należy pamiętać, że z grupami proxy w trybie aktywnym będzie działać tylko Zabbix agent 7.0 (lub nowszy).
Jeśli parametr ServerActive zawiera tylko jedno proxy z grupy proxy (lub serwer Zabbix), agent nadal będzie mógł połączyć się z właściwym proxy.
Po uruchomieniu usługi agenta i nawiązaniu połączenia z określonym proxy agent otrzyma i zapisze w pamięci podręcznej pełną listę adresów IP proxy oraz ich bieżące obciążenie w grupie.
Następnie aktywne kontrole zostaną przekierowane do właściwego dostępnego proxy dla hosta na podstawie bieżącego przypisania proxy do hosta w grupie proxy.
Określenie tylko jednego proxy w parametrze ServerActive agenta Zabbix może prowadzić do utraty danych monitorowania, jeśli agent zostanie uruchomiony lub ponownie uruchomiony, gdy określone proxy będzie niedostępne.
Podczas korzystania z Zabbix sender żądania danych są również przekierowywane do właściwego dostępnego proxy dla hosta na podstawie bieżącego przypisania proxy do hosta w grupie proxy.
Jeśli jednak wysyłasz wartości wielu hostów z pliku wejściowego, użyj opcji -g, aby zapobiec wysyłaniu danych do niewłaściwego proxy.
Zabbix agent musi również mieć możliwość połączenia się przez zaporę sieciową ze wszystkimi proxy w grupie proxy. W przeciwnym razie aktywne kontrole mogą zawieszać się lub kończyć niepowodzeniem podczas przekierowania albo przełączania awaryjnego. Na przykład:
- Podczas aktywnych kontroli proxy może przekierować agenta do innego proxy. Jeśli to proxy jest blokowane przez zaporę sieciową, komunikacja zawiesi się podczas oczekiwania na odpowiedź.
- W stabilnych konfiguracjach wysokiej dostępności, w których niedawno nie przeprowadzano ponownego równoważenia, agenty mogą nigdy nie kontaktować się z zapasowymi proxy. Jeśli reguły zapory sieciowej uległy zmianie i nie zostały przetestowane, przełączanie awaryjne może się nie powieść.
Testowanie równoważenia obciążenia proxy
Aby przetestować równoważenie obciążenia proxy:
- Skonfiguruj grupę proxy.
- Upewnij się, że grupa proxy ma stan online.
- Upewnij się, że hosty są monitorowane przez grupę proxy, a nie przez poszczególne proxy (możesz użyć funkcji masowej aktualizacji hostów, aby przenieść hosty z proxy do grupy proxy).
- Odczekaj kilka sekund na aktualizację konfiguracji i rozdzielenie hostów między proxy w grupie proxy. Obserwuj zmianę, odświeżając listę hostów w sekcji Administracja > Proxy.
Ważne uwagi
- Pułapki SNMP nie są obsługiwane przez proxy w grupie proxy.
- Sprawdzenia zależne od konfiguracji zewnętrznej (np. skrypty dla sprawdzeń zewnętrznych lub konfiguracja ODBC dla sprawdzeń baz danych) muszą mieć taką samą konfigurację na wszystkich proxy w grupie proxy.
- Sprawdzenia baz danych wymagają rozszerzonych uprawnień do obiektu/serwera bazy danych.
- Hosty VMware monitorowane przez grupę proxy są losowo rozdzielane między proxy w grupie. Powoduje to, że każde proxy buforuje wszystkie dane VMware, co skutkuje dodatkowym obciążeniem vCenter.
- Hosty utworzone na podstawie danych automatycznej rejestracji z proxy w grupie proxy są ustawiane jako monitorowane przez tę grupę proxy. Jednak hosty utworzone na podstawie danych wykrywania sieci z proxy w grupie proxy są ustawiane jako monitorowane przez to proxy.