Criar bases de dados MySQL de elevada disponibilidade

Importante

A partir da compilação 2108 do Azure Stack Hub, os fornecedores de recursos SQL e MySQL são oferecidos às subscrições a quem foi concedido acesso. Se quiser 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 orientá-lo ao longo do processo de implementação ou atualização.

Enquanto operador do Azure Stack Hub, pode configurar máquinas virtuais de servidor (VMs) para alojar bases de dados do Servidor MySQL. Depois de um cluster mySQL ser criado e gerido com êxito pelo Azure Stack Hub, os utilizadores que subscreveram os serviços MySQL podem facilmente criar bases de dados MySQL de elevada disponibilidade.

Este artigo mostra como utilizar itens do Azure Stack Marketplace para criar um MySQL com cluster de replicação. Esta solução utiliza várias VMs para replicar as bases de dados do nó do plano de controlo para um número configurável de réplicas. Depois de criado, o cluster pode ser adicionado como um Servidor de Alojamento MySQL do Azure Stack Hub e, em seguida, os utilizadores podem criar bases de dados MySQL de elevada disponibilidade.

Importante

O item MySQL com replicação do Azure Stack Marketplace poderá não estar disponível para todos os ambientes de subscrição da cloud do Azure. Verifique se o item do marketplace está disponível na sua subscrição antes de tentar seguir o resto deste tutorial.

O que irá aprender:

  • Crie um cluster do MySQL Server a partir de itens do marketplace.
  • Configure o cluster do MySQL Server como um Servidor de Alojamento MySQL do Azure Stack Hub.
  • Crie uma base de dados MySQL de elevada disponibilidade.

Será criado e configurado um cluster do MySQL Server de três VMs com itens disponíveis do Azure Stack Marketplace.

Antes de iniciar, certifique-se de que o fornecedor de recursos do MySQL Server foi instalado com êxito e que os seguintes itens estão disponíveis no Azure Stack Marketplace:

Importante

São necessários todos os seguintes procedimentos para criar o cluster MySQL.

  • MySQL com Replicação: este é o modelo de solução Bitnami que será utilizado para a implementação do cluster MySQL.
  • Debian 8 "Jessie": Debian 8 "Jessie" com kernel de backports para o Microsoft Azure fornecido pelo credativ. Debian GNU/Linux é uma das distribuições linux mais populares.
  • Script personalizado para linux 2.0: a Extensão de Script Personalizado é uma ferramenta para executar as tarefas de personalização da VM após a aprovisionamento da VM. Quando esta Extensão é adicionada a uma VM, pode transferir scripts do armazenamento do Azure e executá-los na VM. As tarefas de Extensão de Script Personalizado também podem ser automatizadas com os cmdlets Azure PowerShell e a Interface de Command-Line Multiplataformas do Azure (xPlat CLI).
  • Acesso à VM para a Extensão 1.4.7 do Linux: a extensão de Acesso à VM permite-lhe repor a palavra-passe, a chave SSH ou as configurações de SSH para que possa recuperar o acesso à VM. Também pode adicionar um novo utilizador com palavra-passe ou chave SSH ou eliminar um utilizador com esta extensão. Esta extensão destina-se a VMs do Linux.

Para saber mais sobre como adicionar itens ao Azure Stack Marketplace, veja a descrição geral do Azure Stack Marketplace.

Também precisará de um cliente SSH como o PuTTY para iniciar sessão nas VMs do Linux depois de serem implementadas.

Criar um cluster do MySQL Server

Utilize os passos nesta secção para implementar o cluster do Servidor MySQL com o item mySQL com o marketplace de replicação. Este modelo implementa três instâncias do MySQL Server configuradas num cluster MySQL de elevada disponibilidade. Por predefinição, cria os seguintes recursos:

  • Uma rede virtual
  • Um grupo de segurança de rede
  • Uma conta de armazenamento
  • Um conjunto de disponibilidade
  • Três interfaces de rede (uma para cada uma das VMs predefinidas)
  • Um endereço IP público (para a VM do cluster MySQL principal)
  • Três VMs do Linux para alojar o cluster mySQL
  1. Inicie sessão no portal de utilizador:

    • Para uma implementação integrada do sistema, o endereço do portal irá variar consoante a região da solução e o nome de domínio externo. Estará no formato de https://portal.<region>.<FQDN>.
    • Para o Azure Stack Development Kit (ASDK), o endereço do portal é https://portal.local.azurestack.external.
  2. Se ainda não foram atribuídas subscrições, selecione Obter uma Subscrição no Dashboard. No painel, escreva um nome para a subscrição e, em seguida, selecione uma oferta. Recomenda-se que mantenha a implementação do cluster MySQL na sua própria subscrição para evitar a remoção acidental.

  3. Selecione +Criar umaComputação de recursos > e, em seguida, MySQL com Replicação.

    Implementação personalizada de modelos no Azure Stack Hub

  4. Forneça informações básicas sobre a implementação na página Noções Básicas . Reveja os valores predefinidos e altere conforme necessário e selecione OK.

    No mínimo, forneça as seguintes informações:

    • Nome da implementação (a predefinição é mymysql).

    • Palavra-passe de raiz da aplicação. Forneça uma palavra-passe alfanumérica de 12 carateres sem carateres especiais.

    • Nome da base de dados da aplicação (a predefinição é bitnami).

    • Número de VMs de réplica da base de dados MySQL a criar (a predefinição é 2).

    • Selecione a subscrição a utilizar.

    • Selecione o grupo de recursos a utilizar ou crie um novo.

    • Selecione a localização (a predefinição é local para ASDK antes da versão 2107).

      Noções básicas da implementação – Criar MySQL com Replicação

  5. Na página Configuração do Ambiente , forneça as seguintes informações e, em seguida, selecione OK:

    • Palavra-passe ou chave pública SSH a utilizar para autenticação SSH (secure shell). Se utilizar uma palavra-passe, tem de conter letras, números e pode conter carateres especiais.

    • Tamanho da VM (a predefinição é VMs D1 v2 Standard).

    • Tamanho do disco de dados em GB

      Configuração do ambiente - Criar MySQL com Replicação

  6. Reveja o Resumo da implementação. Opcionalmente, pode transferir o modelo e os parâmetros personalizados e, em seguida, selecionar OK.

    Resumo - Criar MySQL com Replicação

  7. Selecione Criar na página Comprar para iniciar a implementação.

    Página Comprar - Criar MySQL com Replicação

    Nota

    A implementação demorará cerca de uma hora. Certifique-se de que a implementação foi concluída e que o cluster MySQL foi completamente configurado antes de continuar.

  8. Depois de todas as implementações terem sido concluídas com êxito, reveja os itens do grupo de recursos e selecione o item de endereço IP Público mysqlip . Registe o endereço IP público e o FQDN completo do IP público do cluster.

    Terá de fornecer este endereço IP a um operador do Azure Stack Hub para que possa criar um servidor de alojamento MySQL que tire partido deste cluster mySQL.

Criar uma regra de grupo de segurança de rede

Por predefinição, não está configurado qualquer acesso público para MySQL na VM do anfitrião. Para que o fornecedor de recursos MySQL do Azure Stack Hub se ligue e faça a gestão do cluster MySQL, é necessário criar uma regra de grupo de segurança de rede (NSG) de entrada.

  1. No portal de administrador, aceda ao grupo de recursos criado ao implementar o cluster MySQL e selecione o grupo de segurança de rede (default-subnet-sg):

    Selecionar grupo de segurança de rede no portal de administrador do Azure Stack Hub

  2. Selecione Regras de segurança de entrada e, em seguida, selecione Adicionar.

    Introduza 3306 no intervalo de portas de destino e, opcionalmente, forneça uma descrição nos campos Nome e Descrição .

    open

  3. Selecione Adicionar para fechar a caixa de diálogo da regra de segurança de entrada.

Configurar o acesso externo ao cluster mySQL

Antes de o cluster MySQL poder ser adicionado como anfitrião do MySQL Server do Azure Stack Hub, o acesso externo tem de ser ativado.

  1. A utilização de um cliente SSH (este exemplo utiliza PuTTY) inicia sessão no computador MySQL principal a partir de um computador que pode aceder ao IP público. Normalmente, o nome da VM mySQL principal termina com 0 e tem um IP público atribuído.

    Utilize o IP público e inicie sessão na VM com o nome de utilizador do bitnami e a palavra-passe da aplicação que criou anteriormente sem carateres especiais.

    LinuxLogin

  2. Na janela do cliente SSH, utilize o seguinte comando para garantir que o serviço bitnami está ativo e em execução. Forneça a palavra-passe bitnami novamente quando lhe for pedido:

    sudo service bitnami status

    Verificar o serviço bitnami

  3. Crie uma conta de utilizador de acesso remoto para ser utilizada pelo Servidor de Alojamento MySQL do Azure Stack Hub para ligar ao MySQL e, em seguida, saia do cliente SSH.

    Execute os seguintes comandos para iniciar sessão no MySQL como raiz, com a palavra-passe de raiz criada anteriormente. Crie um novo utilizador administrador e substitua <o nome> de utilizador e <a palavra-passe> conforme necessário para o seu ambiente. Neste exemplo, o utilizador criado tem o nome sqlsa e é utilizada uma palavra-passe segura:

    mysql -u root -p
    create user <username>@'%' identified by '<password>';
    grant all privileges on *.* to <username>@'%' with grant option;
    flush privileges;
    

    Criar utilizador administrador

  4. Registe as novas informações de utilizador do MySQL.

    Terá de fornecer este nome de utilizador e palavra-passe, juntamente com o endereço IP público ou o FQDN completo do IP público do cluster, a um operador do Azure Stack Hub para que possam criar um servidor de alojamento MySQL com este cluster MySQL.

Configurar um Servidor de Alojamento MySQL do Azure Stack Hub

Depois de o cluster do Servidor MySQL ser criado e configurado corretamente, um operador do Azure Stack Hub tem de o adicionar como um Servidor de Alojamento MySQL do Azure Stack Hub.

Certifique-se de que utiliza o IP público ou o FQDN completo para o IP público da VM primária do cluster mySQL registada anteriormente quando o grupo de recursos do cluster do MySQL foi criado (mysqlip). Além disso, o operador precisa de saber as credenciais de autenticação do Servidor MySQL que criou para aceder remotamente à base de dados do cluster do MySQL.

Nota

Este passo tem de ser executado a partir do portal de administrador do Azure Stack Hub por um operador do Azure Stack Hub.

Com as informações de início de sessão de autenticação Do IP Público e do MySQL do cluster mySQL, um operador do Azure Stack Hub pode agora criar um Servidor de Alojamento MySQL com o novo cluster mySQL.

Certifique-se também de que criou planos e ofertas para disponibilizar a criação da base de dados MySQL aos utilizadores. Um operador terá de adicionar o serviço Microsoft.MySqlAdapter a um plano e criar uma nova quota especificamente para bases de dados de elevada disponibilidade. Para obter mais informações sobre a criação de planos, veja Descrição geral do serviço, plano, oferta e subscrição.

Dica

O serviço Microsoft.MySqlAdapter não estará disponível para adicionar aos planos até que o fornecedor de recursos do MySQL Server tenha sido implementado.

Criar uma base de dados MySQL de elevada disponibilidade

Após o cluster mySQL ser criado e configurado e adicionado como um Servidor de Alojamento MySQL do Azure Stack Hub por um operador do Azure Stack Hub, um utilizador inquilino com uma subscrição que inclui as capacidades de base de dados do MySQL Server pode criar bases de dados MySQL de elevada disponibilidade ao seguir os passos nesta secção.

Nota

Execute estes passos no portal de utilizador do Azure Stack Hub como um utilizador inquilino com uma subscrição que fornece capacidades do MySQL Server (serviço Microsoft.MySQLAdapter).

  1. Inicie sessão no portal de utilizador:

    • Para uma implementação integrada do sistema, o endereço do portal irá variar com base na região da sua solução e no nome de domínio externo. Estará no formato de https://portal.<region>.<FQDN>.
    • Para o Azure Stack Development Kit (ASDK), o endereço do portal é https://portal.local.azurestack.external.
  2. Selecione +Criar um recurso>Dados + Armazenamento e, em seguida, Base de Dados MySQL.

    Forneça as informações de propriedade da base de dados necessárias, incluindo o nome, o agrupamento, a subscrição a utilizar e a localização a utilizar para a implementação.

    Criar uma base de dados MySQL no portal de utilizador do Azure Stack Hub

  3. Selecione SKU e, em seguida, escolha o SKU do Servidor de Alojamento MySQL adequado a utilizar. Neste exemplo, o operador do Azure Stack Hub criou o SKU MySQL-HA para suportar a elevada disponibilidade para bases de dados de cluster do MySQL.

    Selecionar o SKU no portal de utilizador do Azure Stack Hub

  4. Selecione Iniciar sessão>Criar um novo início de sessão e, em seguida, forneça as credenciais de autenticação mySQL a utilizar para a nova base de dados. Quando terminar, selecione OK e, em seguida , Criar para iniciar o processo de implementação da base de dados.

    Adicionar início de sessão no portal de utilizador do Azure Stack Hub

  5. Quando a implementação da base de dados MySQL for concluída com êxito, reveja as propriedades da base de dados para detetar a cadeia de ligação a utilizar para ligar à nova base de dados de elevada disponibilidade.

    Ver cadeia de ligação no portal de utilizador do Azure Stack Hub

Passos seguintes

Update the MySQL resource provider (Atualizar o fornecedor de recursos do MySQL)