我的流浪档案:
Vagrant.configure('2') do |config|
config.vm.define "master" do |node_dotnet|
node_dotnet.vm.provider :azure do |azure, override|
....
end
end
config.vm.provision "ansible" do |ansible|
ansible.playbook = "playbook1.yml"
end
v1.times do |i|
config.vm.define "random#{i}" do |nodes_py|
nodes_py.vm.provider :azure do |azure, override|
....
end
end
config.vm.provision "ansible" do |ansible|
ansible.playbook = "playbook2.yml"
end
end
end
但是这两个剧本都被多次应用于所有盒子。 ¿如何解决这个问题?
所以有两个问题,为什么剧本应用了好几次,为什么它们被应用到所有的盒子上?
答案 0 :(得分:0)
您在配置级别定义了Ansible提供程序(两次),因此它将应用于所有计算机。
甚至可以清楚地看一下你的缩进级别(虽然这与Vagrant文件无关)。
Vagrant.configure('2') do |config|
config.vm.define "master" do |node_dotnet|
node_dotnet.vm.provider :azure do |azure, override|
....
end
node_dotnet.vm.provision "ansible" do |ansible|
ansible.playbook = "playbook1.yml"
end
end
v1.times do |i|
config.vm.define "random#{i}" do |nodes_py|
nodes_py.vm.provider :azure do |azure, override|
....
end
nodes_py.vm.provision "ansible" do |ansible|
ansible.playbook = "playbook2.yml"
end
end
end
end