Bereitstellen des SQL Server-Ressourcenanbieters in Azure Stack Hub

Wichtig

Ab dem Azure Stack Hub-Build 2108 werden die SQL- und MySQL-Ressourcenanbieter für Abonnements angeboten, denen Zugriff gewährt wurde. Wenn Sie dieses Feature nutzen möchten oder ein Upgrade von einer früheren Version benötigen, eröffnen Sie ein Supportticket, woraufhin unsere Supporttechniker Sie durch den Bereitstellungs- bzw. Upgradeprozess leiten werden.

Verwenden Sie den SQL Server-Ressourcenanbieter von Azure Stack Hub, um SQL-Datenbanken als Azure Stack Hub-Dienst verfügbar zu machen.

Der SQL Server-Ressourcenanbieter wird als Dienst auf einem virtuellen Windows Server 2016 Server Core-Computer ausgeführt.

Der SQL-Ressourcenanbieter wird als Dienst auf einem speziellen Add-On RP Windows Server ausgeführt.

Wichtig

Auf Servern, die SQL oder MySQL hosten, sollte nur der Ressourcenanbieter Elemente erstellen. Die auf einem Hostserver erstellten Elemente, die nicht vom Ressourcenanbieter erstellt wurden, werden nicht unterstützt und können zu einem Konfliktzustand führen.

Voraussetzungen

Wenn Sie bereits einen Ressourcenanbieter installiert haben, haben Sie wahrscheinlich alle Schritte für die folgenden Voraussetzungen ausgeführt und können diesen Abschnitt überspringen. Führen Sie andernfalls vor dem Fortfahren diese Schritte aus:

  1. Registrieren Sie Ihre Azure Stack Hub-Instanz in Azure, wenn Sie dies noch nicht getan haben. Dieser Schritt ist erforderlich, weil eine Verbindung mit Azure herstellen und aus Azure Elemente in Marketplace herunterladen.

  2. Wenn Sie nicht mit dem Marketplace-Verwaltung-Feature des Azure Stack Hub-Administratorportals vertraut sind, sollten Sie Herunterladen von Marketplace-Elementen in Azure Stack Hub lesen. In dem Artikel werden Sie durch die Schritte geleitet, mit denen Elemente aus Azure in den Azure Stack Hub-Marketplace heruntergeladen werden. Dieser Artikel gilt sowohl für ein verbundenes als auch für ein nicht verbundenes Szenario. Ist Ihre Azure Stack Hub-Instanz nicht verbunden oder teilweise verbunden, gibt es weitere Voraussetzungen, die zur Vorbereitung auf die Installation erfüllt sein müssen.

  3. Aktualisieren Sie Ihr Stammverzeichnis für Azure Active Directory (Azure AD). Ab Build 1910 muss eine neue Anwendung in Ihrem Stammverzeichnismandanten registriert werden. Mit dieser App kann Azure Stack Hub neuere Ressourcenanbieter (z. B. Event Hubs und andere) erfolgreich mit Ihrem Azure AD-Mandanten erstellen und registrieren. Dies ist eine einmalige Aktion, die nach dem Upgrade auf Build 1910 oder höher ausgeführt werden muss. Wird dieser Schritt nicht ausgeführt, tritt bei der Installation von Ressourcenanbietern aus dem Marketplace ein Fehler auf.

SQL Server-Ressourcenanbietervoraussetzungen

  • Sie benötigen einen Computer und ein Konto mit Zugriff auf folgende Komponenten:

    • Das Azure Stack Hub-Administratorportal.
    • Den privilegierten Endpunkt (nur erforderlich, wenn Sie den SQL Server-Ressourcenanbieter V1 bereitstellen oder ein Upgrade von SQL Server-Ressourcenanbieter V1 auf SQL Server-Ressourcenanbieter V2 durchführen).
    • Den Azure Resource Manager-Administratorendpunkt https://adminmanagement.region.<fqdn>, wobei <fqdn> der vollqualifizierte Domänenname ist.
    • Das Internet, wenn Azure Stack Hub so bereitgestellt wurde, dass Azure Active Directory (Azure AD) als Identitätsanbieter verwendet wird.
  • Laden Sie die unterstützte Version des SQL-Ressourcenanbieters in binärer Form gemäß der Versionszuordnungstabelle unten herunter. Laden Sie für den SQL-Ressourcenanbieter V2 das Marketplace-Element in Azure Stack Hub herunter.

    Unterstützte Azure Stack Hub-Version SQL RP Version Windows Server-Instanz, auf der der RP-Dienst ausgeführt wird
    2108 SQL RP-Version 2.0.6.x Microsoft AzureStack Add-on RP Windows Server 1.2009.0
    2108, 2102, 2008, 2005 SQL-RP-Version 1.1.93.5 Microsoft AzureStack Add-on RP Windows Server
  • Stellen Sie sicher, dass die erforderliche Windows Server-VM in den Azure Stack Hub Marketplace heruntergeladen wurde. Laden Sie das Image bei Bedarf manuell gemäß der obigen Versionszuordnungstabelle herunter.

  • Stellen Sie sicher, dass die Voraussetzungen der Datencenterintegration erfüllt sind:

    Voraussetzung Verweis
    Bedingte DNS-Weiterleitung ist ordnungsgemäß festgelegt. Azure Stack Hub-Rechenzentrumsintegration – DNS
    Eingangsports für Ressourcenanbieter sind geöffnet. Azure Stack Hub-Rechenzentrumsintegration – Ports und Protokolle (eingehend)
    PKI-Zertifikatantragsteller und SAN sind ordnungsgemäß festgelegt. Obligatorische PKI-Voraussetzungen für die Azure Stack Hub-Bereitstellung
    PaaS-Zertifikatvoraussetzungen für die Azure Stack Hub-Bereitstellung
  • Bereiten Sie das Zertifikat vor. (Nur bei Installationen in integrierten Systemen.)

    • Sie müssen das SQL-PaaS-PKI-Zertifikat bereitstellen, das im Abschnitt „Optionale PaaS-Zertifikate“ der PKI-Anforderungen für die Azure Stack Hub-Bereitstellung beschrieben ist. Der alternative Antragstellername (Subject Alternative Name, SAN) muss dem folgenden Benennungsmuster entsprechen: CN=*.dbadapter.<region>.<fqdn>, mit Kennwortschutz. Screenshot of marketplace management downloaded packages.
    • Bei der Bereitstellung des SQL Server-Ressourcenanbieters V1 legen Sie die PFX-Datei an dem Speicherort ab, der durch den Parameter DependencyFilesLocalPath angegeben ist. Geben Sie für ASDK-Systeme kein Zertifikat an.
    • Bereiten Sie beim Bereitstellen des SQL Server-Ressourcenanbieters V2 das Zertifikat für die folgenden Installationsschritte vor.

Nicht verbundenes Szenario

Wenn Sie den SQL Server-Ressourcenanbieter V2 in einem nicht verbundenen Szenario bereitstellen, folgen Sie der Anleitung zum Herunterladen von Marketplace-Elementen in Azure Stack Hub, um das SQL Server-Ressourcenanbieterelement und das Add-On RP Windows Server-Element in Ihre Azure Stack Hub-Umgebung herunterzuladen.

Wenn Sie den SQL Server-Ressourcenanbieter V1 bereitstellen, führen Sie in einem nicht verbundenen Szenario die folgenden Schritte aus, um die erforderlichen PowerShell-Module manuell herunterzuladen und das Repository zu registrieren.

  1. Melden Sie sich bei einem Computer mit Internetverbindung an, und verwenden Sie die folgenden Skripts, um die PowerShell-Module herunterzuladen.

    Import-Module -Name PowerShellGet -ErrorAction Stop
    Import-Module -Name PackageManagement -ErrorAction Stop
    
    # path to save the packages, c:\temp\azs1.6.0 as an example here
    $Path = "c:\temp\azs1.6.0"
    
  2. Je nachdem, welche Version des Ressourcenanbieters Sie bereitstellen, führen Sie das entsprechende Skript aus.

    # for resource provider version >= 1.1.93.0
    Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name AzureRM -Path $Path -Force -RequiredVersion 2.5.0
    Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name AzureStack -Path $Path -Force -RequiredVersion 1.8.2
    
    # for resource provider version <= 1.1.47.0
    Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name AzureRM -Path $Path -Force -RequiredVersion 2.3.0
    Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name AzureStack -Path $Path -Force -RequiredVersion 1.6.0
    
  3. Kopieren Sie dann die heruntergeladenen Pakete auf ein USB-Gerät.

  4. Melden Sie sich bei der getrennten Arbeitsstation an, und kopieren Sie die Pakete vom USB-Gerät an einen Speicherort auf der Arbeitsstation.

  5. Registrieren Sie diesen Speicherort als lokales Repository.

    # requires -Version 5
    # requires -RunAsAdministrator
    # requires -Module PowerShellGet
    # requires -Module PackageManagement
    
    $SourceLocation = "C:\temp\azs1.6.0"
    $RepoName = "azs1.6.0"
    
    Register-PSRepository -Name $RepoName -SourceLocation $SourceLocation -InstallationPolicy Trusted
    
    New-Item -Path $env:ProgramFiles -name "SqlMySqlPsh" -ItemType "Directory"
    

Bereitstellen des SQL-Ressourcenanbieters V2

Wenn Sie ein Upgrade von einer V1-Version durchführen, lesen Sie das Dokument Aktualisieren des SQL Server-Ressourcenanbieters.

Starten der Installation

  1. Wenn dies noch nicht geschehen ist, melden Sie am Azure Stack Hub-Administratorportal an, wählen Sie auf der linken Seite Marketplace-Verwaltung aus, und wählen Sie Ressourcenanbieter aus.

  2. Sobald der SQL-Ressourcenanbieter und andere benötigte Software heruntergeladen wurden, zeigt die Marketplace-Verwaltung die „SQL Server-Ressourcenanbieter“-Pakete mit dem Status „Nicht installiert“ an. Möglicherweise gibt es andere Pakete, die mit dem Status „Heruntergeladen“ angezeigt werden. Screenshot of marketplace management before installing the RP.

  3. Wählen Sie die Zeile aus, die Sie installieren möchten. Auf der Seite für Installationspakete des SQL Server-Ressourcenanbieters wird oben ein blaues Banner angezeigt. Wählen Sie das Banner aus, um die Installation zu starten. Screenshot of marketplace management begin install.

Installieren der erforderlichen Komponenten

  1. Als nächstes gelangen Sie zur Installationsseite. Wählen Sie Voraussetzungen installieren aus, um den Installationsvorgang zu starten. Screenshot of marketplace management install prerequisites.

  2. Warten Sie, bis die Installation der Voraussetzungen erfolgreich abgeschlossen ist. Ein grünes Häkchen sollte neben Voraussetzungen installieren angezeigt werden, bevor Sie zum nächsten Schritt wechseln. Screenshot of marketplace management install prerequisites succeeded.

Vorbereiten der Geheimnisse

  1. Wählen Sie unter dem Schritt 2. Geheimnisse vorbereiten den Link Zertifikat hinzufügen aus. Daraufhin wird der Bereich Zertifikat hinzufügen angezeigt. Screenshot of marketplace management prepare secrets.

  2. Wählen Sie die Schaltfläche für Durchsuchen unter Zertifikat hinzufügen aus, die sich direkt rechts neben dem Feld mit dem Dateinamen des Zertifikats befindet. Wählen Sie die PFX-Zertifikatsdatei aus, die Sie beim Ausführen der Schritte für die Voraussetzungen beschafft haben.

  3. Geben Sie das Kennwort ein, das Sie angegeben haben, um eine sichere Zeichenfolge für das SSL-Zertifikat des SQL Server-Ressourcenanbieters zu erstellen. Wählen Sie anschließend Hinzufügen. Screenshot of marketplace management add certificate.

Installieren des Ressourcenanbieters

  1. Wenn das Zertifikat erfolgreich installiert wurde, sollte ein grünes Häkchen neben Geheimnisse vorbereiten angezeigt werden. Ist dies der Fall, wechseln Sie zum nächsten Schritt. Wählen Sie nun die Schaltfläche Installierenneben 3. Ressourcenanbieter installieren aus. Screenshot of marketplace management start RP install.

  2. Als nächstes wird die folgende Seite angezeigt, auf der mitgeteilt wird, dass der SQL-Ressourcenanbieter installiert wird. Screenshot of marketplace management RP installing.

  3. Warten Sie, bis die Benachrichtigung angezeigt wird, dass die Installation abgeschlossen ist. Dieser Vorgang dauert in der Regel eine oder mehrere Stunden, je nach Ihrem Azure Stack Hub-Typ. Screenshot of marketplace management RP install in progress.

  4. Überprüfen Sie, ob die Installation des SQL Server-Ressourcenanbieters erfolgreich war. Kehren Sie dazu zur Seite Marketplace-Verwaltung, Ressourcenanbieter zurück. Der Status des SQL Server-Ressourcenanbieters sollte „Installiert“ lauten. Screenshot of marketplace management RP installed.

Bereitstellen des SQL-Ressourcenanbieters V1

Nachdem Sie alle Voraussetzungen erfüllt haben, führen Sie die selbstextrahierende Datei aus, um das heruntergeladene Installationspaket in ein temporäres Verzeichnis zu entpacken. Führen Sie das Skript DeploySqlProvider.ps1 auf einem Computer aus, der sowohl auf den Resource Manager-Administratorendpunkt für Azure Stack Hub als auch auf den privilegierten Endpunkt zugreifen kann, um den SQL-Ressourcenanbieter bereitzustellen. Das Skript „DeploySqlProvider.ps1“ wird als Teil der Binärdatei vom SQL-Ressourcenanbieter extrahiert, die Sie für Ihre Azure Stack Hub-Version heruntergeladen haben.

Wichtig

Überprüfen Sie vor der Bereitstellung des Ressourcenanbieters die Anmerkungen zu dieser Version auf Informationen zu neuen Funktionen, Fehlerbehebungen und bekannten Problemen, die sich auf die Bereitstellung auswirken können.

Öffnen Sie ein neues PowerShell-Fenster mit erhöhten Rechten (nicht PowerShell ISE), und wechseln Sie zu dem Verzeichnis, in das Sie die Binärdateien des SQL-Ressourcenanbieters extrahiert haben, um den SQL-Ressourcenanbieter bereitzustellen.

Wichtig

Es wird dringend empfohlen, Clear-AzureRmContext -Scope CurrentUser und Clear-AzureRmContext -Scope Process zu verwenden, um den Cache vor dem Ausführen des Bereitstellungs- oder Aktualisierungsskripts zu löschen.

Führen Sie das Skript „DeploySqlProvider.ps1“ aus, das die folgenden Aufgaben ausführt:

  • Lädt die Zertifikate und andere Artefakte in ein Azure Stack Hub-Speicherkonto hoch.
  • Veröffentlicht Katalogpakete, damit Sie SQL-Datenbank-Instanzen über den Katalog bereitstellen können.
  • Veröffentlicht ein Katalogpaket für die Bereitstellung von Hostservern.
  • Stellt VM unter Verwendung des heruntergeladenen Images – „Windows Server 2016 Core“ oder „Microsoft AzureStack Add-on RP Windows Server“ – eine bereit und installiert dann den SQL-Ressourcenanbieter.
  • Registriert einen lokalen DNS-Eintrag, der dem virtuellen Computer mit dem Ressourcenanbieter zugeordnet wird.
  • Registriert Ihren Ressourcenanbieter beim lokalen Azure Resource Manager für das Operatorkonto.

Hinweis

Sobald die Bereitstellung des SQL-Ressourcenanbieters beginnt, wird die Ressourcengruppe system.local.sqladapter erstellt. Es kann bis zu 75 Minuten dauern, bis die erforderlichen Bereitstellungen für diese Ressourcengruppe fertig gestellt sind. Sie sollten keine weiteren Ressourcen in der Ressourcengruppe system.local.sqladapter platzieren.

Parameter „DeploySqlProvider.ps1“

Sie können die folgenden Parameter in der Befehlszeile angeben. Wenn Sie keine Parameter angeben oder bei der Überprüfung eines Parameters ein Fehler auftritt, werden Sie aufgefordert, die erforderlichen Parameter anzugeben.

Parametername BESCHREIBUNG Kommentar oder Standardwert
CloudAdminCredential Die Anmeldeinformationen für den Cloudadministrator, die für den Zugriff auf den privilegierten Endpunkt erforderlich sind. Erforderlich
AzCredential Die Anmeldeinformationen für das Azure Stack Hub-Dienstadministratorkonto. Verwenden Sie die gleichen Anmeldeinformationen wie bei der Bereitstellung von Azure Stack Hub. Beim Skript tritt ein Fehler auf, wenn für das Konto, das Sie mit AzCredential verwenden, mehrstufige Authentifizierung (Multi-Factor Authentication, MFA) erforderlich ist. Erforderlich
VMLocalCredential Die Anmeldeinformationen für das lokale Administratorkonto des virtuellen Computers mit dem SQL-Ressourcenanbieter. Erforderlich
PrivilegedEndpoint Die IP-Adresse oder der DNS-Name des privilegierten Endpunkts. Erforderlich
AzureEnvironment Die zum Bereitstellen von Azure Stack Hub verwendete Azure-Umgebung des Dienstadministratorkontos. Nur für Azure AD-Bereitstellungen erforderlich. Unterstützte Umgebungsnamen sind AzureCloud, AzureUSGovernment oder für ein chinesisches Azure AD AzureChinaCloud. AzureCloud
DependencyFilesLocalPath Ihre Zertifikatdatei (PFX-Datei) muss nur für integrierte Systeme ebenfalls in diesem Verzeichnis abgelegt werden. Sie können optional ein Windows Update MSU-Paket in dieses Verzeichnis kopieren. Optional (für integrierte Systeme erforderlich)
DefaultSSLCertificatePassword Das Kennwort für das PFX-Zertifikat. Erforderlich
MaxRetryCount Die Anzahl von Wiederholungsversuchen für jeden Vorgang, wenn ein Fehler auftritt. 2
RetryDuration Das Timeoutintervall zwischen Wiederholungen in Sekunden. 120
Deinstallieren Entfernt den Ressourcenanbieter und alle zugeordneten Ressourcen (siehe folgende Hinweise). Nein
DebugMode Verhindert die automatische Bereinigung nach einem Fehler. Nein

Bereitstellen des SQL-Ressourcenanbieters mithilfe eines benutzerdefinierten Skripts

Wenn Sie die Version 1.1.33.0 oder frühere Versionen des SQL-Ressourcenanbieters bereitstellen, müssen Sie bestimmte Versionen von „AzureRm.BootStrapper“ und Azure Stack Hub-Modulen in PowerShell installieren.

Wenn Sie Version 1.1.47.0 oder höher des SQL-Ressourcenanbieters bereitstellen, lädt das Bereitstellungsskript die erforderlichen PowerShell-Module automatisch herunter und installiert sie im Pfad „C:\Programme\SqlMySqlPsh“.

# Install the AzureRM.Bootstrapper module, set the profile, and install the AzureStack module
# Note that this might not be the most currently available version of Azure Stack Hub PowerShell
Install-Module -Name AzureRm.BootStrapper -RequiredVersion 0.5.0 -Force
Use-AzureRmProfile -Profile 2018-03-01-hybrid -Force
Install-Module -Name AzureStack -RequiredVersion 1.6.0

Hinweis

In einem nicht verbundenen Szenario müssen Sie vor der Bereitstellung die erforderlichen PowerShell-Module manuell herunterladen und das Repository registrieren.

Um jegliche manuelle Konfiguration bei der Bereitstellung des Ressourcenanbieters zu vermeiden, können Sie das folgende Skript anpassen. Ändern Sie die Standardkontoinformationen und -kennwörter entsprechend den Anforderungen für Ihre Azure Stack Hub-Bereitstellung.

# Use the NetBIOS name for the Azure Stack Hub domain. On the Azure Stack Hub SDK, the default is AzureStack but could have been changed at install time.
$domain = "AzureStack"

# For integrated systems, use the IP address of one of the ERCS VMs
$privilegedEndpoint = "AzS-ERCS01"

# Provide the Azure environment used for deploying Azure Stack Hub. Required only for Azure AD deployments. Supported values for the <environment name> parameter are AzureCloud, AzureChinaCloud, or AzureUSGovernment depending which Azure subscription you're using.
$AzureEnvironment = "<EnvironmentName>"

# Point to the directory where the resource provider installation files were extracted.
$tempDir = 'C:\TEMP\SQLRP'

# The service admin account can be Azure Active Directory or Active Directory Federation Services.
$serviceAdmin = "admin@mydomain.onmicrosoft.com"
$AdminPass = ConvertTo-SecureString 'P@ssw0rd1' -AsPlainText -Force
$AdminCreds = New-Object System.Management.Automation.PSCredential ($serviceAdmin, $AdminPass)

# Set credentials for the new resource provider VM local admin account.
$vmLocalAdminPass = ConvertTo-SecureString 'P@ssw0rd1' -AsPlainText -Force
$vmLocalAdminCreds = New-Object System.Management.Automation.PSCredential ("sqlrpadmin", $vmLocalAdminPass)

# Add the cloudadmin credential that's required for privileged endpoint access.
$CloudAdminPass = ConvertTo-SecureString 'P@ssw0rd1' -AsPlainText -Force
$CloudAdminCreds = New-Object System.Management.Automation.PSCredential ("$domain\cloudadmin", $CloudAdminPass)

# Change the following as appropriate.
$PfxPass = ConvertTo-SecureString 'P@ssw0rd1' -AsPlainText -Force

# For version 1.1.47.0 or later, the PowerShell modules used by the RP deployment are placed in C:\Program Files\SqlMySqlPsh
# The deployment script adds this path to the system $env:PSModulePath to ensure correct modules are used.
$rpModulePath = Join-Path -Path $env:ProgramFiles -ChildPath 'SqlMySqlPsh'
$env:PSModulePath = $env:PSModulePath + ";" + $rpModulePath 

# Change to the directory folder where you extracted the installation files. Don't provide a certificate on ASDK!
. $tempDir\DeploySQLProvider.ps1 `
    -AzCredential $AdminCreds `
    -VMLocalCredential $vmLocalAdminCreds `
    -CloudAdminCredential $cloudAdminCreds `
    -PrivilegedEndpoint $privilegedEndpoint `
    -AzureEnvironment $AzureEnvironment `
    -DefaultSSLCertificatePassword $PfxPass `
    -DependencyFilesLocalPath $tempDir\cert

Wenn das Skript zur Installation des Ressourcenanbieters abgeschlossen ist, aktualisieren Sie Ihren Browser, um sicherzustellen, dass die neuesten Updates angezeigt werden, und um die aktuelle PowerShell-Sitzung zu schließen.

Überprüfen der V1-Bereitstellung über das Azure Stack Hub-Portal

  1. Melden Sie sich als Dienstadministrator beim Verwaltungsportal an.
  2. Wählen Sie Ressourcengruppen aus.
  3. Wählen Sie die Ressourcengruppe system.<Speicherort>.sqladapter aus.
  4. Auf der Zusammenfassungsseite der Ressourcengruppenübersicht sollten keine fehlerhaften Bereitstellungen angezeigt werden.
  5. Wählen Sie abschließend im Administratorportal die Option Virtuelle Computer aus, um zu überprüfen, ob der virtuelle Computer des SQL-Ressourcenanbieters erfolgreich erstellt wurde und ausgeführt wird.

Wichtige Konfiguration für Azure AD

Wenn Ihre Azure Stack Hub-Instanz Azure AD als Identitätsanbieter verwendet, stellen Sie sicher, dass der virtuelle Computer, auf dem der SQL Server-Ressourcenanbieter installiert ist, über eine ausgehende Internetverbindung verfügt.

Wenn Sie die IP-Adresse der VM benötigen, auf der der SQL Server-Ressourcenanbieter installiert ist (d. h. fügen Sie die IP-Adresse zu Ihrer Firewall-Positivliste hinzu), müssen Sie einen Supportfall eröffnen und den Supporttechniker auffordern, das Abonnement des SQL Server-Anbieters vorübergehend anzuzeigen. Anschließend können Sie den virtuellen Computer im Abonnement suchen und seine IP-Adresse abrufen.

Nächste Schritte

Hinzufügen von Hostservern