Vagrant Error: Timeout koneksi. Coba lagi


12

Saya memiliki server dengan Ubuntu 12.04, Virtualbox 4.3 dan Vagrant 1.5.1. Saya mencoba menggunakan kotak ini http://puppet-vagrant-boxes.puppetlabs.com/centos-64-x64-vbox4210.box namun tidak berhasil. Ketika saya menjalankan "gelandangan" saya menerima pesan ini:

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.

Ini adalah file Vagrant saya

# 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

server saya tidak memiliki antarmuka grafis Bagaimana cara memperbaikinya? Terima kasih.


Adakah aturan firewall yang dapat memengaruhi?
pbacterio

Jawaban:


4

Pertama, coba: untuk melihat apa kunci privat gelandangan di konfigurasi mesin Anda

$ vagrant ssh-config

Contoh:

$ 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

Dokumen Konfigurasi SSH Vagran

Kedua, lakukan: Ubah konten file insecure_private_key dengan konten kunci privat sistem sebelumnya



Ini sepertinya bekerja dengan sempurna! Saya menghapus kunci tidak aman dan membiarkan Vagrant menghasilkan sendiri yang baru dan berfungsi seperti pesona
vishal.biyani

1
Bagaimana Anda mencapai itu? File mana yang Anda edit?
kue

@cookieC:/Users/USER_NAME/.vagrant.d/insecure_private_key
shilovk

@shilovk, apa artinya @cookie?
Cinta

2

cobalah untuk mengaktifkan GUI Anda dari kotak virtual seperti yang dilaporkan dalam posting ini Vagrant timeout koneksi terputus dan ikuti langkah-langkah dalam komentar.

jika tidak berhasil coba tambahkan modifikasi ini ke vagrantfile Anda:

buat file bernama "script.sh" yang berisi perintah berikut:

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

lalu tambahkan ini ke vagrantfile Anda:

  # running script shell
    config.vm.provision :shell, :path => "script.sh"

2

Batas waktu koneksi SSH selama fase boot dapat terjadi dari berbagai alasan seperti:

  • sistem menunggu interaksi pengguna (mis. partisi pembagian tidak siap ),
  • sshd salah konfigurasi,
  • kesalahan konfigurasi firewall (jika tidak lokal),
  • ketidakcocokan kunci pribadi Anda,
  • config.vm.boot_timeout jangka waktu terlalu rendah (yang milik Anda baik-baik saja),
  • pastikan virtualisasi diaktifkan di BIOS.

Untuk men-debug masalah, jalankan sebagai:

VAGRANT_LOG=debug vagrant up

Jika tidak ada yang jelas, cobalah menghubungkannya dari terminal lain, dengan vagrant sshatau oleh:

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

Jika SSH masih gagal, jalankan kembali dengan GUI (mis config.gui = true.).

Jika tidak, periksa proses yang berjalan (misalnya dengan vagrant ssh -c 'pstree -a':) atau verifikasi sshd_config.


Jika itu VM sekali pakai, Anda bisa selalu destroydan uplagi. Juga pertimbangkan untuk meningkatkan Vagrant dan Virtualbox Anda.


1

Coba buka port 22 di firewall.

Menggunakan Oracle VM VirtualBox Manager, mulai VM Anda langsung atau

tambahkan ini ke Vagrantfile Anda

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

dan jalankan "gelandangan"

login menggunakan kredensial gelandangan default

user: vagrant
pass: vagrant

tambahkan aturan firewall

sudo ufw allow 22

0

Saya baru saja memecahkan masalah serupa.

Masalah : Perintah untuk masuk ke lingkungan pengembangan tamu vagrant ssh,, sedang habis. Secara rutin berfungsi dengan baik pada mesin host lain.

Langkah-langkah debug:

  1. Di Vagrantfile, saya mengaktifkan GUI Virtualbox (seperti yang disarankan dalam jawaban lain) untuk melihat apa yang menyebabkan batas waktu. Ubuntu meminta login dan kata sandi, yang seharusnya tidak karena harus menggunakan kunci ssh.

  2. Daripada menjalankan vagrant ssh, saya menjalankan perintah ssh yang setara berkali-kali, menambahkan dan menghapus opsi ssh yang berbeda. Salah satu pesan kesalahan batas waktu berbunyi "tidak bisa masuk ke [example.com]" ... yang tidak masuk akal karena masalah ini tidak ada hubungannya dengan [example.com].

  3. Sehingga mendorong saya untuk melihat .ssh / config di mana [example.com] mungkin memiliki relevansi.

Root Penyebab : Di .ssh / config, ada entri tanpa Hostset, secara tidak sengaja. Oleh karena itu, itu menerapkan aturan konfigurasi untuk semua panggilan ssh, termasuk vagrant ssh(yang hanya merupakan jalan pintas untuk perintah ssh yang lebih panjang).

Solusi : Pastikan setiap entri .ssh / config telah Hostdisetel.


0

Coba hasilkan insecure_private_key

Saya memecahkan ini dengan menghapus insecure_private_key, terletak di bawah~/.vagrant.d

mungkin alasannya adalah insecure_private_keyfile sudah lama


0

Saya memiliki masalah yang sama. Saya menghapus semuanya dari SystemPrefereces-> Security-> Firewall dan menghapus semua layanan dari SystemPreferences-> Dibagikan. Kemudian saya mengaktifkan kembali login jarak jauh. Itu memperbaiki masalah dalam kasus saya. Jika ini tidak menyelesaikan masalah Anda, Anda dapat mengunjungi situs ini dan memeriksanya sendiri. (ServerFaqs)


0

Saya mengalami masalah serupa. Inilah yang saya lakukan.

  • Virtualisasi yang diaktifkan di BIOS
  • Ran ssh-add ~/.vagrant.d/insecure_private_key
  • Ditambahkan config.vm.boot_timeout = 600ke~/Homestead/Vagrantfile

Sekarang berfungsi dengan baik.


0

Anda harus bisa menggunakan GUI. Hapus komentar dari baris ini di Vagrantfile Anda :

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

Setelah Anda perlu mematikan mesin Anda dan mulai lagi:

vagrant halt
vagrant up

0

Bagaimana saya memperbaiki:

di vagrantfile, mengaktifkan / membatalkan komentar di bawah ...

config.vm.network "private_network", ip: "192.168.33.10"
...
config.vm.network "public_network"

0

Masalah ini dapat disebabkan oleh banyak faktor termasuk situasi di mana kotak VM hang menunggu jawaban dari pengguna. Namun masalah umum adalah ketidakcocokan antara kunci privat dan kunci publik. Untuk memperbaiki masalah ini, Anda perlu menyediakan file kunci pribadi pada mesin host Anda yang cocok dengan file kunci publik pada kotak VM. Saya memposting solusi dengan 3 pendekatan opsional di blog kami di sini ...

http://www.productiveminds.com/blog/vagrant-ssh-authentication-how-to-successfully-login-into-vm-box-using-vagrant-up/



0

Saya memiliki masalah yang sama dan ini adalah pengalaman pertama saya dengan gelandangan.

Saya berhasil "memecahkan" masalah dengan menggunakan jaringan publik alih-alih yang pribadi

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

Ganti 192.168.3.175dengan IP milik kelas jaringan Anda.

Saya ingin memahami apa yang salah dengan jaringan pribadi ...


itu belum bekerja. = /
PoLIVoX

maka pastikan bahwa Anda memiliki versi terbaru dari gelandangan dan kotak virtual (unduh paket dari situs web)
damko

btw Saya mengalami beberapa masalah selama instalasi karena beberapa pengaturan khusus seperti "~ / .bashrc" dan keberadaan "/ etc / SuSE-release" di kotak Mint 15 saya (diperlukan oleh perangkat lunak lain). Tapi di antara semua perubahan yang saya buat, saya benar-benar percaya bahwa yang diperbaiki adalah instalasi paket terbaru
damko

Saya memperbarui server saya dan tidak berfungsi! = /
PoLIVoX

Saya tidak menggunakan paket yang disediakan oleh distribusi saya. Saya mengunduh dari situs web resmi mereka (gelandangan dan virtualbox)
damko

0

config.vm.boot_timeout- Waktu dalam detik bahwa Vagrant akan menunggu mesin untuk boot dan dapat diakses. Secara default, ini adalah 300 detik.

Saya akan meningkatkan ini sampai Anda dapat menggelandang SSH masuk


Saya mencoba dan tidak berhasil. = / Saya menetapkan batas waktu 600
PoLIVoX

Bisakah Anda memposting Vagrantfile Anda?
dmourati

Saya memposting Vagrantfile saya.
PoLIVoX
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.