我目前正在尝试编写一个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"
,我假设是资源池,虽然这个有或没有正斜杠,但是不起作用。
答案 0 :(得分:3)
在ServerFault的问题中找到我的解决方案。事实证明,您需要定义资源池使用/ Resources作为一种目录。
因此,要将计算机添加到名为“TestVM”的资源池,您需要定义以下内容:
resource_pool: "/Resources/TestVM"
希望这可以帮助那些在我船上的人。