2016-09-21 71 views
0

這是我的Ansible劇本來創建一個新的VM。Ansible playbook無法啓動?

--- 
- 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

這是什麼原因?

由於您沒有指定清單文件,Ansible會在不存在默認/etc/ansible/hosts命名local主機/組。

由於庫存文件不存在,Ansible不知道要在哪個目標上運行該Playbook。

注:locallocalhost不一樣。 Ansible預計local是清單中定義的常規主機或組名稱。

+0

謝謝,它的工作,當我改變本地localhost! –