VMware和Ansible - 资源池?

时间:2016-01-06 15:21:08

标签: ansible vmware ansible-playbook

我目前正在尝试编写一个Playbook来在我们的VMware群集中部署虚拟机,而我目前正处于亏损状态。无论输入到剧本中的是什么,它都无法识别资源池。

---
- hosts: all
  gather_facts: false
  connection: local
  user: remote
  sudo: false

  vars_prompt
    - name: "resource_pool"
      prompt: "Enter resource pool"
      private: no

  vars:
    notes: 'Created by Ansible'
    vcenter_hostname: 'esxhost.local'
    vcenter_username: 'om'
    vcenter_password: '*********'

  tasks:
    - vsphere_guest:
        vcenter_hostname: "{{ vcenter_hostname }}"
        username: "{{ vcenter_username }}"
        password: "{{ vcenter_password }}"
        guest: "{{ vm_name }}"
        cluster: DummyCluster
        resource_pool: "{{ resource_pool }}"
        from_template: no
        template_src: testvm001
        vm_extra_config:
          notes: "{{ notes }}"
        vm_disk:
          disk1:
            size_gb: 10
            type: thin
            datastore: dummystore01
        vm_nic:
          nic1:
            type: vmxnet3
            network: vlan48-internal
            network_type: standard
        vm_hardware:
          memory_mb: 512
          num_cpus: 1
          osid: ubuntu64Guest
          scsi: paravirtual
        esxi:
          datacenter: DUMMY-DC
          hostname: esxdummy01.local

无论我如何定义资源池,它总是返回错误。在官方文档中,资源池显示为已定义:

resource_pool: "/Resources"

"/Resources",我假设是资源池,虽然这个有或没有正斜杠,但是不起作用。

1 个答案:

答案 0 :(得分:3)

在ServerFault的问题中找到我的解决方案。事实证明,您需要定义资源池使用/ Resources作为一种目录。

因此,要将计算机添加到名为“TestVM”的资源池,您需要定义以下内容:

resource_pool: "/Resources/TestVM"

希望这可以帮助那些在我船上的人。