De MySQL-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 vanaf een eerdere versie, opent u een ondersteuningsaanvraag . Onze ondersteuningstechnici begeleiden u door het implementatie- of upgradeproces.

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

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

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

Belangrijk

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

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 van 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 stapsgewijs uitgelegd hoe u items downloadt van Azure naar de Azure Stack Hub Marketplace. Het omvat 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 er 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 bij 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 mySQL Server-resourceprovider

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

    • de Azure Stack Hub-beheerdersportal.
    • het bevoegde eindpunt (alleen nodig wanneer u MySQL Server-resourceprovider V1 implementeert of een upgrade uitvoert van MySQL Server-resourceprovider V1 naar MySQL Server-resourceprovider V2).
    • het Azure Resource Manager-beheereindpunt, https://adminmanagement.region.<fqdn>, waarbij <fqdn> uw volledig gekwalificeerde domeinnaam is.
    • 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 MySQL-resourceprovider volgens de onderstaande tabel met versietoewijzingen. Download voor de V2 MySQL-resourceprovider het marketplace-item naar Azure Stack Hub.

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

  • Ervoor zorgen dat aan de vereisten voor datacentrumintegratie wordt voldaan:R

    Vereiste Referentie
    Doorsturen via voorwaardelijke DNS is juist ingesteld. Integratie van Azure Stack Hub-datacenter - DNS
    Binnenkomende poorten voor resourceproviders zijn geopend. Azure Stack Hub-datacenterintegratie - Eindpunten publiceren
    PKI-certificaatonderwerp en SAN zijn correct ingesteld. Azure Stack Hub-implementatie verplichte PKI-vereistenAzure Stack Hub-implementatie PaaS-certificaatvereisten
  • 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 PKI-vereisten voor Azure Stack Hub-implementatie. De alternatieve naam van het onderwerp (SAN) moet voldoen aan het volgende naamgevingspatroon: CN=*.dbadapter.<regio>.<fqdn>, met wachtwoordbeveiliging. Schermopname van het certificaat.
    • Wanneer u MySQL 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 MySQL Server-resourceprovider V2 implementeert, bereidt u het certificaat voor op de volgende installatiestappen.

Scenario met verbroken verbinding

Wanneer u MySQL Server-resourceprovider V2 implementeert in een niet-verbonden scenario, volgt u de instructies voor het downloaden van Marketplace-items naar Azure Stack Hub om het mySQL Server-resourceprovideritem en het RP Windows Server-invoegtoepassingsitem te downloaden naar uw Azure Stack Hub-omgeving.

Wanneer u MySQL 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 MySQL-resourceprovider V2 implementeren

Als u een upgrade uitvoert van een V1-versie, raadpleegt u het document Update the MySQL Server resource provider (De mySQL 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 MySQL-resourceprovider en andere vereiste software zijn gedownload, toont Marketplace-beheer de pakketten 'MySQL Server-resourceprovider' met de status 'Niet geïnstalleerd'. Er kunnen andere pakketten zijn die de status 'Gedownload' hebben.

    Schermopname van Marketplace-beheer voordat de RP wordt geïnstalleerd.

  3. Selecteer de rij die u wilt installeren. Op de pagina MySQL Server-resourceproviderinstallatiepakket ziet u bovenaan een blauwe banner. Selecteer de banner om de installatie te starten. Schermopname van het starten van de installatie van RP voor 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 Vereisten installeren voordat u doorgaat met de volgende stap. Schermopname van de installatievereisten voor Marketplace-beheer 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 in 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 configureren en 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 Configureren en installeren naast 3 Resourceprovider installeren. Schermopname van het starten van de RP-installatie van Marketplace-beheer.

  2. Vervolgens moet u een Azure Stack Hub Blob-URI voor MySQL-connector opgeven.

    • Bekijk hier de GPL-licentie van MySQL Connector en download versie 8.0.21 naar een lokale map.

    • Creatie een opslagaccount met uw standaardoperatorabonnement en maak een container met het toegangsniveau 'Blob' of 'Container'. Schermopname van het maken van een opslagaccount.Schermopname van het maken van een opslagcontainer.

    • Upload het mysql-connector-net-8.0.21.msi-bestand vanuit uw lokale map naar de zojuist gemaakte opslagcontainer. Schermopname van het uploaden van MySQL Connector naar de container.

    Belangrijk

    Zorg ervoor dat de versie van de MySQL-connector 8.0.21 is.

    • Kopieer de blob-URI. Schermopname van het kopiëren van de MySQL Connector-URI.

    • Terug naar de mySQL RP-configuratiepagina. Plak de blob-URI (bijvoorbeeld https://< storageAccountName.blob>.<regio>.<FQDN>/<containerName>/mysql-connector-net-8.0.21.msi) naar het tekstvak en klik op OK. Schermopname van het opgeven van de MySQL-connector-URI.

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

  4. Wacht tot de melding dat 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.

  5. Controleer of de installatie van de MySQL Server-resourceprovider is geslaagd door terug te keren naar de pagina Marketplace-beheer, Resourceproviders . De status van de MySQL 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 in een tijdelijke map. Voer het DeployMySqlProvider.ps1-script uit vanaf een computer die toegang heeft tot zowel het Azure Stack Hub Azure Resource Manager-beheereindpunt als het bevoegde eindpunt, om de MySQL-resourceprovider te implementeren. Het DeployMySqlProvider.ps1 script wordt geëxtraheerd als onderdeel van de installatiebestanden van de MySQL-resourceprovider die 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 MySQL-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 MySQL-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.

Notitie

Als u MySQL Server-resourceprovider V1 implementeert in een niet-verbonden omgeving, kopieert u hetmysql-connector-net-6.10.5.msi-bestand naar een lokaal pad. Geef de padnaam op met behulp van de parameter DependencyFilesLocalPath .

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

  • Uploadt de certificaten en andere artefacten naar een opslagaccount in Azure Stack Hub.
  • Hiermee publiceert u galeriepakketten, zodat u MySQL-databases kunt implementeren met behulp van de galerie.
  • Hiermee publiceert u een galeriepakket voor het implementeren van hostingservers.
  • Hiermee implementeert u een VM met behulp van de Windows Server 2016 kerninstallatiekopieën of de Microsoft AzureStack Add-on Windows Server-installatiekopieën die u hebt gedownload en installeert u vervolgens de MySQL-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 MySQL-resourceprovider wordt gestart, wordt de resourcegroep system.local.mysqladapter gemaakt. Het kan tot 75 minuten duren voordat de implementaties voor deze resourcegroep zijn voltooid. Plaats geen andere resources in de resourcegroep system.local.mysqladapter .

DeployMySqlProvider.ps1 parameters

U kunt deze parameters opgeven vanaf de opdrachtregel. Als u dat niet doet of als een parametervalidatie mislukt, wordt u gevraagd om 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 beheerdersaccount van de Azure Stack Hub-service. 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 MySQL-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. Voor niet-verbonden omgevingen downloadt umysql-connector-net-6.10.5.msi naar deze map. U kunt hier desgewenst één Windows Update MSU-pakket kopiëren. Optioneel (verplicht voor geïntegreerde systemen of niet-verbonden omgevingen)
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 bijbehorende resources (zie de volgende opmerkingen). No
DebugMode Voorkomt automatisch opschonen bij een fout. No
AcceptLicense Hiermee wordt de prompt om de GPL-licentie te accepteren overgeslagen. https://www.gnu.org/licenses/old-licenses/gpl-2.0.html

De MySQL-resourceprovider implementeren met behulp van een aangepast script

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

Als u versie 1.1.47.0 of hoger van de MySQL-resourceprovider implementeert, worden met het implementatiescript automatisch de benodigde PowerShell-modules gedownload en geïnstalleerd, zodat u naar het pad C:\Program Files\SqlMySqlPsh kunt gaan.

# 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 -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 environment names are AzureCloud, AzureUSGovernment, or AzureChinaCloud. 
$AzureEnvironment = "<EnvironmentName>"

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

# 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 the credentials for the new resource provider VM local admin account
$vmLocalAdminPass = ConvertTo-SecureString 'P@ssw0rd1' -AsPlainText -Force
$vmLocalAdminCreds = New-Object System.Management.Automation.PSCredential ("mysqlrpadmin", $vmLocalAdminPass)

# And the cloudadmin credential 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\DeployMySQLProvider.ps1 `
    -AzCredential $AdminCreds `
    -VMLocalCredential $vmLocalAdminCreds `
    -CloudAdminCredential $cloudAdminCreds `
    -PrivilegedEndpoint $privilegedEndpoint `
    -AzureEnvironment $AzureEnvironment `
    -DefaultSSLCertificatePassword $PfxPass `
    -DependencyFilesLocalPath $tempDir\cert `
    -AcceptLicense

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.mysqladapter>.
  4. Op de overzichtspagina voor Overzicht van resourcegroepen mogen er geen mislukte implementaties zijn.
  5. Selecteer ten slotte Virtuele machines in de beheerdersportal om te controleren of de VM van de MySQL-resourceprovider is gemaakt en wordt uitgevoerd.

Belangrijke configuratie voor Microsoft Entra ID

Als uw Azure Stack Hub gebruikmaakt van Microsoft Entra ID als id-provider, moet u ervoor zorgen dat de VM waarop de MySQL Server-resourceprovider is geïnstalleerd, uitgaande internetverbinding heeft.

Als u het IP-adres moet ophalen van de VM waarop de MySQL Server-resourceprovider is geïnstalleerd (dat wil gezegd: voeg het IP-adres toe aan de acceptatielijst van de firewall), opent u een ondersteuningsaanvraag en laat u de ondersteuningstechnicus het abonnement van de MySQL Server-resourceprovider tijdelijk zichtbaar maken. Vervolgens kunt u de VM in het abonnement vinden en het IP-adres ophalen.

Volgende stappen

Hostingservers toevoegen