Ansible剧本没有开始?

时间:2016-09-21 11:28:48

标签: ansible

这是我的Ansible手册,用于创建新的虚拟机。

---
- name: Create a VM in OA resource pool
  hosts: local
  connection: local
  gather_facts: False
  tasks:
  - name: create VM
    vsphere_guest:
        vcenter_hostname: https:\\virtualcenter
        username: '{{ user }}'
        password: '{{ password }}'
        guest: '{{ guest }}'
        state: powered_off
        vm_extra_config:
            vcpu.hotadd: yes
            mem.hotadd: yes
            notes: This is a test VM
        vm_disk:
            disk1:
                size_gb: 10
                type: thick
                datastore: storage
        vm_nic:
            type: vmxnet3
            network: network1
        vm_hardware:
            memory_mb: 1024
            num_cpus: 1
            osid: centos64Guest
            scsi: paravirtual
        resource_pool: "RP1"

从命令行传递变量。 但是,当我尝试运行任务时,我得到了这个:

No config file found; using defaults
 [WARNING]: Host file not found: /etc/ansible/hosts

 [WARNING]: provided hosts list is empty, only localhost is available


PLAYBOOK: createvm.yml *********************************************************
1 plays in playbooks/vmware/createvm.yml

PLAY [Create a VM in OA resource pool] *****************************************
skipping: no hosts matched

PLAY RECAP *********************************************************************

可能是什么原因?一个错字?使用列表任务进行语法检查也不会显示任何内容。

1 个答案:

答案 0 :(得分:1)

  

可能是什么原因?

由于您未指定库存文件,因此Ansible会在默认local中查找名为/etc/ansible/hosts的主机/组,该主机/组不存在。

由于库存文件不存在,Ansible不知道在哪个目标上运行该剧本。

注意:locallocalhost不同。 Ansible希望local成为清单中定义的常规主机或组名。