Verbinden von SQL Server-Instanzen mit Azure im großen Stil mit einem Skript

Gilt für:SQL Server

Wichtig

Azure Arc installiert automatisch die Azure-Erweiterung für SQL Server, wenn SQL Server auf einem mit Azure Arc verbundenen Server installiert ist. Alle SQL Server-Instanzressourcen werden automatisch in Azure erstellt, sodass eine zentrale Verwaltungsplattform für alle Ihre SQL Server-Instanzen bereitgestellt wird.

Informationen zum automatischen Herstellen einer Verbindung mit Ihrer SQL Server-Instanz finden Sie unter Automatisches Herstellen einer Verbindung zwischen Ihrer SQL Server-Instanz und Azure Arc.

Verwenden Sie die Methoden in diesem Artikel, wenn Ihr Server bereits mit Azure verbunden ist, aber die Azure-Erweiterung für SQL Server nicht automatisch bereitgestellt wird.

Ein ArcSQLServerExtensionDeployment = Disabled-Tag wird auf der Arc-Computer-Ressource erstellt, wenn die Erweiterung mit dieser Methode bereitgestellt wird.

In diesem Artikel wird beschrieben, wie Sie SQL Server-Instanzen, die auf mehreren Windows- oder Linux-Computern installiert sind, mithilfe eines Skripts als einzelne Aufgabe mit Azure Arc verbinden. Nachdem die Computer mit Azure verbunden sind, installiert Azure Arc automatisch die Azure-Erweiterung für SQL Server. Informationen finden Sie unter Automatisches Herstellen einer Verbindung zwischen Ihrer SQL Server-Instanz und Azure Arc.

Verwenden Sie die Microsoft Entra-ID, um eine optimale Benutzererfahrung zu erzielen. Sie definieren einen Dienstprinzipal mit Microsoft Entra ID Bei dem Dienstprinzipal handelt es sich um eine besondere eingeschränkte Verwaltungsidentität, der nur die Mindestberechtigungen erteilt werden, die erforderlich sind, um Computer mit Azure zu verbinden und die Azure-Ressourcen für Azure Arc-fähige Server und SQL Server mit Azure Arc-Unterstützung zu erstellen.

Bevor Sie beginnen, sollten Sie die Voraussetzungen überprüfen und sicherstellen, dass Sie eine benutzerdefinierte Rolle erstellt haben, die über die erforderlichen Berechtigungen verfügt.

Verknüpfen mehrerer Instanzen

Auf jedem Computer muss Azure PowerShell installiert sein.

  1. Erstellen Sie den Dienstprinzipal. Verwenden Sie das New-AzADServicePrincipal-Cmdlet. Stellen Sie sicher, dass Sie die Ausgabe in einer Variablen speichern. Andernfalls können Sie das später benötigte Kennwort nicht abrufen.

    $sp = New-AzADServicePrincipal -DisplayName "Arc-for-servers" -Role <your custom role>
    $sp
    
  2. Erteilen Sie dem Dienstprinzipal Berechtigungen für den Zugriff auf Microsoft Graph.

    Hinweis

    • Beim Erstellen eines Dienstprinzipals muss Ihr Konto Besitzer oder Benutzerzugriffsadministrator in dem Abonnement sein, das Sie für das Onboarding verwenden möchten. Falls Sie nicht über ausreichende Berechtigungen zum Erstellen von Rollenzuweisungen verfügen, wird der Dienstprinzipal zwar vielleicht erstellt, kann aber keine Computer integrieren. Die Anweisungen für das Erstellen einer benutzerdefinierten Rolle finden Sie unter den Voraussetzungen.
  3. Rufen Sie das in der Variablen $sp gespeicherte Kennwort ab:

    $credential = New-Object pscredential -ArgumentList "temp", $sp.PasswordCredentials.SecretText 
    $credential.GetNetworkCredential().password
    
  4. Rufen Sie den Wert für die Mandanten-ID des Dienstprinzipals ab:

    $tenantId= (Get-AzContext).Tenant.Id
    
  5. Kopieren und speichern Sie die Werte für Kennwort, Anwendungs-ID und Mandanten-ID mit entsprechenden Sicherheitsmaßnahmen. Sollten Sie Ihr Dienstprinzipalkennwort vergessen oder verlieren, können Sie es mithilfe des Cmdlets New-AzADSpCredential zurücksetzen.

    Hinweis

    Beachten Sie, dass Azure Arc für Server die Anmeldung mit einem Zertifikat derzeit nicht unterstützt. Daher muss der Dienstprinzipal über ein Geheimnis für die Authentifizierung verfügen.

  6. Laden Sie das PowerShell-Skript wie in der Anleitung unter Herstellen einer Verbindung zwischen Ihrer SQL Server-Instanz und Azure Arc beschrieben im Portal herunter.

  7. Öffnen Sie das Skript in einer Administratorinstanz von PowerShell ISE, und ersetzen Sie die folgenden Umgebungsvariablen durch die bei der zuvor beschriebenen Dienstprinzipalbereitstellung generierten Werte. Diese Variablen sind anfangs leer.

    $servicePrincipalAppId="{serviceprincipalAppID}"
    $servicePrincipalSecret="{serviceprincipalPassword}"
    $servicePrincipalTenantId="{serviceprincipalTenantId}"
    
  8. Führen Sie das Skript auf allen Zielcomputern aus.

Überprüfen des erfolgreichen Onboardings

Navigieren Sie nach der Verbindungsherstellung der SQL Server-Instanzen mit Azure zum Azure-Portal, und rufen Sie die neu erstellten Azure Arc-Ressourcen auf. Innerhalb etwa 1 Minute werden für jeden verbundenen Computer eine neue Ressource vom Typ Server - Azure Arc und für jede verbundene SQL Server-Instanz eine neue Ressource vom Typ SQL Server - Azure Arc angezeigt. Wenn diese Ressourcen nicht erstellt werden, bedeutet dies, dass während der Installation und Aktivierung der Erweiterung Fehler aufgetreten sind. Weitere Optionen für die Problembehandlung finden Sie unter Problembehandlung für die Azure-Erweiterung für SQL Server.

Screenshot showing a successful onboard.

Nächste Schritte