De SQL Server-resourceprovider implementeren in Azure Stack Hub

Belangrijk

Vanaf Azure Stack Hub build 2108 worden de SQL- en MySQL-resourceproviders aangeboden aan abonnementen die toegang hebben gekregen. Als u deze functie wilt gaan gebruiken of als u een upgrade wilt uitvoeren van een eerdere versie, opent u een ondersteuningsaanvraag . Onze ondersteuningstechnici begeleiden u door het implementatie- of upgradeproces.

Gebruik de Azure Stack Hub SQL Server resourceprovider om SQL-databases beschikbaar te maken als een Azure Stack Hub-service.

De SQL-resourceprovider wordt uitgevoerd als een service op een virtuele machine Windows Server 2016 Server Core.

De SQL-resourceprovider wordt uitgevoerd als een service op een speciale RP-invoegtoepassing voor Windows Server.

Belangrijk

Alleen de resourceprovider mag items maken op servers waarop SQL of MySQL wordt gehost. Items die op een hostserver zijn gemaakt en die niet door de resourceprovider worden gemaakt, worden niet ondersteund en kunnen leiden tot een niet-overeenkomende status.

Belangrijk

De V2.x SQL/MySQL-resourceprovider maakt gebruik van het DRP-installatiemechanisme (Deployment Resource Provider), dat niet wordt ondersteund op de ASDK. Daarom wordt de V2.x SQL/MySQL-resourceprovider niet ondersteund op de ASDK.

Vereisten

Als u al een resourceprovider hebt geïnstalleerd, hebt u waarschijnlijk aan de volgende vereisten voldaan en kunt u deze sectie overslaan. Voer anders deze stappen uit voordat u doorgaat:

  1. Registreer uw Azure Stack Hub-exemplaar bij Azure, als u dit nog niet hebt gedaan. Deze stap is vereist omdat u verbinding maakt met en items downloadt naar Marketplace vanuit Azure.

  2. Als u niet bekend bent met de functie Marketplace-beheer van de Azure Stack Hub-beheerportal, raadpleegt u Marketplace-items downloaden van Azure en publiceren naar Azure Stack Hub. In dit artikel wordt uitgelegd hoe u items downloadt van Azure naar de Azure Stack Hub Marketplace. Het behandelt zowel verbonden als niet-verbonden scenario's. Als de verbinding met uw Azure Stack Hub-exemplaar is verbroken of gedeeltelijk is verbonden, zijn er aanvullende vereisten die moeten worden uitgevoerd ter voorbereiding op de installatie.

  3. Werk uw Microsoft Entra basismap bij. Vanaf build 1910 moet een nieuwe toepassing worden geregistreerd in uw basismaptenant. Met deze app kan Azure Stack Hub nieuwere resourceproviders (zoals Event Hubs en andere) maken en registreren met uw Microsoft Entra-tenant. Dit is een eenmalige actie die moet worden uitgevoerd na een upgrade naar build 1910 of hoger. Als deze stap niet is voltooid, mislukken de installaties van marketplace-resourceproviders.

vereisten voor SQL Server resourceprovider

  • U hebt een computer en account nodig die toegang hebben tot:

    • de Azure Stack Hub-beheerportal.
    • het bevoegde eindpunt (alleen nodig wanneer u SQL Server resourceprovider V1 implementeert of een upgrade uitvoert van SQL Server resourceprovider V1 naar SQL Server resourceprovider V2).
    • het Azure Resource Manager-beheereindpunt, https://adminmanagement.region.<fqdn>, waarbij <fqdn> uw volledig gekwalificeerde domeinnaam is.
    • het internet, als uw Azure Stack Hub is geïmplementeerd om Microsoft Entra id te gebruiken als uw id-provider.
  • Download de ondersteunde versie van het binaire bestand van de SQL-resourceprovider volgens de onderstaande tabel met versietoewijzingen. Download voor de V2 SQL-resourceprovider het marketplace-item naar Azure Stack Hub.

    Ondersteunde Versie van Azure Stack Hub SQL RP-versie Windows Server waarop de RP-service wordt uitgevoerd
    2206, 2301, 2306 SQL RP versie 2.0.13.x Microsoft AzureStack RP RP Windows Server 1.2009.0
    2108, 2206 SQL RP versie 2.0.6.x Microsoft AzureStack RP RP Windows Server 1.2009.0
  • Zorg ervoor dat de vereiste Windows Server-VM is gedownload naar Azure Stack Hub Marketplace. Download de installatiekopieën handmatig volgens de bovenstaande versietoewijzingstabel.

  • Zorg ervoor dat aan de vereisten voor datacentrumintegratie wordt voldaan:

    Vereiste Referentie
    Voorwaardelijke DNS-doorsturen is correct ingesteld. Integratie van Azure Stack Hub-datacenter - DNS
    Binnenkomende poorten voor resourceproviders zijn geopend. Integratie van Azure Stack Hub-datacenter - Poorten en protocollen binnenkomend
    PKI-certificaatonderwerp en SAN zijn correct ingesteld. Vereiste PKI-vereisten voor Azure Stack Hub-implementatie
    Vereisten voor PaaS-certificaat voor Azure Stack Hub-implementatie
  • Bereid het certificaat voor. (Alleen voor installaties van geïntegreerde systemen.)

    • U moet het SQL PaaS PKI-certificaat opgeven dat wordt beschreven in de optionele sectie PaaS-certificaten van de PKI-vereisten voor Azure Stack Hub-implementatie. De alternatieve naam voor onderwerp (SAN) moet voldoen aan het volgende naamgevingspatroon: CN=*.dbadapter.<regio>.<fqdn>, met wachtwoordbeveiliging. Schermopname van gedownloade pakketten voor Marketplace-beheer.
    • Wanneer u SQL Server resourceprovider V1 implementeert, plaatst u het PFX-bestand op de locatie die is opgegeven door de parameter DependencyFilesLocalPath. Geef geen certificaat op voor ASDK-systemen.
    • Wanneer u SQL Server resourceprovider V2 implementeert, bereidt u het certificaat voor op de volgende installatiestappen.

Scenario met verbroken verbinding

Wanneer u SQL Server resourceprovider V2 implementeert in een niet-verbonden scenario, volgt u de instructies marketplace-items downloaden naar Azure Stack Hub om het SQL Server resourceprovider-item en het INVOEGTOEPASSING Windows Server-item te downloaden naar uw Azure Stack Hub-omgeving.

Wanneer u SQL Server resourceprovider V1 implementeert in een niet-verbonden scenario, voert u de volgende stappen uit om de vereiste PowerShell-modules te downloaden en de opslagplaats handmatig te registreren.

  1. Meld u aan bij een computer met internetverbinding en gebruik de volgende scripts om de PowerShell-modules te downloaden.

    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. Afhankelijk van de versie van de resourceprovider die u implementeert, voert u een van de scripts uit.

    # 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. Vervolgens kopieert u de gedownloade pakketten naar een USB-apparaat.

  4. Meld u aan bij het niet-verbonden werkstation en kopieer de pakketten van het USB-apparaat naar een locatie op het werkstation.

  5. Registreer deze locatie als een lokale opslagplaats.

    # 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"
    

De SQL-resourceprovider V2 implementeren

Als u een upgrade uitvoert van een V1-versie, raadpleegt u het document De SQL Server resourceprovider bijwerken.

Installatie starten

  1. Als u dat nog niet hebt gedaan, meldt u zich aan bij de Azure Stack Hub-beheerportal, selecteert u aan de linkerkant Marketplace-beheer en selecteert u Resourceproviders.

  2. Zodra de SQL-resourceprovider en andere vereiste software zijn gedownload, toont Marketplace-beheer de pakketten 'SQL Server resourceprovider' met de status Niet geïnstalleerd. Er kunnen andere pakketten zijn die de status 'Gedownload' weergeven. Schermopname van Marketplace-beheer voordat de RP wordt geïnstalleerd.

  3. Selecteer de rij die u wilt installeren. Op de pagina SQL Server installatiepakket van de resourceprovider wordt bovenaan een blauwe banner weergegeven. Selecteer de banner om de installatie te starten. Schermopname van de installatie van Marketplace-beheer.

Vereiste onderdelen installeren

  1. Vervolgens wordt u overgebracht naar de installatiepagina. Selecteer Vereisten installeren om het installatieproces te starten. Schermopname van installatievereisten voor Marketplace-beheer.

  2. Wacht totdat de installatie van de vereisten is voltooid. U ziet een groen vinkje naast Installatievereisten voordat u doorgaat met de volgende stap. Schermopname van de installatievereisten voor Marketplace-beheer zijn voltooid.

Geheimen voorbereiden

  1. Onder de 2. De stap Geheimen voorbereiden , selecteer Certificaat toevoegen en het deelvenster Een certificaat toevoegen wordt weergegeven. Schermopname van het voorbereiden van geheimen voor Marketplace-beheer.

  2. Selecteer de bladerknop bij Een certificaat toevoegen, rechts van het veld bestandsnaam van het certificaat. Selecteer het PFX-certificaatbestand dat u hebt aangeschaft bij het voltooien van de vereisten.

  3. Voer het wachtwoord in dat u hebt opgegeven om een beveiligde tekenreeks te maken voor SQL Server SSL-certificaat van de resourceprovider. Selecteer vervolgens Toevoegen. Schermopname van het toevoegen van een certificaat voor Marketplace-beheer.

Resourceprovider installeren

  1. Wanneer de installatie van het certificaat is voltooid, ziet u een groen vinkje naast Geheimen voorbereiden voordat u doorgaat met de volgende stap. Selecteer nu de knop Installeren naast 3 Resourceprovider installeren. Schermopname van het starten van de installatie van RP voor Marketplace-beheer.

  2. Vervolgens ziet u de volgende pagina, die aangeeft dat de SQL-resourceprovider wordt geïnstalleerd. Schermopname van de installatie van RP voor Marketplace-beheer.

  3. Wacht tot de installatie is voltooid. Dit proces duurt meestal een of meer uur, afhankelijk van uw Type Azure Stack Hub. Schermopname van de RP-installatie van Marketplace-beheer wordt uitgevoerd.

  4. Controleer of de installatie van SQL Server resourceprovider is geslaagd door terug te keren naar de pagina Marketplace-beheer, Resourceproviders. De status van SQL Server resourceprovider moet 'Geïnstalleerd' weergeven. Schermopname van RP voor Marketplace-beheer geïnstalleerd.

De SQL-resourceprovider V1 implementeren

Nadat u aan alle vereisten hebt voldaan, voert u de self-extractor uit om het gedownloade installatiepakket uit te pakken naar een tijdelijke map. voer het DeploySqlProvider.ps1 script uit vanaf een computer die toegang heeft tot zowel het Azure Resource Manager-beheereindpunt van Azure Stack Hub als het bevoegde eindpunt, om de SQL-resourceprovider te implementeren. Het DeploySqlProvider.ps1-script wordt geëxtraheerd als onderdeel van het binaire bestand van de SQL-resourceprovider dat u hebt gedownload voor uw versie van Azure Stack Hub.

Belangrijk

Voordat u de resourceprovider implementeert, raadpleegt u de opmerkingen bij de release voor meer informatie over nieuwe functionaliteit, oplossingen en bekende problemen die van invloed kunnen zijn op uw implementatie.

Als u de SQL-resourceprovider wilt implementeren, opent u een nieuw PowerShell-venster met verhoogde bevoegdheid (niet PowerShell ISE) en gaat u naar de map waarin u de binaire bestanden van de SQL-resourceprovider hebt uitgepakt.

Belangrijk

U wordt ten zeerste aangeraden Clear-AzureRmContext -Scope CurrentUser en Clear-AzureRmContext -Scope Process te gebruiken om de cache te wissen voordat u het implementatie- of updatescript uitvoert.

Voer het DeploySqlProvider.ps1-script uit, waarmee de volgende taken worden voltooid:

  • Hiermee uploadt u de certificaten en andere artefacten naar een opslagaccount in Azure Stack Hub.
  • Hiermee publiceert u galeriepakketten, zodat u SQL-databases kunt implementeren met behulp van de galerie.
  • Hiermee publiceert u een galeriepakket voor het implementeren van hostingservers.
  • Implementeert een VM met behulp van de Windows Server 2016 kerninstallatiekopieën of Microsoft AzureStack Add-on Windows Server-installatiekopieën die u hebt gedownload en installeert vervolgens de SQL-resourceprovider.
  • Registreert een lokale DNS-record die is toegewezen aan de VM van uw resourceprovider.
  • Registreert uw resourceprovider bij de lokale Azure Resource Manager voor het operatoraccount.

Notitie

Wanneer de implementatie van de SQL-resourceprovider wordt gestart, wordt de resourcegroep system.local.sqladapter gemaakt. Het kan tot 75 minuten duren voordat de vereiste implementaties voor deze resourcegroep zijn voltooid. Plaats geen andere resources in de resourcegroep system.local.sqladapter .

DeploySqlProvider.ps1 parameters

U kunt de volgende parameters opgeven vanaf de opdrachtregel. Als u dat niet doet of als een parametervalidatie mislukt, wordt u gevraagd de vereiste parameters op te geven.

Parameternaam Beschrijving Opmerking of standaardwaarde
CloudAdminCredential De referentie voor de cloudbeheerder, die nodig is voor toegang tot het bevoegde eindpunt. Vereist
AzCredential De referenties voor het servicebeheerdersaccount van Azure Stack Hub. Gebruik dezelfde referenties die u hebt gebruikt voor het implementeren van Azure Stack Hub. Het script mislukt als het account dat u gebruikt met AzCredential meervoudige verificatie (MFA) vereist. Vereist
VMLocalCredential De referenties voor het lokale beheerdersaccount van de VM van de SQL-resourceprovider. Vereist
PrivilegedEndpoint Het IP-adres of de DNS-naam van het bevoegde eindpunt. Vereist
AzureEnvironment De Azure-omgeving van het servicebeheerdersaccount dat wordt gebruikt voor het implementeren van Azure Stack Hub. Alleen vereist voor Microsoft Entra implementaties. Ondersteunde omgevingsnamen zijn AzureCloud, AzureUSGovernment of, als u een China Microsoft Entra-id gebruikt, AzureChinaCloud. AzureCloud
DependencyFilesLocalPath Alleen voor geïntegreerde systemen moet het PFX-bestand van het certificaat in deze map worden geplaatst. U kunt hier desgewenst één Windows Update MSU-pakket kopiëren. Optioneel (verplicht voor geïntegreerde systemen)
DefaultSSLCertificatePassword Het wachtwoord voor het PFX-certificaat. Vereist
MaxRetryCount Het aantal keren dat u elke bewerking opnieuw wilt proberen als er een fout optreedt. 2
RetryDuration Het time-outinterval tussen nieuwe pogingen, in seconden. 120
Verwijderen Hiermee verwijdert u de resourceprovider en alle gekoppelde resources (zie de volgende opmerkingen). No
DebugMode Hiermee voorkomt u dat automatisch opschonen mislukt. No

De SQL-resourceprovider implementeren met behulp van een aangepast script

Als u versie 1.1.33.0 of eerdere versies van de SQL-resourceprovider implementeert, moet u specifieke versies van AzureRm.BootStrapper- en Azure Stack Hub-modules in PowerShell installeren.

Als u versie 1.1.47.0 of hoger van de SQL-resourceprovider implementeert, worden met het implementatiescript automatisch de benodigde PowerShell-modules gedownload en geïnstalleerd voor het pad naar C:\Program Files\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

Notitie

In een niet-verbonden scenario moet u de vereiste PowerShell-modules downloaden en de opslagplaats handmatig registreren als vereiste.

Als u handmatige configuratie wilt elimineren bij het implementeren van de resourceprovider, kunt u het volgende script aanpassen. Wijzig zo nodig de standaardaccountgegevens en wachtwoorden voor uw Azure Stack Hub-implementatie.

# 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

Wanneer het installatiescript van de resourceprovider is voltooid, vernieuwt u de browser om ervoor te zorgen dat u de meest recente updates kunt zien en sluit u de huidige PowerShell-sessie.

De V1-implementatie controleren met behulp van de Azure Stack Hub-portal

  1. Meld u als servicebeheerder aan bij de beheerdersportal.
  2. Selecteer Resourcegroepen.
  3. Selecteer het systeem.<resourcegroep location.sqladapter>.
  4. Op de overzichtspagina voor Overzicht van resourcegroep mogen er geen mislukte implementaties zijn.
  5. Selecteer ten slotte Virtuele machines in de beheerportal om te controleren of de VM van de SQL-resourceprovider is gemaakt en wordt uitgevoerd.

Belangrijke configuratie voor Microsoft Entra-id

Als uw Azure Stack Hub Microsoft Entra id als id-provider gebruikt, moet u ervoor zorgen dat de VM die is geïnstalleerd SQL Server resourceprovider uitgaande internetverbinding heeft.

Als het IP-adres moet worden opgehaald van de VM die is geïnstalleerd SQL Server resourceprovider (dat wil zeggen het IP-adres toevoegen aan de acceptatielijst van de firewall), moet u een ondersteuningsaanvraag openen en de ondersteuningstechnicus de SQL Server resourceproviderabonnement tijdelijk zichtbaar laten maken. Vervolgens kunt u de VM in het abonnement vinden en het IP-adres ophalen.

Volgende stappen

Hostingservers toevoegen