使用 Ansible 更改 vSphere 客户虚拟机的 IP

使用 Ansible 更改 vSphere 客户虚拟机的 IP

我想从 vSphere 上的模板部署虚拟机并通过 Ansible (2.x) 更改新实例 IP。我已设法克隆带有模块的模板vsphere_guest,但我找不到更改新实例 IP 的方法。新实例从一开始就没有设置 IP。最终目标是从配置文件中读取静态 IP,并n从配置文件中生成每个具有 IP 的新虚拟机。* 安装在客户机上的 VMware 工具(CentOS 6.7)

这可以使用 Ansible 实现吗?

谢谢。

答案1

看来您需要一些不同的 python/ansible 脚本来实现您的目的:

  • 从模板部署虚拟机
  • 根据虚拟机名称获取对应IP
  • 通过调整 CentOS 网络配置文件更改 IP

你可以看看这个回购[github]。还有这个对于IP变化部分。

答案2

networks您可以通过参数设置IP地址社区.vmware.vmware_guest模块。请注意,设置 IP 地址仅在部署 VM 期间有效。如果 VM 已经存在,则不会修改 IP 地址信息。

例子:

- name: Deploy VM
  community.vmware.vmware_guest:
    ...
    networks:
      - name: VM Network
        ip: 192.168.1.100
        netmask: 255.255.255.0
        gateway: 192.168.1.1

相关内容