Aktualizace poskytovatele prostředků MySQL ve službě Azure Stack Hub

Důležité

Od buildu 2108 služby Azure Stack Hub se poskytovatelé prostředků SQL a MySQL nabízejí předplatným, kterým byl udělen přístup. Pokud chcete tuto funkci začít používat nebo pokud potřebujete upgradovat z předchozí verze, otevřete případ podpory a naši technici podpory vás provedou procesem nasazení nebo upgradu.

Důležité

Před aktualizací poskytovatele prostředků si přečtěte poznámky k verzi, kde najdete informace o nových funkcích, opravách a všech známých problémech, které by mohly mít vliv na vaše nasazení. Zpráva k vydání verze také uvádí minimální verzi služby Azure Stack Hub vyžadovanou pro poskytovatele prostředků.

Důležité

Aktualizací poskytovatele prostředků SE NEAKTUALIZUJE hostující server MySQL.

Když Azure Stack Hub vydá nový build, můžeme vydat nový adaptér poskytovatele prostředků MySQL. Zatímco stávající adaptér dál funguje, doporučujeme co nejdříve provést aktualizaci na nejnovější build.

Podporovaná verze služby Azure Stack Hub Verze poskytovatele prostředků MySQL Windows Server, na kterém běží služba RP
2206, 2301, 2306, 2311 MySQL RP verze 2.0.13.x Doplněk Microsoft AzureStack RP pro Windows Server 1.2009.0
2108, 2206 MySQL RP verze 2.0.6.x Doplněk Microsoft AzureStack RP pro Windows Server 1.2009.0

Aktualizace poskytovatele prostředků serveru MySQL V2

Pokud jste už nasadili Poskytovatele prostředků MySQL v2 a chcete vyhledat aktualizace, přečtěte si téma Postup instalace aktualizací u poskytovatele prostředků.

Pokud chcete aktualizovat z MySQL RP V1 na MySQL RP V2, nezapomeňte nejprve provést aktualizaci na MySQL RP V1.1.93.x a pak pomocí procesu upgradu hlavní verze upgradovat z MySQl RP V1 na MySQL RP V2.

Aktualizace z MySQL RP verze 1.1.93.x na MySQL RP V2.0.6.0

Požadavky

  1. Nezapomeňte aktualizovat MySQL RP V1 na nejnovější verzi 1.1.93.x. V části Výchozí předplatné poskytovatele vyhledejte skupinu prostředků poskytovatele (formát názvu: system.<region>. mysqladapter). Ve skupině prostředků potvrďte značku verze a název virtuálního počítače poskytovatele prostředků MySQL. Pokud stále používáte starou verzi a potřebujete aktualizovat na verzi 1.1.93.x, otevřete případ podpory a získáte pomoc.

  2. Otevřete případ podpory pro získání balíčku MajorVersionUpgrade a přidejte své předplatné do seznamu povolených pro ash marketplace pro budoucí verzi V2.

  3. Stáhněte si Microsoft AzureStack Add-On RP Windows Server 1.2009.0 na marketplace.

  4. Ujistěte se, že vaše služba Azure Stack Hub splňuje požadavky na integraci datacentra.

    Požadavek Reference
    Podmíněné přesměrování DNS je správně nastavené. Integrace datacentra Azure Stack Hub – DNS
    Příchozí porty pro poskytovatele prostředků jsou otevřené. Integrace datacentra Azure Stack Hub – Příchozí porty a protokoly
    Subjekt certifikátu PKI a síť SAN jsou správně nastavené. Povinné požadavky na infrastrukturu veřejných klíčů pro nasazení služby Azure Stack Hub
    Požadavky na certifikát PaaS pro nasazení služby Azure Stack Hub
  5. (pro odpojené prostředí) Nainstalujte požadované moduly PowerShellu, podobně jako při procesu aktualizace použitém k nasazení poskytovatele prostředků MySQL.

  6. Připravte si identifikátor URI konektoru MySQL s požadovanou verzí. Podrobnosti najdete v tématu Nasazení poskytovatele prostředků MySQL. například https://< storageAcountName.blob>.<oblast>.<Plně kvalifikovaný název domény>/< název_>kontejneru/mysql-connector-net-8.0.21.msi

Trigger MajorVersionUpgrade

Spuštěním následujícího skriptu z konzoly PowerShellu se zvýšenými oprávněními proveďte upgrade hlavní verze.

Poznámka

Ujistěte se, že klientský počítač, na který skript spouštíte, nemá verzi operačního systému starší než Windows 10 nebo Windows Server 2016 a že klientský počítač má architekturu operačního systému X64.

Důležité

K vymazání mezipaměti před spuštěním skriptu nasazení nebo aktualizace důrazně doporučujeme použít rutiny Clear-AzureRmContext -Scope CurrentUser a Clear-AzureRmContext -Scope Process .

# Check Operating System version
$osVersion = [environment]::OSVersion.Version
if ($osVersion.Build -lt 10240)
{
    Write-Host "OS version is too old: $osVersion."
    return
}

$osArch = (Get-WmiObject Win32_OperatingSystem).OSArchitecture
if ($osArch -ne "64-bit")
{
    Write-Host "OS Architecture is not 64 bit."
    return
}

# Check LongPathsEnabled registry key
$regPath = 'HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem'
$longPathsEnabled = 'LongPathsEnabled'
$property = Get-ItemProperty -Path $regPath -Name $longPathsEnabled -ErrorAction Stop
if ($property.LongPathsEnabled -eq 0)
{
    Write-Host "Detect LongPathsEnabled equals to 0, prepare to set the property."
    Set-ItemProperty -Path $regPath -Name $longPathsEnabled -Value 1 -ErrorAction Stop
    Write-Host "Set the long paths property, please restart the PowerShell."
    return
} 

# Use the NetBIOS name for the Azure Stack Hub domain. 
$domain = "YouDomain" 
# For integrated systems, use the IP address of one of the ERCS VMs
$privilegedEndpoint = "YouDomain-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 = "AzureCloud"
# Point to the directory where the resource provider installation files were extracted.
$tempDir = 'C:\extracted-folder\MajorVersionUpgrade-MySQLRP'
# The service admin account can be Azure Active Directory or Active Directory Federation Services.
$serviceAdmin = "admin@mydomain.onmicrosoft.com"
$AdminPass = ConvertTo-SecureString 'xxxxxxxx' -AsPlainText -Force
$AdminCreds = New-Object System.Management.Automation.PSCredential ($serviceAdmin, $AdminPass)
# Add the cloudadmin credential that's required for privileged endpoint access.
$CloudAdminPass = ConvertTo-SecureString 'xxxxxxxx' -AsPlainText -Force
$CloudAdminCreds = New-Object System.Management.Automation.PSCredential ("$domain\cloudadmin", $CloudAdminPass)
# Change the following as appropriate.
$PfxPass = ConvertTo-SecureString 'xxxxxxx' -AsPlainText -Force
# Provide the pfx file path
$PfxFilePath = "C:\tools\mysqlcert\SSL.pfx"
# Local blob uri where stores the required mysql connector
$MySQLConnector = "Provide the MySQL Connector Uri according to Prerequisites step."
# PowerShell modules used by the RP MajorVersionUpgrade 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 
. $tempDir\MajorVersionUpgradeMySQLProvider.ps1 -AzureEnvironment $AzureEnvironment -AzCredential $AdminCreds -CloudAdminCredential $CloudAdminCreds -Privilegedendpoint $privilegedEndpoint -PfxPassword $PfxPass -PfxCert $PfxFilePath -MySQLConnector $MySQLConnector

Poznámka

Adresa DNS a odpovídající IP adresa MySQL RP v2 se liší. Pokud chcete získat novou veřejnou IP adresu, můžete kontaktovat podporu, která vyžaduje chybu DRP a vyhledejte MySQLRPVM1130-PublicIP prostředek. Můžete také spustit příkaz nslookup mysqlrp.dbadapter.<fqdn>" z klientského počítače, který už prošel testem koncového bodu, aby zjistil veřejnou IP adresu.

Ověření úspěšného upgradu

  1. Skript MajorVersionUpgrade se spustil bez chyb.
  2. Zkontrolujte poskytovatele prostředků na marketplace a ujistěte se, že se mySQL RP 2.0 úspěšně nainstaloval.
  3. Starý systém.<location.mysqladapter> skupina prostředků a systém.<Skupina prostředků location.dbadapter.dns> ve výchozím předplatném poskytovatele se skriptem automaticky neodstraní.
  • Doporučujeme ponechat účet úložiště a Key Vault nějakou dobu ve skupině prostředků mysqladapter. Pokud po upgradu některý uživatel tenanta zaznamená nekonzistentní metadata databáze nebo přihlášení, je možné získat podporu pro obnovení metadat ze skupiny prostředků.
  • Po ověření, že je zóna DNS ve skupině prostředků dbadapter.dns prázdná bez záznamu DNS, je bezpečné odstranit skupinu prostředků dbadapter.dns.
  • [DŮLEŽITÉ] K odinstalaci verze V1 nepoužívejte skript nasazení V1. Po dokončení upgradu a potvrzení, že upgrade proběhl úspěšně, můžete skupinu prostředků z předplatného poskytovatele odstranit ručně.

Aktualizace ze starší verze MySQL RP V1 na MySQL RP V1.1.93.x

Aktualizace poskytovatele prostředků MySQL verze 1 je kumulativní. Můžete přímo aktualizovat na verzi 1.1.93.x.

Pokud chcete poskytovatele prostředků aktualizovat na 1.1.93.x, použijte skriptUpdateMySQLProvider.ps1 . Použijte svůj účet služby s právy místního správce a je vlastníkem předplatného. Tento aktualizační skript je součástí stahování poskytovatele prostředků.

K aktualizaci poskytovatele prostředků použijte skriptUpdateMySQLProvider.ps1 . Použijte svůj účet služby s právy místního správce a je vlastníkem předplatného. Aktualizační skript je součástí stahování poskytovatele prostředků.

Proces aktualizace je podobný procesu použitému k nasazení poskytovatele prostředků. Aktualizační skript používá stejné argumenty jako DeployMySqlProvider.ps1 skript a budete muset zadat informace o certifikátu.

Aktualizace skriptových procesů

SkriptUpdateMySQLProvider.ps1 vytvoří nový virtuální počítač s nejnovější imagí operačního systému, nasadí nejnovější kód poskytovatele prostředků a migruje nastavení ze starého poskytovatele prostředků na nového poskytovatele prostředků.

Poznámka

Doporučujeme stáhnout si image doplňku Microsoft AzureStack rp Windows Server 1.2009.0 z Marketplace Management. Pokud potřebujete nainstalovat aktualizaci, můžete do cesty místní závislosti umístit jeden balíček MSU. Skript selže, pokud je v tomto umístění více než jeden soubor MSU.

Jakmile skriptUpdateMySQLProvider.ps1 vytvoří nový virtuální počítač, migruje z původního virtuálního počítače poskytovatele prostředků následující nastavení:

  • informace o databázi
  • informace o hostitelském serveru
  • požadovaný záznam DNS

Důležité

K vymazání mezipaměti před spuštěním skriptu nasazení nebo aktualizace důrazně doporučujeme použít rutiny Clear-AzureRmContext -Scope CurrentUser a Clear-AzureRmContext -Scope Process .

Aktualizace parametrů skriptu

Při spuštění skriptu powershelluUpdateMySQLProvider.ps1 zadejte z příkazového řádku následující parametry. Pokud to neuděláte nebo pokud se ověření některého parametru nezdaří, zobrazí se výzva k zadání požadovaných parametrů.

Název parametru Description Komentář nebo výchozí hodnota
Přihlašovací údaje správce cloudu Přihlašovací údaje správce cloudu, které jsou nezbytné pro přístup k privilegovanému koncovému bodu. Povinné
AzCredential Přihlašovací údaje pro účet správce služby Azure Stack Hub. Použijte stejné přihlašovací údaje, které jste použili k nasazení služby Azure Stack Hub. Skript selže, pokud účet, který používáte s AzCredential, vyžaduje vícefaktorové ověřování (MFA). Povinné
VMLocalCredential Přihlašovací údaje pro účet místního správce virtuálního počítače poskytovatele prostředků MySQL. Povinné
PrivilegedEndpoint IP adresa nebo název DNS privilegovaného koncového bodu. Povinné
Prostředí Azure Prostředí Azure účtu správce služby použitého k nasazení služby Azure Stack Hub. Vyžaduje se pouze pro nasazení Microsoft Entra. Podporované názvy prostředí jsou AzureCloud, AzureUSGovernment nebo pokud používáte čínskou Microsoft Entra ID, AzureChinaCloud. AzureCloud
DependencyFilesLocalPath Do tohoto adresáře musí být také umístěn soubor .pfx certifikátu. Volitelné (povinné pro více uzlů)
DefaultSSLCertificatePassword Heslo k certifikátu .pfx. Povinné
MaxRetryCount Počet opakování jednotlivých operací, pokud dojde k selhání. 2
Opakování Interval časového limitu mezi opakováními v sekundách 120
Odinstalace Odeberte poskytovatele prostředků a všechny přidružené prostředky (viz následující poznámky). No
DebugMode Zabrání automatickému vyčištění při selhání. No
Přijmoutlicence Přeskočí výzvu k přijetí licence GPL. (https://www.gnu.org/licenses/old-licenses/gpl-2.0.html)

Příklad skriptu aktualizace

Pokud aktualizujete verzi poskytovatele prostředků MySQL na verzi 1.1.33.0 nebo předchozí verze, musíte v PowerShellu nainstalovat konkrétní verze modulů AzureRm.BootStrapper a Azure Stack Hub.

Pokud aktualizujete poskytovatele prostředků MySQL na verzi 1.1.47.0 nebo novější, můžete tento krok přeskočit. Skript nasazení automaticky stáhne a nainstaluje potřebné moduly PowerShellu pro cestu C:\Program Files\SqlMySqlPsh.

Poznámka

Pokud složka C:\Program Files\SqlMySqlPsh se staženým modulem PowerShellu již existuje, doporučujeme před spuštěním skriptu aktualizace tuto složku vyčistit. Tím zajistíte, že se stáhne a použije správná verze modulu PowerShellu.

# Run the following scripts when updating to version 1.1.33.0 only.
# 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

Poznámka

V případě odpojeného scénáře je potřeba stáhnout požadované moduly PowerShellu a zaregistrovat úložiště ručně jako předpoklad. Další informace najdete v tématu Nasazení poskytovatele prostředků MySQL.

Následující příklad ukazuje skriptUpdateMySQLProvider.ps1 , který můžete spustit z konzoly PowerShellu se zvýšenými oprávněními. Nezapomeňte změnit informace o proměnných a hesla podle potřeby:

# 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 credentials for the new resource provider VM.
$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 directory to the folder where you extracted the installation files.
# Then adjust the endpoints.
.$tempDir\UpdateMySQLProvider.ps1 -AzCredential $AdminCreds -VMLocalCredential $vmLocalAdminCreds -CloudAdminCredential $cloudAdminCreds -PrivilegedEndpoint $privilegedEndpoint -AzureEnvironment $AzureEnvironment -DefaultSSLCertificatePassword $PfxPass -DependencyFilesLocalPath $tempDir\cert -AcceptLicense

Po dokončení skriptu aktualizace poskytovatele prostředků zavřete aktuální relaci PowerShellu.

Další kroky

Údržba poskytovatele prostředků MySQL