Share via


Zelfstudie: Toegang tot on-premises SQL Server vanuit met Data Factory beheerd VNet met behulp van een privé-eindpunt

Deze zelfstudie bevat stappen voor het gebruik van Azure Portal om de Private Link-service in te stellen en toegang te krijgen tot on-premises SQL Server vanuit een beheerd virtueel netwerk met behulp van een privé-eindpunt. Het gebruik van een beheerd virtueel netwerk zorgt ervoor dat verkeer van en naar uw on-premises SQL-bron allemaal uw eigen privé-eindpunt passeert, waardoor blootstelling aan de openbare cloud wordt beveiligd met een extra beveiligings- en isolatielaag. De vereiste resources die hieronder worden vermeld, zijn nodig om het scenario te ondersteunen.

Notitie

De oplossing in dit artikel beschrijft SQL Server-connectiviteit, maar u kunt een vergelijkbare benadering gebruiken om verbinding te maken en query's uit te voeren op andere beschikbare on-premises connectors die worden ondersteund in Azure Data Factory.

Schermopname van het toegangsmodel van SQL Server.

Vereisten

  • Azure-abonnement. Als u geen Azure-abonnement hebt, maakt u een gratis account voordat u begint.
  • Virtueel netwerk. Als u geen virtueel netwerk hebt, maakt u er een na Een virtueel netwerk maken.
  • Virtueel netwerk naar on-premises netwerk. Maak een verbinding tussen een virtueel netwerk en een on-premises netwerk met behulp van ExpressRoute of VPN. Als u liever een virtuele cloudmachine in een particulier netwerk gebruikt, kunt u dit ook doen. Maak gewoon een virtueel netwerk voor uw virtuele cloudmachines en een privékoppeling naar het virtuele netwerk en u hebt er toegang toe alsof ze on-premises machines in uw privénetwerk zijn, ook al worden ze gehost in de cloud.
  • Data Factory waarvoor beheerd VNet is ingeschakeld. Als u geen Data Factory of beheerd VNet hebt ingeschakeld, maakt u er een na Data Factory maken met een beheerd VNet.

Subnetten maken voor resources

Gebruik de portal om subnetten in uw virtuele netwerk te maken.

Subnet Beschrijving
be-subnet subnet voor back-endservers
fe-subnet subnet voor interne standard load balancer
pls-subnet subnet voor Private Link-service

Schermopname van de subnetten.

Een standaardversie van een load balancer maken

Maak met behulp van de portal een interne standard load balancer.

  1. Selecteer linksboven in het scherm een resourcenetwerktaakverdeling > >maken.

  2. Typ of selecteer de volgende informatie op het tabblad Basisbeginselen van de pagina Load balancer maken:

    Instelling Weergegeven als
    Abonnement Selecteer uw abonnement.
    Resourcegroep Selecteer uw resourcegroep.
    Naam Voer myLoadBalancer in.
    Regio Selecteer VS - oost.
    Type selecteer Intern.
    SKU Selecteer Standaard.
    Virtueel netwerk Selecteer uw virtuele netwerk.
    Subnet Selecteer fe-subnet dat u in de vorige stap hebt gemaakt.
    IP-adrestoewijzing selecteer Dynamisch.
    Availability zone selecteer Zone-redundant.
  3. Accepteer de standaardwaarden voor de overige instellingen en selecteer Beoordelen en maken.

  4. Selecteer in het deelvenster Beoordelen en maken de optie Maken.

    Schermopname van de stap voor het maken van een standard load balancer.

Resources voor load balancer maken

Een back-endpool maken

De back-endadresgroep bevat de IP-adressen van de virtuele netwerkinterfacekaarten (NIC's) die zijn verbonden met de load balancer.

Maak de back-endadres groep myBackendPool om virtuele machines voor het verdelen van internetverkeer in te bewaren.

  1. Selecteer Alle services in het linkermenu en selecteer Alle resources. Selecteer vervolgens myLoadBalancer en in de lijst met resources.
  2. Selecteer onder Instellingen de optie Back-endpools en selecteer vervolgens Toevoegen.
  3. Typ op de pagina Back-endpool toevoegen myBackendPool als naam voor de back-endpool. Selecteer vervolgens Toevoegen.

Een statustest maken

De load balancer controleert de status van uw app met een statustest.

De statustest voegt VM's toe aan of verwijdert ze van de load balancer op basis van hun reactie op statuscontroles.

Maak een statustest genaamd myHealthProbe om de status van de VM's te bewaken.

  1. Selecteer Alle services in het linkermenu en selecteer Alle resources. Selecteer vervolgens myLoadBalancer en in de lijst met resources.

  2. Selecteer onder Instellingen de optie Statustests en selecteer vervolgens Toevoegen.

    Instelling Weergegeven als
    Naam Voer myHealthProbe in.
    Protocol Selecteer TCP.
    Poort Voer 22 in.
    Interval Voer 15 in als waarde voor het Interval in seconden tussen tests.
    Drempelwaarde voor beschadigde status Selecteer 2 als het aantal voor de Drempelwaarde voor beschadigde status of het aantal opeenvolgende mislukte tests dat moet optreden voordat wordt besloten dat een VM een beschadigde status heeft.
  3. Laat de overige standaardwaarden staan en selecteer OK.

Een load balancer-regel maken

Een load balancer-regel wordt gebruikt om de verdeling van het verkeer over de VM's te definiëren. U definieert de front-end-IP-configuratie voor het inkomende verkeer en de back-end-IP-groep om het verkeer te ontvangen. De bron- en doelpoort worden in de regel gedefinieerd.

In deze sectie maakt u een load balancer-regel:

  1. Selecteer Alle services in het linkermenu en selecteer Alle resources. Selecteer vervolgens myLoadBalancer en in de lijst met resources.

  2. Selecteer onder Instellingen Taakverdelingsregels en selecteer vervolgens Toevoegen.

  3. Gebruik deze waarden om de taakverdelingsregel te configureren:

    Instelling Weergegeven als
    Naam Voer myRule in.
    IP-versie Selecteer IPv4.
    IP-adres voor front-end Selecteer LoadBalancerFrontEnd.
    Protocol Selecteer TCP.
    Poort Voer 1433 in.
    Back-endpoort Voer 1433 in.
    Back-endpool Selecteer myBackendPool.
    Statustest Selecteer myHealthProbe.
    Time-out voor inactiviteit (minuten) Verplaats de schuifregelaar naar 15 minuten.
    Opnieuw instellen van TCP Selecteer Uitgeschakeld.
  4. Laat de overige standaardwaarden staan en selecteer OK.

In dit gedeelte maakt u een Private Link-service achter een standard load balancer.

  1. Selecteer in de linkerbovenhoek van de Azure-portal Een resource maken.

  2. Zoek naar Private Link in het tekstvak In de marketplace zoeken.

  3. Selecteer Maken.

  4. Selecteer in Overzicht onder Private Link-centrum de blauwe knop Prive Link-service maken.

  5. Voer in het tabblad Basis onder Private Link-serivce maken de volgende informatie in:

    Instelling Weergegeven als
    Projectdetails
    Abonnement Selecteer uw abonnement.
    Resourcegroep Selecteer uw resourcegroep.
    Exemplaardetails
    Naam Voer myPrivateLinkService in.
    Regio Selecteer VS - oost.
  6. Selecteer het tabblad Uitgaande instellingen of selecteer Volgende: Uitgaande instellingen onder aan de pagina.

  7. Voer in het tabblad Uitgaande instellingen de volgende informatie in:

    Instelling Weergegeven als
    Load balancer Selecteer myLoadBalancer.
    Front-end-IP-adres van load balancer Selecteer LoadBalancerFrontEnd.
    NAT-bronsubnet Selecteer pls-subnet.
    TCP-proxy V2 inschakelen Laat de standaardwaarde Nee staan.
    Instellingen voor persoonlijk IP-adres
    Laat de standaardinstellingen staan.
  8. Selecteer het tabblad Beveiliging van Access of selecteer Volgende: Toegangsbeveiliging onder aan de pagina.

  9. Laat de standaardwaarde van Alleen op rollen gebaseerd toegangsbeheer in het tabblad Toegangsbeveiliging staan.

  10. Selecteer het tabblad Tags of selecteer Volgende: Tags onderaan de pagina.

  11. Selecteer het tabblad Beoordelen en maken of selecteer Volgende: Beoordelen en maken onder aan de pagina.

  12. Selecteer Maken in het tabblad Beoordelen en maken.

Back-endservers maken

  1. Selecteer linksboven in de portal de optie Een virtuele machine voor resource > berekenen >maken.

  2. In Een virtuele machine maken typt of selecteert u de waarden op het tabblad Basisinformatie:

    Instelling Weergegeven als
    Projectdetails
    Abonnement Selecteer uw Azure-abonnement.
    Resourcegroep Selecteer uw resourcegroep.
    Exemplaardetails
    Virtual machine name Voer myVM1 in.
    Regio Selecteer VS - oost.
    Beschikbaarheidsopties Selecteer Beschikbaarheidszones.
    Availability zone Selecteer 1.
    Afbeelding Selecteer Ubuntu Server 22.04 LTS.
    Azure Spot-exemplaar Selecteer Nee.
    Tekengrootte Kies de VM-grootte of kies de standaardinstelling.
    Beheerdersaccount
    Username Voer een gebruikersnaam in.
    Bron voor openbare SSH-sleutel Nieuw sleutelpaar genereren.
    Naam van sleutelpaar mySSHKey.
    Regels voor binnenkomende poort
    Openbare poorten voor inkomend verkeer Geen
  3. Selecteer het tabblad Netwerken of selecteer Volgende: Schijven en vervolgens Volgende: Netwerken.

  4. Op het tabblad Netwerken selecteert u of voert u het volgende in:

    Instelling Weergegeven als
    Netwerkinterface
    Virtueel netwerk Selecteer uw virtuele netwerk.
    Subnet be-subnet.
    Openbare IP Selecteer Geen.
    NIC-netwerkbeveiligingsgroep Selecteer Geen.
    Load balancing
    Wilt u deze virtuele machine achter een bestaande taakverdelingsoplossing plaatsen? Selecteer Ja.
    Instellingen voor taakverdeling
    Opties voor taakverdeling Selecteer Azure-taakverdeling.
    Een load balancer selecteren Selecteer myLoadBalancer.
    Een back-endpool selecteren Selecteer myBackendPool.
  5. Selecteer Controleren + maken.

  6. Controleer de instellingen en selecteer vervolgens Maken.

  7. U kunt stap 1 tot en met 6 herhalen om meer dan 1 back-endserver-VM voor hoge beschikbaarheid te hebben.

Doorstuurregel naar eindpunt maken

  1. Meld u aan en kopieer het script ip_fwd.sh naar de vm's van de back-endserver.

  2. Voer het script uit met de volgende opties:

    sudo ./ip_fwd.sh -i eth0 -f 1433 -a <FQDN/IP> -b 1433
    

    Stel de tijdelijke aanduiding <FQDN/IP> in voor het DOEL-IP-adres van SQL Server.

    Notitie

    FQDN werkt niet voor on-premises SQL Server, tenzij u een record toevoegt in de Azure DNS-zone.

  3. Voer de volgende opdracht uit en controleer de iptables in uw back-endserver-VM's. U kunt één record in uw iptables zien met uw doel-IP.

    sudo iptables -t nat -v -L PREROUTING -n --line-number**
    

    Schermopname van de opdrachtrecord.

    Notitie

    Als u meerdere SQL Server- of gegevensbronnen hebt, moet u meerdere load balancer-regels en IP-tabelrecords met verschillende poorten definiëren. Anders is er een conflict. Bijvoorbeeld:

    Poort in load balancer-regel Back-endpoort in taakverdelingsregel Opdrachtuitvoering in back-endserver-VM
    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

    Notitie

    Het is belangrijk te weten dat de configuratie binnen de virtuele machine (VM) niet permanent is. Dit betekent dat telkens wanneer de virtuele machine opnieuw wordt opgestart, opnieuw moet worden geconfigureerd.

  1. Selecteer Alle services in het linkermenu, selecteer Alle resources en selecteer vervolgens uw data factory in de lijst met resources.

  2. Selecteer de tegel Maken en controleren om de Data Factory-gebruikersinterface te openen op een afzonderlijk tabblad.

  3. Ga naar het tabblad Beheren en ga vervolgens naar de sectie Beheerde privé-eindpunten .

  4. Selecteer + Nieuwe onder Beheerde privé-eindpunten.

  5. Selecteer de tegel Private Link Service in de lijst en selecteer Doorgaan.

  6. Voer de naam van het privé-eindpunt in en selecteer myPrivateLinkService in de lijst met private link-services.

  7. Voeg de <FQDN> on-premises SQL Server van uw doel toe.

    Schermopname van de instellingen voor het privé-eindpunt.

    Notitie

    Wanneer u uw SQL Server implementeert op een virtuele machine in een virtueel netwerk, is het essentieel om uw FQDN te verbeteren door privatelink toe te voegen. Anders wordt het conflict veroorzaakt met andere records in de DNS-instelling. U kunt bijvoorbeeld de FQDN van de SQL Server wijzigen van sqlserver.westus.cloudapp.azure.net in sqlserver.privatelink.westus.cloudapp.azure.net.

    Notitie

    Momenteel worden ApplicationIntent en MultiSubnetFailover niet ondersteund in SQL-verbindingseigenschappen.

  8. Maak een privé-eindpunt.

Maak een gekoppelde service en test de verbinding

  1. Ga naar het tabblad Beheren en ga vervolgens naar de sectie Gekoppelde services .

  2. Selecteer + Nieuw onder Gekoppelde service.

  3. Selecteer de tegel SQL Server in de lijst en selecteer Doorgaan.

    Schermopname van de pagina voor het maken van gekoppelde services.

  4. Interactieve creatie inschakelen.

    Schermopname van het inschakelen van interactieve creatie.

  5. Voer de FQDN-naam van uw on-premises SQL Server, gebruikersnaam en wachtwoord in.

  6. Klik vervolgens op Verbinding testen.

    Schermopname van de pagina voor het maken van een gekoppelde SQL-serverservice.

    Notitie

    Als u meer dan één SQL Server hebt en meerdere load balancer-regels en IP-tabelrecords met verschillende poorten moet definiëren, moet u de poortnaam expliciet toevoegen na de FQDN wanneer u gekoppelde service bewerkt. De NAT-VM verwerkt de poortomzetting. Als deze niet expliciet is opgegeven, treedt er altijd een time-out op voor de verbinding.

Probleemoplossing

Ga naar de back-endserver-VM, controleer of telnet de SQL Server werkt: telnet< FQDN> 1433.

Ga naar de volgende zelfstudie voor meer informatie over toegang tot Microsoft Azure SQL Managed Instance vanuit data factory managed VNet met behulp van een privé-eindpunt: