Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Observação
Isso substitui a versão de visualização anterior do pool de lotes do Azure sem endereços IP públicos. Esta nova versão exige a utilização da comunicação simplificada de nós de computação.
Importante
O suporte para conjuntos sem endereços IP públicos no Azure Batch está atualmente disponível para regiões selecionadas.
Quando cria um pool do Azure Batch, pode aprovisionar o pool de configuração da máquina virtual (VM) sem um endereço IP público. Este artigo explica como configurar um pool de lotes sem endereços IP públicos.
Por que usar um pool sem endereços IP públicos?
Por predefinição, todos os nós de computação num conjunto de configuração de VM do Azure Batch são atribuídos a um endereço IP público. Esse endereço é usado pelo serviço Batch para dar suporte ao acesso de saída à Internet, bem como ao acesso de entrada a nós de computação da Internet.
Para restringir o acesso a estes nós e reduzir a deteção dos mesmos a partir da Internet, pode aprovisionar o conjunto sem endereços IP públicos.
Pré-requisitos
Importante
Os pré-requisitos foram alterados em relação à versão de visualização anterior deste recurso. Certifique-se de revisar cada item para alterações antes de continuar.
Use comunicação simplificada do nó de computação. Para obter mais informações, consulte Utilizar comunicação simplificada de nó de computação.
A API do cliente Batch deve usar a autenticação do Microsoft Entra. O suporte do Azure Batch para Microsoft Entra ID está documentado em Autenticar soluções de serviço Batch com o Active Directory.
Crie seu pool em uma rede virtual do Azure (VNet), siga estes requisitos e configurações. Para preparar uma VNet com uma ou mais sub-redes com antecedência, você pode usar o portal do Azure, o Azure PowerShell, a CLI do Command-Line do Azure ou outros métodos.
A VNet deve estar na mesma assinatura e região que a conta de lote que você usa para criar seu pool.
A sub-rede especificada para o pool deve ter endereços IP não atribuídos suficientes para acomodar o número de VMs destinadas ao pool; ou seja, a soma das
targetDedicatedNodesetargetLowPriorityNodespropriedades do pool. Se a sub-rede não tiver endereços IP não atribuídos suficientes, a pool aloca parcialmente os nós de computação e ocorre um erro de redimensionamento.Caso planeie usar um ponto de extremidade privado e a sua rede virtual tenha a política de rede de ponto de extremidade privado ativada, verifique se a conexão de entrada com TCP/443 para a sub-rede que hospeda o ponto de extremidade privado é permitida a partir da sub-rede do pool do Batch.
Habilite o acesso de saída para o gerenciamento de nós em lote. Um pool sem endereços IP públicos não tem acesso de saída à Internet habilitado por padrão. Escolha uma das seguintes opções para permitir que os nós de computação acessem o serviço de gerenciamento de nó em lote (consulte Usar comunicação simplificada do nó de computação):
Use o ponto de extremidade privado nodeManagement com contas do Batch, que fornece acesso privado ao serviço de gestão de nós a partir da rede virtual. Esta solução é o método preferido.
Em alternativa, forneça o seu próprio suporte de acesso externo à internet (consulte Acesso externo à internet).
Importante
Existem dois subrecursos para endpoints privados com contas do Batch. Use o ponto de extremidade privado nodeManagement para o conjunto de lotes sem endereços IP públicos. Para obter mais detalhes, consulte Usar pontos de extremidade privados com contas do Azure Batch.
Limitações atuais
- Os pools sem endereços IP públicos devem usar a Configuração da Máquina Virtual e não a Configuração dos Serviços de Nuvem.
- A configuração de ponto de extremidade personalizada para nós de processamento por lotes não funciona com pools que não têm endereços IP públicos.
- Como não há endereços IP públicos, não é possível utilizar os seus próprios endereços IP públicos especificados com este tipo de pool.
- O token de autenticação de tarefa para a tarefa em lote não é suportado. A solução alternativa é usar o Batch pool com identidades geridas.
Criar um pool sem endereços IP públicos no portal do Azure
- Se for necessário, crie um ponto de extremidade privado nodeManagement para a sua conta Batch na rede virtual (consulte o requisito de acesso de saída em pré-requisitos).
- Navegue para a sua conta do Batch no portal do Azure.
- Na janela Configurações à esquerda, selecione Pools.
- Na janela Pools, selecione Adicionar.
- Na janela Adicionar Pool, selecione a opção que pretende usar no menu dropdown Tipo de Imagem.
- Selecione o Publicador/Oferta/Sku corretos da sua imagem.
- Especifique as configurações necessárias restantes, incluindo o tamanho do nó, os nós dedicados de destino e os nós de ponto de destino/baixa prioridade.
- Para o modo de comunicação do nó, selecione Simplificado em Configurações opcionais.
- Selecione uma rede virtual e uma sub-rede que deseja usar. Essa rede virtual deve estar no mesmo local do pool que você está criando.
- Em tipo de provisionamento de endereço IP, selecione NoPublicIPAddresses.
A captura de tela a seguir mostra os elementos que precisam ser modificados para criar um pool sem endereços IP públicos.
Captura de ecrã do ecrã de Adicionar Piscina com NoPublicIPAddresses selecionado.
Use a API REST em lote para criar um pool sem endereços IP públicos
O exemplo a seguir mostra como usar a API REST do serviço de lote para criar um pool que usa endereços IP públicos.
URI da API REST
POST {batchURL}/pools?api-version=2022-10-01.16.0
client-request-id: 00000000-0000-0000-0000-000000000000
Corpo de solicitação
"pool": {
"id": "pool-npip",
"vmSize": "standard_d2s_v3",
"virtualMachineConfiguration": {
"imageReference": {
"publisher": "Canonical",
"offer": "0001-com-ubuntu-server-jammy",
"sku": "22_04-lts"
},
"nodeAgentSKUId": "batch.node.ubuntu 22.04"
},
"networkConfiguration": {
"subnetId": "/subscriptions/<your_subscription_id>/resourceGroups/<your_resource_group>/providers/Microsoft.Network/virtualNetworks/<your_vnet_name>/subnets/<your_subnet_name>",
"publicIPAddressConfiguration": {
"provision": "NoPublicIPAddresses"
}
},
"resizeTimeout": "PT15M",
"targetDedicatedNodes": 2,
"targetLowPriorityNodes": 0,
"taskSlotsPerNode": 1,
"taskSchedulingPolicy": {
"nodeFillType": "spread"
},
"enableAutoScale": false,
"enableInterNodeCommunication": false,
"targetNodeCommunicationMode": "simplified"
}
Criar um pool sem endereços IP públicos usando o modelo ARM
Você pode usar este Modelo de Início Rápido do Azure para criar um pool sem endereços IP públicos usando o modelo ARM (Azure Resource Manager).
Os seguintes recursos serão implantados pelo modelo:
- Conta do Azure Batch com firewall de IP configurado para bloquear o acesso da rede pública ao ponto de extremidade de gestão de nós do Batch.
- Rede virtual com grupo de segurança de rede para bloquear o acesso de saída à Internet
- Ponto de extremidade privado para aceder ao ponto de extremidade de gestão de nós do Batch da conta
- Integração de DNS para o ponto de extremidade privado usando zona DNS privada vinculada à rede virtual
- Pool de lotes implantado na rede virtual e sem endereços IP públicos
Se você estiver familiarizado com o uso de modelos ARM, selecione o botão Implantar no Azure . O modelo será aberto no portal do Azure.
Observação
Se a implantação do ponto de extremidade privado falhou devido a groupId "nodeManagement" inválido, verifique se a região está na lista suportada para comunicação de nó de computação simplificada. Escolha a região certa e tente novamente a implantação.
Acesso de saída à Internet
Em um pool sem endereços IP públicos, as suas máquinas virtuais não poderão acessar a internet pública, a menos que configure a rede adequadamente, como por exemplo, usar o NAT de rede virtual. O NAT só permite o acesso de saída à Internet a partir das máquinas virtuais na rede virtual. Os nós de computação criados em lote não serão acessíveis publicamente, uma vez que não têm endereços IP públicos associados.
Outra maneira de fornecer conectividade de saída é usar uma rota definida pelo usuário (UDR). Esse método permite rotear o tráfego para uma máquina proxy que tenha acesso público à Internet, por exemplo, o Firewall do Azure.
Importante
Não são criados recursos de rede extra (como balanceadores de carga ou grupos de segurança de rede) para as pools de comunicação de nós simplificadas sem endereços IP públicos. Como os nós de computação no pool não estão vinculados a nenhum balanceador de carga, o Azure pode fornecer Acesso de Saída Padrão. No entanto, o Acesso de Saída Padrão não é adequado para cargas de trabalho de produção e será desativado em 31 de março de 2026 (veja o anúncio oficial). Portanto, se as suas cargas de trabalho exigirem acesso de saída à Internet ou se o seu pool não utilizar um ponto de extremidade privado para aceder ao ponto de extremidade de gestão de nós Batch, terá de providenciar a sua própria solução para possibilitar o acesso de saída à Internet.
Solução de problemas
Nós de computação não utilizáveis num grupo de processamento em lotes
Se os nós de computação estiverem no estado de inutilizável num pool do Batch sem endereços IP públicos, a primeira e mais importante verificação é confirmar o acesso de saída ao serviço de gestão de nós do Batch. Ele deve ser configurado corretamente para que os nós de computação possam se conectar ao serviço a partir de sua rede virtual.
Usando o ponto de extremidade privado nodeManagement
Se tiver criado um endpoint privado de gestão de nós na rede virtual para a sua conta Batch:
- Verifique se o ponto de extremidade privado foi criado na rede virtual correta, no estado de Sucesso do provisionamento e também no estado Aprovado.
- Verifique se a configuração de DNS está configurada corretamente para o ponto de extremidade de gerenciamento de nó da sua conta Batch:
- Se o seu ponto de extremidade privado for criado com integração automática de zona DNS privada, verifique se o registro DNS A está configurado corretamente na zona
privatelink.batch.azure.comDNS privada e se a zona está vinculada à sua rede virtual. - Se estiver a utilizar a sua própria solução DNS, certifique-se de que o registo DNS do ponto de gestão de nós Batch está configurado corretamente e está direcionado para o endereço IP do ponto de extremidade privado.
- Se o seu ponto de extremidade privado for criado com integração automática de zona DNS privada, verifique se o registro DNS A está configurado corretamente na zona
- Verifique a resolução DNS para o endpoint de gestão de nós em lote da sua conta. Você pode confirmá-lo executando
nslookup <nodeManagementEndpoint>de dentro de sua rede virtual, e o nome DNS deve ser resolvido para o endereço IP do ponto de extremidade privado. - Se a sua rede virtual tiver a política de rede de ponto de extremidade privada habilitada, verifique NSG e UDR para sub-redes do Batch pool e do ponto de extremidade privado. A conexão de entrada com TCP/443 para a sub-rede que hospeda o ponto de extremidade privado deve ser permitida a partir da sub-rede do pool de Batch.
- Na sub-rede do pool de Batch, execute um ping TCP para o endpoint de gestão do nó usando a porta padrão do HTTPS (443). Esta sonda pode dizer se a conexão de link privado está funcionando conforme o esperado.
# Windows
Test-NetConnection -ComputerName <nodeManagementEndpoint> -Port 443 -InformationLevel Detailed -Verbose
# Linux
nc -v <nodeManagementEndpoint> 443
Se o ping TCP falhar (por exemplo, tempo limite expirado), normalmente é um problema com a conexão de link privado, e você pode aumentar o tíquete de suporte do Azure com esse recurso de ponto de extremidade privado. Caso contrário, este problema de inutilização do nó pode ser resolvido como qualquer pool de Batch normal, e pode abrir um pedido de suporte com a sua conta do Batch.
Usando a sua própria solução de acesso à Internet
Se estiver a usar a sua própria solução de saída para a internet em vez do ponto de extremidade privado, execute ping TCP no ponto de extremidade de gestão de nós. Se não estiver a funcionar, verifique se o acesso de saída está configurado corretamente, seguindo os requisitos detalhados de comunicação simplificada dos nós de computação.
Conectar-se a nós de computação
Não existe acesso à Internet de entrada para nós de computação no conjunto de lotes sem endereços IP públicos. Para acessar seus nós de computação para depuração, você precisará se conectar de dentro da rede virtual:
- Utilize a máquina jumpbox dentro da rede virtual e, depois, conecte-se aos seus nós de computação a partir daí.
- Ou, tente usar outras soluções de conexão remota, como o Azure Bastion:
- Crie Bastion na rede virtual com conexão baseada em IP habilitada.
- Use Bastion para se conectar ao nó de computação usando seu endereço IP.
Você pode seguir o guia Conectar-se a nós de cálculo para obter as credenciais do utilizador e o endereço IP do nó de cálculo de destino no seu pool de lotes.
Migração da versão de visualização anterior de No Public IP pools
Para pools existentes que usam a versão de visualização anterior do Azure Batch No Public IP pool, só é possível migrar pools criados em uma rede virtual.
- Crie um ponto de extremidade privado para a gestão de nós de Batch na rede virtual.
- Atualize o modo de comunicação do nó do pool para simplificado.
- Reduza o pool para zero nós.
- Dimensione o pool novamente. O pool é então migrado automaticamente para a nova versão.
Próximos passos
- Saiba como usar a comunicação de nós de computação simplificada.
- Saiba mais sobre como criar pools em uma rede virtual.
- Saiba como usar pontos de extremidade privados com contas Batch.