Udostępnij za pośrednictwem


Co to jest możliwość obserwowania sieci kontenerów?

Obserwacja sieci kontenerów to funkcja pakietu Advanced Container Networking Services . Udostępnia ona narzędzia do monitorowania i diagnostyki następnego poziomu, zapewniając niezrównany wgląd w konteneryzowane obciążenia. Te narzędzia umożliwiają łatwe ustalenie i rozwiązywanie problemów z siecią, zapewniając optymalną wydajność aplikacji.

Możliwość obserwacji sieci kontenerów jest zgodna ze wszystkimi obciążeniami systemu Linux bezproblemowo integracją z usługą Hubble niezależnie od tego, czy podstawowa płaszczyzna danych to Cilium, czy nie cilium (oba są obsługiwane) zapewniając elastyczność potrzeb związanych z siecią kontenerów.

Diagram obserwacji sieci kontenerów.

Uwaga

W przypadku scenariuszy płaszczyzny danych Cilium funkcja obserwacji sieci kontenerów jest dostępna od platformy Kubernetes w wersji 1.29. Możliwość obserwowania sieci kontenerów jest obsługiwana we wszystkich dystrybucjach systemu Linux, w tym w systemie Azure Linux, począwszy od wersji 2.0.

Funkcje obserwowania sieci kontenerów

Funkcja obserwacji sieci kontenerów oferuje następujące możliwości monitorowania problemów związanych z siecią w klastrze:

  • Metryki na poziomie węzła: zrozumienie kondycji sieci kontenera na poziomie węzła ma kluczowe znaczenie dla utrzymania optymalnej wydajności aplikacji. Te metryki zapewniają wgląd w wolumin ruchu, porzucone pakiety, liczbę połączeń itp. według węzła. Metryki są przechowywane w formacie Prometheus, a w związku z tym można je wyświetlić w narzędziu Grafana.

  • Metryki hubble (metryki dns i metryki na poziomie zasobnika): te metryki prometheus obejmują informacje o zasobniku źródłowym i docelowym, które umożliwiają wskazanie problemów związanych z siecią na poziomie szczegółowym. Metryki obejmują wolumin ruchu, porzucone pakiety, resetowanie protokołu TCP, przepływy pakietów L4/L7 itp. Istnieją również metryki DNS (obecnie tylko w przypadku płaszczyzn danych innych niż cilium), obejmujące błędy DNS i brakujące odpowiedzi żądań DNS.

  • Dzienniki przepływu usługi Hubble: dzienniki przepływu zapewniają głęboki wgląd w aktywność sieciową klastra. Wszystkie komunikaty do i z zasobników są rejestrowane, co umożliwia badanie problemów z łącznością w czasie. Dzienniki przepływu pomagają odpowiedzieć na pytania, takie jak: czy serwer otrzymał żądanie klienta? Jakie jest opóźnienie między żądaniem klienta a odpowiedzią serwera?

    • Interfejs wiersza polecenia hubble: interfejs wiersza polecenia hubble może pobierać dzienniki przepływu w całym klastrze z możliwością dostosowywania filtrowania i formatowania.

    • Interfejs użytkownika hubble'a: Interfejs użytkownika hubble'a to przyjazny dla użytkownika interfejs przeglądarki do eksplorowania aktywności sieci klastra. Tworzy wykres połączenia z usługą na podstawie dzienników przepływu i wyświetla dzienniki przepływu dla wybranej przestrzeni nazw. Użytkownicy są odpowiedzialni za aprowizowanie infrastruktury wymaganej do uruchamiania interfejsu użytkownika Hubble i zarządzanie nią.

Najważniejsze korzyści wynikające z obserwacji sieci kontenerów

  • CNI-Agnostic: obsługiwane we wszystkich wariantach usługi Azure CNI, w tym kubenet.

  • Cilium i Non-Cilium: zapewnia jednolite, bezproblemowe środowisko zarówno na płaszczyznach danych Cilium, jak i bez cilium.

  • Możliwość obserwacji sieci opartej na eBPF: wykorzystuje eBPF (rozszerzony filtr pakietów Berkeley) w celu zapewnienia wydajności i skalowalności w celu zidentyfikowania potencjalnych wąskich gardeł i problemów z przeciążeniem przed ich wpływem na wydajność aplikacji. Uzyskaj wgląd w kluczowe wskaźniki kondycji sieci, w tym wielkość ruchu, porzucone pakiety i informacje o połączeniu.

  • Szczegółowy wgląd w aktywność sieci: dowiedz się, jak aplikacje komunikują się ze sobą za pośrednictwem szczegółowych dzienników przepływu sieci.

  • Uproszczone opcje magazynowania metryk i wizualizacji: wybierz między:

    • Usługa Azure Managed Prometheus i Grafana: platforma Azure zarządza infrastrukturą i konserwacją, umożliwiając użytkownikom skupienie się na konfigurowaniu metryk i wizualizowania metryk.
    • Bring Your Own (BYO) Prometheus i Grafana: użytkownicy wdrażają i konfigurują własne wystąpienia oraz zarządzają podstawową infrastrukturą.

Metryki

Metryki na poziomie węzła

Następujące metryki są agregowane na węzeł. Wszystkie metryki obejmują etykiety:

  • cluster
  • instance (Nazwa węzła)

W przypadku scenariuszy płaszczyzny danych Cilium funkcja Obserwacja sieci kontenerów udostępnia metryki tylko dla systemu Linux, system Windows nie jest obecnie obsługiwany. Cilium uwidacznia kilka metryk, w tym następujące metryki używane przez funkcję obserwacji sieci kontenerów.

Nazwa metryki opis Dodatkowe etykiety Linux Windows
cilium_forward_count_total Łączna liczba przekazanych pakietów direction
cilium_forward_bytes_total Łączna liczba przekazanych bajtów direction
cilium_drop_count_total Łączna liczba porzuconych pakietów direction, reason
cilium_drop_bytes_total Łączna liczba porzuconych bajtów direction, reason

Metryki na poziomie zasobnika (metryki hubble)

Następujące metryki są agregowane na zasobnik (informacje o węźle są zachowywane). Wszystkie metryki obejmują etykiety:

  • cluster
  • instance (Nazwa węzła)
  • source lub destination

W przypadku ruchu wychodzącego będzie dostępna etykieta source z przestrzenią nazw/nazwą zasobnika źródłowego. W przypadku ruchu przychodzącego zostanie wyświetlona etykieta destination z docelową przestrzenią nazw zasobnika/nazwą.

Nazwa metryki opis Dodatkowe etykiety Linux Windows
hubble_dns_queries_total Łączna liczba żądań DNS według zapytania source lub destination, query( qtypes typ zapytania)
hubble_dns_responses_total Łączna liczba odpowiedzi DNS według zapytania/odpowiedzi source lub destination, query( qtypes typ zapytania), rcode (kod zwrotny), ips_returned (liczba adresów IP)
hubble_drop_total Łączna liczba porzuconych pakietów sourcelub destination, , protocolreason
hubble_tcp_flags_total Łączna liczba pakietów TCP według flagi. source lub destination, flag
hubble_flows_processed_total Łączna liczba przetworzonych przepływów sieciowych (ruch L4/L7) sourcelub destination, protocol, verdict, , , typesubtype

Ograniczenia

  • Metryki na poziomie zasobnika są dostępne tylko w systemie Linux.
  • Płaszczyzna danych Cilium jest obsługiwana od platformy Kubernetes w wersji 1.29.
  • Etykiety metryk mogą mieć subtelne różnice między klastrami Cilium i non-Cilium.
  • W przypadku klastrów opartych na cilium metryki DNS są dostępne tylko dla zasobników, które mają skonfigurowane zasady sieci cilium (CNP) w swoich klastrach.
  • Dzienniki przepływu nie są obecnie dostępne w chmurze rozerwanej powietrzem.
  • Przekaźnik Hubble może ulec awarii, jeśli jeden z agentów węzła hubble ulegnie awarii i może spowodować przerwy w działaniu interfejsu wiersza polecenia hubble'a.

Skaluj

Zarządzane przez platformę Azure rozwiązania Prometheus i Grafana nakładają ograniczenia skali specyficzne dla usługi. Aby uzyskać więcej informacji, zobacz Scrape Prometheus metrics at scale in Azure Monitor (Złomowanie metryk Prometheus na dużą skalę w usłudze Azure Monitor).

Cennik

Ważne

Advanced Container Networking Services to płatna oferta. Aby uzyskać więcej informacji na temat cen, zobacz Advanced Container Networking Services — cennik.

Następne kroki