Samouczek: jak uzyskać dostęp do lokalnego programu SQL Server z zarządzanej sieci wirtualnej usługi Data Factory przy użyciu prywatnego punktu końcowego
Ten samouczek zawiera instrukcje dotyczące konfigurowania usługi Private Link i uzyskiwania dostępu do lokalnego programu SQL Server z zarządzanej sieci wirtualnej przy użyciu prywatnego punktu końcowego za pomocą witryny Azure Portal. Użycie zarządzanej sieci wirtualnej zapewnia, że ruch do i z lokalnego źródła SQL będzie przechodzić przez własny prywatny punkt końcowy, zapewniając tym samym narażenie na chmurę publiczną z dodatkową warstwą zabezpieczeń i izolacji. Wymagane zasoby wymienione poniżej są niezbędne do obsługi scenariusza.
Uwaga
Rozwiązanie przedstawione w tym artykule opisuje łączność z programem SQL Server, ale można użyć podobnego podejścia do nawiązywania połączenia i wykonywania zapytań dotyczących innych dostępnych łączników lokalnych obsługiwanych w usłudze Azure Data Factory.
Wymagania wstępne
- Subskrypcja platformy Azure. Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.
- Sieć wirtualna Jeśli nie masz sieci wirtualnej, utwórz jedną z następujących opcji Utwórz sieć wirtualną.
- Sieć wirtualna do sieci lokalnej. Utwórz połączenie między siecią wirtualną i siecią lokalną przy użyciu usługi ExpressRoute lub sieci VPN. Jeśli wolisz używać maszyny wirtualnej w chmurze w sieci prywatnej, możesz to zrobić również. Wystarczy utworzyć sieć wirtualną dla maszyn wirtualnych w chmurze i link prywatny do sieci wirtualnej i uzyskać do nich dostęp tak, jakby były to maszyny lokalne w sieci prywatnej, mimo że są hostowane w chmurze.
- Usługa Data Factory z włączoną zarządzaną siecią wirtualną. Jeśli nie masz usługi Data Factory lub zarządzana sieć wirtualna nie jest włączona, utwórz jedną z następujących czynności: Utwórz usługę Data Factory z zarządzaną siecią wirtualną.
Tworzenie podsieci dla zasobów
Użyj portalu, aby utworzyć podsieci w sieci wirtualnej.
Podsieć | opis |
---|---|
podsieć be-subnet | podsieć dla serwerów zaplecza |
podsieć fe | podsieć dla wewnętrznego modułu równoważenia obciążenia w warstwie Standardowa |
pls-subnet | podsieć dla usługi Private Link |
Tworzenie modułu równoważenia obciążenia w warstwie Standardowa
Użyj portalu, aby utworzyć standardowy wewnętrzny moduł równoważenia obciążenia.
W lewej górnej części ekranu wybierz pozycję Utwórz zasób > Moduł równoważenia obciążenia sieci>.
Na karcie Podstawowe na stronie Tworzenie modułu równoważenia obciążenia wprowadź lub wybierz następujące informacje:
Ustawienie Wartość Subskrypcja Wybierz subskrypcję. Grupa zasobów Wybierz swoją grupę zasobów. Nazwisko Wprowadź wartość myLoadBalancer. Region (Region) Wybierz pozycję Wschodnie stany USA. Typ wybierz pozycję Wewnętrzny. SKU Wybierz opcję Standardowa. Sieć wirtualna Wybierz sieć wirtualną. Podsieć Wybierz podsieć fe utworzoną w poprzednim kroku. Przypisanie adresu IP wybierz opcję Dynamiczny. Availability zone Wybierz pozycję Strefowo nadmiarowa. Zaakceptuj wartości domyślne pozostałych ustawień, a następnie wybierz pozycję Przejrzyj i utwórz.
Na karcie Przeglądanie i tworzenie wybierz pozycję Utwórz.
Tworzenie zasobów modułu równoważenia obciążenia
Tworzenie puli zaplecza
Pula adresów zaplecza zawiera adresy IP wirtualnych kart sieciowych połączonych z modułem równoważenia obciążenia.
Utwórz pulę adresów zaplecza myBackendPool , aby uwzględnić maszyny wirtualne na potrzeby równoważenia obciążenia ruchu internetowego.
- Wybierz pozycję Wszystkie usługi w menu po lewej stronie, wybierz pozycję Wszystkie zasoby, a następnie wybierz pozycję myLoadBalancer z listy zasobów.
- W obszarze Ustawienia wybierz pozycję Pule zaplecza, a następnie wybierz pozycję Dodaj.
- Na stronie Dodawanie puli zaplecza jako nazwę wpisz myBackendPool jako nazwę puli zaplecza, a następnie wybierz pozycję Dodaj.
Tworzenie sondy kondycji
Moduł równoważenia obciążenia monitoruje stan aplikacji za pomocą sondy kondycji.
Sonda kondycji dodaje lub usuwa maszyny wirtualne z modułu równoważenia obciążenia na podstawie ich odpowiedzi na kontrole kondycji.
Utwórz sondę kondycji o nazwie myHealthProbe, aby monitorować kondycję maszyn wirtualnych.
Wybierz pozycję Wszystkie usługi w menu po lewej stronie, wybierz pozycję Wszystkie zasoby, a następnie wybierz pozycję myLoadBalancer z listy zasobów.
W obszarze Ustawienia wybierz pozycję Sondy kondycji, a następnie wybierz pozycję Dodaj.
Ustawienie Wartość Nazwisko Wprowadź wartość myHealthProbe. Protokół Wybierz pozycję TCP. Port Wprowadź wartość 22. Interwał Wprowadź wartość 15 dla liczby interwałów w sekundach między próbami sondy. Próg złej kondycji Wybierz wartość 2 dla wartości progowej złej kondycji lub kolejnych niepowodzeń sondy, które muszą wystąpić przed rozważenie złej kondycji maszyny wirtualnej. Pozostaw pozostałe wartości domyślne i wybierz przycisk OK.
Tworzenie reguły modułu równoważenia obciążenia
Reguła modułu równoważenia obciążenia służy do definiowania sposobu dystrybucji ruchu do maszyn wirtualnych. Należy zdefiniować konfigurację adresu IP frontonu dla ruchu przychodzącego i pulę adresów IP zaplecza w celu odbierania ruchu. Port źródłowy i docelowy są zdefiniowane w regule.
W tej sekcji utworzysz regułę modułu równoważenia obciążenia:
Wybierz pozycję Wszystkie usługi w menu po lewej stronie, wybierz pozycję Wszystkie zasoby, a następnie wybierz pozycję myLoadBalancer z listy zasobów.
W obszarze Ustawienia wybierz pozycję Reguły równoważenia obciążenia, a następnie wybierz pozycję Dodaj.
Użyj tych wartości, aby skonfigurować regułę równoważenia obciążenia:
Ustawienie Wartość Nazwisko Wprowadź myRule. Wersja protokołu IP Wybierz pozycję IPv4. Adres IP frontonu Wybierz pozycję LoadBalancerFrontEnd. Protokół Wybierz pozycję TCP. Port Wprowadź wartość 1433. Port zaplecza Wprowadź wartość 1433. Pula zaplecza Wybierz pozycję myBackendPool. Sonda kondycji Wybierz pozycję myHealthProbe. Limit czasu bezczynności (w minutach) Przesuń suwak na 15 minut. Resetowanie protokołu TCP Wybierz opcję Wyłączone. Pozostaw pozostałe wartości domyślne, a następnie wybierz przycisk OK.
Tworzenie usługi łącza prywatnego
W tej sekcji utworzysz usługę Private Link za standardowym modułem równoważenia obciążenia.
W lewej górnej części strony w witrynie Azure Portal wybierz pozycję Utwórz zasób.
Wyszukaj ciąg Private Link w polu Wyszukaj w witrynie Marketplace.
Wybierz pozycję Utwórz.
W obszarze Przegląd w obszarze Centrum usługi Private Link wybierz niebieski przycisk Utwórz usługę łącza prywatnego.
Na karcie Podstawy w obszarze Tworzenie usługi łącza prywatnego wprowadź lub wybierz następujące informacje:
Ustawienie Wartość Szczegóły projektu Subskrypcja Wybierz subskrypcję. Grupa zasobów Wybierz swoją grupę zasobów. Szczegóły wystąpienia Nazwisko Wprowadź wartość myPrivateLinkService. Region (Region) Wybierz pozycję Wschodnie stany USA. Wybierz kartę Ustawienia ruchu wychodzącego lub wybierz pozycję Dalej: ustawienia ruchu wychodzącego w dolnej części strony.
Na karcie Ustawienia ruchu wychodzącego wprowadź lub wybierz następujące informacje:
Ustawienie Wartość Moduł równoważenia obciążenia Wybierz pozycję myLoadBalancer. Adres IP frontonu modułu równoważenia obciążenia Wybierz pozycję LoadBalancerFrontEnd. Źródłowa podsieć translatora adresów sieciowych Wybierz pozycję pls-subnet. Włączanie serwera proxy TCP w wersji 2 Pozostaw wartość domyślną Nie. Ustawienia prywatnego adresu IP Pozostaw ustawienia domyślne. Wybierz kartę Zabezpieczenia dostępu lub wybierz pozycję Dalej: Zabezpieczenia dostępu w dolnej części strony.
Pozostaw wartość domyślną kontroli dostępu opartej na rolach tylko na karcie Zabezpieczenia dostępu.
Wybierz kartę Tagi lub wybierz pozycję Dalej: Tagi w dolnej części strony.
Wybierz kartę Przeglądanie + tworzenie lub wybierz pozycję Dalej: Przejrzyj i utwórz w dolnej części strony.
Wybierz pozycję Utwórz na karcie Przeglądanie i tworzenie .
Tworzenie serwerów zaplecza
W lewym górnym rogu portalu wybierz pozycję Utwórz zasób > Obliczeniowa maszyna wirtualna>.
W obszarze Tworzenie maszyny wirtualnej wpisz lub wybierz wartości na karcie Podstawy :
Ustawienie Wartość Szczegóły projektu Subskrypcja Wybierz subskrypcję platformy Azure. Grupa zasobów Wybierz swoją grupę zasobów. Szczegóły wystąpienia Virtual machine name Wprowadź myVM1. Region (Region) Wybierz pozycję Wschodnie stany USA. Opcje dostępności Wybierz pozycję Strefy dostępności. Availability zone Wybierz pozycję 1. Obraz Wybierz pozycję Ubuntu Server 22.04 LTS. Wystąpienie usługi Azure Spot Wybierz opcję Nie. Rozmiar Wybierz pozycję Rozmiar maszyny wirtualnej lub ustaw ustawienie domyślne. Konto administratora Username Wprowadź nazwę użytkownika. Źródło klucza publicznego SSH Generuj nową parę kluczy. Nazwa pary kluczy mySSHKey. Reguły portów przychodzących Publiczne porty ruchu przychodzącego Brak Wybierz kartę Sieć lub wybierz pozycję Dalej: Dyski, a następnie pozycję Dalej: Sieć.
Na karcie Sieć wybierz lub wprowadź:
Ustawienie Wartość Interfejs sieciowy Sieć wirtualna Wybierz sieć wirtualną. Podsieć podsieć be-subnet. Publiczny adres IP Wybierz pozycję Brak. Sieciowa grupa zabezpieczeń karty sieciowej Wybierz pozycję Brak. Równoważenie obciążenia Czy umieścić tę maszynę wirtualną za istniejącym rozwiązaniem równoważenia obciążenia? Wybierz opcję Tak. Ustawienia równoważenia obciążenia Opcje równoważenia obciążenia Wybierz pozycję Równoważenie obciążenia platformy Azure. Wybieranie modułu równoważenia obciążenia Wybierz pozycję myLoadBalancer. Wybieranie puli zaplecza Wybierz pozycję myBackendPool. Wybierz pozycję Przejrzyj i utwórz.
Przejrzyj ustawienia, a następnie wybierz pozycję Utwórz.
Możesz powtórzyć krok od 1 do 6, aby mieć więcej niż 1 maszynę wirtualną serwera zaplecza dla wysokiej dostępności.
Tworzenie reguły przekazywania do punktu końcowego
Zaloguj się i skopiuj skrypt ip_fwd.sh do maszyn wirtualnych serwera zaplecza.
Uruchom skrypt z następującymi opcjami:
sudo ./ip_fwd.sh -i eth0 -f 1433 -a <FQDN/IP> -b 1433
Ustaw symbol zastępczy
<FQDN/IP>
jako docelowy adres IP programu SQL Server.Uwaga
Nazwa FQDN nie działa w przypadku lokalnego programu SQL Server, chyba że dodasz rekord w strefie usługi Azure DNS.
Uruchom następujące polecenie i sprawdź tabele iptable na maszynach wirtualnych serwera zaplecza. Jeden rekord można wyświetlić w tabelach iptable z docelowym adresem IP.
sudo iptables -t nat -v -L PREROUTING -n --line-number**
Uwaga
Jeśli masz więcej niż jeden program SQL Server lub źródła danych, musisz zdefiniować wiele reguł modułu równoważenia obciążenia i rekordów tabeli adresów IP z różnymi portami. W przeciwnym razie wystąpi jakiś konflikt. Na przykład:
Port w regule modułu równoważenia obciążenia Port zaplecza w regule równoważenia obciążenia Polecenie uruchamiane na maszynie wirtualnej serwera zaplecza SQL Server 1 1433 1433 sudo ./ip_fwd.sh -i eth0 -f 1433 -a <FQDN/IP> -b 1433 SQL Server 2 1434 1434 sudo ./ip_fwd.sh -i eth0 -f 1434 -a <FQDN/IP> -b 1433 Uwaga
Należy pamiętać, że konfiguracja maszyny wirtualnej nie jest trwała. Oznacza to, że za każdym razem, gdy maszyna wirtualna zostanie ponownie uruchomiona, będzie wymagać ponownej konfiguracji.
Tworzenie prywatnego punktu końcowego do usługi Private Link
Wybierz pozycję Wszystkie usługi w menu po lewej stronie, wybierz pozycję Wszystkie zasoby, a następnie wybierz fabrykę danych z listy zasobów.
Wybierz pozycję Tworzenie i monitorowanie, aby uruchomić interfejs użytkownika usługi Data Factory na osobnej karcie.
Przejdź do karty Zarządzanie , a następnie przejdź do sekcji Zarządzane prywatne punkty końcowe .
Wybierz pozycję + Nowy w obszarze Zarządzane prywatne punkty końcowe.
Wybierz kafelek Usługa Private Link z listy i wybierz pozycję Kontynuuj.
Wprowadź nazwę prywatnego punktu końcowego i wybierz pozycję myPrivateLinkService na liście usług łącza prywatnego.
<FQDN>
Dodaj docelowy lokalny program SQL Server.Uwaga
Podczas wdrażania programu SQL Server na maszynie wirtualnej w sieci wirtualnej niezbędne jest rozszerzenie nazwy FQDN przez dołączenie łącza prywatnego. W przeciwnym razie wystąpi konflikt z innymi rekordami w ustawieniu DNS. Na przykład można po prostu zmodyfikować nazwę FQDN programu SQL Server z sqlserver.westus.cloudapp.azure.net na sqlserver.privatelink.westus.cloudapp.azure.net.
Uwaga
Obecnie funkcje ApplicationIntent i MultiSubnetFailover nie są obsługiwane we właściwościach połączenia SQL.
Utwórz prywatny punkt końcowy.
Tworzenie połączonej usługi i testowanie połączenia
Przejdź do karty Zarządzanie , a następnie przejdź do sekcji Połączone usługi .
Wybierz pozycję + Nowy w obszarze Połączona usługa.
Wybierz kafelek programu SQL Server z listy i wybierz pozycję Kontynuuj.
Włącz interaktywne tworzenie.
Wprowadź nazwę FQDN lokalnego programu SQL Server, nazwę użytkownika i hasło.
Następnie kliknij pozycję Testuj połączenie.
Uwaga
Jeśli masz więcej niż jeden program SQL Server i musisz zdefiniować wiele reguł modułu równoważenia obciążenia i rekordów tabeli adresów IP z różnymi portami, upewnij się, że jawnie dodano nazwę portu po nazwie FQDN podczas edytowania połączonej usługi. Maszyna wirtualna translatora adresów sieciowych będzie obsługiwać tłumaczenie portów. Jeśli nie zostanie jawnie określony, połączenie będzie zawsze przekroczone limit czasu.
Rozwiązywanie problemów
Przejdź do maszyny wirtualnej serwera zaplecza, upewnij się, że telnet działa program SQL Server: telnet< FQDN> 1433.
Powiązana zawartość
Przejdź do następującego samouczka, aby dowiedzieć się więcej o uzyskiwaniu dostępu do usługi Microsoft Azure SQL Managed Instance z zarządzanej sieci wirtualnej usługi Data Factory przy użyciu prywatnego punktu końcowego: