Odkrywanie sieci

Przegląd

Zabbix oferuje funkcję automatycznego wykrywania sieci, która jest skuteczna i bardzo elastyczna.

Po prawidłowym skonfigurowaniu wykrywania sieci możesz:

  • Przyspieszyć wdrożenie Zabbix.
  • Uprościć administrację.
  • Używać Zabbix w szybko zmieniających się środowiskach bez nadmiernych nakładów administracyjnych.

Wykrywanie sieci w Zabbix opiera się na następujących informacjach:

  • Zakresy adresów IP
  • Dostępność usług zewnętrznych (FTP, SSH, WEB, POP3, IMAP, TCP itp.)
  • Informacje otrzymane od agent Zabbix (obsługiwany jest tylko tryb nieszyfrowany)
  • Informacje otrzymane od agent SNMP

Nie zapewnia ono wykrywania topologii sieci.

Wykrywanie sieci zasadniczo składa się z dwóch faz: wykrywania i działań.

Discovery

Zabbix okresowo skanuje zakresy IP zdefiniowane w regułach wykrywania sieci. Częstotliwość sprawdzania można skonfigurować osobno dla każdej reguły.

Każda reguła ma zestaw zdefiniowanych sprawdzeń usług, które mają zostać wykonane dla zakresu IP.

Reguły wykrywania są przetwarzane przez menedżera wykrywania. Menedżer wykrywania tworzy zadanie dla każdej reguły wraz z listą zadań (sprawdzeń sieciowych). Sprawdzenia sieciowe są wykonywane równolegle przez dostępne procesy robocze wykrywania (liczba jest konfigurowalna w frontend dla każdej reguły). Wyjątkiem są sprawdzenia SNMPv3, które są przetwarzane przez pojedynczy proces roboczy. Tylko sprawdzenia z tym samym IP i portem są planowane sekwencyjnie, ponieważ niektóre urządzenia nie akceptują równoległych połączeń na tym samym porcie.

Rozmiar kolejki sprawdzeń sieciowych jest ograniczony do 2000000 lub około 4 GB pamięci. Jeśli kolejka się zapełni, reguła wykrywania zostanie pominięta, a w logu zostanie wyświetlony komunikat ostrzegawczy. Możesz użyć wewnętrznej pozycji zabbix[discovery_queue] do monitorowania liczby sprawdzeń wykrywania w kolejce.

Sprawdzenia wykrywania są przetwarzane niezależnie od pozostałych sprawdzeń. Jeśli któreś ze sprawdzeń nie wykryje usługi (lub zakończy się niepowodzeniem), pozostałe sprawdzenia nadal będą przetwarzane.

Jeśli reguła wykrywania zostanie zmieniona podczas wykonywania, bieżące wykonanie wykrywania zostanie przerwane.

Każde sprawdzenie usługi i hosta (IP) wykonywane przez moduł wykrywania sieci generuje zdarzenie wykrywania.

Event Check of service result
Service Discovered Usługa jest 'up' po tym, jak była 'down', lub gdy została wykryta po raz pierwszy.
Service Up Usługa jest 'up', po tym, jak była już 'up'.
Service Lost Usługa jest 'down' po tym, jak była 'up'.
Service Down Usługa jest 'down', po tym, jak była już 'down'.
Host Discovered Co najmniej jedna usługa hosta jest 'up' po tym, jak wszystkie usługi tego hosta były 'down', albo zostaje wykryta usługa należąca do niezarejestrowanego hosta.
Host Up Co najmniej jedna usługa hosta jest 'up', po tym jak co najmniej jedna usługa była już 'up'.
Host Lost Wszystkie usługi hosta są 'down' po tym, jak co najmniej jedna była 'up'.
Host Down Wszystkie usługi hosta są 'down', po tym jak były już 'down'.

Akcje

Zdarzenia wykrywania mogą stanowić podstawę odpowiednich akcji, takich jak:

  • Wysyłanie powiadomień
  • Dodawanie/usuwanie hostów
  • Włączanie/wyłączanie hostów
  • Dodawanie hostów do grupy
  • Usuwanie hostów z grupy
  • Dodawanie tagów do hosta
  • Usuwanie tagów z hosta
  • Podłączanie szablonu do hostów/odłączanie szablonu od hostów
  • Wykonywanie zdalnych skryptów

Akcje te można skonfigurować z uwzględnieniem typu urządzenia, adresu IP, statusu, czasu działania/przestoju itd. Pełne informacje na temat konfigurowania akcji dla zdarzeń opartych na wykrywaniu sieci można znaleźć na stronach operacji i warunków akcji.

Ponieważ akcje wykrywania sieci są oparte na zdarzeniach, będą uruchamiane zarówno wtedy, gdy wykryty host jest online, jak i wtedy, gdy jest offline. Zdecydowanie zaleca się dodanie warunku akcji Discovery status: up, aby uniknąć uruchamiania takich akcji jak Add host przy zdarzeniach Service Lost/Service Down. W przeciwnym razie, jeśli wykryty host zostanie usunięty ręcznie, nadal będzie generował zdarzenia Service Lost/Service Down i zostanie odtworzony podczas następnego cyklu wykrywania.

Podłączanie szablonów do wykrytego hosta zakończy się zbiorczym niepowodzeniem, jeśli którykolwiek z szablonów możliwych do podłączenia zawiera unikalną encję (np. klucz pozycji), która jest taka sama jak unikalna encja (np. klucz pozycji) już istniejąca na hoście lub w innym z szablonów możliwych do podłączenia.

Tworzenie hosta

Host jest dodawany, jeśli wybrano operację Add host. Host jest również dodawany, nawet jeśli operacja Add host nie została określona, jeśli wybierzesz operacje skutkujące działaniami na hoście. Takimi operacjami są:

  • Enable host.
  • Disable host.
  • Add host to a host group.
  • Link template to a host.

Utworzone hosty są dodawane do grupy Discovered hosts (domyślnie, konfigurowalne w Administration > General > Other). Jeśli chcesz, aby hosty były dodawane do innej grupy, dodaj operację Remove from host groups (określając "Discovered hosts") oraz operację Add to host groups (określając inną grupę hostów), ponieważ host musi należeć do grupy hostów.

Adres IP wykrytego urządzenia, wraz ze źródłem wykrywania (serwer Zabbix, proxy Zabbix lub grupa proxy) oraz typem interfejsu, jest używany jako kryterium wyszukiwania hosta w systemie. Jeśli host o tym samym adresie IP, typie interfejsu i źródle wykrywania już istnieje, ten host będzie celem wykonywania operacji. Jeśli źródło wykrywania jest inne, wykryty obiekt jest traktowany jako inny host i może zostać utworzony nowy host.

Jeśli adres IP wykrytego hosta zostanie zmieniony lub interfejs zostanie usunięty, przy następnym wykryciu zostanie utworzony nowy host.

Nadawanie nazw hostom

Podczas dodawania hostów nazwa hosta jest wynikiem odwrotnego wyszukiwania DNS lub adresem IP, jeśli odwrotne wyszukiwanie się nie powiedzie. Wyszukiwanie jest wykonywane z serwera Zabbix lub proxy Zabbix, w zależności od tego, który z nich wykonuje wykrywanie. Jeśli wyszukiwanie nie powiedzie się na proxy, nie jest ponawiane na serwerze. Jeśli host o takiej nazwie już istnieje, do nazwy kolejnego hosta zostanie dodane _2, następnie _3 itd.

Możliwe jest również zastąpienie wyszukiwania DNS/IP i użycie zamiast tego wartości pozycji jako nazwy hosta, na przykład:

  • Można wykryć wiele serwerów z uruchomionym agent Zabbix przy użyciu pozycji agenta Zabbix do wykrywania i automatycznie przypisać im odpowiednie nazwy na podstawie wartości tekstowej zwróconej przez tę pozycję
  • Można wykryć wiele urządzeń sieciowych SNMP przy użyciu pozycji agenta SNMP do wykrywania i automatycznie przypisać im odpowiednie nazwy na podstawie wartości tekstowej zwróconej przez tę pozycję

Jeśli nazwa hosta została ustawiona przy użyciu wartości pozycji, nie jest aktualizowana podczas kolejnych kontroli wykrywania. Jeśli nie można ustawić nazwy hosta przy użyciu wartości pozycji, używana jest wartość domyślna (nazwa DNS).

Jeśli host z wykrytym adresem IP już istnieje, a źródło wykrywania (serwer Zabbix, proxy lub grupa proxy) nie uległo zmianie, nowy host nie jest tworzony. Jeśli źródło wykrywania jest inne, wykryta jednostka jest traktowana jako odrębna i może zostać utworzony nowy host. Jednak jeśli akcja wykrywania zawiera operacje (podłączenie szablonu, dodanie do grupy hostów itp.), są one wykonywane na istniejącym hoście dopasowanym według adresu IP, typu interfejsu i źródła wykrywania.

Usuwanie hostów

Hosty wykryte przez regułę wykrywania sieci są usuwane automatycznie z Monitoring > Discovery, jeśli wykryta jednostka nie znajduje się już w zakresie adresów IP tej reguły. Hosty są usuwane natychmiast.

Tworzenie interfejsów podczas dodawania hostów

Gdy hosty są dodawane w wyniku wykrywania sieci, tworzone są dla nich interfejsy zgodnie z następującymi zasadami:

  • Wykryte usługi - na przykład, jeśli sprawdzenie SNMP zakończy się powodzeniem, zostanie utworzony interfejs SNMP.
  • Jeśli host odpowiadał zarówno na żądania Zabbix agent, jak i SNMP, zostaną utworzone oba typy interfejsów.
  • Jeśli kryteria unikalności opierają się na danych zwróconych przez Zabbix agent lub SNMP, pierwszy znaleziony interfejs dla hosta zostanie utworzony jako domyślny. Pozostałe adresy IP zostaną dodane jako dodatkowe interfejsy. Warunki akcji (takie jak Host IP) nie wpływają na dodawanie interfejsów. Uwaga - będzie to działać, jeśli wszystkie interfejsy są wykrywane przez tę samą regułę wykrywania. Jeśli inna reguła wykrywania wykryje inny interfejs tego samego hosta, zostanie dodany dodatkowy host.
  • Jeśli host odpowiadał wyłącznie na sprawdzenia agent, zostanie utworzony tylko z interfejsem agent. Jeśli później zacznie odpowiadać również na SNMP, zostaną dodane dodatkowe interfejsy SNMP.
  • Jeśli początkowo utworzono 3 oddzielne hosty na podstawie kryteriów unikalności "IP", a następnie reguła wykrywania zostanie zmodyfikowana tak, że hosty A, B i C mają identyczny wynik kryteriów unikalności, B i C zostaną utworzone jako dodatkowe interfejsy dla A, pierwszego hosta. Poszczególne hosty B i C pozostaną zachowane. W Monitoring > Discovery dodane interfejsy będą wyświetlane w kolumnie "Discovered device", czarną czcionką i z wcięciem, natomiast kolumna "Monitored host" będzie wyświetlać tylko A, pierwszy utworzony host. "Uptime/Downtime" nie jest mierzone dla adresów IP, które są uznawane za dodatkowe interfejsy.

Zmiana ustawienia proxy

Hosty wykryte przez różne proxy nie zawsze są traktowane jako różne hosty. Wykrywanie i sprawdzanie unikalności zależą od struktury grupy proxy: gdy proxy uruchamia regułę wykrywania i tworzy hosta, ten host jest dodawany do nadrzędnej grupy proxy tego proxy, a nie przypisywany do samego proxy. Gdy Zabbix ocenia unikalność adresów IP podczas wykrywania, sprawdza hosty monitorowane przez nadrzędną grupę proxy. Hosty monitorowane przez poszczególne proxy w tej grupie (w tym proxy, które uruchomiło wykrywanie) są pomijane podczas sprawdzania unikalności, co może prowadzić do duplikatów hostów, jeśli wiele proxy monitoruje nakładające się podsieci.

Chociaż takie działanie umożliwia wykrywanie w nakładających się zakresach IP używanych przez różne podsieci, zmiana proxy przypisanego do już monitorowanej podsieci jest bardziej złożona, ponieważ zmiany proxy muszą być zastosowane spójnie zarówno do wykrytych hostów, jak i do członkostwa nadrzędnej grupy proxy, aby uniknąć duplikatów.

Na przykład, kroki zastąpienia proxy w regule wykrywania:

  1. Wyłącz regułę wykrywania.
  2. Zsynchronizuj konfigurację proxy.
  3. Zastąp proxy w regule wykrywania.
  4. Zastąp proxy dla wszystkich hostów wykrytych przez tę regułę (upewnij się, że hosty w nadrzędnej grupie proxy oraz wszelkie hosty monitorowane przez poszczególne proxy w tej grupie są zaktualizowane, aby uniknąć duplikatów).
  5. Włącz regułę wykrywania.