Udostępnij za pomocą


Sieciowanie usługi Azure Database for PostgreSQL za pomocą usługi Private Link

Usługa Azure Private Link pozwala tworzyć prywatne punkty końcowe dla instancji elastycznego serwera Azure Database for PostgreSQL, aby włączyć je do sieci wirtualnej. Ta funkcja jest zalecaną alternatywą dla możliwości sieci oferowanych przez integrację sieci wirtualnej.

Dzięki usłudze Private Link ruch między siecią wirtualną a usługą przechodzi przez sieć szkieletową firmy Microsoft. Udostępnianie usługi w publicznej sieci Internet nie jest już konieczne. Możesz również utworzyć własną usługę łącza prywatnego w sieci wirtualnej i dostarczyć ją do klientów. Konfiguracja i zużycie przy użyciu usługi Private Link jest spójna w usługach PaaS platformy Azure, należących do klienta i udostępnionych usługach partnerskich.

Usługa Private Link jest dostępna dla użytkowników za pośrednictwem dwóch typów zasobów platformy Azure:

  • Prywatne punkty końcowe (Microsoft.Network/PrivateEndpoints)
  • Usługi Private Link (Microsoft.Network/PrivateLinkServices)

Prywatne punkty końcowe

Prywatny punkt końcowy dodaje interfejs sieciowy do zasobu, zapewniając mu prywatny adres IP przypisany z sieci wirtualnej. Po zastosowaniu można komunikować się z tym zasobem wyłącznie za pośrednictwem sieci wirtualnej. Aby uzyskać listę usług PaaS, które obsługują funkcje usługi Private Link, zapoznaj się z dokumentacją usługi Private Link. Prywatny punkt końcowy to prywatny adres IP w określonej sieci wirtualnej i podsieci.

Wiele prywatnych punktów końcowych w różnych sieciach wirtualnych lub podsieciach, nawet jeśli mają nakładające się przestrzenie adresowe, mogą odwoływać się do tego samego wystąpienia usługi publicznej.

Usługa Private Link zapewnia następujące korzyści:

  • Prywatnie uzyskaj dostęp do usług na platformie Azure: Połącz swoją sieć wirtualną, używając prywatnych punktów końcowych, z wszystkimi usługami, które mogą być używane jako składniki aplikacji na platformie Azure. Dostawcy usług mogą renderować swoje usługi we własnej sieci wirtualnej. Konsumenci mogą uzyskiwać dostęp do tych usług w lokalnej sieci wirtualnej. Platforma Private Link obsługuje łączność między konsumentami i usługami za pośrednictwem sieci szkieletowej platformy Azure.
  • Sieci lokalne i połączone: dostęp do usług działających na platformie Azure ze środowiska lokalnego za pośrednictwem prywatnego peeringu usługi Azure ExpressRoute, tuneli wirtualnej sieci prywatnej (VPN) i połączonych sieci wirtualnych przy użyciu prywatnych punktów końcowych. Nie ma potrzeby konfigurowania komunikacji równorzędnej firmy Microsoft usługi ExpressRoute ani przechodzenia przez Internet w celu uzyskania dostępu do usługi. Usługa Private Link zapewnia bezpieczny sposób migrowania obciążeń na platformę Azure.
  • Ochrona przed wyciekiem danych: Prywatny punkt końcowy jest przypisany do instancji zasobu PaaS, a nie całej usługi. Konsumenci mogą łączyć się tylko z określonym zasobem. Dostęp do dowolnego innego zasobu w usłudze jest blokowany. Ten mechanizm zapewnia ochronę przed zagrożeniami wyciekami danych.
  • Globalny zasięg: Łącz się prywatnie z usługami działającymi w innych regionach: Sieć wirtualna konsumenta może znajdować się w regionie A. Może łączyć się z usługami korzystającymi z łącza Private Link w regionie B.

Klienci mogą łączyć się z prywatnym punktem końcowym z:

Klienci mogą również łączyć się ze środowiska lokalnego przy użyciu usługi ExpressRoute, prywatnego peeringu lub tunelowania sieci VPN. Poniższy uproszczony diagram przedstawia typowe przypadki użycia.

Diagram przedstawiający sposób działania usługi Private Link z prywatnymi punktami końcowymi.

Oto macierz dostępności między funkcjami dla prywatnych punktów końcowych w wystąpieniu serwera elastycznego usługi Azure Database for PostgreSQL.

Funkcja Dostępność Uwagi
Wysoka dostępność Tak Działa zgodnie z projektem.
Replika do odczytu Tak Działa zgodnie z projektem.
Replika do odczytu z punktami końcowymi wirtualnymi Tak Działa zgodnie z projektem.
Przywracanie do punktu w czasie Tak Działa zgodnie z projektem.
Zezwalanie także na dostęp publiczny/internetowy za pomocą reguł zapory Tak Działa zgodnie z projektem.
Aktualizacja wersji głównej Tak Działa zgodnie z projektem.
Uwierzytelnianie Microsoft Entra Tak Działa zgodnie z projektem.
Buforowanie połączeń za pomocą narzędzia PGBouncer Tak Działa zgodnie z projektem.
Prywatny punkt końcowy DNS Tak Działa zgodnie z założeniami i dokumentami.
Szyfrowanie przy użyciu kluczy zarządzanych przez klienta Tak Działa zgodnie z projektem.

Prywatne punkty końcowe można skonfigurować tylko dla serwerów utworzonych po wprowadzeniu obsługi usługi Private Link w usłudze Azure Database for PostgreSQL i których tryb sieci został skonfigurowany tak, aby nie korzystał z integracji sieci wirtualnej, ale z dostępem publicznym.

Serwery utworzone przed tą datą, których tryb sieci został skonfigurowany tak, aby korzystały z dostępu publicznego, zamiast z integracji z siecią wirtualną, nie obsługują jeszcze tworzenia prywatnych punktów końcowych. Korzystanie z prywatnych punktów końcowych nie jest obecnie obsługiwane na serwerach utworzonych z integracją sieci wirtualnej.

Nawiązywanie połączenia z maszyny wirtualnej platformy Azure w równorzędnej sieci wirtualnej

Skonfiguruj peering sieci wirtualnych, aby nawiązać łączność z elastycznym wystąpieniem serwera usługi Azure Database for PostgreSQL z maszyny wirtualnej w równorzędnej sieci wirtualnej platformy Azure.

Nawiązywanie połączenia z maszyny wirtualnej platformy Azure w środowisku sieci-sieć

Skonfiguruj połączenie bramy sieci VPN typu sieć-sieć, aby nawiązać łączność z elastycznym wystąpieniem serwera usługi Azure Database for PostgreSQL z maszyny wirtualnej platformy Azure znajdującej się w innym regionie lub subskrypcjach.

Nawiązywanie połączenia ze środowiska lokalnego za pośrednictwem sieci VPN

Aby nawiązać łączność z lokalnego środowiska do instancji elastycznego serwera Azure Database for PostgreSQL, wybierz i zaimplementuj jedną z opcji:

W przypadku korzystania z prywatnych punktów końcowych ruch do zasobu łącza prywatnego jest zabezpieczony. Platforma weryfikuje połączenia sieciowe, zezwalając tylko na te połączenia, które docierają do określonego zasobu łącza prywatnego. Aby uzyskać dostęp do większej liczby podźródł w ramach tej samej usługi platformy Azure, wymagane są więcej prywatnych punktów końcowych z odpowiednimi miejscami docelowymi. Na przykład w przypadku usługi Azure Storage potrzebujesz oddzielnych prywatnych punktów końcowych, aby uzyskać dostęp do zasobów pomocniczych dla plików i obiektów blob.

Prywatne punkty końcowe zapewniają prywatnie dostępny adres IP dla usługi platformy Azure, ale niekoniecznie ograniczają do niej dostęp do sieci publicznej. Wszystkie inne usługi platformy Azure wymagają jednak innej kontroli dostępu. Te mechanizmy kontroli zapewniają dodatkową warstwę zabezpieczeń sieci dla zasobów, zapewniając ochronę, która pomaga zapobiegać dostępowi do usługi platformy Azure skojarzonej z zasobem łącza prywatnego.

Prywatne punkty końcowe obsługują zasady sieciowe. Zasady sieciowe umożliwiają obsługę sieciowych grup zabezpieczeń, tras zdefiniowanych przez użytkownika i grup zabezpieczeń aplikacji (ASG). Aby uzyskać więcej informacji na temat włączania zasad sieci dla prywatnego punktu końcowego, zobacz Zarządzanie zasadami sieci dla prywatnych punktów końcowych. Aby użyć usługi ASG z prywatnym punktem końcowym, zobacz Konfigurowanie grupy zabezpieczeń aplikacji z prywatnym punktem końcowym.

W przypadku korzystania z prywatnego punktu końcowego należy nawiązać połączenie z tą samą usługą platformy Azure, ale używać prywatnego adresu IP punktu końcowego. Połączenie intymnego punktu końcowego wymaga oddzielnych ustawień systemu nazw domen (DNS), aby rozpoznać prywatny adres IP jako nazwę zasobu.

Prywatna strefa DNS strefy zapewniają rozpoznawanie nazw domen w sieci wirtualnej bez niestandardowego rozwiązania DNS. Prywatne strefy DNS można połączyć z każdą siecią wirtualną, aby zapewnić usługi DNS tej sieci.

Prywatna strefa DNS strefy zapewniają oddzielne nazwy stref DNS dla każdej usługi platformy Azure. Jeśli na przykład skonfigurowano strefę Prywatna strefa DNS dla usługi obiektów blob konta magazynu na poprzedniej ilustracji, nazwa strefy DNS to privatelink.blob.core.windows.net. Zapoznaj się z dokumentacją firmy Microsoft, aby wyświetlić więcej nazw prywatnych stref DNS dla wszystkich usług platformy Azure.

Uwaga

Konfiguracje strefy prywatnego punktu końcowego Prywatna strefa DNS są generowane automatycznie tylko wtedy, gdy używasz zalecanego schematu nazewnictwa: privatelink.postgres.database.azure.com. W przypadku nowo aprowizowania dostępu publicznego (nie zintegrowanego z siecią wirtualną) nastąpiła zmiana układu DNS. Nazwa FQDN serwera staje się teraz rekordem CNAME w postaci servername.postgres.database.azure.com , która wskazuje rekord A w jednym z następujących formatów:

  1. Jeśli serwer ma prywatny punkt końcowy z domyślną prywatną strefą DNS połączoną, rekord A używa następującego formatu: server_name.privatelink.postgres.database.azure.com.
  2. Jeśli serwer nie ma prywatnych punktów końcowych, rekord A używa tego formatu server_name.rs-<15 semi-random bytes>.postgres.database.azure.com.

Hybrydowa usługa DNS dla platformy Azure i zasobów lokalnych

DNS to krytyczny element projektu w ogólnej architekturze landing zone. Niektóre organizacje mogą chcieć korzystać z istniejących inwestycji w system DNS. Inni mogą chcieć przyjąć natywne możliwości platformy Azure dla wszystkich swoich potrzeb DNS.

Do rozpoznawania nazw między środowiskami lokalnymi można używać Prywatnego Resolvera DNS platformy Azure razem z Prywatnymi strefami DNS platformy Azure. Prywatny program rozpoznawania nazw DNS może przekazać żądanie DNS do innego serwera DNS, a także udostępnia adres IP, który może być używany przez zewnętrzny serwer DNS do przekazywania żądań. Dlatego zewnętrzne lokalne serwery DNS mogą rozpoznawać nazwy znajdujące się w strefie Prywatna strefa DNS.

Aby uzyskać więcej informacji na temat używania prywatnego rozpoznawania nazw DNS z lokalnym usługą przesyłania dalej DNS w celu przekazywania ruchu DNS do usługi Azure DNS, zobacz:

Opisane rozwiązania rozszerzają sieć lokalną, która ma już rozwiązanie DNS, aby rozwiązać problemy z zasobami w Azure.Microsoft architekturze.

Prywatne strefy DNS są zazwyczaj hostowane centralnie w tej samej subskrypcji Azure, w której wdrażana jest sieć wirtualna hubu. Ta centralna praktyka hostingu jest oparta na rozpoznawaniu nazw DNS między lokalnymi i innych potrzebach centralnego rozpoznawania nazw DNS, takich jak Microsoft Entra. W większości przypadków tylko administratorzy sieci i tożsamości mają uprawnienia do zarządzania rekordami DNS w strefach.

W takiej architekturze konfigurowane są następujące składniki:

  • Lokalne serwery DNS mają skonfigurowanych warunkowych przekazujących dla każdej publicznej strefy DNS prywatnego punktu końcowego, wskazujących na prywatnego rozwiązującego DNS hostowanego w sieci wirtualnej koncentratora.
  • Prywatny resolver DNS hostowany w sieci wirtualnej koncentratora używa dostarczonego przez Azure serwera DNS (168.63.129.16) jako przesyłacza.
  • Sieć wirtualna centrum musi być połączona z nazwami prywatnych stref DNS dla usług platformy Azure (takich jak privatelink.postgres.database.azure.com, dla elastycznego wystąpienia serwera Azure Database for PostgreSQL).
  • Wszystkie sieci wirtualne platformy Azure używają Rozwiązania DNS prywatnej hostowanego w sieci wirtualnej koncentratora.
  • Prywatny program rozpoznawania nazw DNS nie jest autorytatywny dla domen firmowych klienta, ponieważ jest to tylko usługa przesyłania dalej (na przykład nazwy domen firmy Microsoft Entra), powinna mieć wychodzące usługi przesyłania dalej punktów końcowych do domen firmowych klienta, wskazując na lokalne serwery DNS lub serwery DNS wdrożone na platformie Azure, które są autorytatywne dla takich stref.

Domyślnie zasady sieci są wyłączone dla podsieci w sieci wirtualnej. Aby korzystać z zasad sieciowych, takich jak trasy zdefiniowane przez użytkownika i sieciowe grupy zabezpieczeń, należy włączyć obsługę zasad sieciowych dla podsieci. To ustawienie ma zastosowanie tylko do prywatnych punktów końcowych w podsieci. To ustawienie ma wpływ na wszystkie prywatne punkty końcowe w podsieci. W przypadku innych zasobów w podsieci dostęp jest kontrolowany na podstawie reguł bezpieczeństwa w Grupie Zabezpieczeń Sieci.

Można włączyć zasady sieciowe tylko dla NSG, tylko dla UDR lub dla obu. Aby uzyskać więcej informacji, zobacz Zarządzanie zasadami sieci dla prywatnych punktów końcowych.

Ograniczenia dotyczące sieciowych grup zabezpieczeń i prywatnych punktów końcowych są wymienione w artykule Co to jest prywatny punkt końcowy?.

Ważne

Ochrona przed wyciekiem danych: prywatny punkt końcowy jest mapowany na wystąpienie zasobu PaaS zamiast całej usługi. Konsumenci mogą łączyć się tylko z określonym zasobem. Dostęp do dowolnego innego zasobu w usłudze jest blokowany. Ten mechanizm zapewnia podstawową ochronę przed zagrożeniami wyciekami danych.

Następujące sytuacje i wyniki są możliwe w przypadku używania usługi Private Link w połączeniu z regułami zapory:

  • Jeśli nie skonfigurujesz żadnych reguł zapory, to zgodnie z domyślnymi ustawieniami, ruch nie będzie miał dostępu do wystąpienia serwera elastycznego usługi Azure Database for PostgreSQL.

  • W przypadku skonfigurowania ruchu publicznego lub punktu końcowego usługi i utworzenia prywatnych punktów końcowych różne typy ruchu przychodzącego są autoryzowane przez odpowiedni typ reguły zapory.

  • Jeśli nie skonfigurujesz żadnego ruchu publicznego ani punktu końcowego usługi i utworzysz prywatne punkty końcowe, wystąpienie serwera elastycznego usługi Azure Database for PostgreSQL będzie dostępne tylko za pośrednictwem prywatnych punktów końcowych. Jeśli nie skonfigurujesz ruchu publicznego ani punktu końcowego usługi, po odrzuceniu lub usunięciu wszystkich zatwierdzonych prywatnych punktów końcowych żaden ruch nie może uzyskać dostępu do wystąpienia serwera elastycznego usługi Azure Database for PostgreSQL.

Rozwiązywanie problemów

W przypadku korzystania z punktów końcowych usługi Private Link z elastycznym wystąpieniem serwera usługi Azure Database for PostgreSQL mogą wystąpić problemy z łącznością z powodu błędów konfiguracji lub ograniczeń sieci. Aby rozwiązać te problemy, sprawdź konfigurację prywatnych punktów końcowych, konfiguracji DNS, sieciowych grup zabezpieczeń i tabel tras. Systematyczne rozwiązywanie tych obszarów może pomóc w zidentyfikowaniu i rozwiązaniu typowych problemów, zapewniając bezproblemową łączność i bezpieczny dostęp do bazy danych.

Problemy z łącznością z siecią opartą na prywatnym punkcie końcowym

Jeśli masz problemy z łącznością podczas korzystania z prywatnej sieci opartej na punkcie końcowym, sprawdź następujące obszary:

  • Sprawdź przypisania adresów IP: sprawdź, czy prywatny punkt końcowy ma przypisany prawidłowy adres IP i czy nie ma konfliktów z innymi zasobami. Aby uzyskać więcej informacji na temat prywatnych punktów końcowych i adresów IP, zobacz Zarządzanie prywatnymi punktami końcowymi platformy Azure.
  • Sprawdź NSG: Przejrzyj reguły NSG dla podsieci prywatnego punktu końcowego, aby upewnić się, że wymagany ruch jest dozwolony i że nie występują reguły powodujące konflikt. Aby uzyskać więcej informacji na temat sieciowych grup zabezpieczeń, zobacz Sieciowe grupy zabezpieczeń.
  • Zweryfikuj konfigurację tabeli tras: upewnij się, że tabele tras skojarzone z podsiecią prywatnego punktu końcowego i połączone zasoby są prawidłowo skonfigurowane przy użyciu odpowiednich tras.
  • Monitorowanie sieci i diagnostyka: użyj usługi Azure Network Watcher do monitorowania i diagnozowania ruchu sieciowego przy użyciu narzędzi takich jak Monitor połączenia lub przechwytywanie pakietów. Aby uzyskać więcej informacji na temat diagnostyki sieci, zobacz Co to jest usługa Azure Network Watcher?.

Więcej informacji na temat rozwiązywania problemów z prywatnymi punktami końcowymi znajduje się również w artykule Rozwiązywanie problemów z łącznością z prywatnym punktem końcowym platformy Azure.

Rozwiązywanie DNS w sieci opartej na prywatnym punkcie końcowym

Jeśli występują problemy z rozpoznawaniem nazw DNS podczas korzystania z sieci opartej na prywatnym punkcie końcowym, sprawdź następujące obszary:

  • Zweryfikuj rozpoznawanie nazw DNS: sprawdź, czy serwer DNS lub usługa używana przez prywatny punkt końcowy i połączone zasoby działają prawidłowo. Upewnij się, że ustawienia DNS prywatnego punktu końcowego są dokładne. Aby uzyskać więcej informacji na temat prywatnych punktów końcowych i ustawień strefy DNS, zobacz Wartości strefy prywatnego punktu końcowego platformy Azure Prywatna strefa DNS.
  • Wyczyść pamięć podręczną DNS: wyczyść pamięć podręczną DNS na prywatnym punkcie końcowym lub komputerze klienckim, aby upewnić się, że pobrano najnowsze informacje DNS i uniknąć niespójnych błędów.
  • Analizowanie dzienników DNS: Przejrzyj dzienniki DNS pod kątem komunikatów o błędach lub nietypowych wzorców, takich jak błędy zapytań DNS, błędy serwera lub przekroczenia limitu czasu. Aby uzyskać więcej informacji na temat metryk DNS, zobacz Metryki i alerty usługi Azure DNS.

Ograniczenia i rozważania

  • Prywatne punkty końcowe można skonfigurować tylko dla serwerów utworzonych po wprowadzeniu usługi Private Link. Serwery korzystające z integracji z siecią wirtualną nie kwalifikują się do konfiguracji prywatnego punktu końcowego.

  • Liczba prywatnych punktów końcowych nie jest ograniczona przez samą usługę bazy danych, ale przez ograniczenia sieci platformy Azure — w szczególności liczbę prywatnych punktów końcowych, które można wstrzyknąć do danej podsieci w sieci wirtualnej 3.

  • Maszyny wirtualne mogą łączyć się z bazą danych za pośrednictwem prywatnych punktów końcowych, pod warunkiem, że są one poprawnie skonfigurowane w tej samej sieci wirtualnej lub mają odpowiedni routing.