De MySQL-resourceprovider implementeren in Azure Stack Hub

Belangrijk

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

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

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

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

Belangrijk

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

Vereisten

Als u al een resourceprovider hebt geïnstalleerd, hebt u waarschijnlijk de volgende vereisten voltooid en kunt u deze sectie overslaan. Anders voert u 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 marketplace-beheerfunctie van de Azure Stack Hub-beheerdersportal, raadpleegt u Marketplace-items downloaden van Azure en publiceert u naar Azure Stack Hub. Het artikel begeleidt u bij het downloaden van items van Azure naar de Azure Stack Hub Marketplace. Het behandelt zowel verbonden als niet-verbonden scenario's. Als uw Azure Stack Hub-exemplaar is losgekoppeld of gedeeltelijk is verbonden, zijn er aanvullende vereisten om te voltooien ter voorbereiding op de installatie.

  3. Werk de basismap van uw Azure Active Directory (Azure AD) 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 anderen) maken en registreren met uw Azure AD-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>waar <fqdn> is uw volledig gekwalificeerde domeinnaam.
    • internet, als uw Azure Stack Hub is geïmplementeerd om Azure Active Directory (Azure AD) te gebruiken als uw id-provider.
  • Download de ondersteunde versie van het binaire bestand van de MySQL-resourceprovider volgens de onderstaande tabel met versietoewijzingen. Voor V2 MySQL-resourceprovider downloadt u het Marketplace-item naar Azure Stack Hub.

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

  • Zorg ervoor dat aan de vereisten voor datacenterintegratie wordt voldaan: R

    Vereiste Referentie
    Voorwaardelijk doorsturen via DNS is juist ingesteld. Integratie van Azure Stack Hub-datacenter - DNS
    Binnenkomende poorten voor resourceproviders zijn geopend. Integratie van Azure Stack Hub-datacenter - Eindpunten publiceren
    PKI-certificaatonderwerp en SAN zijn correct ingesteld. Vereiste PKI-vereisten voor De Implementatie van Azure Stack Hub voor Azure Stack Hub- paaS-certificaat
  • Bereid het certificaat voor. (Alleen voor installaties van geïntegreerde systemen.)

    • U moet het SQL PaaS PKI-certificaat opgeven dat wordt beschreven in de sectie optionele PaaS-certificaten van de PKI-implementatie van Azure Stack Hub. De alternatieve naam van het onderwerp (SAN) moet voldoen aan het volgende naamgevingspatroon: CN=*.dbadapter.< regio>.< fqdn>, met een wachtwoord beveiligd. Screenshot of the certificate.
    • 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.

Niet-verbonden scenario

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

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

    # 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 De MySQL Server-resourceprovider bijwerken.

Installatie starten

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

  2. Zodra de MySQL-resourceprovider en andere vereiste software zijn gedownload, worden in Marketplace Management de pakketten 'MySQL Server-resourceprovider' weergegeven met de status 'Niet geïnstalleerd'. Er zijn mogelijk andere pakketten met de status 'Gedownload'.

    Screenshot of marketplace management before installing the RP.

  3. Selecteer de rij die u wilt installeren. Op de installatiepakketpagina van de MySQL Server-resourceprovider ziet u een blauwe banner bovenaan. Selecteer de banner om de installatie te starten. Screenshot of marketplace management begin RP installation.

Vereiste onderdelen installeren

  1. Vervolgens wordt u overgebracht naar de installatiepagina. Selecteer Vereisten installeren om het installatieproces te starten. Screenshot of marketplace management install prerequisites.

  2. Wacht totdat de installatie van vereisten is geslaagd. Als het goed is, ziet u een groen vinkje naast Vereisten installeren voordat u verdergaat met de volgende stap. Screenshot of marketplace management install prerequisites succeeded.

Geheimen voorbereiden

  1. Onder de 2. Bereid de stap Geheimen voor , selecteer Certificaat toevoegen en het deelvenster Een certificaat toevoegen wordt weergegeven. Screenshot of marketplace management prepare secrets.

  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. Screenshot of marketplace management add certificate.

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. Screenshot of marketplace management start RP installation.

  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.

    • Maak een opslagaccount met uw standaardoperatorabonnement en maak een container met het toegangsniveau Blob of Container. Screenshot oof creating a storage account.Screenshot of creating a storage container.

    • Upload het mysql-connector-net-8.0.21.msi-bestand van uw lokale map naar de zojuist gemaakte opslagcontainer. Screenshot of uploading MySQL Connector to the container.

    • Kopieer de blob-URI. Screenshot of copying the 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) in het tekstvak en klik op OK. Screenshot of providing MySQL Connector URI.

  3. Vervolgens ziet u de volgende pagina, die aangeeft dat de MySQL-resourceprovider wordt geïnstalleerd. Screenshot of marketplace management RP installing.

  4. Wacht totdat de installatie is voltooid. Dit proces duurt meestal een of meer uren, afhankelijk van uw Azure Stack Hub-type. Screenshot of marketplace management RP install in progress.

  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. Screenshot of marketplace management RP installed.

De SQL resourceprovider V1 implementeren

Nadat u alle vereisten hebt voltooid, voert u de self-extractor uit om het gedownloade installatiepakket te extraheren naar een tijdelijke map. Voer het DeployMySqlProvider.ps1-script uit vanaf een computer die toegang heeft tot zowel het Azure Stack Hub Azure Resource Manager-beheerderseindpunt 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, bekijkt u de releaseopmerkingen voor meer informatie over nieuwe functionaliteit, oplossingen en eventuele 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

We raden u ten zeerste aan Clear-AzureRmContext -Scope CurrentUser en Clear-AzureRmContext -Scope Process te gebruiken om de cache te wissen voordat de implementatie of het updatescript wordt uitgevoerd.

Notitie

Als u MySQL Server-resourceprovider V1 implementeert in een niet-verbonden omgeving, kopieert u het mysql-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:

  • Hiermee worden de certificaten en andere artefacten geüpload 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 VIRTUELE machine met behulp van de Windows Server 2016 kerninstallatiekopieën of RP-RP-RP Windows Server-installatiekopieën die u hebt gedownload en installeert u vervolgens de MySQL-resourceprovider.
  • Registreert een lokale DNS-record die wordt toegewezen aan uw resourceprovider-VM.
  • 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 zijn voltooid die nodig zijn voor deze resourcegroep. Plaats geen andere resources in de resourcegroep system.local.mysqladapter .

DeployMySqlProvider.ps1 parameters

U kunt deze parameters opgeven vanaf de opdrachtregel. Als u dit niet doet of als er 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 azure Stack Hub-servicebeheerdersaccount. 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 Azure AD-implementaties. Ondersteunde omgevingsnamen zijn AzureCloud, AzureUSGovernment of als u een China Azure AD, AzureChinaCloud gebruikt. AzureCloud
DependencyFilesLocalPath Alleen voor geïntegreerde systemen moet het PFX-certificaatbestand in deze map worden geplaatst. Download mysql-connector-net-6.10.5.msi naar deze map voor niet-verbonden omgevingen. 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
Foutopsporingsmodus Voorkomt dat automatisch opschonen is mislukt. No
AcceptLicense Slaat de prompt over om de GPL-licentie te accepteren. https://www.gnu.org/licenses/old-licenses/gpl-2.0.html

De MySQL-resourceprovider implementeren met behulp van een aangepast script

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

Als u de MySQL-resourceprovider versie 1.1.47.0 of hoger implementeert, downloadt en installeert het implementatiescript automatisch de benodigde PowerShell-modules voor u naar het pad 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 -Force
Use-AzureRmProfile -Profile 2018-03-01-hybrid -Force
Install-Module -Name AzureStack -RequiredVersion 1.6.0

Notitie

In het niet-verbonden scenario moet u de vereiste PowerShell-modules downloaden en de opslagplaats handmatig registreren als een 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 te controleren of u de meest recente updates kunt zien en de huidige PowerShell-sessie kunt sluiten.

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

Belangrijke configuratie voor Azure AD

Als uw Azure Stack Hub Gebruikmaakt van Azure AD als id-provider, controleert u of de VM die mySQL Server-resourceprovider heeft geïnstalleerd uitgaande internetverbinding heeft.

Als het IP-adres van de VM die mySQL Server-resourceprovider heeft geïnstalleerd moet ophalen (bijvoorbeeld het IP-adres toevoegen aan uw firewall allowlist), moet u een ondersteuningsaanvraag openen en de ondersteuningstechnicus het MySQL Server-resourceproviderabonnement tijdelijk zichtbaar maken. Vervolgens kunt u de VIRTUELE machine in het abonnement vinden en het IP-adres ophalen.

Volgende stappen

Hostingservers toevoegen