AKS habilitado pelos requisitos de rede do Azure Arc

Aplica-se a: Azure Stack HCI, versão 23H2

Este artigo apresenta os principais conceitos de rede para suas VMs e aplicativos no AKS habilitados pelo Azure Arc. O artigo também descreve os pré-requisitos de rede necessários para criar clusters do Kubernetes. Recomendamos que você trabalhe com um administrador de rede para fornecer e configurar os parâmetros de rede necessários para implantar o AKS habilitado pelo Arc.

Neste artigo conceitual, os componentes principais a seguir são introduzidos. Esses componentes precisam de um endereço IP estático para que o cluster e os aplicativos do AKS Arc criem e operem com êxito:

  • AKS cluster VMs
  • IP do painel de controle do AKS
  • Balanceador de carga para aplicativos conteinerizados

Rede para VMs de cluster do AKS

Os nós do Kubernetes são implantados como máquinas virtuais especializadas no AKS habilitadas pelo Arc. Essas VMs são endereços IP alocados para habilitar a comunicação entre nós do Kubernetes. O AKS Arc usa redes lógicas do Azure Stack HCI para fornecer endereços IP e rede para as VMs subjacentes dos clusters do Kubernetes. Para obter mais informações sobre redes lógicas, consulte Redes lógicas para o Azure Stack HCI. Você deve planejar reservar um endereço IP por VM de nó de cluster do AKS em seu ambiente do Azure Stack HCI.

Observação

O IP estático é o único modo com suporte para atribuir um endereço IP a VMs do AKS Arc. Isso ocorre porque o Kubernetes requer que o endereço IP atribuído a um nó do Kubernetes seja constante durante todo o ciclo de vida do cluster do Kubernetes.

Os seguintes parâmetros são necessários para usar uma rede lógica para a operação de criação de cluster do AKS Arc:

Parâmetro de rede lógica Descrição Parâmetro necessário para o cluster do AKS Arc
--address-prefixes AddressPrefix para a rede. Atualmente, há suporte para apenas um prefixo de endereço. Uso: --address-prefixes "10.220.32.16/24". Com suporte
--dns-servers Lista separada por espaço de endereços IP do servidor DNS. Uso: --dns-servers 10.220.32.16 10.220.32.17. Com suporte
--gateway Gateway. O endereço IP do gateway deve estar dentro do escopo do prefixo de endereço. Uso: --gateway 10.220.32.16. Com suporte
--ip-allocation-method O método de alocação de endereço IP. Os valores com suporte são "Estáticos". Uso: --ip-allocation-method "Static". Com suporte
--ip-pool-start O endereço IP inicial do pool de IP. O endereço deve estar no intervalo do prefixo de endereço. Uso: --ip-pool-start "10.220.32.18". Com suporte
--ip-pool-end O endereço IP final do pool de IP. O endereço deve estar no intervalo do prefixo de endereço. Uso: --ip-pool-end "10.220.32.38". Com suporte
--vm-switch-name O nome da opção de VM. Uso: --vm-switch-name "vm-switch-01". Com suporte

IP do painel de controle

O Kubernetes usa um plano de controle para garantir que todos os componentes do cluster do Kubernetes sejam mantidos no estado desejado. O plano de controle também gerencia e mantém os nós de trabalho que mantêm os aplicativos em contêineres. O AKS habilitado pelo Arc implanta o balanceador de carga kubeVIP para garantir que o endereço IP do servidor de API do painel de controle do Kubernetes esteja disponível o tempo todo. Essa instância do KubeVIP requer um único "endereço IP do painel de controle" imutável para funcionar corretamente.

Observação

O IP do painel de controle é um parâmetro necessário para criar um cluster do Kubernetes. Você deve garantir que o endereço IP do painel de controle de um cluster do Kubernetes não se sobreponha a mais nada, incluindo redes lógicas de VM arc, IPs de rede de infraestrutura, balanceadores de carga etc. O IP do plano de controle também deve estar dentro do escopo do prefixo de endereço da rede lógica, mas fora do pool de IP. Isso ocorre porque o pool de IP é usado apenas para VMs e, se você escolher um endereço IP no pool de IP para o painel de controle, um conflito de endereço IP poderá resultar. A sobreposição de endereços IP pode levar a falhas inesperadas para o cluster do AKS e para qualquer outro local em que o endereço IP esteja sendo usado. Você deve planejar reservar um endereço IP por cluster do Kubernetes em seu ambiente.

IPs do balanceador de carga para aplicativos em contêineres

A main finalidade de um balanceador de carga é distribuir o tráfego entre vários nós em um cluster do Kubernetes. Esse balanceamento de carga pode ajudar a evitar o tempo de inatividade e melhorar o desempenho geral dos aplicativos. O AKS dá suporte às seguintes opções para implantar um balanceador de carga para o cluster do Kubernetes:

Se você escolher a extensão MetalLB Arc ou trazer seu próprio balanceador de carga, deverá fornecer um conjunto de endereços IP para o serviço de balanceador de carga. Você tem as seguintes opções:

  • Forneça endereços IP para seus serviços da mesma sub-rede que as VMs do AKS Arc.
  • Use uma rede diferente e uma lista de endereços IP se o aplicativo precisar de balanceamento de carga externo.

Independentemente da opção escolhida, você deve garantir que os endereços IP alocados para o balanceador de carga não entrem em conflito com os endereços IP na rede lógica ou nos IPs do painel de controle para os clusters do Kubernetes. Endereços IP conflitantes podem levar a falhas imprevistas em sua implantação e aplicativos do AKS.

Planejamento de endereço IP simples para clusters e aplicativos do Kubernetes

No passo a passo do cenário a seguir, você reserva endereços IP de uma única rede para seus clusters e serviços do Kubernetes. Esse é o cenário mais simples e simples para atribuição de endereço IP.

Requisito de endereço IP Número mínimo de endereços IP Como e onde fazer essa reserva
AKS Arc VM IPs Reserve um endereço IP para cada nó de trabalho no cluster do Kubernetes. Por exemplo, se você quiser criar três pools de nós com três nós em cada pool de nós, precisará ter 9 endereços IP no pool de IP. Reserve endereços IP para VMs do AKS Arc por meio de pools de IP na rede lógica da VM arc.
IPs de atualização de versão do AKS Arc K8s Como o AKS Arc executa atualizações sem interrupção, reserve um endereço IP para cada cluster do AKS Arc para operações de atualização de versão do Kubernetes. Reserve endereços IP para a operação de atualização de versão K8s por meio de pools de IP na rede lógica da VM do Arc.
IP do painel de controle Reserve um endereço IP para cada cluster do Kubernetes em seu ambiente. Por exemplo, se você quiser criar cinco clusters no total, reserve 5 endereços IP, um para cada cluster do Kubernetes. Reserve endereços IP para IPs do painel de controle na mesma sub-rede que a rede lógica da VM arc, mas fora do pool de IP especificado.
IPs do balanceador de carga O número de endereços IP reservados depende do modelo de implantação do aplicativo. Como ponto de partida, você pode reservar um endereço IP para cada serviço do Kubernetes. Reserve endereços IP para IPs do painel de controle na mesma sub-rede que a rede lógica da VM arc, mas fora do pool de IP especificado.

Exemplo de passo a passo para reserva de endereço IP para clusters e aplicativos do Kubernetes

Jane é uma administradora de TI que está começando com o AKS habilitado pelo Azure Arc. Ela deseja implantar dois clusters do Kubernetes: cluster do Kubernetes A e cluster B do Kubernetes em seu cluster do Azure Stack HCI. Ela também quer executar um aplicativo de votação em cima do cluster A. Esse aplicativo tem três instâncias da interface do usuário de front-end em execução entre os dois clusters e uma instância do banco de dados de back-end. Todos os seus clusters e serviços do AKS estão em execução em uma única rede, com uma única sub-rede.

  • O cluster do Kubernetes A tem três nós do painel de controle e 5 nós de trabalho.
  • O cluster do Kubernetes B tem um nó do painel de controle e três nós de trabalho.
  • 3 instâncias da interface do usuário de front-end (porta 443).
  • 1 instância do banco de dados de back-end (porta 80).

Com base na tabela anterior, ela deve reservar um total de 19 endereços IP em sua sub-rede:

  • 8 endereços IP para as VMs de nó do AKS Arc no cluster A (um IP por VM de nó K8s).
  • 4 endereços IP para as VMs de nó do AKS Arc no cluster B (um IP por VM de nó K8s).
  • 2 endereços IP para executar a operação de atualização do AKS Arc (um endereço IP por cluster do AKS Arc).
  • 2 endereços IP para o painel de controle do AKS Arc (um endereço IP por cluster do AKS Arc)
  • Três endereços IP para o serviço kubernetes (um endereço IP por instância da interface do usuário de front-end, pois todos eles usam a mesma porta. O banco de dados de back-end pode usar qualquer um dos três endereços IP, desde que ele use uma porta diferente).

Continuando com este exemplo e adicionando-o à tabela a seguir, você obtém:

Parâmetro Número de endereços IP Como e onde fazer essa reserva
Atualização de versão de VMs do AKS Arc e K8s Reservar 14 endereços IP Faça essa reserva por meio de pools de IP na rede lógica do Azure Stack HCI.
IP do painel de controle Reservar dois endereços IP, um para o cluster do AKS Arc Use o controlPlaneIP parâmetro para passar o endereço IP para IP do painel de controle. Verifique se esse IP está na mesma sub-rede que a rede lógica do Arc, mas fora do pool de IP definido na rede lógica do Arc.
IPs do balanceador de carga 3 Endereço IP para serviços do Kubernetes, para o aplicativo de votação de Jane. Esses endereços IP são usados quando você instala um balanceador de carga no cluster A. Você pode usar a extensão MetalLB Arc ou trazer seu próprio balanceador de carga de terceiros. Verifique se esse IP está na mesma sub-rede que a rede lógica do Arc, mas fora do pool de IP definido na rede lógica da VM do Arc.

Configurações de proxy

As configurações de proxy no AKS são herdadas do sistema de infraestrutura subjacente. A funcionalidade para definir configurações de proxy individuais para clusters do Kubernetes e alterar as configurações de proxy ainda não tem suporte.

Requisitos de porta de rede & entre VLAN

Ao implantar o Azure Stack HCI, você aloca um bloco contíguo de pelo menos seis endereços IP estáticos na sub-rede da rede de gerenciamento, omitindo endereços já usados pelos servidores físicos. Esses IPs são usados pelo Azure Stack HCI e pela infraestrutura interna (Arc Resource Bridge) para o gerenciamento de VM do Arc e o AKS Arc. Se a rede de gerenciamento que fornece endereços IP para os serviços do Azure Stack HCI relacionados ao Arc Resource Bridge estiver em uma VLAN diferente da rede lógica usada para criar clusters do AKS, você precisará garantir que as portas a seguir sejam abertas para criar e operar com êxito um cluster do AKS.

Porta de destino Destino Fonte Descrição Notas de rede entre VLAN
22 Rede lógica usada para VMs do AKS Arc Endereços IP na rede de gerenciamento Necessário para coletar logs para solução de problemas. Se você usar VLANs separadas, os endereços IP na rede de gerenciamento usada para o Azure Stack HCI e a Ponte de Recursos do Arc precisarão acessar as VMs de cluster do AKS Arc nessa porta.
6443 Rede lógica usada para VMs do AKS Arc Endereços IP na rede de gerenciamento Necessário para se comunicar com as APIs do Kubernetes. Se você usar VLANs separadas, os endereços IP na rede de gerenciamento usada para o Azure Stack HCI e a Ponte de Recursos do Arc precisarão acessar as VMs de cluster do AKS Arc nessa porta.
55000 Endereços IP na rede de gerenciamento Rede lógica usada para VMs do AKS Arc Servidor gRPC do Agente de Nuvem Se você usar VLANs separadas, as VMs do AKS Arc precisarão acessar os endereços IP na rede de gerenciamento usada para IP do agente de nuvem e IP do cluster nessa porta.
65000 Endereços IP na rede de gerenciamento Rede lógica usada para VMs do AKS Arc Autenticação gRPC do Agente de Nuvem Se você usar VLANs separadas, as VMs do AKS Arc precisarão acessar os endereços IP na rede de gerenciamento usada para IP do agente de nuvem e IP do cluster nessa porta.

Exceções de URL do firewall

Para obter informações sobre a lista de permitidos de URL de proxy/firewall do Azure Arc, consulte os requisitos de rede da ponte de recursos do Azure Arc e os requisitos de rede do Azure Stack HCI 23H2.

Para implantação e operação de clusters do Kubernetes, as URLs a seguir devem ser acessíveis de todos os nós físicos e VMs do AKS Arc na implantação. Verifique se essas URLS são permitidas na configuração do firewall:

URL Porta Serviço Observações
https://mcr.microsoft.com 443 Registro de contêiner da Microsoft Usado para artefatos oficiais da Microsoft, como imagens de contêiner.
https://*.his.arc.azure.com 443 Serviço de identidade do Azure Arc Usado para controle de identidade e acesso.
https://*.dp.kubernetesconfiguration.azure.com 443 Kubernetes Usado para a configuração do Azure Arc.
https://*.servicebus.windows.net 443 Conexão de cluster Usado para se conectar com segurança a clusters do Kubernetes habilitados para Azure Arc sem exigir que nenhuma porta de entrada seja habilitada no firewall.
https://guestnotificationservice.azure.com 443 Serviço de notificação Usado para operações de notificação de convidado.
https://*.dp.prod.appliances.azure.com 443 Serviço de plano de dados Usado para operações de plano de dados para ponte de recursos (dispositivo).
*.data.mcr.microsoft.com
azurearcfork8s.azurecr.io
linuxgeneva-microsoft.azurecr.io
pipelineagent.azurecr.io
ecpacr.azurecr.io
443 Baixar agente Usado para baixar imagens e agentes.
*.prod.microsoftmetrics.com
*.prod.hot.ingestion.msftcloudes.com
dc.services.visualstudio.com
*.prod.warm.ingest.monitor.core.windows.net
gcs.prod.monitoring.core.windows.net
443 Métricas e monitoramento de integridade Usado para métricas e monitoramento de tráfego de telemetria.
*.blob.core.windows.net
*.dl.delivery.mp.microsoft.com
*.do.dsp.mp.microsoft.com
443 TCP Usado para baixar imagens de ponte de recursos (dispositivo).
https://azurearcfork8sdev.azurecr.io 443 Kubernetes Usado para baixar imagens de contêiner do Azure Arc para Kubernetes.
https://adhs.events.data.microsoft.com 443 Telemetria O ADHS é um serviço de telemetria em execução dentro do sistema operacional dispositivo/mariner. Usado periodicamente para enviar dados de diagnóstico necessários para a Microsoft a partir de nós do painel de controle. Usado quando a telemetria está saindo do Mariner, o que significa qualquer plano de controle do Kubernetes.
https://v20.events.data.microsoft.com 443 Telemetria Usado periodicamente para enviar dados de diagnóstico necessários para a Microsoft do host do Windows Server.
gcr.io 443 Registro de contêiner do Google Usado para artefatos oficiais do Kubernetes, como imagens base de contêiner.
pypi.org 443 Pacote do Python Validar versões do Kubernetes e do Python.
*.pypi.org 443 Pacote do Python Validar versões do Kubernetes e do Python.
https://hybridaks.azurecr.io 443 Imagem de contêiner Necessário para acessar a imagem do operador HybridAKS.
aka.ms 443 az extensions Necessário para baixar extensões da CLI do Azure, como aksarc e connectedk8s.
*.login.microsoft.com 443 Azure Necessário para buscar e atualizar tokens do Azure Resource Manager.
sts.windows.net 443 Azure Arc Para Conexão de Cluster e cenário baseado em local personalizado.
hybridaksstorage.z13.web.core.windows.net 443 Azure Stack HCI Site estático do AKSHCI hospedado no Armazenamento do Azure.
raw.githubusercontent.com 443 GitHub Usado para o GitHub.
www.microsoft.com 80 Site oficial da Microsoft. Site oficial da Microsoft.
*.prod.do.dsp.mp.microsoft.com 443 Microsoft Update Download de imagem da ponte de recursos (dispositivo).
files.pythonhosted.org 443 Pacote do Python Pacote do Python.

Próximas etapas

Create redes lógicas para clusters do Kubernetes no Azure Stack HCI 23H2