Tutorial: Zugreifen auf SQL Managed Instance über ein verwaltetes Data Factory-VNet mithilfe eines privaten Endpunkts
Wichtig
SQL Managed Instance verfügt jetzt über native Unterstützung für private Endpunkte. Anstatt die Lösung in diesem Dokument zu implementieren, empfehlen wir, einen privaten Endpunkt direkt für die SQL Managed Instance-Ressource zu erstellen, wie unter Verwaltete private Endpunkte beschrieben.
In diesem Tutorial werden die Schritte für die Verwendung des Azure-Portals zum Einrichten des Private Link-Diensts und zum Zugreifen auf SQL Managed Instance über ein verwaltetes VNet mithilfe eines privaten Endpunkts erläutert.
Hinweis
Wenn Sie diese Lösung zum Herstellen einer Verbindung mit der verwalteten Azure SQL-Datenbank-Instanz verwenden, wird die Umleitung-Verbindungsrichtlinie nicht unterstützt. Sie müssen in den Proxymodus wechseln.
Voraussetzungen
- Azure-Abonnement. Wenn Sie kein Azure-Abonnement besitzen, können Sie ein kostenloses Konto erstellen, bevor Sie beginnen.
- Virtuelles Netzwerk. Wenn Sie kein virtuelles Netzwerk besitzen, erstellen Sie eins anhand der Anweisungen unter Schnellstart: Erstellen eines virtuellen Netzwerks im Azure-Portal.
- Virtuelles Netzwerk zu lokalem Netzwerk: Erstellen Sie über ExpressRoute oder VPN eine Verbindung zwischen dem virtuellen Netzwerk und dem lokalen Netzwerk.
- Data Factory mit aktiviertem verwalteten VNet: Wenn Sie keine Data Factory-Instanz besitzen oder das verwaltete VNet nicht aktiviert ist, erstellen Sie anhand der Anweisungen unter Sicheres Kopieren von Daten aus Azure Blob Storage in eine SQL-Datenbank mithilfe von privaten Endpunkten eine entsprechende Instanz.
Erstellen von Subnetzen für Ressourcen
Verwenden Sie das Portal, um Subnetze in Ihrem virtuellen Netzwerk zu erstellen.
Subnet | Beschreibung |
---|---|
be-subnet | Subnetz für Back-End-Server |
fe-subnet | Subnetz für einen internen Standard-Lastenausgleich |
pls-subnet | Subnetz für den Private Link-Dienst |
Schnellstart: Erstellen einer Load Balancer Standard-Instanz mit Azure PowerShell
Erstellen Sie über das Portal einen internen Lastenausgleich im Tarif „Standard“.
Suchen Sie in der Suchleiste oben im Portal nach Load Balancers, und wählen Sie diese im Abschnitt Dienste des Suchbereichs aus.
Wählen Sie auf der Dienstseite Lastenausgleich die Option Erstellen aus, um einen neuen Lastenausgleich zu erstellen.
Geben Sie auf der Seite Lastenausgleich erstellen auf der Registerkarte Grundlagen die folgenden Details ein, bzw. wählen Sie sie aus:
Einstellung Wert Subscription Wählen Sie Ihr Abonnement aus. Ressourcengruppe Wählen Sie Ihre Ressourcengruppe aus. Name Geben Sie myLoadBalancer ein. Region Wählen Sie USA, Osten aus. SKU Wählen Sie Standard aus. type Wählen Sie Intern aus. Wählen Sie auf der Registerkarte Frontend IP configuration (Front-End-IP-Konfiguration) der Seite Create load balancer (Lastenausgleich erstellen) die Option Add a frontend IP configuration (Front-End-IP-Konfiguration hinzufügen) aus, und geben Sie dann im Konfigurationsbereich Add frontend IP address (Front-End-IP-Adresse hinzufügen) die folgenden Details ein, oder wählen Sie sie aus:
Einstellung Wert Name der Front-End-IP-Adresse Geben Sie einen Namen für Ihre Front-End-IP-Adresse ein. Virtuelles Netzwerk Wählen Sie Ihr virtuelles Netzwerk aus. Subnet Wählen Sie das im vorherigen Schritt erstellte Subnetz fe-subnet aus. IP-Adresszuweisung Wählen Sie Dynamisch aus. Verfügbarkeitszone Wählen Sie Zonenredundant aus. Übernehmen Sie bei den anderen Einstellungen die Standardwerte, und wählen Sie Überprüfen + erstellen aus.
Wählen Sie auf der Registerkarte Bewerten + erstellen die Option Erstellen aus.
Erstellen von Load Balancer-Ressourcen
Erstellen eines Back-End-Pools
Der Back-End-Adresspool enthält die IP-Adressen der virtuellen NICs, die mit dem Lastenausgleich verbunden sind.
Erstellen Sie den Back-End-Adresspool myBackendPool, um virtuelle Computer für den Lastenausgleich von Internetdatenverkehr einzubeziehen.
- Wählen Sie im linken Menü Alle Dienste > Alle Ressourcen und anschließend in der Ressourcenliste den Eintrag myLoadBalancer aus.
- Wählen Sie unter Einstellungen die Option Back-End-Pools und dann Hinzufügen aus.
- Geben Sie auf der Seite Back-End-Pool hinzufügen die Zeichenfolge myBackendPool als Name für Ihren Back-End-Pool ein, und wählen Sie anschließend Hinzufügen aus.
Erstellen eines Integritätstests
Der Status Ihrer App wird vom Lastenausgleich mithilfe eines Integritätstests überwacht.
Abhängig von der Reaktion auf Integritätsüberprüfungen werden der Load Balancer-Instanz durch den Integritätstest virtuelle Computer hinzugefügt oder daraus entfernt.
Erstellen Sie zur Überwachung der Integrität der virtuellen Computer einen Integritätstest mit dem Namen myHealthProbe.
Wählen Sie im linken Menü Alle Dienste > Alle Ressourcen und anschließend in der Ressourcenliste den Eintrag myLoadBalancer aus.
Wählen Sie unter Einstellungen die Option Integritätstests und dann Hinzufügen aus.
Einstellung Wert Name Geben Sie myHealthProbe ein. Protocol Wählen Sie TCP aus. Port Geben Sie „22“ ein. Intervall Geben Sie für das Intervall den Wert 15 (Sekunden zwischen Testversuchen) ein. Fehlerhafter Schwellenwert Wählen Sie 2 als Wert für den Fehlerschwellenwert bzw. als Anzahl aufeinander folgender Testfehler aus, die auftreten müssen, damit ein virtueller Computer als fehlerhaft eingestuft wird. Übernehmen Sie die übrigen Standardeinstellungen, und wählen Sie OK aus.
Erstellen einer Load Balancer-Regel
Mithilfe einer Load Balancer-Regel wird definiert, wie Datenverkehr auf die virtuellen Computer verteilt werden soll. Sie definieren die Front-End-IP-Konfiguration für den eingehenden Datenverkehr und den Back-End-IP-Pool für den Empfang des Datenverkehrs. Quell- und Zielport werden in der Regel definiert.
In diesem Abschnitt wird eine Lastenausgleichsregel mit folgenden Merkmalen erstellt:
Wählen Sie im linken Menü Alle Dienste > Alle Ressourcen und anschließend in der Ressourcenliste den Eintrag myLoadBalancer aus.
Wählen Sie unter Einstellungen die Option Lastenausgleichsregeln und dann Hinzufügen aus.
Konfigurieren Sie die Lastenausgleichsregel mit folgenden Werten:
Einstellung Wert Name Geben Sie myRule ein. IP-Version Wählen Sie IPv4 aus. Front-End-IP-Adresse Wählen Sie LoadBalancerFrontEnd aus. Protocol Wählen Sie TCP aus. Port Geben Sie 1433 ein. Back-End-Port Geben Sie 1433 ein. Back-End-Pool Wählen Sie myBackendPool aus. Integritätstest Wählen Sie myHealthProbe aus. Leerlaufzeitüberschreitung (Minuten) Bewegen Sie den Schieberegler auf 15 Minuten. TCP-Zurücksetzung Wählen Sie Deaktiviert aus. Übernehmen Sie die übrigen Standardeinstellungen, und wählen Sie dann OK aus.
Erstellen eines Private Link-Diensts
In diesem Abschnitt erstellen Sie einen Private Link-Dienst hinter einem Standardlastenausgleich.
Wählen Sie im Azure-Portal oben links auf der Seite die Option Ressource erstellen aus.
Suchen Sie im Feld Marketplace durchsuchen nach Private Link.
Klicken Sie auf Erstellen.
Wählen Sie in der Übersicht unter Private Link Center die blaue Schaltfläche Create private link service (Private Link-Dienst erstellen) aus.
Geben Sie auf der Registerkarte Grundlagen unter Create private link service (Private Link-Dienst erstellen) die folgenden Informationen ein, bzw. wählen Sie sie aus:
Einstellung Wert Projektdetails Subscription Wählen Sie Ihr Abonnement aus. Ressourcengruppe Wählen Sie Ihre Ressourcengruppe aus. Instanzendetails Name Geben Sie myPrivateLinkService ein. Region Wählen Sie USA, Osten aus. Wählen Sie die Registerkarte Ausgangseinstellungen oder unten auf der Seite die Option Weiter: Ausgangseinstellungen aus.
Geben Sie auf der Registerkarte Ausgangseinstellungen die folgenden Informationen ein, bzw. wählen Sie sie aus:
Einstellung Wert Load Balancer Wählen Sie myLoadBalancer aus. Front-End-IP-Adresse des Lastenausgleichs Wählen Sie LoadBalancerFrontEnd aus. NAT-Quellsubnetz Wählen Sie pls-subnet aus. TCP-Proxy V2 aktivieren Übernehmen Sie den Standardwert Nein. Einstellungen für private IP-Adressen Übernehmen Sie die Standardeinstellungen. Wählen Sie die Registerkarte Zugriffssicherheit oder unten auf der Seite die Option Weiter: Zugriffssicherheit aus.
Übernehmen Sie auf der Registerkarte Zugriffssicherheit die Standardeinstellung Nur rollenbasierte Zugriffssteuerung.
Wählen Sie die Registerkarte Tags aus, oder Weiter: Tags unten auf der Seite.
Wählen Sie die Registerkarte Überprüfen und erstellen oder unten auf der Seite die Option Weiter: Überprüfen + erstellen aus.
Wählen Sie auf der Registerkarte Überprüfen und erstellen die Option Erstellen aus.
Erstellen von Back-End-Servern
Navigieren Sie links oben im Portal zu Ressource erstellen > Compute > Virtueller Computer.
Geben Sie unter Virtuellen Computer erstellen auf der Registerkarte Grundlagen die folgenden Werte ein, oder wählen Sie sie aus:
Einstellung Wert Projektdetails Subscription Wählen Sie Ihr Azure-Abonnement. Ressourcengruppe Wählen Sie Ihre Ressourcengruppe aus. Instanzendetails Name des virtuellen Computers Geben Sie myVM1 ein. Region Wählen Sie USA, Osten aus. Verfügbarkeitsoptionen Wählen Sie Verfügbarkeitszonen aus. Verfügbarkeitszone Wählen Sie 1. Abbildung Wählen Sie Ubuntu Server 18.04 LTS – Gen1 aus. Azure Spot-Instanz Wählen Sie Nein aus. Size Wählen Sie eine VM-Größe aus, oder übernehmen Sie die Standardeinstellung. Administratorkonto Username Geben Sie einen Benutzernamen ein. Quelle für öffentlichen SSH-Schlüssel Generieren Sie ein neues Schlüsselpaar. Schlüsselpaarname mySSHKey Regeln für eingehende Ports Öffentliche Eingangsports Keine. Wählen Sie die Registerkarte Netzwerk aus, oder wählen Sie Weiter: Datenträger und anschließend Weiter: Netzwerk aus.
Wählen Sie auf der Registerkarte Netzwerk die folgenden Werte aus, oder geben Sie sie ein:
Einstellung Wert Netzwerkschnittstelle Virtuelles Netzwerk Wählen Sie Ihr virtuelles Netzwerk aus. Subnet be-subnet Öffentliche IP-Adresse Wählen Sie Keine aus. NIC-Netzwerksicherheitsgruppe Wählen Sie Keine. Lastenausgleich Diese VM hinter einer vorhandenen Lastenausgleichslösung platzieren? Wählen Sie Ja aus. Lastenausgleichseinstellungen Optionen für den Lastenausgleich Wählen Sie Azure-Lastenausgleich aus. Wählen Sie einen Lastenausgleich aus. Wählen Sie myLoadBalancer aus. Wählen Sie einen Back-End-Pool aus. Wählen Sie myBackendPool aus. Klicken Sie auf Überprüfen + erstellen.
Überprüfen Sie die Einstellungen, und wählen Sie dann die Option Erstellen.
Sie können die Schritte 1 bis 6 wiederholen, um mehr als eine Back-End-Server-VM für Hochverfügbarkeit zu erhalten.
Erstellen einer Weiterleitungsregel an einen Endpunkt
Melden Sie sich an, und kopieren Sie das Skript ip_fwd.sh auf Ihre Back-End-Server-VMs.
Hinweis
Dieses Skript legt die IP-Weiterleitung nur vorübergehend fest. Um diese Einstellung dauerhaft zu machen, stellen Sie sicher, dass die Auskommentierung für die Zeile „net.ipv4.ip_forward=1“ in der Datei /etc/sysctl.conf aufgehoben ist
Führen Sie das Skript mit den folgenden Optionen aus:
sudo ./ip_fwd.sh -i eth0 -f 1433 -a <FQDN/IP> -b 1433
<FQDN/IP> ist der Host von SQL Managed Instance.Führen Sie den folgenden Befehl aus, und überprüfen Sie die IP-Tabellen (iptables) auf Ihren Back-End-Server-VMs. Ihre IP-Tabellen enthalten einen einzelnen Eintrag mit Ihrer Ziel-IP-Adresse.
sudo iptables -t nat -v -L PREROUTING -n --line-numberHinweis
Hinweis: Wenn Sie über mehrere SQL MI-Instanzen oder andere Datenquellen verfügen, müssen Sie mehrere Lastenausgleichsregeln und IP-Tabellendatensätze mit unterschiedlichen Ports definieren. Andernfalls kommt es zu einem Konflikt. Beispiel:
Port in Lastenausgleichsregel Back-End-Port in Lastenausgleichsregel Auf Back-End-Server-VM ausgeführter Befehl SQL MI 1 1433 1433 sudo ./ip_fwd.sh -i eth0 -f 1433 -a <FQDN/IP> -b 1433 SQL MI 2 1434 1434 sudo ./ip_fwd.sh -i eth0 -f 1434 -a <FQDN/IP> -b 1433 Hinweis
Führen Sie das Skript jedes Mal erneut aus, wenn Sie die virtuellen Computer hinter dem Lastenausgleich neu starten.
Erstellen eines privaten Endpunkts für einen Private Link-Dienst
Wählen Sie im linken Menü „Alle Dienste“ > „Alle Ressourcen“ und anschließend in der Ressourcenliste Ihre Data Factory aus.
Klicken Sie auf Erstellen und überwachen, um die Data Factory-Benutzeroberfläche auf einer separaten Registerkarte zu starten.
Navigieren Sie zur Registerkarte Verwalten und anschließend zum Abschnitt Verwaltete private Endpunkte.
Wählen Sie unter Verwaltete private Endpunkte die Option + Neu aus.
Wählen Sie in der Liste die Kachel Private Link-Dienst und anschließend Weiter aus.
Geben Sie den Namen des privaten Endpunkts ein, und wählen Sie in der Liste „Private Link-Dienst“ die Option myPrivateLinkService aus.
Fügen Sie den FQDN Ihrer verwalteten SQL-Zielinstanz hinzu.
Erstellen Sie den privaten Endpunkt.
Erstellen eines verknüpften Diensts und Testen der Verbindung
Navigieren Sie zur Registerkarte Verwalten und anschließend zum Abschnitt Verwaltete private Endpunkte.
Wählen Sie unter Verknüpfter Dienst die Option + Neu aus.
Wählen Sie in der Liste die Kachel Verwaltete Azure SQL-Datenbank-Instanz und dann Weiter aus.
Aktivieren Sie Interaktives Authoring.
Geben Sie den Host von SQL Managed Instance sowie Benutzername und Kennwort ein.
Hinweis
Geben Sie den SQL Managed Instance-Host manuell ein. Andernfalls ist es kein vollqualifizierter Domänenname in der Auswahlliste.
Klicken Sie anschließend auf Verbindung testen.
Zugehöriger Inhalt
Im folgenden Tutorial erfahren Sie mehr über den Zugriff auf eine lokale SQL Server-Instanz über ein verwaltetes Data Factory-VNet unter Verwendung eines privaten Endpunkts: