Vagrant 流浪多机并联起动
我正在尝试提供一个主MySQL对,只有当它们都启动时才能正确配置它们Vagrant 流浪多机并联起动,vagrant,Vagrant,我正在尝试提供一个主MySQL对,只有当它们都启动时才能正确配置它们 Vagrant.configure("2") do |config| web.vm.box = "centos/7" config.vm.define "primary" do |primary| ....... end config.vm.define "secondary" do |secondary| ....... end end 我已经运行了多次,流浪汉只会在第一个虚拟机启动
Vagrant.configure("2") do |config|
web.vm.box = "centos/7"
config.vm.define "primary" do |primary|
.......
end
config.vm.define "secondary" do |secondary|
.......
end
end
我已经运行了多次,流浪汉只会在第一个虚拟机启动后启动第二个虚拟机
有没有办法强迫流浪汉同时启动两个虚拟机
vagrant up
支持并行虚拟机,从键开始--parallel
:
--[no-]并行如果提供程序支持,则启用或禁用并行
默认的vagrant
提供程序VirtualBox
不支持它,但您可以使用xargs
同时启动虚拟机,它支持使用键-p
并行执行命令(为您的vagrant文件提供的示例):
Vagrantfile可以在变量中包含这些框,因此静态地将Vagrantfile灰显不会在所有情况下都成功 下面是另一种捕获由
vagrant status
vagrant status | \
awk '
BEGIN{ tog=0; }
/^$/{ tog=!tog; }
/./ { if(tog){print $1} }
' | \
xargs -P2 -I {} vagrant up {}
命令分解
获取由vagrant status
管理的机器的报告,在两个空行之间每行打印一台机器李>vagrant文件
命令捕获两个空行之间的所有机器行,并打印每个机器行的第一个字(即机器名称)李>awk
命令将流更改为可使用xargs
选项并行使用的参数-P
vagrant status | \
awk '
BEGIN{ tog=0; }
/^$/{ tog=!tog; }
/./ { if(tog){print $1} }
' | \
xargs -P2 -I {} vagrant up {}