首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >有没有办法使用Ansible获得vSphere库存树?

有没有办法使用Ansible获得vSphere库存树?
EN

Stack Overflow用户
提问于 2020-11-04 02:57:38
回答 1查看 664关注 0票数 0

我已经阅读了很多关于VMWare的模块和插件的Ansible文档,但我仍然找不到一种方法来完成我认为相对简单的事情。我希望获取vCenter并提取清单树,这样我就知道vCenter中的所有数据中心、每个数据中心中有哪些集群以及每个集群中有哪些虚拟机,但我似乎找不到这样做的方法。

我希望收集和整理有关vCenter上的每个虚拟机的信息,我几乎可以使用dynamic inventory插件community.vmware.vmware来做到这一点_虚拟机_库存。但是,它收集的关于每个虚拟机的数据似乎都不包括每个虚拟机所在的数据中心和集群。

某些VMWare模块要求您指定虚拟机所在的数据中心或集群,因此如果没有此信息,就无法完全管理vCenter。人们仍然需要外部信息源,以便能够将整个vCenter转换为所需的状态。

我是不是漏掉了什么?有没有什么方法可以使用vSphere中的VMWare模块和插件来获得Ansible web客户端提供的库存树结构?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-11-04 23:25:48

使用vmware如何_虚拟机_信息模块?vmware_虚拟机_info可以获取每个虚拟机的归属信息。

代码语言:javascript
运行
复制
---
- name: Example Playbook
  hosts: localhost
  gather_facts: false
  tasks:
    - name: Gather all vm info
      vmware_vm_info:
        hostname: "{{ vcenter_hostname }}"
        username: "{{ vcenter_username }}"
        password: "{{ vcenter_password }}"
        validate_certs: false
      register: gather_all_vm_info_result

    - debug:
        msg:
          - "VM Name{% raw %}:{% endraw %} {{ item.guest_name }}"
          - "Datacenter Name{% raw %}:{% endraw %} {{ item.datacenter }}"
          - "Cluster Name{% raw %}:{% endraw %}: {{ item.cluster }}"
          - "ESXi Name{% raw %}:{% endraw %} {{ item.esxi_hostname }}"
          - "Folder Name{% raw %}:{% endraw %} {{ item.folder }}"
      loop: "{{ gather_all_vm_info_result.virtual_machines }}"

输出示例

代码语言:javascript
运行
复制
"msg": [
        "VM Name: test_vm1",
        "Datacenter Name: DC",
        "Cluster Name:: Cluster",
        "ESXi Name: esxi-host.example.com",
        "Folder Name: /DC/vm"
    ]
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64668909

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档