Simplificar os requisitos de configuração de rede com o Gateway do Azure Arc (versão prévia)
Se você usar proxies empresariais para gerenciar o tráfego de saída, o gateway do Azure Arc (versão prévia) poderá ajudar a simplificar o processo de habilitação da conectividade.
O gateway do Azure Arc (versão prévia) permite:
- Conecte-se ao Azure Arc abrindo acesso à rede pública para apenas sete FQDNs (nomes de domínio totalmente qualificados).
- Exiba e audite todo o tráfego que os agentes do Arc enviam para o Azure por meio do gateway do Arc.
Importante
No momento, o gateway do Azure Arc está em versão prévia.
Veja os Termos de Uso Complementares para Versões Prévias do Microsoft Azure para obter termos legais que se aplicam aos recursos do Azure que estão em versão beta, versão prévia ou que, de outra forma, ainda não foram lançados em disponibilidade geral.
Como funciona o gateway do Azure Arc
O gateway do Arc funciona introduzindo dois novos componentes
O recurso de gateway do Arc é um Recurso do Azure que serve como um front-end comum para o tráfego do Azure. O recurso de gateway é servido em um domínio/URL específico. Você deve criar esse recurso seguindo as etapas descritas neste artigo. Depois de criar com sucesso o recurso de gateway, esse domínio/URL será incluído na resposta de sucesso.
O Proxy do Arc é um novo componente que é executado como seu próprio pod (chamado de "Proxy do Azure Arc"). Esse componente atua como um proxy de encaminhamento usado por agentes e extensões do Azure Arc. Não há nenhuma configuração necessária de sua parte para o Proxy do Azure Arc. A partir da versão 1.21.10 dos agentes do Kubernetes habilitados para Arc, esse pod agora faz parte dos principais agentes do Arc e é executado dentro do contexto de um Cluster do Kubernetes habilitado para Arc.
Quando o gateway está em vigor, o tráfego flui por meio dos seguintes saltos: Agentes do Arc → Proxy do Azure Arc → Proxy Corporativo → Gateway do Arc → Serviço de Destino.
Limitações atuais
Durante a visualização pública, aplicam-se as seguintes limitações. Considere esses fatores ao planejar sua configuração.
- Não há suporte para proxies de encerramento do TLS com o gateway do Arc.
- Você não pode usar o ExpressRoute/VPN site a site ou os pontos de extremidade privados, além do gateway do Arc.
- Há um limite de cinco recursos de gateway do Arc por assinatura do Azure.
Você pode criar um recurso de gateway do Arc usando a CLI do Azure ou o Azure PowerShell.
Ao criar o recurso de gateway do Arc, especifique a assinatura e o grupo de recursos no qual o recurso é criado, juntamente com uma região do Azure. No entanto, todos os recursos habilitados para Arc no mesmo locatário podem usar o recurso, independentemente de sua própria assinatura ou região.
Para criar recursos de gateway do Arc e gerenciar sua associação com os clusters de Kubernetes habilitados para Arc, as seguintes permissões são necessárias:
Microsoft.Kubernetes/connectedClusters/settings/default/write
Microsoft.hybridcompute/gateways/read
Microsoft.hybridcompute/gateways/write
Criar o recurso de gateway do Arc
Em um computador com acesso ao Azure, execute o seguinte comando da CLI do Azure:
az extension add -n arcgateway
Em seguida, execute o seguinte Comando da CLI do Azure para criar o recurso de gateway do Arc, substituindo os espaços reservados pelos valores desejados:
az arcgateway create --name <gateway's name> --resource-group <resource group> --location <region> --gateway-type public --allowed-features * --subscription <subscription name or id>
Geralmente, leva cerca de dez minutos para concluir a criação do recurso de gateway do Arc.
Confirmar o acesso aos URLs necessários
Depois que o recurso for criado com sucesso, a resposta de sucesso incluirá o URL do gateway do Arc. Certifique-se de que o URL do seu gateway do Arc e todas os URLs são permitidos no ambiente em que os recursos do Arc residem.
URL | Finalidade |
---|---|
[Your URL prefix].gw.arc.azure.com |
Seu URL de gateway. Esse URL pode ser obtido executando az arcgateway list depois de criar o recurso. |
management.azure.com |
Ponto de extremidade do Azure Resource Manager, necessário para o canal de controle do ARM. |
<region>.obo.arc.azure.com |
Necessário quando a Conexão de cluster for configurada. |
login.microsoftonline.com , <region>.login.microsoft.com |
Ponto de extremidade do Microsoft Entra ID, para a aquisição de tokens de acesso de identidade |
gbl.his.arc.azure.com , <region>.his.arc.azure.com |
O ponto de extremidade do serviço de nuvem para se comunicar com os Agentes do Arc. Usa nomes curtos, por exemplo, eus para o Leste dos EUA. |
mcr.microsoft.com , *.data.mcr.microsoft.com |
Necessário para efetuar pull de imagens de contêiner para agentes do Azure Arc. |
Integrar clusters do Kubernetes ao Azure Arc com o recurso de gateway do Arc
Verifique se o ambiente atende a todos os pré-requisitos necessários para o Kubernetes habilitado para Azure Arc. Como você está usando o gateway do Azure Arc, não é necessário atender ao conjunto completo de requisitos de rede.
Na máquina de implantação, defina as variáveis de ambiente necessárias para a CLI do Azure usar o servidor proxy de saída:
export HTTP_PROXY=<proxy-server-ip-address>:<port>
export HTTPS_PROXY=<proxy-server-ip-address>:<port>
export NO_PROXY=<cluster-apiserver-ip-address>:<port>
No cluster do Kubernetes, execute o comando connect com os parâmetros
proxy-https
eproxy-http
especificados. Se o servidor proxy estiver configurado com HTTP e HTTPS, certifique-se de usar--proxy-http
para o proxy HTTP e--proxy-https
para o proxy HTTPS. Se o servidor proxy usar apenas HTTP, você poderá usar esse valor para ambos os parâmetros.az connectedk8s connect -g <resource_group> -n <cluster_name> --gateway-resource-id <gateway_resource_id> --proxy-https <proxy_value> --proxy-http http://<proxy-server-ip-address>:<port> --proxy-skip-range <excludedIP>,<excludedCIDR> --location <region>
Observação
Algumas solicitações de rede, como aquelas que envolvem comunicação serviço a serviço no cluster, devem ser separadas do tráfego roteado por meio do servidor proxy para comunicação de saída. O parâmetro
--proxy-skip-range
pode ser usado para especificar o intervalo de CIDR e os pontos de extremidade separados por vírgula, de maneira que qualquer comunicação dos agentes com esses pontos de extremidade não passe pelo proxy de saída. No mínimo, o intervalo CIDR dos serviços do cluster deve ser especificado como um valor para esse parâmetro. Por exemplo, sekubectl get svc -A
retornar uma lista de serviços em que todos os serviços têm valoresClusterIP
no intervalo10.0.0.0/16
, o valor a ser especificado para--proxy-skip-range
será10.0.0.0/16,kubernetes.default.svc,.svc.cluster.local,.svc
.--proxy-http
,--proxy-https
e--proxy-skip-range
são esperados para a maioria dos ambientes de proxy de saída.--proxy-cert
apenas será necessário se você precisar injetar certificados confiáveis esperados pelo proxy no repositório de certificados confiáveis dos pods do agente.O proxy de saída precisa ser configurado para permitir conexões WebSocket.
Configurar os clusters existentes para usar o gateway do Arc
Para atualizar os clusters existentes para que eles usem o gateway do Arc, execute o seguinte comando:
az connectedk8s update -g <resource_group> -n <cluster_name> --gateway-resource-id <gateway_resource_id>
Para verificar se a atualização foi bem-sucedida, execute o seguinte comando e confirme se a resposta é true
:
az connectedk8s show -g <resource_group> -n <cluster_name> --query 'gateway.enabled'
Depois que seus clusters tiverem sido atualizados para usar o gateway do Arc, alguns dos pontos de extremidade do Arc que eram permitidos anteriormente em seu proxy ou firewalls corporativos não serão mais necessários e podem ser removidos. É recomendável aguardar pelo menos uma hora antes de remover os pontos de extremidade que não são mais necessários. Certifique-se de não remover nenhum dos pontos de extremidade necessários para o gateway do Arc.
Remover o gateway do Arc
Para desabilitar o gateway do Arc e remover a associação entre o recurso de gateway do Arc e o cluster habilitado para Arc, execute o seguinte comando:
az connectedk8s update -g <resource_group> -n <cluster_name> --disable-gateway
Monitorar tráfego
Para auditar o tráfego do gateway, exiba os logs do roteador de gateway:
- Execute
kubectl get pods -n azure-arc
- Identifique o pod do Proxy do Arc (seu nome começará com
arc-proxy-
). - Execute
kubectl logs -n azure-arc <Arc Proxy pod name>
Cenários adicionais
Durante a visualização pública, o gateway do Arc aborda os pontos de extremidade necessários para integrar um cluster e uma parte dos pontos de extremidade necessários para os cenários adicionais habilitados para Arc. Com base nos cenários que você adota, pontos de extremidade adicionais ainda serão necessários para serem permitidos em seu proxy.
Todos os pontos de extremidade listados para os seguintes cenários devem ser permitidos no proxy corporativo quando o gateway do Arc estiver em uso:
- Insights do contêiner no Azure Monitor:
*.ods.opinsights.azure.com
*.oms.opinsights.azure.com
*.monitoring.azure.com
- Azure Key Vault:
<vault-name>.vault.azure.net
- Azure Policy:
data.policy.core.windows.net
store.policy.core.windows.net
- Microsoft Defender para Contêineres:
*.ods.opinsights.azure.com
*.oms.opinsights.azure.com
- Serviços de dados habilitados para Azure Arc
*.ods.opinsights.azure.com
*.oms.opinsights.azure.com
*.monitoring.azure.com