Partilhar via


Acesso à Rede Privada usando integração de rede virtual para o Banco de Dados do Azure para MySQL - Servidor Flexível

APLICA-SE A: Banco de Dados do Azure para MySQL - Servidor Flexível

Este artigo descreve a opção de conectividade privada para o Banco de Dados do Azure para servidor flexível MySQL. Você aprende em detalhes os conceitos de rede virtual para o Banco de Dados do Azure para o servidor flexível MySQL para criar um servidor com segurança no Azure.

Acesso privado (integração de rede virtual)

Rede Virtual do Azure) é o bloco de construção fundamental para sua rede privada no Azure. A integração de rede virtual com o servidor flexível do Banco de Dados do Azure para MySQL traz os benefícios do Azure de segurança e isolamento de rede.

A integração de rede virtual para uma instância de servidor flexível do Banco de Dados do Azure para MySQL permite que você bloqueie o acesso ao servidor apenas para sua infraestrutura de rede virtual. Sua rede virtual pode incluir todos os seus recursos de aplicativo e banco de dados em uma única rede virtual ou pode se estender por diferentes redes virtuais na mesma região ou em uma região diferente. A conectividade perfeita entre várias redes virtuais pode ser estabelecida por emparelhamento, que usa a infraestrutura de backbone privado de baixa latência e alta largura de banda da Microsoft. As redes virtuais aparecem como uma só para fins de conectividade.

O Banco de Dados do Azure para servidor flexível MySQL dá suporte à conectividade de cliente de:

  • Redes virtuais dentro da mesma região do Azure (redes virtuais emparelhadas localmente)
  • Redes virtuais entre regiões do Azure (Redes virtuais emparelhadas globais)

As sub-redes permitem segmentar a rede virtual em uma ou mais sub-redes e alocar uma parte do espaço de endereçamento da rede virtual para o qual você pode implantar recursos do Azure. O Banco de Dados do Azure para servidor flexível MySQL requer uma sub-rede delegada. Uma sub-rede delegada é um identificador explícito de que uma sub-rede pode hospedar apenas o Banco de Dados do Azure para instâncias de servidor flexíveis do MySQL. Ao delegar a sub-rede, o serviço obtém permissões diretas para criar recursos específicos do serviço para gerenciar sua instância de servidor flexível do Banco de Dados do Azure para MySQL perfeitamente.

Nota

O menor intervalo CIDR que você pode especificar para a sub-rede para hospedar o Banco de Dados do Azure para o servidor flexível MySQL é /29, que fornece oito endereços IP. No entanto, o primeiro e o último endereço em qualquer rede ou sub-rede não podem ser atribuídos a nenhum host individual. O Azure reserva cinco endereços IP para uso interno pela rede do Azure, incluindo os dois endereços IP que não podem ser atribuídos a um host. Isso deixa três endereços IP disponíveis para um intervalo CIDR /29. Para o servidor flexível do Banco de Dados do Azure para MySQL, é necessário alocar um endereço IP por nó da sub-rede delegada quando o acesso privado está habilitado. Servidores habilitados para HA exigem dois endereços IP e um servidor não-HA requer um endereço IP. É recomendável reservar pelo menos dois endereços IP por Banco de Dados do Azure para a instância flexível do servidor MySQL, pois as opções de alta disponibilidade podem ser habilitadas posteriormente. O servidor flexível do Banco de Dados do Azure para MySQL integra-se às zonas DNS Privadas do Azure para fornecer um serviço DNS confiável e seguro para gerenciar e resolver nomes de domínio em uma rede virtual sem a necessidade de adicionar uma solução DNS personalizada. Uma zona DNS privada pode ser vinculada a uma ou mais redes virtuais criando links de rede virtual

Flexible server MySQL VNET

No diagrama acima,

  1. As instâncias flexíveis do Servidor do Banco de Dados do Azure para MySQL são injetadas em uma sub-rede delegada - 10.0.1.0/24 da rede virtual VNet-1.
  2. Os aplicativos implantados em sub-redes diferentes dentro da mesma rede virtual podem acessar o Banco de Dados do Azure para instâncias de servidor flexíveis do MySQL diretamente.
  3. Os aplicativos implantados em uma rede virtual diferente VNet-2 não têm acesso direto ao Banco de Dados do Azure para instâncias de servidor flexíveis do MySQL. Antes que eles possam acessar uma instância, você deve executar um emparelhamento de rede virtual de zona DNS privada.

Conceitos de rede virtual

Aqui estão alguns conceitos com os quais você deve estar familiarizado ao usar Redes Virtuais com o Banco de Dados do Azure para instâncias de servidor flexíveis do MySQL.

  • Rede virtual -

    Uma Rede Virtual do Azure contém um espaço de endereço IP privado configurado para seu uso. Visite a visão geral da Rede Virtual do Azure para saber mais sobre a rede virtual do Azure.

    Sua rede virtual deve estar na mesma região do Azure que sua instância de servidor flexível do Banco de Dados do Azure para MySQL.

  • Sub-rede delegada -

    Uma rede virtual contém sub-redes (sub-redes). As sub-redes permitem segmentar sua rede virtual em espaços de endereço menores. Os recursos do Azure são implantados em sub-redes específicas dentro de uma rede virtual.

    Sua instância de servidor flexível do Banco de Dados do Azure para MySQL deve estar em uma sub-rede delegada apenas para uso do servidor flexível do Banco de Dados do Azure para MySQL. Essa delegação significa que apenas o Banco de Dados do Azure para instâncias de servidor flexíveis do MySQL pode usar essa sub-rede. Nenhum outro tipo de recurso do Azure pode estar na sub-rede delegada. Você delega uma sub-rede atribuindo sua propriedade de delegação como Microsoft.DBforMySQL/flexibleServers.

  • Grupos de segurança de rede (NSG)

    As regras de segurança em grupos de segurança de rede permitem-lhe filtrar o tipo de tráfego que pode fluir de/para as sub-redes da rede virtual e as interfaces de rede. Consulte a visão geral do grupo de segurança de rede para obter mais informações.

  • Integração de zona DNS privada

    A integração da zona DNS privada do Azure permite resolver o DNS privado na rede virtual atual ou em qualquer rede virtual emparelhada na região onde a Zona DNS privada esteja vinculada.

  • Peering de rede virtual

    Um emparelhamento de rede virtual permite que você conecte duas ou mais redes virtuais no Azure perfeitamente. As redes virtuais emparelhadas aparecem como uma para fins de conectividade. O tráfego entre máquinas virtuais em redes virtuais emparelhadas usa a infraestrutura de backbone da Microsoft. O tráfego entre o aplicativo cliente e a instância de servidor flexível do Banco de Dados do Azure para MySQL em redes virtuais emparelhadas é roteado somente pela rede privada da Microsoft e é isolado nessa rede.

Usar zona DNS privada

  • Se você usar o portal do Azure ou a CLI do Azure para criar instâncias de servidor flexíveis do Banco de Dados do Azure para MySQL com uma rede virtual, uma nova zona DNS privada terminada com mysql.database.azure.com será provisionada automaticamente por servidor em sua assinatura usando o nome do servidor fornecido. Como alternativa, se você quiser configurar sua própria zona DNS privada com o Banco de Dados do Azure para instância de servidor flexível MySQL, consulte a documentação de visão geral do DNS privado.

  • Se você usar a API do Azure, um modelo do Azure Resource Manager (modelo ARM) ou o Terraform, crie zonas DNS privadas que terminem com e use-as enquanto configura o Banco de Dados do Azure para instâncias de servidor flexíveis do MySQL com mysql.database.azure.com acesso privado. Para obter mais informações, consulte a visão geral da zona DNS privada.

    Importante

    Os nomes de zona DNS privada devem terminar com mysql.database.azure.com. Se você estiver se conectando a uma instância de servidor flexível do Banco de Dados do Azure para MySQL com SSL e estiver usando uma opção para executar a verificação completa (sslmode=VERIFY_IDENTITY) com o nome do assunto do certificado, use <servername.mysql.database.azure.com> em sua cadeia de conexão.

Saiba como criar uma instância de servidor flexível do Banco de Dados do Azure para MySQL com acesso privado (integração de rede virtual) no portal do Azure ou na CLI do Azure.

Integração com um servidor DNS personalizado

Se você estiver usando o servidor DNS personalizado, deverá usar um encaminhador DNS para resolver o FQDN da instância flexível do servidor do Banco de Dados do Azure para MySQL. O endereço IP do encaminhador deve ser 168.63.129.16. O servidor DNS personalizado deve estar dentro da rede virtual ou acessível através da configuração do Servidor DNS da rede virtual. Consulte a resolução de nomes que usa seu servidor DNS para saber mais.

Importante

Para o provisionamento bem-sucedido da instância flexível do servidor flexível do Banco de Dados do Azure para MySQL, mesmo se você estiver usando um servidor DNS personalizado, não deve bloquear o tráfego DNS para o AzurePlatformDNS usando o NSG.

Zona DNS privada e emparelhamento de rede virtual

As configurações de zona DNS privada e o emparelhamento de rede virtual são independentes uns dos outros. Para obter mais informações sobre como criar e usar zonas DNS privadas, consulte a seção Usar zona DNS privada .

Se você quiser se conectar ao Banco de Dados do Azure para instância de servidor flexível MySQL de um cliente que é provisionado em outra rede virtual da mesma região ou de uma região diferente, você precisa vincular a zona DNS privada com a rede virtual. Veja como vincular a documentação da rede virtual.

Nota

Apenas os nomes de zonas DNS privadas que terminam com mysql.database.azure.com podem ser ligados.

Conectar-se de um servidor local a uma instância de servidor flexível do Banco de Dados do Azure para MySQL em uma rede virtual usando ExpressRoute ou VPN

Para cargas de trabalho que exigem acesso a uma instância de servidor flexível do Banco de Dados do Azure para MySQL em uma rede virtual de uma rede local, você precisa de uma Rota Expressa ou VPN e rede virtual conectada ao local. Com essa configuração em vigor, você precisa de um encaminhador DNS para resolver o nome de servidor flexível do Banco de Dados do Azure para MySQL se quiser se conectar a partir de aplicativos cliente (como o MySQL Workbench) em execução em redes virtuais locais. Este reencaminhador DNS é responsável pela resolução de todas as consultas DNS através de um reencaminhador de nível de servidor para o serviço DNS disponibilizado pelo Azure 168.63.129.16.

Para configurar corretamente, você precisa dos seguintes recursos:

  • Uma rede local.
  • Uma instância de servidor flexível do Banco de Dados do Azure para MySQL provisionada com acesso privado (integração de rede virtual).
  • Uma rede virtual conectada ao local.
  • Um encaminhador DNS 168.63.129.16 implantado no Azure.

Em seguida, você pode usar o FQDN (nome de servidor flexível do Banco de Dados do Azure para MySQL) para se conectar do aplicativo cliente na rede virtual emparelhada ou na rede local à instância flexível do servidor do Banco de Dados do Azure para MySQL.

Nota

Recomendamos que você use o nome de domínio totalmente qualificado (FQDN) <servername>.mysql.database.azure.com em cadeias de conexão ao se conectar ao seu Banco de Dados do Azure para instância de servidor flexível MySQL. Não é garantido que o endereço IP do servidor permaneça estático. Usar o FQDN ajudará você a evitar fazer alterações na cadeia de conexão.

Cenários de rede virtual não suportados

  • Ponto de extremidade público (ou IP ou DNS público) - Uma instância de servidor flexível do Banco de Dados do Azure para MySQL implantada em uma rede virtual não pode ter um ponto de extremidade público.
  • Depois que a instância de servidor flexível do Banco de Dados do Azure para MySQL for implantada em uma rede virtual e sub-rede, você não poderá movê-la para outra rede virtual ou sub-rede. Não é possível mover a rede virtual para outro grupo de recursos ou assinatura.
  • A configuração de integração de DNS privado não pode ser alterada após a implantação.
  • O tamanho da sub-rede (espaços de endereços) não pode ser aumentado depois de os recursos existirem na mesma.

Próximos passos

  • Saiba como habilitar o acesso privado (integração de rede virtual) usando o portal do Azure ou a CLI do Azure.
  • Saiba como usar o TLS.