Rozszerzone dzienniki ruchu sieciowego

Important

Ta funkcja jest dostępna w prywatnej wersji zapoznawczej. Aby ją wypróbować, skontaktuj się z osobą kontaktową usługi Azure Databricks.

Rozszerzone dzienniki ruchu sieciowego rejestrują wychodzący ruch sieciowy z bezserwerowych zasobów obliczeniowych Azure Databricks. Domyślnie systemowa tabela zdarzeń dostępu do sieci wychodzącej rejestruje tylko żądania, które odrzucają mechanizmy kontroli ruchu wychodzącego dla środowiska serverless. Dzięki rozszerzonym logom ruchu sieciowego rejestruje także dozwolone żądania, dzięki czemu możesz zobaczyć, gdzie łączą się twoje obciążenia bezserwerowe, i rozwiązywać problemy z łącznością.

Rozszerzone dzienniki ruchu sieciowego dodają także tabelę logów przepływu, która rejestruje, ile danych bezserwerowe zasoby obliczeniowe wysyłają i odbierają z każdego docelowego adresu IP. Obie możliwości wykorzystują następujące tabele systemowe:

Capability Tabela systemowa Description
Dozwolone zdarzenia dostępu do sieci wychodzącej system.access.outbound_network Dodaje do istniejącej tabeli żądań odrzuconych dozwolone żądania wychodzące.
Dzienniki przepływu ruchu wychodzącego system.access.outbound_traffic Rejestruje bajty wysyłane i odbierane dla każdego docelowego adresu IP, agregowane w jednominutowych odstępach.

Dzienniki przepływu ruchu wychodzącego rejestrują tylko ruch kierowany przez bramę prywatnej sieci.

Aby wysyłać zapytania do logów, zobacz Wysyłanie zapytań do rozszerzonych dzienników ruchu sieciowego.

Przypadki użycia

Wykorzystaj rozszerzone dzienniki ruchu sieciowego, aby:

  • Zbadaj aktywność sieciową: Sprawdź, z jakimi miejscami docelowymi łączyły się Twoje obciążenia bezserwerowe, kiedy i z którego obszaru roboczego.
  • Doprecyzuj polityki sieciowe: Znajdź miejsca docelowe, do których rzadko się uzyskuje dostęp, i zdecyduj, czy usunąć je z list dozwolonego ruchu wychodzącego w środowisku serverless.
  • Rozwiązywanie problemów z łącznością: Ustal, czy bezserwerowe mechanizmy kontroli ruchu wychodzącego zezwoliły na żądanie, czy je odrzuciły.
  • Zbadaj koszty sieci: Zidentyfikuj lokalizacje międzyregionalne, internetowe i prywatne, do których uzyskują dostęp obciążenia bezserwerowe.
  • Optymalizuj łączność z magazynem danych: Znajdź często używane lokalizacje magazynu danych, które mogą skorzystać z prywatnej łączności lub z tego, że znajdują się w tym samym regionie co Twoje obciążenia.
  • Mierz wolumeny ruchu: Sprawdź, ile danych przetwarzanie bezserwerowe wysyła i odbiera do każdego miejsca docelowego przez bramę sieci prywatnej.
  • Wykrywaj nietypową aktywność: Znajdź lokalizacje docelowe o niespodziewanie dużym natężeniu ruchu.

Jak to działa

Zdarzenia dostępu do sieci dozwolone

Rozszerzone dzienniki ruchu sieciowego dodają zdarzenia ALLOWED do istniejącej tabeli system.access.outbound_network. Ta tabela dokumentuje zdarzenia dostępu do sieci wychodzącej z obciążeń bezserwerowych, w tym magazynów SQL, zadań, potoków Lakeflow, aplikacji Databricks oraz punktów końcowych Model Serving. Dozwolone zdarzenia obejmują żądania do pamięci masowej w chmurze, miejsc docelowych w internecie oraz zasobów dostępnych przez prywatną łączność. Pełny schemat tabeli można znaleźć w Dokumentacji tabeli systemowej zdarzeń dostępu do sieci.

Kolumna access_type wskazuje wynik każdego zdarzenia:

Value Description
ALLOWED Ruch wychodzący był dozwolony. Dostępne tylko z rozszerzonymi logami ruchu sieciowego.
DROP Dostęp do sieci wychodzącej został zablokowany przez kontrole ruchu wychodzącego w środowisku serverless w trybie wymuszonym.
DRY_RUN_DENIAL Wychodzący ruch sieciowy zostałby zablokowany przez bezserwerowe mechanizmy kontroli ruchu wychodzącego, ale był dozwolony, ponieważ polityka była w trybie testowym.

Wartości access_type i destination_type rejestrowane dla żądania zależą od miejsca docelowego oraz trybu zasad ruchu wychodzącego dla środowiska bezserwerowego:

Żądanie sieciowe Nieograniczony ruch wychodzący Tryb testowy Tryb wymuszony
Dozwolony dostęp do pamięci masowej ALLOWED / DNS Niezalogowany ALLOWED / STORAGE
Dostęp do magazynu danych, który narusza politykę Nie dotyczy DRY_RUN_DENIAL / DNS DROP / STORAGE
Dozwolony dostęp do zasobów VNet ALLOWED / DNS ALLOWED / DNS ALLOWED / DNS
Dostęp do zasobów VNet, który narusza zasady Nie dotyczy DRY_RUN_DENIAL / DNS DROP / DNS
Dozwolony dostęp do internetu ALLOWED / DNS ALLOWED / DNS ALLOWED / DNS
Dostęp do Internetu niezgodny z zasadami Nie dotyczy DRY_RUN_DENIAL / DNS DROP / DNS

W przypadku dozwolonych zdarzeń element destination zawiera nazwę domeny lub nazwę hosta magazynu. Dla dozwolonych zdarzeń STORAGE element destination zawiera nazwę hosta i ścieżkę pamięci masowej. Rozpoznane docelowe adresy IP znajdują się w dns_event.rdata lub storage_event.rdata. Te pola są puste dla zdarzeń odrzuconych.

Dzienniki przepływu ruchu wychodzącego

Tabela rejestruje system.access.outbound_traffic agregowane wolumeny ruchu, a nie pojedyncze żądania. Azure Databricks grupuje ruch w stałe jednominutowe odstępy, które zaczynają się i kończą na granicy minuty. W każdym interale ruch z tym samym obszarem roboczym, adresem IP docelowym i metodą połączenia jest łączony w jeden rekord, sumując bajty wysyłane i odebrane.

Na przykład ruch między 12:05:00 a 12:06:00 generuje rekord z period_start_time = 12:05:00 i period_end_time = 12:06:00. Godzina rozpoczęcia jest wliczana, a czas zakończenia nie jest wliczany. Te znaczniki czasowe oznaczają granice przedziałów, a nie czasy pierwszego i ostatniego pakietu. Interwały bez ruchu nie generują rekordów.

Tabela system.access.outbound_traffic ma następujący schemat:

Column Typ danych Description
event_id ciąg Unikalny identyfikator dla zagregowanego rekordu ruchu.
account_id ciąg ID konta Azure Databricks, z którego pochodził ruch.
workspace_id ciąg ID przestrzeni roboczej, z której pochodził ruch.
destination_ip ciąg Docelowy adres IP.
received_bytes bigint Łączna liczba bajtów otrzymanych przez bezserwerowe środowisko obliczeniowe w tym interwale.
sent_bytes bigint Łączna liczba bajtów przesyłanych przez bezserwerowe zasoby obliczeniowe w tym interwale.
connection_type ciąg Rodzaj używanej łączności. Wartość to PRIVATE.
connection_method ciąg Zastosowana metoda łączności. Wartość to PRIVATE_NETWORK_GATEWAY.
period_start_time sygnatura czasowa Włącznie z początkiem jednominutowego przedziału.
period_end_time sygnatura czasowa Koniec niewliczany jednominutowego przedziału.

Jak tabele się ze sobą łączą

system.access.outbound_network Informuje o docelowej nazwie hosta lub miejscu przechowywania żądania. system.access.outbound_traffic informuje o docelowym adresie IP, metodzie połączenia oraz o liczbie przesłanych bajtów.

Aby je skorelować, dopasuj ID konta, ID przestrzeni roboczej oraz ustalony docelowy adres IP i sprawdź, czy zdarzenie dostępu event_time mieści się w interwale dziennika przepływu. Obie tabele mają niezależne event_id wartości, więc nie łącz na event_id.

Te dopasowania to korelacje oparte na adresie IP i czasie. Nie łączą zdarzenia dostępu z konkretnym połączeniem sieciowym. Gdy kilka nazw hostów rozwiązuje się na ten sam adres IP, każda nazwa hosta odpowiada tym samym rekordom przepływu.

Limitations

Rozszerzone dzienniki ruchu sieciowego mają następujące ograniczenia:

  • Dozwolone zdarzenia nie są rejestrowane przy zewnętrznym dostępie do modelu z punktów końcowych Model Serving.
  • Dozwolone zdarzenia nie są rejestrowane przy dostępie do pamięci z przestrzeni roboczych, których bezserwerowe mechanizmy kontroli ruchu wychodzącego są w trybie próbnym.
  • Dozwolone zdarzenia nie są rejestrowane w przypadku dostępu do wewnętrznej pamięci masowej obszaru roboczego, takiej jak artefakty MLflow i dbt.
  • Dozwolone zdarzenia nie są rejestrowane podczas dostępu do pamięci dostawcy OpenSharing.
  • Dozwolony ruch z obciążeń trwających krócej niż około minuty jest mniej prawdopodobny do rejestrowania, zwłaszcza w przypadku zaplanowanych, nieinteraktywnych obciążeń oraz w przestrzeniach roboczych z nieograniczonymi politykami wyjścia.
  • Dzienniki przepływu ruchu wychodzącego rejestrują tylko ruch kierowany przez bramę prywatnej sieci. Ruch korzystający z innych prywatnych łączności lub publicznego dostępu do internetu nie jest rejestrowany.
  • Dzienniki ruchu wychodzącego nie rejestrują ruchu z Agent Bricks, Unity Gateway ani folderów Git.

Te ograniczenia nie wpływają na sposób egzekwowania kontroli ruchu wychodzącego w środowisku serverless ani na sposób rejestrowania odrzuconych żądań.

Często zadawane pytania

Poniższe pytania dotyczą typowych zachowań, które można zobaczyć w rozszerzonych dziennikach ruchu sieciowego.

Czy potrzebuję bezserwerowych mechanizmów kontroli ruchu wychodzącego, aby korzystać z rozszerzonych logów ruchu sieciowego?

No. Dozwolone zdarzenia dostępu do sieci wychodzącej są również rejestrowane dla przestrzeni roboczych z nieograniczonymi bezserwerowymi politykami ruchu wychodzącego.

Dlaczego zdarzenia dostępu do sieci pojawiają się po zakończeniu obciążenia?

Azure Databricks może nadal korzystać z pamięci masowej po zakończeniu obciążenia, na przykład aby utrzymywać logi Delty lub metadane. Te żądania mogą generować zdarzenia dostępu do sieci, gdy nie są uruchomione żadne obciążenia użytkownika. Zdarzenia zatrzymują się po zakończeniu bezserwerowej instancji obliczeniowej.

Dlaczego widzę nieznane nazwy hostów w logach dostępu do sieci?

Niektóre miejsca docelowe dzienników to zasoby zarządzane przez Azure Databricks używane do operacji platformy:

Wzór nazw hosta Purpose
databricks-prewarm-datasets* Poprawia czasy uruchamiania bezserwerowych zasobów obliczeniowych.
dbstorage* Domyślna pamięć masowa usługi Azure Databricks
system-tables* Dostęp do domyślnych przykładowych zbiorów danych.

Jeśli zobaczysz inne nazwy hostów, których nie rozpoznajesz, skontaktuj się ze swoim zespołem kont Azure Databricks.

Jak długo zajmuje pojawienie się dzienników ruchu sieciowego?

Większość zdarzeń dostępu do sieci wychodzącej pojawia się w ciągu 15 minut od żądania. Opóźnienia mogą się różnić, a Azure Databricks nie zapewnia umowy SLA dotyczącej opóźnień dla tych dzienników.

Dlaczego nie mogę znaleźć pasującego dziennika przepływu dla zdarzenia dozwolonego dostępu do sieci?

Dzienniki przepływu rejestrują tylko ruch kierowany przez bramę sieci prywatnej, więc dozwolone żądania korzystające z innej łączności nie mają odpowiadającego log przepływu. Brak flow logu nie oznacza, że żądanie się nie powiodło ani że dane nie zostały przesłane.