Partilhar via


Implantar o provedor de recursos MySQL no Azure Stack Hub

Importante

A partir da compilação 2108 do Azure Stack Hub, os provedores de recursos SQL e MySQL são oferecidos para assinaturas às quais foi concedido acesso. Se você quiser começar a usar esse recurso, ou se precisar atualizar de uma versão anterior, abra um caso de suporte e nossos engenheiros de suporte irão guiá-lo através do processo de implantação ou atualização.

Use o provedor de recursos do MySQL Server para expor bancos de dados MySQL como um serviço do Azure Stack Hub.

O provedor de recursos MySQL é executado como um serviço em uma máquina virtual Windows Server 2016 Server Core.

O provedor de recursos MySQL é executado como um serviço num Windows Server especial de Add-on RP.

Importante

Somente o provedor de recursos deve criar itens em servidores que hospedam SQL ou MySQL. Os itens criados em um servidor host que não são criados pelo provedor de recursos não são suportados e podem resultar em um estado incompatível.

Pré-requisitos

Se você já instalou um provedor de recursos, provavelmente concluiu os seguintes pré-requisitos e pode ignorar esta seção. Caso contrário, conclua estas etapas antes de continuar:

  1. Registrar sua instância do Azure Stack Hub com o Azure, se você ainda não tiver feito isso. Esta etapa é necessária, pois você estará se conectando e baixando itens do Azure para o marketplace.

  2. Se não estiver familiarizado com o recurso de de Gerenciamento do Marketplace do portal do administrador do Azure Stack Hub, consulte Baixar itens do marketplace do Azure e publique no Azure Stack Hub. O artigo orienta você pelo processo de download de itens do Azure para o mercado do Azure Stack Hub. Ele abrange cenários conectados e desconectados. Se sua instância do Azure Stack Hub estiver desconectada ou parcialmente conectada, há pré-requisitos adicionais a serem concluídos na preparação para a instalação.

  3. Atualize o diretório inicial do Microsoft Entra. A partir da build 1910, um novo aplicativo deve ser registrado em seu locatário do diretório pessoal. Este aplicativo permitirá que o Azure Stack Hub crie e registre com êxito provedores de recursos mais recentes (como Hubs de Eventos e outros) com seu locatário do Microsoft Entra. Esta é uma ação pontual que deve ser realizada após a atualização para a versão 1910 ou mais recente. Se esta etapa não for concluída, as instalações do provedor de recursos do marketplace falharão.

Pré-requisitos do provedor de recursos do MySQL Server

  • Você precisará de um computador e uma conta que possam acessar:

    • o portal do administrador do Azure Stack Hub.
    • o ponto de extremidade privilegiado (necessário apenas quando estiver a implantar o provedor de recursos MySQL Server V1 ou a atualizar do provedor de recursos MySQL Server V1 para o provedor de recursos MySQL Server V2).
    • o ponto de extremidade de administração do Azure Resource Manager, https://adminmanagement.region.<fqdn>, onde <fqdn> é o seu nome de domínio totalmente qualificado.
    • a Internet, se o seu Azure Stack Hub foi implantado para usar o Microsoft Entra ID como seu provedor de identidade.
  • Faça o download da versão suportada do MySQL resource provider binary de acordo com a tabela de mapeamento de versão abaixo. Para o provedor de recursos MySQL V2, baixe o item do marketplace para o Azure Stack Hub.

    Versão suportada do Azure Stack Hub Versão do MySQL RP Windows Server em que o serviço RP está sendo executado
    2206, 2301, 2306, 2311 MySQL RP versão 2.0.13.x Complemento Microsoft AzureStack RP Windows Server 1.2009.0
    2108, 2206 MySQL RP versão 2.0.6.x Complemento Microsoft AzureStack RP Windows Server 1.2009.0
  • Certifique-se de que a VM necessária do Windows Server foi baixada para o Azure Stack Hub Marketplace. Faça o download manual da imagem de acordo com a tabela de mapeamento de versão acima, se necessário.

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

    Pré-requisito Referência
    O encaminhamento DNS condicional está definido corretamente. Integração entre o datacenter e o Azure Stack Hub - DNS
    As portas de entrada para provedores de recursos estão abertas. Integração do Azure Stack Hub no datacenter - Publicar endpoints
    O assunto do certificado PKI e a SAN estão definidos corretamente. Pré-requisitos obrigatórios de PKI para implantação do Azure Stack HubPré-requisitos de certificado PaaS para implantação do Azure Stack Hub
  • Prepare o certificado. (Apenas para instalações de sistemas integrados.)

    • Você deve fornecer o certificado PKI PaaS SQL descrito na seção Certificados PaaS opcionais dos requisitos PKI de implantação do Azure Stack Hub. O nome alternativo da entidade (SAN) deve cumprir o seguinte padrão de nomenclatura: CN=*.dbadapter.<região>.<FQDN>, devendo ser protegido por senha. Captura de ecrã do certificado.
    • Ao implantar o provedor de recursos do MySQL Server V1, coloque o arquivo .pfx no local especificado pelo parâmetro DependencyFilesLocalPath . Não forneça um certificado para sistemas ASDK.
    • Ao implantar o provedor de recursos do MySQL Server V2, prepare o certificado para as seguintes etapas de instalação.

Cenário desconectado

Ao implantar o provedor de recursos do MySQL Server V2 em um cenário desconectado, siga as instruções de download de itens do marketplace para o Azure Stack Hub para baixar o item do provedor de recursos do MySQL Server e o item Add-on RP Windows Server para seu ambiente do Azure Stack Hub.

Ao implantar o provedor de recursos do MySQL Server V1 em um cenário desconectado, conclua as etapas a seguir para baixar os módulos necessários do PowerShell e registrar o repositório manualmente.

  1. Entre em um computador com conectividade com a Internet e use os scripts a seguir para baixar os módulos do 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 provedor de recursos que você está implantando, 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, copie os pacotes baixados para um dispositivo USB.

  4. Entre na estação de trabalho desconectada e copie os pacotes do dispositivo USB para um local na estação de trabalho.

  5. Registre 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" 
    

Implantar o provedor de recursos MySQL V2

Se você estiver atualizando a partir de uma versão V1, consulte o doc Update the MySQL Server resource provider.

Iniciar a instalação

  1. Se ainda não o fez, inicie sessão no portal do administrador do Azure Stack Hub, selecione Gestão do Marketplace à esquerda, selecione Fornecedores de recursos.

  2. Uma vez que o provedor de recursos MySQL e outros softwares necessários tenham sido baixados, o Marketplace Management mostra os pacotes "MySQL Server resource provider" com um status de "Não instalado". Pode haver outros pacotes que mostram um status de "Baixado".

    Captura de tela do gerenciamento do marketplace antes de instalar o RP.

  3. Selecione a linha que deseja instalar. A página do pacote de instalação do provedor de recursos do MySQL Server mostra um banner azul na parte superior. Selecione o banner para iniciar a instalação. Captura de tela do gerenciamento do marketplace no início da instalação do RP.

Pré-requisitos de instalação

  1. Em seguida, você será transferido para a página de instalação. Selecione Instalar pré-requisitos para iniciar o processo de instalação. Captura de tela dos pré-requisitos de instalação do gerenciamento do marketplace.

  2. Aguarde até que a instalação dos pré-requisitos seja bem-sucedida. Você verá uma marca de seleção verde ao lado de Instalar pré-requisitos antes de prosseguir para a próxima etapa. Captura de tela mostrando que os pré-requisitos de instalação da gestão do marketplace foram cumpridos com sucesso.

Prepare segredos

  1. Nos termos do 2. Etapa Preparar segredos , selecione Adicionar certificado e o painel Adicionar um certificado será exibido. Captura de ecrã da preparação de segredos de gestão do marketplace.

  2. Selecione o botão Procurar em Adicionar um certificado, à direita do campo Nome do arquivo do certificado. Selecione o arquivo de certificado .pfx adquirido ao concluir os pré-requisitos.

  3. Digite a senha fornecida para criar uma cadeia de caracteres segura para o Certificado SSL do provedor de recursos do SQL Server. Em seguida, selecione Adicionar. Captura de tela do certificado de adição de gerenciamento de marketplace.

Configurar e instalar o provedor de recursos

  1. Quando a instalação do certificado for bem-sucedida, você verá uma marca de seleção verde ao lado de Preparar segredos antes de prosseguir para a próxima etapa. Agora selecione o botão Configurar + Instalar ao lado de 3 Instalar provedor de recursos. Captura de ecrã da gestão do marketplace ao iniciar a instalação de RP.

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

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

    • Crie uma conta de armazenamento com sua assinatura de operador padrão e crie um contêiner com o nível de acesso "Blob" ou "Container". Captura de ecrã sobre a criação de uma conta de armazenamento. Captura de tela da criação de um contêiner de armazenamento.

    • Carregue o arquivo mysql-connector-net-8.0.21.msi da sua pasta local para o contêiner de armazenamento recém-criado. Captura de tela do upload do MySQL Connector para o contêiner.

    Importante

    Certifique-se de que a versão do MySQL Connector é 8.0.21.

    • Copie o URI do _blob_. Captura de ecrã a copiar o URI do MySQL Connector.

    • Volte para a página de configuração do MySQL RP. Cole o URI do blob (por exemplo, https://< storageAccountName.blob>.<região>.<FQDN>/<containerName>/mysql-connector-net-8.0.21.msi) para a caixa de texto e clique em OK. Captura de tela do fornecimento do URI do MySQL Connector.

  3. Em seguida, você verá a página a seguir, que indica que o provedor de recursos MySQL está sendo instalado. Captura de tela da instalação do RP de gerenciamento de marketplace.

  4. Aguarde a notificação de conclusão da instalação. Esse processo geralmente leva uma ou mais horas, dependendo do seu tipo de Hub de Pilha do Azure. Captura de tela da instalação do RP de gerenciamento de mercado em andamento.

  5. Verifique se a instalação do provedor de recursos do MySQL Server foi bem-sucedida, retornando à página Gerenciamento do Marketplace, Provedores de Recursos . O status do provedor de recursos do MySQL Server deve mostrar "Instalado". Captura de tela do RP de gerenciamento de mercado instalado.

Implantar o provedor de recursos SQL V1

Depois de concluir todos os pré-requisitos, execute o autoextrator para extrair o pacote de instalação baixado para um diretório temporário. Execute o script DeployMySqlProvider.ps1 a partir de um computador que possa acessar o ponto de extremidade de administração do Azure Stack Hub do Azure Resource Manager e o ponto de extremidade privilegiado, para implantar o provedor de recursos MySQL. O script DeployMySqlProvider.ps1 é extraído como parte dos arquivos de instalação do provedor de recursos MySQL que você baixou para sua versão do Azure Stack Hub.

Importante

Antes de implantar o provedor de recursos, revise as notas de versão para saber mais sobre novas funcionalidades, correções e quaisquer problemas conhecidos que possam afetar sua implantação.

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

Importante

É altamente recomendável usar Clear-AzureRmContext -Scope CurrentUser e Clear-AzureRmContext -Scope Process para limpar o cache antes de executar o script de implantação ou atualização.

Observação

Se você estiver implantando o provedor de recursos do MySQL Server V1 em um ambiente desconectado, copie o arquivo mysql-connector-net-6.10.5.msi para um caminho local. Forneça o nome do caminho usando o parâmetro DependencyFilesLocalPath .

Execute o script DeployMySqlProvider.ps1 , que conclui as seguintes tarefas:

  • Carrega os certificados e outros artefatos em uma conta de armazenamento no Azure Stack Hub.
  • Publica pacotes de galeria para que você possa implantar bancos de dados MySQL usando a galeria.
  • Publica um pacote de galeria para implantar servidores de hospedagem.
  • Implanta uma VM usando a imagem principal do Windows Server 2016 ou a imagem do Microsoft AzureStack Add-on RP Windows Server que você baixou e, em seguida, instala o provedor de recursos MySQL.
  • Regista um registo DNS local que associa à VM do fornecedor de recursos.
  • Registra seu provedor de recursos com o Gerenciador de Recursos do Azure local para a conta do operador.

Observação

Quando a implantação do provedor de recursos MySQL é iniciada, o grupo de recursos system.local.mysqladapter é criado. Pode levar até 75 minutos para concluir as implantações necessárias para esse grupo de recursos. Você não deve colocar nenhum outro recurso no grupo de recursos system.local.mysqladapter .

DeployMySqlProvider.ps1 parâmetros

Você pode especificar esses parâmetros na linha de comando. Se não o fizer, ou se alguma validação de parâmetro falhar, ser-lhe-á pedido que forneça os parâmetros necessários.

Nome do parâmetro Descrição Comentário ou valor padrão
CloudAdminCredential A credencial para o administrador da nuvem, necessária para aceder ao ponto de extremidade privilegiado. Obrigatório
AzCredential As credenciais para a conta de administrador do serviço Azure Stack Hub. Use as mesmas credenciais que você usou para implantar o Azure Stack Hub. O script falhará se a conta que você usa com AzCredential exigir autenticação multifator (MFA). Obrigatório
VMLocalCredential As credenciais para a conta de administrador local da VM do provedor de recursos MySQL. Obrigatório
PrivilegedEndpoint O endereço IP ou nome DNS do ponto de extremidade privilegiado. Obrigatório
AzureEnvironment O ambiente do Azure da conta de administrador de serviço usada para implantar o Azure Stack Hub. Necessário apenas para implantações do Microsoft Entra. Os nomes de ambiente suportados são AzureCloud, AzureUSGovernmentou, se estiver usando uma ID do Microsoft Entra da China, AzureChinaCloud. AzureCloud
DependencyFilesLocalPath Apenas para sistemas integrados, o arquivo .pfx do certificado deve ser colocado neste diretório. Para ambientes desconectados, faça o download mysql-connector-net-6.10.5.msi para este diretório. Opcionalmente, você pode copiar um pacote MSU do Windows Update aqui. Opcional (obrigatório para sistemas integrados ou ambientes desconectados)
Password padrão do certificado SSL A senha para o certificado .pfx. Obrigatório
ContagemMáximaDeTentativas O número de vezes que você deseja repetir cada operação se houver uma falha. 2
DuraçãoDeRepetição O intervalo de tempo limite entre as tentativas, em segundos. cento e vinte
Desinstalar Remove o provedor de recursos e todos os recursos associados (consulte as notas a seguir). Não
Modo de Depuração Previne a limpeza automática em caso de falha. Não
AceitarLicença Ignora o prompt para aceitar a licença GPL. https://www.gnu.org/licenses/old-licenses/gpl-2.0.html

Implante o provedor de recursos MySQL usando um script personalizado

Se você estiver implantando o provedor de recursos MySQL versão 1.1.33.0 ou versões anteriores, precisará 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 provedor de recursos MySQL, o script de implementação irá automaticamente descarregar e instalar os módulos de PowerShell necessários para 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

Observação

No cenário desconectado, você precisa baixar os módulos necessários do PowerShell e registrar o repositório manualmente como pré-requisito.

Para eliminar qualquer configuração manual ao implantar o provedor de recursos, você pode personalizar o script a seguir. Altere as informações de conta padrão e as senhas conforme necessário para sua implantaçã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 provedor de recursos terminar, atualize seu navegador para garantir que você possa ver as atualizações mais recentes e feche a sessão atual do PowerShell.

Verificar a implantação V1 usando o portal do Azure Stack Hub

  1. Entre no portal do administrador como administrador do serviço.
  2. Selecione Grupos de recursos.
  3. Selecione o grupo de recursos sistema.<location.mysqladapter>.
  4. Na página de resumo da Visão geral do grupo de recursos, não deve haver implantações com falha.
  5. Finalmente, selecione Máquinas virtuais no portal do administrador para verificar se a VM do provedor de recursos MySQL foi criada com êxito e está em execução.

Configuração importante para o Microsoft Entra ID

Se o seu Azure Stack Hub estiver usando o Microsoft Entra ID como um provedor de identidade, verifique se a VM que instalou o provedor de recursos do MySQL Server tem conectividade de saída com a Internet.

Se houver necessidade de obter o IP da VM que instalou o provedor de recursos do MySQL Server (ou seja, adicionar o IP à sua lista de permissões do firewall), você precisa abrir um caso de suporte e fazer com que o engenheiro de suporte torne a assinatura do provedor de recursos do MySQL Server temporariamente visível. Em seguida, você pode localizar a VM na assinatura e obter seu IP.

Próximos passos

Adicionar servidores de hospedagem