在Ubuntu服务器上使用Salt和Salt-Virt部署虚拟机

我正在使用Salt为我的公司configuration物理和虚拟机器。 如果我还可以使用Salt(Salt-Virt)来pipe理运行在我的主机上的各种虚拟机,那真是太好了,因为虚拟机的数量/复杂性正在快速增长。

这是我的位置:

  • 遵循本指南,更改Ubuntu而不是RHL的软件包: http : //docs.saltstack.com/en/latest/topics/tutorials/cloud_controller.html
  • 物理和虚拟机都在运行Ubuntu服务器
  • 我能够运行salt-run virt.init test1 2 512 salt://BASE.img命令将机器部署到主机。
  • /srv/salt-images/test1/中的/srv/salt-images/test1/为.qcow2

但似乎主机(pipe理程序)不知道虚拟机存在。 我在主人或奴才中没有从盐中得到任何的错误。

  • 在主机上, virsh list返回一个空列表
  • 在Salt master上, salt-run virt.start test1返回错误: Failed to find vm test1 to start

有没有人得到Salt-Virt在Ubuntu上工作? 我错过了什么?

我find了解决scheme。 这里是步骤:

  • 两台机器,M1和M2
  • 在M1上:
    • 安装盐主
    • 把你的虚拟硬盘移到这台机器上,把它放在/srv/salt
      • 对我来说,这是/srv/salt/base.vdi
    • 将虚拟机文件转换为qcow2格式
      • 对我来说,这是qemu-img -f vdi -O qcow2 base.vdi base.qcow2
  • 在M2上:
    • 安装盐仆人
    • 安装libvirt-bin
    • 安装python-libvirt
    • configuration称为br0的桥接networking接口
      • 这很重要,因为这是salt-virt与虚拟机连接的默认接口名称

凉。 机器应该准备好现在去。

在master上,运行salt "*" virt.init <name_of_vm> <num_cores_for_vm> <mb_of_ram_for_vm> <path_to_image>

对我来说,这是salt "*" virt.init test_vm 2 512 salt://base.qcow2

机器应该在M2上旋转。

在salt master上使用salt-run virt.query进行testing