我有3个vms的multivm vagrantfile设置。 其中两个虚拟机的NAT网络接口已禁用,仅在内部接口上使用静态IP。
副作用是我无法再运行vagrant ssh foo
来连接vm。
# -*- mode: ruby -*-
# vi: set ft=ruby :
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
#config.vm.box = "PuppetlabsCent64"
#config.vm.box_url = "http://puppet-vagrant-boxes.puppetlabs.com/centos-64-x64-vbox4210-nocm.box"
config.vm.box = "Debian-7-2"
config.vm.box_url= "https://dl.dropboxusercontent.com/u/197673519/debian-7.2.0.box"
# Create a private network, which allows host-only access to the machine
# using a specific IP.
# config.vm.network :private_network, ip: "192.168.45.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
config.vm.synced_folder ".", "/vagrant_data"
config.vm.provider :virtualbox do |vb|
vb.customize ["modifyvm", :id, "--memory", "512"]
end
config.vm.define "r", primary: true do |router|
router.vm.box = "Debian-7-2"
router.vm.network :private_network, ip: "192.168.45.11"
end
config.vm.define "r1" do |roomate1|
roomate1.vm.box = "Debian-7-2"
roomate1.vm.network :private_network, ip: "192.168.45.12"
end
config.vm.define "r2" do |roomate2|
roomate2.vm.box = "Debian-7-2"
roomate2.vm.network :private_network, ip: "192.168.45.13"
end
config.vm.provider :virtualbox do |vb|
vb.customize "post-boot",["controlvm", :id, "setlinkstate1", "off"]
end
end
流浪者用户组中的This thread给了我检查default vagrant config的想法。
我尝试过以下各项但没有运气
config.vm.define "r", primary: true do |router|
router.vm.box = "Debian-7-2"
router.vm.network :private_network, ip: "192.168.45.11"
#config.ssh.host "192.168.45.11"
#router.vm.network :forwarded_port, host: "192.168.45.11"
#router.vm.box_url = "192.168.45.11"
#router.vm.boot_timeout = 200
#router.vagrant.host = "192.168.45.11"
#router.ssh.host = "192.168.45.11"
end
#non working
sowen@pv-sowen-nb:~/Code/flatmate-firewall$ vagrant ssh-config r
Host r
HostName 127.0.0.1
User vagrant
Port 2222
UserKnownHostsFile /dev/null
StrictHostKeyChecking no
PasswordAuthentication no
IdentityFile /Users/sowen/.vagrant.d/insecure_private_key
IdentitiesOnly yes
LogLevel FATAL
运行vagrant up
在启动过程中部分挂起,导致我必须等待300秒才能启动每个虚拟机。
错误消息
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. This can
mean a number of things.
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.
有没有办法配置vagrant ssh
以使用正确的ip&端口,以便它不会超时?
来源:https://github.com/spuder/flatmate-firewall/blob/master/Vagrantfile
答案 0 :(得分:6)
我可以在你的Vagrantfile中看到你的问题,但我用两台机器向你展示我的例子。
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.
config.vm.define 'app' do |app_config|
app_config.vm.box = 'ubuntu_app'
app_config.vm.host_name = 'app'
app_config.vm.network "private_network", ip: "192.168.33.33"
end
config.vm.define 'web' do |web_config|
web_config.vm.box = 'ubuntu_app'
web_config.vm.host_name = 'web'
web_config.vm.network "private_network", ip: "192.168.33.34"
end
end
然后我使用标准的ssh连接
连接到“web”机器roberto@rcisla-pc:~/Desktop/vagrant$ ssh vagrant@web -p 22
Welcome to Ubuntu 12.04 LTS (GNU/Linux 3.2.0-23-generic-pae i686)
* Documentation: https://help.ubuntu.com/
Welcome to your Vagrant-built virtual machine.
Last login: Sun Jan 12 13:18:18 2014 from 192.168.33.1
vagrant@web:~$
与“app machine”相同
roberto@rcisla-pc:~/Desktop/vagrant$ ssh vagrant@app -p 22
Welcome to Ubuntu 12.04 LTS (GNU/Linux 3.2.0-23-generic-pae i686)
* Documentation: https://help.ubuntu.com/
Welcome to your Vagrant-built virtual machine.
Last login: Sun Jan 12 13:18:18 2014 from 192.168.33.1
vagrant@app:~$
我希望这有帮助。