Tutorial: Zugreifen auf SQL Managed Instance über ein verwaltetes Data Factory-VNet mithilfe eines privaten Endpunkts

Wichtig

SQL-verwaltete Instanz verfügt jetzt über systemeigene Unterstützung für private Endpunkte. Anstatt die Lösung in diesem Dokument zu implementieren, empfehlen wir, einen privaten Endpunkt direkt in die SQL-verwaltete Instanz-Ressource zu erstellen, wie in verwalteten privaten Endpunkten 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.

Screenshot that shows the access model of SQL MI.

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

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

Screenshot that shows the subnets.

Schnellstart: Erstellen einer Load Balancer Standard-Instanz mit Azure PowerShell

Erstellen Sie über das Portal einen internen Lastenausgleich im Tarif „Standard“.

  1. Suchen Sie in der Suchleiste oben im Portal nach Load Balancers, und wählen Sie diese im Abschnitt Dienste des Suchbereichs aus.

  2. Wählen Sie auf der Dienstseite Lastenausgleich die Option Erstellen aus, um einen neuen Lastenausgleich zu erstellen.

  3. 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.
  4. 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.
  5. Übernehmen Sie bei den anderen Einstellungen die Standardwerte, und wählen Sie Überprüfen + erstellen aus.

  6. 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.

  1. Wählen Sie im linken Menü Alle Dienste > Alle Ressourcen und anschließend in der Ressourcenliste den Eintrag myLoadBalancer aus.
  2. Wählen Sie unter Einstellungen die Option Back-End-Pools und dann Hinzufügen aus.
  3. 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.

  1. Wählen Sie im linken Menü Alle Dienste > Alle Ressourcen und anschließend in der Ressourcenliste den Eintrag myLoadBalancer aus.

  2. 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.
  3. Ü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:

  1. Wählen Sie im linken Menü Alle Dienste > Alle Ressourcen und anschließend in der Ressourcenliste den Eintrag myLoadBalancer aus.

  2. Wählen Sie unter Einstellungen die Option Lastenausgleichsregeln und dann Hinzufügen aus.

  3. 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.
  4. Übernehmen Sie die übrigen Standardeinstellungen, und wählen Sie dann OK aus.

In diesem Abschnitt erstellen Sie einen Private Link-Dienst hinter einem Standardlastenausgleich.

  1. Wählen Sie im Azure-Portal oben links auf der Seite die Option Ressource erstellen aus.

  2. Suchen Sie im Feld Marketplace durchsuchen nach Private Link.

  3. Klicken Sie auf Erstellen.

  4. Wählen Sie in der Übersicht unter Private Link Center die blaue Schaltfläche Create private link service (Private Link-Dienst erstellen) aus.

  5. 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.
  6. Wählen Sie die Registerkarte Ausgangseinstellungen oder unten auf der Seite die Option Weiter: Ausgangseinstellungen aus.

  7. 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.
  8. Wählen Sie die Registerkarte Zugriffssicherheit oder unten auf der Seite die Option Weiter: Zugriffssicherheit aus.

  9. Übernehmen Sie auf der Registerkarte Zugriffssicherheit die Standardeinstellung Nur rollenbasierte Zugriffssteuerung.

  10. Wählen Sie die Registerkarte Tags aus, oder Weiter: Tags unten auf der Seite.

  11. Wählen Sie die Registerkarte Überprüfen und erstellen oder unten auf der Seite die Option Weiter: Überprüfen + erstellen aus.

  12. Wählen Sie auf der Registerkarte Überprüfen und erstellen die Option Erstellen aus.

Erstellen von Back-End-Servern

  1. Navigieren Sie links oben im Portal zu Ressource erstellen > Compute > Virtueller Computer.

  2. 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.
  3. Wählen Sie die Registerkarte Netzwerk aus, oder wählen Sie Weiter: Datenträger und anschließend Weiter: Netzwerk aus.

  4. 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.
  5. Klicken Sie auf Überprüfen + erstellen.

  6. Überprüfen Sie die Einstellungen, und wählen Sie dann die Option Erstellen.

  7. 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

  1. 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

  2. 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.

    Screenshot that shows SQL MI host.

  3. 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-number

    Screenshot that shows the command record.

    Hinweis

    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.

  1. Wählen Sie im linken Menü „Alle Dienste“ > „Alle Ressourcen“ und anschließend in der Ressourcenliste Ihre Data Factory aus.

  2. Klicken Sie auf Erstellen und überwachen, um die Data Factory-Benutzeroberfläche auf einer separaten Registerkarte zu starten.

  3. Navigieren Sie zur Registerkarte Verwalten und anschließend zum Abschnitt Verwaltete private Endpunkte.

  4. Wählen Sie unter Verwaltete private Endpunkte die Option + Neu aus.

  5. Wählen Sie in der Liste die Kachel Private Link-Dienst und anschließend Weiter aus.

  6. Geben Sie den Namen des privaten Endpunkts ein, und wählen Sie in der Liste „Private Link-Dienst“ die Option myPrivateLinkService aus.

  7. Fügen Sie den FQDN Ihrer verwalteten SQL-Zielinstanz hinzu.

    Screenshot that shows SQL MI host.

    Screenshot that shows the private endpoint settings.

  8. Erstellen Sie den privaten Endpunkt.

Erstellen eines verknüpften Diensts und Testen der Verbindung

  1. Navigieren Sie zur Registerkarte Verwalten und anschließend zum Abschnitt Verwaltete private Endpunkte.

  2. Wählen Sie unter Verknüpfter Dienst die Option + Neu aus.

  3. Wählen Sie in der Liste die Kachel Verwaltete Azure SQL-Datenbank-Instanz und dann Weiter aus.

    Screenshot that shows the linked service creation page.

  4. Aktivieren Sie Interaktives Authoring.

    Screenshot that shows how to enable Interactive Authoring.

  5. 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.

  6. Klicken Sie anschließend auf Verbindung testen.

    Screenshot that shows the SQL MI linked service creation page.

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: