Conceitos de rede para implantar nós Serviço de Kubernetes do Azure (AKS) em Azure Stack HCI


Há dois modelos de atribuição de endereço IP para escolher, dependendo do AKS Azure Stack HCI de rede que você escolher usar.

Observação

A arquitetura de rede virtual definida aqui para o AKS Azure Stack HCI implantações pode ser diferente da arquitetura de rede física subjacente em um data center.

  • Rede IP estática – a rede virtual aloca endereços IP estáticos para o servidor de API do cluster kubernetes, nós do Kubernetes, VMs subjacentes, balanceadores de carga e quaisquer serviços kubernetes executados sobre o cluster.

  • Rede DHCP – a rede virtual aloca endereços IP dinâmicos para os nós do Kubernetes, VMs subjacentes e balanceadores de carga usando um servidor DHCP. O servidor de API do cluster do Kubernetes e todos os serviços do Kubernetes executados sobre o cluster ainda são endereços IP estáticos alocados.

Pool de IP virtual

O pool de IP virtual (VIP) é um conjunto de endereços IP obrigatórios para qualquer AKS na Azure Stack HCI implantação. O pool de VIP é um intervalo de endereços IP reservados usados para alocar endereços IP para o servidor de API do cluster do Kubernetes e para serviços do Kubernetes para garantir que seus aplicativos sempre sejam acessíveis. Independentemente do modelo de rede virtual e do modelo de atribuição de endereço escolhido, você deve fornecer um pool de VIP para sua implantação de host do AKS.

O número de endereços IP no pool de VIP depende do número de clusters de carga de trabalho e dos serviços do Kubernetes planejados para sua implantação.

Dependendo do modelo de rede, a definição do pool de VIP será diferente das seguintes maneiras:

  • IP estático – se você estiver usando IP estático, certifique-se de que seus endereços IP virtuais sejam da mesma sub-rede fornecida.
  • DHCP – se sua rede estiver configurada com o DHCP, você precisará trabalhar com o administrador de rede e excluir o intervalo de IP do pool de VIP do escopo DHCP usado para o AKS na implantação Azure Stack HCI.

Pool de IP da VM do nó do Kubernetes

Os nós do Kubernetes são implantados como máquinas virtuais especializadas em um AKS Azure Stack HCI implantação. O AKS Azure Stack HCI aloca endereços IP a essas máquinas virtuais para habilitar a comunicação entre nós do Kubernetes.

  • IP estático – você deve especificar um intervalo de pools de IP da VM do nó do Kubernetes. O número de endereços IP nesse intervalo depende do número total de nós do Kubernetes que você planeja implantar em seus clusters kubernetes de carga de trabalho e host do AKS. Você deve levar em conta que as atualizações consumirão de um a três endereços IP adicionais durante a atualização.
  • DHCP – Você não precisa especificar um pool de VMs de nó do Kubernetes, pois os endereços IP para os nós do Kubernetes são alocados dinamicamente pelo servidor DHCP em sua rede.

Esse modelo de rede cria uma rede virtual que aloca endereços IP de um pool de endereços definido estaticamente para todos os objetos em sua implantação. Um benefício adicionado de usar a rede IP estática é que as implantações de longa duração e as cargas de trabalho de aplicativo têm garantia de que sempre estarão acessíveis.

Especifique os seguintes parâmetros ao definir uma rede virtual com configurações de IP estático:

Importante

Nesta versão do AKS no Azure Stack HCI, não é possível alterar a configuração de rede depois que o host do AKS ou o cluster de carga de trabalho for implantado. A única maneira de alterar as configurações de rede é começar novamente removendo os clusters de carga de trabalho e desinstalando o AKS Azure Stack HCI.

  • Nome: o nome da sua rede virtual.

  • Prefixo de endereço: o prefixo de endereço IP a ser usado para sua sub-rede.

  • Gateway: o endereço IP do gateway padrão para a sub-rede.

  • Servidor DNS: uma matriz de endereços IP apontando para os servidores DNS a serem usados para a sub-rede. Um mínimo de um e um máximo de três servidores podem ser fornecidos.

  • Pool de VMs de nó do Kubernetes: um intervalo contínuo de endereços IP a serem usados para suas VMs de nó do Kubernetes.

  • Pool de IP virtual: um intervalo contínuo de endereços IP a serem usados para o servidor de API do cluster do Kubernetes e os serviços do Kubernetes.

    Observação

    O pool de VIP deve fazer parte da mesma sub-rede que o pool de VMs do nó do Kubernetes.

  • ID da vLAN: a ID da vLAN para a rede virtual. Se omitido, a rede virtual não será marcada.

Rede virtual com rede DHCP

Esse modelo de rede cria uma rede virtual que aloca endereços IP usando DHCP para todos os objetos na implantação.

Você deve especificar os seguintes parâmetros ao definir uma rede virtual com configurações de IP estático:

Importante

Nesta versão do AKS no Azure Stack HCI, não é possível alterar a configuração de rede depois que o host do AKS ou o cluster de carga de trabalho for implantado. A única maneira de alterar as configurações de rede é começar novamente removendo os clusters de carga de trabalho e desinstalando o AKS Azure Stack HCI.

  • Nome: o nome da sua rede virtual.

  • Pool de IP virtual: o intervalo contínuo de endereços IP a serem usados para o servidor de API do cluster do Kubernetes e os serviços do Kubernetes.

    Observação

    Os endereços do pool vip precisam estar na mesma sub-rede que o escopo DHCP e precisam ser excluídos do escopo DHCP para evitar conflitos de endereço.

  • ID da vLAN: a ID da vLAN para a rede virtual. Se omitido, a rede virtual não será marcada.

Serviço de nuvem local da Microsoft

O MOC (Microsoft On-Premises Cloud) é a pilha de gerenciamento que permite que máquinas virtuais no Azure Stack HCI e Windows SDDC baseado em servidor sejam gerenciadas na nuvem. O MOC consiste em:

  • Uma única instância de um serviço altamente cloud agent disponível implantado no cluster. Esse agente é executado em qualquer nó no cluster Azure Stack HCI e está configurado para fazer fail over para outro nó.
  • Um node agent em execução em cada Azure Stack HCI nó físico.

Para habilitar a comunicação com o MOC, você precisa fornecer o CIDR de Endereço IP a ser usado para o serviço. O é um parâmetro no comando usado para atribuir o endereço IP ao serviço de agente de nuvem e habilitar a alta disponibilidade -cloudserviceCIDR do serviço de agente de Set-AksHciConfig nuvem.

A escolha de um endereço IP para o serviço MOC depende do modelo de rede subjacente usado pela implantação Azure Stack HCI cluster.

Observação

A alocação de endereço IP para o serviço MOC é independente do modelo de rede virtual do Kubernetes. A alocação de endereço IP depende da rede física subjacente e dos endereços IP configurados para os nós de cluster Azure Stack HCI no seu data center.

  • Azure Stack HCI nós de cluster com um modo de alocação de endereço IP baseado em DHCP:se os nós do Azure Stack HCI receberem um endereço IP de um servidor DHCP presente na rede física, você não precisará fornecer explicitamente um endereço IP para o serviço MOC, pois o serviço MOC também receberá um endereço IP do servidor DHCP.

  • Azure Stack HCI nósde cluster com um modelo de alocação de IP estático: se os nós de cluster do Azure Stack HCI são atribuídos a endereços IP estáticos, você deve fornecer explicitamente um endereço IP para o serviço de nuvem MOC. O endereço IP para o serviço MOC deve estar na mesma sub-rede que os endereços IP de Azure Stack HCI nós de cluster. Para atribuir explicitamente um endereço IP para o serviço MOC, use -cloudserviceCIDR o parâmetro no comando Set-AksHciConfig . Insira um endereço IP no formato CIDR, por exemplo: "10.11.23.45/16".

Comparar modelos de rede

O DHCP e o IP Estático fornecem conectividade de rede para o AKS na Azure Stack HCI implantação. Há vantagens e desvantagens em cada método. Em um alto nível, as seguintes considerações se aplicam:

DHCP – não garante endereços IP de longa duração para alguns tipos de recursos em um AKS em Azure Stack HCI implantação. – Dá suporte à expansão de endereços IP DHCP reservados se sua implantação for maior do que você previu inicialmente.

IP estático – garante endereços IP de longa duração para todos os recursos em um AKS Azure Stack HCI implantação. - Como não há suporte para a expansão automática do pool de IP do nó do Kubernetes, talvez você não consiga criar novos clusters se tiver esgotado o pool de IP do nó do Kubernetes.

A tabela a seguir compara a alocação de endereços IP para recursos entre modelos de rede IP estático e DHCP:

Funcionalidade IP Estático DHCP
Servidor de API de cluster do Kubernetes Atribuído estaticamente usando o pool de VIP Atribuído estaticamente usando o pool de VIP
Nós do Kubernetes (em máquinas virtuais) Atribuído usando o pool de IP do nó do Kubernetes Atribuído dinamicamente
Serviços de Kubernetes Atribuído estaticamente usando o pool de VIP Atribuído estaticamente usando o pool de VIP
VM do balanceador de carga HAProxy Atribuído usando o pool de IP do nó do Kubernetes Atribuído dinamicamente
Serviço de Nuvem Local da Microsoft Depende da configuração de rede física para Azure Stack HCI de cluster Depende da configuração de rede física para Azure Stack HCI de cluster
Pool de VIP Obrigatório Obrigatório
Pool de IP da VM do nó do Kubernetes Obrigatório Sem suporte

Reservas mínimas de endereço IP para um AKS em Azure Stack HCI implantação

Independentemente do modelo de implantação, o número de endereços IP reservados permanece o mesmo. Esta seção fala sobre o número de endereços IP a reservar com base em seu AKS no Azure Stack HCI de implantação.

Reserva mínima de endereço IP

No mínimo, você deve reservar o seguinte número de endereços IP para sua implantação:

Tipo de cluster Nó do plano de controle Nó de trabalho Para operações de atualização Balanceador de carga
AKS Host 1 IP NA 2 IP NA
Cluster de carga de trabalho 1 IP por nó 1 IP por nó 5 IP 1 IP

Além disso, você deve reservar o seguinte número de endereços IP para seu pool de VIP:

Tipo de recurso Número de endereços IP
Servidor de API de cluster 1 por cluster
Serviços Kubernetes 1 por serviço
Serviços de Aplicativos 1 por serviço planejado

Como você pode ver, o número de endereços IP necessários é variável, dependendo do AKS na arquitetura Azure Stack HCI e do número de serviços executados no cluster do Kubernetes. É recomendável reservar um mínimo de 256 endereços IP (/24 sub-rede) para sua implantação.

Explicando um exemplo de implantação

Jane é uma administradora de IT que está começando com o AKS Azure Stack HCI. Ela deseja implantar dois clusters kubernetes – cluster A do Kubernetes e cluster B do Kubernetes em seu cluster Azure Stack HCI cluster. Ela também deseja executar um aplicativo de votação sobre seu cluster. 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.

  • O cluster do Kubernetes A tem três nós de plano de controle e cinco nós de trabalho
  • O cluster do Kubernetes B tem um nó do plano de controle e três nós de trabalho
  • Três 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 acima, ela terá que reservar:

  • 3 endereços IP para o host do AKS (um IP para o nó do plano de controle e dois IPs para executar operações de atualização)
  • 3 endereços IP para os nós do plano de controle no cluster A (um IP por nó do plano de controle)
  • 5 endereços IP para os nós de trabalho no cluster A (um IP por nó de trabalho)
  • 6 endereços IP além do cluster A (cinco IPs para executar operações de atualização e 1 IP para balanceador de carga)
  • 1 endereços IP para os nós do plano de controle no cluster B (um IP por nó do plano de controle)
  • 3 endereços IP para os nós de trabalho no cluster B (um IP por nó de trabalho)
  • 6 endereços IP além do cluster B (cinco IPs para executar operações de atualização e 1 IP para balanceador de carga)
  • 2 endereços IP para os servidores de API do cluster do Kubernetes (um IP por cluster do Kubernetes)
  • 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)

Conforme explicado acima, Jane requer um total de 32 endereços IP para implantar o cluster. Portanto, Jane deve reservar uma sub-rede /26 para sua rede virtual.

Divisão de endereços IP reservados com base em um modelo de rede IP estático

Embora o número total de endereços IP reservados permaneça o mesmo, o modelo de implantação determina como esses endereços IP são divididos entre grupos de IP. Conforme discutido anteriormente, o modelo de rede IP estático tem dois pools de IP:

  • Pool de IP da VM do nó do Kubernetes – para VMs de nó do Kubernetes e a VM do balanceador de carga. Esse pool de IP também inclui o endereço IP necessário para executar operações de atualização.
  • Pool de IP virtual – para o servidor de API do Kubernetes e os serviços do Kubernetes.

Trabalhando com o exemplo acima, Jane deve dividir ainda mais esses endereços IP entre pools VIP e pools de IP do nó do Kubernetes:

  • 5 (dois para o servidor de API de cluster do Kubernetes e três para serviços do Kubernetes) dos 32 endereços IP para seu pool de VIP.
  • 27 (todos os endereços IP para seus nós do Kubernetes e VMs subjacentes, as VMs do balanceador de carga e as operações de atualização) para seu pool de IP do nó kubernetes.

Dividir endereços IP reservados com base em um modelo de rede DHCP

Embora o número total de endereços IP reservados permaneça o mesmo, o modelo de implantação determina como esses endereços IP são divididos entre grupos de IP. Conforme discutido anteriormente, o modelo de rede DHCP tem um escopo de IP:

  • Pool de IP virtual – para o servidor de API do Kubernetes e os serviços do Kubernetes

Trabalhando com o exemplo acima:

  • Jane deve reservar um total de 32 endereços IP ou uma sub-rede /26 em seu servidor DHCP.
  • Ela deve excluir 5 (dois para o servidor de API de cluster do Kubernetes e três para serviços do Kubernetes) do escopo DHCP de 32 endereços IP para seu pool de VIP.

Controladores de entrada

Durante a implantação de um cluster de destino, um recurso de balanceador de carga HAProxy baseado em é criado. O balanceador de carga é configurado para distribuir o tráfego para os pods em seu serviço em uma determinada porta. O balanceador de carga só funciona na camada 4, o que significa que o Serviço não reconhece os aplicativos reais e não pode fazer considerações adicionais de roteamento.

Os controladores de entrada funcionam na camada 7 e podem usar regras mais inteligentes para distribuir o tráfego do aplicativo. Um uso comum de um controlador de ingresso é rotear o tráfego HTTP para diferentes aplicativos com base na URL de entrada.

Diagram showing Ingress traffic flow in an AKS-HCI cluster

Próximas etapas

Este artigo aborda alguns dos conceitos de rede para implantar nós do AKS em Azure Stack HCI. Para obter mais informações sobre o AKS Azure Stack HCI conceitos, consulte os seguintes artigos: