vmware.vmware_rest.vcenter_vm_info 模块 – 返回虚拟机的信息。
注意
此模块是 vmware.vmware_rest 集合(版本 4.3.0)的一部分。
如果您正在使用 ansible
包,您可能已经安装了此集合。它不包含在 ansible-core
中。要检查是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install vmware.vmware_rest
。您需要进一步的要求才能使用此模块,请参阅 要求 了解详细信息。
要在 playbook 中使用它,请指定:vmware.vmware_rest.vcenter_vm_info
。
vmware.vmware_rest 0.1.0 中的新功能
概要
返回虚拟机的信息。
要求
在执行此模块的主机上需要以下要求。
vSphere 7.0.3 或更高版本
python >= 3.6
aiohttp
参数
参数 |
注释 |
---|---|
必须包含虚拟机的集群,以便虚拟机匹配过滤器。 如果未设置或为空,则任何集群中的虚拟机都匹配过滤器。 当客户端将此结构的值作为参数传递时,该字段必须包含 vmware.vmware_rest.vcenter_cluster_info 返回的资源的 ID。 |
|
必须包含虚拟机的数据中心,以便虚拟机匹配过滤器。 如果未设置或为空,则任何数据中心中的虚拟机都匹配过滤器。 当客户端将此结构的值作为参数传递时,该字段必须包含 vmware.vmware_rest.vcenter_datacenter_info 返回的资源的 ID。 |
|
必须包含虚拟机的文件夹,以便虚拟机匹配过滤器。 如果未设置或为空,则任何文件夹中的虚拟机都匹配过滤器。 当客户端将此结构的值作为参数传递时,该字段必须包含 vmware.vmware_rest.vcenter_folder_info 返回的资源的 ID。 |
|
必须包含虚拟机的主机,以便虚拟机匹配过滤器。 如果未设置或为空,则任何主机上的虚拟机都匹配过滤器。 当客户端将此结构的值作为参数传递时,该字段必须包含 vmware.vmware_rest.vcenter_host_info 返回的资源的 ID。 |
|
虚拟机必须具有的名称才能匹配过滤器(请参阅名称)。 如果未设置或为空,则任何名称的虚拟机都匹配过滤器。 |
|
虚拟机必须处于的电源状态才能匹配过滤器(请参阅 如果未设置或为空,则任何电源状态的虚拟机都匹配过滤器。 |
|
必须包含虚拟机的资源池,以便虚拟机匹配过滤器。 如果未设置或为空,则任何资源池中的虚拟机都匹配过滤器。 当客户端将此结构的值作为参数传递时,该字段必须包含 vmware.vmware_rest.vcenter_resourcepool_info 返回的资源的 ID。 |
|
客户端会话的超时设置。 包括连接建立、请求发送和响应在内的整个操作的最大秒数。 默认值为 300 秒。 |
|
vSphere vCenter 的主机名或 IP 地址 如果任务中未指定该值,则将使用环境变量 |
|
vSphere vCenter 密码 如果任务中未指定该值,则将使用环境变量 |
|
您可以使用此可选参数来设置日志文件的位置。 此文件将用于记录 HTTP REST 交互。 该文件将存储在运行模块的主机上。 如果任务中未指定该值,则将使用 环境变量 |
|
vSphere vCenter 用户名 如果任务中未指定该值,则将使用环境变量 |
|
当 SSL 证书无效时允许连接。当证书不受信任时,设置为 如果任务中未指定该值,则将使用环境变量 选择
|
|
虚拟机标识符。 该参数必须是 vmware.vmware_rest.vcenter_vm_info 返回的资源的 ID。当 state=['get'] 时必需 |
|
可以匹配过滤器的虚拟机标识符。 如果未设置或为空,则具有任何标识符的虚拟机都将匹配此筛选器。 当客户端将此结构的值作为参数传递时,该字段必须包含 vmware.vmware_rest.vcenter_vm_info 返回的资源的 ID。 |
注释
注意
在 vSphere 7.0.3 上测试
示例
- name: Create a VM
vmware.vmware_rest.vcenter_vm:
placement:
cluster: "{{ lookup('vmware.vmware_rest.cluster_moid', '/my_dc/host/my_cluster') }}"
datastore: "{{ lookup('vmware.vmware_rest.datastore_moid', '/my_dc/datastore/local') }}"
folder: "{{ lookup('vmware.vmware_rest.folder_moid', '/my_dc/vm') }}"
resource_pool: "{{ lookup('vmware.vmware_rest.resource_pool_moid', '/my_dc/host/my_cluster/Resources') }}"
name: test_vm1
guest_OS: RHEL_7_64
hardware_version: VMX_11
memory:
hot_add_enabled: true
size_MiB: 1024
disks:
- type: SATA
backing:
type: VMDK_FILE
vmdk_file: '[local] test_vm1/{{ disk_name }}.vmdk'
- type: SATA
new_vmdk:
name: second_disk
capacity: 32000000000
cdroms:
- type: SATA
sata:
bus: 0
unit: 2
nics:
- backing:
type: STANDARD_PORTGROUP
network: "{{ lookup('vmware.vmware_rest.network_moid', '/my_dc/network/VM Network') }}"
register: my_vm
- name: Wait until my VM is off
vmware.vmware_rest.vcenter_vm_info:
vm: '{{ my_vm.id }}'
register: vm_info
until:
- vm_info is not failed
- vm_info.value.power_state == "POWERED_OFF"
retries: 60
delay: 5
- register: _should_be_empty
name: Search with an invalid filter
vmware.vmware_rest.vcenter_vm_info:
filter_names: test_vm1_does_not_exists
- name: Look up the VM called test_vm1 in the inventory
register: search_result
vmware.vmware_rest.vcenter_vm_info:
filter_names:
- test_vm1
- name: Collect information about a specific VM
vmware.vmware_rest.vcenter_vm_info:
vm: '{{ search_result.value[0].vm }}'
register: test_vm1_info
返回值
常见的返回值记录在这里,以下是此模块特有的字段
键 |
描述 |
---|---|
资源的 moid 返回: 成功时 示例: |
|
等待我的虚拟机关闭 返回: 成功时 示例: |