Olá pessoal, tudo bem?

Foram várias horas de estudos, pesquisa, tirar dúvidas com profissionais que já trabalharam com a tecnologia para trazer este conteúdo para vocês. 

Recentemente estava conversando com um colega profissional sobre um projeto de cluster de failover, estava discutindo sobre as conexões de rede do projeto. Ele foi informou que queria configurar “um tal” de SET. Perguntei a ele o que era o SET, ele me disse que se trava de um switch virtual com agrupamento. Como sou curioso fui pesquisar do que se travava esta tecnologia e encontrei alguns artigos sobre o SET na internet, mas a maioria superficial e nenhum conteúdo em português.

Achei muito interessante esta tecnologia que está presente a partir do Windows Server 2016, 2019, 2020 e no Azure Stack HCI. O SET meio que virou o “patinho feio”, pois o NIC Teaming, fez tanto sucesso que acabo ofuscando o SET e pelo fato que o SET somente e configurado pelo Powershell.

Aviso importante

Quando estava escrevendo este artigo, passo meio que despercebido, mas é possível criar um SET também pelo Windows Admin Center, mas apenas as configurações básicas para host único (host standalone), demais configurações devem ser configuradas pelo Powershell. O Windows Admin Center também permite outras configurações avanças do SET mas apenas na criação de cluster Azure Stack HCI e S2D.

Configuração do SET no Windows Admin Center

 

SET (Switch Embedded Teaming)

Com SET é possível agrupar de um a oito adaptadores de rede ethernet físicos, em um ou mais adaptadores de rede virtuais. Esses adaptadores de rede virtuais baseados em software dão suporte para alto desempenho e permitem opções de failover. Você pode usar em ambientes que incluem Hyper-V e Rede Definida por Software – Software Defined Networking (SDN).

Como o SET está integrado ao Switch Virtual Hyper-V, você não pode usar SET dentro de uma máquina virtual (VM). Você pode, no entanto, usar NIC Teaming dentro de VMs. Para obter mais informações, consulte NIC Teaming em Máquinas Virtuais (VMs) e consulte aqui o artigo do meu amigo MVP Rafael Bernardes. Também existe a documentação oficial sobre o NIC Teaming, que pode ser acessada aqui.

 

A ilustração a seguir descreve a arquitetura SET.

 

Observação: Para colocar os adaptadores de rede membros de SET no mesmo agrupamento, todos devem ser instalados no mesmo host Hyper-V físico.

Embora SET forneça funcionalidade semelhante ao NIC Teaming, existem algumas diferenças, inclusive durante a instalação. A noção de modo reserva não é suportada, pois, em SET, todos os adaptadores são ativos. Também vale notar que, embora existam três modos de NIC Teaming, há apenas um em SET: Switch independente.

Observação: No modo Switch independente, os switches não determinam a distribuição de tráfego de rede. Isso porque o switch ao qual o SET é conectado não sabe da existência do agrupamento. É o agrupamento SET que distribui pelos membros do SET o tráfego de rede recebido.

 

Ao implementar SET, você deve definir o seguinte:

Adaptadores membros: Defina até oito adaptadores de rede idênticos como parte do agrupamento.

Observação: O SET exige que todos os adaptadores de rede membros de uma equipe SET devem ser idênticos (ou seja, mesmo fabricante, mesmo modelo, mesmo firmware e driver).

 

Modo de balanceamento de carga:

Existem dois modos de balanceamento de carga:

  • Hyper-V: Distribui o tráfego entre os adaptadores membros do agrupamento SET, usando o endereço MAC ou a porta utilizada por uma máquina virtual para conectar um switch virtual em um host Hyper-V. 
  • Dinâmico: O tráfego de saída é distribuído com base em um hash das informações de endereçamento no fluxo de pacotes. O tráfego de entrada é distribuído de acordo com o modo porta Hyper-V.

 

Para criar e gerenciar um SET Team, deve-se usar VMM (Virtual Machine Manager) do System Center, mas também é possível usar o PowerShell.

Por exemplo, para criar um agrupamento SET com dois adaptadores de rede, chamados Ethernet e Ethernet 2, use o comando a seguir:

 

O SET é compatível com as seguintes tecnologias de rede:

Datacenter bridging (DCB).

Hyper-V Network Virtualization – NV-GRE and VxLAN.

Receive-side Checksum offloads (IPv4, IPv6, TCP).

Remote Direct Memory Access (RDMA).

SDN Quality of Service (QoS).

Transmit-side Checksum offloads (IPv4, IPv6, TCP)

Virtual Machine Queues (VMQ).

Virtual Receive Side Scaling (RSS).

 

O SET não é compatível com as seguintes tecnologias de rede:

 802.1X authentication.

IPsec Task Offload (IPsecTO).

QoS in host or native OSs.

Receive side coalescing (RSC).

Receive side scaling (RSS).

Single root I/O virtualization (SR-IOV).

TCP Chimney Offload.

Virtual Machine QoS (VM-QoS).

 

Tabela de comparação de tecnologias suportadas entre o SET (Switch Embedded Teaming) e o NIC Teaming (LBFO). NIC Teaming, também conhecido como Load Balancing/Failover (LBFO) em português Balanceamento de carga/failover.

Aviso importante

vSwitch não terá mais a capacidade de ser vinculado a uma equipe LBFO. Em vez disso, deve ser vinculado ao SET.

No Windows Server 2022 não é mais possível vincular vSwitch ao LBFO.

Aviso no Windows Server 2022 informando que LBFO foi preterida para vinculação ao vSwitch.

 

LBFO uma tecnologia de equipe mais antiga que não verá investimentos futuros.

Em resumo, a LBFO é uma tecnologia de equipe mais antiga que não verá investimentos futuros, não é compatível com inúmeras capacidades avançadas, e foi superada tanto no desempenho quanto na estabilidade por nossa nova tecnologia (SET).

A LBFO continua sendo nossa solução de equipe (teaming solution) se você estiver executando suas cargas de trabalho em servidores bare metal. Se, no entanto, você está executando cenários virtualizados ou em nuvem como o Azure Stack HCI, você deve dar consideração séria ao Switch Embedded Teaming. O SET tem sido a solução de equipe recomendada pela Microsoft e o foco desde o Windows Server 2016, pois traz melhor desempenho, estabilidade e suporte a recursos em comparação com o LBFO.

 

Mais informações: https://aka.ms/LBFODeprecation

SET and Virtual Machine Queues (VMQs)

VMQ e SET funcionam bem juntos; O VMQ deve ser ativado sempre que estiver usando Hyper-V e SET.

A maioria dos adaptadores de rede tem filas que podem ser usadas tanto para receber dimensionamento lateral (RSS) ou VMQ, mas não ambos ao mesmo tempo.

Algumas configurações de VMQ parecem ser configurações para filas RSS, mas são realmente configurações nas filas genéricas que tanto o RSS quanto o VMQ usam, dependendo de qual recurso está atualmente em uso. Cada NIC tem, em suas propriedades avançadas, valores para *RssBaseProcNumber e *MaxRssProcessors. A seguir, algumas configurações de VMQ que proporcionam melhor desempenho do sistema.

 

Idealmente, cada NIC deve ter o *RssBaseProcNumber definido para um número ainda maior ou igual a dois (2). Isso porque o primeiro processador físico, Core 0 (processadores lógicos 0 e 1), normalmente faz a maior parte do processamento do sistema para que o processamento da rede seja direcionado para longe deste processador físico. (Algumas arquiteturas de máquina não têm dois processadores lógicos por processador físico, então para tais máquinas o processador base deve ser maior ou igual a 1. Em caso de dúvida, presuma que seu host esteja usando um processador lógico de 2 por arquitetura física do processador.)

Os processadores dos membros da equipe devem ser, na medida da prática, não sobrepostos. Por exemplo, em um host de 4 núcleos (8 processadores lógicos) com uma equipe de 2 NICs de 10Gbps, você poderia definir o primeiro para usar processador base de 2 e usar 4 núcleos; o segundo seria definido para usar processador base 6 e usar 2 núcleos.

 

Virtualização de rede SET e Hyper-V (HNV) (SET and Hyper-V Network Virtualization (HNV))

O SET é totalmente compatível com a virtualização da rede Hyper-V no Windows Server 2016, 2019 e 2022, o Azure Stack HCI também O sistema de gerenciamento HNV fornece informações ao driver SET que permite que o SET distribua a carga de tráfego da rede de forma otimizada para o tráfego HNV.

 

SET e Migração ao vivo (SET and Live Migration)

 Migração ao vivo (Live Migration) é suportado no Windows Server 2016, 2019 e 2022, o Azure Stack HCI também.

 

Uso de endereço MAC em pacotes transmitidos

Quando você configura uma equipe SET com distribuição dinâmica de carga, os pacotes de uma única fonte (como um único VM) são distribuídos simultaneamente entre vários membros da equipe. Para evitar que os switches fiquem confusos e para evitar que os alarmes MAC sejam colocados, o SET substitui o endereço MAC de origem por um endereço MAC diferente nos quadros que são transmitidos em membros da equipe que não sejam o membro da mesma equipe. Por causa disso, cada membro da equipe usa um endereço MAC diferente, e os conflitos de endereço MAC são evitados a menos e até que ocorra uma falha.

Quando uma falha for detectada no NIC primário, o software de equipe SET começa a usar o endereço MAC do VM no membro da equipe que é escolhido para servir como membro temporário da equipe (ou seja, aquele que agora aparecerá para o switch como interface do VM). Essa alteração só se aplica ao tráfego que seria enviado no membro da mesma equipe da VM com o próprio endereço MAC da VM como seu endereço MAC de origem. Outros tráfegos continuam a ser enviados com qualquer endereço MAC de origem que teria usado antes da falha.

A seguir estão listas que descrevem o comportamento de substituição de endereço MAC de equipe SET, com base na forma como a equipe está configurada:

 

No modo Switch Independent com distribuição de porta Hyper-V:

  •  Cada porta vmSwitch é afiliada para um membro da equipe.
  • Cada pacote é enviado no membro da equipe para o qual a porta é afiliada.
  • Nenhuma substituição MAC de origem é feita.

 

No modo Switch Independent com distribuição Dinâmica: 

  • Cada porta vmSwitch é afiliada para um membro da equipe.
  • Todos os pacotes ARP/NS são enviados no membro da equipe para o qual a porta é afiliada.
  • Pacotes enviados no membro da equipe que é o membro da equipe afiliada não têm nenhuma substituição de endereço MAC fonte feita.
  • Pacotes enviados em um membro da equipe que não o membro da equipe afiliada terá a substituição do endereço MAC fonte feita.

 

GitHub

 

 

 

 

Como informando anteriormente a implementação do SET também pode ser feita pelo Powershell, baixe aqui script com todos os comandos para gerenciar e implantar o SET pelo Powershell.

 

Vídeo

 

 

 

 

No vídeo será demostrado de forma clara e objetiva a criação do SET pelo Powershell e todos os demais comandos relativos a ele, criação do SET pelo Windows Admin Center. Vamos demostrar também a utilização do SET em um cenário de cluster de failover. Serão utilizadas duas máquinas virtuais que será implantado o SET, com quatro adaptadores de rede. Serão criadas três redes, Gerenciamento e Cluster, Migração ao vivo e Tráfego de VM, igual exatamente demostrado na imagem baixo, simulando um cenário real.

 

 

Observação: O uso do SET em máquinas virtuais não é suportado, usá-lo apenas para fins de teste e laboratório. Se caso for utilizar máquinas virtuais, no Hyper-V para seu laboratório, será necessário habilitar a falsificação de endereço MAC, o comando abaixo habilita em uma máquina virtual com o nome HY1-SET. Se você adicionar um adaptador de rede após executar o comando demostrado abaixo, terá que executar novamente o comando para ativar nos adaptadores de rede novo inseridos na máquina virtual.

 

Configuração de uma máquina virtual no Hyper-V

 

Referências

 

 

 

 

 

https://docs.microsoft.com/en-us/previous-versions/windows/server/mt403349(v=ws.12)?WT.mc_id=WDIT-MVP-5003815

https://docs.microsoft.com/en-us/powershell/module/netadapter/get-netadapter?view=windowsserver2022-ps&WT.mc_id=WDIT-MVP-5003815

https://docs.microsoft.com/en-us/powershell/module/hyper-v/new-vmswitch?view=windowsserver2022-ps&WT.mc_id=WDIT-MVP-5003815

https://docs.microsoft.com/en-us/powershell/module/hyper-v/get-vmswitch?view=windowsserver2022-ps&WT.mc_id=WDIT-MVP-5003815

https://docs.microsoft.com/en-us/powershell/module/hyper-v/get-vmswitchteam?view=windowsserver2022-ps&WT.mc_id=WDIT-MVP-5003815

https://docs.microsoft.com/en-us/powershell/module/hyper-v/set-vmswitchteam?view=windowsserver2022-ps&WT.mc_id=WDIT-MVP-5003815

https://docs.microsoft.com/en-us/powershell/module/hyper-v/get-vmnetworkadapter?view=windowsserver2022-ps&WT.mc_id=WDIT-MVP-5003815

https://docs.microsoft.com/en-us/powershell/module/hyper-v/rename-vmnetworkadapter?view=windowsserver2022-ps&WT.mc_id=WDIT-MVP-5003815

https://docs.microsoft.com/en-us/powershell/module/hyper-v/add-vmnetworkadapter?view=windowsserver2022-ps&WT.mc_id=WDIT-MVP-5003815

https://docs.microsoft.com/en-us/powershell/module/hyper-v/set-vmnetworkadapter?view=windowsserver2022-ps&WT.mc_id=WDIT-MVP-5003815

https://docs.microsoft.com/en-us/powershell/module/hyper-v/set-vmnetworkadaptervlan?view=windowsserver2022-ps&WT.mc_id=WDIT-MVP-5003815

https://docs.microsoft.com/en-us/powershell/module/hyper-v/get-vmnetworkadaptervlan?view=windowsserver2022-ps&WT.mc_id=WDIT-MVP-5003815

https://docs.microsoft.com/en-us/powershell/module/hyper-v/set-vmnetworkadapterteammapping?view=windowsserver2022-ps&WT.mc_id=WDIT-MVP-5003815

https://docs.microsoft.com/en-us/powershell/module/nettcpip/new-netipaddress?view=windowsserver2022-ps&WT.mc_id=WDIT-MVP-5003815

https://docs.microsoft.com/en-us/powershell/module/dnsclient/set-dnsclientserveraddress?view=windowsserver2022-ps&WT.mc_id=WDIT-MVP-5003815

https://docs.microsoft.com/en-us/powershell/module/netadapter/disable-netadapterbinding?view=windowsserver2022-ps&WT.mc_id=WDIT-MVP-5003815

https://docs.microsoft.com/en-us/powershell/module/hyper-v/remove-vmswitch?view=windowsserver2022-ps&WT.mc_id=WDIT-MVP-5003815

 

Inscreva-se no meu canal do YouTube ative o sininho para receber as notificações!

5 Responses

  1. Tengo una duda, que pasa cuando yo tengo en una tarjeta de fibra Optica de 10gb, una troncal con multiples vlans, y quiero crear un switch virtual para cada vlan utilizando la misma tarjeta, en windows server 2019 para atras era muy sencillo hacerlo, pero ahora en windows server 2022 no encuentro como hacerlo. te agradeceria mucho por tu guia . bendiciones

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Microsoft MVP
Siga e curta!
Follow by Email
YouTube
YouTube
Set Youtube Channel ID
LinkedIn
LinkedIn
Share
Entre no meu grupo do Telegram
Categorias
Arquivo
Inteligência artificial em seu servidor.