Implantar o provedor de recursos do MySQL no Azure Stack Hub
Importante
A partir do build 2108 do Azure Stack Hub, os provedores de recursos SQL e MySQL são oferecidos a assinaturas que receberam 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 orientarão você pelo 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 em um complemento especial do Windows Server.
Importante
Somente o provedor de recursos deve criar itens em servidores que hospedam o SQL ou o MySQL. Os itens criados em um servidor host que não são criados pelo provedor de recursos não têm suporte e podem resultar em um estado incompatível.
Pré-requisitos
Se você já instalou um provedor de recursos, provavelmente concluiu os pré-requisitos a seguir e pode ignorar esta seção. Caso contrário, conclua estas etapas antes de continuar:
Registre sua instância do Azure Stack Hub no Azure, caso ainda não tenha feito isso. Essa etapa é necessária, pois você estará se conectando e baixando itens para o marketplace do Azure.
Se você não estiver familiarizado com o recurso Gerenciamento do Marketplace do portal de administrador do Azure Stack Hub, examine Baixar itens do marketplace do Azure e publique no Azure Stack Hub. O artigo explica o processo de download de itens do Azure para o marketplace do Azure Stack Hub. Ele abrange cenários conectados e desconectados. Se a instância do Azure Stack Hub estiver desconectada ou parcialmente conectada, haverá pré-requisitos adicionais a serem concluídos na preparação para a instalação.
Atualize seu Microsoft Entra diretório base. A partir do build 1910, um novo aplicativo deve ser registrado no locatário do diretório base. Esse aplicativo permitirá que o Azure Stack Hub crie e registre provedores de recursos mais recentes (como Hubs de Eventos e outros) com seu locatário Microsoft Entra. Essa é uma ação única que precisa ser feita após a atualização para o build 1910 ou mais recente. Se essa etapa não for concluída, as instalações do provedor de recursos do marketplace falharão.
- Depois de atualizar com êxito sua instância do Azure Stack Hub para 1910 ou superior, siga as instruções para clonar/baixar o repositório ferramentas do Azure Stack Hub.
- Em seguida, siga as instruções para Atualizar o Azure Stack Hub Microsoft Entra Home Directory (depois de instalar atualizações ou novos Provedores de Recursos).
Pré-requisitos do provedor de recursos do MySQL Server
Você precisará de um computador e uma conta que possam acessar:
- o portal de administrador do Azure Stack Hub.
- o ponto de extremidade privilegiado (necessário somente quando você está implantando o provedor de recursos do MySQL Server V1 ou atualizando do provedor de recursos do MySQL Server V1 para o provedor de recursos do MySQL Server V2).
- o ponto de extremidade de administrador Resource Manager do Azure,
https://adminmanagement.region.<fqdn>
, em que<fqdn>
é o nome de domínio totalmente qualificado. - a Internet, se o Azure Stack Hub foi implantado para usar Microsoft Entra ID como seu provedor de identidade.
Baixe a versão com suporte do binário do provedor de recursos MySQL de acordo com a tabela de mapeamento de versão abaixo. Para o provedor de recursos MySQL V2, baixe o item do marketplace no Azure Stack Hub.
Versão do Azure Stack Hub com suporte Versão de RP do MySQL Windows Server no qual o serviço RP está em execução 2206, 2301, 2306, 2311 MySQL RP versão 2.0.13.x Complemento do Microsoft AzureStack RP Windows Server 1.2009.0 2108, 2206 MySQL RP versão 2.0.6.x Complemento do Microsoft AzureStack RP Windows Server 1.2009.0 Verifique se a VM necessária do Windows Server foi baixada no Azure Stack Hub Marketplace. Baixe manualmente a imagem de acordo com a tabela de mapeamento de versão acima, se necessário.
Verifique se os pré-requisitos de integração do datacenter são atendidos:R
Pré-requisito Referência O encaminhamento de DNS condicional está definido corretamente. Integração do datacenter do Azure Stack Hub – DNS As portas de entrada para provedores de recursos estão abertas. Integração do datacenter do Azure Stack Hub – Publicar pontos de extremidade A entidade do certificado PKI e a SAN são definidas corretamente. Pré-requisitos obrigatórios de implantação do Azure Stack Hub PKI pré-requisitos de certificado PaaS de implantação do Azure Stack Hub Prepare o certificado. (Somente para instalações de sistemas integrados.)
- Você deve fornecer o certificado PKI de PaaS do SQL descrito na seção de certificados PaaS opcionais dos requisitos de PKI de implantação do Azure Stack Hub. O SAN (Nome Alternativo da Entidade) deve seguir o seguinte padrão de nomenclatura: CN=*.dbadapter.<região>.<fqdn>, com senha protegida.
- 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 etapas de instalação a seguir.
Cenário desconectado
Ao implantar o provedor de recursos do MySQL Server V2 em um cenário desconectado, siga a instrução baixar itens do marketplace no Azure Stack Hub para baixar o item do provedor de recursos do MySQL Server e o item do Windows Server de RP de complemento 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.
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"
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
Em seguida, copie os pacotes baixados para um dispositivo USB.
Entre na estação de trabalho desconectada e copie os pacotes do dispositivo USB para um local na estação de trabalho.
Registre esse 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 do MySQL V2
Se você estiver atualizando de uma versão V1, consulte o documento Atualizar o provedor de recursos do MySQL Server.
Iniciar a instalação
Se ainda não o fez, entre no portal do administrador do Azure Stack Hub, selecione Gerenciamento do Marketplace à esquerda e selecione Provedores de recursos.
Depois que o provedor de recursos mySQL e outros softwares necessários forem baixados, o Gerenciamento do Marketplace mostrará os pacotes "Provedor de recursos do MySQL Server" com um status de "Não Instalado". Pode haver outros pacotes que mostram o status "Baixado".
Selecione a linha que você deseja instalar. A página do pacote de instalação do provedor de recursos do MySQL Server mostra uma faixa azul na parte superior. Selecione a faixa para iniciar a instalação.
Instalar pré-requisitos
Em seguida, você será transferido para a página de instalação. Selecione Instalar pré-requisitos de Instalação para iniciar o processo de instalação.
Aguarde até que a instalação dos pré-requisitos seja realizada com sucesso. Você deverá ver uma marca de seleção verde ao lado Instalar pré-requisitos antes de prosseguir para a próxima etapa.
Preparar segredos
Abaixo do 2. Prepare a etapa segredos , selecione Adicionar certificado e o painel Adicionar um certificado será exibido.
Selecione o botão de navegação em Adicionar um certificado, à direita do campo do nome do arquivo do certificado. Selecione o arquivo de certificado .pfx que você adquiriu ao preencher os pré-requisitos.
Insira a senha fornecida para criar uma cadeia de caracteres segura para SQL Server certificado SSL do provedor de recursos. Em seguida, selecioneAdicionar.
Configurar e instalar o provedor de recursos
Quando a instalação do certificado for bem-sucedida, você deverá 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.
Em seguida, você precisará fornecer um URI de Blob do Azure Stack Hub para o Conector MySQL.
Examine a licença gpl do MySQL Connector aqui e baixe a versão 8.0.21 para uma pasta local.
Create uma conta de armazenamento com sua assinatura de operador padrão e crie um contêiner com o nível de acesso "Blob" ou "Contêiner".
Carregue o arquivo mysql-connector-net-8.0.21.msi da pasta local para o contêiner de armazenamento recém-criado.
Importante
Verifique se a versão do Conector MySQL é 8.0.21.
Copie o URI do blob.
Voltar à página de configuração de RP do MySQL. Cole o URI do blob (por exemplo, https://< storageAccountName.blob>.<região>.<FQDN>/<containerName>/mysql-connector-net-8.0.21.msi) na caixa de texto e clique em OK.
Em seguida, você verá a página a seguir, que indica que o provedor de recursos MySQL está sendo instalado.
Aguarde a notificação de conclusão da instalação. Esse processo geralmente leva uma ou mais horas, dependendo do tipo de Azure Stack Hub.
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".
Implantar o provedor de recursos do SQL V1
Depois de concluir todos os pré-requisitos, execute o auto-extrator para extrair o pacote de instalação baixado para um diretório temporário. Execute o script DeployMySqlProvider.ps1 de um computador que possa acessar o ponto de extremidade de administração do Azure Resource Manager do Azure Stack Hub e o ponto de extremidade privilegiado para implantar o provedor de recursos do MySQL. O script DeployMySqlProvider.ps1 é extraído como parte dos arquivos de instalação do provedor de recursos do MySQL que você baixou para sua versão do Azure Stack Hub.
Importante
Antes de implantar o provedor de recursos, examine as notas sobre a 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 altere para o diretório em que você extraiu os arquivos binários do provedor de recursos MySQL.
Importante
É altamente recomendável usar Clear-AzureRmContext -Scope CurrentUser e Clear-AzureRmContext -Scope Process para limpar o cache antes de executar a implantação ou atualizar o script.
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 scriptDeployMySqlProvider.ps1 , que conclui as seguintes tarefas:
- Carrega os certificados e outros artefatos em uma conta de armazenamento no Azure Stack Hub.
- Publica pacotes da 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 Windows Server 2016 ou a imagem do Windows Server do Complemento do Microsoft AzureStack que você baixou e instala o provedor de recursos MySQL.
- Registra um registro DNS local que é mapeado para a VM do provedor de recursos.
- Registra seu provedor de recursos com a Resource Manager local do Azure 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 .
parâmetros de DeployMySqlProvider.ps1
Você pode especificar esses parâmetros na linha de comando. Se você não fizer isso ou se alguma validação de parâmetro falhar, será solicitado que você 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 de nuvem, necessária para acessar o ponto de extremidade privilegiado. | Necessário |
AzCredential | As credenciais para a conta de administrador do serviço do Azure Stack Hub. Use as mesmas credenciais usadas para implantar o Azure Stack Hub. O script falhará se a conta usada com o AzCredential exigir mfator (autenticação multifator). | Necessário |
VMLocalCredential | As credenciais para a conta de administrador local da VM do provedor de recursos MySQL. | Necessário |
PrivilegedEndpoint | O endereço IP ou o nome DNS do ponto de extremidade privilegiado. | Necessá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 de Microsoft Entra. Os nomes de ambiente com suporte são AzureCloud, AzureUSGovernment ou se estiver usando um Microsoft Entra ID da China, AzureChinaCloud. | AzureCloud |
DependencyFilesLocalPath | Somente para sistemas integrados, o arquivo .pfx do certificado deve ser colocado neste diretório. Para ambientes desconectados, baixe mysql-connector-net-6.10.5.msi para esse diretório. Opcionalmente, você pode copiar um Windows Update pacote MSU aqui. | Opcional (obrigatório para sistemas integrados ou ambientes desconectados) |
DefaultSSLCertificatePassword | A senha do certificado .pfx. | Necessário |
MaxRetryCount | O número de vezes que você deseja repetir cada operação se houver uma falha. | 2 |
RetryDuration | O intervalo de tempo limite entre repetições, em segundos. | 120 |
Desinstalar | Remove o provedor de recursos e todos os recursos associados (confira as notas a seguir). | No |
DebugMode | Impede a limpeza automática em caso de falha. | No |
AcceptLicense | Ignora o prompt para aceitar a licença gpl. https://www.gnu.org/licenses/old-licenses/gpl-2.0.html |
Implantar 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 você estiver implantando o provedor de recursos do MySQL versão 1.1.47.0 ou posterior, o script de implantação baixará e instalará automaticamente os módulos necessários do PowerShell para que você desmarque C:\Arquivos de Programas\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 um 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 e senhas da conta padrão conforme necessário para a 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 for concluído, atualize o navegador para garantir que você possa ver as atualizações mais recentes e fechar a sessão atual do PowerShell.
Verificar a implantação da V1 usando o portal do Azure Stack Hub
- Entre no portal do administrador como o administrador do serviço.
- Selecione Grupos de Recursos.
- Selecione o sistema.<grupo de recursos location.mysqladapter>.
- Na página de resumo da Visão geral do grupo de recursos, não deve haver implantações com falha.
- Por fim, 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 Microsoft Entra ID
Se o Azure Stack Hub estiver usando Microsoft Entra ID como um provedor de identidade, verifique se a VM que instalou o provedor de recursos do MySQL Server tem conectividade com a Internet de saída.
Se houver a necessidade de obter o IP da VM que instalou o provedor de recursos do MySQL Server (ou seja, adicionar o IP à lista de permitidos do firewall), você precisará 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.