Partilhar via


O que é o Cache Redis do Azure com o Azure Private Link?

Neste artigo, você aprenderá a criar uma rede virtual e uma instância do Cache do Azure para Redis com um ponto de extremidade privado usando o portal do Azure. Você também aprenderá como adicionar um ponto de extremidade privado a uma instância existente do Cache do Azure para Redis.

O Ponto Final Privado do Azure é uma interface de rede que o liga de forma privada e segura à Cache do Azure para Redis com tecnologia Azure Private Link.

Pode restringir o acesso público ao ponto final privado da sua cache, desativando o sinalizador PublicNetworkAccess.

Importante

Existe um sinalizador publicNetworkAccess que é Disabled por predefinição. Pode definir o valor como Disabled ou Enabled. Quando definido como ativado, este sinalizador permite o acesso do ponto final público e privado à cache. Quando definido como Disabled, apenas permite o acesso do ponto final privado. Nem o escalão Enterprise nem o Enterprise Flash suportam o sinalizador publicNetworkAccess. Para obter mais informações sobre como alterar o valor, consulte as FAQ.

Importante

O ponto de extremidade privado é suportado nas camadas de cache Basic, Standard, Premium e Enterprise. Recomendamos o uso de ponto de extremidade privado em vez de redes virtuais. Os pontos finais privados são fáceis de configurar ou de remover, são suportados em todos os escalões e podem ligar a sua cache a várias VNets diferentes em simultâneo.

Ao utilizar o escalão Básico, poderá sofrer perda de dados quando eliminar e recriar um ponto final privado.

Âmbito da disponibilidade

Escalão de serviço Básico, Standard e Premium Empresa, Enterprise Flash Azure Managed Redis (visualização)
Disponível Sim Sim Sim

Pré-requisitos

Importante

Atualmente, a consola do Redis baseada no portal não é suportada com ligação privada.

Importante

Ao usar o link privado, você não pode exportar ou importar dados para uma conta de armazenamento que tenha o firewall habilitado, a menos que esteja usando um cache de camada Premium com identidade gerenciada para autenticar na conta de armazenamento. Para obter mais informações, consulte E se tiver a firewall ativada na minha conta de armazenamento?

Criar um ponto de extremidade privado com uma nova instância do Cache do Azure para Redis

Nesta seção, você cria uma nova instância do Cache do Azure para Redis com um ponto de extremidade privado.

Criar uma rede virtual para o novo cache

  1. Entre no portal do Azure e selecione Criar um recurso.

    Selecione Criar um recurso.

  2. Na página Novo, selecione Rede e, em seguida, selecione Rede virtual.

  3. Selecione Adicionar para criar uma rede virtual.

  4. Em Criar rede virtual, insira ou selecione essas informações na guia Noções básicas :

    Definição Valor sugerido Description
    Subscrição Drop-down e selecione sua assinatura. A assinatura sob a qual criar essa rede virtual.
    Grupo de recursos Drop-down e selecione um grupo de recursos, ou selecione Criar novo e insira um novo nome de grupo de recursos. Nome para o grupo de recursos no qual criar sua rede virtual e outros recursos. Ao colocar todos os recursos do seu aplicativo em um grupo de recursos, você pode facilmente gerenciá-los ou excluí-los juntos.
    Nome Insira um nome de rede virtual. O nome deve: começar com uma letra ou número; terminar com uma letra, número ou sublinhado; e contêm apenas letras, números, sublinhados, pontos ou hífenes.
    Região Drop-down e selecione uma região. Selecione uma região perto de outros serviços que usam sua rede virtual.
  5. Selecione a guia Endereços IP ou selecione o botão Avançar: Endereços IP na parte inferior da página.

  6. Na guia Endereços IP, especifique o espaço de endereço IPv4 como um ou mais prefixos de endereço na notação CIDR (por exemplo, 192.168.1.0/24).

  7. Em Nome da sub-rede, selecione por padrão para editar as propriedades da sub-rede.

  8. No painel Editar sub-rede, especifique um nome de sub-rede e o intervalo de endereços de sub-rede. O intervalo de endereços da sub-rede deve estar na notação CIDR (por exemplo, 192.168.1.0/24). Ele deve ser contido pelo espaço de endereço da rede virtual.

  9. Selecione Guardar.

  10. Selecione o separador Rever + criar ou selecione o botão Rever + criar .

  11. Verifique se todas as informações estão corretas e selecione Criar para criar a rede virtual.

Criar uma instância do Cache do Azure para Redis com um ponto de extremidade privado

Para criar uma instância de cache, siga estas etapas:

  1. Volte para a página inicial do portal do Azure ou abra o menu da barra lateral e selecione Criar um recurso.

  2. Na página Novo, selecione Bancos de Dados e, em seguida, selecione Cache do Azure para Redis.

    Selecione Cache do Azure para Redis.

  3. Na página Novo Cache Redis, defina as configurações para o novo cache.

    Definição Valor sugerido Description
    Nome DNS Introduza um nome globalmente exclusivo. O nome do cache deve ser uma cadeia de caracteres entre 1 e 63 caracteres. A cadeia de caracteres deve conter apenas números, letras ou hífenes. O nome deve começar e terminar com um número ou letra e não pode conter hífenes consecutivos. O nome de host da instância de cache é <DNS name.redis.cache.windows.net>.
    Subscrição Drop-down e selecione sua assinatura. A assinatura sob a qual criar essa nova instância do Cache do Azure para Redis.
    Grupo de recursos Drop-down e selecione um grupo de recursos, ou selecione Criar novo e insira um novo nome de grupo de recursos. Nome do grupo de recursos no qual criar o cache e outros recursos. Ao colocar todos os recursos do seu aplicativo em um grupo de recursos, você pode facilmente gerenciá-los ou excluí-los juntos.
    Location Drop-down e selecione um local. Selecione uma região perto de outros serviços que usam seu cache.
    Escalão de preço Menu suspenso e selecione um Nível de preço. O escalão de preço determina o tamanho, o desempenho e as funcionalidades que estão disponíveis para a cache. Para obter mais informações, consulte Visão geral do Cache do Azure para Redis.
  4. Selecione a guia Rede ou selecione o botão Rede na parte inferior da página.

  5. Na guia Rede, selecione Ponto de extremidade privado para o método de conectividade.

  6. Selecione o botão Adicionar para criar seu ponto de extremidade privado.

    Na rede, adicione um ponto de extremidade privado.

  7. Na página Criar um ponto de extremidade privado, defina as configurações para seu ponto de extremidade privado com a rede virtual e a sub-rede que você criou na última seção e selecione OK.

  8. Selecione a guia Avançar: Avançado ou selecione o botão Avançar: Avançado na parte inferior da página.

  9. Na guia Avançado para uma instância de cache básica ou padrão, selecione a opção habilitar se quiser habilitar uma porta não-TLS.

  10. Na guia Avançado para instância de cache premium, defina as configurações para porta não-TLS, clustering e persistência de dados.

  11. Selecione a guia Next: Tags ou selecione o botão Next: Tags na parte inferior da página.

  12. Opcionalmente, na guia Marcas , insira o nome e o valor se desejar categorizar o recurso.

  13. Selecione Rever + criar. Você é levado para a guia Revisão + criação, onde o Azure valida sua configuração.

  14. Depois que a mensagem verde Validação passada for exibida, selecione Criar.

Demora um pouco para o cache ser criado. Você pode monitorar o progresso na página Visão geral do Cache do Azure para Redis. Quando Status é exibido como Em execução, o cache está pronto para uso.

Importante

Existe um sinalizador publicNetworkAccess que é Disabled por predefinição. Pode definir o valor como Disabled ou Enabled. Quando definido como Enabled, esse sinalizador permite o acesso de ponto de extremidade público e privado ao cache. Quando definido como Disabled, apenas permite o acesso do ponto final privado. Para obter mais informações sobre como alterar o valor, consulte as FAQ.

Criar um ponto de extremidade privado com uma instância existente do Cache do Azure para Redis

Nesta seção, você adiciona um ponto de extremidade privado a uma instância existente do Cache do Azure para Redis.

Criar uma rede virtual para o cache existente

Para criar uma rede virtual, siga estes passos:

  1. Entre no portal do Azure e selecione Criar um recurso.

  2. Na página Novo, selecione Rede e, em seguida, selecione Rede virtual.

  3. Selecione Adicionar para criar uma rede virtual.

  4. Em Criar rede virtual, insira ou selecione essas informações na guia Noções básicas :

    Definição Valor sugerido Description
    Subscrição Drop-down e selecione sua assinatura. A assinatura sob a qual criar essa rede virtual.
    Grupo de recursos Drop-down e selecione um grupo de recursos, ou selecione Criar novo e insira um novo nome de grupo de recursos. Nome para o grupo de recursos no qual criar sua rede virtual e outros recursos. Ao colocar todos os recursos do seu aplicativo em um grupo de recursos, você pode facilmente gerenciá-los ou excluí-los juntos.
    Nome Insira um nome de rede virtual. O nome deve: começar com uma letra ou número; terminar com uma letra, número ou sublinhado; e contêm apenas letras, números, sublinhados, pontos ou hífenes.
    Região Drop-down e selecione uma região. Selecione uma região perto de outros serviços que usam sua rede virtual.
  5. Selecione a guia Endereços IP ou selecione o botão Avançar: Endereços IP na parte inferior da página.

  6. Na guia Endereços IP, especifique o espaço de endereço IPv4 como um ou mais prefixos de endereço na notação CIDR (por exemplo, 192.168.1.0/24).

  7. Em Nome da sub-rede, selecione por padrão para editar as propriedades da sub-rede.

  8. No painel Editar sub-rede, especifique um nome de sub-rede e o intervalo de endereços de sub-rede. O intervalo de endereços da sub-rede deve estar na notação CIDR (por exemplo, 192.168.1.0/24). Ele deve ser contido pelo espaço de endereço da rede virtual.

  9. Selecione Guardar.

  10. Selecione o separador Rever + criar ou selecione o botão Rever + criar .

  11. Verifique se todas as informações estão corretas e selecione Criar para criar a rede virtual.

Criar um ponto final privado

Para criar um ponto de extremidade privado, siga estas etapas:

  1. No portal do Azure, procure Cache do Azure para Redis. Em seguida, prima Enter ou selecione-o nas sugestões de pesquisa.

    Pesquise o Cache do Azure para Redis.

  2. Selecione a instância de cache à qual deseja adicionar um ponto de extremidade privado.

  3. No lado esquerdo do ecrã, selecione Ponto Final Privado.

  4. Selecione o botão Ponto de extremidade privado para criar seu ponto de extremidade privado.

    Adicione um ponto de extremidade privado.

  5. Na página Criar um ponto de extremidade privado, defina as configurações para seu ponto de extremidade privado.

    Definição Valor sugerido Description
    Subscrição Drop-down e selecione sua assinatura. A assinatura sob a qual criar esse ponto de extremidade privado.
    Grupo de recursos Drop-down e selecione um grupo de recursos, ou selecione Criar novo e insira um novo nome de grupo de recursos. Nome para o grupo de recursos no qual criar seu ponto de extremidade privado e outros recursos. Ao colocar todos os recursos do seu aplicativo em um grupo de recursos, você pode facilmente gerenciá-los ou excluí-los juntos.
    Nome Insira um nome de ponto de extremidade privado. O nome deve: começar com uma letra ou número; terminar com uma letra, número ou sublinhado; e pode conter apenas letras, números, sublinhados, pontos ou hífenes.
    Região Drop-down e selecione uma região. Selecione uma região perto de outros serviços que usam seu ponto de extremidade privado.
  6. Selecione o botão Next: Resource na parte inferior da página.

  7. No separador Recurso, selecione a sua subscrição, escolha o tipo de recurso como Microsoft.Cache/Redise, em seguida, selecione a cache à qual pretende ligar o ponto de extremidade privado.

  8. Selecione o botão Next: Configuration na parte inferior da página.

  9. Selecione o botão Next: Virtual Network na parte inferior da página.

  10. Na guia Configuração, selecione a rede virtual e a sub-rede que você criou na seção anterior.

  11. Na guia Rede Virtual, selecione a rede virtual e a sub-rede que você criou na seção anterior.

  12. Selecione o botão Next: Tags na parte inferior da página.

  13. Opcionalmente, na guia Marcas , insira o nome e o valor se desejar categorizar o recurso.

  14. Selecione Rever + criar. Você é levado para a guia Revisão + criação, onde o Azure valida sua configuração.

  15. Depois que a mensagem verde Validação passada for exibida, selecione Criar.

Importante

Existe um sinalizador publicNetworkAccess que é Disabled por predefinição. Pode definir o valor como Disabled ou Enabled. Quando definido como ativado, este sinalizador permite o acesso do ponto final público e privado à cache. Quando definido como Disabled, apenas permite o acesso do ponto final privado. Para obter mais informações sobre como alterar o valor, consulte as FAQ.

Criar um ponto de extremidade privado usando o Azure PowerShell

Para criar um ponto de extremidade privado chamado MyPrivateEndpoint para uma instância existente do Cache do Azure para Redis, execute o seguinte script do PowerShell. Substitua os valores das variáveis pelos detalhes do seu ambiente:


$SubscriptionId = "<your Azure subscription ID>"
# Resource group where the Azure Cache for Redis instance and virtual network resources are located
$ResourceGroupName = "myResourceGroup"
# Name of the Azure Cache for Redis instance
$redisCacheName = "mycacheInstance"

# Name of the existing virtual network
$VNetName = "myVnet"
# Name of the target subnet in the virtual network
$SubnetName = "mySubnet"
# Name of the private endpoint to create
$PrivateEndpointName = "MyPrivateEndpoint"
# Location where the private endpoint can be created. The private endpoint should be created in the same location where your subnet or the virtual network exists
$Location = "westcentralus"

$redisCacheResourceId = "/subscriptions/$($SubscriptionId)/resourceGroups/$($ResourceGroupName)/providers/Microsoft.Cache/Redis/$($redisCacheName)"

$privateEndpointConnection = New-AzPrivateLinkServiceConnection -Name "myConnectionPS" -PrivateLinkServiceId $redisCacheResourceId -GroupId "redisCache"
 
$virtualNetwork = Get-AzVirtualNetwork -ResourceGroupName  $ResourceGroupName -Name $VNetName  
 
$subnet = $virtualNetwork | Select -ExpandProperty subnets | Where-Object  {$_.Name -eq $SubnetName}  
 
$privateEndpoint = New-AzPrivateEndpoint -ResourceGroupName $ResourceGroupName -Name $PrivateEndpointName -Location "westcentralus" -Subnet  $subnet -PrivateLinkServiceConnection $privateEndpointConnection

Recuperar um ponto de extremidade privado usando o Azure PowerShell

Para obter os detalhes de um ponto de extremidade privado, use este comando do PowerShell:

Get-AzPrivateEndpoint -Name $PrivateEndpointName -ResourceGroupName $ResourceGroupName

Remover um ponto de extremidade privado usando o Azure PowerShell

Para remover um ponto de extremidade privado, use o seguinte comando do PowerShell:

Remove-AzPrivateEndpoint -Name $PrivateEndpointName -ResourceGroupName $ResourceGroupName

Criar um ponto final privado utilizando a CLI do Azure

Para criar um ponto de extremidade privado chamado myPrivateEndpoint para uma instância existente do Cache do Azure para Redis, execute o seguinte script da CLI do Azure. Substitua os valores das variáveis pelos detalhes do seu ambiente:

# Resource group where the Azure Cache for Redis and virtual network resources are located
ResourceGroupName="myResourceGroup"

# Subscription ID where the Azure Cache for Redis and virtual network resources are located
SubscriptionId="<your Azure subscription ID>"

# Name of the existing Azure Cache for Redis instance
redisCacheName="mycacheInstance"

# Name of the virtual network to create
VNetName="myVnet"

# Name of the subnet to create
SubnetName="mySubnet"

# Name of the private endpoint to create
PrivateEndpointName="myPrivateEndpoint"

# Name of the private endpoint connection to create
PrivateConnectionName="myConnection"

az network vnet create \
    --name $VNetName \
    --resource-group $ResourceGroupName \
    --subnet-name $SubnetName

az network vnet subnet update \
    --name $SubnetName \
    --resource-group $ResourceGroupName \
    --vnet-name $VNetName \
    --disable-private-endpoint-network-policies true

az network private-endpoint create \
    --name $PrivateEndpointName \
    --resource-group $ResourceGroupName \
    --vnet-name $VNetName  \
    --subnet $SubnetName \
    --private-connection-resource-id "/subscriptions/$SubscriptionId/resourceGroups/$ResourceGroupName/providers/Microsoft.Cache/Redis/$redisCacheName" \
    --group-ids "redisCache" \
    --connection-name $PrivateConnectionName

Recuperar um ponto de extremidade privado usando a CLI do Azure

Para obter os detalhes de um ponto de extremidade privado, use o seguinte comando da CLI:

az network private-endpoint show --name MyPrivateEndpoint --resource-group MyResourceGroup

Remover um ponto de extremidade privado usando a CLI do Azure

Para remover um ponto de extremidade privado, use o seguinte comando da CLI:

az network private-endpoint delete --name MyPrivateEndpoint --resource-group MyResourceGroup

FAQ

Como é que me ligo à minha cache com um ponto final privado?

Para as caches de escalão Básico, Standard e Premium, a sua aplicação deve ligar-se ao <cachename>.redis.cache.windows.net na porta 6380. Uma zona DNS privado, denominada *.privatelink.redis.cache.windows.net, é criada automaticamente na sua subscrição. A zona DNS privado é essencial para estabelecer a ligação TLS ao ponto final privado. É recomendável evitar utilizar o <cachename>.privatelink.redis.cache.windows.net na configuração ou na cadeia de ligação.

Para as caches de escalão Enterprise e Enterprise Flash, a sua aplicação deve ligar-se ao <cachename>.<region>.redisenterprise.cache.azure.net na porta 10000. Se você estiver usando clustering OSS, sua biblioteca de cliente também criará conexões com sua instância Redis Enterprise nas portas 8500 - 8599, pois seu aplicativo precisa se conectar a cada fragmento individualmente na configuração de cluster OSS.

Para obter mais informações, veja Configuração da zona DNS dos serviços do Azure.

Porque não me consigo ligar a um ponto de extremidade privado?

  • Os pontos finais privados não podem ser utilizados com a sua instância de cache se a sua cache já for uma cache injetada na VNet.

  • Para caches de nível Basic, Standard e Premium, você está limitado a 100 links privados.

  • Em caches de nível Premium usando clustering, você está limitado a um link privado.

  • As caches de escalão Enterprise e Enterprise Flash estão limitadas a 84 ligações privadas.

  • Tenta persistir os dados na conta de armazenamento onde são aplicadas regras de firewall que o podem impedir de criar a Ligação Privada.

  • Poderá não se ligar ao seu ponto final privado se a sua instância de cache estiver a utilizar uma funcionalidade não suportada.

Quais as funcionalidades que não são suportadas pelos pontos finais privados?

  • Tentar ligar a partir da consola do portal do Azure é um cenário não suportado onde vê uma falha de ligação.

  • Não podem ser adicionadas ligações privadas a caches que já estejam a utilizar georreplicação passiva no escalão Premium. Para adicionar uma ligação privada a uma cache georreplicada: 1. Desassocie a georreplicação. 2. Adicione uma Ligação Privada 3. Por último, volte a associar a georreplicação. (Os caches de camada corporativa que usam replicação geográfica ativa não têm essa restrição.)

Como verifico se o meu ponto final privado está configurado corretamente?

Aceda a Descrição Geral no menu Recursos do portal. Irá ver o Nome do Anfitrião para a sua cache no painel de trabalho. Execute um comando como nslookup <hostname> a partir da VNet que está ligada ao ponto final privado para verificar se o comando é resolvido para o endereço IP privado da cache.

No portal do Azure, configurações de ponto de extremidade privado D N S.

Como posso alterar o ponto final privado para ser desativado ou ativado a partir do acesso à rede pública?

Existe um sinalizador publicNetworkAccess que é Disabled por predefinição. Quando definido como Enabled, este sinalizador permite o acesso do ponto final público e privado à cache. Quando definido como Disabled, apenas permite o acesso do ponto final privado. Pode definir o valor como Disabled ou Enabled no portal do Azure ou com um pedido RESTful API PATCH.

Para alterar o valor no portal do Azure, siga estes passos:

  1. No portal do Azure, procure Cache do Azure para Redis. Em seguida, prima Enter ou selecione-o nas sugestões de pesquisa.

  2. Selecione a instância de cache na qual pretende alterar o valor de acesso à rede pública.

  3. No lado esquerdo do ecrã, selecione Ponto Final Privado.

  4. Selecione o botão Ativar o acesso à rede pública.

Também pode alterar o valor através de um pedido RESTful API PATCH. Por exemplo, utilize o código seguinte para uma cache de escalão Básico, Standard ou Premium e edite o valor para refletir o sinalizador que pretende para a sua cache.

PATCH  https://management.azure.com/subscriptions/{subscription}/resourceGroups/{resourcegroup}/providers/Microsoft.Cache/Redis/{cache}?api-version=2020-06-01
{    "properties": {
       "publicNetworkAccess":"Disabled"
   }
}

Para obter mais informações, consulte Redis – Atualização.

Consulte o nosso guia de migração para ver diferentes abordagens sobre como migrar as suas caches injetadas na VNet para caches do Private Link.

Como posso ter vários pontos finais em diferentes redes virtuais?

Para ter vários pontos finais privados em redes virtuais diferentes, a zona DNS privado deve ser configurada manualmente para as várias redes virtuais antes de criar o ponto final privado. Para obter mais informações, veja Configuração do DNS do Ponto Final Privado do Azure.

O que acontece se eliminar todos os pontos finais privados na minha cache?

Depois de eliminar os pontos finais privados na sua cache, a instância de cache pode ficar inacessível até: ativar explicitamente o acesso à rede pública ou adicionar outro ponto final privado. Pode alterar o sinalizador publicNetworkAccess no portal do Azure ou através de um pedido RESTful API PATCH. Para obter mais informações sobre como alterar o valor, consulte as FAQ

Os grupos de segurança de rede (NSG) estão ativos para pontos finais privados?

Não, estão desativados para pontos finais privados. Embora as sub-redes que contêm o ponto final privado possam ter o NSG associado, as regras não são efetivas no tráfego processado pelo ponto final privado. Tem de ter a aplicação de políticas de rede desativada para implementar pontos finais privados numa sub-rede. O NSG continua a ser aplicado noutras cargas de trabalho alojadas na mesma sub-rede. As rotas em qualquer sub-rede do cliente usam um prefixo /32, alterar o comportamento de roteamento padrão requer um UDR semelhante.

Controle o tráfego utilizando regras do NSG para o tráfego de saída nos clientes de origem. Implemente rotas individuais com o prefixo /32 para substituir rotas de ponto final privado. Os registos de Fluxo do NSG e as informações de monitorização para ligações de saída continuam a ser suportados e podem ser utilizados.

A minha instância de ponto final privado não está na minha VNet. Como está associada à minha VNet?

Apenas está ligado à sua VNet. Como não está na sua VNet, as regras do NSG não precisam de ser modificadas para pontos finais dependentes.

  • Para saber mais sobre o Azure Private Link, consulte a documentação do Azure Private Link.
  • Para comparar várias opções de isolamento de rede para seu cache, consulte a documentação de opções de isolamento de rede do Cache do Azure para Redis.