【发布时间】:2019-05-17 21:13:52
【问题描述】:
我在剧中导入 Ansible 角色并运行其“安装”任务。该角色旨在在 Vbox 等虚拟机管理程序上创建 VM,并且工作正常。 但是,我想用它同时创建多个虚拟机,为此我必须提供 2 个变量: - vm_ip : 要创建的 vm 的 ip - vm_name : 要创建的虚拟机的名称
我已经用循环、with_items 和其他东西尝试了几乎所有的东西。例如,此代码不起作用:
- name: Create VMs
hosts: localhost
tasks:
- import_role:
name: vm_creation
tasks_from: install
vars:
vm_ip: "{{ item.ips }}"
vm_name: "{{ item.names }}"
loop:
- { ips: '192.168.20.4', names: 'test4' }
- { ips: '192.168.20.5', names: 'test5' }
它应该同时创建 .20.4 和 .20.5 虚拟机,但播放崩溃告诉我:“任务包含一个带有未定义变量的选项。错误是:‘项目’未定义
【问题讨论】: