Implementar o fornecedor de recursos MySQL no Azure Stack Hub

Importante

A partir da construção 2108 do Azure Stack Hub, os fornecedores de recursos SQL e MySQL são oferecidos a subscrições que tenham tido acesso. Se pretender começar a utilizar esta funcionalidade, ou se precisar de atualizar a partir de uma versão anterior, abra um caso de suporte e os nossos engenheiros de suporte irão guiá-lo através do processo de implementação ou atualização.

Utilize o fornecedor de recursos do MySQL Server para expor as bases de dados mySQL como um serviço Azure Stack Hub.

O fornecedor de recursos MySQL funciona como um serviço numa máquina virtual Windows Server 2016 Server Core.

O fornecedor de recursos MySQL funciona como um serviço num Servidor RP Windows add-on especial.

Importante

Apenas o fornecedor de recursos deve criar itens em servidores que acolhem SQL ou MySQL. Os itens criados num servidor anfitrião que não são criados pelo fornecedor de recursos não são suportados e podem resultar num estado desajustado.

Pré-requisitos

Se já instalou um fornecedor de recursos, provavelmente completou os seguintes pré-requisitos e pode saltar esta secção. Caso contrário, complete estes passos antes de continuar:

  1. Registe a sua instância do Azure Stack Hub com o Azure, se não o fez. Este passo é necessário, uma vez que você estará conectando e descarregando itens para o mercado a partir de Azure.

  2. Se não está familiarizado com a funcionalidade de Gestão do Mercado do portal de administradores do Azure Stack Hub, reveja os itens de mercado de download da Azure e publique no Azure Stack Hub. O artigo acompanha-o através do processo de download de itens do Azure para o mercado Azure Stack Hub. Abrange cenários ligados e desligados. Se a sua instância do Azure Stack Hub estiver desligada ou parcialmente ligada, existem pré-requisitos adicionais para completar na preparação para a instalação.

  3. Atualize o seu diretório de casa Azure Ative (Azure AD). A partir da construção de 1910, um novo pedido deve ser registado no seu inquilino de diretório de casa. Esta aplicação permitirá ao Azure Stack Hub criar e registar com sucesso novos fornecedores de recursos (como Os Centros de Eventos e outros) com o seu inquilino Azure AD. Esta é uma ação única que tem de ser feita depois de ter sido melhorada para construir 1910 ou mais recente. Se este passo não estiver concluído, as instalações do fornecedor de recursos do mercado falharão.

Pré-requisitos do fornecedor de recursos do MySQL Server

  • Vai precisar de um computador e uma conta que possam aceder:

    • o portal de administrador do Azure Stack Hub.
    • o ponto final privilegiado (necessário apenas quando estiver a implementar o fornecedor de recursos MySQL Server V1 ou a atualizar do fornecedor de recursos Do MySQL Server V1 para o fornecedor de recursos do MySQL Server V2).
    • o Azure Resource Manager ponto final de administração, https://adminmanagement.region.<fqdn>onde <fqdn> está o seu nome de domínio totalmente qualificado.
    • a Internet, se o seu Azure Stack Hub foi implantado para utilizar o Azure Ative Directory (Azure AD) como seu fornecedor de identidade.
  • Descarregue a versão suportada do fornecedor de recursos MySQL binary de acordo com a tabela de mapeamento da versão abaixo. Para o fornecedor de recursos V2 MySQL, descarregue o item do mercado para Azure Stack Hub.

    Versão suportada do Azure Stack Hub Versão MySQL RP Windows Server que o serviço RP está em execução
    2108,2206 MySQL RP versão 2.0.6.x Microsoft AzureStack Add-on RP Windows Server 1.2009.0
    2108, 2102, 2008, 2005 MySQL RP versão 1.1.93.5 Microsoft AzureStack Add-on RP Windows Server
  • Certifique-se de que o VM do Windows Server necessário é descarregado para o Azure Stack Hub Marketplace. Descarregue manualmente a imagem de acordo com a tabela de mapeamento da versão acima, se necessário.

  • Garantir que os pré-requisitos de integração do datacenter são cumpridos:R

    Pré-requisito Referência
    O reencaminhamento de DNS condicional está definido corretamente. Integração do datacenter Azure Stack Hub - DNS
    As portas de entrada para os fornecedores de recursos estão abertas. Integração do datacenter Azure Stack Hub - Publicar pontos finais
    O sujeito do certificado PKI e a SAN estão corretamente definidos. Azure Stack Hub implementação obrigatória PKI pré-requisitosAzure Stack Hub implantação PaaS pré-requisitos
  • Prepare o certificado. (Apenas para instalações de sistemas integrados.)

    • Deve fornecer o certificado PKI SQL PaaS descrito na secção opcional de certificados PaaS dos requisitos PKI de implantação do Azure Stack Hub. O Nome Alternativo do Sujeito (SAN) deve aderir ao seguinte padrão de nomeação: CN=*.dbadapter.< região>.< fqdn>, com senha protegida. Screenshot do certificado.
    • Ao implementar o fornecedor de recursos MySQL Server V1, coloque o ficheiro .pfx no local especificado pelo parâmetro DependencyFilesLocalPath . Não forneça um certificado para sistemas ASDK.
    • Ao implementar o fornecedor de recursos MySQL Server V2, prepare o certificado para as seguintes etapas de instalação.

Cenário desligado

Ao implementar o fornecedor de recursos MySQL Server V2 num cenário desligado, siga os itens de mercado de descarregamento para instruções do Azure Stack Hub para descarregar o item de fornecedor de recursos do MySQL Server e o item Add-on RP Windows Server para o seu ambiente Azure Stack Hub.

Ao implementar o fornecedor de recursos MySQL Server V1 num cenário desligado, complete os seguintes passos para descarregar os módulos PowerShell necessários e registar o repositório manualmente.

  1. Inscreva-se num computador com conectividade internet e use os seguintes scripts para descarregar os módulos PowerShell.

    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. Dependendo da versão do fornecedor de recursos que está a implementar, execute um dos scripts.

    # 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. Em seguida, copia os pacotes descarregados para um dispositivo USB.

  4. Inscreva-se na estação de trabalho desligada e copie as embalagens do dispositivo USB para um local na estação de trabalho.

  5. Registe este local como um repositório local.

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

Implementar o fornecedor de recursos MySQL V2

Se estiver a atualizar a partir de uma versão V1, consulte o doc Update o fornecedor de recursos Do MySQL Server.

Iniciar a instalação

  1. Se ainda não o fez, inscreva-se no portal de administradores do Azure Stack Hub, selecione Marketplace Management à esquerda, selecione fornecedores de Recursos.

  2. Uma vez descarregado o fornecedor de recursos MySQL e outros softwares necessários, a Marketplace Management mostra os pacotes "MySQL Server Resource Provider" com um estado de "Não Instalado". Pode haver outros pacotes que mostrem um estado de "Downloaded".

    Screenshot da gestão do mercado antes de instalar o RP.

  3. Selecione a linha que pretende instalar. A página de pacote de instalação do fornecedor de recursos MySQL Server mostra uma bandeira azul em toda a parte superior. Selecione o banner para iniciar a instalação. Screenshot da gestão do mercado iniciam a instalação RP.

Pré-requisitos da instalação

  1. Em seguida, é transferido para a página de instalação. Selecione Instalar Pré-requisitos para iniciar o processo de instalação. Screenshot da gestão do mercado instala pré-requisitos.

  2. Aguarde até que a instalação dos pré-requisitos tenha êxito. Deverá ver uma marca de verificação verde ao lado da Instalação pré-requisitos antes de avançar para o passo seguinte. Screenshot da gestão do mercado instala pré-requisitos bem sucedidos.

Preparar segredos

  1. Abaixo do 2. Prepare o passo dos segredos , selecione Adicionar certificado e aparecerá o painel de certificados Add . Screenshot da gestão do mercado prepara segredos.

  2. Selecione o botão de navegação no Adicionar um certificado, apenas à direita do campo de nome de ficheiros de certificado. Selecione o ficheiro de certificado .pfx que adquiriu ao completar os pré-requisitos.

  3. Introduza a palavra-passe que forneceu para criar uma cadeia segura para SQL Server certificado SSL do fornecedor de recursos. Em seguida, selecione Adicionar. Screenshot da gestão do mercado adicionar certificado.

Configure e instale fornecedor de recursos

  1. Quando a instalação do certificado for bem sucedida, deverá ver uma marca de verificação verde ao lado dos segredos de preparação antes de avançar para o passo seguinte. Agora selecione o botão Configurar + Instalar ao lado do fornecedor de recursos 3 Instale.. Screenshot da gestão do mercado iniciar a instalação RP.

  2. Em seguida, terá de fornecer um Azure Stack Hub Blob URI para o Conector MySQL.

    • Reveja a licença GPL do Conector MySQL aqui e baixe a versão 8.0.21 para uma pasta local.

    • Crie uma conta de armazenamento com a subscrição do seu operador predefinido e crie um recipiente com o nível de acesso "Blob" ou "Contentor". Screenshot oof criar uma conta de armazenamento.Screenshot de criar um recipiente de armazenamento.

    • Faça o upload do ficheiro mysql-connector-net-8.0.21.msi da sua pasta local para o recipiente de armazenamento recém-criado. Screenshot de carregar o Conector MySQL para o recipiente.

    • Copie a bolha URI. Screenshot da cópia do Conector MySQL URI.

    • Voltar à página de configuração do MySQL RP. Cole o blob URI (por exemplo, https://< storageAccountName.blob>.< região>.< FQDN>/<containerName>/mysql-connector-net-8.0.21.msi) na caixa de texto e clique em OK. Screenshot de fornecer MySQL Connector URI.

  3. Em seguida, verá a seguinte página, o que indica que o fornecedor de recursos MySQL está a ser instalado. Screenshot da instalação de RP de gestão de mercado.

  4. Aguarde a notificação completa da instalação. Este processo geralmente demora uma ou mais horas, dependendo do tipo Azure Stack Hub. Screenshot da instalação de RP de gestão de mercado em andamento.

  5. Verifique se a instalação do fornecedor de recursos do MySQL Server foi bem sucedida, regressando à página de Marketplace Management, Resource Providers . O estado do fornecedor de recursos do MySQL Server deve mostrar "Instalado". Screenshot da gestão do mercado RP instalado.

Implementar o fornecedor de recursos SQL V1

Depois de ter completado todos os pré-requisitos, faça o auto-extractor para extrair o pacote de instalação descarregado para um diretório temporário. Executar o script DeployMySqlProvider.ps1 a partir de um computador que pode aceder tanto ao Azure Stack Hub Azure Resource Manager ponto final de administração como ao ponto final privilegiado, para implementar o fornecedor de recursos MySQL. O script DeployMySqlProvider.ps1 é extraído como parte dos ficheiros de instalação do fornecedor de recursos MySQL que descarregou para a sua versão do Azure Stack Hub.

Importante

Antes de implementar o fornecedor de recursos, reveja as notas de lançamento para saber sobre novas funcionalidades, correções e quaisquer problemas conhecidos que possam afetar a sua implementação.

Para implantar o fornecedor de recursos MySQL, abra uma nova janela elevada do PowerShell (não PowerShell ISE) e mude para o diretório onde extraiu os ficheiros binários do fornecedor de recursos MySQL.

Importante

Recomendamos vivamente a utilização de Clear-AzureRmContext -Scope CurrentUser e Clear-AzureRmContext -Scope Process para limpar a cache antes de executar o script de implementação ou atualização.

Nota

Se estiver a implementar o fornecedor de recursos Do MySQL Server V1 num ambiente desligado, copie o ficheiro mysql-connector-net-6.10.5.msi para um caminho local. Forneça o nome do caminho utilizando o parâmetro DependencyFilesLocalPath .

Executar oDeployMySqlProvider.ps1 script, que completa as seguintes tarefas:

  • Envia os certificados e outros artefactos para uma conta de armazenamento no Azure Stack Hub.
  • Publica pacotes de galeria para que possa implementar bases de dados MySQL utilizando a galeria.
  • Publica um pacote de galeria para implantação de servidores de hospedagem.
  • Implementa um VM utilizando a imagem central Windows Server 2016 ou a imagem do Microsoft AzureStack Add-on RP Windows Server que descarregou e, em seguida, instala o fornecedor de recursos MySQL.
  • Regista um registo de DNS local que mapeia para o seu fornecedor de recursos VM.
  • Regista o seu fornecedor de recursos com o Resource Manager Azure local para a conta do operador.

Nota

Quando a implementação do fornecedor de recursos MySQL começa, o grupo de recursos system.local.mysqladapter é criado. Pode levar até 75 minutos para terminar as implementações necessárias a este grupo de recursos. Não deve colocar quaisquer outros recursos no grupo de recursos system.local.mysqladapter .

DeployMySqlProvider.ps1 parâmetros

Pode especificar estes parâmetros a partir da linha de comando. Se não o fizer, ou se alguma validação de parâmetros falhar, é solicitado que forneça os parâmetros necessários.

Nome do parâmetro Descrição Comentário ou valor predefinido
CloudAdminCredential A credencial para o administrador da nuvem, necessária para aceder ao ponto final privilegiado. Obrigatório
AzCredential As credenciais para a conta de administração do Azure Stack Hub. Use as mesmas credenciais que usou para implantar o Azure Stack Hub. O script falhará se a conta que utilizar com o AzCredential necessitar de autenticação multi-factor (MFA). Obrigatório
VMLocalCredential As credenciais para a conta de administrador local do fornecedor de recursos MySQL VM. Obrigatório
Ponto privilegiado O endereço IP ou o nome DNS do ponto final privilegiado. Obrigatório
AzureEnvironment O ambiente Azure da conta de administração de serviço utilizada para a implantação do Azure Stack Hub. Requerido apenas para Azure AD implantações. Os nomes do ambiente suportados são AzureCloud, AzureUSGovernment, ou se usar um Azure AD da China, AzureChinaCloud. AzureCloud
DependênciaFilesLocalPath Apenas para sistemas integrados, o seu ficheiro certificado .pfx deve ser colocado neste diretório. Para ambientes desligados, faça o downloadmysql-connector-net-6.10.5.msi para este diretório. Pode copiar opcionalmente um Windows Update pacote MSU aqui. Opcional (obrigatório para sistemas integrados ou ambientes desligados)
Palavra-passe defaultsslcertificatePassword A senha do certificado .pfx. Obrigatório
MaxRetryCount O número de vezes que pretende voltar a tentar cada operação se houver uma falha. 2
Retripduração O intervalo de tempo entre as recauchutagens, em segundos. 120
Desinstalar Remove o fornecedor de recursos e todos os recursos associados (ver as seguintes notas). No
DebugMode Evita a limpeza automática em avarias. No
Aceitar ALicense Ignora o pedido para aceitar a licença GPL. https://www.gnu.org/licenses/old-licenses/gpl-2.0.html

Implemente o fornecedor de recursos MySQL usando um script personalizado

Se estiver a implementar a versão 1.1.33.0 ou as versões anteriores do fornecedor de recursos MySQL, tem de instalar versões específicas dos módulos AzureRm.BootStrapper e Azure Stack Hub no PowerShell.

Se estiver a implementar a versão 1.1.47.0 ou posterior do fornecedor de recursos MySQL, o script de implementação descarregará automaticamente e instalará os módulos PowerShell necessários para que possa seguir o caminho 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

Nota

Em cenário desconectado, é necessário descarregar os módulos PowerShell necessários e registar o repositório manualmente como pré-requisito.

Para eliminar qualquer configuração manual ao implementar o fornecedor de recursos, pode personalizar o seguinte script. Altere as informações e palavras-passe da conta predefinidas conforme necessário para a sua implementação do Azure Stack Hub.

# 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

Quando o script de instalação do fornecedor de recursos terminar, refresque o seu navegador para se certificar de que pode ver as últimas atualizações e fechar a sessão atual do PowerShell.

Verifique a implementação do V1 utilizando o portal Azure Stack Hub

  1. Inscreva-se no portal do administrador como administrador de serviço.
  2. Selecione Grupos de Recursos.
  3. Selecione o sistema.< localização.mysqladapter> grupo de recursos.
  4. Na página de resumo do grupo de recursos, não deve haver implementações falhadas.
  5. Por fim, selecione máquinas Virtuais no portal do administrador para verificar se o fornecedor de recursos MySQL VM foi criado com sucesso e está em execução.

Configuração importante para Azure AD

Se o seu Azure Stack Hub estiver a utilizar Azure AD como fornecedor de identidade, certifique-se de que o VM que instalou o fornecedor de recursos do MySQL Server tem conectividade de saída na Internet.

Se houver necessidade de obter o IP do VM que instalou o fornecedor de recursos do MySQL Server (isto é, adicionar o IP à sua lista de admissões de firewall), é necessário abrir um caso de suporte e ter o engenheiro de suporte a tornar temporariamente visível a subscrição do fornecedor de recursos do MySQL Server. Em seguida, pode localizar o VM na subscrição e obter o seu IP.

Passos seguintes

Adicionar servidores de hospedagem