Como configuro os snapshots do VirtualBox executando processos do servidor para restaurar corretamente?

1

Estou executando o VirtualBox 5.0.20 em um host do OS X. Há uma variedade de sistemas convidados, incluindo Ubuntu, CentOS, Windows e OS X.

Para cada um desses sistemas, criei um instantâneo ao vivo (ou seja, enquanto a VM está em execução) no qual um processo do servidor (um script Python) está sendo executado na porta 18812. Eu configurei o encaminhamento de porta para todas as VMs via

$ VBoxManage modifyvm <vmid> --natpf1 rpyc,tcp,,18812,,18812

de modo que eu possa conectar-me a localhost:18812 no sistema host para se conectar ao processo do servidor em execução no convidado.

Isso funciona tudo bem e elegante - até eu desligar a VM, restaurar o instantâneo e iniciá-lo novamente. O processo do servidor parece estar ainda em execução e posso me conectar a ele de dentro do guest , mas a conexão do sistema host não funciona mais.

O encaminhamento de porta ainda está em vigor, mas a única maneira de tornar o processo do servidor acessível parece ser reiniciar o sistema de rede no guest (por exemplo, executando service network-manager restart no Ubuntu) ou reiniciando o processo do servidor - nenhum dos quais é muito desejável.

Existe algum truque para configurar uma VM do VirtualBox de modo que, ao restaurar um instantâneo, o (s) processo (s) servidor (es) executável (s) seja (são) acessado (s) imediatamente? Por que vale a pena, eu notei esse problema em todos os sistemas convidados e também com simples 'servidores' como o netcat ouvindo em alguma porta.

    
por Frerich Raabe 12.05.2016 / 20:55

1 resposta

1

Uma solução para a situação parece ser alternar o estado do link da VM logo após iniciá-la, ou seja, na linha de comando:

$ VBoxManage startvm <vmid>
$ VBoxManage controlvm <vmid> setlinkstate1 off
$ VBoxManage controlvm <vmid> setlinkstate1 on
    
por 13.05.2016 / 09:44