Agrupamento de NICs com Broadcom no HyperV 2008 R2

7

Eu tenho um cluster HyperV composto por três hosts. Cada host está conectado a ambos os meus comutadores Nexus 5548 em execução em um canal ether. LACP no switch e no agrupamento de NICs usando o Broadcom 802.3ad no lado do servidor. Isso me dá 2GB de largura de banda e também fornece tolerância a falhas.

O problema que estou tendo ocorre quando realizo uma migração ao vivo. Antes da migração ao vivo, ambos os switches Nexus mostram o MAC da VM na tabela ARP. Após a migração, um switch mostra o MAC da VM e o outro mostra o MAC do host HyperV para o qual ele foi movido.

Executei uma captura de pacotes e vi o host HyperV enviar um ARP gratuito com o IP da VM e o MAC do host ao invés do MAC da VM. Perco a conectividade da camada 3 quando isso acontece. Eu tenho que limpar manualmente a entrada ARP do switch ou esperar cerca de 7 minutos para que ela se corrija.

Eu fiz algumas pesquisas e as pessoas estão tendo problemas semelhantes ao lidar com o agrupamento de NICs usando o Broadcom. Alguém viu isso? Algum conselho?

-------- Editar adicionado abaixo

Estou tendo apenas esse problema ao fazer um agrupamento usando o Link Aggregation 802.3ad. As opções de formação de equipes da Broadcom são ...

  • Agregação de links (802.3ad)
  • Smart Load Balancing (TM) e Failover
  • SLB (Desativar reserva automática)
  • Trunking Genérico (FEC / GEC) / 802.3ad-Draft Static

Eu mudei para o Smart Load Balancing e o VM Live Migrates sem perder conectividade de rede. No entanto, as tabelas ARP nos comutadores Nexus estão sincronizadas, mas mostram o endereço MAC do host e não a VM. Isso é o oposto do que eu pensei que faria. As tabelas ARP dos comutadores não devem mostrar o MAC da VM? Se não e eles devem mostrar o MAC do host, por quê?

    
por Ruisu 03.04.2012 / 22:16

2 respostas

3

Ok. Após 3 semanas de intensa batalha, finalmente consegui descobrir tudo.

Eu abri um caso com o suporte da Broadcom e depois de voltar e voltar por alguns dias, aqui está a resposta que recebi de um desenvolvedor de software da Broadcom.

Seeing a (vm_ipv4, host_mac_addr) or (vm_ipv6, host_mac_addr) pair on a remote station or switch is okay for many networks. Basp will handle the muxing of the addresses and make sure the vm's get the correct packets.

However, a few network configurations require the ip address to map to the vm_mac_addr. If you want to use the vm_mac_addr instead of the host_mac_addr, you need to add the HyperVMode registry key listed below.

If it is desired not to mux the vm's mac address, that is to not replace it with a mac address of a nic, you need to set the following registry entry on the host the vm is running on and reboot the system for it to take effect. Setting this registry entry results in a less efficient operation by basp, but is necessary in certain setups, such as when there is a dhcp server that requires the vm's mac address be used in order to assign an ip address. By setting this registry entry, you should also see the actual vm's mac address in the arp table of all the remote stations the vm is connected to.

This registy entry can be added after a team has been created, but before the hyper-v virtual adapter using the team has been created. A value of 1 will configures basp to use a vm's mac address instead of the mac address of a nic in a slb team when load balancing flows. A value of 0, or not present, configures basp to mux/demux the vm's mac address with a mac address of one of the nics in the team.

Set the "1" in the registry path to the correct team number that this mode is to be applied to and reboot the system. Note that this registry entry will be deleted when the team is deleted, and must be recreated each time the team is created. Future versions of BACS will have a check-box that will set this registry entry and prevent the need for adding it when a team is created and having to reboot the system. This registry entry is only available on >=basp6-1.5.1.

Windows Registry Editor Versão 5.00

[HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \      Blfp \ Parameters \ 1]      "HyperVMode" = dword: 00000001

PS. Besides this registry entry being only available on >=basp6-1.5.1, it is only applicable to slb team types, and does not apply to lacp or gec teams.

Então, com isso dito, tentei. Primeiro, eu apliquei criado a chave do registro. Em seguida, alterei o modo de comutação virtual para rede de máquina virtual privada. Eu dei ao servidor uma reinicialização rápida. Finalmente, quando o servidor voltou a ficar online, configurei o Virtual Switch de volta para o modo externo e escolhi o adaptador virtual do BASP. Eu testei Live Migrations e tudo funcionou perfeitamente e as tabelas ARP no Nexus mostraram o VM_IP e o VM-MAC. YEY !!!!

    
por 12.04.2012 / 21:31
2

Aqui está a configuração no SCVMM. Eu estava tendo problemas como você até que eu liguei o modo Tronco para o host. Se você clicar com o botão direito no host no SCVMM - > Propriedades - > Guia de rede

    
por 04.04.2012 / 13:58