Não é possível conectar-se à Internet dentro da VM XenServer

1

Recentemente, tenho tentado aprender como usar o XenServer para outro projeto meu, por meio do qual eu preciso ser capaz de iniciar e destruir programaticamente máquinas virtuais a partir da linha de comando.

Como este é principalmente um projeto pessoal, não consegui comprar nenhum hardware real e, por isso, atualmente estou executando o XenServer dentro do Oracle VirtualBox em modo de ponte, sem o HVM, e por isso só posso iniciar o 32 bits VMs Linux (eu acho).

Atualmente, executo os seguintes comandos que são executados com êxito ao iniciar uma máquina virtual e colocá-la em estado de execução:

xe vm-install template=<the_ubuntu_precise_template_32bit> new-name-label=UbuntuVM sr-uuid=<local_storage_uuid>

xe network-list bridge=xenbr0 --minimal

xe vif-create vm-uuid=<vm_uuid> network-uuid=<network_uuid (previous command output)> mac=random device=0

xe vm-param-set uuid=<vm_uuid> other-config:install-repository=http://archive.ubuntu.com/ubuntu/dists/precise-updates/

xe vm-start uuid=<vm_uuid>

Uma vez que eu corro estes comandos, há uma breve pausa enquanto eu suponho que o instalador da rede é baixado e então a VM entra no modo de execução. (como é exibido quando eu corro xe vm-list )

Então, se eu executar xe console uuid=<vm_uuid> , eu entro no instalador do ubuntu, mas sempre que o instalador falha.

Na configuração, tudo parece estar funcionando bem, o IPv6 está configurado corretamente e eu verifiquei duas vezes no meu roteador, descobrindo que a VM está registrada corretamente como um dispositivo conectado. Em seguida, ele me pede para escolher um espelho, mas após a seleção de um espelho, o instalador começa a baixar os arquivos de lançamento e começa uma barra de progresso que dispara de 0% a 100% ao longo de alguns minutos, retornando o erro. mensagem: BAD MIRROR . Eu tentei espelhos diferentes, no entanto, descobri que nenhum funcionou e jogou o mesmo erro.

Por fim, entrei no shell incluído no instalador e executei os seguintes comandos para testar se minha conexão com a internet funcionava:

ping 127.0.0.1 = 127.0.0.1 is alive!

ping 192.168.0.31 (o host XenServer) = 192.168.0.31 is alive!

ping 192.168.0.1 (meu roteador) não retorna nada no entanto.

ping 8.8.8.8 também não retorna nada.

A partir disso, parece que a VM não tem acesso à Internet e, portanto, acredito que possa haver algum problema com a rede que eu atribuí à VM?

No host XenServer, executei ifconfig e recebi as seguintes informações:

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        ether 08:00:27:6f:51:a0  txqueuelen 1000  (Ethernet)
        RX packets 246  bytes 47076 (45.9 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 93  bytes 10473 (10.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        loop  txqueuelen 0  (Local Loopback)
        RX packets 16  bytes 4602 (4.4 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 16  bytes 4602 (4.4 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

xenbr0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.0.31  netmask 255.255.255.0  broadcast 192.168.0.255
        ether 08:00:27:6f:51:a0  txqueuelen 0  (Ethernet)
        RX packets 274  bytes 48924 (47.7 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 121  bytes 13909 (13.5 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Por uma boa medida, também executei netstat -rn no host XenServer e recebi a seguinte saída:

Tabela de roteamento de IP do kernel

Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         192.168.0.1     0.0.0.0         UG        0 0          0 xenbr0
192.168.0.0     0.0.0.0         255.255.255.0   U         0 0          0 xenbr0

Qualquer ajuda seria muito apreciada,

Felicidades, Oli

    
por Oli Callaghan 22.08.2016 / 17:38

1 resposta

1

Ok, acontece que depois de um muito grande faff, você não pode executar o XenServer no VirtualBox usando um adaptador em ponte e, ao mesmo tempo, fornecer acesso às VMs. Portanto, como uma solução rápida para isso, eu recorri ao uso de NAT e encaminhamento de porta SSH para o meu host (meu MacBook) para que eu fosse capaz de se conectar. Eu não estou totalmente certo como a razão pela qual eu não fui capaz de rodar o XenServer no Modo Bridged, mas eu acho que tem algo a ver com o xenbr0 não sendo configurado corretamente e francamente para uma máquina de teste ver se eu sou capaz para lançar uma VM, não posso ser incomodado para reconfigurá-la e não tenho certeza se é possível fazê-lo.

Portanto, como uma solução rápida para todos os seus VirtualBoxers, execute o XenServer no NAT , pois não funciona no modo de adaptador em ponte .

Espero que isso ajude alguém com dor de cabeça,

Oli.

    
por 24.08.2016 / 15:27