Erro do Vagrant: Tempo limite da conexão. Tentando novamente

12

Eu tenho um servidor com o Ubuntu 12.04, o VirtualBox 4.3 e o Vagrant 1.5.1. Eu estou tentando usar esta caixa link no entanto sem sucesso. Quando eu corro "vagrant up" recebo esta mensagem:

Bringing machine 'default' up with 'virtualbox' provider...
==> default: Importing base box 'centos-64-x64-vbox4210'...
==> default: Matching MAC address for NAT networking...
==> default: Setting the name of the VM: rafael_default_1396403974194_51967
==> default: Clearing any previously set forwarded ports...
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
    default: Adapter 1: nat
==> default: Forwarding ports...
    default: 22 => 2222 (adapter 1)
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
    default: SSH address: 127.0.0.1:2222
    default: SSH username: vagrant
    default: SSH auth method: private key
    default: Error: Connection timeout. Retrying...
    default: Error: Connection timeout. Retrying...
    default: Error: Connection timeout. Retrying...
    default: Error: Connection timeout. Retrying...
    default: Error: Connection timeout. Retrying...
Timed out while waiting for the machine to boot. This means that
Vagrant was unable to communicate with the guest machine within
the configured ("config.vm.boot_timeout" value) time period.

If you look above, you should be able to see the error(s) that
Vagrant had when attempting to connect to the machine. These errors
are usually good hints as to what may be wrong.

If you're using a custom box, make sure that networking is properly
working and you're able to connect to the machine. It is a common
problem that networking isn't setup properly in these boxes.
Verify that authentication configurations are also setup properly,
as well.

If the box appears to be booting properly, you may want to increase
the timeout ("config.vm.boot_timeout") value.

Este é o meu arquivo Vagrant

# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  # All Vagrant configuration is done here. The most common configuration
  # options are documented and commented below. For a complete reference,
  # please see the online documentation at vagrantup.com.

  # Every Vagrant virtual environment requires a box to build off of.
  config.vm.box = "centos-64-x64-vbox4210"
  config.vm.boot_timeout = 600
  # The url from where the 'config.vm.box' box will be fetched if it
  # doesn't already exist on the user's system.
  # config.vm.box_url = "http://domain.com/path/to/above.box"

  # Create a forwarded port mapping which allows access to a specific port
  # within the machine from a port on the host machine. In the example below,
  # accessing "localhost:8080" will access port 80 on the guest machine.
  # config.vm.network "forwarded_port", guest: 80, host: 8080

  # Create a private network, which allows host-only access to the machine
  # using a specific IP.
  # config.vm.network "private_network", ip: "192.168.33.10"

  # Create a public network, which generally matched to bridged network.
  # Bridged networks make the machine appear as another physical device on
  # your network.
  # config.vm.network "public_network"

  # If true, then any SSH connections made will enable agent forwarding.
  # Default value: false
  # config.ssh.forward_agent = true

  # Share an additional folder to the guest VM. The first argument is
  # the path on the host to the actual folder. The second argument is
  # the path on the guest to mount the folder. And the optional third
  # argument is a set of non-required options.
  # config.vm.synced_folder "../data", "/vagrant_data"
  # Enable provisioning with chef server, specifying the chef server URL,
  # and the path to the validation key (relative to this Vagrantfile).
  #
  # The Opscode Platform uses HTTPS. Substitute your organization for
  # ORGNAME in the URL and validation key.
  #
  # If you have your own Chef Server, use the appropriate URL, which may be
  # HTTP instead of HTTPS depending on your configuration. Also change the
  # validation key to validation.pem.
  #
  # config.vm.provision "chef_client" do |chef|
  #   chef.chef_server_url = "https://api.opscode.com/organizations/ORGNAME"    
  #   chef.validation_key_path = "ORGNAME-validator.pem"
  # end
  #
  # If you're using the Opscode platform, your validator client is
  # ORGNAME-validator, replacing ORGNAME with your organization name.
  #
  # If you have your own Chef Server, the default validation client name is
  # chef-validator, unless you changed the configuration.
  #
  #   chef.validation_client_name = "ORGNAME-validator"
end

meu servidor não tem interface gráfica Como posso consertar isso? Obrigado.

    
por PoLIVoX 02.04.2014 / 04:17

14 respostas

4

Primeiro, tente: para ver qual chave privada vagrant na sua configuração de máquina

$ vagrant ssh-config

Exemplo:

$ vagrant ssh-config
Host default
  HostName 127.0.0.1
  User vagrant
  Port 2222
  UserKnownHostsFile /dev/null
  StrictHostKeyChecking no
  PasswordAuthentication no
  IdentityFile C:/Users/konst/.vagrant.d/insecure_private_key
  IdentitiesOnly yes
  LogLevel FATAL

Docs Config do SSH do Vagrant

Em segundo lugar, faça: Alterar o conteúdo do arquivo insecure_private_key com o conteúdo do próprio sistema chave privada

    
por 09.05.2014 / 02:59
2

tente habilitar sua GUI de caixa virtual conforme relatado nesta postagem Tempo limite de conexão do Vagrant e siga os passos nos comentários.

se não funcionar, tente adicionar essa modificação ao seu arquivo vagrant:

crie um arquivo chamado "script.sh" que contenha os seguintes comandos:

mkdir /home/vagrant/.ssh
wget --no-check-certificate -O authorized_keys 'https://github.com/mitchellh/vagrant/raw/master/keys/vagrant.pub'
mv authorized_keys /home/vagrant/.ssh
chown -R vagrant /home/vagrant/.ssh
chmod -R go-rwsx /home/vagrant/.ssh

então adicione isso ao seu arquivo vagrant:

  # running script shell
    config.vm.provision :shell, :path => "script.sh"
    
por 23.04.2015 / 12:28
1

Tente abrir a porta 22 no firewall.

Usando o Oracle VM VirtualBox Manager, inicie sua VM diretamente ou

adicione isso ao seu Vagrantfile

config.vm.provider :virtualbox do |vb|
  vb.gui = true
end

e execute "vagrant up"

faça o login usando credenciais vagrant padrão

user: vagrant
pass: vagrant

adicione regra de firewall

sudo ufw allow 22
    
por 29.07.2014 / 13:19
1

O tempo limite da conexão SSH durante a fase de inicialização pode acontecer por diferentes motivos, como:

  • o sistema aguarda a interação do usuário (por exemplo, a partição de compartilhamento não está pronta ),
  • sshd configuração incorreta,
  • configuração incorreta do firewall (no caso de não ser local),
  • incompatibilidade da sua chave privada,
  • config.vm.boot_timeout o tempo do período é muito baixo (o que é bom para você)
  • verifique se a virtualização está ativada no BIOS.

Para depurar o problema, execute-o como:

VAGRANT_LOG=debug vagrant up

Se não houver nada óbvio, tente se conectar a ele a partir de outro terminal, por vagrant ssh ou por:

vagrant ssh-config > vagrant-ssh; ssh -F vagrant-ssh default

Se o SSH ainda falhar, execute-o novamente com uma GUI (por exemplo, config.gui = true ) .

Se não estiver, verifique os processos em execução (por exemplo: vagrant ssh -c 'pstree -a' ) ou verifique seu sshd_config .

Se for uma VM descartável, você sempre poderá destroy e up novamente. Também considere atualizar seu Vagrant e Virtualbox.

    
por 11.12.2016 / 14:02
0

Acabei de resolver um problema semelhante.

Problema : O comando para acessar o ambiente de desenvolvimento convidado, vagrant ssh , estava expirando. Funciona rotineiramente bem em outra máquina host.

Etapas de depuração:

  1. No Vagrantfile, habilitei a GUI do Virtualbox (como recomendado em outra resposta) para ver o que estava causando o tempo limite. O Ubuntu estava pedindo um login e uma senha, o que não deveria, porque deveria estar usando a chave ssh.

  2. Em vez de executar vagrant ssh , executei um comando ssh equivalente várias vezes, adicionando e removendo diferentes opções ssh. Uma das mensagens de erro de tempo limite "não foi possível fazer login em [example.com]"… o que não faz sentido porque esse problema não tem nada a ver com [example.com].

  3. Então, isso me levou a analisar o .ssh / config, em que [example.com] pode ter alguma relevância.

Causa Raiz : Em .ssh / config, houve uma entrada sem Host set, acidentalmente. Portanto, estava aplicando essa regra de configuração a todas chamadas ssh, incluindo vagrant ssh (que é apenas um atalho para um comando ssh mais longo).

Solução : Certifique-se de que todas as entradas .ssh / config tenham Host set.

    
por 09.10.2014 / 20:35
0

Tente gerar insecure_private_key

Eu resolvi isso removendo o insecure_private_key , localizado em ~/.vagrant.d

talvez o motivo seja insecure_private_key arquivo ser antigo

    
por 24.10.2014 / 11:45
0

Eu tive o mesmo problema. Eu deletei tudo do SystemPrefereces- > Security > Firewall e removi todos os serviços de SystemPreferences- > Shared. Então eu habilitei o login remoto novamente. Isso resolveu o problema no meu caso. Se isso não resolver o seu problema, você pode visitar este site e verificar você mesmo. (ServerFaqs)

    
por 05.11.2014 / 06:27
0

Eu experimentei um problema semelhante. Aqui está o que eu fiz.

  • Virtualização ativada no BIOS
  • Ran ssh-add ~/.vagrant.d/insecure_private_key
  • Adicionou config.vm.boot_timeout = 600 ao meu ~/Homestead/Vagrantfile

Está funcionando bem agora.

    
por 23.04.2015 / 11:43
0

Você precisa habilitar a GUI. Remova o comentário dessas linhas no seu arquivo Vagrant :

config.vm.provider :virtualbox do |vb|
  vb.gui = true
end

Depois que você precisar desligar sua máquina e começar de novo:

vagrant halt
vagrant up
    
por 01.06.2015 / 14:51
0

Como eu corrigi:

no vagrantfile, habilitado / descomissado o seguinte ...

config.vm.network "private_network", ip: "192.168.33.10"
...
config.vm.network "public_network"
    
por 01.07.2015 / 05:59
0

Esse problema pode ser causado por vários fatores, incluindo uma situação em que a caixa da VM é interrompida aguardando resposta do usuário. No entanto, um problema comum tem sido a incompatibilidade entre a chave privada e as chaves públicas. Para corrigir esse problema, você precisa fornecer um arquivo de chave privada em sua máquina host que corresponda ao arquivo de chave pública na caixa da VM. Eu postei uma solução com 3 abordagens opcionais no nosso blog aqui ...

link

    
por 26.07.2015 / 09:02
0

Isso funciona para mim:

  1. faça o login com: gui por login / pass: vagrant / vagrant
  2. modificar o arquivo /etc/rc.local para incluir a linha sh /etc/init.d/networking restart antes de exit 0
  3. desativar: gui
  4. recarregamento vagrant up ou vagrant

link

    
por 10.01.2016 / 17:15
0

Eu tenho o mesmo problema e esta é minha primeira experiência com vagabundo.

Consegui "resolver" o problema usando uma rede pública em vez de uma privada

config.vm.network "public_network", ip: "192.168.3.175"

Substitua 192.168.3.175 por um IP pertencente à sua classe de rede.

Gostaria de entender o que há de errado com a rede privada ...

    
por 03.04.2014 / 22:53
0

config.vm.boot_timeout - The time in seconds that Vagrant will wait for the machine to boot and be accessible. By default this is 300 seconds.

Eu aumentaria isso até que você consiga usar o SSH errante.

    
por 02.04.2014 / 04:33